@vtj/ui 0.6.25 → 0.7.0
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/LICENSE +21 -21
- package/dist/index.cjs +7 -0
- package/dist/index.iife.js +7 -0
- package/dist/index.mjs +4165 -0
- package/dist/index.umd.js +7 -0
- package/dist/style.css +1 -0
- package/package.json +23 -21
- package/types/components/action/Action.d.ts +23 -22
- package/types/components/action/Trigger.d.ts +15 -14
- package/types/components/action/hooks.d.ts +7 -6
- package/types/components/action/types.d.ts +14 -10
- package/types/components/action-bar/ActionBar.d.ts +41 -40
- package/types/components/action-bar/types.d.ts +10 -11
- package/types/components/chart/Chart.d.ts +4 -4
- package/types/components/chart/types.d.ts +3 -3
- package/types/components/chart/useChart.d.ts +5 -5
- package/types/components/container/Container.d.ts +7 -7
- package/types/components/container/types.d.ts +3 -3
- package/types/components/data-item/DataItem.d.ts +23 -22
- package/types/components/data-item/types.d.ts +3 -3
- package/types/components/dialog/Dialog.d.ts +9 -9
- package/types/components/dialog/create.d.ts +2 -2
- package/types/components/dialog/hooks.d.ts +5 -5
- package/types/components/dialog/types.d.ts +4 -4
- package/types/components/dialog-form/DialogForm.d.ts +3 -3
- package/types/components/dialog-form/types.d.ts +3 -3
- package/types/components/field/Field.d.ts +17 -4
- package/types/components/field/editors/CheckboxEditor.d.ts +6 -3
- package/types/components/field/editors/RadioEditor.d.ts +6 -3
- package/types/components/field/editors/SelectEditor.d.ts +6 -3
- package/types/components/field/hooks/useEditor.d.ts +3 -3
- package/types/components/field/types.d.ts +16 -4
- package/types/components/form/Form.d.ts +13 -3
- package/types/components/form/types.d.ts +10 -2
- package/types/components/header/Header.d.ts +2 -2
- package/types/components/header/types.d.ts +4 -3
- package/types/components/icon/Icon.d.ts +2 -2
- package/types/components/index.d.ts +2 -2
- package/types/components/list/List.d.ts +109 -0
- package/types/components/list/index.d.ts +3 -0
- package/types/components/list/types.d.ts +58 -0
- package/types/components/mask/Mask.d.ts +23 -22
- package/types/components/mask/components/Avatar.d.ts +2 -2
- package/types/components/mask/components/Brand.d.ts +5 -2
- package/types/components/mask/components/Content.d.ts +3 -3
- package/types/components/mask/components/Menu.d.ts +6 -3
- package/types/components/mask/components/Sidebar.d.ts +2 -2
- package/types/components/mask/components/SwitchBar.d.ts +5 -2
- package/types/components/mask/components/Tabs.d.ts +4 -4
- package/types/components/mask/components/ThemeSwitch.d.ts +2 -2
- package/types/components/mask/components/Toolbar.d.ts +7 -4
- package/types/components/mask/defineTab.d.ts +1 -1
- package/types/components/mask/hooks/useContent.d.ts +2 -2
- package/types/components/mask/hooks/useHome.d.ts +1 -1
- package/types/components/mask/hooks/useMenus.d.ts +3 -3
- package/types/components/mask/hooks/useSidebar.d.ts +1 -2
- package/types/components/mask/hooks/useTabs.d.ts +4 -4
- package/types/components/mask/types.d.ts +3 -3
- package/types/components/menu/Menu.d.ts +6 -3
- package/types/components/menu/MenuItem.d.ts +3 -3
- package/types/components/menu/types.d.ts +2 -2
- package/types/components/panel/Panel.d.ts +6 -24
- package/types/components/panel/types.d.ts +9 -11
- package/types/components/shared.d.ts +2 -1
- package/types/components/tabs/Tabs.d.ts +3 -3
- package/types/components/tabs/types.d.ts +3 -3
- package/types/components/test/Test.d.ts +244 -0
- package/types/components/test/index.d.ts +3 -0
- package/types/components/test/types.d.ts +41 -0
- package/types/directives/vDraggable.d.ts +2 -2
- package/types/directives/vResizable.d.ts +2 -2
- package/types/hooks/index.d.ts +1 -0
- package/types/hooks/useDisabled.d.ts +1 -1
- package/types/hooks/useIcon.d.ts +3 -3
- package/types/index.d.ts +1 -4
- package/types/install.d.ts +4 -0
- package/types/list.d.ts +1 -1
- package/types/utils/util.d.ts +1 -3
- package/types/version.d.ts +8 -1
- package/cdn/index.js +0 -1
- package/cdn/style.css +0 -1
- package/lib/index.js +0 -3830
- package/lib/style.css +0 -1
- package/types/components/simple-mask/SimpleMask.d.ts +0 -43
- package/types/components/simple-mask/index.d.ts +0 -2
- package/types/components/startup/Startup.d.ts +0 -38
- package/types/components/startup/index.d.ts +0 -2
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2023 陈华春
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 陈华春
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";var tt=Object.create;var Ce=Object.defineProperty;var ot=Object.getOwnPropertyDescriptor;var nt=Object.getOwnPropertyNames;var at=Object.getPrototypeOf,rt=Object.prototype.hasOwnProperty;var lt=(a,o,t,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let l of nt(o))!rt.call(a,l)&&l!==t&&Ce(a,l,{get:()=>o[l],enumerable:!(n=ot(o,l))||n.enumerable});return a};var it=(a,o,t)=>(t=a!=null?tt(at(a)):{},lt(o||!a||!a.__esModule?Ce(t,"default",{value:a,enumerable:!0}):t,a));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),m=require("element-plus"),V=require("@vtj/icons"),A=require("@vueuse/core"),T=require("@vtj/utils"),K=require("vue-router");/**!
|
|
2
|
+
* Copyright (c) 2024, VTJ.PRO All rights reserved.
|
|
3
|
+
* @name @vtj/ui
|
|
4
|
+
* @author CHC chenhuachun1549@dingtalk.com
|
|
5
|
+
* @version 0.7.0
|
|
6
|
+
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
7
|
+
*/const st="0.7.0",xe={default:14,small:12,large:18},Se={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 $(a){return typeof a=="string"?a:`${a}px`}function Z(a=0,o){if(typeof a=="number")return a;if(/(%|vh|vw)$/i.test(a)){const n=Number.parseInt(a);return Math.floor(o*n/100)}return Number.parseInt(a)}function se(a,o={}){const t={...o};return typeof a=="boolean"?t:Object.assign(t,a||{})}const ce=Symbol("INSTALLED_KEY"),ct=(a=[])=>({install:t=>{t[ce]||(t[ce]=!0,a.forEach(n=>{n.name&&t.component(n.name,n)}))}}),ut=["src"],j=e.defineComponent({name:"XIcon",__name:"Icon",props:Se,setup(a){const o=a,t=e.useAttrs(),n=e.getCurrentInstance(),l=e.computed(()=>{if(!o.icon)return null;const s=n?.appContext.app;return typeof o.icon=="object"?e.markRaw(o.icon):s?.component(o.icon)||o.icon}),r=e.computed(()=>{const s={"is-pointer":!!t.onClick};return!l.value&&o.icon&&(s[o.icon]=!0),s}),c=e.computed(()=>({"background-color":o.background,"border-radius":o.radius?$(o.radius):void 0,padding:o.padding?$(o.padding):void 0})),i=e.computed(()=>typeof o.size=="number"?o.size:xe[o.size]??void 0);return(s,u)=>(e.openBlock(),e.createBlock(e.unref(m.ElIcon),{class:e.normalizeClass(["x-icon",r.value]),color:o.color,size:i.value,style:e.normalizeStyle(c.value)},{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default",{},()=>[l.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{key:0})):e.createCommentVNode("",!0),o.src?(e.openBlock(),e.createElementBlock("img",{key:1,src:o.src},null,8,ut)):e.createCommentVNode("",!0)])]),_:3},8,["class","color","size","style"]))}}),dt={class:"x-menu__wrapper"},pt={key:1,class:"x-menu__title"},mt=e.createElementVNode("i",null,null,-1),ft={key:0,class:"x-menu__title"},gt=e.createElementVNode("i",null,null,-1),Ve=e.defineComponent({inheritAttrs:!1,name:"XMenuItem",__name:"MenuItem",props:{item:{},subMenu:{},defaultIcon:{}},setup(a){const o=a,t=e.getCurrentInstance(),n=c=>{if(c)return typeof c=="string"&&(t?.appContext.app?.component(c)||o.defaultIcon)||c},l=c=>typeof c=="object"?c:{value:c},r=(c=[])=>c.filter(i=>!i.hidden);return(c,i)=>o.item.children?(e.openBlock(),e.createBlock(e.unref(m.ElSubMenu),e.mergeProps({key:0,disabled:o.item.disabled},o.subMenu,{index:String(o.item.id)}),{title:e.withCtx(()=>[e.createElementVNode("div",dt,[o.item.icon?(e.openBlock(),e.createBlock(e.unref(j),{key:0,icon:n(o.item.icon)},null,8,["icon"])):e.createCommentVNode("",!0),o.item.title?(e.openBlock(),e.createElementBlock("span",pt,e.toDisplayString(o.item.title),1)):e.createCommentVNode("",!0),o.item.badge?(e.openBlock(),e.createBlock(e.unref(m.ElBadge),e.mergeProps({key:2,class:"x-menu__badge"},l(o.item.badge)),{default:e.withCtx(()=>[mt]),_:1},16)):e.createCommentVNode("",!0)])]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r(o.item.children),s=>(e.openBlock(),e.createBlock(e.unref(Ve),{key:s.id,item:s,subMenu:o.subMenu,defaultIcon:o.defaultIcon},null,8,["item","subMenu","defaultIcon"]))),128))]),_:1},16,["disabled","index"])):(e.openBlock(),e.createBlock(e.unref(m.ElMenuItem),{key:1,index:String(o.item.id),disabled:o.item.disabled},{title:e.withCtx(()=>[o.item.title?(e.openBlock(),e.createElementBlock("span",ft,e.toDisplayString(o.item.title),1)):e.createCommentVNode("",!0),o.item.badge?(e.openBlock(),e.createBlock(e.unref(m.ElBadge),e.mergeProps({key:1,class:"x-menu__badge"},l(o.item.badge)),{default:e.withCtx(()=>[gt]),_:1},16)):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[o.item.icon?(e.openBlock(),e.createBlock(e.unref(j),{key:0,icon:n(o.item.icon)},null,8,["icon"])):e.createCommentVNode("",!0)]),_:1},8,["index","disabled"]))}}),L=e.defineComponent({inheritAttrs:!1,name:"XMenu",__name:"Menu",props:{data:{default:()=>[]},subMenu:{},defaultIcon:{}},emits:["select"],setup(a,{emit:o}){const t=a,n=o,l=e.computed(()=>t.data.filter(i=>!i.hidden)),r=(i,s)=>{const u=(d,p=[])=>{for(const g of p){if(g.id.toString()===d.toString())return g;if(g.children?.length){const f=u(d,g.children);if(f)return f}}};return u(s,i)},c=i=>{const s=r(l.value,i);s&&n("select",s)};return(i,s)=>(e.openBlock(),e.createBlock(e.unref(m.ElMenu),e.mergeProps({class:"x-menu"},i.$attrs,{onSelect:c}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,u=>(e.openBlock(),e.createBlock(e.unref(Ve),{item:{...u,icon:u.icon},defaultIcon:t.defaultIcon,subMenu:t.subMenu},null,8,["item","defaultIcon","subMenu"]))),256))]),_:1},16))}}),pe={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 ht(a){return e.computed(()=>{const o=a.tooltip;if(o)return typeof o=="string"?{content:o}:o})}function yt(a){return e.computed(()=>{const o=a.badge;if(o)return typeof o=="object"?o:{value:o}})}function vt(a){return e.computed(()=>{const{dropdown:o,menus:t}=a;if(t&&t.length>0)return Object.assign({popperClass:"x-action__menus",size:a.size},o||{})})}function Ee(a){const o=e.getCurrentInstance();return e.computed(()=>{const t=e.unref(a);if(t)if(typeof t=="string"||t.setup||t.render||e.isVNode(t)){const n=o?.appContext.app;return{icon:typeof t=="string"&&n?.component(t)||t}}else return t;return null})}function H(a){const o=Ee(a);return o.value?e.markRaw(e.defineComponent({render:()=>e.h(j,o.value)})):void 0}function oe(a,o){return e.computed(()=>{const t=e.unref(a);return typeof t=="function"?t(o):!!t})}function Ne(a,o,t){const n=e.shallowRef(o),l=e.ref(!1),r=async i=>{const s=e.unref(a);return s?typeof s=="function"?await s(i):s:o},c=async i=>(l.value=!0,await r(i).then(s=>(n.value=s||o,l.value=!1,n)));return e.watch(()=>a,()=>{c(t)},{immediate:!0}),t&&e.watch(t,()=>{c(t)}),{data:n,loading:l,loader:c}}const kt={key:0},bt=e.defineComponent({__name:"Trigger",props:pe,emits:["click"],setup(a,{emit:o}){const t=a,n=o,l=H(e.toRef(t,"icon")),r=oe(e.toRef(t,"disabled")),c=e.computed(()=>({[`is-${t.mode}`]:!!t.mode,[`is-${t.type}`]:!!t.type,[`is-${t.size}`]:!!t.size&&t.size!=="default",[`is-background-${t.background}`]:t.mode==="icon"&&!!t.background,"is-disabled":!!t.disabled,"is-circle":!!t.circle})),i=s=>{if(s.stopPropagation(),s.preventDefault(),!r.value)return n("click"),!1};return(s,u)=>t.mode==="button"?(e.openBlock(),e.createBlock(e.unref(m.ElButton),e.mergeProps({key:0,icon:e.unref(l),type:t.type,size:t.size,disabled:e.unref(r)},t.button,{onClick:i}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.label),1)]),_:1},16,["icon","type","size","disabled"])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["x-action__inner",c.value]),onClick:i},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(l)))),s.label?(e.openBlock(),e.createElementBlock("span",kt,e.toDisplayString(s.label),1)):e.createCommentVNode("",!0)],2))}}),R=e.defineComponent({name:"XAction",__name:"Action",props:pe,emits:["click","command"],setup(a,{emit:o}){const t=a,n=e.useSlots(),l=o,r=ht(t),c=yt(t),i=vt(t),s=oe(e.toRef(t,"disabled")),u=e.computed(()=>({[`x-action--${t.mode}`]:!!t.mode})),d=()=>{s.value||l("click",e.toRaw(t))},p=k=>{if(s.value)return;const _=t.menus?.find(S=>S.command===k);_&&l("command",e.toRaw(_))},g=k=>e.h(m.ElBadge,c.value,()=>[].concat(k)),f=k=>e.h(m.ElDropdown,{...i.value,disabled:s.value,onCommand:p},{default:()=>[k],dropdown:()=>[e.h(m.ElDropdownMenu,()=>(t.menus||[]).map(_=>e.h(m.ElDropdownItem,_,()=>n.item?n.item({item:_}):_.label)))]}),y=k=>e.h(m.ElTooltip,{...r.value,disabled:s.value},()=>[k]),C=e.computed(()=>{let k=n.default?n.default()[0]:e.h(e.markRaw(bt),{...t,onClick:d});return c.value&&(k=g(k)),i.value&&(k=f(k)),r.value&&(k=y(k)),k});return(k,_)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["x-action",u.value])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C.value)))],2))}}),ze={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}},Y=e.defineComponent({name:"XActionBar",__name:"ActionBar",props:ze,emits:["click","command"],setup(a,{emit:o}){const t=a,n=o,l=e.computed(()=>(t.items||[]).map(i=>i==="|"?i:{...i,badge:i.badge?{...t.badge,...typeof i.badge=="object"?i.badge||{}:{value:i.badge}}:void 0,tooltip:i.tooltip?{...t.tooltip,...typeof i.tooltip=="object"?i.tooltip||{}:{content:i.tooltip}}:void 0})),r=i=>{n("click",i)},c=(i,s)=>{n("command",i,s)};return(i,s)=>(e.openBlock(),e.createBlock(e.unref(B),{class:"x-action-bar",align:"center"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,u=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[u==="|"?(e.openBlock(),e.createBlock(e.unref(m.ElDivider),{key:0,direction:"vertical",class:"x-action-bar__divider"})):(e.openBlock(),e.createBlock(e.unref(R),e.mergeProps({key:1,mode:t.mode,size:t.size,type:t.type,circle:t.circle,background:t.background,button:t.button,dropdown:t.dropdown,disabled:e.unref(oe)(t.disabled,u).value},u,{onClick:r,onCommand:d=>c(u,d)}),null,16,["mode","size","type","circle","background","button","dropdown","disabled","onCommand"]))],64))),256))]),_:1}))}}),Te={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}},B=e.defineComponent({name:"XContainer",__name:"Container",props:Te,setup(a){const o=a,t=e.useAttrs(),n=e.getCurrentInstance(),l=e.computed(()=>{const i=n?.parent;if(!i)return!1;const s=i.proxy;return s.$options.name==="XContainer"||!!s.flex}),r=e.computed(()=>({"is-fit":o.fit,"is-flex":o.flex&&!o.inline,"is-inline-flex":o.flex&&o.inline,[`is-direction-${o.direction}`]:o.flex&&o.direction!=="row",[`is-wrap-${o.wrap}`]:o.flex&&o.wrap!=="nowrap",[`is-justify-${o.justify}`]:o.flex&&o.justify!=="flex-start",[`is-align-${o.align}`]:o.flex&&o.align!=="flex-start",[`is-align-content-${o.alignContent}`]:o.flex&&o.alignContent!=="stretch","is-grow":o.grow??l.value,"is-shrink":l.value&&o.shrink,[`is-align-self-${o.alignSelf}`]:l.value&&o.alignSelf!=="auto",[`is-overflow-${o.overflow}`]:!!o.overflow,"is-padding":!!o.padding,"is-pointer":o.autoPointer&&!!t.onClick,"is-gap":!!o.gap})),c=e.computed(()=>{const{width:i,height:s,fit:u}=o;return u?null:{width:i?$(i):void 0,height:s?$(s):void 0}});return(i,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.tag),{class:e.normalizeClass(["x-container",r.value]),style:e.normalizeStyle(c.value)},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},8,["class","style"]))}}),Pe={size:{type:String,default:"default"},content:{type:String,default:""},subtitle:{type:String},icon:{type:[String,Object]},border:{type:Boolean},more:{type:Boolean}},wt={key:0,class:"x-header__actions"},me=e.defineComponent({name:"XHeader",inheritAttrs:!1,__name:"Header",props:Pe,setup(a){const o=a,t=H(e.toRef(o,"icon")),n=e.useAttrs(),l=e.computed(()=>({[`is-size-${o.size}`]:!!o.size&&o.size!=="default","is-border":o.border,"is-pointer":!!n.onClick}));return(r,c)=>(e.openBlock(),e.createBlock(e.unref(B),{class:e.normalizeClass(["x-header",l.value]),justify:"space-between",align:"center"},{default:e.withCtx(()=>[e.createVNode(e.unref(B),{align:"center",class:e.normalizeClass(["x-header__wrapper",l.value]),grow:""},{default:e.withCtx(()=>[e.unref(t)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(t)),{key:0,class:"x-header__icon",onClick:e.unref(n).onClickIcon||e.unref(n).onClick},null,8,["onClick"])):e.createCommentVNode("",!0),e.createElementVNode("span",{class:"x-header__content",onClick:c[0]||(c[0]=(...i)=>e.unref(n).onClick&&e.unref(n).onClick(...i))},[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(o.content),1)])]),o.more?(e.openBlock(),e.createBlock(e.unref(j),{key:1,class:"x-header__more",icon:e.unref(V.ArrowRight)},null,8,["icon"])):e.createCommentVNode("",!0),o.subtitle||r.$slots.subtitle?(e.openBlock(),e.createElementBlock("span",{key:2,class:"x-header__subtitle",onClick:c[1]||(c[1]=(...i)=>e.unref(n).onClick&&e.unref(n).onClick(...i))},[e.renderSlot(r.$slots,"subtitle",{},()=>[e.createTextVNode(e.toDisplayString(o.subtitle),1)])])):e.createCommentVNode("",!0)]),_:3},8,["class"]),r.$slots.actions?(e.openBlock(),e.createElementBlock("div",wt,[e.renderSlot(r.$slots,"actions")])):e.createCommentVNode("",!0)]),_:3},8,["class"]))}}),De={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}},W=e.defineComponent({name:"XPanel",__name:"Panel",props:De,setup(a,{expose:o}){const t=a,n=e.ref(),l=e.computed(()=>({"x-panel--card":!!t.card,"x-panel--default":!t.card,[`is-${t.size}`]:!!t.size&&t.size!=="default","is-border":!!t.border,"is-radius":!!t.radius,[`is-shadow-${t.shadow}`]:!!t.shadow&&t.shadow!=="none"})),r=e.computed(()=>t.header===null?null:typeof t.header=="string"?{content:t.header,size:t.size}:{...t.header,size:t.size}),c=e.computed(()=>t.fit||t.height?"auto":void 0);return o({bodyRef:n}),(i,s)=>(e.openBlock(),e.createBlock(e.unref(B),{class:e.normalizeClass(["x-panel",l.value]),direction:"column",fit:t.fit,width:t.width,height:t.height},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(e.unref(B),{key:0,flex:!1,class:"x-panel__header"},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"header",{},()=>[e.createVNode(e.unref(me),e.normalizeProps(e.guardReactiveProps(r.value)),{default:e.withCtx(()=>[e.renderSlot(i.$slots,"title")]),actions:e.withCtx(()=>[e.renderSlot(i.$slots,"actions")]),_:3},16)])]),_:3})):e.createCommentVNode("",!0),e.createVNode(e.unref(B),e.mergeProps({ref_key:"bodyRef",ref:n,flex:!1,overflow:c.value,grow:"",padding:"",class:"x-panel__body"},t.body),{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},16,["overflow"]),i.$slots.footer?(e.openBlock(),e.createBlock(e.unref(B),e.mergeProps({key:1,flex:!1,padding:"",class:"x-panel__footer"},t.footer),{default:e.withCtx(()=>[e.renderSlot(i.$slots,"footer")]),_:3},16)):e.createCommentVNode("",!0)]),_:3},8,["class","fit","width","height"]))}}),Be="user-select-none";class ue{constructor(o,t={}){this.el=o,this.options=t,this.scope=e.effectScope(),this.scope.run(()=>{this.init()})}scope;dragging=!1;getHandle(){const{selector:o,handle:t}=this.options;return o?this.el.querySelector(o):t}getTarget(){const{target:o="body"}=this.options;return typeof o=="string"?document.querySelector(o):e.unref(o)||document.body}init(){const{el:o,options:t}=this,{disabled:n,delay:l=150,onStart:r,onEnd:c}=t;if(n)return;let i=null;const s=this.getHandle(),u=this.getTarget();let d=o.getBoundingClientRect(),p=null;const{x:g,y:f}=A.useDraggable(o,{initialValue:{x:d.x,y:d.y},...t,handle:s,onStart:(y,C)=>{document.body.classList.add(Be),clearTimeout(i),i=setTimeout(()=>{this.dragging=!0,d=o.getBoundingClientRect(),p=u?.getBoundingClientRect(),r&&r(y,C)},l)},onEnd:(y,C)=>{if(clearTimeout(i),document.body.classList.remove(Be),this.dragging&&p){this.dragging=!1;const{x:k,y:_}=y,S=this.getPosition(p,d,k,_);c&&c(S,C),p=null}}});e.watch([g,f],()=>{if(this.dragging&&p){const y=this.getPosition(p,d,g.value,f.value);o.style.left=`${y.x}px`,o.style.top=`${y.y}px`}})}getPosition(o,t,n,l){const{edge:r=50}=this.options,c=-t.width+r,i=o.width-r,s=0,u=o.height-r,d=Math.min(i,Math.max(n,c)),p=Math.min(u,Math.max(l,s));return{x:d,y:p}}destory(){this.scope.stop()}}const Me={mounted(a,o){const t=o.value||{},n=new ue(a,t);a.__draggable__=n},updated(a,o){const t=o.value||{};let n=a.__draggable__;n&&!T.isEqual(n.options,t)&&(n.destory(),a.__draggable__=new ue(a,t))},unmounted(a){const o=a.__draggable__;o&&(o.destory(),a.__draggable__=null)}},ie="user-select-none";class de{constructor(o,t={}){this.el=o,this.options=t,this.scope=e.effectScope(),this.scope.run(()=>{this.init()})}scope;resizing=e.ref(!1);direction=e.ref("");MIE=null;cleanMousedown;cleanMouseup;init(){const{el:o,options:t}=this,{disabled:n,onStart:l,onEnd:r}=t;if(n)return;this.MIE=A.useMouseInElement(o),this.cleanMousedown=A.useEventListener(document,"mousedown",()=>{this.direction?.value&&this.MIE&&(this.resizing.value=!0,o.classList.add("is-resizing",`is-${this.direction.value}-resizing`),l&&l(this.direction.value,this.MIE))}),this.cleanMouseup=A.useEventListener(document,"mouseup",()=>{this.resizing.value&&this.direction?.value&&this.MIE&&(o.classList.remove("is-resizing",`is-${this.direction.value}-resizing`),r&&r(this.direction.value,this.MIE)),this.resizing.value=!1}),e.watch(this.direction,s=>{const u=document.body;u.style.cursor=s?`${s}-resize`:"",s?u.classList.add(ie):u.classList.remove(ie)});const{x:c,y:i}=this.MIE;e.watch([c,i],()=>{this.resizing.value?this.resize():this.direction.value=this.getDirection()})}resize(){const{MIE:o,direction:t,resizing:n,options:l,el:r}=this,c=t?.value||"";if(!o||!n.value||!c)return;const{x:i,y:s,elementX:u,elementY:d,elementHeight:p,elementWidth:g}=o,{onResizing:f}=l,{minWidth:y=0,minHeight:C=0,maxWidth:k=99999,maxHeight:_=99999}=l;if(c.includes("e")){const S=Math.min(Math.max(u.value,y),k);r.style.width=`${S}px`}if(c.includes("s")){const S=Math.min(Math.max(d.value,C),_);r.style.height=`${S}px`}if(c.includes("w")){const S=Math.min(Math.max(g.value-u.value,y),k);r.style.width=`${S}px`,r.style.left=`${i.value}px`}if(c.includes("n")){const S=Math.min(Math.max(p.value-d.value,C),_);this.el.style.height=`${S}px`,this.el.style.top=`${s.value}px`}f&&f(c,o)}getDirection(){if(!this.MIE)return"";const{elementX:o,elementY:t,elementHeight:n,elementWidth:l,isOutside:r}=this.MIE;if(r.value)return"";const{dirs:c=["n","s","w","e"],edge:i=5}=this.options;let s="";return c.includes("n")&&t.value<=i?s+="n":c.includes("s")&&t.value>n.value-i&&(s+="s"),c.includes("w")&&o.value<=i?s+="w":c.includes("e")&&o.value>l.value-i&&(s+="e"),s}destory(){const o=document.body;o.style.cursor="",o.classList.remove(ie),this.cleanMousedown&&this.cleanMousedown(),this.cleanMouseup&&this.cleanMouseup(),this.MIE?.stop(),this.scope.stop()}}const fe={mounted(a,o){const t=o.value||{},n=new de(a,t);a.__resizable__=n},updated(a,o){const t=o.value||{};let n=a.__resizable__;n&&!T.isEqual(n.options,t)&&(n.destory(),a.__resizable__=new de(a,t))},unmounted(a){const o=a.__resizable__;o&&(o.destory(),a.__resizable__=null)}},Ie={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 Ct(a,o){const{width:t,height:n}=A.useElementSize(o),l=e.reactive({mode:a.mode||"normal",wrapperWidth:0,wrapperHeight:0,width:0,height:0,top:0,left:0,zIndex:++J,dragging:!1,resizing:!1});return e.watch([t,n],([r,c])=>{l.wrapperWidth=r,l.wrapperHeight=c,l.width=Z(a.width,r),l.height=Z(a.height,c),l.left=a.left?Z(a.left,r)-l.width/2:Math.max(Math.floor((r-l.width)/2),0),l.top=a.top?Z(a.top,c):Math.max(Math.floor((c-l.height)/2),0)}),e.watch(l,r=>{J=Math.max(r.zIndex,J)}),{state:l,normal:e.computed(()=>l.mode==="normal"),maximized:e.computed(()=>l.mode==="maximized"),minimized:e.computed(()=>l.mode==="minimized")}}function Bt(a,o){const t=e.computed(()=>{const{width:c,height:i,top:s,left:u,zIndex:d}=o;return{width:`${c}px`,height:`${i}px`,top:`${s}px`,left:`${u}px`,zIndex:d}}),n=e.computed(()=>({[`is-${o.mode}`]:!!o.mode,"is-draggable":!!a.draggable,"is-resizable":!!a.resizable,"is-primary":!!a.primary})),l=e.computed(()=>({[`is-${o.mode}`]:!!o.mode,"is-dragging":o.dragging,"is-resizing":o.resizing})),r=e.computed(()=>({zIndex:o.zIndex}));return{styles:t,classes:n,wrapperClass:l,modalStyle:r}}function _t(a,o,t){const n=d=>{o.mode=d,["maximized","minimized","normal"].includes(d)&&t(d),t("modeChange",d)},l=async()=>{(!a.beforeClose||await a.beforeClose())&&(t("update:modelValue",!1),t("close"),t("destroy"))};return{close:l,changeMode:n,show:()=>n("normal"),hide:()=>n("minimized"),active:d=>{const p=d.target.nodeName||"";["INPUT","TEXTAREA","RADIO","CHECKBOX"].includes(p.toUpperCase())||(o.zIndex=Math.max(o.zIndex,++J))},submit:()=>t("submit"),cancel:()=>{t("cancel"),l()}}}function xt(a,o,t,n){return e.computed(()=>{const l=typeof a.draggable=="boolean"?!a.draggable:!!a.draggable?.disabled;return{...T.isObject(a.draggable)?a.draggable:{},disabled:l,target:n,selector:".x-panel__header",onStart(r){o.dragging=!0,o.zIndex=Math.max(o.zIndex,++J),t("dragStart",r)},onMove(r){t("dragging",r)},onEnd(r){if(o.mode==="maximized")return;const{x:c,y:i}=r;o.left=c,o.top=i,o.dragging=!1,t("dragEnd",r)}}})}function St(a,o,t){return e.computed(()=>{const n=typeof a.resizable=="boolean"?!a.resizable:!!a.resizable?.disabled;return{minWidth:200,minHeight:150,...T.isObject(a.resizable)?a.resizable:{},disabled:n,dirs:["e","s","w"],onStart(l,r){o.resizing=!0,o.zIndex=Math.max(o.zIndex,++J),t("resizeStart",l,r)},onResizing(l,r){t("resizing",l,r)},onEnd(l,r){o.left=r.elementPositionX.value,o.top=r.elementPositionY.value,o.width=r.elementWidth.value,o.height=r.elementHeight.value,o.resizing=!1,t("resizeEnd",l,r)}}})}function Vt(a,o){const t=a.componentInstance;if(!t)return;let n=null;return e.onMounted(()=>{const l=e.unref(o),r=e.unref(l?.bodyRef);n=t.$el,r&&r.$el&&r.$el.appendChild(n)}),e.onUnmounted(()=>{n&&n.parentNode&&n.parentNode.removeChild(n)}),{componentInstance:t}}const Et=["src"],ne=e.defineComponent({name:"XDialog",__name:"Dialog",props:Ie,emits:["update:modelValue","open","close","destroy","maximized","minimized","normal","modeChange","dragStart","dragging","dragEnd","resizeStart","resizeEnd","resizing","submit","cancel"],setup(a,{expose:o,emit:t}){const n=a,l=t,r=e.getCurrentInstance(),c=e.ref(),i=e.ref(),{state:s,maximized:u,minimized:d,normal:p}=Ct(n,c),{styles:g,classes:f,wrapperClass:y,modalStyle:C}=Bt(n,s),{changeMode:k,active:_,close:S,show:v,hide:x,submit:b,cancel:N}=_t(n,s,l),h=xt(n,s,l,c),D=St(n,s,l),M=Vt(n,i);e.watchEffect(async()=>{n.modelValue&&(await e.nextTick(),r&&l("open",r))});const X=e.computed(()=>i.value?.$el);return o({$vtjEl:X,panelRef:i,state:s,maximized:u,minimized:d,changeMode:k,show:v,hide:x,submit:b,cancel:N,componentInstance:M}),(I,F)=>n.modelValue?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.createElementVNode("div",{ref_key:"wrapper",ref:c,class:e.normalizeClass(["x-dialog__wrapper",e.unref(y)])},[n.modal?(e.openBlock(),e.createElementBlock("div",{key:0,class:"x-dialog__modal",style:e.normalizeStyle(e.unref(C))},null,4)):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(W),e.mergeProps({ref_key:"panelRef",ref:i,class:["x-dialog",e.unref(f)],card:"",shadow:"always",header:{icon:n.icon,subtitle:n.subtitle},width:"800px",height:"600px",footer:{justify:"space-between",flex:!0,align:"center"},style:e.unref(g),size:n.size,body:{padding:n.bodyPadding},onClick:e.unref(_)},I.$attrs),e.createSlots({title:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.title),1)]),actions:e.withCtx(()=>[e.renderSlot(I.$slots,"actions"),n.minimizable?(e.openBlock(),e.createBlock(e.unref(R),{key:0,icon:e.unref(V.Minimize),size:n.size,mode:"icon",type:"primary",background:"hover",onClick:F[0]||(F[0]=U=>e.unref(k)("minimized"))},null,8,["icon","size"])):e.createCommentVNode("",!0),n.maximizable?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(p)?(e.openBlock(),e.createBlock(e.unref(R),{key:1,icon:e.unref(V.Maximize),size:n.size,mode:"icon",type:"primary",background:"hover",onClick:F[2]||(F[2]=U=>e.unref(k)("maximized"))},null,8,["icon","size"])):(e.openBlock(),e.createBlock(e.unref(R),{key:0,icon:e.unref(V.Popup),size:n.size,mode:"icon",type:"primary",background:"hover",onClick:F[1]||(F[1]=U=>e.unref(k)("normal"))},null,8,["icon","size"]))],64)):e.createCommentVNode("",!0),n.closable?(e.openBlock(),e.createBlock(e.unref(R),{key:2,icon:e.unref(V.RawClose),size:n.size,mode:"icon",type:"danger",background:"hover",onClick:e.unref(S)},null,8,["icon","size","onClick"])):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[e.renderSlot(I.$slots,"default",{},()=>[n.content?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.content),{key:0})):e.createCommentVNode("",!0),n.src?(e.openBlock(),e.createElementBlock("iframe",{key:1,src:n.src,class:"x-dialog__frame"},null,8,Et)):e.createCommentVNode("",!0)])]),_:2},[n.cancel||n.submit||I.$slots.footer||I.$slots.extra||I.$slots.handle?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(I.$slots,"footer",{},()=>[e.createVNode(e.unref(B),{align:"center"},{default:e.withCtx(()=>[e.renderSlot(I.$slots,"extra")]),_:3}),e.createVNode(e.unref(B),{align:"center"},{default:e.withCtx(()=>[e.renderSlot(I.$slots,"handle"),n.cancel?(e.openBlock(),e.createBlock(e.unref(m.ElButton),{key:0,type:"default",size:n.size,onClick:e.unref(N)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof n.cancel=="string"?n.cancel:"取消"),1)]),_:1},8,["size","onClick"])):e.createCommentVNode("",!0),n.submit?(e.openBlock(),e.createBlock(e.unref(m.ElButton),{key:1,type:"primary",size:n.size,onClick:e.unref(b)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof n.submit=="string"?n.submit:"确定"),1)]),_:1},8,["size","onClick"])):e.createCommentVNode("",!0)]),_:3})])]),key:"0"}:void 0]),1040,["header","class","style","size","body","onClick"])),[[e.unref(Me),e.unref(h)],[e.unref(fe),e.unref(D)]])],2)])):e.createCommentVNode("",!0)}});function ae(a,o){const t=document.createElement("div"),n=e.createVNode(ne,a);n.appContext=o??ae._context,e.render(n,t);const l=()=>{e.render(null,t),t.parentNode?.removeChild(t)};return n.props.onDestroy=()=>{l()},document.body.appendChild(t),{vnode:n,destroy:l}}const Nt=e.createElementVNode("div",{class:"x-mask-sidebar__helper"},null,-1),zt=e.defineComponent({__name:"Sidebar",props:{collapsed:{type:Boolean}},setup(a){const o=a;return(t,n)=>e.withDirectives((e.openBlock(),e.createBlock(e.unref(B),{class:e.normalizeClass(["x-mask-sidebar",{"is-collapsed":o.collapsed}]),grow:!1,flex:"",direction:"column"},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"brand"),e.createVNode(e.unref(B),{class:"x-mask-sidebar__wrapper",flex:"",grow:"",direction:"column",justify:"space-between",align:"center"},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default"),Nt]),_:3})]),_:3},8,["class"])),[[e.unref(fe),{dirs:["e"],disabled:o.collapsed,maxWidth:500,minWidth:200}]])}}),Tt=e.defineComponent({__name:"SwitchBar",props:{collasped:{type:Boolean,default:!1},favorite:{type:Boolean,default:!1},keyword:{}},emits:["update:collasped","update:keyword","update:favorite"],setup(a,{emit:o}){const t=a,n=o,l=e.ref(!1),r=e.ref(""),c=e.ref(!1),i=()=>{l.value=!0},s=()=>{r.value="",l.value=!1,n("update:keyword",r.value)},u=()=>{n("update:collasped",!t.collasped)},d=()=>{n("update:keyword",r.value)},p=()=>{n("update:favorite",c.value)};return(g,f)=>(e.openBlock(),e.createBlock(e.unref(B),{class:"x-mask-switch-bar",justify:"space-between",align:"center"},{default:e.withCtx(()=>[t.collasped?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(B),{key:0,class:"x-mask-switch-bar__left",grow:""},{default:e.withCtx(()=>[l.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(m.ElSwitch),{key:0,modelValue:c.value,"onUpdate:modelValue":f[0]||(f[0]=y=>c.value=y),class:"x-mask-switch-bar__switch","active-icon":e.unref(V.StarFilled),"inactive-icon":e.unref(V.Menu),onChange:p},null,8,["modelValue","active-icon","inactive-icon"])),l.value?(e.openBlock(),e.createBlock(e.unref(m.ElInput),{key:1,modelValue:r.value,"onUpdate:modelValue":f[1]||(f[1]=y=>r.value=y),class:"x-mask-switch-bar__input",size:"small",placeholder:"请输入查询关键字",onInput:d,"prefix-icon":e.unref(V.Search)},{suffix:e.withCtx(()=>[e.createVNode(e.unref(j),{icon:e.unref(V.Close),onClick:s},null,8,["icon"])]),_:1},8,["modelValue","prefix-icon"])):e.createCommentVNode("",!0)]),_:1})),e.createVNode(e.unref(B),{class:e.normalizeClass(["x-mask-switch-bar__right",{"is-collasped":t.collasped}]),flex:"",align:"center",justify:"center"},{default:e.withCtx(()=>[!l.value&&!t.collasped?(e.openBlock(),e.createBlock(e.unref(R),{key:0,icon:e.unref(V.Search),mode:"icon",background:"hover",size:"default",circle:"",onClick:i},null,8,["icon"])):e.createCommentVNode("",!0),t.collasped?(e.openBlock(),e.createBlock(e.unref(R),{key:1,icon:e.unref(V.Expand),mode:"icon",size:"default",background:"hover",onClick:u,circle:""},null,8,["icon"])):e.createCommentVNode("",!0),t.collasped?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(R),{key:2,icon:e.unref(V.Fold),mode:"icon",size:"default",background:"hover",circle:"",onClick:u},null,8,["icon"]))]),_:1},8,["class"])]),_:1}))}}),Pt=["src"],Dt={key:0},Mt=e.defineComponent({__name:"Brand",props:{collapsed:{type:Boolean,default:!1},logo:{},title:{},url:{}},setup(a){const o=a,t=K.useRouter(),n=()=>{o.url&&t.push(o.url)};return(l,r)=>(e.openBlock(),e.createBlock(e.unref(B),{class:e.normalizeClass(["x-mask-brand",{"is-collapsed":o.collapsed}]),align:"center"},{default:e.withCtx(()=>[e.createVNode(e.unref(B),{class:"x-mask-brand__logo",flex:"",justify:"center",align:"center",onClick:n},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"logo",{},()=>[o.logo?(e.openBlock(),e.createElementBlock("img",{key:0,src:o.logo},null,8,Pt)):e.createCommentVNode("",!0)])]),_:3}),e.createVNode(e.unref(B),{class:"x-mask-brand__title",flex:"",align:"center"},{default:e.withCtx(()=>[o.title?(e.openBlock(),e.createElementBlock("span",Dt,[e.renderSlot(l.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(o.title),1)])])):e.createCommentVNode("",!0)]),_:3})]),_:3},8,["class"]))}}),ee="__favorites__",te="__search__",It=e.defineComponent({__name:"Menu",props:{collapse:{type:Boolean,default:!1},keyword:{},favorite:{type:Boolean},favorites:{},flatMenus:{},menus:{},active:{}},emits:["select"],setup(a,{emit:o}){const t=a,n=e.computed(()=>t.menus||[]),l=o,r=e.computed(()=>String(t.active?.id)),c=e.computed(()=>[{id:ee,title:"收藏",icon:V.Star,children:t.favorites?.length?t.favorites:[{id:ee+"empty",disabled:!0,title:"暂无收藏菜单"}]}]),i=e.computed(()=>{const u=(t.keyword||"").trim(),d=u?(t.flatMenus||[]).filter(p=>p.title?.includes(u)):[];return[{id:te,title:"搜索",icon:V.Search,children:d?.length?d:[{id:te+"empty",disabled:!0,title:"查询匹配不到菜单项"}]}]}),s=u=>{l("select",u)};return(u,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createVNode(e.unref(B),{class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(L),{subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:n.value,"default-icon":e.unref(V.Document),collapse:!0,"collapse-transition":!1,"default-active":r.value,onSelect:s},null,8,["data","default-icon","default-active"]),[[e.vShow,t.collapse]]),e.withDirectives(e.createVNode(e.unref(L),{subMenu:{popperClass:"x-mask-menu-popper",teleported:!0},data:n.value,"default-icon":e.unref(V.Document),collapse:!1,"collapse-transition":!1,"default-active":r.value,onSelect:s},null,8,["data","default-icon","default-active"]),[[e.vShow,!t.collapse]]),n.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(m.ElEmpty),{key:0,description:"暂无菜单数据"}))]),_:1},512),[[e.vShow,!t.favorite&&!t.keyword]]),e.withDirectives(e.createVNode(e.unref(B),{class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(L),{class:"x-mask-menu__favorites",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:c.value,"default-icon":e.unref(V.Document),collapse:!0,"collapse-transition":!1,"default-active":r.value,"default-openeds":[ee],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[e.vShow,t.collapse]]),e.withDirectives(e.createVNode(e.unref(L),{class:"x-mask-menu__favorites",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:c.value,"default-icon":e.unref(V.Document),collapse:!1,"collapse-transition":!1,"default-active":r.value,"default-openeds":[ee],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[e.vShow,!t.collapse]])]),_:1},512),[[e.vShow,t.favorite&&!t.keyword]]),t.keyword?e.withDirectives((e.openBlock(),e.createBlock(e.unref(B),{key:0,class:"x-mask-menu",grow:"",flex:!1,overflow:"auto"},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(L),{class:"x-mask-menu__search",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:i.value,"default-icon":e.unref(V.Document),collapse:!0,"collapse-transition":!1,"default-active":r.value,"default-openeds":[te],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[e.vShow,t.collapse]]),e.withDirectives(e.createVNode(e.unref(L),{class:"x-mask-menu__search",subMenu:{popperClass:"x-mask-menu-popper",teleported:!0,showTimeout:200,hideTimeout:200},data:i.value,"default-icon":e.unref(V.Document),collapse:!1,"collapse-transition":!1,"default-active":r.value,"default-openeds":[te],onSelect:s},null,8,["data","default-icon","default-active","default-openeds"]),[[e.vShow,!t.collapse]])]),_:1},512)),[[e.vShow,!!t.keyword]]):e.createCommentVNode("",!0)],64))}}),$t="data:image/png;base64,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",$e=140,Re={logo:{type:String,default:$t},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}},ge=Symbol(),he=Symbol(),Rt={class:"x-mask-tabs__trigger"},At={key:1},Ft=["onDragstart","onDragend"],Ot={key:1},jt=e.defineComponent({__name:"Tabs",props:{tabs:{},home:{},isActiveTab:{type:Function},value:{},favorites:{}},emits:["click","remove","refresh","toggleFavorite","dialog"],setup(a,{emit:o}){const t=a,n=o,l=d=>{const p=!!t.favorites.find(g=>g===d.menu||g.id===d.menu?.id);return[{icon:V.Refresh,label:"刷新",name:"refresh",value:d},"|",{icon:p?V.StarFilled:V.Star,label:"收藏",name:"favorite",value:d.menu,disabled:!d.menu},"|",{icon:V.CopyDocument,label:"弹窗",name:"dialog",value:d}]},r=d=>{const p=d.paneName;if(p===t.home.id){n("click",t.home);return}const g=t.tabs.find(f=>f.id===p);g&&n("click",g)},c=d=>{const p=t.tabs.find(g=>g.id===d);p&&n("remove",p)},i=d=>{switch(d.name){case"refresh":n("refresh",d.value);break;case"favorite":n("toggleFavorite",d.value);break;case"dialog":n("dialog",d.value);break}},s=(d,p)=>{p.dataTransfer&&(p.dataTransfer.setData("tab",d.id),p.target&&p.target.classList.add("is-dagging"))},u=(d,p)=>{p.target&&p.target.classList.remove("is-dagging")};return(d,p)=>(e.openBlock(),e.createBlock(e.unref(B),{ref:"tabsRef",class:"x-mask-tabs",height:"100%",grow:"",flex:"",justify:"flex-end",direction:"column"},{default:e.withCtx(()=>[e.createVNode(e.unref(m.ElTabs),{type:"card","model-value":t.value,onTabRemove:c,onTabClick:r},{default:e.withCtx(()=>[t.home?(e.openBlock(),e.createBlock(e.unref(m.ElTabPane),{key:0,name:t.home.id},{label:e.withCtx(()=>[e.createElementVNode("div",Rt,[t.home.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(H)(t.home.icon)),{key:0})):e.createCommentVNode("",!0),t.home.title?(e.openBlock(),e.createElementBlock("span",At,e.toDisplayString(t.home.title),1)):e.createCommentVNode("",!0)])]),_:1},8,["name"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,g=>(e.openBlock(),e.createBlock(e.unref(m.ElTabPane),{key:g.id,name:g.id,lazy:"",closable:""},{label:e.withCtx(()=>[e.createVNode(e.unref(m.ElPopover),{"open-delay":500,placement:"bottom",trigger:"hover",width:"200px",disabled:g.id!==t.value},{reference:e.withCtx(()=>[e.createElementVNode("div",{class:"x-mask-tabs__trigger",draggable:"true",onDragstart:f=>s(g,f),onDragend:f=>u(g,f)},[g.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(H)(g.icon)),{key:0})):e.createCommentVNode("",!0),g.title?(e.openBlock(),e.createElementBlock("span",Ot,e.toDisplayString(g.title),1)):e.createCommentVNode("",!0)],40,Ft)]),default:e.withCtx(()=>[e.createVNode(e.unref(Y),{items:l(g),mode:"text",size:"small",type:"info",onClick:i},null,8,["items"])]),_:2},1032,["disabled"])]),_:2},1032,["name"]))),128))]),_:1},8,["model-value"])]),_:1},512))}}),Lt=e.defineComponent({__name:"ThemeSwitch",setup(a){const o=A.useDark();return(t,n)=>(e.openBlock(),e.createBlock(e.unref(m.ElSwitch),{class:"x-mask-theme-switch",modelValue:e.unref(o),"onUpdate:modelValue":n[0]||(n[0]=l=>e.isRef(o)?o.value=l:null),size:"default","active-action-icon":e.unref(V.Moon),"inactive-action-icon":e.unref(V.Sunny)},null,8,["modelValue","active-action-icon","inactive-action-icon"]))}}),Xt={class:"x-mask-toolbar__menu-item"},Ut=e.defineComponent({__name:"Toolbar",props:{tabs:{default:()=>[]},actions:{},theme:{type:Boolean}},emits:["closeOtherTabs","closeAllTabs","closeTab","clickTab","actionClick","actionCommand"],setup(a,{emit:o}){const t=a,n=o,l=e.computed(()=>{const u=t.tabs.map((d,p)=>({divided:p===0,label:d.title,command:d}));return[{label:"关闭其他",command:"other"},{label:"关闭全部",command:"all"},...u]}),r=u=>{n("closeTab",u.command)},c=u=>{switch(u.command){case"all":n("closeAllTabs");break;case"other":n("closeOtherTabs");break;default:n("clickTab",u.command);break}},i=u=>{n("actionClick",u)},s=(u,d)=>{n("actionCommand",u,d)};return(u,d)=>(e.openBlock(),e.createBlock(e.unref(B),{class:"x-mask-toolbar",align:"center"},{default:e.withCtx(()=>[e.createVNode(e.unref(R),{icon:e.unref(V.MoreFilled),menus:l.value,dropdown:{size:"small"},mode:"icon",circle:"",background:"hover",onCommand:c},{item:e.withCtx(({item:p})=>[e.createElementVNode("span",Xt,[e.createTextVNode(e.toDisplayString(p.label)+" ",1),["other","all"].includes(p.command)?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(j),{key:0,onClick:e.withModifiers(g=>r(p),["stop"]),icon:e.unref(V.Close)},null,8,["onClick","icon"]))])]),_:1},8,["icon","menus"]),e.createVNode(e.unref(m.ElDivider),{direction:"vertical"}),t.actions?(e.openBlock(),e.createBlock(e.unref(Y),{key:0,circle:"",mode:"icon",size:"default",background:"hover",items:u.actions,onClick:i,onCommand:s},null,8,["items"])):e.createCommentVNode("",!0),t.actions?(e.openBlock(),e.createBlock(e.unref(m.ElDivider),{key:1,direction:"vertical"})):e.createCommentVNode("",!0),t.theme?(e.openBlock(),e.createBlock(Lt,{key:2})):e.createCommentVNode("",!0),t.theme?(e.openBlock(),e.createBlock(e.unref(m.ElDivider),{key:3,direction:"vertical"})):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"default")]),_:3}))}}),Kt=e.defineComponent({__name:"Avatar",props:{avatar:{}},setup(a){const o=a;return(t,n)=>(e.openBlock(),e.createBlock(e.unref(m.ElPopover),{width:200,"popper-class":"x-mask-avatar__popper",disabled:!t.$slots.default},{reference:e.withCtx(()=>[e.createVNode(e.unref(m.ElAvatar),{class:"x-mask-avatar",shape:"circle",icon:e.unref(V.UserFilled),src:o.avatar,size:26},null,8,["icon","src"])]),default:e.withCtx(()=>[t.$slots.default?e.renderSlot(t.$slots,"default",{key:0}):e.createCommentVNode("",!0)]),_:3},8,["disabled"]))}}),_e=e.defineComponent({__name:"Content",props:{createView:{type:Function},exclude:{}},setup(a){const o=a;return(t,n)=>(e.openBlock(),e.createBlock(e.unref(B),{class:"x-mask__content",flex:!1,grow:"",padding:!1},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default"),e.createVNode(e.unref(K.RouterView),null,{default:e.withCtx(({Component:l,route:r})=>[(e.openBlock(),e.createBlock(e.KeepAlive,{exclude:o.exclude},[l?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.createView(l,r)),{key:r.fullPath})):e.createCommentVNode("",!0)],1032,["exclude"]))]),_:1})]),_:3}))}});function Ht(){const a=e.ref(!1),o=e.ref(""),t=e.ref(!1);return{collapsed:a,keyword:o,favorite:t}}function Wt(a){const o=T.uid();return e.computed(()=>{const t=a.home;return Object.assign({id:o,url:"/",name:"MaskHome",icon:V.HomeFilled,closable:!1},typeof t=="string"?{url:t}:t||{})})}function Ae(a,o){let t=[];return a.forEach(n=>{n=o?o(n):n,n.children?t=t.concat(Ae(n.children,o)):t.push(n)}),t}function Jt(a,o){const t=K.useRouter(),n=e.shallowRef([]),l=e.shallowRef([]),r=e.computed(()=>Ae(n.value,a.menuAdapter)),c=e.computed(()=>T.arrayToMap(r.value,"id")),i=e.ref(null),s=y=>{const C=typeof y=="object"?y.id:y,k=c.value.get(C);if(!k){console.warn("找不到菜单",y);return}const{type:_="route",url:S,title:v,icon:x}=k;if(!S){i.value=k,o("select",k);return}if(_==="route"){T.isUrl(S)||S.startsWith("//")?window.open(S):(i.value=k,t.push(S).catch(b=>b));return}if(_==="window"){window.open(S);return}_==="dialog"&&ae({resizable:!0,bodyPadding:!1,width:"80%",height:"80%",title:v,icon:x,src:S})},u=async()=>{n.value=typeof a.menus=="function"?await a.menus()||[]:a.menus??[],l.value=typeof a.favorites=="function"?await a.favorites()||[]:a.favorites??[]},d=y=>{l.value=[y,...l.value],a.addFavorite&&a.addFavorite(y)},p=y=>{l.value=l.value.filter(C=>C.id!==y.id),a.removeFavorite&&a.removeFavorite(y)},g=y=>!!l.value.find(C=>C===y||C.id===y.id),f=y=>{g(y)?p(y):d(y)};return e.watchEffect(u),{menus:n,favorites:l,flatMenus:r,active:i,select:s,toggleFavorite:f}}function Qt(a,o,t,n,l){const r=K.useRoute(),c=K.useRouter(),i={},s=e.ref([]),u=e.ref(),{width:d}=A.useElementSize(u),p=e.computed(()=>Math.floor(d.value/$e)),g=e.computed(()=>s.value.slice(0,p.value).filter(w=>!w.dialog)),f=e.computed(()=>s.value.slice(p.value)),y=w=>t.value.find(E=>E.url===w),C=w=>r.fullPath===w.url,k=w=>l.value.id===w?l.value:s.value.find(E=>E.id===w),_=e.ref(""),S=e.computed(()=>k(_.value)),v=w=>{c.push(w.url).catch(E=>E)},x=w=>{_.value=w.id,r.fullPath!==w.url&&v(w)},b=()=>{v(l.value)},N=w=>{const E=s.value.find(z=>z.url===w.url||z.id===w.id);E?x(E):(s.value.unshift(w),x(w))},h=async w=>{const{url:E=r.fullPath,icon:z,title:G="新建标签页"}=w||{},q=i[E],re=T.uid(),le=T.upperFirstCamelCase(E);return{id:re,name:le,url:E,icon:z,title:G,closable:!0,menu:w,...q?await q():{}}},D=async w=>{if(await m.ElMessageBox.confirm("是否关闭页签","提示",{type:"warning"}).catch(()=>!1)){if(s.value=s.value.filter(z=>z.id!==w.id),_.value===w.id){const z=s.value[0];v(z||l.value)}return w}},M=w=>{const E=s.value.findIndex(z=>z.id===w.id);if(E>=0){const z=s.value[E];s.value.splice(E,1,Object.assign(z,w))}},X=async()=>{if(!await m.ElMessageBox.confirm("是否关闭全部页签","提示",{type:"warning"}).catch(()=>!1))return;const E=s.value;return s.value=[],x(l.value),E},I=async()=>{if(!await m.ElMessageBox.confirm("是否关闭其他页签","提示",{type:"warning"}).catch(()=>!1))return;const E=s.value.filter(z=>z.id!==_.value);return s.value=s.value.filter(z=>z.id===_.value),E},F=w=>{const E=s.value.filter(z=>z.id!==w.id);s.value=[w,...E],x(w)},U=async()=>{await e.nextTick();const w=l.value.url===r.fullPath,E=y(r.fullPath);if(w)_.value=l.value.id;else{const z=await h(E);N(z)}await e.nextTick(),n.value=E||null};return e.watch(t,U),e.watch(r,U,{immediate:!0}),e.provide(ge,i),{tabRef:u,tabs:s,showTabs:g,currentTab:S,changeTab:v,removeTab:D,updateTab:M,addTab:N,home:l,tabValue:_,isCurrentTab:C,activeHome:b,activeTab:x,dropdownTabs:f,removeAllTabs:X,removeOtherTabs:I,moveToShow:F}}function Zt(a){const o=new Map,t=e.ref([]),n=e.reactive({}),l=e.getCurrentInstance(),r={},{updateTab:c,isCurrentTab:i,activeHome:s,tabs:u}=a,d=(v,x)=>{const b=x.fullPath;if(o.has(b))return o.get(b);{const N=T.upperFirstCamelCase(b),h={name:N,setup(){const D=e.computed(()=>n[b]||document.body),M=e.computed(()=>!n[b]),X=e.computed(()=>!t.value.includes(N));return e.provide(K.routeLocationKey,e.toRaw({...x})),()=>X.value?e.h(e.Teleport,{to:D.value,disabled:M.value},[e.h(v)]):null}};return o.set(b,h),h}},p=v=>{v.dialog=void 0,delete n[v.url];const x=r[v.id];x&&(x.destroy(),delete r[v.id],c(v))},g=(v=[])=>{v.forEach(x=>{p(x)})},f=async v=>{v.dialog={...v.dialog,onMinimized:()=>{p(v)},onClose:async()=>{p(v),u.value=u.value.filter(b=>b.id!==v.id)}},c(v);const x=ae({title:v.title,icon:v.icon,modal:!1,resizable:!0,draggable:!0,maximizable:!0,minimizable:!0,...v.dialog,onOpen(b){n[v.url]=b.refs.panelRef?.bodyRef?.$el}},l?.appContext);return await e.nextTick(),i(v)&&s(),r[v.id]=x,x},y=async v=>{t.value=[v.name],await e.nextTick(),t.value=[]},C=async v=>{t.value=v.map(x=>x.name),await e.nextTick(),t.value=[]},k=v=>(v.preventDefault(),!1),_=v=>{if(v.dataTransfer){const x=v.dataTransfer.getData("tab"),b=u.value.find(N=>N.id===x);if(b){const{clientX:N,clientY:h}=v;b.dialog={left:N,top:h},f(b)}}},S=v=>!!n[v];return A.useEventListener(document,"dragover",k),A.useEventListener(document,"drop",_),{createView:d,openDialog:f,refresh:y,exclude:t,cleanCache:C,hasDialog:S,closeDialog:p,closeDialogs:g}}const Fe=e.defineComponent({name:"XMask",__name:"Mask",props:Re,emits:["select","actionClick","actionCommand"],setup(a,{emit:o}){const t=a,n=o,l=Wt(t),{collapsed:r,keyword:c,favorite:i}=Ht(),{menus:s,favorites:u,flatMenus:d,active:p,select:g,toggleFavorite:f}=Jt(t,n),{tabRef:y,showTabs:C,currentTab:k,changeTab:_,removeTab:S,tabs:v,updateTab:x,isCurrentTab:b,activeHome:N,removeAllTabs:h,removeOtherTabs:D,dropdownTabs:M,moveToShow:X}=Qt(t,n,d,p,l),{createView:I,openDialog:F,refresh:U,exclude:w,cleanCache:E,closeDialogs:z}=Zt({tabs:v,updateTab:x,isCurrentTab:b,activeHome:N}),G=async P=>{await S(P)&&await E([P])},q=async()=>{const P=await h();P&&(z(P),await E(P))},re=async()=>{const P=await D();P&&(z(P),await E(P))},le=P=>{n("actionClick",P)},et=(P,O)=>{n("actionCommand",P,O)};return e.provide(he,{tabs:v,flatMenus:d,favorites:u,updateTab:x,active:p,currentTab:k}),(P,O)=>(e.openBlock(),e.createBlock(e.unref(B),{class:e.normalizeClass(["x-mask",{"is-disabled":t.disabled}]),fit:""},{default:e.withCtx(()=>[t.disabled?(e.openBlock(),e.createBlock(_e,{key:1,createView:e.unref(I),exclude:e.unref(w)},{default:e.withCtx(()=>[P.$slots.default?e.renderSlot(P.$slots,"default",{key:0}):e.createCommentVNode("",!0)]),_:3},8,["createView","exclude"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(zt,{collapsed:e.unref(r)},{brand:e.withCtx(()=>[e.createVNode(Mt,{logo:t.logo,title:t.title,url:e.unref(l).url,collapsed:e.unref(r)},null,8,["logo","title","url","collapsed"])]),default:e.withCtx(()=>[e.createVNode(Tt,{collasped:e.unref(r),"onUpdate:collasped":O[0]||(O[0]=Q=>e.isRef(r)?r.value=Q:null),favorite:e.unref(i),"onUpdate:favorite":O[1]||(O[1]=Q=>e.isRef(i)?i.value=Q:null),keyword:e.unref(c),"onUpdate:keyword":O[2]||(O[2]=Q=>e.isRef(c)?c.value=Q:null)},null,8,["collasped","favorite","keyword"]),e.createVNode(It,{collapse:e.unref(r),keyword:e.unref(c),favorite:e.unref(i),favorites:e.unref(u),flatMenus:e.unref(d),menus:e.unref(s),active:e.unref(p),onSelect:e.unref(g)},null,8,["collapse","keyword","favorite","favorites","flatMenus","menus","active","onSelect"])]),_:1},8,["collapsed"]),e.createVNode(e.unref(B),{class:"x-mask__main",grow:"",shrink:"",flex:"",direction:"column"},{default:e.withCtx(()=>[e.createVNode(e.unref(B),{class:"x-mask-topbar",justify:"space-between",align:"center"},{default:e.withCtx(()=>[e.createVNode(jt,{ref_key:"tabRef",ref:y,favorites:e.unref(u),tabs:e.unref(C),home:e.unref(l),value:e.unref(k)?.id,onClick:e.unref(_),onToggleFavorite:e.unref(f),onRemove:G,onDialog:e.unref(F),onRefresh:e.unref(U)},null,8,["favorites","tabs","home","value","onClick","onToggleFavorite","onDialog","onRefresh"]),e.createVNode(Ut,{tabs:e.unref(M),actions:t.actions,theme:t.theme,onCloseOtherTabs:re,onCloseAllTabs:q,onCloseTab:G,onClickTab:e.unref(X),onActionClick:le,onActionCommand:et},{default:e.withCtx(()=>[e.createVNode(Kt,{avatar:t.avatar},e.createSlots({_:2},[P.$slots.user?{name:"default",fn:e.withCtx(()=>[e.renderSlot(P.$slots,"user")]),key:"0"}:void 0]),1032,["avatar"])]),_:3},8,["tabs","actions","theme","onClickTab"])]),_:3}),e.createVNode(_e,{createView:e.unref(I),exclude:e.unref(w)},{default:e.withCtx(()=>[P.$slots.default?e.renderSlot(P.$slots,"default",{key:0}):e.createCommentVNode("",!0)]),_:3},8,["createView","exclude"])]),_:3})],64))]),_:3},8,["class"]))}});function Yt(a={}){const o=K.useRoute(),t=e.inject(ge,null),n=e.inject(he,null);if(t){const r=typeof a=="function"?a:async()=>a;t[o.fullPath]=r}return{tab:e.computed(()=>n?n.tabs.value.find(r=>r.url===o.fullPath):null),mask:n}}const Gt=e.defineComponent({__name:"SelectEditor",props:{options:{default:()=>[]}},setup(a){const o=a;return(t,n)=>(e.openBlock(),e.createBlock(e.unref(m.ElSelect),e.normalizeProps(e.guardReactiveProps(t.$attrs)),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options,(l,r)=>(e.openBlock(),e.createBlock(e.unref(m.ElOption),e.mergeProps({key:`item_${r}_${l.value}`},l),e.createSlots({_:2},[t.$slots.option?{name:"default",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"option",{option:l})]),key:"0"}:void 0]),1040))),128))]),_:3},16))}}),qt=e.defineComponent({__name:"CheckboxEditor",props:{options:{default:()=>[]},button:{type:Boolean,default:!1}},setup(a){const o=a,t=e.computed(()=>e.markRaw(o.button?m.ElCheckboxButton:m.ElCheckbox));return(n,l)=>(e.openBlock(),e.createBlock(e.unref(m.ElCheckboxGroup),e.normalizeProps(e.guardReactiveProps(n.$attrs)),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options,(r,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.value),{key:`item_${c}_${r.value}`,label:r.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.label),1)]),_:2},1032,["label"]))),128))]),_:1},16))}}),eo=e.defineComponent({__name:"RadioEditor",props:{options:{default:()=>[]},button:{type:Boolean,default:!1}},setup(a){const o=a,t=e.computed(()=>e.markRaw(o.button?m.ElRadioButton:m.ElRadio));return(n,l)=>(e.openBlock(),e.createBlock(e.unref(m.ElRadioGroup),e.normalizeProps(e.guardReactiveProps(n.$attrs)),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options,(r,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.value),{key:`item_${c}_${r.value}`,label:r.value},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.label),1)]),_:2},1032,["label"]))),128))]),_:1},16))}}),ye={none:{component:"div",props:{class:"x-field-none"}},text:{component:m.ElInput,props:{clearable:!0},defaultValue:""},textarea:{component:m.ElInput,props:{type:"textarea",rows:2},defaultValue:""},select:{component:Gt,props:{clearable:!0}},checkbox:{component:qt,props:{},defaultValue:[]},radio:{component:eo,props:{}},number:{component:m.ElInputNumber,props:{}},date:{component:m.ElDatePicker,props:{}},time:{component:m.ElTimePicker,props:{}},datetime:{component:m.ElDatePicker,props:{type:"datetime"}},switch:{component:m.ElSwitch,props:{}},rate:{component:m.ElRate,props:{}},slider:{component:m.ElSlider,props:{}},cascader:{component:m.ElCascader,props:{}}},Oe={name:{type:String},label:{type:String},editor:{type:[String,Object],default:"text"},props:{type:Object},modelValue:{type:[String,Number,Boolean,Object,Array],default(a){return ye[a.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}};async function to(a,o){const t=a.options;return t?typeof t=="function"?await t(o)||[]:t:[]}function oo(a,o,t,n,l){const r=e.ref([]),c=e.computed(()=>!n||!l?{}:T.toArray(a.cascader).reduce((u,d)=>(u[d]=T.get(l,d),u),{}));return e.watch(c,async s=>{if(t.value){r.value=await to(a,s);const u=n?.exposed?.reset;u&&a.name&&u(a.name)}},{immediate:!0}),{editor:e.computed(()=>{const{editor:s="text",placeholder:u,label:d="...",disabled:p,readonly:g}=a,f={...a.props,placeholder:u||(u===null?void 0:`请输入${d}`),disabled:p,readonly:g,options:r.value,onFocus:()=>o("focus"),onBlur:()=>o("blur"),onChange:C=>o("change",C)},y=typeof s=="string"?ye[s]:{component:s,props:{}};return T.merge({},y,{props:f})})}}const no={key:1,class:"el-form-item__error"},ao={class:"x-field__editor_wrap"},ro={key:0,class:"x-field__tip"},ve=e.defineComponent({name:"XField",__name:"Field",props:Oe,emits:["update:modelValue","change","focus","blur"],setup(a,{expose:o,emit:t}){const n=a,l=t,r=e.inject(ke,null),c=e.inject(m.formContextKey,null),i=e.inject(be,null),s=e.computed(()=>!r?.proxy||!i?n.visible:typeof n.visible=="function"?n.visible(i):T.isObject(n.visible)?Object.entries(n.visible).every(([D,M])=>T.get(i,D)===M):n.visible),u=()=>r?.proxy&&i&&n.name?T.get(i,n.name)??n.modelValue:n.modelValue,d=e.ref(u()),{editor:p}=oo(n,l,s,r,i),g=e.ref(),f=e.ref(),y=e.computed(()=>n.size||c?.size||"default"),C=e.computed(()=>Object.assign({},r?.props.tooltipMessage||{},typeof n.tooltipMessage=="boolean"?{}:n.tooltipMessage)),k=(h="")=>n.error?n.error:h.includes("is required")?`${n.label||n.name}是必填项!`:h,_=e.computed(()=>{const h=r?.props.tooltipMessage??n.tooltipMessage;return{[`is-tooltip-${n.tooltipPosition}`]:!!h&&!!n.tooltipPosition}}),S=e.computed(()=>{const h=r?.proxy;return{width:n.width?$(n.width):h&&h.inline&&h.inlineColumns?`${100/h.inlineColumns}%`:null}}),v=e.computed(()=>({right:typeof n.tooltipPosition=="number"?`${n.tooltipPosition}px`:void 0})),x=e.computed(()=>({...p.value.props,modelValue:d.value,"onUpdate:modelValue":h=>{d.value=h}}));return e.watch(d,(h,D)=>{s.value&&!T.isEqual(h,D)&&(l("update:modelValue",h),r?.proxy&&i&&n.name&&T.set(i,n.name,h))}),e.watch(()=>!r?.proxy||!n.name||!i?n.modelValue:T.get(i,n.name)??n.modelValue,h=>{s.value&&(d.value=h)},{immediate:!0}),e.watch(s,h=>{r?.proxy&&i&&n.name&&(h?(d.value=u(),T.set(i,n.name,d.value)):(d.value=void 0,T.set(i,n.name,void 0)))},{immediate:!0}),o({fieldValue:d,itemRef:g,editorRef:f,focus:()=>{f.value?.focus&&f.value.focus()},blur:()=>{f.value?.foucs&&f.value.blur()}}),(h,D)=>s.value?(e.openBlock(),e.createBlock(e.unref(m.ElFormItem),e.mergeProps({key:0,class:["x-field",_.value],ref_key:"itemRef",ref:g,prop:n.name,label:h.label,size:y.value,style:S.value},h.$attrs),e.createSlots({error:e.withCtx(({error:M})=>[e.renderSlot(h.$slots,"error",{error:M},()=>[e.unref(r)?.props.tooltipMessage??n.tooltipMessage?(e.openBlock(),e.createElementBlock("div",{key:0,class:"x-field__info",style:e.normalizeStyle(v.value)},[e.createVNode(e.unref(m.ElTooltip),e.mergeProps({content:k(M)},C.value),{default:e.withCtx(()=>[e.createVNode(e.unref(j),{class:"x-field__trigger",icon:e.unref(V.WarningFilled),size:y.value},null,8,["icon","size"])]),_:2},1040,["content"])],4)):(e.openBlock(),e.createElementBlock("div",no,e.toDisplayString(k(M)),1))])]),default:e.withCtx(()=>[e.createElementVNode("div",ao,[e.renderSlot(h.$slots,"editor",{editor:x.value},()=>[e.unref(p).component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(p).component),e.mergeProps({key:0,class:"x-field__editor",ref_key:"editorRef",ref:f,modelValue:d.value,"onUpdate:modelValue":D[0]||(D[0]=M=>d.value=M)},e.unref(p).props),e.createSlots({_:2},[h.$slots.option?{name:"option",fn:e.withCtx(({option:M})=>[e.renderSlot(h.$slots,"option",{option:M})]),key:"0"}:void 0]),1040,["modelValue"])):e.createCommentVNode("",!0)]),n.tip||h.$slots.tip?(e.openBlock(),e.createElementBlock("div",ro,[e.renderSlot(h.$slots,"tip",{},()=>[e.createTextVNode(e.toDisplayString(n.tip),1)])])):e.createCommentVNode("",!0)]),e.renderSlot(h.$slots,"default")]),_:2},[h.$slots.label?{name:"label",fn:e.withCtx(()=>[e.renderSlot(h.$slots,"label")]),key:"0"}:void 0]),1040,["prop","label","size","class","style"])):e.createCommentVNode("",!0)}}),je={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}},ke=Symbol("formInstanceKey"),be=Symbol("formModelKey"),we=e.defineComponent({name:"XForm",__name:"Form",props:je,emits:["change","submit","reset"],setup(a,{expose:o,emit:t}){const n=a,l=t,r=e.getCurrentInstance(),c=e.ref(),i=e.reactive(n.model||{}),s=e.ref(!1);e.provide(ke,r),e.provide(be,i),e.watch(i,()=>{l("change",e.toRaw(i))}),e.watch(()=>n.model,p=>{Object.assign(i,p)},{deep:!0});const u=async()=>{await c.value.validate().catch(()=>!1)&&(l("submit",e.toRaw(i)),n.submitMethod&&(s.value=!0,await n.submitMethod(e.toRaw(i)),s.value=!1))},d=p=>{c.value.resetFields(p),l("reset")};return o({formRef:c,model:i,submit:u,reset:d}),(p,g)=>(e.openBlock(),e.createBlock(e.unref(m.ElForm),e.mergeProps({ref_key:"formRef",ref:c,class:"x-form",inline:n.inline,model:i,onKeyup:e.withKeys(u,["enter"]),onSubmit:g[1]||(g[1]=e.withModifiers(()=>{},["stop","prevent"]))},p.$attrs),{default:e.withCtx(()=>[e.renderSlot(p.$slots,"default"),n.footer?(e.openBlock(),e.createBlock(e.unref(ve),{key:0,editor:"none",class:"x-form__footer",label:" "},{editor:e.withCtx(()=>[e.renderSlot(p.$slots,"footer",{},()=>[n.submitText?(e.openBlock(),e.createBlock(e.unref(m.ElButton),{key:0,loading:s.value,type:"primary",onClick:u},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.submitText),1)]),_:1},8,["loading"])):e.createCommentVNode("",!0),n.resetText?(e.openBlock(),e.createBlock(e.unref(m.ElButton),{key:1,type:"default",onClick:g[0]||(g[0]=()=>d())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.resetText),1)]),_:1})):e.createCommentVNode("",!0),e.renderSlot(p.$slots,"action")])]),_:3})):e.createCommentVNode("",!0)]),_:3},16,["inline","model"]))}}),Le={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}},Xe=e.defineComponent({name:"XDialogForm",__name:"DialogForm",props:Le,emits:["update:modelValue","submit","close"],setup(a,{expose:o,emit:t}){const n=a,l=t,r=e.ref(),c=e.ref(),i=e.computed(()=>c.value?.$vtjEl),s=()=>{r.value?.submit()},u=()=>{l("update:modelValue",!1),l("close")},d=async f=>{l("submit",f),n.submitMethod?await n.submitMethod(f)&&u():u()},p=e.computed(()=>n.formProps?.disabled?!1:n.submit),g=e.computed(()=>n.formProps?.disabled?!1:n.cancel);return o({$vtjEl:i,formRef:r,dialogRef:c}),(f,y)=>(e.openBlock(),e.createBlock(e.unref(ne),e.mergeProps({ref_key:"dialogRef",ref:c,class:"x-dialog-form","model-value":n.modelValue,submit:p.value,cancel:g.value,size:n.size,onSubmit:s,onClose:u,minimizable:!1,maximizable:!1},f.$attrs),e.createSlots({default:e.withCtx(()=>[e.createVNode(e.unref(we),e.mergeProps({ref_key:"formRef",ref:r,class:"x-dialog-form__form",footer:!1,"label-width":"80px",size:n.size,model:n.model,rules:n.rules,"submit-method":d},n.formProps),{default:e.withCtx(()=>[e.renderSlot(f.$slots,"default")]),_:3},16,["size","model","rules"])]),_:2},[f.$slots.extra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"extra")]),key:"0"}:void 0,f.$slots.handle?{name:"handle",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"handle")]),key:"1"}:void 0,f.$slots.footer?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"footer")]),key:"2"}:void 0]),1040,["model-value","submit","cancel","size"]))}}),Ue={items:{type:Array,default(){return[]}},border:{type:Boolean}},Ke=e.defineComponent({name:"XTabs",__name:"Tabs",props:Ue,setup(a){const o=a,t=l=>{const{label:r,name:c,value:i,disabled:s,closable:u,lazy:d}=l;return{label:r,name:i??c,disabled:s,closable:u,lazy:d}},n=e.computed(()=>({"is-no-border":!o.border}));return(l,r)=>(e.openBlock(),e.createBlock(e.unref(m.ElTabs),e.mergeProps({class:["x-tabs",n.value]},l.$attrs),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.items,c=>(e.openBlock(),e.createBlock(e.unref(m.ElTabPane),e.mergeProps({key:c.value??c.name},t(c)),{label:e.withCtx(()=>[e.renderSlot(l.$slots,"label",e.normalizeProps(e.guardReactiveProps(c)),()=>[c.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(H)(c.icon)),{key:0,class:"x-tabs__icon"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.label),1)])]),default:e.withCtx(()=>[e.renderSlot(l.$slots,"default",e.normalizeProps(e.guardReactiveProps(c)),()=>[c.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.component),e.normalizeProps(e.mergeProps({key:0},c.props)),null,16)):e.createCommentVNode("",!0)])]),_:2},1040))),128))]),_:3},16,["class"]))}}),He={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}},lo={class:"x-data-item__title"},io={key:1,class:"x-data-item__section x-data-item__desc"},so={key:2,class:"x-data-item__section x-data-item__extra"},co={key:3,class:"x-data-item__section x-data-item__actions"},We=e.defineComponent({name:"XDataItem",__name:"DataItem",props:He,emits:["imageClick","titleClick","actionClick","actionCommand"],setup(a,{emit:o}){const t=a,n=o,l=e.computed(()=>{const{imageWidth:p,imageHeight:g}=t;return{width:p?$(p):void 0,height:g?$(g):void 0}}),r=e.computed(()=>({[`is-image-${t.direction}`]:!!t.direction,"is-split":!!t.split})),c=e.computed(()=>({size:"small",mode:"text",justify:"flex-end",type:"info",items:t.actions,...t.actionBarProps})),i=()=>n("imageClick"),s=()=>n("titleClick"),u=p=>n("actionClick",p),d=(p,g)=>n("actionCommand",p,g);return(p,g)=>(e.openBlock(),e.createBlock(e.unref(B),{class:e.normalizeClass(["x-data-item",r.value]),direction:t.direction},{default:e.withCtx(()=>[t.imageSrc||p.$slots.image?(e.openBlock(),e.createBlock(e.unref(B),{key:0,class:"x-data-item__img",autoPointer:!0,onClick:t.onImageClick?i:void 0},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"image",{},()=>[t.imageSrc?(e.openBlock(),e.createBlock(e.unref(m.ElImage),{key:0,style:e.normalizeStyle(l.value),src:t.imageSrc},null,8,["style","src"])):e.createCommentVNode("",!0)])]),_:3},8,["onClick"])):e.createCommentVNode("",!0),e.createVNode(e.unref(B),{class:"x-data-item__content",direction:"column",grow:"",shrink:""},{default:e.withCtx(()=>[t.title||p.$slots.title?(e.openBlock(),e.createBlock(e.unref(B),{key:0,class:"x-data-item__section x-data-item__wrapper",align:"center",autoPointer:!0,onClick:t.onTitleClick?s:void 0},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(H)(t.icon)),{key:0,class:"x-data-item__icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",lo,[e.renderSlot(p.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])])]),_:3},8,["onClick"])):e.createCommentVNode("",!0),t.description||p.$slots.description?(e.openBlock(),e.createElementBlock("div",io,[e.renderSlot(p.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.description),1)])])):e.createCommentVNode("",!0),p.$slots.default?(e.openBlock(),e.createElementBlock("div",so,[e.renderSlot(p.$slots,"default")])):e.createCommentVNode("",!0),t.actions||t.actionBarProps||p.$slots.actions?(e.openBlock(),e.createElementBlock("div",co,[e.renderSlot(p.$slots,"actions",{},()=>[e.createVNode(e.unref(Y),e.mergeProps(c.value,{onClick:u,onCommand:d}),null,16)])])):e.createCommentVNode("",!0)]),_:3})]),_:3},8,["direction","class"]))}}),Je={option:{type:Object},width:{type:[Number,String],default:"100%"},height:{type:[Number,String],default:"400px"}};function uo(){return import("echarts")}function po(a,o){const t=e.ref(),n=e.shallowRef();return e.onMounted(async()=>{n.value=await uo();const l=e.unref(a);l&&(t.value||(t.value=e.markRaw(n.value.init(l))),t.value&&t.value.setOption(o.option||{}))}),e.onUnmounted(()=>{t.value&&t.value.dispose()}),e.watch(()=>o.option,l=>{t.value&&t.value.setOption(l||{})},{deep:!0}),A.useResizeObserver(a,T.debounce(()=>{t.value&&t.value.resize()},150)),{echartsInstance:t,echarts:n}}const Qe=e.defineComponent({name:"XChart",__name:"Chart",props:Je,setup(a,{expose:o}){const t=a,n=e.ref(),{echartsInstance:l,echarts:r}=po(n,t),c=e.computed(()=>({width:$(t.width),height:$(t.height)}));return o({chartRef:n,echartsInstance:l,echarts:r}),(i,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"chartRef",ref:n,style:e.normalizeStyle(c.value)},null,4))}}),Ze={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]}},mo={key:0,class:"x-list__loading"},fo={key:1,class:"x-list__nomore"},go={key:0,class:"x-list__loading"},ho={key:1,class:"x-list__nomore"},yo={key:1,class:"x-list__pager"},Ye=e.defineComponent({name:"XList",__name:"List",props:Ze,emits:["load"],setup(a,{expose:o,emit:t}){const n=a,l=t,r=e.reactive({page:n.page,pageSize:n.pageSize});e.watchEffect(()=>{const{page:b,pageSize:N}=n;Object.assign(r,{page:b,pageSize:N})});const{data:c,loading:i}=Ne(n.data,{list:[],total:0},r),s=e.computed(()=>Math.ceil((c.value.total||0)/r.pageSize)),u=e.ref(!1),d=e.ref(),p=e.computed(()=>({width:$(n.width),height:$(n.height)})),g=e.computed(()=>({"is-virtual":!!n.itemHeight})),f=e.computed(()=>{const b={};for(let[N,h]of Object.entries(se(n.infiniteScroll)))b[`infinite-scroll-${N}`]=h;return(i.value||u.value)&&(b["infinite-scroll-disabled"]=!0),b}),y=e.computed(()=>se(n.pager,{})),{list:C,containerProps:k,wrapperProps:_,scrollTo:S}=A.useVirtualList(e.computed(()=>c.value.list),{itemHeight:n.itemHeight||0}),v=()=>{!n.infiniteScroll||u.value||(r.page<s.value?(++r.page,l("load",r)):u.value=!0)},x=b=>n.dataKey?b[n.dataKey]:void 0;return o({list:C,scrollTo:S,wrapperRef:d,loading:i,state:r,pageCount:s,nomore:u,data:c,getKey:x}),(b,N)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["x-list",g.value]),style:e.normalizeStyle(p.value)},[!e.unref(c).total&&!e.unref(i)?e.renderSlot(b.$slots,"empty",{key:0},()=>[e.createVNode(e.unref(m.ElEmpty))]):e.createCommentVNode("",!0),e.createElementVNode("div",e.mergeProps({class:"x-list__content"},e.unref(k)),[n.itemHeight?e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,class:"x-list__wrapper",ref_key:"wrapperRef",ref:d},{...e.unref(_),...f.value}),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C),(h,D)=>e.renderSlot(b.$slots,"default",e.normalizeProps(e.mergeProps({key:x(h.data)},{item:h.data,index:D})),()=>[e.createElementVNode("div",null,e.toDisplayString(h),1)])),128)),e.unref(i)?(e.openBlock(),e.createElementBlock("div",mo,[e.renderSlot(b.$slots,"loading",{},()=>[e.createTextVNode(" 正在加载数据... ")])])):e.createCommentVNode("",!0),u.value?(e.openBlock(),e.createElementBlock("div",fo,[e.renderSlot(b.$slots,"nomore",{},()=>[e.createTextVNode(" 没有更多数据 ")])])):e.createCommentVNode("",!0)],16)),[[e.unref(m.ElInfiniteScroll),v]]):e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:1,class:"x-list__wrapper"},f.value),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c).list,(h,D)=>e.renderSlot(b.$slots,"default",e.normalizeProps(e.mergeProps({key:x(h)},{item:h,index:D})),()=>[e.createElementVNode("div",null,e.toDisplayString(h),1)])),128)),e.unref(i)?(e.openBlock(),e.createElementBlock("div",go,[e.renderSlot(b.$slots,"loading",{},()=>[e.createTextVNode(" 正在加载数据... ")])])):e.createCommentVNode("",!0),u.value?(e.openBlock(),e.createElementBlock("div",ho,[e.renderSlot(b.$slots,"nomore",{},()=>[e.createTextVNode(" 没有更多数据 ")])])):e.createCommentVNode("",!0)],16)),[[e.unref(m.ElInfiniteScroll),v]])],16),n.pager?(e.openBlock(),e.createElementBlock("div",yo,[e.createVNode(e.unref(m.ElPagination),e.mergeProps({small:"",background:"",layout:"prev, pager, next",total:e.unref(c).total,"default-page-size":n.pageSize,"default-current-page":n.page,"current-page":r.page,"onUpdate:currentPage":N[0]||(N[0]=h=>r.page=h),"page-size":r.pageSize,"onUpdate:pageSize":N[1]||(N[1]=h=>r.pageSize=h)},y.value),null,16,["total","default-page-size","default-current-page","current-page","page-size"])])):e.createCommentVNode("",!0)],6))}}),Ge={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}},vo={class:"x-test__slot"},ko={class:"x-test__slot"},qe=e.defineComponent({name:"XTest",__name:"Test",props:Ge,emits:["click","submit","change","update:modelValue","update:syncProp"],setup(a,{expose:o,emit:t}){const n=a,l=t,r=e.computed(()=>Object.entries(n)),c=e.computed({get(){return n.modelValue},set(f){l("update:modelValue",f)}}),i=e.computed({get(){return n.syncProp},set(f){l("update:syncProp",f)}}),s=e.ref("default inner data"),u=()=>{m.ElMessage.info({message:"触发click事件"}),l("click",n)},d=()=>{m.ElMessage.info({message:"触发submit事件"}),l("submit",n)},p=f=>{s.value=f,l("change",s.value)},g=()=>{p("user click change:"+Date.now())};return o({click:u,submit:d,data:s,change:p}),(f,y)=>(e.openBlock(),e.createBlock(e.unref(W),{class:"x-test",header:"VTJ 低代码测试组件",border:""},{default:e.withCtx(()=>[e.createVNode(e.unref(m.ElDivider),null,{default:e.withCtx(()=>[e.createTextVNode("内部数据")]),_:1}),e.createVNode(e.unref(B),null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.value),1)]),_:1}),e.createVNode(e.unref(m.ElDivider),null,{default:e.withCtx(()=>[e.createTextVNode("属性")]),_:1}),e.createVNode(e.unref(m.ElDescriptions),{column:3,border:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,([C,k])=>(e.openBlock(),e.createBlock(e.unref(m.ElDescriptionsItem),{label:C},{default:e.withCtx(()=>[e.createElementVNode("pre",null,e.toDisplayString(JSON.stringify(k,null,2)),1)]),_:2},1032,["label"]))),256))]),_:1}),e.createVNode(e.unref(m.ElDivider),null,{default:e.withCtx(()=>[e.createTextVNode("插槽")]),_:1}),e.createVNode(e.unref(B),{justify:"space-around",flex:"",gap:""},{default:e.withCtx(()=>[e.createVNode(e.unref(W),{header:"default",grow:"",card:""},{default:e.withCtx(()=>[e.createElementVNode("div",vo,[e.renderSlot(f.$slots,"default",{props:n,data:s.value},()=>[e.createElementVNode("pre",null,e.toDisplayString(JSON.stringify({props:n,data:s.value},null,2)),1)])])]),_:3}),e.createVNode(e.unref(W),{header:"extra",grow:"",card:""},{default:e.withCtx(()=>[e.createElementVNode("div",ko,[e.renderSlot(f.$slots,"extra",{props:n,data:s.value},()=>[e.createElementVNode("pre",null,e.toDisplayString(JSON.stringify({props:n,data:s.value},null,2)),1)])])]),_:3})]),_:3}),e.createVNode(e.unref(m.ElDivider),null,{default:e.withCtx(()=>[e.createTextVNode("双向绑定")]),_:1}),e.createVNode(e.unref(B),null,{default:e.withCtx(()=>[e.createVNode(e.unref(m.ElDescriptions),{column:2,border:""},{default:e.withCtx(()=>[e.createVNode(e.unref(m.ElDescriptionsItem),{label:"modelValue"},{default:e.withCtx(()=>[e.createVNode(e.unref(m.ElInput),{modelValue:c.value,"onUpdate:modelValue":y[0]||(y[0]=C=>c.value=C)},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(m.ElDescriptionsItem),{label:"syncProp"},{default:e.withCtx(()=>[e.createVNode(e.unref(m.ElInput),{modelValue:i.value,"onUpdate:modelValue":y[1]||(y[1]=C=>i.value=C)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),e.createVNode(e.unref(m.ElDivider),null,{default:e.withCtx(()=>[e.createTextVNode("事件和方法")]),_:1}),e.createVNode(e.unref(B),null,{default:e.withCtx(()=>[e.createVNode(e.unref(m.ElButton),{onClick:u},{default:e.withCtx(()=>[e.createTextVNode("click")]),_:1}),e.createVNode(e.unref(m.ElButton),{onClick:d},{default:e.withCtx(()=>[e.createTextVNode("submit")]),_:1}),e.createVNode(e.unref(m.ElButton),{onClick:g},{default:e.withCtx(()=>[e.createTextVNode("change")]),_:1})]),_:1})]),_:3}))}}),bo=[j,L,R,Y,B,me,W,ne,Fe,ve,we,Xe,Ke,We,Qe,Ye,qe];exports.Draggable=ue;exports.INSTALLED_KEY=ce;exports.MASK_KEY=he;exports.Resizable=de;exports.TAB_CREATORS_KEY=ge;exports.TAB_ITEM_WIDTH=$e;exports.VTJ_UI_VERSION=st;exports.XAction=R;exports.XActionBar=Y;exports.XChart=Qe;exports.XContainer=B;exports.XDataItem=We;exports.XDialog=ne;exports.XDialogForm=Xe;exports.XField=ve;exports.XForm=we;exports.XHeader=me;exports.XIcon=j;exports.XList=Ye;exports.XMask=Fe;exports.XMenu=L;exports.XPanel=W;exports.XTabs=Ke;exports.XTest=qe;exports.actionBarProps=ze;exports.actionProps=pe;exports.builtinFieldEditors=ye;exports.chartProps=Je;exports.components=bo;exports.containerProps=Te;exports.createDialog=ae;exports.dataItemProps=He;exports.defineTab=Yt;exports.dialogFormProps=Le;exports.dialogProps=Ie;exports.fieldProps=Oe;exports.formInstanceKey=ke;exports.formModelKey=be;exports.formProps=je;exports.getSizeValue=$;exports.headerProps=Pe;exports.iconProps=Se;exports.iconSizeMap=xe;exports.listProps=Ze;exports.makeInstaller=ct;exports.maskProps=Re;exports.panelProps=De;exports.parseSize=Z;exports.tabsProps=Ue;exports.testProps=Ge;exports.toObjectProps=se;exports.useDisabled=oe;exports.useIcon=H;exports.useIconProps=Ee;exports.useLoader=Ne;exports.vDraggable=Me;exports.vResizable=fe;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
var VtjUI=function(w,v){"use strict";/**!
|
|
2
|
+
* Copyright (c) 2024, VTJ.PRO All rights reserved.
|
|
3
|
+
* @name @vtj/ui
|
|
4
|
+
* @author CHC chenhuachun1549@dingtalk.com
|
|
5
|
+
* @version 0.7.0
|
|
6
|
+
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
7
|
+
*/const wt="0.7.0",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 A(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)}))}}),Ct=["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?A(t.radius):void 0,padding:t.padding?A(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,Ct)):Vue.createCommentVNode("",!0)])]),_:3},8,["class","color","size","style"]))}}),Bt={class:"x-menu__wrapper"},_t={key:1,class:"x-menu__title"},St=Vue.createElementVNode("i",null,null,-1),xt={key:0,class:"x-menu__title"},Et=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",_t,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(()=>[St]),_: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",xt,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(()=>[Et]),_: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 Pt(n){return Vue.computed(()=>{const t=n.tooltip;if(t)return typeof t=="string"?{content:t}:t})}function Nt(n){return Vue.computed(()=>{const t=n.badge;if(t)return typeof t=="object"?t:{value:t}})}function zt(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,o)));return Vue.watch(()=>n,()=>{a(e)},{immediate:!0}),e&&Vue.watch(e,()=>{a(e)}),{data:o,loading:u,loader:a}}const Tt={key:0},Dt=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.stopPropagation(),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",Tt,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=Pt(e),a=Nt(e),r=zt(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=h=>{if(s.value)return;const C=e.menus?.find(_=>_.command===h);C&&u("command",Vue.toRaw(C))},V=h=>Vue.h(ElementPlus.ElBadge,a.value,()=>[].concat(h)),p=h=>Vue.h(ElementPlus.ElDropdown,{...r.value,disabled:s.value,onCommand:i},{default:()=>[h],dropdown:()=>[Vue.h(ElementPlus.ElDropdownMenu,()=>(e.menus||[]).map(C=>Vue.h(ElementPlus.ElDropdownItem,C,()=>o.item?o.item({item:C}):C.label)))]}),m=h=>Vue.h(ElementPlus.ElTooltip,{...l.value,disabled:s.value},()=>[h]),y=Vue.computed(()=>{let h=o.default?o.default()[0]:Vue.h(Vue.markRaw(Dt),{...e,onClick:d});return a.value&&(h=V(h)),r.value&&(h=p(h)),l.value&&(h=m(h)),h});return(h,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?A(r):void 0,height:s?A(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}},It={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",It,[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 Mt=Object.prototype.toString,Rt=n=>Mt.call(n)==="[object Object]",Ae=()=>{};function $t(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 je=n=>n();function At(n=je){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 jt(n){return n||v.getCurrentInstance()}function Ot(...n){if(n.length!==1)return v.toRef(...n);const t=n[0];return typeof t=="function"?v.readonly(v.customRef(()=>({get:t,set:Ae}))):v.ref(t)}function Ft(n,t,e={}){const{eventFilter:o=je,...u}=e;return v.watch(n,$t(o,t),u)}function Lt(n,t,e={}){const{eventFilter:o,...u}=e,{eventFilter:l,pause:a,resume:r,isActive:s}=At(o);return{stop:Ft(n,t,{...u,eventFilter:l}),pause:a,resume:r,isActive:s}}function Ut(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){jt()?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 Ae;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=Rt(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 Xt(){const n=v.ref(!1);return v.getCurrentInstance()&&v.onMounted(()=>{n.value=!0}),n}function Oe(n){const t=Xt();return v.computed(()=>(t.value,!!n()))}function Ht(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__",Wt=Kt();function Kt(){return ee in q||(q[ee]=q[ee]||{}),q[ee]}function Fe(n,t){return Wt[n]||t}function Jt(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 Yt={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 Qt(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 h=R(t),C=Jt(h),_=(u=o.serializer)!=null?u:Yt[C],{pause:k,resume:B}=Lt(y,()=>g(y.value),{flush:l,deep:a,eventFilter:V});return i&&r&&Ve(()=>{$(i,"storage",E),$(i,Le,f),m&&E()}),m||E(),y;function g(b){try{if(b==null)e.removeItem(n);else{const N=_.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&&h!=null&&e.setItem(n,_.write(h)),h;if(!b&&c){const z=_.read(N);return typeof c=="function"?c(z,h):C==="object"&&!Array.isArray(z)?{...h,...z}:z}else return typeof N!="string"?N:_.read(N)}function f(b){E(b.detail)}function E(b){if(!(b&&b.storageArea!==e)){if(b&&b.key==null){y.value=h;return}if(!(b&&b.key!==n)){k();try{b?.newValue!==_.write(y.value)&&(y.value=S(b))}catch(N){p(N)}finally{b?v.nextTick(B):B()}}}}}function Ue(n){return Ht("(prefers-color-scheme: dark)",n)}function Zt(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?Ot(o):Qt(a,o,l,{window:u,listenToStorageChanges:r})),y=v.computed(()=>m.value==="auto"?p.value:m.value),h=Fe("updateHTMLAttrs",(B,g,S)=>{const f=typeof B=="string"?u?.document.querySelector(B):U(B);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)),g==="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(g,S);d&&(u.getComputedStyle(E).opacity,document.head.removeChild(E))});function C(B){var g;h(t,e,(g=i[B])!=null?g:B)}function _(B){n.onChanged?n.onChanged(B,C):C(B)}v.watch(y,_,{flush:"post",immediate:!0}),Ve(()=>_(y.value));const k=v.computed({get(){return c?m.value:y.value},set(B){m.value=B}});try{return Object.assign(k,{store:m,system:p,state:y})}catch{return k}}function Gt(n={}){const{valueDark:t="dark",valueLight:e="",window:o=F}=n,u=Zt({...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 qt(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,h=v.ref((e=R(i))!=null?e:{x:0,y:0}),C=v.ref(),_=f=>u?u.includes(f.pointerType):!0,k=f=>{R(l)&&f.preventDefault(),R(a)&&f.stopPropagation()},B=f=>{var E;if(!_(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))},g=f=>{var E;if(!_(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:j}=h.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")&&(j=f.clientY-C.value.y,b&&(j=Math.min(Math.max(0,j),N.height+b.scrollTop-z.height))),h.value={x:M,y:j},s?.(h.value,f),k(f)},S=f=>{_(f)&&C.value&&(C.value=void 0,c?.(h.value,f),k(f))};if($e){const f={capture:(o=t.capture)!=null?o:!0};$(y,"pointerdown",B,f),$(p,"pointermove",g,f),$(p,"pointerup",S,f)}return{...Ut(h),position:h,isDragging:v.computed(()=>!!C.value),style:v.computed(()=>`left:${h.value.x}px;top:${h.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 eo={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 to(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:eo[t],m=g=>{const S=p(g);c=g,S&&([d.value,i.value]=S,V.value="mouse")},y=g=>{if(g.touches.length>0){const S=p(g.touches[0]);S&&([d.value,i.value]=S,V.value="touch")}},h=()=>{if(!c||!l)return;const g=p(c);c instanceof MouseEvent&&g&&(d.value=g[0]+l.scrollX,i.value=g[1]+l.scrollY)},C=()=>{d.value=u.x,i.value=u.y},_=s?g=>s(()=>m(g),{}):g=>m(g),k=s?g=>s(()=>y(g),{}):g=>y(g),B=s?()=>s(()=>h(),{}):()=>h();if(a){const g={passive:!0};$(a,["mousemove","dragover"],_,g),e&&t!=="movement"&&($(a,["touchstart","touchmove"],k,g),o&&$(a,"touchend",C,g)),r&&t==="page"&&$(l,"scroll",B,{passive:!0})}return{x:d,y:i,sourceType:V}}function oo(n,t={}){const{handleOutside:e=!0,window:o=F}=t,u=t.type||"page",{x:l,y:a,sourceType:r}=to(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 h=()=>{};return o&&(h=v.watch([s,l,a],()=>{const C=U(s);if(!C)return;const{left:_,top:k,width:B,height:g}=C.getBoundingClientRect();i.value=_+(u==="page"?o.pageXOffset:0),V.value=k+(u==="page"?o.pageYOffset:0),p.value=g,m.value=B;const S=l.value-i.value,f=a.value-V.value;y.value=B===0||g===0||S<0||f<0||S>B||f>g,(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:h}}function no(n,t){const{containerStyle:e,wrapperProps:o,scrollTo:u,calculateRange:l,currentList:a,containerRef:r}="itemHeight"in t?ro(t,n):lo(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 uo={horizontal:"scrollLeft",vertical:"scrollTop"};function Ge(n,t,e,o){return u=>{o.value&&(o.value[uo[n]]=e(u),t())}}function lo(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)),h=Ze(c,u);Qe(a,t,p);const C=Ge("horizontal",p,m,r),_=v.computed(()=>({style:{height:"100%",width:`${h.value-y.value}px`,marginLeft:`${y.value}px`,display:"flex"}}));return{scrollTo:C,calculateRange:p,wrapperProps:_,containerStyle:s,currentList:l,containerRef:r}}function ro(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)),h=Ze(c,u);Qe(a,t,p);const C=Ge("vertical",p,m,r),_=v.computed(()=>({style:{width:"100%",height:`${h.value-y.value}px`,marginTop:`${y.value}px`}}));return{calculateRange:p,scrollTo:C,containerStyle:s,wrapperProps:_,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}=qt(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:h,y:C}=m,_=this.getPosition(i,d,h,C);a&&a(_,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=oo(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:h=99999,maxHeight:C=99999}=u;if(a.includes("e")){const _=Math.min(Math.max(c.value,m),h);l.style.width=`${_}px`}if(a.includes("s")){const _=Math.min(Math.max(d.value,y),C);l.style.height=`${_}px`}if(a.includes("w")){const _=Math.min(Math.max(V.value-c.value,m),h);l.style.width=`${_}px`,l.style.left=`${r.value}px`}if(a.includes("n")){const _=Math.min(Math.max(i.value-d.value,y),C);this.el.style.height=`${_}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 ao(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 so(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 io(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 co(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 Vo(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 po(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 fo=["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}=ao(o,a),{styles:V,classes:p,wrapperClass:m,modalStyle:y}=so(o,s),{changeMode:h,active:C,close:_,show:k,hide:B,submit:g,cancel:S}=io(o,s,u),f=co(o,s,u,a),E=Vo(o,s,u),b=po(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:h,show:k,hide:B,submit:g,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]=j=>Vue.unref(h)("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]=j=>Vue.unref(h)("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]=j=>Vue.unref(h)("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(_)},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,fo)):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(g)},{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 mo=Vue.createElementVNode("div",{class:"x-mask-sidebar__helper"},null,-1),go=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"),mo]),_:3})]),_:3},8,["class"])),[[Vue.unref(he),{dirs:["e"],disabled:t.collapsed,maxWidth:500,minWidth:200}]])}}),ho=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}))}}),yo=["src"],vo={key:0},ko=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,yo)):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",vo,[Vue.renderSlot(u.$slots,"title",{},()=>[Vue.createTextVNode(Vue.toDisplayString(t.title),1)])])):Vue.createCommentVNode("",!0)]),_:3})]),_:3},8,["class"]))}}),ne="__favorites__",ue="__search__",bo=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))}}),wo="data:image/png;base64,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",ot=140,nt={logo:{type:String,default:wo},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(),Co={class:"x-mask-tabs__trigger"},Bo={key:1},_o=["onDragstart","onDragend"],So={key:1},xo=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",Co,[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",So,Vue.toDisplayString(V.title),1)):Vue.createCommentVNode("",!0)],40,_o)]),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))}}),Eo=Vue.defineComponent({__name:"ThemeSwitch",setup(n){const t=Gt();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"]))}}),Po={class:"x-mask-toolbar__menu-item"},No=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",Po,[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(Eo,{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}))}}),zo=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 To(){const n=Vue.ref(!1),t=Vue.ref(""),e=Vue.ref(!1);return{collapsed:n,keyword:t,favorite:e}}function Do(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 Io(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,h=a.value.get(y);if(!h){console.warn("找不到菜单",m);return}const{type:C="route",url:_,title:k,icon:B}=h;if(!_){r.value=h,t("select",h);return}if(C==="route"){VtjUtils.isUrl(_)||_.startsWith("//")?window.open(_):(r.value=h,e.push(_).catch(g=>g));return}if(C==="window"){window.open(_);return}C==="dialog"&&oe({resizable:!0,bodyPadding:!1,width:"80%",height:"80%",title:k,icon:B,src:_})},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 Mo(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,h=x=>u.value.id===x?u.value:s.value.find(T=>T.id===x),C=Vue.ref(""),_=Vue.computed(()=>h(C.value)),k=x=>{a.push(x.url).catch(T=>T)},B=x=>{C.value=x.id,l.fullPath!==x.url&&k(x)},g=()=>{k(u.value)},S=x=>{const T=s.value.find(D=>D.url===x.url||D.id===x.id);T?B(T):(s.value.unshift(x),B(x))},f=async x=>{const{url:T=l.fullPath,icon:D,title:le="新建标签页"}=x||{},re=r[T],_e=VtjUtils.uid(),Se=VtjUtils.upperFirstCamelCase(T);return{id:_e,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=[],B(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],B(x)},j=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,j),Vue.watch(l,j,{immediate:!0}),Vue.provide(ye,r),{tabRef:c,tabs:s,showTabs:V,currentTab:_,changeTab:k,removeTab:E,updateTab:b,addTab:S,home:u,tabValue:C,isCurrentTab:y,activeHome:g,activeTab:B,dropdownTabs:p,removeAllTabs:N,removeOtherTabs:z,moveToShow:M}}function Ro(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,B)=>{const g=B.fullPath;if(t.has(g))return t.get(g);{const S=VtjUtils.upperFirstCamelCase(g),f={name:S,setup(){const E=Vue.computed(()=>o[g]||document.body),b=Vue.computed(()=>!o[g]),N=Vue.computed(()=>!e.value.includes(S));return Vue.provide(VueRouter.routeLocationKey,Vue.toRaw({...B})),()=>N.value?Vue.h(Vue.Teleport,{to:E.value,disabled:b.value},[Vue.h(k)]):null}};return t.set(g,f),f}},i=k=>{k.dialog=void 0,delete o[k.url];const B=l[k.id];B&&(B.destroy(),delete l[k.id],a(k))},V=(k=[])=>{k.forEach(B=>{i(B)})},p=async k=>{k.dialog={...k.dialog,onMinimized:()=>{i(k)},onClose:async()=>{i(k),c.value=c.value.filter(g=>g.id!==k.id)}},a(k);const B=oe({title:k.title,icon:k.icon,modal:!1,resizable:!0,draggable:!0,maximizable:!0,minimizable:!0,...k.dialog,onOpen(g){o[k.url]=g.refs.panelRef?.bodyRef?.$el}},u?.appContext);return await Vue.nextTick(),r(k)&&s(),l[k.id]=B,B},m=async k=>{e.value=[k.name],await Vue.nextTick(),e.value=[]},y=async k=>{e.value=k.map(B=>B.name),await Vue.nextTick(),e.value=[]},h=k=>(k.preventDefault(),!1),C=k=>{if(k.dataTransfer){const B=k.dataTransfer.getData("tab"),g=c.value.find(S=>S.id===B);if(g){const{clientX:S,clientY:f}=k;g.dialog={left:S,top:f},p(g)}}},_=k=>!!o[k];return $(document,"dragover",h),$(document,"drop",C),{createView:d,openDialog:p,refresh:m,exclude:e,cleanCache:y,hasDialog:_,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=Do(e),{collapsed:l,keyword:a,favorite:r}=To(),{menus:s,favorites:c,flatMenus:d,active:i,select:V,toggleFavorite:p}=Io(e,o),{tabRef:m,showTabs:y,currentTab:h,changeTab:C,removeTab:_,tabs:k,updateTab:B,isCurrentTab:g,activeHome:S,removeAllTabs:f,removeOtherTabs:E,dropdownTabs:b,moveToShow:N}=Mo(e,o,d,i,u),{createView:z,openDialog:M,refresh:j,exclude:x,cleanCache:T,closeDialogs:D}=Ro({tabs:k,updateTab:B,isCurrentTab:g,activeHome:S}),le=async I=>{await _(I)&&await T([I])},re=async()=>{const I=await f();I&&(D(I),await T(I))},_e=async()=>{const I=await E();I&&(D(I),await T(I))},Se=I=>{o("actionClick",I)},rn=(I,X)=>{o("actionCommand",I,X)};return Vue.provide(ve,{tabs:k,flatMenus:d,favorites:c,updateTab:B,active:i,currentTab:h}),(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(go,{collapsed:Vue.unref(l)},{brand:Vue.withCtx(()=>[Vue.createVNode(ko,{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(ho,{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(bo,{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(xo,{ref_key:"tabRef",ref:m,favorites:Vue.unref(c),tabs:Vue.unref(y),home:Vue.unref(u),value:Vue.unref(h)?.id,onClick:Vue.unref(C),onToggleFavorite:Vue.unref(p),onRemove:le,onDialog:Vue.unref(M),onRefresh:Vue.unref(j)},null,8,["favorites","tabs","home","value","onClick","onToggleFavorite","onDialog","onRefresh"]),Vue.createVNode(No,{tabs:Vue.unref(b),actions:e.actions,theme:e.theme,onCloseOtherTabs:_e,onCloseAllTabs:re,onCloseTab:le,onClickTab:Vue.unref(N),onActionClick:Se,onActionCommand:rn},{default:Vue.withCtx(()=>[Vue.createVNode(zo,{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 $o(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))}}),jo=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))}}),Oo=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:jo,props:{},defaultValue:[]},radio:{component:Oo,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}};async function Fo(n,t){const e=n.options;return e?typeof e=="function"?await e(t)||[]:e:[]}function Lo(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 Fo(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 Uo={key:1,class:"el-form-item__error"},Xo={class:"x-field__editor_wrap"},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}=Lo(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)),h=(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}}),_=Vue.computed(()=>{const f=l?.proxy;return{width:o.width?A(o.width):f&&f.inline&&f.inlineColumns?`${100/f.inlineColumns}%`:null}}),k=Vue.computed(()=>({right:typeof o.tooltipPosition=="number"?`${o.tooltipPosition}px`:void 0})),B=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:_.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:h(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",Uo,Vue.toDisplayString(h(b)),1))])]),default:Vue.withCtx(()=>[Vue.createElementVNode("div",Xo,[Vue.renderSlot(f.$slots,"editor",{editor:B.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)]),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"),Be=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(Be),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?A(i):void 0,height:V?A(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:A(e.width),height:A(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:g,pageSize:S}=o;Object.assign(l,{page:g,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:A(o.width),height:A(o.height)})),V=Vue.computed(()=>({"is-virtual":!!o.itemHeight})),p=Vue.computed(()=>{const g={};for(let[S,f]of Object.entries(ae(o.infiniteScroll)))g[`infinite-scroll-${S}`]=f;return(r.value||c.value)&&(g["infinite-scroll-disabled"]=!0),g}),m=Vue.computed(()=>ae(o.pager,{})),{list:y,containerProps:h,wrapperProps:C,scrollTo:_}=no(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)},B=g=>o.dataKey?g[o.dataKey]:void 0;return t({list:y,scrollTo:_,wrapperRef:d,loading:r,state:l,pageCount:s,nomore:c,data:a,getKey:B}),(g,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(g.$slots,"empty",{key:0},()=>[Vue.createVNode(Vue.unref(ElementPlus.ElEmpty))]):Vue.createCommentVNode("",!0),Vue.createElementVNode("div",Vue.mergeProps({class:"x-list__content"},Vue.unref(h)),[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(g.$slots,"default",Vue.normalizeProps(Vue.mergeProps({key:B(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(g.$slots,"loading",{},()=>[Vue.createTextVNode(" 正在加载数据... ")])])):Vue.createCommentVNode("",!0),c.value?(Vue.openBlock(),Vue.createElementBlock("div",qo,[Vue.renderSlot(g.$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(g.$slots,"default",Vue.normalizeProps(Vue.mergeProps({key:B(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(g.$slots,"loading",{},()=>[Vue.createTextVNode(" 正在加载数据... ")])])):Vue.createCommentVNode("",!0),c.value?(Vue.openBlock(),Vue.createElementBlock("div",tn,[Vue.renderSlot(g.$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={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}},nn={class:"x-test__slot"},un={class:"x-test__slot"},kt=Vue.defineComponent({name:"XTest",__name:"Test",props:vt,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,h])=>(Vue.openBlock(),Vue.createBlock(Vue.unref(ElementPlus.ElDescriptionsItem),{label:y},{default:Vue.withCtx(()=>[Vue.createElementVNode("pre",null,Vue.toDisplayString(JSON.stringify(h,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",nn,[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",un,[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}))}}),bt=[L,H,O,Q,P,ce,K,te,rt,be,Be,ct,Vt,ft,gt,yt,kt],{install:ln}=Pe(bt);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=wt,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=Be,w.XHeader=ce,w.XIcon=L,w.XList=yt,w.XMask=rt,w.XMenu=H,w.XPanel=K,w.XTabs=Vt,w.XTest=kt,w.actionBarProps=De,w.actionProps=ie,w.builtinFieldEditors=ke,w.chartProps=mt,w.components=bt,w.containerProps=Ie,w.createDialog=oe,w.dataItemProps=pt,w.defineTab=$o,w.dialogFormProps=it,w.dialogProps=tt,w.fieldProps=at,w.formInstanceKey=we,w.formModelKey=Ce,w.formProps=st,w.getSizeValue=A,w.headerProps=Me,w.iconProps=Ee,w.iconSizeMap=xe,w.install=ln,w.listProps=ht,w.makeInstaller=Pe,w.maskProps=nt,w.panelProps=Re,w.parseSize=Y,w.tabsProps=dt,w.testProps=vt,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);
|