gulpfile.js 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. // Gulp Tools
  2. var gulp = require("gulp");
  3. // Import Gulp Tasks
  4. require("./tasks/gulpTasks-viewerLibraries");
  5. require("./tasks/gulpTasks-libraries");
  6. require("./tasks/gulpTasks-librariesES6");
  7. require("./tasks/gulpTasks-tsLint");
  8. require("./tasks/gulpTasks-importLint");
  9. require("./tasks/gulpTasks-netlify");
  10. require("./tasks/gulpTasks-whatsNew");
  11. require("./tasks/gulpTasks-localRun");
  12. require("./tasks/gulpTasks-watchLibraries");
  13. require("./tasks/gulpTasks-watchCore");
  14. require("./tasks/gulpTasks-typedoc");
  15. require("./tasks/gulpTasks-intellisense");
  16. require("./tasks/gulpTasks-tests");
  17. require("./tasks/gulpTasks-remapPaths");
  18. require("./tasks/gulpTasks-npmPackages");
  19. require("./tasks/gulpTasks-dependencies");
  20. /**
  21. * Temp cleanup after upgrade.
  22. */
  23. var cp = require('child_process');
  24. var fs = require('fs-extra');
  25. var config = require("../Config/config.js");
  26. gulp.task("cleanup", function(cb) {
  27. console.log("Cleaning up from 3.3");
  28. if (fs.existsSync("../../src/Actions/babylon.action.d.ts") || fs.existsSync("../../src/gui/node_modules")) {
  29. config.modules.forEach(module => {
  30. cp.execSync(`git clean -fdx`, {
  31. cwd: config[module].computed.srcDirectory
  32. });
  33. });
  34. cp.execSync(`git clean -fdx`, {
  35. cwd: "../../gui/"
  36. });
  37. cp.execSync(`git clean -fdx`, {
  38. cwd: "../../tests/"
  39. });
  40. }
  41. cb();
  42. });
  43. /**
  44. * Full TsLint.
  45. */
  46. gulp.task("tsLint", gulp.series("typescript-libraries-tsLint"));
  47. /**
  48. * Full ImportLint.
  49. */
  50. gulp.task("importLint", gulp.series("typescript-libraries-importLint"));
  51. /**
  52. * Full Lint.
  53. */
  54. gulp.task("fullLint", gulp.series("tsLint", "importLint", "circularDependencies"));
  55. /**
  56. * Validate compile the code and check the comments and style case convention through typedoc
  57. */
  58. gulp.task("typedoc-check", gulp.series("core", "gui", "loaders", "serializers", "typedoc-generate", "typedoc-validate"));
  59. /**
  60. * Combine Webserver and Watch as long as vscode does not handle multi tasks.
  61. */
  62. gulp.task("run", gulp.series("cleanup", "watchCore", "watchLibraries", "webserver"));
  63. /**
  64. * Do it all (Build).
  65. */
  66. gulp.task("typescript-all", gulp.series("typescript-libraries", "typescript-es6", "netlify-cleanup"));
  67. /**
  68. * Do it all (tests).
  69. */
  70. gulp.task("tests-all", gulp.series("tests-unit", "tests-modules", "tests-validation-virtualscreen", "tests-validation-browserstack"));
  71. /**
  72. * Get Ready to test Npm Packages.
  73. */
  74. gulp.task("npmPackages", gulp.series("npmPackages-all"));
  75. /**
  76. * The default task, concat and min the main BJS files.
  77. */
  78. gulp.task("default", gulp.series("cleanup", "tsLint", "importLint", "circularDependencies", "typescript-all", "intellisense", "typedoc-all", "tests-all"));