Add plugins packs support

stable
Jesús Espino 2017-09-20 11:26:40 +02:00
parent 97ca8e0ba8
commit 77f49d9797
2 changed files with 44 additions and 2 deletions

View File

@ -35,6 +35,10 @@ loadStylesheet = (path) ->
loadPlugin = (pluginPath) ->
return new Promise (resolve, reject) ->
success = (plugin) ->
if plugin.isPack
for item in plugin.plugins
window.taigaContribPlugins.push(item)
else
window.taigaContribPlugins.push(plugin)
if plugin.css
@ -47,7 +51,7 @@ loadPlugin = (pluginPath) ->
resolve()
fail = () ->
console.error("error loading", pluginPath);
console.error("error loading", pluginPath)
$.getJSON(pluginPath).then(success, fail)

View File

@ -0,0 +1,38 @@
import os
import json
plugins = []
for f in os.listdir("./dist/plugins"):
if f != "packed":
plugins.append(json.load(open("./dist/plugins/{}/{}.json".format(f,f))))
js = ""
css = ""
for plugin in plugins:
if "js" in plugin:
js += open("./dist{}".format(plugin['js']), "r").read()
del plugin["js"]
if "css" in plugin:
js += open("./dist{}".format(plugin['css']), "r").read()
del plugin["css"]
os.makedirs("./dist/plugins/packed", exist_ok=True)
plugins_js_file = open("./dist/plugins/packed/plugins.js", "w")
plugins_js_file.write(js)
plugins_js_file.close()
plugins_css_file = open("./dist/plugins/packed/plugins.css", "w")
plugins_css_file.write(css)
plugins_css_file.close()
packedPlugin = {
"isPack": True,
"js": "/plugins/packed/plugins.js",
"css": "/plugins/packed/plugins.css",
"plugins": plugins
}
plugins_json_file = open("./dist/plugins/packed/packed.json", "w")
json.dump(packedPlugin, plugins_json_file)
plugins_json_file.close()