mirror of
https://github.com/crmeb/CRMEB.git
synced 2026-11-09 11:21:13 +00:00
2 lines
2.3 KiB
JavaScript
2 lines
2.3 KiB
JavaScript
import{f as y,b as $,j as b,u as E,s as j,y as f,z as w,B,a9 as N,h as x,C as P,$ as S,H as D,Z as M,l as h,O,p as R}from"./element-plus-CfPgm5_G.js";import{_ as U,b as V,b8 as g}from"./index-DCC_vuBY.js";import"./monaco-editor-Rk3NqNDP.js";import"./form-create-Dd2rLrbU.js";import"./vxe-Dx9vzgWy.js";const q={class:"ext-container","element-loading-text":"扩展加载中...","element-loading-spinner":"el-icon-loading"},L={key:1,class:"ext-error"},T=Object.assign({name:"PluginPageContainer"},{__name:"PageContainer",props:{typeKey:{type:String,required:!0},section:{type:String,default:"product"},action:{type:String,default:"list"},params:{type:Object,default:()=>({})}},setup(l){const t=l,C=V(),o=h(!0),i=O(null),K=h(null);let a=null;const k=R(()=>`${t.typeKey}-${t.section}-${t.action}`);function u(){const e=C.meta.title;e&&g.global&&g.global.mergeLocaleMessage(g.global.locale,{[e]:e})}function v(){const e=`__ext_${t.typeKey}`;window[e]?p(window[e]):c()}function p(e){i.value=e&&e.default?e.default:e,e&&e.routes&&(K.value=e.routes,u())}function c(){o.value=!0,i.value=null;const e=`__ext_${t.typeKey}`,s=`/admin/static/extensions/${t.typeKey}/`,r=s+"app.umd.css",d=s+"app.umd.js";if(window[e]){p(window[e]),o.value=!1;return}if(!document.querySelector(`link[href="${r}"]`)){const m=document.createElement("link");m.rel="stylesheet",m.href=r,document.head.appendChild(m)}const n=document.createElement("script");n.src=d,n.onload=()=>{p(window[e]),o.value=!1},n.onerror=()=>{o.value=!1,M.error(`扩展「${t.typeKey}」脚本加载失败`)},document.body.appendChild(n),a=n}function _(){a&&a.parentNode&&(a.parentNode.removeChild(a),a=null)}return y(()=>t.typeKey,()=>{_(),c()}),y(()=>t.section,()=>{u(),v()}),y(()=>t.action,()=>{u(),v()}),c(),$(()=>{_()}),(e,s)=>{const r=b("el-empty"),d=b("el-button"),n=E("loading");return j((f(),w("div",q,[i.value?(f(),B(N(i.value),{key:k.value,section:l.section,action:l.action,params:l.params},null,8,["section","action","params"])):o.value?D("",!0):(f(),w("div",L,[x(r,{description:"扩展「"+l.typeKey+"」加载失败,请确认扩展已安装"},null,8,["description"]),x(d,{type:"primary",onClick:c},{default:P(()=>[...s[0]||(s[0]=[S("重新加载",-1)])]),_:1})]))])),[[n,o.value]])}}}),F=U(T,[["__scopeId","data-v-2f88ad1c"]]);export{F as default};
|