@vtj/ui 0.7.11 → 0.7.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.iife.js +2 -2
- package/dist/index.mjs +6 -4
- package/dist/index.umd.js +2 -2
- package/package.json +5 -5
- package/types/version.d.ts +2 -2
package/dist/index.iife.js
CHANGED
|
@@ -2,6 +2,6 @@ var VtjUI=function(w,v){"use strict";/**!
|
|
|
2
2
|
* Copyright (c) 2024, VTJ.PRO All rights reserved.
|
|
3
3
|
* @name @vtj/ui
|
|
4
4
|
* @author CHC chenhuachun1549@dingtalk.com
|
|
5
|
-
* @version 0.7.
|
|
5
|
+
* @version 0.7.13
|
|
6
6
|
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
7
|
-
*/const Ct="0.7.11",xe={default:14,small:12,large:18},Ee={icon:{type:[String,Object]},color:{type:String},size:{type:[Number,String],default:"inherit"},src:{type:String},background:{type:String},padding:{type:Number},radius:{type:Number}};function j(n){return typeof n=="string"?n:`${n}px`}function Y(n=0,t){if(typeof n=="number")return n;if(/(%|vh|vw)$/i.test(n)){const o=Number.parseInt(n);return Math.floor(t*o/100)}return Number.parseInt(n)}function ae(n,t={}){const e={...t};return typeof n=="boolean"?e:Object.assign(e,n||{})}const se=Symbol("INSTALLED_KEY"),Pe=(n=[])=>({install:e=>{e[se]||(e[se]=!0,n.forEach(o=>{o.name&&e.component(o.name,o)}))}}),_t=["src"],L=Vue.defineComponent({name:"XIcon",__name:"Icon",props:Ee,setup(n){const t=n,e=Vue.useAttrs(),o=Vue.getCurrentInstance(),u=Vue.computed(()=>{if(!t.icon)return null;const s=o?.appContext.app;return typeof t.icon=="object"?Vue.markRaw(t.icon):s?.component(t.icon)||t.icon}),l=Vue.computed(()=>{const s={"is-pointer":!!e.onClick};return!u.value&&t.icon&&(s[t.icon]=!0),s}),a=Vue.computed(()=>({"background-color":t.background,"border-radius":t.radius?j(t.radius):void 0,padding:t.padding?j(t.padding):void 0})),r=Vue.computed(()=>typeof t.size=="number"?t.size:xe[t.size]??void 0);return(s,c)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElIcon),{class:Vue.normalizeClass(["x-icon",l.value]),color:t.color,size:r.value,style:Vue.normalizeStyle(a.value)},{default:Vue.withCtx(()=>[Vue.renderSlot(s.$slots,"default",{},()=>[u.value?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(u.value),{key:0})):Vue.createCommentVNode("",!0),t.src?(Vue.openBlock(),Vue.createElementBlock("img",{key:1,src:t.src},null,8,_t)):Vue.createCommentVNode("",!0)])]),_:3},8,["class","color","size","style"]))}}),Bt={class:"x-menu__wrapper"},St={key:1,class:"x-menu__title"},xt=Vue.createElementVNode("i",null,null,-1),Et={key:0,class:"x-menu__title"},Pt=Vue.createElementVNode("i",null,null,-1),Ne=Vue.defineComponent({inheritAttrs:!1,name:"XMenuItem",__name:"MenuItem",props:{item:{},subMenu:{},defaultIcon:{}},setup(n){const t=n,e=Vue.getCurrentInstance(),o=a=>{if(a)return typeof a=="string"&&(e?.appContext.app?.component(a)||t.defaultIcon)||a},u=a=>typeof a=="object"?a:{value:a},l=(a=[])=>a.filter(r=>!r.hidden);return(a,r)=>t.item.children?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSubMenu),Vue.mergeProps({key:0,disabled:t.item.disabled},t.subMenu,{index:String(t.item.id)}),{title:Vue.withCtx(()=>[Vue.createElementVNode("div",Bt,[t.item.icon?(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:0,icon:o(t.item.icon)},null,8,["icon"])):Vue.createCommentVNode("",!0),t.item.title?(Vue.openBlock(),Vue.createElementBlock("span",St,Vue.toDisplayString(t.item.title),1)):Vue.createCommentVNode("",!0),t.item.badge?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElBadge),Vue.mergeProps({key:2,class:"x-menu__badge"},u(t.item.badge)),{default:Vue.withCtx(()=>[xt]),_:1},16)):Vue.createCommentVNode("",!0)])]),default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(l(t.item.children),s=>(Vue.openBlock(),Vue.createBlock(Vue.unref(Ne),{key:s.id,item:s,subMenu:t.subMenu,defaultIcon:t.defaultIcon},null,8,["item","subMenu","defaultIcon"]))),128))]),_:1},16,["disabled","index"])):(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElMenuItem),{key:1,index:String(t.item.id),disabled:t.item.disabled},{title:Vue.withCtx(()=>[t.item.title?(Vue.openBlock(),Vue.createElementBlock("span",Et,Vue.toDisplayString(t.item.title),1)):Vue.createCommentVNode("",!0),t.item.badge?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElBadge),Vue.mergeProps({key:1,class:"x-menu__badge"},u(t.item.badge)),{default:Vue.withCtx(()=>[Pt]),_:1},16)):Vue.createCommentVNode("",!0)]),default:Vue.withCtx(()=>[t.item.icon?(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:0,icon:o(t.item.icon)},null,8,["icon"])):Vue.createCommentVNode("",!0)]),_:1},8,["index","disabled"]))}}),H=Vue.defineComponent({inheritAttrs:!1,name:"XMenu",__name:"Menu",props:{data:{default:()=>[]},subMenu:{},defaultIcon:{}},emits:["select"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>e.data.filter(r=>!r.hidden)),l=(r,s)=>{const c=(d,i=[])=>{for(const V of i){if(V.id.toString()===d.toString())return V;if(V.children?.length){const p=c(d,V.children);if(p)return p}}};return c(s,r)},a=r=>{const s=l(u.value,r);s&&o("select",s)};return(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElMenu),Vue.mergeProps({class:"x-menu"},r.$attrs,{onSelect:a}),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(u.value,c=>(Vue.openBlock(),Vue.createBlock(Vue.unref(Ne),{item:{...c,icon:c.icon},defaultIcon:e.defaultIcon,subMenu:e.subMenu},null,8,["item","defaultIcon","subMenu"]))),256))]),_:1},16))}}),ie={name:{type:String},label:{type:String},value:{type:[String,Number,Object,Array,Boolean]},icon:{type:[String,Object]},mode:{type:String,default:"button"},menus:{type:Array},tooltip:{type:[String,Object]},badge:{type:[String,Number,Object]},dropdown:{type:Object},button:{type:Object},disabled:{type:[Boolean,Function]},size:{type:String,default:"default"},type:{type:String,default:"primary"},background:{type:String,default:"always"},circle:{type:Boolean}};function Nt(n){return Vue.computed(()=>{const t=n.tooltip;if(t)return typeof t=="string"?{content:t}:t})}function zt(n){return Vue.computed(()=>{const t=n.badge;if(t)return typeof t=="object"?t:{value:t}})}function Tt(n){return Vue.computed(()=>{const{dropdown:t,menus:e}=n;if(e&&e.length>0)return Object.assign({popperClass:"x-action__menus",size:n.size},t||{})})}function ze(n){const t=Vue.getCurrentInstance();return Vue.computed(()=>{const e=Vue.unref(n);if(e)if(typeof e=="string"||e.setup||e.render||Vue.isVNode(e)){const o=t?.appContext.app;return{icon:typeof e=="string"&&o?.component(e)||e}}else return e;return null})}function W(n){const t=ze(n);return t.value?Vue.markRaw(Vue.defineComponent({render:()=>Vue.h(L,t.value)})):void 0}function G(n,t){return Vue.computed(()=>{const e=Vue.unref(n);return typeof e=="function"?e(t):!!e})}function Te(n,t,e){const o=Vue.shallowRef(t),u=Vue.ref(!1),l=async r=>{const s=Vue.unref(n);return s?typeof s=="function"?await s(r):s:t},a=async r=>(u.value=!0,await l(r).then(s=>(o.value=s||t,u.value=!1,Vue.unref(o))));return Vue.watch(()=>n,()=>{a(e)},{immediate:!0}),e&&Vue.watch(e,()=>{a(e)}),{data:o,loading:u,loader:a}}const Dt={key:0},It=Vue.defineComponent({__name:"Trigger",props:ie,emits:["click"],setup(n,{emit:t}){const e=n,o=t,u=W(Vue.toRef(e,"icon")),l=G(Vue.toRef(e,"disabled")),a=Vue.computed(()=>({[`is-${e.mode}`]:!!e.mode,[`is-${e.type}`]:!!e.type,[`is-${e.size}`]:!!e.size&&e.size!=="default",[`is-background-${e.background}`]:e.mode==="icon"&&!!e.background,"is-disabled":!!e.disabled,"is-circle":!!e.circle})),r=s=>{if(s.preventDefault(),!l.value)return o("click"),!1};return(s,c)=>e.mode==="button"?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),Vue.mergeProps({key:0,icon:Vue.unref(u),type:e.type,size:e.size,disabled:Vue.unref(l)},e.button,{onClick:r}),{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(s.label),1)]),_:1},16,["icon","type","size","disabled"])):(Vue.openBlock(),Vue.createElementBlock("div",{key:1,class:Vue.normalizeClass(["x-action__inner",a.value]),onClick:r},[(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(u)))),s.label?(Vue.openBlock(),Vue.createElementBlock("span",Dt,Vue.toDisplayString(s.label),1)):Vue.createCommentVNode("",!0)],2))}}),O=Vue.defineComponent({name:"XAction",__name:"Action",props:ie,emits:["click","command"],setup(n,{emit:t}){const e=n,o=Vue.useSlots(),u=t,l=Nt(e),a=zt(e),r=Tt(e),s=G(Vue.toRef(e,"disabled")),c=Vue.computed(()=>({[`x-action--${e.mode}`]:!!e.mode})),d=()=>{s.value||u("click",Vue.toRaw(e))},i=g=>{if(s.value)return;const C=e.menus?.find(B=>B.command===g);C&&u("command",Vue.toRaw(C))},V=g=>Vue.h(ElementPlus.ElBadge,a.value,()=>[].concat(g)),p=g=>Vue.h(ElementPlus.ElDropdown,{...r.value,disabled:s.value,onCommand:i},{default:()=>[g],dropdown:()=>[Vue.h(ElementPlus.ElDropdownMenu,()=>(e.menus||[]).map((C,B)=>Vue.h(ElementPlus.ElDropdownItem,C,()=>o.item?o.item({item:C,index:B}):C.label)))]}),m=g=>Vue.h(ElementPlus.ElTooltip,{...l.value,disabled:s.value},()=>[g]),y=Vue.computed(()=>{let g=Vue.h(Vue.markRaw(It),{...e,onClick:d});const C=o.default?.();return C&&C.length&&(g=C[0]),a.value&&(g=V(g)),r.value&&(g=p(g)),l.value&&(g=m(g)),g});return(g,C)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:Vue.normalizeClass(["x-action",c.value])},[(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(y.value)))],2))}}),De={items:{type:Array},mode:{type:String,default:"button"},size:{type:String,default:"default"},type:{type:String,default:"primary"},background:{type:String,default:"always"},circle:{type:Boolean},disabled:{type:[Boolean,Function]},tooltip:{type:Object},badge:{type:Object},dropdown:{type:Object},button:{type:Object}},Q=Vue.defineComponent({name:"XActionBar",__name:"ActionBar",props:De,emits:["click","command"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>(e.items||[]).map(r=>r==="|"?r:{...r,badge:r.badge?{...e.badge,...typeof r.badge=="object"?r.badge||{}:{value:r.badge}}:void 0,tooltip:r.tooltip?{...e.tooltip,...typeof r.tooltip=="object"?r.tooltip||{}:{content:r.tooltip}}:void 0})),l=r=>{o("click",r)},a=(r,s)=>{o("command",r,s)};return(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-action-bar",align:"center"},{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(u.value,c=>(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,[c==="|"?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDivider),{key:0,direction:"vertical",class:"x-action-bar__divider"})):(Vue.openBlock(),Vue.createBlock(Vue.unref(O),Vue.mergeProps({key:1,mode:e.mode,size:e.size,type:e.type,circle:e.circle,background:e.background,button:e.button,dropdown:e.dropdown,disabled:Vue.unref(G)(e.disabled,c).value},c,{onClick:l,onCommand:d=>a(c,d)}),null,16,["mode","size","type","circle","background","button","dropdown","disabled","onCommand"]))],64))),256))]),_:1}))}}),Ie={tag:{type:String,default:"div"},fit:{type:Boolean,default:!1},width:{type:[String,Number]},height:{type:[String,Number]},flex:{type:Boolean,default:!0},inline:{type:Boolean},direction:{type:String,default:"row"},wrap:{type:String,default:"nowrap"},justify:{type:String,default:"flex-start"},align:{type:String,default:"flex-start"},alignContent:{type:String,default:"stretch"},grow:{type:Boolean,default:!1},shrink:{type:Boolean,default:!1},alignSelf:{type:String,default:"auto"},overflow:{type:String},padding:{type:Boolean,default:!1},gap:{type:Boolean},autoPointer:{type:Boolean}},P=Vue.defineComponent({name:"XContainer",__name:"Container",props:Ie,setup(n){const t=n,e=Vue.useAttrs(),o=Vue.getCurrentInstance(),u=Vue.computed(()=>{const r=o?.parent;if(!r)return!1;const s=r.proxy;return s.$options.name==="XContainer"||!!s.flex}),l=Vue.computed(()=>({"is-fit":t.fit,"is-flex":t.flex&&!t.inline,"is-inline-flex":t.flex&&t.inline,[`is-direction-${t.direction}`]:t.flex&&t.direction!=="row",[`is-wrap-${t.wrap}`]:t.flex&&t.wrap!=="nowrap",[`is-justify-${t.justify}`]:t.flex&&t.justify!=="flex-start",[`is-align-${t.align}`]:t.flex&&t.align!=="flex-start",[`is-align-content-${t.alignContent}`]:t.flex&&t.alignContent!=="stretch","is-grow":t.grow??u.value,"is-shrink":u.value&&t.shrink,[`is-align-self-${t.alignSelf}`]:u.value&&t.alignSelf!=="auto",[`is-overflow-${t.overflow}`]:!!t.overflow,"is-padding":!!t.padding,"is-pointer":t.autoPointer&&!!e.onClick,"is-gap":!!t.gap})),a=Vue.computed(()=>{const{width:r,height:s,fit:c}=t;return c?null:{width:r?j(r):void 0,height:s?j(s):void 0}});return(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(t.tag),{class:Vue.normalizeClass(["x-container",l.value]),style:Vue.normalizeStyle(a.value)},{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"default")]),_:3},8,["class","style"]))}}),Me={size:{type:String,default:"default"},content:{type:String,default:""},subtitle:{type:String},icon:{type:[String,Object]},border:{type:Boolean},more:{type:Boolean}},Mt={key:0,class:"x-header__actions"},ce=Vue.defineComponent({name:"XHeader",inheritAttrs:!1,__name:"Header",props:Me,setup(n){const t=n,e=W(Vue.toRef(t,"icon")),o=Vue.useAttrs(),u=Vue.computed(()=>({[`is-size-${t.size}`]:!!t.size&&t.size!=="default","is-border":t.border,"is-pointer":!!o.onClick}));return(l,a)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-header",u.value]),justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(P),{align:"center",class:Vue.normalizeClass(["x-header__wrapper",u.value]),grow:""},{default:Vue.withCtx(()=>[Vue.unref(e)?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(e)),{key:0,class:"x-header__icon",onClick:Vue.unref(o).onClickIcon||Vue.unref(o).onClick},null,8,["onClick"])):Vue.createCommentVNode("",!0),Vue.createElementVNode("span",{class:"x-header__content",onClick:a[0]||(a[0]=(...r)=>Vue.unref(o).onClick&&Vue.unref(o).onClick(...r))},[Vue.renderSlot(l.$slots,"default",{},()=>[Vue.createTextVNode(Vue.toDisplayString(t.content),1)])]),t.more?(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:1,class:"x-header__more",icon:Vue.unref(VtjIcons.ArrowRight)},null,8,["icon"])):Vue.createCommentVNode("",!0),t.subtitle||l.$slots.subtitle?(Vue.openBlock(),Vue.createElementBlock("span",{key:2,class:"x-header__subtitle",onClick:a[1]||(a[1]=(...r)=>Vue.unref(o).onClick&&Vue.unref(o).onClick(...r))},[Vue.renderSlot(l.$slots,"subtitle",{},()=>[Vue.createTextVNode(Vue.toDisplayString(t.subtitle),1)])])):Vue.createCommentVNode("",!0)]),_:3},8,["class"]),l.$slots.actions?(Vue.openBlock(),Vue.createElementBlock("div",Mt,[Vue.renderSlot(l.$slots,"actions")])):Vue.createCommentVNode("",!0)]),_:3},8,["class"]))}}),Re={fit:{type:Boolean,default:!1},width:{type:[String,Number]},height:{type:[String,Number]},border:{type:Boolean,default:!0},radius:{type:Boolean,default:!0},card:{type:Boolean},size:{type:String},shadow:{type:String},header:{type:[String,Object]},body:{type:Object},footer:{type:Object}},K=Vue.defineComponent({name:"XPanel",__name:"Panel",props:Re,setup(n,{expose:t}){const e=n,o=Vue.ref(),u=Vue.computed(()=>({"x-panel--card":!!e.card,"x-panel--default":!e.card,[`is-${e.size}`]:!!e.size&&e.size!=="default","is-border":!!e.border,"is-radius":!!e.radius,[`is-shadow-${e.shadow}`]:!!e.shadow&&e.shadow!=="none"})),l=Vue.computed(()=>e.header===null?null:typeof e.header=="string"?{content:e.header,size:e.size}:{...e.header,size:e.size}),a=Vue.computed(()=>e.fit||e.height?"auto":void 0);return t({bodyRef:o}),(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-panel",u.value]),direction:"column",fit:e.fit,width:e.width,height:e.height},{default:Vue.withCtx(()=>[l.value?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,flex:!1,class:"x-panel__header"},{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"header",{},()=>[Vue.createVNode(Vue.unref(ce),Vue.normalizeProps(Vue.guardReactiveProps(l.value)),{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"title")]),actions:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"actions")]),_:3},16)])]),_:3})):Vue.createCommentVNode("",!0),Vue.createVNode(Vue.unref(P),Vue.mergeProps({ref_key:"bodyRef",ref:o,flex:!1,overflow:a.value,grow:"",padding:"",class:"x-panel__body"},e.body),{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"default")]),_:3},16,["overflow"]),r.$slots.footer?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),Vue.mergeProps({key:1,flex:!1,padding:"",class:"x-panel__footer"},e.footer),{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"footer")]),_:3},16)):Vue.createCommentVNode("",!0)]),_:3},8,["class","fit","width","height"]))}});Vue;function de(n){return v.getCurrentScope()?(v.onScopeDispose(n),!0):!1}function R(n){return typeof n=="function"?n():v.unref(n)}const $e=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Rt=Object.prototype.toString,$t=n=>Rt.call(n)==="[object Object]",je=()=>{};function jt(n,t){function e(...o){return new Promise((u,l)=>{Promise.resolve(n(()=>t.apply(this,o),{fn:t,thisArg:this,args:o})).then(u).catch(l)})}return e}const Ae=n=>n();function At(n=Ae){const t=v.ref(!0);function e(){t.value=!1}function o(){t.value=!0}const u=(...l)=>{t.value&&n(...l)};return{isActive:v.readonly(t),pause:e,resume:o,eventFilter:u}}function Ot(n){return n||v.getCurrentInstance()}function Ft(...n){if(n.length!==1)return v.toRef(...n);const t=n[0];return typeof t=="function"?v.readonly(v.customRef(()=>({get:t,set:je}))):v.ref(t)}function Lt(n,t,e={}){const{eventFilter:o=Ae,...u}=e;return v.watch(n,jt(o,t),u)}function Ut(n,t,e={}){const{eventFilter:o,...u}=e,{eventFilter:l,pause:a,resume:r,isActive:s}=At(o);return{stop:Lt(n,t,{...u,eventFilter:l}),pause:a,resume:r,isActive:s}}function Xt(n,t={}){if(!v.isRef(n))return v.toRefs(n);const e=Array.isArray(n.value)?Array.from({length:n.value.length}):{};for(const o in n.value)e[o]=v.customRef(()=>({get(){return n.value[o]},set(u){var l;if((l=R(t.replaceRef))!=null?l:!0)if(Array.isArray(n.value)){const r=[...n.value];r[o]=u,n.value=r}else{const r={...n.value,[o]:u};Object.setPrototypeOf(r,Object.getPrototypeOf(n.value)),n.value=r}else n.value[o]=u}}));return e}function Ve(n,t=!0,e){Ot()?v.onMounted(n,e):t?n():v.nextTick(n)}function U(n){var t;const e=R(n);return(t=e?.$el)!=null?t:e}const F=$e?window:void 0;function $(...n){let t,e,o,u;if(typeof n[0]=="string"||Array.isArray(n[0])?([e,o,u]=n,t=F):[t,e,o,u]=n,!t)return je;Array.isArray(e)||(e=[e]),Array.isArray(o)||(o=[o]);const l=[],a=()=>{l.forEach(d=>d()),l.length=0},r=(d,i,V,p)=>(d.addEventListener(i,V,p),()=>d.removeEventListener(i,V,p)),s=v.watch(()=>[U(t),R(u)],([d,i])=>{if(a(),!d)return;const V=$t(i)?{...i}:i;l.push(...e.flatMap(p=>o.map(m=>r(d,p,m,V))))},{immediate:!0,flush:"post"}),c=()=>{s(),a()};return de(c),c}function Ht(){const n=v.ref(!1);return v.getCurrentInstance()&&v.onMounted(()=>{n.value=!0}),n}function Oe(n){const t=Ht();return v.computed(()=>(t.value,!!n()))}function Wt(n,t={}){const{window:e=F}=t,o=Oe(()=>e&&"matchMedia"in e&&typeof e.matchMedia=="function");let u;const l=v.ref(!1),a=c=>{l.value=c.matches},r=()=>{u&&("removeEventListener"in u?u.removeEventListener("change",a):u.removeListener(a))},s=v.watchEffect(()=>{o.value&&(r(),u=e.matchMedia(R(n)),"addEventListener"in u?u.addEventListener("change",a):u.addListener(a),l.value=u.matches)});return de(()=>{s(),r(),u=void 0}),l}const q=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ee="__vueuse_ssr_handlers__",Kt=Jt();function Jt(){return ee in q||(q[ee]=q[ee]||{}),q[ee]}function Fe(n,t){return Kt[n]||t}function Yt(n){return n==null?"any":n instanceof Set?"set":n instanceof Map?"map":n instanceof Date?"date":typeof n=="boolean"?"boolean":typeof n=="string"?"string":typeof n=="object"?"object":Number.isNaN(n)?"any":"number"}const Qt={boolean:{read:n=>n==="true",write:n=>String(n)},object:{read:n=>JSON.parse(n),write:n=>JSON.stringify(n)},number:{read:n=>Number.parseFloat(n),write:n=>String(n)},any:{read:n=>n,write:n=>String(n)},string:{read:n=>n,write:n=>String(n)},map:{read:n=>new Map(JSON.parse(n)),write:n=>JSON.stringify(Array.from(n.entries()))},set:{read:n=>new Set(JSON.parse(n)),write:n=>JSON.stringify(Array.from(n))},date:{read:n=>new Date(n),write:n=>n.toISOString()}},Le="vueuse-storage";function Zt(n,t,e,o={}){var u;const{flush:l="pre",deep:a=!0,listenToStorageChanges:r=!0,writeDefaults:s=!0,mergeDefaults:c=!1,shallow:d,window:i=F,eventFilter:V,onError:p=b=>{console.error(b)},initOnMounted:m}=o,y=(d?v.shallowRef:v.ref)(typeof t=="function"?t():t);if(!e)try{e=Fe("getDefaultStorage",()=>{var b;return(b=F)==null?void 0:b.localStorage})()}catch(b){p(b)}if(!e)return y;const g=R(t),C=Yt(g),B=(u=o.serializer)!=null?u:Qt[C],{pause:k,resume:_}=Ut(y,()=>h(y.value),{flush:l,deep:a,eventFilter:V});return i&&r&&Ve(()=>{$(i,"storage",E),$(i,Le,f),m&&E()}),m||E(),y;function h(b){try{if(b==null)e.removeItem(n);else{const N=B.write(b),z=e.getItem(n);z!==N&&(e.setItem(n,N),i&&i.dispatchEvent(new CustomEvent(Le,{detail:{key:n,oldValue:z,newValue:N,storageArea:e}})))}}catch(N){p(N)}}function S(b){const N=b?b.newValue:e.getItem(n);if(N==null)return s&&g!=null&&e.setItem(n,B.write(g)),g;if(!b&&c){const z=B.read(N);return typeof c=="function"?c(z,g):C==="object"&&!Array.isArray(z)?{...g,...z}:z}else return typeof N!="string"?N:B.read(N)}function f(b){E(b.detail)}function E(b){if(!(b&&b.storageArea!==e)){if(b&&b.key==null){y.value=g;return}if(!(b&&b.key!==n)){k();try{b?.newValue!==B.write(y.value)&&(y.value=S(b))}catch(N){p(N)}finally{b?v.nextTick(_):_()}}}}}function Ue(n){return Wt("(prefers-color-scheme: dark)",n)}function Gt(n={}){const{selector:t="html",attribute:e="class",initialValue:o="auto",window:u=F,storage:l,storageKey:a="vueuse-color-scheme",listenToStorageChanges:r=!0,storageRef:s,emitAuto:c,disableTransition:d=!0}=n,i={auto:"",light:"light",dark:"dark",...n.modes||{}},V=Ue({window:u}),p=v.computed(()=>V.value?"dark":"light"),m=s||(a==null?Ft(o):Zt(a,o,l,{window:u,listenToStorageChanges:r})),y=v.computed(()=>m.value==="auto"?p.value:m.value),g=Fe("updateHTMLAttrs",(_,h,S)=>{const f=typeof _=="string"?u?.document.querySelector(_):U(_);if(!f)return;let E;if(d&&(E=u.document.createElement("style"),E.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),u.document.head.appendChild(E)),h==="class"){const b=S.split(/\s/g);Object.values(i).flatMap(N=>(N||"").split(/\s/g)).filter(Boolean).forEach(N=>{b.includes(N)?f.classList.add(N):f.classList.remove(N)})}else f.setAttribute(h,S);d&&(u.getComputedStyle(E).opacity,document.head.removeChild(E))});function C(_){var h;g(t,e,(h=i[_])!=null?h:_)}function B(_){n.onChanged?n.onChanged(_,C):C(_)}v.watch(y,B,{flush:"post",immediate:!0}),Ve(()=>B(y.value));const k=v.computed({get(){return c?m.value:y.value},set(_){m.value=_}});try{return Object.assign(k,{store:m,system:p,state:y})}catch{return k}}function qt(n={}){const{valueDark:t="dark",valueLight:e="",window:o=F}=n,u=Gt({...n,onChanged:(r,s)=>{var c;n.onChanged?(c=n.onChanged)==null||c.call(n,r==="dark",s,r):s(r)},modes:{dark:t,light:e}}),l=v.computed(()=>u.system?u.system.value:Ue({window:o}).value?"dark":"light");return v.computed({get(){return u.value==="dark"},set(r){const s=r?"dark":"light";l.value===s?u.value="auto":u.value=s}})}function eo(n,t={}){var e,o;const{pointerTypes:u,preventDefault:l,stopPropagation:a,exact:r,onMove:s,onEnd:c,onStart:d,initialValue:i,axis:V="both",draggingElement:p=F,containerElement:m,handle:y=n}=t,g=v.ref((e=R(i))!=null?e:{x:0,y:0}),C=v.ref(),B=f=>u?u.includes(f.pointerType):!0,k=f=>{R(l)&&f.preventDefault(),R(a)&&f.stopPropagation()},_=f=>{var E;if(!B(f)||R(r)&&f.target!==R(n))return;const b=R(m),N=(E=b?.getBoundingClientRect)==null?void 0:E.call(b),z=R(n).getBoundingClientRect(),M={x:f.clientX-(b?z.left-N.left+b.scrollLeft:z.left),y:f.clientY-(b?z.top-N.top+b.scrollTop:z.top)};d?.(M,f)!==!1&&(C.value=M,k(f))},h=f=>{var E;if(!B(f)||!C.value)return;const b=R(m),N=(E=b?.getBoundingClientRect)==null?void 0:E.call(b),z=R(n).getBoundingClientRect();let{x:M,y:A}=g.value;(V==="x"||V==="both")&&(M=f.clientX-C.value.x,b&&(M=Math.min(Math.max(0,M),N.width+b.scrollLeft-z.width))),(V==="y"||V==="both")&&(A=f.clientY-C.value.y,b&&(A=Math.min(Math.max(0,A),N.height+b.scrollTop-z.height))),g.value={x:M,y:A},s?.(g.value,f),k(f)},S=f=>{B(f)&&C.value&&(C.value=void 0,c?.(g.value,f),k(f))};if($e){const f={capture:(o=t.capture)!=null?o:!0};$(y,"pointerdown",_,f),$(p,"pointermove",h,f),$(p,"pointerup",S,f)}return{...Xt(g),position:g,isDragging:v.computed(()=>!!C.value),style:v.computed(()=>`left:${g.value.x}px;top:${g.value.y}px;`)}}function Xe(n,t,e={}){const{window:o=F,...u}=e;let l;const a=Oe(()=>o&&"ResizeObserver"in o),r=()=>{l&&(l.disconnect(),l=void 0)},s=v.computed(()=>Array.isArray(n)?n.map(i=>U(i)):[U(n)]),c=v.watch(s,i=>{if(r(),a.value&&o){l=new ResizeObserver(t);for(const V of i)V&&l.observe(V,u)}},{immediate:!0,flush:"post",deep:!0}),d=()=>{r(),c()};return de(d),{isSupported:a,stop:d}}function pe(n,t={width:0,height:0},e={}){const{window:o=F,box:u="content-box"}=e,l=v.computed(()=>{var i,V;return(V=(i=U(n))==null?void 0:i.namespaceURI)==null?void 0:V.includes("svg")}),a=v.ref(t.width),r=v.ref(t.height),{stop:s}=Xe(n,([i])=>{const V=u==="border-box"?i.borderBoxSize:u==="content-box"?i.contentBoxSize:i.devicePixelContentBoxSize;if(o&&l.value){const p=U(n);if(p){const m=o.getComputedStyle(p);a.value=Number.parseFloat(m.width),r.value=Number.parseFloat(m.height)}}else if(V){const p=Array.isArray(V)?V:[V];a.value=p.reduce((m,{inlineSize:y})=>m+y,0),r.value=p.reduce((m,{blockSize:y})=>m+y,0)}else a.value=i.contentRect.width,r.value=i.contentRect.height},e);Ve(()=>{const i=U(n);i&&(a.value="offsetWidth"in i?i.offsetWidth:t.width,r.value="offsetHeight"in i?i.offsetHeight:t.height)});const c=v.watch(()=>U(n),i=>{a.value=i?t.width:0,r.value=i?t.height:0});function d(){s(),c()}return{width:a,height:r,stop:d}}const to={page:n=>[n.pageX,n.pageY],client:n=>[n.clientX,n.clientY],screen:n=>[n.screenX,n.screenY],movement:n=>n instanceof Touch?null:[n.movementX,n.movementY]};function oo(n={}){const{type:t="page",touch:e=!0,resetOnTouchEnds:o=!1,initialValue:u={x:0,y:0},window:l=F,target:a=l,scroll:r=!0,eventFilter:s}=n;let c=null;const d=v.ref(u.x),i=v.ref(u.y),V=v.ref(null),p=typeof t=="function"?t:to[t],m=h=>{const S=p(h);c=h,S&&([d.value,i.value]=S,V.value="mouse")},y=h=>{if(h.touches.length>0){const S=p(h.touches[0]);S&&([d.value,i.value]=S,V.value="touch")}},g=()=>{if(!c||!l)return;const h=p(c);c instanceof MouseEvent&&h&&(d.value=h[0]+l.scrollX,i.value=h[1]+l.scrollY)},C=()=>{d.value=u.x,i.value=u.y},B=s?h=>s(()=>m(h),{}):h=>m(h),k=s?h=>s(()=>y(h),{}):h=>y(h),_=s?()=>s(()=>g(),{}):()=>g();if(a){const h={passive:!0};$(a,["mousemove","dragover"],B,h),e&&t!=="movement"&&($(a,["touchstart","touchmove"],k,h),o&&$(a,"touchend",C,h)),r&&t==="page"&&$(l,"scroll",_,{passive:!0})}return{x:d,y:i,sourceType:V}}function no(n,t={}){const{handleOutside:e=!0,window:o=F}=t,u=t.type||"page",{x:l,y:a,sourceType:r}=oo(t),s=v.ref(n??o?.document.body),c=v.ref(0),d=v.ref(0),i=v.ref(0),V=v.ref(0),p=v.ref(0),m=v.ref(0),y=v.ref(!0);let g=()=>{};return o&&(g=v.watch([s,l,a],()=>{const C=U(s);if(!C)return;const{left:B,top:k,width:_,height:h}=C.getBoundingClientRect();i.value=B+(u==="page"?o.pageXOffset:0),V.value=k+(u==="page"?o.pageYOffset:0),p.value=h,m.value=_;const S=l.value-i.value,f=a.value-V.value;y.value=_===0||h===0||S<0||f<0||S>_||f>h,(e||!y.value)&&(c.value=S,d.value=f)},{immediate:!0}),$(document,"mouseleave",()=>{y.value=!0})),{x:l,y:a,sourceType:r,elementX:c,elementY:d,elementPositionX:i,elementPositionY:V,elementHeight:p,elementWidth:m,isOutside:y,stop:g}}function uo(n,t){const{containerStyle:e,wrapperProps:o,scrollTo:u,calculateRange:l,currentList:a,containerRef:r}="itemHeight"in t?ao(t,n):ro(t,n);return{list:a,scrollTo:u,containerProps:{ref:r,onScroll:()=>{l()},style:e},wrapperProps:o}}function He(n){const t=v.ref(null),e=pe(t),o=v.ref([]),u=v.shallowRef(n);return{state:v.ref({start:0,end:10}),source:u,currentList:o,size:e,containerRef:t}}function We(n,t,e){return o=>{if(typeof e=="number")return Math.ceil(o/e);const{start:u=0}=n.value;let l=0,a=0;for(let r=u;r<t.value.length;r++){const s=e(r);if(l+=s,a=r,l>o)break}return a-u}}function Ke(n,t){return e=>{if(typeof t=="number")return Math.floor(e/t)+1;let o=0,u=0;for(let l=0;l<n.value.length;l++){const a=t(l);if(o+=a,o>=e){u=l;break}}return u+1}}function Je(n,t,e,o,{containerRef:u,state:l,currentList:a,source:r}){return()=>{const s=u.value;if(s){const c=e(n==="vertical"?s.scrollTop:s.scrollLeft),d=o(n==="vertical"?s.clientHeight:s.clientWidth),i=c-t,V=c+d+t;l.value={start:i<0?0:i,end:V>r.value.length?r.value.length:V},a.value=r.value.slice(l.value.start,l.value.end).map((p,m)=>({data:p,index:m+l.value.start}))}}}function Ye(n,t){return e=>typeof n=="number"?e*n:t.value.slice(0,e).reduce((u,l,a)=>u+n(a),0)}function Qe(n,t,e){v.watch([n.width,n.height,t],()=>{e()})}function Ze(n,t){return v.computed(()=>typeof n=="number"?t.value.length*n:t.value.reduce((e,o,u)=>e+n(u),0))}const lo={horizontal:"scrollLeft",vertical:"scrollTop"};function Ge(n,t,e,o){return u=>{o.value&&(o.value[lo[n]]=e(u),t())}}function ro(n,t){const e=He(t),{state:o,source:u,currentList:l,size:a,containerRef:r}=e,s={overflowX:"auto"},{itemWidth:c,overscan:d=5}=n,i=We(o,u,c),V=Ke(u,c),p=Je("horizontal",d,V,i,e),m=Ye(c,u),y=v.computed(()=>m(o.value.start)),g=Ze(c,u);Qe(a,t,p);const C=Ge("horizontal",p,m,r),B=v.computed(()=>({style:{height:"100%",width:`${g.value-y.value}px`,marginLeft:`${y.value}px`,display:"flex"}}));return{scrollTo:C,calculateRange:p,wrapperProps:B,containerStyle:s,currentList:l,containerRef:r}}function ao(n,t){const e=He(t),{state:o,source:u,currentList:l,size:a,containerRef:r}=e,s={overflowY:"auto"},{itemHeight:c,overscan:d=5}=n,i=We(o,u,c),V=Ke(u,c),p=Je("vertical",d,V,i,e),m=Ye(c,u),y=v.computed(()=>m(o.value.start)),g=Ze(c,u);Qe(a,t,p);const C=Ge("vertical",p,m,r),B=v.computed(()=>({style:{width:"100%",height:`${g.value-y.value}px`,marginTop:`${y.value}px`}}));return{calculateRange:p,scrollTo:C,containerStyle:s,wrapperProps:B,currentList:l,containerRef:r}}const qe="user-select-none";class fe{constructor(t,e={}){this.el=t,this.options=e,this.scope=Vue.effectScope(),this.scope.run(()=>{this.init()})}scope;dragging=!1;getHandle(){const{selector:t,handle:e}=this.options;return t?this.el.querySelector(t):e}getTarget(){const{target:t="body"}=this.options;return typeof t=="string"?document.querySelector(t):Vue.unref(t)||document.body}init(){const{el:t,options:e}=this,{disabled:o,delay:u=150,onStart:l,onEnd:a}=e;if(o)return;let r=null;const s=this.getHandle(),c=this.getTarget();let d=t.getBoundingClientRect(),i=null;const{x:V,y:p}=eo(t,{initialValue:{x:d.x,y:d.y},...e,handle:s,onStart:(m,y)=>{document.body.classList.add(qe),clearTimeout(r),r=setTimeout(()=>{this.dragging=!0,d=t.getBoundingClientRect(),i=c?.getBoundingClientRect(),l&&l(m,y)},u)},onEnd:(m,y)=>{if(clearTimeout(r),document.body.classList.remove(qe),this.dragging&&i){this.dragging=!1;const{x:g,y:C}=m,B=this.getPosition(i,d,g,C);a&&a(B,y),i=null}}});Vue.watch([V,p],()=>{if(this.dragging&&i){const m=this.getPosition(i,d,V.value,p.value);t.style.left=`${m.x}px`,t.style.top=`${m.y}px`}})}getPosition(t,e,o,u){const{edge:l=50}=this.options,a=-e.width+l,r=t.width-l,s=0,c=t.height-l,d=Math.min(r,Math.max(o,a)),i=Math.min(c,Math.max(u,s));return{x:d,y:i}}destory(){this.scope.stop()}}const et={mounted(n,t){const e=t.value||{},o=new fe(n,e);n.__draggable__=o},updated(n,t){const e=t.value||{};let o=n.__draggable__;o&&!VtjUtils.isEqual(o.options,e)&&(o.destory(),n.__draggable__=new fe(n,e))},unmounted(n){const t=n.__draggable__;t&&(t.destory(),n.__draggable__=null)}},me="user-select-none";class ge{constructor(t,e={}){this.el=t,this.options=e,this.scope=Vue.effectScope(),this.scope.run(()=>{this.init()})}scope;resizing=Vue.ref(!1);direction=Vue.ref("");MIE=null;cleanMousedown;cleanMouseup;init(){const{el:t,options:e}=this,{disabled:o,onStart:u,onEnd:l}=e;if(o)return;this.MIE=no(t),this.cleanMousedown=$(document,"mousedown",()=>{this.direction?.value&&this.MIE&&(this.resizing.value=!0,t.classList.add("is-resizing",`is-${this.direction.value}-resizing`),u&&u(this.direction.value,this.MIE))}),this.cleanMouseup=$(document,"mouseup",()=>{this.resizing.value&&this.direction?.value&&this.MIE&&(t.classList.remove("is-resizing",`is-${this.direction.value}-resizing`),l&&l(this.direction.value,this.MIE)),this.resizing.value=!1}),Vue.watch(this.direction,s=>{const c=document.body;c.style.cursor=s?`${s}-resize`:"",s?c.classList.add(me):c.classList.remove(me)});const{x:a,y:r}=this.MIE;Vue.watch([a,r],()=>{this.resizing.value?this.resize():this.direction.value=this.getDirection()})}resize(){const{MIE:t,direction:e,resizing:o,options:u,el:l}=this,a=e?.value||"";if(!t||!o.value||!a)return;const{x:r,y:s,elementX:c,elementY:d,elementHeight:i,elementWidth:V}=t,{onResizing:p}=u,{minWidth:m=0,minHeight:y=0,maxWidth:g=99999,maxHeight:C=99999}=u;if(a.includes("e")){const B=Math.min(Math.max(c.value,m),g);l.style.width=`${B}px`}if(a.includes("s")){const B=Math.min(Math.max(d.value,y),C);l.style.height=`${B}px`}if(a.includes("w")){const B=Math.min(Math.max(V.value-c.value,m),g);l.style.width=`${B}px`,l.style.left=`${r.value}px`}if(a.includes("n")){const B=Math.min(Math.max(i.value-d.value,y),C);this.el.style.height=`${B}px`,this.el.style.top=`${s.value}px`}p&&p(a,t)}getDirection(){if(!this.MIE)return"";const{elementX:t,elementY:e,elementHeight:o,elementWidth:u,isOutside:l}=this.MIE;if(l.value)return"";const{dirs:a=["n","s","w","e"],edge:r=5}=this.options;let s="";return a.includes("n")&&e.value<=r?s+="n":a.includes("s")&&e.value>o.value-r&&(s+="s"),a.includes("w")&&t.value<=r?s+="w":a.includes("e")&&t.value>u.value-r&&(s+="e"),s}destory(){const t=document.body;t.style.cursor="",t.classList.remove(me),this.cleanMousedown&&this.cleanMousedown(),this.cleanMouseup&&this.cleanMouseup(),this.MIE?.stop(),this.scope.stop()}}const he={mounted(n,t){const e=t.value||{},o=new ge(n,e);n.__resizable__=o},updated(n,t){const e=t.value||{};let o=n.__resizable__;o&&!VtjUtils.isEqual(o.options,e)&&(o.destory(),n.__resizable__=new ge(n,e))},unmounted(n){const t=n.__resizable__;t&&(t.destory(),n.__resizable__=null)}},tt={modelValue:{type:Boolean,default:!0},title:{type:String},subtitle:{type:String},icon:{type:[String,Object]},size:{type:String,default:"default"},width:{type:[Number,String],default:"70%"},height:{type:[Number,String],default:"70%"},left:{type:[Number,String]},top:{type:[Number,String]},modal:{type:Boolean,default:!0},draggable:{type:[Boolean,Object],default:!0},resizable:{type:[Boolean,Object]},closable:{type:Boolean,default:!0},maximizable:{type:Boolean,default:!1},minimizable:{type:Boolean,default:!1},mode:{type:String,default:"normal"},content:{type:Object},src:{type:String},componentInstance:{type:Object},beforeClose:{type:Function},submit:{type:[Boolean,String]},cancel:{type:[Boolean,String]},bodyPadding:{type:Boolean,default:!0},primary:{type:Boolean}};let J=1e3;function so(n,t){const{width:e,height:o}=pe(t),u=Vue.reactive({mode:n.mode||"normal",wrapperWidth:0,wrapperHeight:0,width:0,height:0,top:0,left:0,zIndex:++J,dragging:!1,resizing:!1});return Vue.watch([e,o],([l,a])=>{u.wrapperWidth=l,u.wrapperHeight=a,u.width=Y(n.width,l),u.height=Y(n.height,a),u.left=n.left?Y(n.left,l)-u.width/2:Math.max(Math.floor((l-u.width)/2),0),u.top=n.top?Y(n.top,a):Math.max(Math.floor((a-u.height)/2),0)}),Vue.watch(u,l=>{J=Math.max(l.zIndex,J)}),{state:u,normal:Vue.computed(()=>u.mode==="normal"),maximized:Vue.computed(()=>u.mode==="maximized"),minimized:Vue.computed(()=>u.mode==="minimized")}}function io(n,t){const e=Vue.computed(()=>{const{width:a,height:r,top:s,left:c,zIndex:d}=t;return{width:`${a}px`,height:`${r}px`,top:`${s}px`,left:`${c}px`,zIndex:d}}),o=Vue.computed(()=>({[`is-${t.mode}`]:!!t.mode,"is-draggable":!!n.draggable,"is-resizable":!!n.resizable,"is-primary":!!n.primary})),u=Vue.computed(()=>({[`is-${t.mode}`]:!!t.mode,"is-dragging":t.dragging,"is-resizing":t.resizing})),l=Vue.computed(()=>({zIndex:t.zIndex}));return{styles:e,classes:o,wrapperClass:u,modalStyle:l}}function co(n,t,e){const o=d=>{t.mode=d,["maximized","minimized","normal"].includes(d)&&e(d),e("modeChange",d)},u=async()=>{(!n.beforeClose||await n.beforeClose())&&(e("update:modelValue",!1),e("close"),e("destroy"))};return{close:u,changeMode:o,show:()=>o("normal"),hide:()=>o("minimized"),active:d=>{const i=d.target.nodeName||"";["INPUT","TEXTAREA","RADIO","CHECKBOX"].includes(i.toUpperCase())||(t.zIndex=Math.max(t.zIndex,++J))},submit:()=>e("submit"),cancel:()=>{e("cancel"),u()}}}function Vo(n,t,e,o){return Vue.computed(()=>{const u=typeof n.draggable=="boolean"?!n.draggable:!!n.draggable?.disabled;return{...VtjUtils.isObject(n.draggable)?n.draggable:{},disabled:u,target:o,selector:".x-panel__header",onStart(l){t.dragging=!0,t.zIndex=Math.max(t.zIndex,++J),e("dragStart",l)},onMove(l){e("dragging",l)},onEnd(l){if(t.mode==="maximized")return;const{x:a,y:r}=l;t.left=a,t.top=r,t.dragging=!1,e("dragEnd",l)}}})}function po(n,t,e){return Vue.computed(()=>{const o=typeof n.resizable=="boolean"?!n.resizable:!!n.resizable?.disabled;return{minWidth:200,minHeight:150,...VtjUtils.isObject(n.resizable)?n.resizable:{},disabled:o,dirs:["e","s","w"],onStart(u,l){t.resizing=!0,t.zIndex=Math.max(t.zIndex,++J),e("resizeStart",u,l)},onResizing(u,l){e("resizing",u,l)},onEnd(u,l){t.left=l.elementPositionX.value,t.top=l.elementPositionY.value,t.width=l.elementWidth.value,t.height=l.elementHeight.value,t.resizing=!1,e("resizeEnd",u,l)}}})}function fo(n,t){const e=n.componentInstance;if(!e)return;let o=null;return Vue.onMounted(()=>{const u=Vue.unref(t),l=Vue.unref(u?.bodyRef);o=e.$el,l&&l.$el&&l.$el.appendChild(o)}),Vue.onUnmounted(()=>{o&&o.parentNode&&o.parentNode.removeChild(o)}),{componentInstance:e}}const mo=["src"],te=Vue.defineComponent({name:"XDialog",__name:"Dialog",props:tt,emits:["update:modelValue","open","close","destroy","maximized","minimized","normal","modeChange","dragStart","dragging","dragEnd","resizeStart","resizeEnd","resizing","submit","cancel"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.getCurrentInstance(),a=Vue.ref(),r=Vue.ref(),{state:s,maximized:c,minimized:d,normal:i}=so(o,a),{styles:V,classes:p,wrapperClass:m,modalStyle:y}=io(o,s),{changeMode:g,active:C,close:B,show:k,hide:_,submit:h,cancel:S}=co(o,s,u),f=Vo(o,s,u,a),E=po(o,s,u),b=fo(o,r);Vue.watchEffect(async()=>{o.modelValue&&(await Vue.nextTick(),l&&u("open",l))});const N=Vue.computed(()=>r.value?.$el);return t({$vtjEl:N,panelRef:r,state:s,maximized:c,minimized:d,changeMode:g,show:k,hide:_,submit:h,cancel:S,componentInstance:b}),(z,M)=>o.modelValue?(Vue.openBlock(),Vue.createBlock(Vue.Teleport,{key:0,to:"body"},[Vue.createElementVNode("div",{ref_key:"wrapper",ref:a,class:Vue.normalizeClass(["x-dialog__wrapper",Vue.unref(m)])},[o.modal?(Vue.openBlock(),Vue.createElementBlock("div",{key:0,class:"x-dialog__modal",style:Vue.normalizeStyle(Vue.unref(y))},null,4)):Vue.createCommentVNode("",!0),Vue.withDirectives((Vue.openBlock(),Vue.createBlock(Vue.unref(K),Vue.mergeProps({ref_key:"panelRef",ref:r,class:["x-dialog",Vue.unref(p)],card:"",shadow:"always",header:{icon:o.icon,subtitle:o.subtitle},width:"800px",height:"600px",footer:{justify:"space-between",flex:!0,align:"center"},style:Vue.unref(V),size:o.size,body:{padding:o.bodyPadding},onClick:Vue.unref(C)},z.$attrs),Vue.createSlots({title:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(o.title),1)]),actions:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"actions"),o.minimizable?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:0,icon:Vue.unref(VtjIcons.Minimize),size:o.size,mode:"icon",type:"primary",background:"hover",onClick:M[0]||(M[0]=A=>Vue.unref(g)("minimized"))},null,8,["icon","size"])):Vue.createCommentVNode("",!0),o.maximizable?(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:1},[Vue.unref(i)?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:1,icon:Vue.unref(VtjIcons.Maximize),size:o.size,mode:"icon",type:"primary",background:"hover",onClick:M[2]||(M[2]=A=>Vue.unref(g)("maximized"))},null,8,["icon","size"])):(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:0,icon:Vue.unref(VtjIcons.Popup),size:o.size,mode:"icon",type:"primary",background:"hover",onClick:M[1]||(M[1]=A=>Vue.unref(g)("normal"))},null,8,["icon","size"]))],64)):Vue.createCommentVNode("",!0),o.closable?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:2,icon:Vue.unref(VtjIcons.RawClose),size:o.size,mode:"icon",type:"danger",background:"hover",onClick:Vue.unref(B)},null,8,["icon","size","onClick"])):Vue.createCommentVNode("",!0)]),default:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"default",{},()=>[o.content?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(o.content),{key:0})):Vue.createCommentVNode("",!0),o.src?(Vue.openBlock(),Vue.createElementBlock("iframe",{key:1,src:o.src,class:"x-dialog__frame"},null,8,mo)):Vue.createCommentVNode("",!0)])]),_:2},[o.cancel||o.submit||z.$slots.footer||z.$slots.extra||z.$slots.handle?{name:"footer",fn:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"footer",{},()=>[Vue.createVNode(Vue.unref(P),{align:"center"},{default:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"extra")]),_:3}),Vue.createVNode(Vue.unref(P),{align:"center"},{default:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"handle"),o.cancel?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:0,type:"default",size:o.size,onClick:Vue.unref(S)},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(typeof o.cancel=="string"?o.cancel:"取消"),1)]),_:1},8,["size","onClick"])):Vue.createCommentVNode("",!0),o.submit?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:1,type:"primary",size:o.size,onClick:Vue.unref(h)},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(typeof o.submit=="string"?o.submit:"确定"),1)]),_:1},8,["size","onClick"])):Vue.createCommentVNode("",!0)]),_:3})])]),key:"0"}:void 0]),1040,["header","class","style","size","body","onClick"])),[[Vue.unref(et),Vue.unref(f)],[Vue.unref(he),Vue.unref(E)]])],2)])):Vue.createCommentVNode("",!0)}});function oe(n,t){const e=document.createElement("div"),o=Vue.createVNode(te,n);o.appContext=t??oe._context,Vue.render(o,e);const u=()=>{Vue.render(null,e),e.parentNode?.removeChild(e)};return o.props.onDestroy=()=>{u()},document.body.appendChild(e),{vnode:o,destroy:u}}const go=Vue.createElementVNode("div",{class:"x-mask-sidebar__helper"},null,-1),ho=Vue.defineComponent({__name:"Sidebar",props:{collapsed:{type:Boolean}},setup(n){const t=n;return(e,o)=>Vue.withDirectives((Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-mask-sidebar",{"is-collapsed":t.collapsed}]),grow:!1,flex:"",direction:"column"},{default:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"brand"),Vue.createVNode(Vue.unref(P),{class:"x-mask-sidebar__wrapper",flex:"",grow:"",direction:"column",justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"default"),go]),_:3})]),_:3},8,["class"])),[[Vue.unref(he),{dirs:["e"],disabled:t.collapsed,maxWidth:500,minWidth:200}]])}}),yo=Vue.defineComponent({__name:"SwitchBar",props:{collasped:{type:Boolean,default:!1},favorite:{type:Boolean,default:!1},keyword:{}},emits:["update:collasped","update:keyword","update:favorite"],setup(n,{emit:t}){const e=n,o=t,u=Vue.ref(!1),l=Vue.ref(""),a=Vue.ref(!1),r=()=>{u.value=!0},s=()=>{l.value="",u.value=!1,o("update:keyword",l.value)},c=()=>{o("update:collasped",!e.collasped)},d=()=>{o("update:keyword",l.value)},i=()=>{o("update:favorite",a.value)};return(V,p)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-mask-switch-bar",justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[e.collasped?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-mask-switch-bar__left",grow:""},{default:Vue.withCtx(()=>[u.value?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSwitch),{key:0,modelValue:a.value,"onUpdate:modelValue":p[0]||(p[0]=m=>a.value=m),class:"x-mask-switch-bar__switch","active-icon":Vue.unref(VtjIcons.StarFilled),"inactive-icon":Vue.unref(VtjIcons.Menu),onChange:i},null,8,["modelValue","active-icon","inactive-icon"])),u.value?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElInput),{key:1,modelValue:l.value,"onUpdate:modelValue":p[1]||(p[1]=m=>l.value=m),class:"x-mask-switch-bar__input",size:"small",placeholder:"请输入查询关键字",onInput:d,"prefix-icon":Vue.unref(VtjIcons.Search)},{suffix:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(L),{icon:Vue.unref(VtjIcons.Close),onClick:s},null,8,["icon"])]),_:1},8,["modelValue","prefix-icon"])):Vue.createCommentVNode("",!0)]),_:1})),Vue.createVNode(Vue.unref(P),{class:Vue.normalizeClass(["x-mask-switch-bar__right",{"is-collasped":e.collasped}]),flex:"",align:"center",justify:"center"},{default:Vue.withCtx(()=>[!u.value&&!e.collasped?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:0,icon:Vue.unref(VtjIcons.Search),mode:"icon",background:"hover",size:"default",circle:"",onClick:r},null,8,["icon"])):Vue.createCommentVNode("",!0),e.collasped?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:1,icon:Vue.unref(VtjIcons.Expand),mode:"icon",size:"default",background:"hover",onClick:c,circle:""},null,8,["icon"])):Vue.createCommentVNode("",!0),e.collasped?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:2,icon:Vue.unref(VtjIcons.Fold),mode:"icon",size:"default",background:"hover",circle:"",onClick:c},null,8,["icon"]))]),_:1},8,["class"])]),_:1}))}}),vo=["src"],ko={key:0},bo=Vue.defineComponent({__name:"Brand",props:{collapsed:{type:Boolean,default:!1},logo:{},title:{},url:{}},setup(n){const t=n,e=VueRouter.useRouter(),o=()=>{t.url&&e.push(t.url)};return(u,l)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-mask-brand",{"is-collapsed":t.collapsed}]),align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(P),{class:"x-mask-brand__logo",flex:"",justify:"center",align:"center",onClick:o},{default:Vue.withCtx(()=>[Vue.renderSlot(u.$slots,"logo",{},()=>[t.logo?(Vue.openBlock(),Vue.createElementBlock("img",{key:0,src:t.logo},null,8,vo)):Vue.createCommentVNode("",!0)])]),_:3}),Vue.createVNode(Vue.unref(P),{class:"x-mask-brand__title",flex:"",align:"center"},{default:Vue.withCtx(()=>[t.title?(Vue.openBlock(),Vue.createElementBlock("span",ko,[Vue.renderSlot(u.$slots,"title",{},()=>[Vue.createTextVNode(Vue.toDisplayString(t.title),1)])])):Vue.createCommentVNode("",!0)]),_:3})]),_:3},8,["class"]))}}),ne="__favorites__",ue="__search__",wo=Vue.defineComponent({__name:"Menu",props:{collapse:{type:Boolean,default:!1},keyword:{},favorite:{type:Boolean},favorites:{},flatMenus:{},menus:{},active:{}},emits:["select"],setup(n,{emit:t}){const e=n,o=Vue.computed(()=>e.menus||[]),u=t,l=Vue.computed(()=>String(e.active?.id)),a=Vue.computed(()=>[{id:ne,title:"收藏",icon:VtjIcons.Star,children:e.favorites?.length?e.favorites:[{id:ne+"empty",disabled:!0,title:"暂无收藏菜单"}]}]),r=Vue.computed(()=>{const c=(e.keyword||"").trim(),d=c?(e.flatMenus||[]).filter(i=>i.title?.includes(c)):[];return[{id:ue,title:"搜索",icon:VtjIcons.Search,children:d?.length?d:[{id:ue+"empty",disabled:!0,title:"查询匹配不到菜单项"}]}]}),s=c=>{u("select",c)};return(c,d)=>(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,[Vue.withDirectives(Vue.createVNode(Vue.unref(P),{class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:Vue.withCtx(()=>[Vue.withDirectives(Vue.createVNode(Vue.unref(H),{subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:o.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!0,"collapse-transition":!1,"default-active":l.value,onSelect:s},null,8,["data","default-icon","default-active"]),[[Vue.vShow,e.collapse]]),Vue.withDirectives(Vue.createVNode(Vue.unref(H),{subMenu:{popperClass:"x-mask-menu-popper",teleported:!0},data:o.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!1,"collapse-transition":!1,"default-active":l.value,onSelect:s},null,8,["data","default-icon","default-active"]),[[Vue.vShow,!e.collapse]]),o.value.length?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElEmpty),{key:0,description:"暂无菜单数据"}))]),_:1},512),[[Vue.vShow,!e.favorite&&!e.keyword]]),Vue.withDirectives(Vue.createVNode(Vue.unref(P),{class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:Vue.withCtx(()=>[Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__favorites",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:a.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!0,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ne],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,e.collapse]]),Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__favorites",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:a.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!1,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ne],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,!e.collapse]])]),_:1},512),[[Vue.vShow,e.favorite&&!e.keyword]]),e.keyword?Vue.withDirectives((Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:Vue.withCtx(()=>[Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__search",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:r.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!0,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ue],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,e.collapse]]),Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__search",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:r.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!1,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ue],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,!e.collapse]])]),_:1},512)),[[Vue.vShow,!!e.keyword]]):Vue.createCommentVNode("",!0)],64))}}),Co="data:image/png;base64,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",ot=140,nt={logo:{type:String,default:Co},title:{type:String,default:"VTJ.PRO"},menus:{type:[Array,Function],default(){return[]}},favorites:{type:[Array,Function],default(){return[]}},menuAdapter:{type:Function},home:{type:[String,Object],default:"/"},tabs:{type:Number,default:20},actions:{type:Array},avatar:{type:String},theme:{type:Boolean},disabled:{type:Boolean},addFavorite:{type:Function},removeFavorite:{type:Function}},ye=Symbol(),ve=Symbol(),_o={class:"x-mask-tabs__trigger"},Bo={key:1},So=["onDragstart","onDragend"],xo={key:1},Eo=Vue.defineComponent({__name:"Tabs",props:{tabs:{},home:{},isActiveTab:{type:Function},value:{},favorites:{}},emits:["click","remove","refresh","toggleFavorite","dialog"],setup(n,{emit:t}){const e=n,o=t,u=d=>{const i=!!e.favorites.find(V=>V===d.menu||V.id===d.menu?.id);return[{icon:VtjIcons.Refresh,label:"刷新",name:"refresh",value:d},"|",{icon:i?VtjIcons.StarFilled:VtjIcons.Star,label:"收藏",name:"favorite",value:d.menu,disabled:!d.menu},"|",{icon:VtjIcons.CopyDocument,label:"弹窗",name:"dialog",value:d}]},l=d=>{const i=d.paneName;if(i===e.home.id){o("click",e.home);return}const V=e.tabs.find(p=>p.id===i);V&&o("click",V)},a=d=>{const i=e.tabs.find(V=>V.id===d);i&&o("remove",i)},r=d=>{switch(d.name){case"refresh":o("refresh",d.value);break;case"favorite":o("toggleFavorite",d.value);break;case"dialog":o("dialog",d.value);break}},s=(d,i)=>{i.dataTransfer&&(i.dataTransfer.setData("tab",d.id),i.target&&i.target.classList.add("is-dagging"))},c=(d,i)=>{i.target&&i.target.classList.remove("is-dagging")};return(d,i)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{ref:"tabsRef",class:"x-mask-tabs",height:"100%",grow:"",flex:"",justify:"flex-end",direction:"column"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElTabs),{type:"card","model-value":e.value,onTabRemove:a,onTabClick:l},{default:Vue.withCtx(()=>[e.home?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabPane),{key:0,name:e.home.id},{label:Vue.withCtx(()=>[Vue.createElementVNode("div",_o,[e.home.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(e.home.icon)),{key:0})):Vue.createCommentVNode("",!0),e.home.title?(Vue.openBlock(),Vue.createElementBlock("span",Bo,Vue.toDisplayString(e.home.title),1)):Vue.createCommentVNode("",!0)])]),_:1},8,["name"])):Vue.createCommentVNode("",!0),(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.tabs,V=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabPane),{key:V.id,name:V.id,lazy:"",closable:""},{label:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElPopover),{"open-delay":500,placement:"bottom",trigger:"hover",width:"200px",disabled:V.id!==e.value},{reference:Vue.withCtx(()=>[Vue.createElementVNode("div",{class:"x-mask-tabs__trigger",draggable:"true",onDragstart:p=>s(V,p),onDragend:p=>c(V,p)},[V.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(V.icon)),{key:0})):Vue.createCommentVNode("",!0),V.title?(Vue.openBlock(),Vue.createElementBlock("span",xo,Vue.toDisplayString(V.title),1)):Vue.createCommentVNode("",!0)],40,So)]),default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Q),{items:u(V),mode:"text",size:"small",type:"info",onClick:r},null,8,["items"])]),_:2},1032,["disabled"])]),_:2},1032,["name"]))),128))]),_:1},8,["model-value"])]),_:1},512))}}),Po=Vue.defineComponent({__name:"ThemeSwitch",setup(n){const t=qt();return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSwitch),{class:"x-mask-theme-switch",modelValue:Vue.unref(t),"onUpdate:modelValue":o[0]||(o[0]=u=>Vue.isRef(t)?t.value=u:null),size:"default","active-action-icon":Vue.unref(VtjIcons.Moon),"inactive-action-icon":Vue.unref(VtjIcons.Sunny)},null,8,["modelValue","active-action-icon","inactive-action-icon"]))}}),No={class:"x-mask-toolbar__menu-item"},zo=Vue.defineComponent({__name:"Toolbar",props:{tabs:{default:()=>[]},actions:{},theme:{type:Boolean}},emits:["closeOtherTabs","closeAllTabs","closeTab","clickTab","actionClick","actionCommand"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>{const c=e.tabs.map((d,i)=>({divided:i===0,label:d.title,command:d}));return[{label:"关闭其他",command:"other"},{label:"关闭全部",command:"all"},...c]}),l=c=>{o("closeTab",c.command)},a=c=>{switch(c.command){case"all":o("closeAllTabs");break;case"other":o("closeOtherTabs");break;default:o("clickTab",c.command);break}},r=c=>{o("actionClick",c)},s=(c,d)=>{o("actionCommand",c,d)};return(c,d)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-mask-toolbar",align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(O),{icon:Vue.unref(VtjIcons.MoreFilled),menus:u.value,dropdown:{size:"small"},mode:"icon",circle:"",background:"hover",onCommand:a},{item:Vue.withCtx(({item:i})=>[Vue.createElementVNode("span",No,[Vue.createTextVNode(Vue.toDisplayString(i.label)+" ",1),["other","all"].includes(i.command)?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:0,onClick:Vue.withModifiers(V=>l(i),["stop"]),icon:Vue.unref(VtjIcons.Close)},null,8,["onClick","icon"]))])]),_:1},8,["icon","menus"]),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),{direction:"vertical"}),e.actions?(Vue.openBlock(),Vue.createBlock(Vue.unref(Q),{key:0,circle:"",mode:"icon",size:"default",background:"hover",items:c.actions,onClick:r,onCommand:s},null,8,["items"])):Vue.createCommentVNode("",!0),e.actions?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDivider),{key:1,direction:"vertical"})):Vue.createCommentVNode("",!0),e.theme?(Vue.openBlock(),Vue.createBlock(Po,{key:2})):Vue.createCommentVNode("",!0),e.theme?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDivider),{key:3,direction:"vertical"})):Vue.createCommentVNode("",!0),Vue.renderSlot(c.$slots,"default")]),_:3}))}}),To=Vue.defineComponent({__name:"Avatar",props:{avatar:{}},setup(n){const t=n;return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElPopover),{width:200,"popper-class":"x-mask-avatar__popper",disabled:!e.$slots.default},{reference:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElAvatar),{class:"x-mask-avatar",shape:"circle",icon:Vue.unref(VtjIcons.UserFilled),src:t.avatar,size:26},null,8,["icon","src"])]),default:Vue.withCtx(()=>[e.$slots.default?Vue.renderSlot(e.$slots,"default",{key:0}):Vue.createCommentVNode("",!0)]),_:3},8,["disabled"]))}}),ut=Vue.defineComponent({__name:"Content",props:{createView:{type:Function},exclude:{}},setup(n){const t=n;return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-mask__content",flex:!1,grow:"",padding:!1},{default:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"default"),Vue.createVNode(Vue.unref(VueRouter.RouterView),null,{default:Vue.withCtx(({Component:u,route:l})=>[(Vue.openBlock(),Vue.createBlock(Vue.KeepAlive,{exclude:t.exclude},[u?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(t.createView(u,l)),{key:l.fullPath})):Vue.createCommentVNode("",!0)],1032,["exclude"]))]),_:1})]),_:3}))}});function Do(){const n=Vue.ref(!1),t=Vue.ref(""),e=Vue.ref(!1);return{collapsed:n,keyword:t,favorite:e}}function Io(n){const t=VtjUtils.uid();return Vue.computed(()=>{const e=n.home;return Object.assign({id:t,url:"/",name:"MaskHome",icon:VtjIcons.HomeFilled,closable:!1},typeof e=="string"?{url:e}:e||{})})}function lt(n,t){let e=[];return n.forEach(o=>{o=t?t(o):o,o.children?e=e.concat(lt(o.children,t)):e.push(o)}),e}function Mo(n,t){const e=VueRouter.useRouter(),o=Vue.shallowRef([]),u=Vue.shallowRef([]),l=Vue.computed(()=>lt(o.value,n.menuAdapter)),a=Vue.computed(()=>VtjUtils.arrayToMap(l.value,"id")),r=Vue.ref(null),s=m=>{const y=typeof m=="object"?m.id:m,g=a.value.get(y);if(!g){console.warn("找不到菜单",m);return}const{type:C="route",url:B,title:k,icon:_}=g;if(!B){r.value=g,t("select",g);return}if(C==="route"){VtjUtils.isUrl(B)||B.startsWith("//")?window.open(B):(r.value=g,e.push(B).catch(h=>h));return}if(C==="window"){window.open(B);return}C==="dialog"&&oe({resizable:!0,bodyPadding:!1,width:"80%",height:"80%",title:k,icon:_,src:B})},c=async()=>{o.value=typeof n.menus=="function"?await n.menus()||[]:n.menus??[],u.value=typeof n.favorites=="function"?await n.favorites()||[]:n.favorites??[]},d=m=>{u.value=[m,...u.value],n.addFavorite&&n.addFavorite(m)},i=m=>{u.value=u.value.filter(y=>y.id!==m.id),n.removeFavorite&&n.removeFavorite(m)},V=m=>!!u.value.find(y=>y===m||y.id===m.id),p=m=>{V(m)?i(m):d(m)};return Vue.watchEffect(c),{menus:o,favorites:u,flatMenus:l,active:r,select:s,toggleFavorite:p}}function Ro(n,t,e,o,u){const l=VueRouter.useRoute(),a=VueRouter.useRouter(),r={},s=Vue.ref([]),c=Vue.ref(),{width:d}=pe(c),i=Vue.computed(()=>Math.floor(d.value/ot)),V=Vue.computed(()=>s.value.slice(0,i.value).filter(x=>!x.dialog)),p=Vue.computed(()=>s.value.slice(i.value)),m=x=>e.value.find(T=>T.url===x),y=x=>l.fullPath===x.url,g=x=>u.value.id===x?u.value:s.value.find(T=>T.id===x),C=Vue.ref(""),B=Vue.computed(()=>g(C.value)),k=x=>{a.push(x.url).catch(T=>T)},_=x=>{C.value=x.id,l.fullPath!==x.url&&k(x)},h=()=>{k(u.value)},S=x=>{const T=s.value.find(D=>D.url===x.url||D.id===x.id);T?_(T):(s.value.unshift(x),_(x))},f=async x=>{const{url:T=l.fullPath,icon:D,title:le="新建标签页"}=x||{},re=r[T],Be=VtjUtils.uid(),Se=VtjUtils.upperFirstCamelCase(T);return{id:Be,name:Se,url:T,icon:D,title:le,closable:!0,menu:x,...re?await re():{}}},E=async x=>{if(await ElementPlus.ElMessageBox.confirm("是否关闭页签","提示",{type:"warning"}).catch(()=>!1)){if(s.value=s.value.filter(D=>D.id!==x.id),C.value===x.id){const D=s.value[0];k(D||u.value)}return x}},b=x=>{const T=s.value.findIndex(D=>D.id===x.id);if(T>=0){const D=s.value[T];s.value.splice(T,1,Object.assign(D,x))}},N=async()=>{if(!await ElementPlus.ElMessageBox.confirm("是否关闭全部页签","提示",{type:"warning"}).catch(()=>!1))return;const T=s.value;return s.value=[],_(u.value),T},z=async()=>{if(!await ElementPlus.ElMessageBox.confirm("是否关闭其他页签","提示",{type:"warning"}).catch(()=>!1))return;const T=s.value.filter(D=>D.id!==C.value);return s.value=s.value.filter(D=>D.id===C.value),T},M=x=>{const T=s.value.filter(D=>D.id!==x.id);s.value=[x,...T],_(x)},A=async()=>{await Vue.nextTick();const x=u.value.url===l.fullPath,T=m(l.fullPath);if(x)C.value=u.value.id;else{const D=await f(T);S(D)}await Vue.nextTick(),o.value=T||null};return Vue.watch(e,A),Vue.watch(l,A,{immediate:!0}),Vue.provide(ye,r),{tabRef:c,tabs:s,showTabs:V,currentTab:B,changeTab:k,removeTab:E,updateTab:b,addTab:S,home:u,tabValue:C,isCurrentTab:y,activeHome:h,activeTab:_,dropdownTabs:p,removeAllTabs:N,removeOtherTabs:z,moveToShow:M}}function $o(n){const t=new Map,e=Vue.ref([]),o=Vue.reactive({}),u=Vue.getCurrentInstance(),l={},{updateTab:a,isCurrentTab:r,activeHome:s,tabs:c}=n,d=(k,_)=>{const h=_.fullPath;if(t.has(h))return t.get(h);{const S=VtjUtils.upperFirstCamelCase(h),f={name:S,setup(){const E=Vue.computed(()=>o[h]||document.body),b=Vue.computed(()=>!o[h]),N=Vue.computed(()=>!e.value.includes(S));return Vue.provide(VueRouter.routeLocationKey,Vue.toRaw({..._})),()=>N.value?Vue.h(Vue.Teleport,{to:E.value,disabled:b.value},[Vue.h(k)]):null}};return t.set(h,f),f}},i=k=>{k.dialog=void 0,delete o[k.url];const _=l[k.id];_&&(_.destroy(),delete l[k.id],a(k))},V=(k=[])=>{k.forEach(_=>{i(_)})},p=async k=>{k.dialog={...k.dialog,onMinimized:()=>{i(k)},onClose:async()=>{i(k),c.value=c.value.filter(h=>h.id!==k.id)}},a(k);const _=oe({title:k.title,icon:k.icon,modal:!1,resizable:!0,draggable:!0,maximizable:!0,minimizable:!0,...k.dialog,onOpen(h){o[k.url]=h.refs.panelRef?.bodyRef?.$el}},u?.appContext);return await Vue.nextTick(),r(k)&&s(),l[k.id]=_,_},m=async k=>{e.value=[k.name],await Vue.nextTick(),e.value=[]},y=async k=>{e.value=k.map(_=>_.name),await Vue.nextTick(),e.value=[]},g=k=>(k.preventDefault(),!1),C=k=>{if(k.dataTransfer){const _=k.dataTransfer.getData("tab"),h=c.value.find(S=>S.id===_);if(h){const{clientX:S,clientY:f}=k;h.dialog={left:S,top:f},p(h)}}},B=k=>!!o[k];return $(document,"dragover",g),$(document,"drop",C),{createView:d,openDialog:p,refresh:m,exclude:e,cleanCache:y,hasDialog:B,closeDialog:i,closeDialogs:V}}const rt=Vue.defineComponent({name:"XMask",__name:"Mask",props:nt,emits:["select","actionClick","actionCommand"],setup(n,{emit:t}){const e=n,o=t,u=Io(e),{collapsed:l,keyword:a,favorite:r}=Do(),{menus:s,favorites:c,flatMenus:d,active:i,select:V,toggleFavorite:p}=Mo(e,o),{tabRef:m,showTabs:y,currentTab:g,changeTab:C,removeTab:B,tabs:k,updateTab:_,isCurrentTab:h,activeHome:S,removeAllTabs:f,removeOtherTabs:E,dropdownTabs:b,moveToShow:N}=Ro(e,o,d,i,u),{createView:z,openDialog:M,refresh:A,exclude:x,cleanCache:T,closeDialogs:D}=$o({tabs:k,updateTab:_,isCurrentTab:h,activeHome:S}),le=async I=>{await B(I)&&await T([I])},re=async()=>{const I=await f();I&&(D(I),await T(I))},Be=async()=>{const I=await E();I&&(D(I),await T(I))},Se=I=>{o("actionClick",I)},fn=(I,X)=>{o("actionCommand",I,X)};return Vue.provide(ve,{tabs:k,flatMenus:d,favorites:c,updateTab:_,active:i,currentTab:g}),(I,X)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-mask",{"is-disabled":e.disabled}]),fit:""},{default:Vue.withCtx(()=>[e.disabled?(Vue.openBlock(),Vue.createBlock(ut,{key:1,createView:Vue.unref(z),exclude:Vue.unref(x)},{default:Vue.withCtx(()=>[I.$slots.default?Vue.renderSlot(I.$slots,"default",{key:0}):Vue.createCommentVNode("",!0)]),_:3},8,["createView","exclude"])):(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:0},[Vue.createVNode(ho,{collapsed:Vue.unref(l)},{brand:Vue.withCtx(()=>[Vue.createVNode(bo,{logo:e.logo,title:e.title,url:Vue.unref(u).url,collapsed:Vue.unref(l)},null,8,["logo","title","url","collapsed"])]),default:Vue.withCtx(()=>[Vue.createVNode(yo,{collasped:Vue.unref(l),"onUpdate:collasped":X[0]||(X[0]=Z=>Vue.isRef(l)?l.value=Z:null),favorite:Vue.unref(r),"onUpdate:favorite":X[1]||(X[1]=Z=>Vue.isRef(r)?r.value=Z:null),keyword:Vue.unref(a),"onUpdate:keyword":X[2]||(X[2]=Z=>Vue.isRef(a)?a.value=Z:null)},null,8,["collasped","favorite","keyword"]),Vue.createVNode(wo,{collapse:Vue.unref(l),keyword:Vue.unref(a),favorite:Vue.unref(r),favorites:Vue.unref(c),flatMenus:Vue.unref(d),menus:Vue.unref(s),active:Vue.unref(i),onSelect:Vue.unref(V)},null,8,["collapse","keyword","favorite","favorites","flatMenus","menus","active","onSelect"])]),_:1},8,["collapsed"]),Vue.createVNode(Vue.unref(P),{class:"x-mask__main",grow:"",shrink:"",flex:"",direction:"column"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(P),{class:"x-mask-topbar",justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Eo,{ref_key:"tabRef",ref:m,favorites:Vue.unref(c),tabs:Vue.unref(y),home:Vue.unref(u),value:Vue.unref(g)?.id,onClick:Vue.unref(C),onToggleFavorite:Vue.unref(p),onRemove:le,onDialog:Vue.unref(M),onRefresh:Vue.unref(A)},null,8,["favorites","tabs","home","value","onClick","onToggleFavorite","onDialog","onRefresh"]),Vue.createVNode(zo,{tabs:Vue.unref(b),actions:e.actions,theme:e.theme,onCloseOtherTabs:Be,onCloseAllTabs:re,onCloseTab:le,onClickTab:Vue.unref(N),onActionClick:Se,onActionCommand:fn},{default:Vue.withCtx(()=>[Vue.createVNode(To,{avatar:e.avatar},Vue.createSlots({_:2},[I.$slots.user?{name:"default",fn:Vue.withCtx(()=>[Vue.renderSlot(I.$slots,"user")]),key:"0"}:void 0]),1032,["avatar"])]),_:3},8,["tabs","actions","theme","onClickTab"])]),_:3}),Vue.createVNode(ut,{createView:Vue.unref(z),exclude:Vue.unref(x)},{default:Vue.withCtx(()=>[I.$slots.default?Vue.renderSlot(I.$slots,"default",{key:0}):Vue.createCommentVNode("",!0)]),_:3},8,["createView","exclude"])]),_:3})],64))]),_:3},8,["class"]))}});function jo(n={}){const t=VueRouter.useRoute(),e=Vue.inject(ye,null),o=Vue.inject(ve,null);if(e){const l=typeof n=="function"?n:async()=>n;e[t.fullPath]=l}return{tab:Vue.computed(()=>o?o.tabs.value.find(l=>l.url===t.fullPath):null),mask:o}}const Ao=Vue.defineComponent({__name:"SelectEditor",props:{options:{default:()=>[]}},setup(n){const t=n;return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSelect),Vue.normalizeProps(Vue.guardReactiveProps(e.$attrs)),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.options,(u,l)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElOption),Vue.mergeProps({key:`item_${l}_${u.value}`},u),Vue.createSlots({_:2},[e.$slots.option?{name:"default",fn:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"option",{option:u})]),key:"0"}:void 0]),1040))),128))]),_:3},16))}}),Oo=Vue.defineComponent({__name:"CheckboxEditor",props:{options:{default:()=>[]},button:{type:Boolean,default:!1}},setup(n){const t=n,e=Vue.computed(()=>Vue.markRaw(t.button?ElementPlus.ElCheckboxButton:ElementPlus.ElCheckbox));return(o,u)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElCheckboxGroup),Vue.normalizeProps(Vue.guardReactiveProps(o.$attrs)),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.options,(l,a)=>(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(e.value),{key:`item_${a}_${l.value}`,label:l.value},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(l.label),1)]),_:2},1032,["label"]))),128))]),_:1},16))}}),Fo=Vue.defineComponent({__name:"RadioEditor",props:{options:{default:()=>[]},button:{type:Boolean,default:!1}},setup(n){const t=n,e=Vue.computed(()=>Vue.markRaw(t.button?ElementPlus.ElRadioButton:ElementPlus.ElRadio));return(o,u)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElRadioGroup),Vue.normalizeProps(Vue.guardReactiveProps(o.$attrs)),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.options,(l,a)=>(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(e.value),{key:`item_${a}_${l.value}`,label:l.value},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(l.label),1)]),_:2},1032,["label"]))),128))]),_:1},16))}}),ke={none:{component:"div",props:{class:"x-field-none"}},text:{component:ElementPlus.ElInput,props:{clearable:!0},defaultValue:""},textarea:{component:ElementPlus.ElInput,props:{type:"textarea",rows:2},defaultValue:""},select:{component:Ao,props:{clearable:!0}},checkbox:{component:Oo,props:{},defaultValue:[]},radio:{component:Fo,props:{}},number:{component:ElementPlus.ElInputNumber,props:{}},date:{component:ElementPlus.ElDatePicker,props:{}},time:{component:ElementPlus.ElTimePicker,props:{}},datetime:{component:ElementPlus.ElDatePicker,props:{type:"datetime"}},switch:{component:ElementPlus.ElSwitch,props:{}},rate:{component:ElementPlus.ElRate,props:{}},slider:{component:ElementPlus.ElSlider,props:{}},cascader:{component:ElementPlus.ElCascader,props:{}}},at={name:{type:String},label:{type:String},editor:{type:[String,Object],default:"text"},props:{type:Object},modelValue:{type:[String,Number,Boolean,Object,Array],default(n){return ke[n.editor]?.defaultValue}},size:{type:String},width:{type:[String,Number]},tooltipMessage:{type:[Boolean,Object],default:!0},tooltipPosition:{type:[String,Number],default:"outer"},placeholder:{type:String},disabled:{type:Boolean},readonly:{type:Boolean},options:{type:[Array,Function]},visible:{type:[Boolean,Object,Function],default:!0},cascader:{type:[String,Array]},error:{type:String},tip:{type:String},inline:{type:Boolean}};async function Lo(n,t){const e=n.options;return e?typeof e=="function"?await e(t)||[]:e:[]}function Uo(n,t,e,o,u){const l=Vue.ref([]),a=Vue.computed(()=>!o||!u?{}:VtjUtils.toArray(n.cascader).reduce((c,d)=>(c[d]=VtjUtils.get(u,d),c),{}));return Vue.watch(a,async s=>{if(e.value){l.value=await Lo(n,s);const c=o?.exposed?.reset;c&&n.name&&c(n.name)}},{immediate:!0}),{editor:Vue.computed(()=>{const{editor:s="text",placeholder:c,label:d="...",disabled:i,readonly:V}=n,p={...n.props,placeholder:c||(c===null?void 0:`请输入${d}`),disabled:i,readonly:V,options:l.value,onFocus:()=>t("focus"),onBlur:()=>t("blur"),onChange:y=>t("change",y)},m=typeof s=="string"?ke[s]:{component:s,props:{}};return VtjUtils.merge({},m,{props:p})})}}const Xo={key:1,class:"el-form-item__error"},Ho={key:0,class:"x-field__tip"},be=Vue.defineComponent({name:"XField",__name:"Field",props:at,emits:["update:modelValue","change","focus","blur"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.inject(we,null),a=Vue.inject(ElementPlus.formContextKey,null),r=Vue.inject(Ce,null),s=Vue.computed(()=>!l?.proxy||!r?o.visible:typeof o.visible=="function"?o.visible(r):VtjUtils.isObject(o.visible)?Object.entries(o.visible).every(([E,b])=>VtjUtils.get(r,E)===b):o.visible),c=()=>l?.proxy&&r&&o.name?VtjUtils.get(r,o.name)??o.modelValue:o.modelValue,d=Vue.ref(c()),{editor:i}=Uo(o,u,s,l,r),V=Vue.ref(),p=Vue.ref(),m=Vue.computed(()=>o.size||a?.size||"default"),y=Vue.computed(()=>Object.assign({},l?.props.tooltipMessage||{},typeof o.tooltipMessage=="boolean"?{}:o.tooltipMessage)),g=(f="")=>o.error?o.error:f.includes("is required")?`${o.label||o.name}是必填项!`:f,C=Vue.computed(()=>{const f=l?.props.tooltipMessage??o.tooltipMessage;return{[`is-tooltip-${o.tooltipPosition}`]:!!f&&!!o.tooltipPosition}}),B=Vue.computed(()=>{const f=l?.proxy;return{width:o.width?j(o.width):f&&f.inline&&f.inlineColumns?`${100/f.inlineColumns}%`:null}}),k=Vue.computed(()=>({right:typeof o.tooltipPosition=="number"?`${o.tooltipPosition}px`:void 0})),_=Vue.computed(()=>({...i.value.props,modelValue:d.value,"onUpdate:modelValue":f=>{d.value=f}}));return Vue.watch(d,(f,E)=>{s.value&&!VtjUtils.isEqual(f,E)&&(u("update:modelValue",f),l?.proxy&&r&&o.name&&VtjUtils.set(r,o.name,f))}),Vue.watch(()=>!l?.proxy||!o.name||!r?o.modelValue:VtjUtils.get(r,o.name)??o.modelValue,f=>{s.value&&(d.value=f)},{immediate:!0}),Vue.watch(s,f=>{l?.proxy&&r&&o.name&&(f?(d.value=c(),VtjUtils.set(r,o.name,d.value)):(d.value=void 0,VtjUtils.set(r,o.name,void 0)))},{immediate:!0}),t({fieldValue:d,itemRef:V,editorRef:p,focus:()=>{p.value?.focus&&p.value.focus()},blur:()=>{p.value?.foucs&&p.value.blur()}}),(f,E)=>s.value?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElFormItem),Vue.mergeProps({key:0,class:["x-field",C.value],ref_key:"itemRef",ref:V,prop:o.name,label:f.label,size:m.value,style:B.value},f.$attrs),Vue.createSlots({error:Vue.withCtx(({error:b})=>[Vue.renderSlot(f.$slots,"error",{error:b},()=>[Vue.unref(l)?.props.tooltipMessage??o.tooltipMessage?(Vue.openBlock(),Vue.createElementBlock("div",{key:0,class:"x-field__info",style:Vue.normalizeStyle(k.value)},[Vue.createVNode(Vue.unref(ElementPlus.ElTooltip),Vue.mergeProps({content:g(b)},y.value),{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(L),{class:"x-field__trigger",icon:Vue.unref(VtjIcons.WarningFilled),size:m.value},null,8,["icon","size"])]),_:2},1040,["content"])],4)):(Vue.openBlock(),Vue.createElementBlock("div",Xo,Vue.toDisplayString(g(b)),1))])]),default:Vue.withCtx(()=>[Vue.createElementVNode("div",{class:Vue.normalizeClass(["x-field__editor_wrap",{"is-inline":o.inline}])},[Vue.renderSlot(f.$slots,"editor",{editor:_.value},()=>[Vue.unref(i).component?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(i).component),Vue.mergeProps({key:0,class:"x-field__editor",ref_key:"editorRef",ref:p,modelValue:d.value,"onUpdate:modelValue":E[0]||(E[0]=b=>d.value=b)},Vue.unref(i).props),Vue.createSlots({_:2},[f.$slots.option?{name:"option",fn:Vue.withCtx(({option:b})=>[Vue.renderSlot(f.$slots,"option",{option:b})]),key:"0"}:void 0]),1040,["modelValue"])):Vue.createCommentVNode("",!0)]),o.tip||f.$slots.tip?(Vue.openBlock(),Vue.createElementBlock("div",Ho,[Vue.renderSlot(f.$slots,"tip",{},()=>[Vue.createTextVNode(Vue.toDisplayString(o.tip),1)])])):Vue.createCommentVNode("",!0)],2),Vue.renderSlot(f.$slots,"default")]),_:2},[f.$slots.label?{name:"label",fn:Vue.withCtx(()=>[Vue.renderSlot(f.$slots,"label")]),key:"0"}:void 0]),1040,["prop","label","size","class","style"])):Vue.createCommentVNode("",!0)}}),st={model:{type:Object,default(){return Object.create(null)}},inline:{type:Boolean},inlineColumns:{type:Number},footer:{type:Boolean,default:!0},submitText:{type:String,default:"提交"},resetText:{type:String,default:"重置"},submitMethod:{type:Function},tooltipMessage:{type:[Object,Boolean],default:void 0}},we=Symbol("formInstanceKey"),Ce=Symbol("formModelKey"),_e=Vue.defineComponent({name:"XForm",__name:"Form",props:st,emits:["change","submit","reset"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.getCurrentInstance(),a=Vue.ref(),r=Vue.reactive(o.model||{}),s=Vue.ref(!1);Vue.provide(we,l),Vue.provide(Ce,r),Vue.watch(r,()=>{u("change",Vue.toRaw(r))}),Vue.watch(()=>o.model,i=>{Object.assign(r,i)},{deep:!0});const c=async()=>{await a.value.validate().catch(()=>!1)&&(u("submit",Vue.toRaw(r)),o.submitMethod&&(s.value=!0,await o.submitMethod(Vue.toRaw(r)),s.value=!1))},d=i=>{a.value.resetFields(i),u("reset")};return t({formRef:a,model:r,submit:c,reset:d}),(i,V)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElForm),Vue.mergeProps({ref_key:"formRef",ref:a,class:"x-form",inline:o.inline,model:r,onKeyup:Vue.withKeys(c,["enter"]),onSubmit:V[1]||(V[1]=Vue.withModifiers(()=>{},["stop","prevent"]))},i.$attrs),{default:Vue.withCtx(()=>[Vue.renderSlot(i.$slots,"default"),o.footer?(Vue.openBlock(),Vue.createBlock(Vue.unref(be),{key:0,editor:"none",class:"x-form__footer",label:" "},{editor:Vue.withCtx(()=>[Vue.renderSlot(i.$slots,"footer",{},()=>[o.submitText?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:0,loading:s.value,type:"primary",onClick:c},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(o.submitText),1)]),_:1},8,["loading"])):Vue.createCommentVNode("",!0),o.resetText?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:1,type:"default",onClick:V[0]||(V[0]=()=>d())},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(o.resetText),1)]),_:1})):Vue.createCommentVNode("",!0),Vue.renderSlot(i.$slots,"action")])]),_:3})):Vue.createCommentVNode("",!0)]),_:3},16,["inline","model"]))}}),it={modelValue:{type:Boolean,default:!0},size:{type:String},formProps:{type:Object},submit:{type:[Boolean,String],default:"确定"},cancel:{type:[Boolean,String],default:"取消"},model:{type:Object,default(){return Object.create(null)}},rules:{type:Object},submitMethod:{type:Function}},ct=Vue.defineComponent({name:"XDialogForm",__name:"DialogForm",props:it,emits:["update:modelValue","submit","close"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.ref(),a=Vue.ref(),r=Vue.computed(()=>a.value?.$vtjEl),s=()=>{l.value?.submit()},c=()=>{u("update:modelValue",!1),u("close")},d=async p=>{u("submit",p),o.submitMethod?await o.submitMethod(p)&&c():c()},i=Vue.computed(()=>o.formProps?.disabled?!1:o.submit),V=Vue.computed(()=>o.formProps?.disabled?!1:o.cancel);return t({$vtjEl:r,formRef:l,dialogRef:a}),(p,m)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(te),Vue.mergeProps({ref_key:"dialogRef",ref:a,class:"x-dialog-form","model-value":o.modelValue,submit:i.value,cancel:V.value,size:o.size,onSubmit:s,onClose:c,minimizable:!1,maximizable:!1},p.$attrs),Vue.createSlots({default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(_e),Vue.mergeProps({ref_key:"formRef",ref:l,class:"x-dialog-form__form",footer:!1,"label-width":"80px",size:o.size,model:o.model,rules:o.rules,"submit-method":d},o.formProps),{default:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"default")]),_:3},16,["size","model","rules"])]),_:2},[p.$slots.extra?{name:"extra",fn:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"extra")]),key:"0"}:void 0,p.$slots.handle?{name:"handle",fn:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"handle")]),key:"1"}:void 0,p.$slots.footer?{name:"footer",fn:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"footer")]),key:"2"}:void 0]),1040,["model-value","submit","cancel","size"]))}}),dt={items:{type:Array,default(){return[]}},border:{type:Boolean}},Vt=Vue.defineComponent({name:"XTabs",__name:"Tabs",props:dt,setup(n){const t=n,e=u=>{const{label:l,name:a,value:r,disabled:s,closable:c,lazy:d}=u;return{label:l,name:r??a,disabled:s,closable:c,lazy:d}},o=Vue.computed(()=>({"is-no-border":!t.border}));return(u,l)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabs),Vue.mergeProps({class:["x-tabs",o.value]},u.$attrs),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.items,a=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabPane),Vue.mergeProps({key:a.value??a.name},e(a)),{label:Vue.withCtx(()=>[Vue.renderSlot(u.$slots,"label",Vue.normalizeProps(Vue.guardReactiveProps(a)),()=>[a.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(a.icon)),{key:0,class:"x-tabs__icon"})):Vue.createCommentVNode("",!0),Vue.createTextVNode(" "+Vue.toDisplayString(a.label),1)])]),default:Vue.withCtx(()=>[Vue.renderSlot(u.$slots,"default",Vue.normalizeProps(Vue.guardReactiveProps(a)),()=>[a.component?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(a.component),Vue.normalizeProps(Vue.mergeProps({key:0},a.props)),null,16)):Vue.createCommentVNode("",!0)])]),_:2},1040))),128))]),_:3},16,["class"]))}}),pt={direction:{type:String,default:"column"},imageSrc:{type:String},imageWidth:{type:[Number,String]},imageHeight:{type:[Number,String]},icon:{type:[String,Object]},title:{type:String},description:{type:String},actions:{type:Array},actionBarProps:{type:Object},split:{type:Boolean},onImageClick:{type:Function},onTitleClick:{type:Function}},Wo={class:"x-data-item__title"},Ko={key:1,class:"x-data-item__section x-data-item__desc"},Jo={key:2,class:"x-data-item__section x-data-item__extra"},Yo={key:3,class:"x-data-item__section x-data-item__actions"},ft=Vue.defineComponent({name:"XDataItem",__name:"DataItem",props:pt,emits:["imageClick","titleClick","actionClick","actionCommand"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>{const{imageWidth:i,imageHeight:V}=e;return{width:i?j(i):void 0,height:V?j(V):void 0}}),l=Vue.computed(()=>({[`is-image-${e.direction}`]:!!e.direction,"is-split":!!e.split})),a=Vue.computed(()=>({size:"small",mode:"text",justify:"flex-end",type:"info",items:e.actions,...e.actionBarProps})),r=()=>o("imageClick"),s=()=>o("titleClick"),c=i=>o("actionClick",i),d=(i,V)=>o("actionCommand",i,V);return(i,V)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-data-item",l.value]),direction:e.direction},{default:Vue.withCtx(()=>[e.imageSrc||i.$slots.image?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-data-item__img",autoPointer:!0,onClick:e.onImageClick?r:void 0},{default:Vue.withCtx(()=>[Vue.renderSlot(i.$slots,"image",{},()=>[e.imageSrc?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElImage),{key:0,style:Vue.normalizeStyle(u.value),src:e.imageSrc},null,8,["style","src"])):Vue.createCommentVNode("",!0)])]),_:3},8,["onClick"])):Vue.createCommentVNode("",!0),Vue.createVNode(Vue.unref(P),{class:"x-data-item__content",direction:"column",grow:"",shrink:""},{default:Vue.withCtx(()=>[e.title||i.$slots.title?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-data-item__section x-data-item__wrapper",align:"center",autoPointer:!0,onClick:e.onTitleClick?s:void 0},{default:Vue.withCtx(()=>[e.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(e.icon)),{key:0,class:"x-data-item__icon"})):Vue.createCommentVNode("",!0),Vue.createElementVNode("span",Wo,[Vue.renderSlot(i.$slots,"title",{},()=>[Vue.createTextVNode(Vue.toDisplayString(e.title),1)])])]),_:3},8,["onClick"])):Vue.createCommentVNode("",!0),e.description||i.$slots.description?(Vue.openBlock(),Vue.createElementBlock("div",Ko,[Vue.renderSlot(i.$slots,"description",{},()=>[Vue.createTextVNode(Vue.toDisplayString(e.description),1)])])):Vue.createCommentVNode("",!0),i.$slots.default?(Vue.openBlock(),Vue.createElementBlock("div",Jo,[Vue.renderSlot(i.$slots,"default")])):Vue.createCommentVNode("",!0),e.actions||e.actionBarProps||i.$slots.actions?(Vue.openBlock(),Vue.createElementBlock("div",Yo,[Vue.renderSlot(i.$slots,"actions",{},()=>[Vue.createVNode(Vue.unref(Q),Vue.mergeProps(a.value,{onClick:c,onCommand:d}),null,16)])])):Vue.createCommentVNode("",!0)]),_:3})]),_:3},8,["direction","class"]))}}),mt={option:{type:Object},width:{type:[Number,String],default:"100%"},height:{type:[Number,String],default:"400px"}};function Qo(){return Promise.resolve(echarts)}function Zo(n,t){const e=Vue.ref(),o=Vue.shallowRef();return Vue.onMounted(async()=>{o.value=await Qo();const u=Vue.unref(n);u&&(e.value||(e.value=Vue.markRaw(o.value.init(u))),e.value&&e.value.setOption(t.option||{}))}),Vue.onUnmounted(()=>{e.value&&e.value.dispose()}),Vue.watch(()=>t.option,u=>{e.value&&e.value.setOption(u||{})},{deep:!0}),Xe(n,VtjUtils.debounce(()=>{e.value&&e.value.resize()},150)),{echartsInstance:e,echarts:o}}const gt=Vue.defineComponent({name:"XChart",__name:"Chart",props:mt,setup(n,{expose:t}){const e=n,o=Vue.ref(),{echartsInstance:u,echarts:l}=Zo(o,e),a=Vue.computed(()=>({width:j(e.width),height:j(e.height)}));return t({chartRef:o,echartsInstance:u,echarts:l}),(r,s)=>(Vue.openBlock(),Vue.createElementBlock("div",{ref_key:"chartRef",ref:o,style:Vue.normalizeStyle(a.value)},null,4))}}),ht={data:{type:[Object,Function],default(){return[]}},itemHeight:{type:[Number,Function]},width:{type:[String,Number],default:"100%"},height:{type:[String,Number],default:"100%"},pager:{type:[Boolean,Object]},page:{type:Number,default:1},pageSize:{type:Number,default:10},dataKey:{type:String},infiniteScroll:{type:[Boolean,Object]}},Go={key:0,class:"x-list__loading"},qo={key:1,class:"x-list__nomore"},en={key:0,class:"x-list__loading"},tn={key:1,class:"x-list__nomore"},on={key:1,class:"x-list__pager"},yt=Vue.defineComponent({name:"XList",__name:"List",props:ht,emits:["load"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.reactive({page:o.page,pageSize:o.pageSize});Vue.watchEffect(()=>{const{page:h,pageSize:S}=o;Object.assign(l,{page:h,pageSize:S})});const{data:a,loading:r}=Te(o.data,{list:[],total:0},l),s=Vue.computed(()=>Math.ceil((a.value.total||0)/l.pageSize)),c=Vue.ref(!1),d=Vue.ref(),i=Vue.computed(()=>({width:j(o.width),height:j(o.height)})),V=Vue.computed(()=>({"is-virtual":!!o.itemHeight})),p=Vue.computed(()=>{const h={};for(let[S,f]of Object.entries(ae(o.infiniteScroll)))h[`infinite-scroll-${S}`]=f;return(r.value||c.value)&&(h["infinite-scroll-disabled"]=!0),h}),m=Vue.computed(()=>ae(o.pager,{})),{list:y,containerProps:g,wrapperProps:C,scrollTo:B}=uo(Vue.computed(()=>a.value.list),{itemHeight:o.itemHeight||0}),k=()=>{!o.infiniteScroll||c.value||(l.page<s.value?(++l.page,u("load",l)):c.value=!0)},_=h=>o.dataKey?h[o.dataKey]:void 0;return t({list:y,scrollTo:B,wrapperRef:d,loading:r,state:l,pageCount:s,nomore:c,data:a,getKey:_}),(h,S)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:Vue.normalizeClass(["x-list",V.value]),style:Vue.normalizeStyle(i.value)},[!Vue.unref(a).total&&!Vue.unref(r)?Vue.renderSlot(h.$slots,"empty",{key:0},()=>[Vue.createVNode(Vue.unref(ElementPlus.ElEmpty))]):Vue.createCommentVNode("",!0),Vue.createElementVNode("div",Vue.mergeProps({class:"x-list__content"},Vue.unref(g)),[o.itemHeight?Vue.withDirectives((Vue.openBlock(),Vue.createElementBlock("div",Vue.mergeProps({key:0,class:"x-list__wrapper",ref_key:"wrapperRef",ref:d},{...Vue.unref(C),...p.value}),[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(Vue.unref(y),(f,E)=>Vue.renderSlot(h.$slots,"default",Vue.normalizeProps(Vue.mergeProps({key:_(f.data)},{item:f.data,index:E})),()=>[Vue.createElementVNode("div",null,Vue.toDisplayString(f),1)])),128)),Vue.unref(r)?(Vue.openBlock(),Vue.createElementBlock("div",Go,[Vue.renderSlot(h.$slots,"loading",{},()=>[Vue.createTextVNode(" 正在加载数据... ")])])):Vue.createCommentVNode("",!0),c.value?(Vue.openBlock(),Vue.createElementBlock("div",qo,[Vue.renderSlot(h.$slots,"nomore",{},()=>[Vue.createTextVNode(" 没有更多数据 ")])])):Vue.createCommentVNode("",!0)],16)),[[Vue.unref(ElementPlus.ElInfiniteScroll),k]]):Vue.withDirectives((Vue.openBlock(),Vue.createElementBlock("div",Vue.mergeProps({key:1,class:"x-list__wrapper"},p.value),[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(Vue.unref(a).list,(f,E)=>Vue.renderSlot(h.$slots,"default",Vue.normalizeProps(Vue.mergeProps({key:_(f)},{item:f,index:E})),()=>[Vue.createElementVNode("div",null,Vue.toDisplayString(f),1)])),128)),Vue.unref(r)?(Vue.openBlock(),Vue.createElementBlock("div",en,[Vue.renderSlot(h.$slots,"loading",{},()=>[Vue.createTextVNode(" 正在加载数据... ")])])):Vue.createCommentVNode("",!0),c.value?(Vue.openBlock(),Vue.createElementBlock("div",tn,[Vue.renderSlot(h.$slots,"nomore",{},()=>[Vue.createTextVNode(" 没有更多数据 ")])])):Vue.createCommentVNode("",!0)],16)),[[Vue.unref(ElementPlus.ElInfiniteScroll),k]])],16),o.pager?(Vue.openBlock(),Vue.createElementBlock("div",on,[Vue.createVNode(Vue.unref(ElementPlus.ElPagination),Vue.mergeProps({small:"",background:"",layout:"prev, pager, next",total:Vue.unref(a).total,"default-page-size":o.pageSize,"default-current-page":o.page,"current-page":l.page,"onUpdate:currentPage":S[0]||(S[0]=f=>l.page=f),"page-size":l.pageSize,"onUpdate:pageSize":S[1]||(S[1]=f=>l.pageSize=f)},m.value),null,16,["total","default-page-size","default-current-page","current-page","page-size"])])):Vue.createCommentVNode("",!0)],6))}}),vt={name:{type:String,default:"VTJ.PRO"},tagline:{type:String,default:"基于 Vue3 + TypeScript 快速打造高生产力的低代码研发平台"},actionText:{type:String,default:"开始设计"},actionLink:{type:String,default:"/@vtj/pro/"}},nn={class:"x-startup"},un={class:"x-startup__wrapper"},ln={class:"x-startup__name"},rn={class:"clip"},an={class:"x-startup__tagline"},sn={class:"x-startup__actions"},kt=Vue.defineComponent({__name:"Startup",props:vt,setup(n){const t=n,e=()=>{let u=(window.__VTJ_LINK__||{}).href||window.location.pathname+"@vtj/pro/#/";location.href=u};return(o,u)=>(Vue.openBlock(),Vue.createElementBlock("div",nn,[Vue.createElementVNode("div",un,[Vue.createElementVNode("div",ln,[Vue.createElementVNode("span",rn,Vue.toDisplayString(t.name),1)]),Vue.createElementVNode("div",an,Vue.toDisplayString(t.tagline),1),Vue.createElementVNode("div",sn,[Vue.createVNode(Vue.unref(ElementPlus.ElButton),{type:"primary",size:"large",round:"",icon:Vue.unref(VtjIcons.EditPen),onClick:e},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(t.actionText),1)]),_:1},8,["icon"])])])]))}}),bt={stringProp:{type:String},booleanProp:{type:Boolean},numberProp:{type:Number},selectProp:{type:String},objectProp:{type:Object},arrayProp:{type:Array},iconProp:{type:String},colorProp:{type:String},modelValue:{type:String},syncProp:{type:String}},cn={class:"x-test__slot"},dn={class:"x-test__slot"},wt=Vue.defineComponent({name:"XTest",__name:"Test",props:bt,emits:["click","submit","change","update:modelValue","update:syncProp"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.computed(()=>Object.entries(o)),a=Vue.computed({get(){return o.modelValue},set(p){u("update:modelValue",p)}}),r=Vue.computed({get(){return o.syncProp},set(p){u("update:syncProp",p)}}),s=Vue.ref("default inner data"),c=()=>{ElementPlus.ElMessage.info({message:"触发click事件"}),u("click",o)},d=()=>{ElementPlus.ElMessage.info({message:"触发submit事件"}),u("submit",o)},i=p=>{s.value=p,u("change",s.value)},V=()=>{i("user click change:"+Date.now())};return t({click:c,submit:d,data:s,change:i}),(p,m)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(K),{class:"x-test",header:"VTJ 低代码测试组件",border:""},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("内部数据")]),_:1}),Vue.createVNode(Vue.unref(P),null,{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(s.value),1)]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("属性")]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDescriptions),{column:3,border:""},{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(l.value,([y,g])=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDescriptionsItem),{label:y},{default:Vue.withCtx(()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(JSON.stringify(g,null,2)),1)]),_:2},1032,["label"]))),256))]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("插槽")]),_:1}),Vue.createVNode(Vue.unref(P),{justify:"space-around",flex:"",gap:""},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(K),{header:"default",grow:"",card:""},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",cn,[Vue.renderSlot(p.$slots,"default",{props:o,data:s.value},()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(JSON.stringify({props:o,data:s.value},null,2)),1)])])]),_:3}),Vue.createVNode(Vue.unref(K),{header:"extra",grow:"",card:""},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",dn,[Vue.renderSlot(p.$slots,"extra",{props:o,data:s.value},()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(JSON.stringify({props:o,data:s.value},null,2)),1)])])]),_:3})]),_:3}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("双向绑定")]),_:1}),Vue.createVNode(Vue.unref(P),null,{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElDescriptions),{column:2,border:""},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElDescriptionsItem),{label:"modelValue"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElInput),{modelValue:a.value,"onUpdate:modelValue":m[0]||(m[0]=y=>a.value=y)},null,8,["modelValue"])]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDescriptionsItem),{label:"syncProp"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElInput),{modelValue:r.value,"onUpdate:modelValue":m[1]||(m[1]=y=>r.value=y)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("事件和方法")]),_:1}),Vue.createVNode(Vue.unref(P),null,{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElButton),{onClick:c},{default:Vue.withCtx(()=>[Vue.createTextVNode("click")]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElButton),{onClick:d},{default:Vue.withCtx(()=>[Vue.createTextVNode("submit")]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElButton),{onClick:V},{default:Vue.withCtx(()=>[Vue.createTextVNode("change")]),_:1})]),_:1})]),_:3}))}}),Vn=[L,H,O,Q,P,ce,K,te,rt,be,_e,ct,Vt,ft,gt,yt,kt,wt],{install:pn}=Pe(Vn);return w.Draggable=fe,w.INSTALLED_KEY=se,w.MASK_KEY=ve,w.Resizable=ge,w.TAB_CREATORS_KEY=ye,w.TAB_ITEM_WIDTH=ot,w.VTJ_UI_VERSION=Ct,w.XAction=O,w.XActionBar=Q,w.XChart=gt,w.XContainer=P,w.XDataItem=ft,w.XDialog=te,w.XDialogForm=ct,w.XField=be,w.XForm=_e,w.XHeader=ce,w.XIcon=L,w.XList=yt,w.XMask=rt,w.XMenu=H,w.XPanel=K,w.XStartup=kt,w.XTabs=Vt,w.XTest=wt,w.actionBarProps=De,w.actionProps=ie,w.builtinFieldEditors=ke,w.chartProps=mt,w.containerProps=Ie,w.createDialog=oe,w.dataItemProps=pt,w.defineTab=jo,w.dialogFormProps=it,w.dialogProps=tt,w.fieldProps=at,w.formInstanceKey=we,w.formModelKey=Ce,w.formProps=st,w.getSizeValue=j,w.headerProps=Me,w.iconProps=Ee,w.iconSizeMap=xe,w.install=pn,w.listProps=ht,w.makeInstaller=Pe,w.maskProps=nt,w.panelProps=Re,w.parseSize=Y,w.startupProps=vt,w.tabsProps=dt,w.testProps=bt,w.toObjectProps=ae,w.useDisabled=G,w.useIcon=W,w.useIconProps=ze,w.useLoader=Te,w.vDraggable=et,w.vResizable=he,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"}),w}({},vue);
|
|
7
|
+
*/const Ct="0.7.13",xe={default:14,small:12,large:18},Ee={icon:{type:[String,Object]},color:{type:String},size:{type:[Number,String],default:"inherit"},src:{type:String},background:{type:String},padding:{type:Number},radius:{type:Number}};function j(n){return typeof n=="string"?n:`${n}px`}function Y(n=0,t){if(typeof n=="number")return n;if(/(%|vh|vw)$/i.test(n)){const o=Number.parseInt(n);return Math.floor(t*o/100)}return Number.parseInt(n)}function ae(n,t={}){const e={...t};return typeof n=="boolean"?e:Object.assign(e,n||{})}const se=Symbol("INSTALLED_KEY"),Pe=(n=[])=>({install:e=>{e[se]||(e[se]=!0,n.forEach(o=>{o.name&&e.component(o.name,o)}))}}),_t=["src"],L=Vue.defineComponent({name:"XIcon",__name:"Icon",props:Ee,setup(n){const t=n,e=Vue.useAttrs(),o=Vue.getCurrentInstance(),u=Vue.computed(()=>{if(!t.icon)return null;const s=o?.appContext.app;return typeof t.icon=="object"?Vue.markRaw(t.icon):s?.component(t.icon)||t.icon}),l=Vue.computed(()=>{const s={"is-pointer":!!e.onClick};return!u.value&&t.icon&&(s[t.icon]=!0),s}),a=Vue.computed(()=>({"background-color":t.background,"border-radius":t.radius?j(t.radius):void 0,padding:t.padding?j(t.padding):void 0})),r=Vue.computed(()=>typeof t.size=="number"?t.size:xe[t.size]??void 0);return(s,c)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElIcon),{class:Vue.normalizeClass(["x-icon",l.value]),color:t.color,size:r.value,style:Vue.normalizeStyle(a.value)},{default:Vue.withCtx(()=>[Vue.renderSlot(s.$slots,"default",{},()=>[u.value?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(u.value),{key:0})):Vue.createCommentVNode("",!0),t.src?(Vue.openBlock(),Vue.createElementBlock("img",{key:1,src:t.src},null,8,_t)):Vue.createCommentVNode("",!0)])]),_:3},8,["class","color","size","style"]))}}),Bt={class:"x-menu__wrapper"},St={key:1,class:"x-menu__title"},xt=Vue.createElementVNode("i",null,null,-1),Et={key:0,class:"x-menu__title"},Pt=Vue.createElementVNode("i",null,null,-1),Ne=Vue.defineComponent({inheritAttrs:!1,name:"XMenuItem",__name:"MenuItem",props:{item:{},subMenu:{},defaultIcon:{}},setup(n){const t=n,e=Vue.getCurrentInstance(),o=a=>{if(a)return typeof a=="string"&&(e?.appContext.app?.component(a)||t.defaultIcon)||a},u=a=>typeof a=="object"?a:{value:a},l=(a=[])=>a.filter(r=>!r.hidden);return(a,r)=>t.item.children?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSubMenu),Vue.mergeProps({key:0,disabled:t.item.disabled},t.subMenu,{index:String(t.item.id)}),{title:Vue.withCtx(()=>[Vue.createElementVNode("div",Bt,[t.item.icon?(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:0,icon:o(t.item.icon)},null,8,["icon"])):Vue.createCommentVNode("",!0),t.item.title?(Vue.openBlock(),Vue.createElementBlock("span",St,Vue.toDisplayString(t.item.title),1)):Vue.createCommentVNode("",!0),t.item.badge?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElBadge),Vue.mergeProps({key:2,class:"x-menu__badge"},u(t.item.badge)),{default:Vue.withCtx(()=>[xt]),_:1},16)):Vue.createCommentVNode("",!0)])]),default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(l(t.item.children),s=>(Vue.openBlock(),Vue.createBlock(Vue.unref(Ne),{key:s.id,item:s,subMenu:t.subMenu,defaultIcon:t.defaultIcon},null,8,["item","subMenu","defaultIcon"]))),128))]),_:1},16,["disabled","index"])):(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElMenuItem),{key:1,index:String(t.item.id),disabled:t.item.disabled},{title:Vue.withCtx(()=>[t.item.title?(Vue.openBlock(),Vue.createElementBlock("span",Et,Vue.toDisplayString(t.item.title),1)):Vue.createCommentVNode("",!0),t.item.badge?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElBadge),Vue.mergeProps({key:1,class:"x-menu__badge"},u(t.item.badge)),{default:Vue.withCtx(()=>[Pt]),_:1},16)):Vue.createCommentVNode("",!0)]),default:Vue.withCtx(()=>[t.item.icon?(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:0,icon:o(t.item.icon)},null,8,["icon"])):Vue.createCommentVNode("",!0)]),_:1},8,["index","disabled"]))}}),H=Vue.defineComponent({inheritAttrs:!1,name:"XMenu",__name:"Menu",props:{data:{default:()=>[]},subMenu:{},defaultIcon:{}},emits:["select"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>e.data.filter(r=>!r.hidden)),l=(r,s)=>{const c=(d,i=[])=>{for(const V of i){if(V.id.toString()===d.toString())return V;if(V.children?.length){const p=c(d,V.children);if(p)return p}}};return c(s,r)},a=r=>{const s=l(u.value,r);s&&o("select",s)};return(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElMenu),Vue.mergeProps({class:"x-menu"},r.$attrs,{onSelect:a}),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(u.value,c=>(Vue.openBlock(),Vue.createBlock(Vue.unref(Ne),{item:{...c,icon:c.icon},defaultIcon:e.defaultIcon,subMenu:e.subMenu},null,8,["item","defaultIcon","subMenu"]))),256))]),_:1},16))}}),ie={name:{type:String},label:{type:String},value:{type:[String,Number,Object,Array,Boolean]},icon:{type:[String,Object]},mode:{type:String,default:"button"},menus:{type:Array},tooltip:{type:[String,Object]},badge:{type:[String,Number,Object]},dropdown:{type:Object},button:{type:Object},disabled:{type:[Boolean,Function]},size:{type:String,default:"default"},type:{type:String,default:"primary"},background:{type:String,default:"always"},circle:{type:Boolean}};function Nt(n){return Vue.computed(()=>{const t=n.tooltip;if(t)return typeof t=="string"?{content:t}:t})}function zt(n){return Vue.computed(()=>{const t=n.badge;if(t)return typeof t=="object"?t:{value:t}})}function Tt(n){return Vue.computed(()=>{const{dropdown:t,menus:e}=n;if(e&&e.length>0)return Object.assign({popperClass:"x-action__menus",size:n.size},t||{})})}function ze(n){const t=Vue.getCurrentInstance();return Vue.computed(()=>{const e=Vue.unref(n);if(e)if(typeof e=="string"||e.setup||e.render||Vue.isVNode(e)){const o=t?.appContext.app;return{icon:typeof e=="string"&&o?.component(e)||e}}else return e;return null})}function W(n){const t=ze(n);return t.value?Vue.markRaw(Vue.defineComponent({render:()=>Vue.h(L,t.value)})):void 0}function G(n,t){return Vue.computed(()=>{const e=Vue.unref(n);return typeof e=="function"?e(t):!!e})}function Te(n,t,e){const o=Vue.shallowRef(t),u=Vue.ref(!1),l=async r=>{const s=Vue.unref(n);return s?typeof s=="function"?await s(r):s:t},a=async r=>(u.value=!0,await l(r).then(s=>(o.value=s||t,u.value=!1,Vue.unref(o))));return Vue.watch(()=>n,()=>{a(e)},{immediate:!0}),e&&Vue.watch(e,()=>{a(e)}),{data:o,loading:u,loader:a}}const Dt={key:0},It=Vue.defineComponent({__name:"Trigger",props:ie,emits:["click"],setup(n,{emit:t}){const e=n,o=t,u=W(Vue.toRef(e,"icon")),l=G(Vue.toRef(e,"disabled")),a=Vue.computed(()=>({[`is-${e.mode}`]:!!e.mode,[`is-${e.type}`]:!!e.type,[`is-${e.size}`]:!!e.size&&e.size!=="default",[`is-background-${e.background}`]:e.mode==="icon"&&!!e.background,"is-disabled":!!e.disabled,"is-circle":!!e.circle})),r=s=>{if(s.preventDefault(),!l.value)return o("click"),!1};return(s,c)=>e.mode==="button"?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),Vue.mergeProps({key:0,icon:Vue.unref(u),type:e.type,size:e.size,disabled:Vue.unref(l)},e.button,{onClick:r}),{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(s.label),1)]),_:1},16,["icon","type","size","disabled"])):(Vue.openBlock(),Vue.createElementBlock("div",{key:1,class:Vue.normalizeClass(["x-action__inner",a.value]),onClick:r},[(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(u)))),s.label?(Vue.openBlock(),Vue.createElementBlock("span",Dt,Vue.toDisplayString(s.label),1)):Vue.createCommentVNode("",!0)],2))}}),O=Vue.defineComponent({name:"XAction",__name:"Action",props:ie,emits:["click","command"],setup(n,{emit:t}){const e=n,o=Vue.useSlots(),u=t,l=Nt(e),a=zt(e),r=Tt(e),s=G(Vue.toRef(e,"disabled")),c=Vue.computed(()=>({[`x-action--${e.mode}`]:!!e.mode})),d=()=>{s.value||u("click",Vue.toRaw(e))},i=g=>{if(s.value)return;const C=e.menus?.find(B=>B.command===g);C&&u("command",Vue.toRaw(C))},V=g=>Vue.h(ElementPlus.ElBadge,a.value,()=>[].concat(g)),p=g=>Vue.h(ElementPlus.ElDropdown,{...r.value,disabled:s.value,onCommand:i},{default:()=>[g],dropdown:()=>[Vue.h(ElementPlus.ElDropdownMenu,()=>(e.menus||[]).map((C,B)=>Vue.h(ElementPlus.ElDropdownItem,C,()=>o.item?o.item({item:C,index:B}):C.label)))]}),m=g=>Vue.h(ElementPlus.ElTooltip,{...l.value,disabled:s.value},()=>[g]),y=Vue.computed(()=>{let g=Vue.h(Vue.markRaw(It),{...e,onClick:d});const C=o.default?.();return C&&C.length&&(g=C[0]),a.value&&(g=V(g)),r.value&&(g=p(g)),l.value&&(g=m(g)),g});return(g,C)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:Vue.normalizeClass(["x-action",c.value])},[(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(y.value)))],2))}}),De={items:{type:Array},mode:{type:String,default:"button"},size:{type:String,default:"default"},type:{type:String,default:"primary"},background:{type:String,default:"always"},circle:{type:Boolean},disabled:{type:[Boolean,Function]},tooltip:{type:Object},badge:{type:Object},dropdown:{type:Object},button:{type:Object}},Q=Vue.defineComponent({name:"XActionBar",__name:"ActionBar",props:De,emits:["click","command"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>(e.items||[]).map(r=>r==="|"?r:{...r,badge:r.badge?{...e.badge,...typeof r.badge=="object"?r.badge||{}:{value:r.badge}}:void 0,tooltip:r.tooltip?{...e.tooltip,...typeof r.tooltip=="object"?r.tooltip||{}:{content:r.tooltip}}:void 0})),l=r=>{o("click",r)},a=(r,s)=>{o("command",r,s)};return(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-action-bar",align:"center"},{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(u.value,c=>(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,[c==="|"?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDivider),{key:0,direction:"vertical",class:"x-action-bar__divider"})):(Vue.openBlock(),Vue.createBlock(Vue.unref(O),Vue.mergeProps({key:1,mode:e.mode,size:e.size,type:e.type,circle:e.circle,background:e.background,button:e.button,dropdown:e.dropdown,disabled:Vue.unref(G)(e.disabled,c).value},c,{onClick:l,onCommand:d=>a(c,d)}),null,16,["mode","size","type","circle","background","button","dropdown","disabled","onCommand"]))],64))),256))]),_:1}))}}),Ie={tag:{type:String,default:"div"},fit:{type:Boolean,default:!1},width:{type:[String,Number]},height:{type:[String,Number]},flex:{type:Boolean,default:!0},inline:{type:Boolean},direction:{type:String,default:"row"},wrap:{type:String,default:"nowrap"},justify:{type:String,default:"flex-start"},align:{type:String,default:"flex-start"},alignContent:{type:String,default:"stretch"},grow:{type:Boolean,default:!1},shrink:{type:Boolean,default:!1},alignSelf:{type:String,default:"auto"},overflow:{type:String},padding:{type:Boolean,default:!1},gap:{type:Boolean},autoPointer:{type:Boolean}},P=Vue.defineComponent({name:"XContainer",__name:"Container",props:Ie,setup(n){const t=n,e=Vue.useAttrs(),o=Vue.getCurrentInstance(),u=Vue.computed(()=>{const r=o?.parent;if(!r)return!1;const s=r.proxy;return s.$options.name==="XContainer"||!!s.flex}),l=Vue.computed(()=>({"is-fit":t.fit,"is-flex":t.flex&&!t.inline,"is-inline-flex":t.flex&&t.inline,[`is-direction-${t.direction}`]:t.flex&&t.direction!=="row",[`is-wrap-${t.wrap}`]:t.flex&&t.wrap!=="nowrap",[`is-justify-${t.justify}`]:t.flex&&t.justify!=="flex-start",[`is-align-${t.align}`]:t.flex&&t.align!=="flex-start",[`is-align-content-${t.alignContent}`]:t.flex&&t.alignContent!=="stretch","is-grow":t.grow??u.value,"is-shrink":u.value&&t.shrink,[`is-align-self-${t.alignSelf}`]:u.value&&t.alignSelf!=="auto",[`is-overflow-${t.overflow}`]:!!t.overflow,"is-padding":!!t.padding,"is-pointer":t.autoPointer&&!!e.onClick,"is-gap":!!t.gap})),a=Vue.computed(()=>{const{width:r,height:s,fit:c}=t;return c?null:{width:r?j(r):void 0,height:s?j(s):void 0}});return(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(t.tag),{class:Vue.normalizeClass(["x-container",l.value]),style:Vue.normalizeStyle(a.value)},{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"default")]),_:3},8,["class","style"]))}}),Me={size:{type:String,default:"default"},content:{type:String,default:""},subtitle:{type:String},icon:{type:[String,Object]},border:{type:Boolean},more:{type:Boolean}},Mt={key:0,class:"x-header__actions"},ce=Vue.defineComponent({name:"XHeader",inheritAttrs:!1,__name:"Header",props:Me,setup(n){const t=n,e=W(Vue.toRef(t,"icon")),o=Vue.useAttrs(),u=Vue.computed(()=>({[`is-size-${t.size}`]:!!t.size&&t.size!=="default","is-border":t.border,"is-pointer":!!o.onClick}));return(l,a)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-header",u.value]),justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(P),{align:"center",class:Vue.normalizeClass(["x-header__wrapper",u.value]),grow:""},{default:Vue.withCtx(()=>[Vue.unref(e)?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(e)),{key:0,class:"x-header__icon",onClick:Vue.unref(o).onClickIcon||Vue.unref(o).onClick},null,8,["onClick"])):Vue.createCommentVNode("",!0),Vue.createElementVNode("span",{class:"x-header__content",onClick:a[0]||(a[0]=(...r)=>Vue.unref(o).onClick&&Vue.unref(o).onClick(...r))},[Vue.renderSlot(l.$slots,"default",{},()=>[Vue.createTextVNode(Vue.toDisplayString(t.content),1)])]),t.more?(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:1,class:"x-header__more",icon:Vue.unref(VtjIcons.ArrowRight)},null,8,["icon"])):Vue.createCommentVNode("",!0),t.subtitle||l.$slots.subtitle?(Vue.openBlock(),Vue.createElementBlock("span",{key:2,class:"x-header__subtitle",onClick:a[1]||(a[1]=(...r)=>Vue.unref(o).onClick&&Vue.unref(o).onClick(...r))},[Vue.renderSlot(l.$slots,"subtitle",{},()=>[Vue.createTextVNode(Vue.toDisplayString(t.subtitle),1)])])):Vue.createCommentVNode("",!0)]),_:3},8,["class"]),l.$slots.actions?(Vue.openBlock(),Vue.createElementBlock("div",Mt,[Vue.renderSlot(l.$slots,"actions")])):Vue.createCommentVNode("",!0)]),_:3},8,["class"]))}}),Re={fit:{type:Boolean,default:!1},width:{type:[String,Number]},height:{type:[String,Number]},border:{type:Boolean,default:!0},radius:{type:Boolean,default:!0},card:{type:Boolean},size:{type:String},shadow:{type:String},header:{type:[String,Object]},body:{type:Object},footer:{type:Object}},K=Vue.defineComponent({name:"XPanel",__name:"Panel",props:Re,setup(n,{expose:t}){const e=n,o=Vue.ref(),u=Vue.computed(()=>({"x-panel--card":!!e.card,"x-panel--default":!e.card,[`is-${e.size}`]:!!e.size&&e.size!=="default","is-border":!!e.border,"is-radius":!!e.radius,[`is-shadow-${e.shadow}`]:!!e.shadow&&e.shadow!=="none"})),l=Vue.computed(()=>e.header===null?null:typeof e.header=="string"?{content:e.header,size:e.size}:{...e.header,size:e.size}),a=Vue.computed(()=>e.fit||e.height?"auto":void 0);return t({bodyRef:o}),(r,s)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-panel",u.value]),direction:"column",fit:e.fit,width:e.width,height:e.height},{default:Vue.withCtx(()=>[l.value?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,flex:!1,class:"x-panel__header"},{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"header",{},()=>[Vue.createVNode(Vue.unref(ce),Vue.normalizeProps(Vue.guardReactiveProps(l.value)),{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"title")]),actions:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"actions")]),_:3},16)])]),_:3})):Vue.createCommentVNode("",!0),Vue.createVNode(Vue.unref(P),Vue.mergeProps({ref_key:"bodyRef",ref:o,flex:!1,overflow:a.value,grow:"",padding:"",class:"x-panel__body"},e.body),{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"default")]),_:3},16,["overflow"]),r.$slots.footer?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),Vue.mergeProps({key:1,flex:!1,padding:"",class:"x-panel__footer"},e.footer),{default:Vue.withCtx(()=>[Vue.renderSlot(r.$slots,"footer")]),_:3},16)):Vue.createCommentVNode("",!0)]),_:3},8,["class","fit","width","height"]))}});Vue;function de(n){return v.getCurrentScope()?(v.onScopeDispose(n),!0):!1}function R(n){return typeof n=="function"?n():v.unref(n)}const $e=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Rt=Object.prototype.toString,$t=n=>Rt.call(n)==="[object Object]",je=()=>{};function jt(n,t){function e(...o){return new Promise((u,l)=>{Promise.resolve(n(()=>t.apply(this,o),{fn:t,thisArg:this,args:o})).then(u).catch(l)})}return e}const Ae=n=>n();function At(n=Ae){const t=v.ref(!0);function e(){t.value=!1}function o(){t.value=!0}const u=(...l)=>{t.value&&n(...l)};return{isActive:v.readonly(t),pause:e,resume:o,eventFilter:u}}function Ot(n){return n||v.getCurrentInstance()}function Ft(...n){if(n.length!==1)return v.toRef(...n);const t=n[0];return typeof t=="function"?v.readonly(v.customRef(()=>({get:t,set:je}))):v.ref(t)}function Lt(n,t,e={}){const{eventFilter:o=Ae,...u}=e;return v.watch(n,jt(o,t),u)}function Ut(n,t,e={}){const{eventFilter:o,...u}=e,{eventFilter:l,pause:a,resume:r,isActive:s}=At(o);return{stop:Lt(n,t,{...u,eventFilter:l}),pause:a,resume:r,isActive:s}}function Xt(n,t={}){if(!v.isRef(n))return v.toRefs(n);const e=Array.isArray(n.value)?Array.from({length:n.value.length}):{};for(const o in n.value)e[o]=v.customRef(()=>({get(){return n.value[o]},set(u){var l;if((l=R(t.replaceRef))!=null?l:!0)if(Array.isArray(n.value)){const r=[...n.value];r[o]=u,n.value=r}else{const r={...n.value,[o]:u};Object.setPrototypeOf(r,Object.getPrototypeOf(n.value)),n.value=r}else n.value[o]=u}}));return e}function Ve(n,t=!0,e){Ot()?v.onMounted(n,e):t?n():v.nextTick(n)}function U(n){var t;const e=R(n);return(t=e?.$el)!=null?t:e}const F=$e?window:void 0;function $(...n){let t,e,o,u;if(typeof n[0]=="string"||Array.isArray(n[0])?([e,o,u]=n,t=F):[t,e,o,u]=n,!t)return je;Array.isArray(e)||(e=[e]),Array.isArray(o)||(o=[o]);const l=[],a=()=>{l.forEach(d=>d()),l.length=0},r=(d,i,V,p)=>(d.addEventListener(i,V,p),()=>d.removeEventListener(i,V,p)),s=v.watch(()=>[U(t),R(u)],([d,i])=>{if(a(),!d)return;const V=$t(i)?{...i}:i;l.push(...e.flatMap(p=>o.map(m=>r(d,p,m,V))))},{immediate:!0,flush:"post"}),c=()=>{s(),a()};return de(c),c}function Ht(){const n=v.ref(!1);return v.getCurrentInstance()&&v.onMounted(()=>{n.value=!0}),n}function Oe(n){const t=Ht();return v.computed(()=>(t.value,!!n()))}function Wt(n,t={}){const{window:e=F}=t,o=Oe(()=>e&&"matchMedia"in e&&typeof e.matchMedia=="function");let u;const l=v.ref(!1),a=c=>{l.value=c.matches},r=()=>{u&&("removeEventListener"in u?u.removeEventListener("change",a):u.removeListener(a))},s=v.watchEffect(()=>{o.value&&(r(),u=e.matchMedia(R(n)),"addEventListener"in u?u.addEventListener("change",a):u.addListener(a),l.value=u.matches)});return de(()=>{s(),r(),u=void 0}),l}const q=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ee="__vueuse_ssr_handlers__",Kt=Jt();function Jt(){return ee in q||(q[ee]=q[ee]||{}),q[ee]}function Fe(n,t){return Kt[n]||t}function Yt(n){return n==null?"any":n instanceof Set?"set":n instanceof Map?"map":n instanceof Date?"date":typeof n=="boolean"?"boolean":typeof n=="string"?"string":typeof n=="object"?"object":Number.isNaN(n)?"any":"number"}const Qt={boolean:{read:n=>n==="true",write:n=>String(n)},object:{read:n=>JSON.parse(n),write:n=>JSON.stringify(n)},number:{read:n=>Number.parseFloat(n),write:n=>String(n)},any:{read:n=>n,write:n=>String(n)},string:{read:n=>n,write:n=>String(n)},map:{read:n=>new Map(JSON.parse(n)),write:n=>JSON.stringify(Array.from(n.entries()))},set:{read:n=>new Set(JSON.parse(n)),write:n=>JSON.stringify(Array.from(n))},date:{read:n=>new Date(n),write:n=>n.toISOString()}},Le="vueuse-storage";function Zt(n,t,e,o={}){var u;const{flush:l="pre",deep:a=!0,listenToStorageChanges:r=!0,writeDefaults:s=!0,mergeDefaults:c=!1,shallow:d,window:i=F,eventFilter:V,onError:p=b=>{console.error(b)},initOnMounted:m}=o,y=(d?v.shallowRef:v.ref)(typeof t=="function"?t():t);if(!e)try{e=Fe("getDefaultStorage",()=>{var b;return(b=F)==null?void 0:b.localStorage})()}catch(b){p(b)}if(!e)return y;const g=R(t),C=Yt(g),B=(u=o.serializer)!=null?u:Qt[C],{pause:k,resume:_}=Ut(y,()=>h(y.value),{flush:l,deep:a,eventFilter:V});return i&&r&&Ve(()=>{$(i,"storage",E),$(i,Le,f),m&&E()}),m||E(),y;function h(b){try{if(b==null)e.removeItem(n);else{const N=B.write(b),z=e.getItem(n);z!==N&&(e.setItem(n,N),i&&i.dispatchEvent(new CustomEvent(Le,{detail:{key:n,oldValue:z,newValue:N,storageArea:e}})))}}catch(N){p(N)}}function S(b){const N=b?b.newValue:e.getItem(n);if(N==null)return s&&g!=null&&e.setItem(n,B.write(g)),g;if(!b&&c){const z=B.read(N);return typeof c=="function"?c(z,g):C==="object"&&!Array.isArray(z)?{...g,...z}:z}else return typeof N!="string"?N:B.read(N)}function f(b){E(b.detail)}function E(b){if(!(b&&b.storageArea!==e)){if(b&&b.key==null){y.value=g;return}if(!(b&&b.key!==n)){k();try{b?.newValue!==B.write(y.value)&&(y.value=S(b))}catch(N){p(N)}finally{b?v.nextTick(_):_()}}}}}function Ue(n){return Wt("(prefers-color-scheme: dark)",n)}function Gt(n={}){const{selector:t="html",attribute:e="class",initialValue:o="auto",window:u=F,storage:l,storageKey:a="vueuse-color-scheme",listenToStorageChanges:r=!0,storageRef:s,emitAuto:c,disableTransition:d=!0}=n,i={auto:"",light:"light",dark:"dark",...n.modes||{}},V=Ue({window:u}),p=v.computed(()=>V.value?"dark":"light"),m=s||(a==null?Ft(o):Zt(a,o,l,{window:u,listenToStorageChanges:r})),y=v.computed(()=>m.value==="auto"?p.value:m.value),g=Fe("updateHTMLAttrs",(_,h,S)=>{const f=typeof _=="string"?u?.document.querySelector(_):U(_);if(!f)return;let E;if(d&&(E=u.document.createElement("style"),E.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),u.document.head.appendChild(E)),h==="class"){const b=S.split(/\s/g);Object.values(i).flatMap(N=>(N||"").split(/\s/g)).filter(Boolean).forEach(N=>{b.includes(N)?f.classList.add(N):f.classList.remove(N)})}else f.setAttribute(h,S);d&&(u.getComputedStyle(E).opacity,document.head.removeChild(E))});function C(_){var h;g(t,e,(h=i[_])!=null?h:_)}function B(_){n.onChanged?n.onChanged(_,C):C(_)}v.watch(y,B,{flush:"post",immediate:!0}),Ve(()=>B(y.value));const k=v.computed({get(){return c?m.value:y.value},set(_){m.value=_}});try{return Object.assign(k,{store:m,system:p,state:y})}catch{return k}}function qt(n={}){const{valueDark:t="dark",valueLight:e="",window:o=F}=n,u=Gt({...n,onChanged:(r,s)=>{var c;n.onChanged?(c=n.onChanged)==null||c.call(n,r==="dark",s,r):s(r)},modes:{dark:t,light:e}}),l=v.computed(()=>u.system?u.system.value:Ue({window:o}).value?"dark":"light");return v.computed({get(){return u.value==="dark"},set(r){const s=r?"dark":"light";l.value===s?u.value="auto":u.value=s}})}function eo(n,t={}){var e,o;const{pointerTypes:u,preventDefault:l,stopPropagation:a,exact:r,onMove:s,onEnd:c,onStart:d,initialValue:i,axis:V="both",draggingElement:p=F,containerElement:m,handle:y=n}=t,g=v.ref((e=R(i))!=null?e:{x:0,y:0}),C=v.ref(),B=f=>u?u.includes(f.pointerType):!0,k=f=>{R(l)&&f.preventDefault(),R(a)&&f.stopPropagation()},_=f=>{var E;if(!B(f)||R(r)&&f.target!==R(n))return;const b=R(m),N=(E=b?.getBoundingClientRect)==null?void 0:E.call(b),z=R(n).getBoundingClientRect(),M={x:f.clientX-(b?z.left-N.left+b.scrollLeft:z.left),y:f.clientY-(b?z.top-N.top+b.scrollTop:z.top)};d?.(M,f)!==!1&&(C.value=M,k(f))},h=f=>{var E;if(!B(f)||!C.value)return;const b=R(m),N=(E=b?.getBoundingClientRect)==null?void 0:E.call(b),z=R(n).getBoundingClientRect();let{x:M,y:A}=g.value;(V==="x"||V==="both")&&(M=f.clientX-C.value.x,b&&(M=Math.min(Math.max(0,M),N.width+b.scrollLeft-z.width))),(V==="y"||V==="both")&&(A=f.clientY-C.value.y,b&&(A=Math.min(Math.max(0,A),N.height+b.scrollTop-z.height))),g.value={x:M,y:A},s?.(g.value,f),k(f)},S=f=>{B(f)&&C.value&&(C.value=void 0,c?.(g.value,f),k(f))};if($e){const f={capture:(o=t.capture)!=null?o:!0};$(y,"pointerdown",_,f),$(p,"pointermove",h,f),$(p,"pointerup",S,f)}return{...Xt(g),position:g,isDragging:v.computed(()=>!!C.value),style:v.computed(()=>`left:${g.value.x}px;top:${g.value.y}px;`)}}function Xe(n,t,e={}){const{window:o=F,...u}=e;let l;const a=Oe(()=>o&&"ResizeObserver"in o),r=()=>{l&&(l.disconnect(),l=void 0)},s=v.computed(()=>Array.isArray(n)?n.map(i=>U(i)):[U(n)]),c=v.watch(s,i=>{if(r(),a.value&&o){l=new ResizeObserver(t);for(const V of i)V&&l.observe(V,u)}},{immediate:!0,flush:"post",deep:!0}),d=()=>{r(),c()};return de(d),{isSupported:a,stop:d}}function pe(n,t={width:0,height:0},e={}){const{window:o=F,box:u="content-box"}=e,l=v.computed(()=>{var i,V;return(V=(i=U(n))==null?void 0:i.namespaceURI)==null?void 0:V.includes("svg")}),a=v.ref(t.width),r=v.ref(t.height),{stop:s}=Xe(n,([i])=>{const V=u==="border-box"?i.borderBoxSize:u==="content-box"?i.contentBoxSize:i.devicePixelContentBoxSize;if(o&&l.value){const p=U(n);if(p){const m=o.getComputedStyle(p);a.value=Number.parseFloat(m.width),r.value=Number.parseFloat(m.height)}}else if(V){const p=Array.isArray(V)?V:[V];a.value=p.reduce((m,{inlineSize:y})=>m+y,0),r.value=p.reduce((m,{blockSize:y})=>m+y,0)}else a.value=i.contentRect.width,r.value=i.contentRect.height},e);Ve(()=>{const i=U(n);i&&(a.value="offsetWidth"in i?i.offsetWidth:t.width,r.value="offsetHeight"in i?i.offsetHeight:t.height)});const c=v.watch(()=>U(n),i=>{a.value=i?t.width:0,r.value=i?t.height:0});function d(){s(),c()}return{width:a,height:r,stop:d}}const to={page:n=>[n.pageX,n.pageY],client:n=>[n.clientX,n.clientY],screen:n=>[n.screenX,n.screenY],movement:n=>n instanceof Touch?null:[n.movementX,n.movementY]};function oo(n={}){const{type:t="page",touch:e=!0,resetOnTouchEnds:o=!1,initialValue:u={x:0,y:0},window:l=F,target:a=l,scroll:r=!0,eventFilter:s}=n;let c=null;const d=v.ref(u.x),i=v.ref(u.y),V=v.ref(null),p=typeof t=="function"?t:to[t],m=h=>{const S=p(h);c=h,S&&([d.value,i.value]=S,V.value="mouse")},y=h=>{if(h.touches.length>0){const S=p(h.touches[0]);S&&([d.value,i.value]=S,V.value="touch")}},g=()=>{if(!c||!l)return;const h=p(c);c instanceof MouseEvent&&h&&(d.value=h[0]+l.scrollX,i.value=h[1]+l.scrollY)},C=()=>{d.value=u.x,i.value=u.y},B=s?h=>s(()=>m(h),{}):h=>m(h),k=s?h=>s(()=>y(h),{}):h=>y(h),_=s?()=>s(()=>g(),{}):()=>g();if(a){const h={passive:!0};$(a,["mousemove","dragover"],B,h),e&&t!=="movement"&&($(a,["touchstart","touchmove"],k,h),o&&$(a,"touchend",C,h)),r&&t==="page"&&$(l,"scroll",_,{passive:!0})}return{x:d,y:i,sourceType:V}}function no(n,t={}){const{handleOutside:e=!0,window:o=F}=t,u=t.type||"page",{x:l,y:a,sourceType:r}=oo(t),s=v.ref(n??o?.document.body),c=v.ref(0),d=v.ref(0),i=v.ref(0),V=v.ref(0),p=v.ref(0),m=v.ref(0),y=v.ref(!0);let g=()=>{};return o&&(g=v.watch([s,l,a],()=>{const C=U(s);if(!C)return;const{left:B,top:k,width:_,height:h}=C.getBoundingClientRect();i.value=B+(u==="page"?o.pageXOffset:0),V.value=k+(u==="page"?o.pageYOffset:0),p.value=h,m.value=_;const S=l.value-i.value,f=a.value-V.value;y.value=_===0||h===0||S<0||f<0||S>_||f>h,(e||!y.value)&&(c.value=S,d.value=f)},{immediate:!0}),$(document,"mouseleave",()=>{y.value=!0})),{x:l,y:a,sourceType:r,elementX:c,elementY:d,elementPositionX:i,elementPositionY:V,elementHeight:p,elementWidth:m,isOutside:y,stop:g}}function uo(n,t){const{containerStyle:e,wrapperProps:o,scrollTo:u,calculateRange:l,currentList:a,containerRef:r}="itemHeight"in t?ao(t,n):ro(t,n);return{list:a,scrollTo:u,containerProps:{ref:r,onScroll:()=>{l()},style:e},wrapperProps:o}}function He(n){const t=v.ref(null),e=pe(t),o=v.ref([]),u=v.shallowRef(n);return{state:v.ref({start:0,end:10}),source:u,currentList:o,size:e,containerRef:t}}function We(n,t,e){return o=>{if(typeof e=="number")return Math.ceil(o/e);const{start:u=0}=n.value;let l=0,a=0;for(let r=u;r<t.value.length;r++){const s=e(r);if(l+=s,a=r,l>o)break}return a-u}}function Ke(n,t){return e=>{if(typeof t=="number")return Math.floor(e/t)+1;let o=0,u=0;for(let l=0;l<n.value.length;l++){const a=t(l);if(o+=a,o>=e){u=l;break}}return u+1}}function Je(n,t,e,o,{containerRef:u,state:l,currentList:a,source:r}){return()=>{const s=u.value;if(s){const c=e(n==="vertical"?s.scrollTop:s.scrollLeft),d=o(n==="vertical"?s.clientHeight:s.clientWidth),i=c-t,V=c+d+t;l.value={start:i<0?0:i,end:V>r.value.length?r.value.length:V},a.value=r.value.slice(l.value.start,l.value.end).map((p,m)=>({data:p,index:m+l.value.start}))}}}function Ye(n,t){return e=>typeof n=="number"?e*n:t.value.slice(0,e).reduce((u,l,a)=>u+n(a),0)}function Qe(n,t,e){v.watch([n.width,n.height,t],()=>{e()})}function Ze(n,t){return v.computed(()=>typeof n=="number"?t.value.length*n:t.value.reduce((e,o,u)=>e+n(u),0))}const lo={horizontal:"scrollLeft",vertical:"scrollTop"};function Ge(n,t,e,o){return u=>{o.value&&(o.value[lo[n]]=e(u),t())}}function ro(n,t){const e=He(t),{state:o,source:u,currentList:l,size:a,containerRef:r}=e,s={overflowX:"auto"},{itemWidth:c,overscan:d=5}=n,i=We(o,u,c),V=Ke(u,c),p=Je("horizontal",d,V,i,e),m=Ye(c,u),y=v.computed(()=>m(o.value.start)),g=Ze(c,u);Qe(a,t,p);const C=Ge("horizontal",p,m,r),B=v.computed(()=>({style:{height:"100%",width:`${g.value-y.value}px`,marginLeft:`${y.value}px`,display:"flex"}}));return{scrollTo:C,calculateRange:p,wrapperProps:B,containerStyle:s,currentList:l,containerRef:r}}function ao(n,t){const e=He(t),{state:o,source:u,currentList:l,size:a,containerRef:r}=e,s={overflowY:"auto"},{itemHeight:c,overscan:d=5}=n,i=We(o,u,c),V=Ke(u,c),p=Je("vertical",d,V,i,e),m=Ye(c,u),y=v.computed(()=>m(o.value.start)),g=Ze(c,u);Qe(a,t,p);const C=Ge("vertical",p,m,r),B=v.computed(()=>({style:{width:"100%",height:`${g.value-y.value}px`,marginTop:`${y.value}px`}}));return{calculateRange:p,scrollTo:C,containerStyle:s,wrapperProps:B,currentList:l,containerRef:r}}const qe="user-select-none";class fe{constructor(t,e={}){this.el=t,this.options=e,this.scope=Vue.effectScope(),this.scope.run(()=>{this.init()})}scope;dragging=!1;getHandle(){const{selector:t,handle:e}=this.options;return t?this.el.querySelector(t):e}getTarget(){const{target:t="body"}=this.options;return typeof t=="string"?document.querySelector(t):Vue.unref(t)||document.body}init(){const{el:t,options:e}=this,{disabled:o,delay:u=150,onStart:l,onEnd:a}=e;if(o)return;let r=null;const s=this.getHandle(),c=this.getTarget();let d=t.getBoundingClientRect(),i=null;const{x:V,y:p}=eo(t,{initialValue:{x:d.x,y:d.y},...e,handle:s,onStart:(m,y)=>{document.body.classList.add(qe),clearTimeout(r),r=setTimeout(()=>{this.dragging=!0,d=t.getBoundingClientRect(),i=c?.getBoundingClientRect(),l&&l(m,y)},u)},onEnd:(m,y)=>{if(clearTimeout(r),document.body.classList.remove(qe),this.dragging&&i){this.dragging=!1;const{x:g,y:C}=m,B=this.getPosition(i,d,g,C);a&&a(B,y),i=null}}});Vue.watch([V,p],()=>{if(this.dragging&&i){const m=this.getPosition(i,d,V.value,p.value);t.style.left=`${m.x}px`,t.style.top=`${m.y}px`}})}getPosition(t,e,o,u){const{edge:l=50}=this.options,a=-e.width+l,r=t.width-l,s=0,c=t.height-l,d=Math.min(r,Math.max(o,a)),i=Math.min(c,Math.max(u,s));return{x:d,y:i}}destory(){this.scope.stop()}}const et={mounted(n,t){const e=t.value||{},o=new fe(n,e);n.__draggable__=o},updated(n,t){const e=t.value||{};let o=n.__draggable__;o&&!VtjUtils.isEqual(o.options,e)&&(o.destory(),n.__draggable__=new fe(n,e))},unmounted(n){const t=n.__draggable__;t&&(t.destory(),n.__draggable__=null)}},me="user-select-none";class ge{constructor(t,e={}){this.el=t,this.options=e,this.scope=Vue.effectScope(),this.scope.run(()=>{this.init()})}scope;resizing=Vue.ref(!1);direction=Vue.ref("");MIE=null;cleanMousedown;cleanMouseup;init(){const{el:t,options:e}=this,{disabled:o,onStart:u,onEnd:l}=e;if(o)return;this.MIE=no(t),this.cleanMousedown=$(document,"mousedown",()=>{this.direction?.value&&this.MIE&&(this.resizing.value=!0,t.classList.add("is-resizing",`is-${this.direction.value}-resizing`),u&&u(this.direction.value,this.MIE))}),this.cleanMouseup=$(document,"mouseup",()=>{this.resizing.value&&this.direction?.value&&this.MIE&&(t.classList.remove("is-resizing",`is-${this.direction.value}-resizing`),l&&l(this.direction.value,this.MIE)),this.resizing.value=!1}),Vue.watch(this.direction,s=>{const c=document.body;c.style.cursor=s?`${s}-resize`:"",s?c.classList.add(me):c.classList.remove(me)});const{x:a,y:r}=this.MIE;Vue.watch([a,r],()=>{this.resizing.value?this.resize():this.direction.value=this.getDirection()})}resize(){const{MIE:t,direction:e,resizing:o,options:u,el:l}=this,a=e?.value||"";if(!t||!o.value||!a)return;const{x:r,y:s,elementX:c,elementY:d,elementHeight:i,elementWidth:V}=t,{onResizing:p}=u,{minWidth:m=0,minHeight:y=0,maxWidth:g=99999,maxHeight:C=99999}=u;if(a.includes("e")){const B=Math.min(Math.max(c.value,m),g);l.style.width=`${B}px`}if(a.includes("s")){const B=Math.min(Math.max(d.value,y),C);l.style.height=`${B}px`}if(a.includes("w")){const B=Math.min(Math.max(V.value-c.value,m),g);l.style.width=`${B}px`,l.style.left=`${r.value}px`}if(a.includes("n")){const B=Math.min(Math.max(i.value-d.value,y),C);this.el.style.height=`${B}px`,this.el.style.top=`${s.value}px`}p&&p(a,t)}getDirection(){if(!this.MIE)return"";const{elementX:t,elementY:e,elementHeight:o,elementWidth:u,isOutside:l}=this.MIE;if(l.value)return"";const{dirs:a=["n","s","w","e"],edge:r=5}=this.options;let s="";return a.includes("n")&&e.value<=r?s+="n":a.includes("s")&&e.value>o.value-r&&(s+="s"),a.includes("w")&&t.value<=r?s+="w":a.includes("e")&&t.value>u.value-r&&(s+="e"),s}destory(){const t=document.body;t.style.cursor="",t.classList.remove(me),this.cleanMousedown&&this.cleanMousedown(),this.cleanMouseup&&this.cleanMouseup(),this.MIE?.stop(),this.scope.stop()}}const he={mounted(n,t){const e=t.value||{},o=new ge(n,e);n.__resizable__=o},updated(n,t){const e=t.value||{};let o=n.__resizable__;o&&!VtjUtils.isEqual(o.options,e)&&(o.destory(),n.__resizable__=new ge(n,e))},unmounted(n){const t=n.__resizable__;t&&(t.destory(),n.__resizable__=null)}},tt={modelValue:{type:Boolean,default:!0},title:{type:String},subtitle:{type:String},icon:{type:[String,Object]},size:{type:String,default:"default"},width:{type:[Number,String],default:"70%"},height:{type:[Number,String],default:"70%"},left:{type:[Number,String]},top:{type:[Number,String]},modal:{type:Boolean,default:!0},draggable:{type:[Boolean,Object],default:!0},resizable:{type:[Boolean,Object]},closable:{type:Boolean,default:!0},maximizable:{type:Boolean,default:!1},minimizable:{type:Boolean,default:!1},mode:{type:String,default:"normal"},content:{type:Object},src:{type:String},componentInstance:{type:Object},beforeClose:{type:Function},submit:{type:[Boolean,String]},cancel:{type:[Boolean,String]},bodyPadding:{type:Boolean,default:!0},primary:{type:Boolean}};let J=1e3;function so(n,t){const{width:e,height:o}=pe(t),u=Vue.reactive({mode:n.mode||"normal",wrapperWidth:0,wrapperHeight:0,width:0,height:0,top:0,left:0,zIndex:++J,dragging:!1,resizing:!1});return Vue.watch([e,o],([l,a])=>{u.wrapperWidth=l,u.wrapperHeight=a,u.width=Y(n.width,l),u.height=Y(n.height,a),u.left=n.left?Y(n.left,l)-u.width/2:Math.max(Math.floor((l-u.width)/2),0),u.top=n.top?Y(n.top,a):Math.max(Math.floor((a-u.height)/2),0)}),Vue.watch(u,l=>{J=Math.max(l.zIndex,J)}),{state:u,normal:Vue.computed(()=>u.mode==="normal"),maximized:Vue.computed(()=>u.mode==="maximized"),minimized:Vue.computed(()=>u.mode==="minimized")}}function io(n,t){const e=Vue.computed(()=>{const{width:a,height:r,top:s,left:c,zIndex:d}=t;return{width:`${a}px`,height:`${r}px`,top:`${s}px`,left:`${c}px`,zIndex:d}}),o=Vue.computed(()=>({[`is-${t.mode}`]:!!t.mode,"is-draggable":!!n.draggable,"is-resizable":!!n.resizable,"is-primary":!!n.primary})),u=Vue.computed(()=>({[`is-${t.mode}`]:!!t.mode,"is-dragging":t.dragging,"is-resizing":t.resizing})),l=Vue.computed(()=>({zIndex:t.zIndex}));return{styles:e,classes:o,wrapperClass:u,modalStyle:l}}function co(n,t,e){const o=d=>{t.mode=d,["maximized","minimized","normal"].includes(d)&&e(d),e("modeChange",d)},u=async()=>{(!n.beforeClose||await n.beforeClose())&&(e("update:modelValue",!1),e("close"),e("destroy"))};return{close:u,changeMode:o,show:()=>o("normal"),hide:()=>o("minimized"),active:d=>{const i=d.target.nodeName||"";["INPUT","TEXTAREA","RADIO","CHECKBOX"].includes(i.toUpperCase())||(t.zIndex=Math.max(t.zIndex,++J))},submit:()=>e("submit"),cancel:()=>{e("cancel"),u()}}}function Vo(n,t,e,o){return Vue.computed(()=>{const u=typeof n.draggable=="boolean"?!n.draggable:!!n.draggable?.disabled;return{...VtjUtils.isObject(n.draggable)?n.draggable:{},disabled:u,target:o,selector:".x-panel__header",onStart(l){t.dragging=!0,t.zIndex=Math.max(t.zIndex,++J),e("dragStart",l)},onMove(l){e("dragging",l)},onEnd(l){if(t.mode==="maximized")return;const{x:a,y:r}=l;t.left=a,t.top=r,t.dragging=!1,e("dragEnd",l)}}})}function po(n,t,e){return Vue.computed(()=>{const o=typeof n.resizable=="boolean"?!n.resizable:!!n.resizable?.disabled;return{minWidth:200,minHeight:150,...VtjUtils.isObject(n.resizable)?n.resizable:{},disabled:o,dirs:["e","s","w"],onStart(u,l){t.resizing=!0,t.zIndex=Math.max(t.zIndex,++J),e("resizeStart",u,l)},onResizing(u,l){e("resizing",u,l)},onEnd(u,l){t.left=l.elementPositionX.value,t.top=l.elementPositionY.value,t.width=l.elementWidth.value,t.height=l.elementHeight.value,t.resizing=!1,e("resizeEnd",u,l)}}})}function fo(n,t){const e=n.componentInstance;if(!e)return;let o=null;return Vue.onMounted(()=>{const u=Vue.unref(t),l=Vue.unref(u?.bodyRef);o=e.$el,l&&l.$el&&l.$el.appendChild(o)}),Vue.onUnmounted(()=>{o&&o.parentNode&&o.parentNode.removeChild(o)}),{componentInstance:e}}const mo=["src"],te=Vue.defineComponent({name:"XDialog",__name:"Dialog",props:tt,emits:["update:modelValue","open","close","destroy","maximized","minimized","normal","modeChange","dragStart","dragging","dragEnd","resizeStart","resizeEnd","resizing","submit","cancel"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.getCurrentInstance(),a=Vue.ref(),r=Vue.ref(),{state:s,maximized:c,minimized:d,normal:i}=so(o,a),{styles:V,classes:p,wrapperClass:m,modalStyle:y}=io(o,s),{changeMode:g,active:C,close:B,show:k,hide:_,submit:h,cancel:S}=co(o,s,u),f=Vo(o,s,u,a),E=po(o,s,u),b=fo(o,r);Vue.watchEffect(async()=>{o.modelValue&&(await Vue.nextTick(),l&&u("open",l))});const N=Vue.computed(()=>r.value?.$el);return t({$vtjEl:N,panelRef:r,state:s,maximized:c,minimized:d,changeMode:g,show:k,hide:_,submit:h,cancel:S,componentInstance:b}),(z,M)=>o.modelValue?(Vue.openBlock(),Vue.createBlock(Vue.Teleport,{key:0,to:"body"},[Vue.createElementVNode("div",{ref_key:"wrapper",ref:a,class:Vue.normalizeClass(["x-dialog__wrapper",Vue.unref(m)])},[o.modal?(Vue.openBlock(),Vue.createElementBlock("div",{key:0,class:"x-dialog__modal",style:Vue.normalizeStyle(Vue.unref(y))},null,4)):Vue.createCommentVNode("",!0),Vue.withDirectives((Vue.openBlock(),Vue.createBlock(Vue.unref(K),Vue.mergeProps({ref_key:"panelRef",ref:r,class:["x-dialog",Vue.unref(p)],card:"",shadow:"always",header:{icon:o.icon,subtitle:o.subtitle},width:"800px",height:"600px",footer:{justify:"space-between",flex:!0,align:"center"},style:Vue.unref(V),size:o.size,body:{padding:o.bodyPadding},onClick:Vue.unref(C)},z.$attrs),Vue.createSlots({title:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(o.title),1)]),actions:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"actions"),o.minimizable?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:0,icon:Vue.unref(VtjIcons.Minimize),size:o.size,mode:"icon",type:"primary",background:"hover",onClick:M[0]||(M[0]=A=>Vue.unref(g)("minimized"))},null,8,["icon","size"])):Vue.createCommentVNode("",!0),o.maximizable?(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:1},[Vue.unref(i)?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:1,icon:Vue.unref(VtjIcons.Maximize),size:o.size,mode:"icon",type:"primary",background:"hover",onClick:M[2]||(M[2]=A=>Vue.unref(g)("maximized"))},null,8,["icon","size"])):(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:0,icon:Vue.unref(VtjIcons.Popup),size:o.size,mode:"icon",type:"primary",background:"hover",onClick:M[1]||(M[1]=A=>Vue.unref(g)("normal"))},null,8,["icon","size"]))],64)):Vue.createCommentVNode("",!0),o.closable?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:2,icon:Vue.unref(VtjIcons.RawClose),size:o.size,mode:"icon",type:"danger",background:"hover",onClick:Vue.unref(B)},null,8,["icon","size","onClick"])):Vue.createCommentVNode("",!0)]),default:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"default",{},()=>[o.content?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(o.content),{key:0})):Vue.createCommentVNode("",!0),o.src?(Vue.openBlock(),Vue.createElementBlock("iframe",{key:1,src:o.src,class:"x-dialog__frame"},null,8,mo)):Vue.createCommentVNode("",!0)])]),_:2},[o.cancel||o.submit||z.$slots.footer||z.$slots.extra||z.$slots.handle?{name:"footer",fn:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"footer",{},()=>[Vue.createVNode(Vue.unref(P),{align:"center"},{default:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"extra")]),_:3}),Vue.createVNode(Vue.unref(P),{align:"center"},{default:Vue.withCtx(()=>[Vue.renderSlot(z.$slots,"handle"),o.cancel?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:0,type:"default",size:o.size,onClick:Vue.unref(S)},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(typeof o.cancel=="string"?o.cancel:"取消"),1)]),_:1},8,["size","onClick"])):Vue.createCommentVNode("",!0),o.submit?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:1,type:"primary",size:o.size,onClick:Vue.unref(h)},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(typeof o.submit=="string"?o.submit:"确定"),1)]),_:1},8,["size","onClick"])):Vue.createCommentVNode("",!0)]),_:3})])]),key:"0"}:void 0]),1040,["header","class","style","size","body","onClick"])),[[Vue.unref(et),Vue.unref(f)],[Vue.unref(he),Vue.unref(E)]])],2)])):Vue.createCommentVNode("",!0)}});function oe(n,t){const e=document.createElement("div"),o=Vue.createVNode(te,n);o.appContext=t??oe._context,Vue.render(o,e);const u=()=>{Vue.render(null,e),e.parentNode?.removeChild(e)};return o.props.onDestroy=()=>{u()},document.body.appendChild(e),{vnode:o,destroy:u}}const go=Vue.createElementVNode("div",{class:"x-mask-sidebar__helper"},null,-1),ho=Vue.defineComponent({__name:"Sidebar",props:{collapsed:{type:Boolean}},setup(n){const t=n;return(e,o)=>Vue.withDirectives((Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-mask-sidebar",{"is-collapsed":t.collapsed}]),grow:!1,flex:"",direction:"column"},{default:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"brand"),Vue.createVNode(Vue.unref(P),{class:"x-mask-sidebar__wrapper",flex:"",grow:"",direction:"column",justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"default"),go]),_:3})]),_:3},8,["class"])),[[Vue.unref(he),{dirs:["e"],disabled:t.collapsed,maxWidth:500,minWidth:200}]])}}),yo=Vue.defineComponent({__name:"SwitchBar",props:{collasped:{type:Boolean,default:!1},favorite:{type:Boolean,default:!1},keyword:{}},emits:["update:collasped","update:keyword","update:favorite"],setup(n,{emit:t}){const e=n,o=t,u=Vue.ref(!1),l=Vue.ref(""),a=Vue.ref(!1),r=()=>{u.value=!0},s=()=>{l.value="",u.value=!1,o("update:keyword",l.value)},c=()=>{o("update:collasped",!e.collasped)},d=()=>{o("update:keyword",l.value)},i=()=>{o("update:favorite",a.value)};return(V,p)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-mask-switch-bar",justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[e.collasped?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-mask-switch-bar__left",grow:""},{default:Vue.withCtx(()=>[u.value?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSwitch),{key:0,modelValue:a.value,"onUpdate:modelValue":p[0]||(p[0]=m=>a.value=m),class:"x-mask-switch-bar__switch","active-icon":Vue.unref(VtjIcons.StarFilled),"inactive-icon":Vue.unref(VtjIcons.Menu),onChange:i},null,8,["modelValue","active-icon","inactive-icon"])),u.value?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElInput),{key:1,modelValue:l.value,"onUpdate:modelValue":p[1]||(p[1]=m=>l.value=m),class:"x-mask-switch-bar__input",size:"small",placeholder:"请输入查询关键字",onInput:d,"prefix-icon":Vue.unref(VtjIcons.Search)},{suffix:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(L),{icon:Vue.unref(VtjIcons.Close),onClick:s},null,8,["icon"])]),_:1},8,["modelValue","prefix-icon"])):Vue.createCommentVNode("",!0)]),_:1})),Vue.createVNode(Vue.unref(P),{class:Vue.normalizeClass(["x-mask-switch-bar__right",{"is-collasped":e.collasped}]),flex:"",align:"center",justify:"center"},{default:Vue.withCtx(()=>[!u.value&&!e.collasped?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:0,icon:Vue.unref(VtjIcons.Search),mode:"icon",background:"hover",size:"default",circle:"",onClick:r},null,8,["icon"])):Vue.createCommentVNode("",!0),e.collasped?(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:1,icon:Vue.unref(VtjIcons.Expand),mode:"icon",size:"default",background:"hover",onClick:c,circle:""},null,8,["icon"])):Vue.createCommentVNode("",!0),e.collasped?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(O),{key:2,icon:Vue.unref(VtjIcons.Fold),mode:"icon",size:"default",background:"hover",circle:"",onClick:c},null,8,["icon"]))]),_:1},8,["class"])]),_:1}))}}),vo=["src"],ko={key:0},bo=Vue.defineComponent({__name:"Brand",props:{collapsed:{type:Boolean,default:!1},logo:{},title:{},url:{}},setup(n){const t=n,e=VueRouter.useRouter(),o=()=>{t.url&&e.push(t.url)};return(u,l)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-mask-brand",{"is-collapsed":t.collapsed}]),align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(P),{class:"x-mask-brand__logo",flex:"",justify:"center",align:"center",onClick:o},{default:Vue.withCtx(()=>[Vue.renderSlot(u.$slots,"logo",{},()=>[t.logo?(Vue.openBlock(),Vue.createElementBlock("img",{key:0,src:t.logo},null,8,vo)):Vue.createCommentVNode("",!0)])]),_:3}),Vue.createVNode(Vue.unref(P),{class:"x-mask-brand__title",flex:"",align:"center"},{default:Vue.withCtx(()=>[t.title?(Vue.openBlock(),Vue.createElementBlock("span",ko,[Vue.renderSlot(u.$slots,"title",{},()=>[Vue.createTextVNode(Vue.toDisplayString(t.title),1)])])):Vue.createCommentVNode("",!0)]),_:3})]),_:3},8,["class"]))}}),ne="__favorites__",ue="__search__",wo=Vue.defineComponent({__name:"Menu",props:{collapse:{type:Boolean,default:!1},keyword:{},favorite:{type:Boolean},favorites:{},flatMenus:{},menus:{},active:{}},emits:["select"],setup(n,{emit:t}){const e=n,o=Vue.computed(()=>e.menus||[]),u=t,l=Vue.computed(()=>String(e.active?.id)),a=Vue.computed(()=>[{id:ne,title:"收藏",icon:VtjIcons.Star,children:e.favorites?.length?e.favorites:[{id:ne+"empty",disabled:!0,title:"暂无收藏菜单"}]}]),r=Vue.computed(()=>{const c=(e.keyword||"").trim(),d=c?(e.flatMenus||[]).filter(i=>i.title?.includes(c)):[];return[{id:ue,title:"搜索",icon:VtjIcons.Search,children:d?.length?d:[{id:ue+"empty",disabled:!0,title:"查询匹配不到菜单项"}]}]}),s=c=>{u("select",c)};return(c,d)=>(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,null,[Vue.withDirectives(Vue.createVNode(Vue.unref(P),{class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:Vue.withCtx(()=>[Vue.withDirectives(Vue.createVNode(Vue.unref(H),{subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:o.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!0,"collapse-transition":!1,"default-active":l.value,onSelect:s},null,8,["data","default-icon","default-active"]),[[Vue.vShow,e.collapse]]),Vue.withDirectives(Vue.createVNode(Vue.unref(H),{subMenu:{popperClass:"x-mask-menu-popper",teleported:!0},data:o.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!1,"collapse-transition":!1,"default-active":l.value,onSelect:s},null,8,["data","default-icon","default-active"]),[[Vue.vShow,!e.collapse]]),o.value.length?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElEmpty),{key:0,description:"暂无菜单数据"}))]),_:1},512),[[Vue.vShow,!e.favorite&&!e.keyword]]),Vue.withDirectives(Vue.createVNode(Vue.unref(P),{class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:Vue.withCtx(()=>[Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__favorites",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:a.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!0,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ne],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,e.collapse]]),Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__favorites",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:a.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!1,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ne],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,!e.collapse]])]),_:1},512),[[Vue.vShow,e.favorite&&!e.keyword]]),e.keyword?Vue.withDirectives((Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:Vue.withCtx(()=>[Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__search",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:r.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!0,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ue],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,e.collapse]]),Vue.withDirectives(Vue.createVNode(Vue.unref(H),{class:"x-mask-menu__search",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:r.value,"default-icon":Vue.unref(VtjIcons.Document),collapse:!1,"collapse-transition":!1,"default-active":l.value,"default-openeds":[ue],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[Vue.vShow,!e.collapse]])]),_:1},512)),[[Vue.vShow,!!e.keyword]]):Vue.createCommentVNode("",!0)],64))}}),Co="data:image/png;base64,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",ot=140,nt={logo:{type:String,default:Co},title:{type:String,default:"VTJ.PRO"},menus:{type:[Array,Function],default(){return[]}},favorites:{type:[Array,Function],default(){return[]}},menuAdapter:{type:Function},home:{type:[String,Object],default:"/"},tabs:{type:Number,default:20},actions:{type:Array},avatar:{type:String},theme:{type:Boolean},disabled:{type:Boolean},addFavorite:{type:Function},removeFavorite:{type:Function}},ye=Symbol(),ve=Symbol(),_o={class:"x-mask-tabs__trigger"},Bo={key:1},So=["onDragstart","onDragend"],xo={key:1},Eo=Vue.defineComponent({__name:"Tabs",props:{tabs:{},home:{},isActiveTab:{type:Function},value:{},favorites:{}},emits:["click","remove","refresh","toggleFavorite","dialog"],setup(n,{emit:t}){const e=n,o=t,u=d=>{const i=!!e.favorites.find(V=>V===d.menu||V.id===d.menu?.id);return[{icon:VtjIcons.Refresh,label:"刷新",name:"refresh",value:d},"|",{icon:i?VtjIcons.StarFilled:VtjIcons.Star,label:"收藏",name:"favorite",value:d.menu,disabled:!d.menu},"|",{icon:VtjIcons.CopyDocument,label:"弹窗",name:"dialog",value:d}]},l=d=>{const i=d.paneName;if(i===e.home.id){o("click",e.home);return}const V=e.tabs.find(p=>p.id===i);V&&o("click",V)},a=d=>{const i=e.tabs.find(V=>V.id===d);i&&o("remove",i)},r=d=>{switch(d.name){case"refresh":o("refresh",d.value);break;case"favorite":o("toggleFavorite",d.value);break;case"dialog":o("dialog",d.value);break}},s=(d,i)=>{i.dataTransfer&&(i.dataTransfer.setData("tab",d.id),i.target&&i.target.classList.add("is-dagging"))},c=(d,i)=>{i.target&&i.target.classList.remove("is-dagging")};return(d,i)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{ref:"tabsRef",class:"x-mask-tabs",height:"100%",grow:"",flex:"",justify:"flex-end",direction:"column"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElTabs),{type:"card","model-value":e.value,onTabRemove:a,onTabClick:l},{default:Vue.withCtx(()=>[e.home?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabPane),{key:0,name:e.home.id},{label:Vue.withCtx(()=>[Vue.createElementVNode("div",_o,[e.home.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(e.home.icon)),{key:0})):Vue.createCommentVNode("",!0),e.home.title?(Vue.openBlock(),Vue.createElementBlock("span",Bo,Vue.toDisplayString(e.home.title),1)):Vue.createCommentVNode("",!0)])]),_:1},8,["name"])):Vue.createCommentVNode("",!0),(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.tabs,V=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabPane),{key:V.id,name:V.id,lazy:"",closable:""},{label:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElPopover),{"open-delay":500,placement:"bottom",trigger:"hover",width:"200px",disabled:V.id!==e.value},{reference:Vue.withCtx(()=>[Vue.createElementVNode("div",{class:"x-mask-tabs__trigger",draggable:"true",onDragstart:p=>s(V,p),onDragend:p=>c(V,p)},[V.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(V.icon)),{key:0})):Vue.createCommentVNode("",!0),V.title?(Vue.openBlock(),Vue.createElementBlock("span",xo,Vue.toDisplayString(V.title),1)):Vue.createCommentVNode("",!0)],40,So)]),default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(Q),{items:u(V),mode:"text",size:"small",type:"info",onClick:r},null,8,["items"])]),_:2},1032,["disabled"])]),_:2},1032,["name"]))),128))]),_:1},8,["model-value"])]),_:1},512))}}),Po=Vue.defineComponent({__name:"ThemeSwitch",setup(n){const t=qt();return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSwitch),{class:"x-mask-theme-switch",modelValue:Vue.unref(t),"onUpdate:modelValue":o[0]||(o[0]=u=>Vue.isRef(t)?t.value=u:null),size:"default","active-action-icon":Vue.unref(VtjIcons.Moon),"inactive-action-icon":Vue.unref(VtjIcons.Sunny)},null,8,["modelValue","active-action-icon","inactive-action-icon"]))}}),No={class:"x-mask-toolbar__menu-item"},zo=Vue.defineComponent({__name:"Toolbar",props:{tabs:{default:()=>[]},actions:{},theme:{type:Boolean}},emits:["closeOtherTabs","closeAllTabs","closeTab","clickTab","actionClick","actionCommand"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>{const c=e.tabs.map((d,i)=>({divided:i===0,label:d.title,command:d}));return[{label:"关闭其他",command:"other"},{label:"关闭全部",command:"all"},...c]}),l=c=>{o("closeTab",c.command)},a=c=>{switch(c.command){case"all":o("closeAllTabs");break;case"other":o("closeOtherTabs");break;default:o("clickTab",c.command);break}},r=c=>{o("actionClick",c)},s=(c,d)=>{o("actionCommand",c,d)};return(c,d)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-mask-toolbar",align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(O),{icon:Vue.unref(VtjIcons.MoreFilled),menus:u.value,dropdown:{size:"small"},mode:"icon",circle:"",background:"hover",onCommand:a},{item:Vue.withCtx(({item:i})=>[Vue.createElementVNode("span",No,[Vue.createTextVNode(Vue.toDisplayString(i.label)+" ",1),["other","all"].includes(i.command)?Vue.createCommentVNode("",!0):(Vue.openBlock(),Vue.createBlock(Vue.unref(L),{key:0,onClick:Vue.withModifiers(V=>l(i),["stop"]),icon:Vue.unref(VtjIcons.Close)},null,8,["onClick","icon"]))])]),_:1},8,["icon","menus"]),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),{direction:"vertical"}),e.actions?(Vue.openBlock(),Vue.createBlock(Vue.unref(Q),{key:0,circle:"",mode:"icon",size:"default",background:"hover",items:c.actions,onClick:r,onCommand:s},null,8,["items"])):Vue.createCommentVNode("",!0),e.actions?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDivider),{key:1,direction:"vertical"})):Vue.createCommentVNode("",!0),e.theme?(Vue.openBlock(),Vue.createBlock(Po,{key:2})):Vue.createCommentVNode("",!0),e.theme?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDivider),{key:3,direction:"vertical"})):Vue.createCommentVNode("",!0),Vue.renderSlot(c.$slots,"default")]),_:3}))}}),To=Vue.defineComponent({__name:"Avatar",props:{avatar:{}},setup(n){const t=n;return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElPopover),{width:200,"popper-class":"x-mask-avatar__popper",disabled:!e.$slots.default},{reference:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElAvatar),{class:"x-mask-avatar",shape:"circle",icon:Vue.unref(VtjIcons.UserFilled),src:t.avatar,size:26},null,8,["icon","src"])]),default:Vue.withCtx(()=>[e.$slots.default?Vue.renderSlot(e.$slots,"default",{key:0}):Vue.createCommentVNode("",!0)]),_:3},8,["disabled"]))}}),ut=Vue.defineComponent({__name:"Content",props:{createView:{type:Function},exclude:{}},setup(n){const t=n;return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:"x-mask__content",flex:!1,grow:"",padding:!1},{default:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"default"),Vue.createVNode(Vue.unref(VueRouter.RouterView),null,{default:Vue.withCtx(({Component:u,route:l})=>[(Vue.openBlock(),Vue.createBlock(Vue.KeepAlive,{exclude:t.exclude},[u?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(t.createView(u,l)),{key:l.fullPath})):Vue.createCommentVNode("",!0)],1032,["exclude"]))]),_:1})]),_:3}))}});function Do(){const n=Vue.ref(!1),t=Vue.ref(""),e=Vue.ref(!1);return{collapsed:n,keyword:t,favorite:e}}function Io(n){const t=VtjUtils.uid();return Vue.computed(()=>{const e=n.home;return Object.assign({id:t,url:"/",name:"MaskHome",icon:VtjIcons.HomeFilled,closable:!1},typeof e=="string"?{url:e}:e||{})})}function lt(n,t){let e=[];return n.forEach(o=>{o=t?t(o):o,o.children?e=e.concat(lt(o.children,t)):e.push(o)}),e}function Mo(n,t){const e=VueRouter.useRouter(),o=Vue.shallowRef([]),u=Vue.shallowRef([]),l=Vue.computed(()=>lt(o.value,n.menuAdapter)),a=Vue.computed(()=>VtjUtils.arrayToMap(l.value,"id")),r=Vue.ref(null),s=m=>{const y=typeof m=="object"?m.id:m,g=a.value.get(y);if(!g){console.warn("找不到菜单",m);return}const{type:C="route",url:B,title:k,icon:_}=g;if(!B){r.value=g,t("select",g);return}if(C==="route"){VtjUtils.isUrl(B)||B.startsWith("//")?window.open(B):(r.value=g,e.push(B).catch(h=>h));return}if(C==="window"){window.open(B);return}C==="dialog"&&oe({resizable:!0,bodyPadding:!1,width:"80%",height:"80%",title:k,icon:_,src:B})},c=async()=>{o.value=typeof n.menus=="function"?await n.menus()||[]:n.menus??[],u.value=typeof n.favorites=="function"?await n.favorites()||[]:n.favorites??[]},d=m=>{u.value=[m,...u.value],n.addFavorite&&n.addFavorite(m)},i=m=>{u.value=u.value.filter(y=>y.id!==m.id),n.removeFavorite&&n.removeFavorite(m)},V=m=>!!u.value.find(y=>y===m||y.id===m.id),p=m=>{V(m)?i(m):d(m)};return Vue.watchEffect(c),{menus:o,favorites:u,flatMenus:l,active:r,select:s,toggleFavorite:p}}function Ro(n,t,e,o,u){const l=VueRouter.useRoute(),a=VueRouter.useRouter(),r={},s=Vue.ref([]),c=Vue.ref(),{width:d}=pe(c),i=Vue.computed(()=>Math.floor(d.value/ot)),V=Vue.computed(()=>s.value.slice(0,i.value).filter(x=>!x.dialog)),p=Vue.computed(()=>s.value.slice(i.value)),m=x=>e.value.find(T=>T.url===x),y=x=>l.fullPath===x.url,g=x=>u.value.id===x?u.value:s.value.find(T=>T.id===x),C=Vue.ref(""),B=Vue.computed(()=>g(C.value)),k=x=>{a.push(x.url).catch(T=>T)},_=x=>{C.value=x.id,l.fullPath!==x.url&&k(x)},h=()=>{k(u.value)},S=x=>{const T=s.value.find(D=>D.url===x.url||D.id===x.id);T?_(T):(s.value.unshift(x),_(x))},f=async x=>{const{url:T=l.fullPath,icon:D,title:le="新建标签页"}=x||{},re=r[T],Be=VtjUtils.uid(),Se=VtjUtils.upperFirstCamelCase(T);return{id:Be,name:Se,url:T,icon:D,title:le,closable:!0,menu:x,...re?await re():{}}},E=async x=>{if(await ElementPlus.ElMessageBox.confirm("是否关闭页签","提示",{type:"warning"}).catch(()=>!1)){if(s.value=s.value.filter(D=>D.id!==x.id),C.value===x.id){const D=s.value[0];k(D||u.value)}return x}},b=x=>{const T=s.value.findIndex(D=>D.id===x.id);if(T>=0){const D=s.value[T];s.value.splice(T,1,Object.assign(D,x))}},N=async()=>{if(!await ElementPlus.ElMessageBox.confirm("是否关闭全部页签","提示",{type:"warning"}).catch(()=>!1))return;const T=s.value;return s.value=[],_(u.value),T},z=async()=>{if(!await ElementPlus.ElMessageBox.confirm("是否关闭其他页签","提示",{type:"warning"}).catch(()=>!1))return;const T=s.value.filter(D=>D.id!==C.value);return s.value=s.value.filter(D=>D.id===C.value),T},M=x=>{const T=s.value.filter(D=>D.id!==x.id);s.value=[x,...T],_(x)},A=async()=>{await Vue.nextTick();const x=u.value.url===l.fullPath,T=m(l.fullPath);if(x)C.value=u.value.id;else{const D=await f(T);S(D)}await Vue.nextTick(),o.value=T||null};return Vue.watch(e,A),Vue.watch(l,A,{immediate:!0}),Vue.provide(ye,r),{tabRef:c,tabs:s,showTabs:V,currentTab:B,changeTab:k,removeTab:E,updateTab:b,addTab:S,home:u,tabValue:C,isCurrentTab:y,activeHome:h,activeTab:_,dropdownTabs:p,removeAllTabs:N,removeOtherTabs:z,moveToShow:M}}function $o(n){const t=new Map,e=Vue.ref([]),o=Vue.reactive({}),u=Vue.getCurrentInstance(),l={},{updateTab:a,isCurrentTab:r,activeHome:s,tabs:c}=n,d=(k,_)=>{const h=_.fullPath;if(t.has(h))return t.get(h);{const S=VtjUtils.upperFirstCamelCase(h),f={name:S,setup(){const E=Vue.computed(()=>o[h]||document.body),b=Vue.computed(()=>!o[h]),N=Vue.computed(()=>!e.value.includes(S));return Vue.provide(VueRouter.routeLocationKey,Vue.toRaw({..._})),()=>N.value?Vue.h(Vue.Teleport,{to:E.value,disabled:b.value},[Vue.h(k)]):null}};return t.set(h,f),f}},i=k=>{k.dialog=void 0,delete o[k.url];const _=l[k.id];_&&(_.destroy(),delete l[k.id],a(k))},V=(k=[])=>{k.forEach(_=>{i(_)})},p=async k=>{k.dialog={...k.dialog,onMinimized:()=>{i(k)},onClose:async()=>{i(k),c.value=c.value.filter(h=>h.id!==k.id)}},a(k);const _=oe({title:k.title,icon:k.icon,modal:!1,resizable:!0,draggable:!0,maximizable:!0,minimizable:!0,...k.dialog,onOpen(h){o[k.url]=h.refs.panelRef?.bodyRef?.$el}},u?.appContext);return await Vue.nextTick(),r(k)&&s(),l[k.id]=_,_},m=async k=>{e.value=[k.name],await Vue.nextTick(),e.value=[]},y=async k=>{e.value=k.map(_=>_.name),await Vue.nextTick(),e.value=[]},g=k=>(k.preventDefault(),!1),C=k=>{if(k.dataTransfer){const _=k.dataTransfer.getData("tab"),h=c.value.find(S=>S.id===_);if(h){const{clientX:S,clientY:f}=k;h.dialog={left:S,top:f},p(h)}}},B=k=>!!o[k];return $(document,"dragover",g),$(document,"drop",C),{createView:d,openDialog:p,refresh:m,exclude:e,cleanCache:y,hasDialog:B,closeDialog:i,closeDialogs:V}}const rt=Vue.defineComponent({name:"XMask",__name:"Mask",props:nt,emits:["select","actionClick","actionCommand"],setup(n,{emit:t}){const e=n,o=t,u=Io(e),{collapsed:l,keyword:a,favorite:r}=Do(),{menus:s,favorites:c,flatMenus:d,active:i,select:V,toggleFavorite:p}=Mo(e,o),{tabRef:m,showTabs:y,currentTab:g,changeTab:C,removeTab:B,tabs:k,updateTab:_,isCurrentTab:h,activeHome:S,removeAllTabs:f,removeOtherTabs:E,dropdownTabs:b,moveToShow:N}=Ro(e,o,d,i,u),{createView:z,openDialog:M,refresh:A,exclude:x,cleanCache:T,closeDialogs:D}=$o({tabs:k,updateTab:_,isCurrentTab:h,activeHome:S}),le=async I=>{await B(I)&&await T([I])},re=async()=>{const I=await f();I&&(D(I),await T(I))},Be=async()=>{const I=await E();I&&(D(I),await T(I))},Se=I=>{o("actionClick",I)},fn=(I,X)=>{o("actionCommand",I,X)};return Vue.provide(ve,{tabs:k,flatMenus:d,favorites:c,updateTab:_,active:i,currentTab:g}),(I,X)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-mask",{"is-disabled":e.disabled}]),fit:""},{default:Vue.withCtx(()=>[e.disabled?(Vue.openBlock(),Vue.createBlock(ut,{key:1,createView:Vue.unref(z),exclude:Vue.unref(x)},{default:Vue.withCtx(()=>[I.$slots.default?Vue.renderSlot(I.$slots,"default",{key:0}):Vue.createCommentVNode("",!0)]),_:3},8,["createView","exclude"])):(Vue.openBlock(),Vue.createElementBlock(Vue.Fragment,{key:0},[Vue.createVNode(ho,{collapsed:Vue.unref(l)},{brand:Vue.withCtx(()=>[Vue.createVNode(bo,{logo:e.logo,title:e.title,url:Vue.unref(u).url,collapsed:Vue.unref(l)},null,8,["logo","title","url","collapsed"])]),default:Vue.withCtx(()=>[Vue.createVNode(yo,{collasped:Vue.unref(l),"onUpdate:collasped":X[0]||(X[0]=Z=>Vue.isRef(l)?l.value=Z:null),favorite:Vue.unref(r),"onUpdate:favorite":X[1]||(X[1]=Z=>Vue.isRef(r)?r.value=Z:null),keyword:Vue.unref(a),"onUpdate:keyword":X[2]||(X[2]=Z=>Vue.isRef(a)?a.value=Z:null)},null,8,["collasped","favorite","keyword"]),Vue.createVNode(wo,{collapse:Vue.unref(l),keyword:Vue.unref(a),favorite:Vue.unref(r),favorites:Vue.unref(c),flatMenus:Vue.unref(d),menus:Vue.unref(s),active:Vue.unref(i),onSelect:Vue.unref(V)},null,8,["collapse","keyword","favorite","favorites","flatMenus","menus","active","onSelect"])]),_:1},8,["collapsed"]),Vue.createVNode(Vue.unref(P),{class:"x-mask__main",grow:"",shrink:"",flex:"",direction:"column"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(P),{class:"x-mask-topbar",justify:"space-between",align:"center"},{default:Vue.withCtx(()=>[Vue.createVNode(Eo,{ref_key:"tabRef",ref:m,favorites:Vue.unref(c),tabs:Vue.unref(y),home:Vue.unref(u),value:Vue.unref(g)?.id,onClick:Vue.unref(C),onToggleFavorite:Vue.unref(p),onRemove:le,onDialog:Vue.unref(M),onRefresh:Vue.unref(A)},null,8,["favorites","tabs","home","value","onClick","onToggleFavorite","onDialog","onRefresh"]),Vue.createVNode(zo,{tabs:Vue.unref(b),actions:e.actions,theme:e.theme,onCloseOtherTabs:Be,onCloseAllTabs:re,onCloseTab:le,onClickTab:Vue.unref(N),onActionClick:Se,onActionCommand:fn},{default:Vue.withCtx(()=>[Vue.createVNode(To,{avatar:e.avatar},Vue.createSlots({_:2},[I.$slots.user?{name:"default",fn:Vue.withCtx(()=>[Vue.renderSlot(I.$slots,"user")]),key:"0"}:void 0]),1032,["avatar"])]),_:3},8,["tabs","actions","theme","onClickTab"])]),_:3}),Vue.createVNode(ut,{createView:Vue.unref(z),exclude:Vue.unref(x)},{default:Vue.withCtx(()=>[I.$slots.default?Vue.renderSlot(I.$slots,"default",{key:0}):Vue.createCommentVNode("",!0)]),_:3},8,["createView","exclude"])]),_:3})],64))]),_:3},8,["class"]))}});function jo(n={}){const t=VueRouter.useRoute(),e=Vue.inject(ye,null),o=Vue.inject(ve,null);if(e){const l=typeof n=="function"?n:async()=>n;e[t.fullPath]=l}return{tab:Vue.computed(()=>o?o.tabs.value.find(l=>l.url===t.fullPath):null),mask:o}}const Ao=Vue.defineComponent({__name:"SelectEditor",props:{options:{default:()=>[]}},setup(n){const t=n;return(e,o)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElSelect),Vue.normalizeProps(Vue.guardReactiveProps(e.$attrs)),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.options,(u,l)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElOption),Vue.mergeProps({key:`item_${l}_${u.value}`},u),Vue.createSlots({_:2},[e.$slots.option?{name:"default",fn:Vue.withCtx(()=>[Vue.renderSlot(e.$slots,"option",{option:u})]),key:"0"}:void 0]),1040))),128))]),_:3},16))}}),Oo=Vue.defineComponent({__name:"CheckboxEditor",props:{options:{default:()=>[]},button:{type:Boolean,default:!1}},setup(n){const t=n,e=Vue.computed(()=>Vue.markRaw(t.button?ElementPlus.ElCheckboxButton:ElementPlus.ElCheckbox));return(o,u)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElCheckboxGroup),Vue.normalizeProps(Vue.guardReactiveProps(o.$attrs)),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.options,(l,a)=>(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(e.value),{key:`item_${a}_${l.value}`,label:l.value},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(l.label),1)]),_:2},1032,["label"]))),128))]),_:1},16))}}),Fo=Vue.defineComponent({__name:"RadioEditor",props:{options:{default:()=>[]},button:{type:Boolean,default:!1}},setup(n){const t=n,e=Vue.computed(()=>Vue.markRaw(t.button?ElementPlus.ElRadioButton:ElementPlus.ElRadio));return(o,u)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElRadioGroup),Vue.normalizeProps(Vue.guardReactiveProps(o.$attrs)),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.options,(l,a)=>(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(e.value),{key:`item_${a}_${l.value}`,label:l.value},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(l.label),1)]),_:2},1032,["label"]))),128))]),_:1},16))}}),ke={none:{component:"div",props:{class:"x-field-none"}},text:{component:ElementPlus.ElInput,props:{clearable:!0},defaultValue:""},textarea:{component:ElementPlus.ElInput,props:{type:"textarea",rows:2},defaultValue:""},select:{component:Ao,props:{clearable:!0}},checkbox:{component:Oo,props:{},defaultValue:[]},radio:{component:Fo,props:{}},number:{component:ElementPlus.ElInputNumber,props:{}},date:{component:ElementPlus.ElDatePicker,props:{}},time:{component:ElementPlus.ElTimePicker,props:{}},datetime:{component:ElementPlus.ElDatePicker,props:{type:"datetime"}},switch:{component:ElementPlus.ElSwitch,props:{}},rate:{component:ElementPlus.ElRate,props:{}},slider:{component:ElementPlus.ElSlider,props:{}},cascader:{component:ElementPlus.ElCascader,props:{}}},at={name:{type:String},label:{type:String},editor:{type:[String,Object],default:"text"},props:{type:Object},modelValue:{type:[String,Number,Boolean,Object,Array],default(n){return ke[n.editor]?.defaultValue}},size:{type:String},width:{type:[String,Number]},tooltipMessage:{type:[Boolean,Object],default:!0},tooltipPosition:{type:[String,Number],default:"outer"},placeholder:{type:String},disabled:{type:Boolean},readonly:{type:Boolean},options:{type:[Array,Function]},visible:{type:[Boolean,Object,Function],default:!0},cascader:{type:[String,Array]},error:{type:String},tip:{type:String},inline:{type:Boolean}};async function Lo(n,t){const e=n.options;return e?typeof e=="function"?await e(t)||[]:e:[]}function Uo(n,t,e,o,u){const l=Vue.ref([]),a=Vue.computed(()=>!o||!u?{}:VtjUtils.toArray(n.cascader).reduce((c,d)=>(c[d]=VtjUtils.get(u,d),c),{}));return Vue.watch(a,async s=>{if(e.value){l.value=await Lo(n,s);const c=o?.exposed?.reset;c&&n.name&&c(n.name)}},{immediate:!0}),{editor:Vue.computed(()=>{const{editor:s="text",placeholder:c,label:d="...",disabled:i,readonly:V}=n,p={...n.props,placeholder:c||(c===null?void 0:`请输入${d}`),disabled:i,readonly:V,options:l.value,onFocus:()=>t("focus"),onBlur:()=>t("blur"),onChange:y=>t("change",y)},m=typeof s=="string"?ke[s]:{component:s,props:{}};return VtjUtils.merge({},m,{props:p})})}}const Xo={key:1,class:"el-form-item__error"},Ho={key:0,class:"x-field__tip"},be=Vue.defineComponent({name:"XField",__name:"Field",props:at,emits:["update:modelValue","change","focus","blur"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.inject(we,null),a=Vue.inject(ElementPlus.formContextKey,null),r=Vue.inject(Ce,null),s=Vue.computed(()=>!l?.proxy||!r?o.visible:typeof o.visible=="function"?o.visible(r):VtjUtils.isObject(o.visible)?Object.entries(o.visible).every(([E,b])=>VtjUtils.get(r,E)===b):o.visible),c=()=>l?.proxy&&r&&o.name?VtjUtils.get(r,o.name)??o.modelValue:o.modelValue,d=Vue.ref(c()),{editor:i}=Uo(o,u,s,l,r),V=Vue.ref(),p=Vue.ref(),m=Vue.computed(()=>o.size||a?.size||"default"),y=Vue.computed(()=>Object.assign({},l?.props.tooltipMessage||{},typeof o.tooltipMessage=="boolean"?{}:o.tooltipMessage)),g=(f="")=>o.error?o.error:f.includes("is required")?`${o.label||o.name}是必填项!`:f,C=Vue.computed(()=>{const f=l?.props.tooltipMessage??o.tooltipMessage;return{[`is-tooltip-${o.tooltipPosition}`]:!!f&&!!o.tooltipPosition}}),B=Vue.computed(()=>{const f=l?.proxy;return{width:o.width?j(o.width):f&&f.inline&&f.inlineColumns?`${100/f.inlineColumns}%`:null}}),k=Vue.computed(()=>({right:typeof o.tooltipPosition=="number"?`${o.tooltipPosition}px`:void 0})),_=Vue.computed(()=>({...i.value.props,modelValue:d.value,"onUpdate:modelValue":f=>{d.value=f}}));return Vue.watch(d,(f,E)=>{s.value&&!VtjUtils.isEqual(f,E)&&(u("update:modelValue",f),l?.proxy&&r&&o.name&&VtjUtils.set(r,o.name,f))}),Vue.watch(()=>!l?.proxy||!o.name||!r?o.modelValue:VtjUtils.get(r,o.name)??o.modelValue,f=>{s.value&&(d.value=f)},{immediate:!0}),Vue.watch(s,f=>{l?.proxy&&r&&o.name&&(f?(d.value=c(),VtjUtils.set(r,o.name,d.value)):(d.value=void 0,VtjUtils.set(r,o.name,void 0)))},{immediate:!0}),t({fieldValue:d,itemRef:V,editorRef:p,focus:()=>{p.value?.focus&&p.value.focus()},blur:()=>{p.value?.foucs&&p.value.blur()}}),(f,E)=>s.value?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElFormItem),Vue.mergeProps({key:0,class:["x-field",C.value],ref_key:"itemRef",ref:V,prop:o.name,label:f.label,size:m.value,style:B.value},f.$attrs),Vue.createSlots({error:Vue.withCtx(({error:b})=>[Vue.renderSlot(f.$slots,"error",{error:b},()=>[Vue.unref(l)?.props.tooltipMessage??o.tooltipMessage?(Vue.openBlock(),Vue.createElementBlock("div",{key:0,class:"x-field__info",style:Vue.normalizeStyle(k.value)},[Vue.createVNode(Vue.unref(ElementPlus.ElTooltip),Vue.mergeProps({content:g(b)},y.value),{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(L),{class:"x-field__trigger",icon:Vue.unref(VtjIcons.WarningFilled),size:m.value},null,8,["icon","size"])]),_:2},1040,["content"])],4)):(Vue.openBlock(),Vue.createElementBlock("div",Xo,Vue.toDisplayString(g(b)),1))])]),default:Vue.withCtx(()=>[Vue.createElementVNode("div",{class:Vue.normalizeClass(["x-field__editor_wrap",{"is-inline":o.inline}])},[Vue.renderSlot(f.$slots,"editor",{editor:_.value},()=>[Vue.unref(i).component?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(i).component),Vue.mergeProps({key:0,class:"x-field__editor",ref_key:"editorRef",ref:p,modelValue:d.value,"onUpdate:modelValue":E[0]||(E[0]=b=>d.value=b)},Vue.unref(i).props),Vue.createSlots({_:2},[f.$slots.option?{name:"option",fn:Vue.withCtx(({option:b})=>[Vue.renderSlot(f.$slots,"option",{option:b})]),key:"0"}:void 0]),1040,["modelValue"])):Vue.createCommentVNode("",!0)]),o.tip||f.$slots.tip?(Vue.openBlock(),Vue.createElementBlock("div",Ho,[Vue.renderSlot(f.$slots,"tip",{},()=>[Vue.createTextVNode(Vue.toDisplayString(o.tip),1)])])):Vue.createCommentVNode("",!0)],2),Vue.renderSlot(f.$slots,"default")]),_:2},[f.$slots.label?{name:"label",fn:Vue.withCtx(()=>[Vue.renderSlot(f.$slots,"label")]),key:"0"}:void 0]),1040,["prop","label","size","class","style"])):Vue.createCommentVNode("",!0)}}),st={model:{type:Object,default(){return Object.create(null)}},inline:{type:Boolean},inlineColumns:{type:Number},footer:{type:Boolean,default:!0},submitText:{type:String,default:"提交"},resetText:{type:String,default:"重置"},submitMethod:{type:Function},tooltipMessage:{type:[Object,Boolean],default:void 0}},we=Symbol("formInstanceKey"),Ce=Symbol("formModelKey"),_e=Vue.defineComponent({name:"XForm",__name:"Form",props:st,emits:["change","submit","reset"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.getCurrentInstance(),a=Vue.ref(),r=Vue.reactive(o.model||{}),s=Vue.ref(!1);Vue.provide(we,l),Vue.provide(Ce,r),Vue.watch(r,()=>{u("change",Vue.toRaw(r))}),Vue.watch(()=>o.model,i=>{Object.assign(r,i)},{deep:!0});const c=async()=>{await a.value.validate().catch(()=>!1)&&(u("submit",Vue.toRaw(r)),o.submitMethod&&(s.value=!0,await o.submitMethod(Vue.toRaw(r)),s.value=!1))},d=i=>{a.value.resetFields(i),u("reset")};return t({formRef:a,model:r,submit:c,reset:d}),(i,V)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElForm),Vue.mergeProps({ref_key:"formRef",ref:a,class:"x-form",inline:o.inline,model:r,onKeyup:Vue.withKeys(c,["enter"]),onSubmit:V[1]||(V[1]=Vue.withModifiers(()=>{},["stop","prevent"]))},i.$attrs),{default:Vue.withCtx(()=>[Vue.renderSlot(i.$slots,"default"),o.footer?(Vue.openBlock(),Vue.createBlock(Vue.unref(be),{key:0,editor:"none",class:"x-form__footer",label:" "},{editor:Vue.withCtx(()=>[Vue.renderSlot(i.$slots,"footer",{},()=>[o.submitText?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:0,loading:s.value,type:"primary",onClick:c},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(o.submitText),1)]),_:1},8,["loading"])):Vue.createCommentVNode("",!0),o.resetText?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElButton),{key:1,type:"default",onClick:V[0]||(V[0]=()=>d())},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(o.resetText),1)]),_:1})):Vue.createCommentVNode("",!0),Vue.renderSlot(i.$slots,"action")])]),_:3})):Vue.createCommentVNode("",!0)]),_:3},16,["inline","model"]))}}),it={modelValue:{type:Boolean,default:!0},size:{type:String},formProps:{type:Object},submit:{type:[Boolean,String],default:"确定"},cancel:{type:[Boolean,String],default:"取消"},model:{type:Object,default(){return Object.create(null)}},rules:{type:Object},submitMethod:{type:Function}},ct=Vue.defineComponent({name:"XDialogForm",__name:"DialogForm",props:it,emits:["update:modelValue","submit","close"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.ref(),a=Vue.ref(),r=Vue.computed(()=>a.value?.$vtjEl),s=()=>{l.value?.submit()},c=()=>{u("update:modelValue",!1),u("close")},d=async p=>{u("submit",p),o.submitMethod?await o.submitMethod(p)&&c():c()},i=Vue.computed(()=>o.formProps?.disabled?!1:o.submit),V=Vue.computed(()=>o.formProps?.disabled?!1:o.cancel);return t({$vtjEl:r,formRef:l,dialogRef:a}),(p,m)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(te),Vue.mergeProps({ref_key:"dialogRef",ref:a,class:"x-dialog-form","model-value":o.modelValue,submit:i.value,cancel:V.value,size:o.size,onSubmit:s,onClose:c,minimizable:!1,maximizable:!1},p.$attrs),Vue.createSlots({default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(_e),Vue.mergeProps({ref_key:"formRef",ref:l,class:"x-dialog-form__form",footer:!1,"label-width":"80px",size:o.size,model:o.model,rules:o.rules,"submit-method":d},o.formProps),{default:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"default")]),_:3},16,["size","model","rules"])]),_:2},[p.$slots.extra?{name:"extra",fn:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"extra")]),key:"0"}:void 0,p.$slots.handle?{name:"handle",fn:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"handle")]),key:"1"}:void 0,p.$slots.footer?{name:"footer",fn:Vue.withCtx(()=>[Vue.renderSlot(p.$slots,"footer")]),key:"2"}:void 0]),1040,["model-value","submit","cancel","size"]))}}),dt={items:{type:Array,default(){return[]}},border:{type:Boolean}},Vt=Vue.defineComponent({name:"XTabs",__name:"Tabs",props:dt,setup(n){const t=n,e=u=>{const{label:l,name:a,value:r,disabled:s,closable:c,lazy:d}=u;return{label:l,name:r??a,disabled:s,closable:c,lazy:d}},o=Vue.computed(()=>({"is-no-border":!t.border}));return(u,l)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabs),Vue.mergeProps({class:["x-tabs",o.value]},u.$attrs),{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t.items,a=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElTabPane),Vue.mergeProps({key:a.value??a.name},e(a)),{label:Vue.withCtx(()=>[Vue.renderSlot(u.$slots,"label",Vue.normalizeProps(Vue.guardReactiveProps(a)),()=>[a.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(a.icon)),{key:0,class:"x-tabs__icon"})):Vue.createCommentVNode("",!0),Vue.createTextVNode(" "+Vue.toDisplayString(a.label),1)])]),default:Vue.withCtx(()=>[Vue.renderSlot(u.$slots,"default",Vue.normalizeProps(Vue.guardReactiveProps(a)),()=>[a.component?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(a.component),Vue.normalizeProps(Vue.mergeProps({key:0},a.props)),null,16)):Vue.createCommentVNode("",!0)])]),_:2},1040))),128))]),_:3},16,["class"]))}}),pt={direction:{type:String,default:"column"},imageSrc:{type:String},imageWidth:{type:[Number,String]},imageHeight:{type:[Number,String]},icon:{type:[String,Object]},title:{type:String},description:{type:String},actions:{type:Array},actionBarProps:{type:Object},split:{type:Boolean},onImageClick:{type:Function},onTitleClick:{type:Function}},Wo={class:"x-data-item__title"},Ko={key:1,class:"x-data-item__section x-data-item__desc"},Jo={key:2,class:"x-data-item__section x-data-item__extra"},Yo={key:3,class:"x-data-item__section x-data-item__actions"},ft=Vue.defineComponent({name:"XDataItem",__name:"DataItem",props:pt,emits:["imageClick","titleClick","actionClick","actionCommand"],setup(n,{emit:t}){const e=n,o=t,u=Vue.computed(()=>{const{imageWidth:i,imageHeight:V}=e;return{width:i?j(i):void 0,height:V?j(V):void 0}}),l=Vue.computed(()=>({[`is-image-${e.direction}`]:!!e.direction,"is-split":!!e.split})),a=Vue.computed(()=>({size:"small",mode:"text",justify:"flex-end",type:"info",items:e.actions,...e.actionBarProps})),r=()=>o("imageClick"),s=()=>o("titleClick"),c=i=>o("actionClick",i),d=(i,V)=>o("actionCommand",i,V);return(i,V)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{class:Vue.normalizeClass(["x-data-item",l.value]),direction:e.direction},{default:Vue.withCtx(()=>[e.imageSrc||i.$slots.image?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-data-item__img",autoPointer:!0,onClick:e.onImageClick?r:void 0},{default:Vue.withCtx(()=>[Vue.renderSlot(i.$slots,"image",{},()=>[e.imageSrc?(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElImage),{key:0,style:Vue.normalizeStyle(u.value),src:e.imageSrc},null,8,["style","src"])):Vue.createCommentVNode("",!0)])]),_:3},8,["onClick"])):Vue.createCommentVNode("",!0),Vue.createVNode(Vue.unref(P),{class:"x-data-item__content",direction:"column",grow:"",shrink:""},{default:Vue.withCtx(()=>[e.title||i.$slots.title?(Vue.openBlock(),Vue.createBlock(Vue.unref(P),{key:0,class:"x-data-item__section x-data-item__wrapper",align:"center",autoPointer:!0,onClick:e.onTitleClick?s:void 0},{default:Vue.withCtx(()=>[e.icon?(Vue.openBlock(),Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(W)(e.icon)),{key:0,class:"x-data-item__icon"})):Vue.createCommentVNode("",!0),Vue.createElementVNode("span",Wo,[Vue.renderSlot(i.$slots,"title",{},()=>[Vue.createTextVNode(Vue.toDisplayString(e.title),1)])])]),_:3},8,["onClick"])):Vue.createCommentVNode("",!0),e.description||i.$slots.description?(Vue.openBlock(),Vue.createElementBlock("div",Ko,[Vue.renderSlot(i.$slots,"description",{},()=>[Vue.createTextVNode(Vue.toDisplayString(e.description),1)])])):Vue.createCommentVNode("",!0),i.$slots.default?(Vue.openBlock(),Vue.createElementBlock("div",Jo,[Vue.renderSlot(i.$slots,"default")])):Vue.createCommentVNode("",!0),e.actions||e.actionBarProps||i.$slots.actions?(Vue.openBlock(),Vue.createElementBlock("div",Yo,[Vue.renderSlot(i.$slots,"actions",{},()=>[Vue.createVNode(Vue.unref(Q),Vue.mergeProps(a.value,{onClick:c,onCommand:d}),null,16)])])):Vue.createCommentVNode("",!0)]),_:3})]),_:3},8,["direction","class"]))}}),mt={option:{type:Object},width:{type:[Number,String],default:"100%"},height:{type:[Number,String],default:"400px"}};function Qo(){return Promise.resolve(echarts)}function Zo(n,t){const e=Vue.ref(),o=Vue.shallowRef();return Vue.onMounted(async()=>{o.value=await Qo();const u=Vue.unref(n);u&&(e.value||(e.value=Vue.markRaw(o.value.init(u))),e.value&&e.value.setOption(t.option||{}))}),Vue.onUnmounted(()=>{e.value&&e.value.dispose()}),Vue.watch(()=>t.option,u=>{e.value&&e.value.setOption(u||{})},{deep:!0}),Xe(n,VtjUtils.debounce(()=>{e.value&&e.value.resize()},150)),{echartsInstance:e,echarts:o}}const gt=Vue.defineComponent({name:"XChart",__name:"Chart",props:mt,setup(n,{expose:t}){const e=n,o=Vue.ref(),{echartsInstance:u,echarts:l}=Zo(o,e),a=Vue.computed(()=>({width:j(e.width),height:j(e.height)}));return t({chartRef:o,echartsInstance:u,echarts:l}),(r,s)=>(Vue.openBlock(),Vue.createElementBlock("div",{ref_key:"chartRef",ref:o,style:Vue.normalizeStyle(a.value)},null,4))}}),ht={data:{type:[Object,Function],default(){return[]}},itemHeight:{type:[Number,Function]},width:{type:[String,Number],default:"100%"},height:{type:[String,Number],default:"100%"},pager:{type:[Boolean,Object]},page:{type:Number,default:1},pageSize:{type:Number,default:10},dataKey:{type:String},infiniteScroll:{type:[Boolean,Object]}},Go={key:0,class:"x-list__loading"},qo={key:1,class:"x-list__nomore"},en={key:0,class:"x-list__loading"},tn={key:1,class:"x-list__nomore"},on={key:1,class:"x-list__pager"},yt=Vue.defineComponent({name:"XList",__name:"List",props:ht,emits:["load"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.reactive({page:o.page,pageSize:o.pageSize});Vue.watchEffect(()=>{const{page:h,pageSize:S}=o;Object.assign(l,{page:h,pageSize:S})});const{data:a,loading:r}=Te(o.data,{list:[],total:0},l),s=Vue.computed(()=>Math.ceil((a.value.total||0)/l.pageSize)),c=Vue.ref(!1),d=Vue.ref(),i=Vue.computed(()=>({width:j(o.width),height:j(o.height)})),V=Vue.computed(()=>({"is-virtual":!!o.itemHeight})),p=Vue.computed(()=>{const h={};for(let[S,f]of Object.entries(ae(o.infiniteScroll)))h[`infinite-scroll-${S}`]=f;return(r.value||c.value)&&(h["infinite-scroll-disabled"]=!0),h}),m=Vue.computed(()=>ae(o.pager,{})),{list:y,containerProps:g,wrapperProps:C,scrollTo:B}=uo(Vue.computed(()=>a.value.list),{itemHeight:o.itemHeight||0}),k=()=>{!o.infiniteScroll||c.value||(l.page<s.value?(++l.page,u("load",l)):c.value=!0)},_=h=>o.dataKey?h[o.dataKey]:void 0;return t({list:y,scrollTo:B,wrapperRef:d,loading:r,state:l,pageCount:s,nomore:c,data:a,getKey:_}),(h,S)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:Vue.normalizeClass(["x-list",V.value]),style:Vue.normalizeStyle(i.value)},[!Vue.unref(a).total&&!Vue.unref(r)?Vue.renderSlot(h.$slots,"empty",{key:0},()=>[Vue.createVNode(Vue.unref(ElementPlus.ElEmpty))]):Vue.createCommentVNode("",!0),Vue.createElementVNode("div",Vue.mergeProps({class:"x-list__content"},Vue.unref(g)),[o.itemHeight?Vue.withDirectives((Vue.openBlock(),Vue.createElementBlock("div",Vue.mergeProps({key:0,class:"x-list__wrapper",ref_key:"wrapperRef",ref:d},{...Vue.unref(C),...p.value}),[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(Vue.unref(y),(f,E)=>Vue.renderSlot(h.$slots,"default",Vue.normalizeProps(Vue.mergeProps({key:_(f.data)},{item:f.data,index:E})),()=>[Vue.createElementVNode("div",null,Vue.toDisplayString(f),1)])),128)),Vue.unref(r)?(Vue.openBlock(),Vue.createElementBlock("div",Go,[Vue.renderSlot(h.$slots,"loading",{},()=>[Vue.createTextVNode(" 正在加载数据... ")])])):Vue.createCommentVNode("",!0),c.value?(Vue.openBlock(),Vue.createElementBlock("div",qo,[Vue.renderSlot(h.$slots,"nomore",{},()=>[Vue.createTextVNode(" 没有更多数据 ")])])):Vue.createCommentVNode("",!0)],16)),[[Vue.unref(ElementPlus.ElInfiniteScroll),k]]):Vue.withDirectives((Vue.openBlock(),Vue.createElementBlock("div",Vue.mergeProps({key:1,class:"x-list__wrapper"},p.value),[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(Vue.unref(a).list,(f,E)=>Vue.renderSlot(h.$slots,"default",Vue.normalizeProps(Vue.mergeProps({key:_(f)},{item:f,index:E})),()=>[Vue.createElementVNode("div",null,Vue.toDisplayString(f),1)])),128)),Vue.unref(r)?(Vue.openBlock(),Vue.createElementBlock("div",en,[Vue.renderSlot(h.$slots,"loading",{},()=>[Vue.createTextVNode(" 正在加载数据... ")])])):Vue.createCommentVNode("",!0),c.value?(Vue.openBlock(),Vue.createElementBlock("div",tn,[Vue.renderSlot(h.$slots,"nomore",{},()=>[Vue.createTextVNode(" 没有更多数据 ")])])):Vue.createCommentVNode("",!0)],16)),[[Vue.unref(ElementPlus.ElInfiniteScroll),k]])],16),o.pager?(Vue.openBlock(),Vue.createElementBlock("div",on,[Vue.createVNode(Vue.unref(ElementPlus.ElPagination),Vue.mergeProps({small:"",background:"",layout:"prev, pager, next",total:Vue.unref(a).total,"default-page-size":o.pageSize,"default-current-page":o.page,"current-page":l.page,"onUpdate:currentPage":S[0]||(S[0]=f=>l.page=f),"page-size":l.pageSize,"onUpdate:pageSize":S[1]||(S[1]=f=>l.pageSize=f)},m.value),null,16,["total","default-page-size","default-current-page","current-page","page-size"])])):Vue.createCommentVNode("",!0)],6))}}),vt={name:{type:String,default:"VTJ.PRO"},tagline:{type:String,default:"基于 Vue3 + TypeScript 快速打造高生产力的低代码研发平台"},actionText:{type:String,default:"开始设计"},actionLink:{type:String,default:"/@vtj/pro/"}},nn={class:"x-startup"},un={class:"x-startup__wrapper"},ln={class:"x-startup__name"},rn={class:"clip"},an={class:"x-startup__tagline"},sn={class:"x-startup__actions"},kt=Vue.defineComponent({__name:"Startup",props:vt,setup(n){const t=n,e=()=>{if(typeof window<"u"){let u=(window.__VTJ_LINK__||{}).href||window.location.pathname+"@vtj/pro/#/";window.location.href=u}};return(o,u)=>(Vue.openBlock(),Vue.createElementBlock("div",nn,[Vue.createElementVNode("div",un,[Vue.createElementVNode("div",ln,[Vue.createElementVNode("span",rn,Vue.toDisplayString(t.name),1)]),Vue.createElementVNode("div",an,Vue.toDisplayString(t.tagline),1),Vue.createElementVNode("div",sn,[Vue.createVNode(Vue.unref(ElementPlus.ElButton),{type:"primary",size:"large",round:"",icon:Vue.unref(VtjIcons.EditPen),onClick:e},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(t.actionText),1)]),_:1},8,["icon"])])])]))}}),bt={stringProp:{type:String},booleanProp:{type:Boolean},numberProp:{type:Number},selectProp:{type:String},objectProp:{type:Object},arrayProp:{type:Array},iconProp:{type:String},colorProp:{type:String},modelValue:{type:String},syncProp:{type:String}},cn={class:"x-test__slot"},dn={class:"x-test__slot"},wt=Vue.defineComponent({name:"XTest",__name:"Test",props:bt,emits:["click","submit","change","update:modelValue","update:syncProp"],setup(n,{expose:t,emit:e}){const o=n,u=e,l=Vue.computed(()=>Object.entries(o)),a=Vue.computed({get(){return o.modelValue},set(p){u("update:modelValue",p)}}),r=Vue.computed({get(){return o.syncProp},set(p){u("update:syncProp",p)}}),s=Vue.ref("default inner data"),c=()=>{ElementPlus.ElMessage.info({message:"触发click事件"}),u("click",o)},d=()=>{ElementPlus.ElMessage.info({message:"触发submit事件"}),u("submit",o)},i=p=>{s.value=p,u("change",s.value)},V=()=>{i("user click change:"+Date.now())};return t({click:c,submit:d,data:s,change:i}),(p,m)=>(Vue.openBlock(),Vue.createBlock(Vue.unref(K),{class:"x-test",header:"VTJ 低代码测试组件",border:""},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("内部数据")]),_:1}),Vue.createVNode(Vue.unref(P),null,{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(s.value),1)]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("属性")]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDescriptions),{column:3,border:""},{default:Vue.withCtx(()=>[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(l.value,([y,g])=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDescriptionsItem),{label:y},{default:Vue.withCtx(()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(JSON.stringify(g,null,2)),1)]),_:2},1032,["label"]))),256))]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("插槽")]),_:1}),Vue.createVNode(Vue.unref(P),{justify:"space-around",flex:"",gap:""},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(K),{header:"default",grow:"",card:""},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",cn,[Vue.renderSlot(p.$slots,"default",{props:o,data:s.value},()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(JSON.stringify({props:o,data:s.value},null,2)),1)])])]),_:3}),Vue.createVNode(Vue.unref(K),{header:"extra",grow:"",card:""},{default:Vue.withCtx(()=>[Vue.createElementVNode("div",dn,[Vue.renderSlot(p.$slots,"extra",{props:o,data:s.value},()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(JSON.stringify({props:o,data:s.value},null,2)),1)])])]),_:3})]),_:3}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("双向绑定")]),_:1}),Vue.createVNode(Vue.unref(P),null,{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElDescriptions),{column:2,border:""},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElDescriptionsItem),{label:"modelValue"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElInput),{modelValue:a.value,"onUpdate:modelValue":m[0]||(m[0]=y=>a.value=y)},null,8,["modelValue"])]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDescriptionsItem),{label:"syncProp"},{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElInput),{modelValue:r.value,"onUpdate:modelValue":m[1]||(m[1]=y=>r.value=y)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElDivider),null,{default:Vue.withCtx(()=>[Vue.createTextVNode("事件和方法")]),_:1}),Vue.createVNode(Vue.unref(P),null,{default:Vue.withCtx(()=>[Vue.createVNode(Vue.unref(ElementPlus.ElButton),{onClick:c},{default:Vue.withCtx(()=>[Vue.createTextVNode("click")]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElButton),{onClick:d},{default:Vue.withCtx(()=>[Vue.createTextVNode("submit")]),_:1}),Vue.createVNode(Vue.unref(ElementPlus.ElButton),{onClick:V},{default:Vue.withCtx(()=>[Vue.createTextVNode("change")]),_:1})]),_:1})]),_:3}))}}),Vn=[L,H,O,Q,P,ce,K,te,rt,be,_e,ct,Vt,ft,gt,yt,kt,wt],{install:pn}=Pe(Vn);return w.Draggable=fe,w.INSTALLED_KEY=se,w.MASK_KEY=ve,w.Resizable=ge,w.TAB_CREATORS_KEY=ye,w.TAB_ITEM_WIDTH=ot,w.VTJ_UI_VERSION=Ct,w.XAction=O,w.XActionBar=Q,w.XChart=gt,w.XContainer=P,w.XDataItem=ft,w.XDialog=te,w.XDialogForm=ct,w.XField=be,w.XForm=_e,w.XHeader=ce,w.XIcon=L,w.XList=yt,w.XMask=rt,w.XMenu=H,w.XPanel=K,w.XStartup=kt,w.XTabs=Vt,w.XTest=wt,w.actionBarProps=De,w.actionProps=ie,w.builtinFieldEditors=ke,w.chartProps=mt,w.containerProps=Ie,w.createDialog=oe,w.dataItemProps=pt,w.defineTab=jo,w.dialogFormProps=it,w.dialogProps=tt,w.fieldProps=at,w.formInstanceKey=we,w.formModelKey=Ce,w.formProps=st,w.getSizeValue=j,w.headerProps=Me,w.iconProps=Ee,w.iconSizeMap=xe,w.install=pn,w.listProps=ht,w.makeInstaller=Pe,w.maskProps=nt,w.panelProps=Re,w.parseSize=Y,w.startupProps=vt,w.tabsProps=dt,w.testProps=bt,w.toObjectProps=ae,w.useDisabled=G,w.useIcon=W,w.useIconProps=ze,w.useLoader=Te,w.vDraggable=et,w.vResizable=he,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"}),w}({},vue);
|
package/dist/index.mjs
CHANGED
|
@@ -8,10 +8,10 @@ import { useRouter as Ye, RouterView as Ho, useRoute as $t, routeLocationKey as
|
|
|
8
8
|
* Copyright (c) 2024, VTJ.PRO All rights reserved.
|
|
9
9
|
* @name @vtj/ui
|
|
10
10
|
* @author CHC chenhuachun1549@dingtalk.com
|
|
11
|
-
* @version 0.7.
|
|
11
|
+
* @version 0.7.13
|
|
12
12
|
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
13
13
|
*/
|
|
14
|
-
const Da = "0.7.
|
|
14
|
+
const Da = "0.7.13", Lo = {
|
|
15
15
|
default: 14,
|
|
16
16
|
small: 12,
|
|
17
17
|
large: 18
|
|
@@ -3890,8 +3890,10 @@ const Ua = /* @__PURE__ */ V({
|
|
|
3890
3890
|
props: _a,
|
|
3891
3891
|
setup(a) {
|
|
3892
3892
|
const o = a, e = () => {
|
|
3893
|
-
|
|
3894
|
-
|
|
3893
|
+
if (typeof window < "u") {
|
|
3894
|
+
let l = (window.__VTJ_LINK__ || {}).href || window.location.pathname + "@vtj/pro/#/";
|
|
3895
|
+
window.location.href = l;
|
|
3896
|
+
}
|
|
3895
3897
|
};
|
|
3896
3898
|
return (t, l) => (u(), C("div", ka, [
|
|
3897
3899
|
X("div", wa, [
|