gulpTasks-importLint.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // Import Dependencies.
  2. var gulp = require("gulp");
  3. var filter = require('gulp-filter');
  4. // Helpers.
  5. var validateImports = require("../helpers/gulp-validateImports");
  6. // Read the full config.
  7. var config = require("../../Config/config.js");
  8. /*
  9. * ImportLint all typescript files from the src directory.
  10. */
  11. var importLintLibrary = function(settings) {
  12. const fxFilter = filter(['**', '!**/*.fragment.ts', '!**/*.vertex.ts', '!**/ShadersInclude/**'], { restore: false });
  13. return gulp.src(settings.computed.tsGlob)
  14. .pipe(fxFilter)
  15. .pipe(validateImports({
  16. externals: settings.build.umd.processDeclaration.classMap
  17. }));
  18. }
  19. /**
  20. * Dynamic module linting for library (mat, post processes, ...).
  21. */
  22. config.lintModules.map(function(module) {
  23. // Task will be like moduleName-importLint
  24. gulp.task(module + "-importLint", function() {
  25. var settings = config[module];
  26. return importLintLibrary(settings, false);
  27. });
  28. });
  29. /**
  30. * Full Librairies importLint.
  31. */
  32. gulp.task("typescript-libraries-importLint",
  33. gulp.series(config.lintModules.map((module) => {
  34. return module + "-importLint";
  35. })
  36. ));