generate-plugin-definitions-source.js 806 B

1234567891011121314151617181920212223242526
  1. const fs = require('graceful-fs');
  2. const slash = require('slash');
  3. const swig = require('swig');
  4. const helpers = require('../config/helpers');
  5. const PluginUtils = require('../lib/plugins/plugin-utils');
  6. const pluginUtils = new PluginUtils();
  7. const definitions = pluginUtils.listPluginNames(helpers.root())
  8. .map((name) => {
  9. return pluginUtils.generatePluginDefinition(name, true);
  10. })
  11. .map((definition) => {
  12. // convert backslash to slash
  13. definition.entries = definition.entries.map((entryPath) => {
  14. return slash(entryPath);
  15. });
  16. return definition;
  17. });
  18. var template = swig.compileFile(helpers.root('bin/templates/plugin-definitions.js.swig'));
  19. var output = template({definitions});
  20. fs.writeFileSync(
  21. helpers.root('resource/js/plugins/plugin-definitions.js'),
  22. output);