/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/netmodular-ui@2.0.10/packages/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
import"@babel/polyfill";import"./utils/const";import Vue from"vue";import lodash from"lodash";import ElementUI from"element-ui";import"element-ui/lib/theme-chalk/index.css";import"./styles/app.scss";import UseRouter,{router,routes}from"./router/";import UseStore,{store,storeOptions}from"./store/";import HttpInit from"./utils/http";import Layout from"./layout";import Components,{loginComponents}from"./components";import Mixins from"./mixins/";import Directive from"./directive";import regex from"./utils/regex";import dayjs from"dayjs";import VueClipboard from"vue-clipboard2";import SkinPretty from"./skins/pretty/index";let skins=[SkinPretty];Vue.config.productionTip=!1;const appendCustomCss=e=>{const o=e.component.customCss;if(o){var t=document.createElement("style");if(t.type="text/css",t.styleSheet)t.styleSheet.cssText=o;else{var s=document.createTextNode(o);t.appendChild(s)}document.head.appendChild(t)}},useSkin=e=>{Vue.component("skin-"+e.options.code.toLowerCase(),e.component),store.registerModule("app/skins/"+e.options.code,e.store),store.commit("app/skins/registerSkin",e.options)};export default{registerSkin(e){skins.push(e)},configApi(e){HttpInit(e)},use:async({config:e,modules:o,actions:t})=>{document.title=e.system.title,Vue.prototype.$_=lodash,Vue.prototype.$dayjs=dayjs,Mixins.global(Vue),Vue.use(ElementUI),Vue.use(VueClipboard),Vue.use(Components),Vue.component("nm-skins",Layout),Vue.use(Directive);let s=[],n=[],r=[],i=[];o.forEach((e=>{e.routes&&e.routes.forEach((o=>{routes.push(o),i.push({moduleCode:e.module.code,name:o.meta.title||"",icon:o.meta.icon||"",code:o.name.toLowerCase(),frameIn:void 0===o.meta.frameIn||o.meta.frameIn,cache:void 0===o.meta.cache||o.meta.cache,noPermission:void 0!==o.meta.noPermission&&o.meta.noPermission,path:o.path,permissions:o.meta.permissions,buttons:o.meta.buttons})})),e.store&&(storeOptions.modules.module.modules[e.module.code]=e.store),e.callback&&r.push(e.callback),e.components&&e.components.forEach((e=>{s.push(e),e.name.startsWith("nm-login-")&&loginComponents.push(e.name.replace("nm-login-","")),e.name.startsWith("nm-toolbar-")&&n.push(e.name.replace("nm-toolbar-",""))}))})),e.component.login.pageTypeOptions=loginComponents;let m={modules:o.map((e=>e.module)),customToolbars:n,globalComponents:s.map((e=>e.name)),actions:t};UseStore(),UseRouter(store,e),skins.map((e=>{useSkin(e)})),await store.dispatch("app/config/init",{config:e,system:m,pages:i},{root:!0}),store.commit("app/token/load",null,{root:!0}),s&&s.forEach((e=>{Vue.component(e.name,e.component)}));const p=new Vue({router:router,store:store,render:e=>e("nm-skins")}).$mount("#app");return r&&r.forEach((e=>{e({vm:p,store:store,router:router,Vue:Vue})})),appendCustomCss(e),{router:router,store:store,vm:p}}};const mixins=Mixins.components;export{mixins,store,router,regex};
//# sourceMappingURL=/sm/05ce6037f286a2c0c85b7f1c47ccc24ee081c317aadf9f0dda2b3f90e85239ed.map