gulpfile.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. "use strict";
  2. var gulp = require("gulp"),
  3. gutil = require("gulp-util"),
  4. plumber = require("gulp-plumber"),
  5. bower = require("gulp-bower"),
  6. peg = require("gulp-peg"),
  7. deploy = require("gulp-gh-pages"),
  8. babel = require("gulp-babel"),
  9. rename = require("gulp-rename"),
  10. /*
  11. minifyCss = require("gulp-minify-css"),
  12. concat = require("gulp-concat"),
  13. */
  14. errLogger = gutil.log.bind(gutil, gutil.colors.red("Error: ")),
  15. opts = {
  16. buildDir: "build",
  17. };
  18. gulp
  19. .task("bower", function() {
  20. return bower();
  21. // .pipe(plumber(errLogger))
  22. })
  23. .task("parser", function() {
  24. return gulp.src("src/lib/parser/modellang.pegjs")
  25. .pipe(plumber(errLogger))
  26. .pipe(peg({
  27. exportVar: "modellangParser"
  28. }))
  29. .pipe(babel())
  30. // .pipe(gulp.dest(opts.buildDir + "/lib/parser"))
  31. .pipe(rename("modellang-parser.js"))
  32. .pipe(gulp.dest(opts.buildDir + "/web/assets/scripts"));
  33. })
  34. .task("generator", function() {
  35. return gulp.src("src/lib/generator/modellang.es6")
  36. .pipe(plumber(errLogger))
  37. .pipe(babel())
  38. // .pipe(gulp.dest(opts.buildDir + "/lib/generator"))
  39. .pipe(rename("modellang-gen.js"))
  40. .pipe(gulp.dest(opts.buildDir + "/web/assets/scripts"));
  41. })
  42. .task("default", ["bower", "parser", "generator"], function() {
  43. return gulp.src("src/web/**/*")
  44. .pipe(plumber(errLogger))
  45. .pipe(gulp.dest(opts.buildDir + "/web"))
  46. .pipe(deploy());
  47. })
  48. ;