X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/87e18b80684dedc761e669d375f59b548e4ab52f..refs/pull/1462/head:/resources/assets/js/vues/vues.js diff --git a/resources/assets/js/vues/vues.js b/resources/assets/js/vues/vues.js index 8cc1dd656..ec192372d 100644 --- a/resources/assets/js/vues/vues.js +++ b/resources/assets/js/vues/vues.js @@ -1,18 +1,40 @@ -const Vue = require("vue"); +import Vue from "vue"; function exists(id) { return document.getElementById(id) !== null; } +import searchSystem from "./search"; +import entityDashboard from "./entity-dashboard"; +import codeEditor from "./code-editor"; +import imageManager from "./image-manager"; +import tagManager from "./tag-manager"; +import attachmentManager from "./attachment-manager"; +import pageEditor from "./page-editor"; + let vueMapping = { - 'search-system': require('./search'), - 'entity-dashboard': require('./entity-search'), + 'search-system': searchSystem, + 'entity-dashboard': entityDashboard, + 'code-editor': codeEditor, + 'image-manager': imageManager, + 'tag-manager': tagManager, + 'attachment-manager': attachmentManager, + 'page-editor': pageEditor, }; -Object.keys(vueMapping).forEach(id => { - if (exists(id)) { - let config = vueMapping[id]; - config.el = '#' + id; - new Vue(config); +window.vues = {}; + +function load() { + let ids = Object.keys(vueMapping); + for (let i = 0, len = ids.length; i < len; i++) { + if (!exists(ids[i])) continue; + let config = vueMapping[ids[i]]; + config.el = '#' + ids[i]; + window.vues[ids[i]] = new Vue(config); } -}); \ No newline at end of file +} + +export default load; + + +