0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-14 13:52:54 +01:00
discourse-custom-wizard/assets/javascripts/wizard/lib/initialize/wizard.js.es6

50 Zeilen
1,7 KiB
JavaScript

export default {
name: "custom-wizard",
initialize(app) {
const isTesting = requirejs("discourse-common/config/environment").isTesting;
const isWizard = window.location.pathname.indexOf("/w/") > -1;
if (!isWizard && !isTesting()) {
return;
}
const container = app.__container__;
const setDefaultOwner = requirejs("discourse-common/lib/get-owner").setDefaultOwner;
setDefaultOwner(container);
if (!isTesting()) {
const PreloadStore = requirejs("discourse/lib/preload-store").default;
let preloaded;
const preloadedDataElement = document.getElementById("data-preloaded-wizard");
if (preloadedDataElement) {
preloaded = JSON.parse(preloadedDataElement.dataset.preloadedWizard);
}
Object.keys(preloaded).forEach(function (key) {
PreloadStore.store(key, JSON.parse(preloaded[key]));
});
app.SiteSettings = PreloadStore.get("siteSettings");
}
const setEnvironment = requirejs("discourse-common/config/environment").setEnvironment;
const setupData = document.getElementById("data-discourse-setup").dataset;
setEnvironment(setupData.environment);
const Session = requirejs("discourse/models/session").default;
const session = Session.current();
session.set("highlightJsPath", setupData.highlightJsPath);
session.set("markdownItUrl", setupData.markdownItUrl);
[
'register-files',
'inject-objects',
'create-contexts',
'patch-components'
].forEach(fileName => {
const initializer = requirejs(`discourse/plugins/discourse-custom-wizard/wizard/lib/initialize/${fileName}`).default;
initializer.run(app, container);
});
}
};