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); [ "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); }); }, };