6 changed files with 145 additions and 0 deletions
@ -0,0 +1,21 @@ |
|||
# gulp-preset-riot |
|||
|
|||
Just a Riot.js preset for Gulp. |
|||
|
|||
## License |
|||
|
|||
[WTFPL](http://www.wtfpl.net/txt/copying/) or [CC0](https://creativecommons.org/publicdomain/zero/1.0/), whichever you prefer. A donation and/or attribution are appreciated, but not required. |
|||
|
|||
## Donate |
|||
|
|||
My income consists largely of donations for my projects. If this module is useful to you, consider [making a donation](http://cryto.net/~joepie91/donate.html)! |
|||
|
|||
You can donate using Bitcoin, PayPal, Flattr, cash-in-mail, SEPA transfers, and pretty much anything else. |
|||
|
|||
## Contributing |
|||
|
|||
Pull requests welcome. Please make sure your modifications are in line with the overall code style, and ensure that you're editing the files in `src/`, not those in `lib/`. |
|||
|
|||
Build tool of choice is `gulp`; simply run `gulp` while developing, and it will watch for changes. |
|||
|
|||
Be aware that by making a pull request, you agree to release your modifications under the licenses stated above. |
@ -0,0 +1,24 @@ |
|||
var gulp = require('gulp'); |
|||
|
|||
var gutil = require('gulp-util'); |
|||
var babel = require('gulp-babel'); |
|||
var cache = require('gulp-cached'); |
|||
var remember = require('gulp-remember'); |
|||
var plumber = require('gulp-plumber'); |
|||
|
|||
var source = ["src/**/*.js"] |
|||
|
|||
gulp.task('babel', function() { |
|||
return gulp.src(source) |
|||
.pipe(plumber()) |
|||
.pipe(cache("babel")) |
|||
.pipe(babel({presets: ["es2015"]}).on('error', gutil.log)).on('data', gutil.log) |
|||
.pipe(remember("babel")) |
|||
.pipe(gulp.dest("lib/")); |
|||
}); |
|||
|
|||
gulp.task('watch', function () { |
|||
gulp.watch(source, ['babel']); |
|||
}); |
|||
|
|||
gulp.task('default', ['babel', 'watch']); |
@ -0,0 +1,3 @@ |
|||
'use strict'; |
|||
|
|||
module.exports = require("./lib"); |
@ -0,0 +1,29 @@ |
|||
'use strict'; |
|||
|
|||
var loggerPartial = require("@joepie91/gulp-partial-logger"); |
|||
var livereloadPartial = require("@joepie91/gulp-partial-livereload"); |
|||
var xtend = require("xtend"); |
|||
|
|||
var cache = require("gulp-cached"); |
|||
var riot = require("gulp-riot"); |
|||
|
|||
module.exports = function (options) { |
|||
var cacheKey = options.cacheKey != null ? options.cacheKey : "preset"; |
|||
var riotOptions = options.riot != null ? options.riot : {}; |
|||
|
|||
var streamList = [cache(cacheKey), riot(xtend({ |
|||
type: "babel", |
|||
template: "jade", |
|||
style: "scss" |
|||
}, riotOptions))]; |
|||
|
|||
if (options.livereload != null) { |
|||
streamList.push(livereloadPartial(options.livereload)); |
|||
} |
|||
|
|||
return loggerPartial("riot", streamList, { |
|||
logger: { |
|||
basePath: options.basePath |
|||
} |
|||
}); |
|||
}; |
@ -0,0 +1,36 @@ |
|||
{ |
|||
"name": "@joepie91/gulp-preset-riot", |
|||
"version": "1.0.0", |
|||
"description": "A Gulp preset for Riot.js components", |
|||
"main": "index.js", |
|||
"scripts": { |
|||
"test": "echo \"Error: no test specified\" && exit 1" |
|||
}, |
|||
"repository": { |
|||
"type": "git", |
|||
"url": "git://github.com/joepie91/node-gulp-preset-riot" |
|||
}, |
|||
"keywords": [ |
|||
"gulp", |
|||
"preset", |
|||
"riot" |
|||
], |
|||
"author": "Sven Slootweg", |
|||
"license": "WTFPL", |
|||
"dependencies": { |
|||
"@joepie91/gulp-partial-livereload": "^1.0.0", |
|||
"@joepie91/gulp-partial-logger": "^1.0.0", |
|||
"gulp-cached": "^1.1.0", |
|||
"gulp-riot": "^0.4.9", |
|||
"xtend": "^4.0.1" |
|||
}, |
|||
"devDependencies": { |
|||
"babel-preset-es2015": "^6.6.0", |
|||
"gulp": "^3.9.1", |
|||
"gulp-babel": "^6.1.2", |
|||
"gulp-cached": "^1.1.0", |
|||
"gulp-plumber": "^1.1.0", |
|||
"gulp-remember": "^0.3.0", |
|||
"gulp-util": "^3.0.7" |
|||
} |
|||
} |
@ -0,0 +1,32 @@ |
|||
'use strict'; |
|||
|
|||
const loggerPartial = require("@joepie91/gulp-partial-logger"); |
|||
const livereloadPartial = require("@joepie91/gulp-partial-livereload"); |
|||
const xtend = require("xtend"); |
|||
|
|||
const cache = require("gulp-cached"); |
|||
const riot = require("gulp-riot"); |
|||
|
|||
module.exports = function(options) { |
|||
let cacheKey = (options.cacheKey != null) ? options.cacheKey : "preset"; |
|||
let riotOptions = (options.riot != null) ? options.riot : {}; |
|||
|
|||
let streamList = [ |
|||
cache(cacheKey), |
|||
riot(xtend({ |
|||
type: "babel", |
|||
template: "jade", |
|||
style: "scss" |
|||
}, riotOptions)) |
|||
]; |
|||
|
|||
if (options.livereload != null) { |
|||
streamList.push(livereloadPartial(options.livereload)); |
|||
} |
|||
|
|||
return loggerPartial("riot", streamList, { |
|||
logger: { |
|||
basePath: options.basePath |
|||
} |
|||
}); |
|||
} |
Loading…
Reference in new issue