gulp-addDtsExport.js 1005 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. var gutil = require('gulp-util');
  2. var through = require('through2');
  3. module.exports = function (varName, moduleName, subModule) {
  4. return through.obj(function (file, enc, cb) {
  5. var moduleExportsAddition =
  6. `/// <reference types="babylonjs"/>
  7. declare module '${moduleName}' {
  8. export = ${(subModule ? 'BABYLON.' : '')}${varName};
  9. }
  10. `;
  11. //'export = ' + (subModule ? 'BABYLON.' : '') + varName + ';\n';// +
  12. //'export as namespace ' + varName + ';\n\n';
  13. if (file.isNull()) {
  14. cb(null, file);
  15. return;
  16. }
  17. if (file.isStream()) {
  18. //streams not supported, no need for now.
  19. return;
  20. }
  21. try {
  22. file.contents = new Buffer(moduleExportsAddition + String(file.contents));
  23. this.push(file);
  24. } catch (err) {
  25. this.emit('error', new gutil.PluginError('gulp-add-module-exports', err, { fileName: file.path }));
  26. }
  27. cb();
  28. });
  29. };