init
This commit is contained in:
42
public/tinymce/tools/modules/zip-helper.js
Normal file
42
public/tinymce/tools/modules/zip-helper.js
Normal file
@@ -0,0 +1,42 @@
|
||||
/*eslint-env node */
|
||||
var path = require("path");
|
||||
|
||||
var getDirectories = function (grunt, excludes) {
|
||||
return function (path) {
|
||||
var directories = grunt.file.expand({ filter: "isDirectory" }, path + "/*");
|
||||
var excludedPlugins = grunt.file.match(excludes, directories);
|
||||
|
||||
return directories.filter(function (dir) {
|
||||
return excludedPlugins.indexOf(dir) === -1;
|
||||
});
|
||||
};
|
||||
};
|
||||
|
||||
var generateIndex = function (prefix, singularName) {
|
||||
return function (directory) {
|
||||
var dirName = path.basename(directory);
|
||||
return {
|
||||
path: path.join(prefix, dirName, "index.js"),
|
||||
data: "// Exports the \"" + dirName + "\" " + singularName + " for usage with module loaders\n" +
|
||||
"// Usage:\n" +
|
||||
"// CommonJS:\n" +
|
||||
"// require('tinymce/" + prefix + "/" + dirName + "')\n" +
|
||||
"// ES2015:\n" +
|
||||
"// import 'tinymce/" + prefix + "/" + dirName + "'\n" +
|
||||
"require('./" + singularName + ".js');"
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
var addIndexFiles = function (zip, directories, generator) {
|
||||
directories.forEach(function (dir) {
|
||||
var generated = generator(dir);
|
||||
zip.addData(generated.path, generated.data);
|
||||
});
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
addIndexFiles: addIndexFiles,
|
||||
generateIndex: generateIndex,
|
||||
getDirectories: getDirectories
|
||||
};
|
||||
Reference in New Issue
Block a user