@sunny-base-web/ui 0.8.21 → 0.8.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +3 -1
- package/dist/index.mjs +6535 -3222
- package/package.json +7 -6
package/dist/index.js
CHANGED
|
@@ -1 +1,3 @@
|
|
|
1
|
-
(function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@arco-design/web-vue"),require("@sunny-base-web/locales"),require("@sunny-base-web/utils"),require("@sunny-base-web/icons"),require("reka-ui"),require("axios"),require("vee-validate"),require("@tanstack/vue-store"),require("lodash-es"),require("@tanstack/store"),require("@vueuse/core"),require("@vee-validate/zod"),require("zod"),require("vxe-table"),require("vxe-pc-ui"),require("vue-i18n")):typeof define=="function"&&define.amd?define(["exports","vue","@arco-design/web-vue","@sunny-base-web/locales","@sunny-base-web/utils","@sunny-base-web/icons","reka-ui","axios","vee-validate","@tanstack/vue-store","lodash-es","@tanstack/store","@vueuse/core","@vee-validate/zod","zod","vxe-table","vxe-pc-ui","vue-i18n"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T.SunnyBaseWebUI={},T.Vue,T.ArcoVue,T.SunnyBaseWebLocales,T.SunnyBaseWebUtils,T.SunnyBaseWebIcons,T.rekaUi,T.axios,T.veeValidate,T.vueStore,T.lodashEs,T.store,T.core,T.zod$1,T.zod,T.vxeTable,T.vxePcUi,T.vueI18n))})(this,(function(T,e,w,D,j,Ce,X,Y,G,tt,J,nt,be,ot,rt,oe,K,ke){"use strict";function at(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:()=>t[o]})}}return n.default=t,Object.freeze(n)}const lt=at(rt),st=Symbol("ArcoConfigProvider"),it="arco",ct="$arco",q=t=>{var n,o,r;const a=e.getCurrentInstance(),l=e.inject(st,void 0);return`${(r=(o=l?.prefixCls)!=null?o:(n=a?.appContext.config.globalProperties[ct])==null?void 0:n.classPrefix)!=null?r:it}-${t}`},dt=Object.prototype.toString;function W(t){return dt.call(t)==="[object Number]"&&t===t}var _=(t,n)=>{for(const[o,r]of n)t[o]=r;return t};const ft=e.defineComponent({name:"IconDown",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-down`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),ut=["stroke-width","stroke-linecap","stroke-linejoin"];function mt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1)]),14,ut)}var re=_(ft,[["render",mt]]);const pt=Object.assign(re,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+re.name,re)}}),ht=e.defineComponent({name:"IconUp",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-up`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),gt=["stroke-width","stroke-linecap","stroke-linejoin"];function yt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1)]),14,gt)}var ae=_(ht,[["render",yt]]);const St=Object.assign(ae,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+ae.name,ae)}}),Ct=e.defineComponent({name:"IconClose",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-close`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),bt=["stroke-width","stroke-linecap","stroke-linejoin"];function kt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M9.857 9.858 24 24m0 0 14.142 14.142M24 24 38.142 9.858M24 24 9.857 38.142"},null,-1)]),14,bt)}var le=_(Ct,[["render",kt]]);const Ae=Object.assign(le,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+le.name,le)}}),At=e.defineComponent({name:"IconQuestionCircle",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-question-circle`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),wt=["stroke-width","stroke-linecap","stroke-linejoin"];function Bt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M42 24c0 9.941-8.059 18-18 18S6 33.941 6 24 14.059 6 24 6s18 8.059 18 18Z"},null,-1),e.createElementVNode("path",{d:"M24.006 31v4.008m0-6.008L24 28c0-3 3-4 4.78-6.402C30.558 19.195 28.288 15 23.987 15c-4.014 0-5.382 2.548-5.388 4.514v.465"},null,-1)]),14,wt)}var se=_(At,[["render",Bt]]);const we=Object.assign(se,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+se.name,se)}}),xt=e.defineComponent({name:"IconRefresh",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-refresh`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),Et=["stroke-width","stroke-linecap","stroke-linejoin"];function Nt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M38.837 18C36.463 12.136 30.715 8 24 8 15.163 8 8 15.163 8 24s7.163 16 16 16c7.455 0 13.72-5.1 15.496-12M40 8v10H30"},null,-1)]),14,Et)}var ie=_(xt,[["render",Nt]]);const Vt=Object.assign(ie,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+ie.name,ie)}}),Pt=e.defineComponent({name:"IconSearch",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-search`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),It=["stroke-width","stroke-linecap","stroke-linejoin"];function Rt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M33.072 33.071c6.248-6.248 6.248-16.379 0-22.627-6.249-6.249-16.38-6.249-22.628 0-6.248 6.248-6.248 16.379 0 22.627 6.248 6.248 16.38 6.248 22.628 0Zm0 0 8.485 8.485"},null,-1)]),14,It)}var ce=_(Pt,[["render",Rt]]);const de=Object.assign(ce,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+ce.name,ce)}}),Mt=e.defineComponent({name:"IconUpload",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-upload`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),Ft=["stroke-width","stroke-linecap","stroke-linejoin"];function Tt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M14.93 17.071 24.001 8l9.071 9.071m-9.07 16.071v-25M40 35v6H8v-6"},null,-1)]),14,Ft)}var fe=_(Mt,[["render",Tt]]);const jt=Object.assign(fe,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+fe.name,fe)}}),Lt=e.defineComponent({name:"IconAttachment",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-attachment`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),Ot=["stroke-width","stroke-linecap","stroke-linejoin"];function Dt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",stroke:"currentColor",xmlns:"http://www.w3.org/2000/svg",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M29.037 15.236s-9.174 9.267-11.48 11.594c-2.305 2.327-1.646 4.987-.329 6.316 1.317 1.33 3.994 1.953 6.258-.332L37.32 18.851c3.623-3.657 2.092-8.492 0-10.639-2.093-2.147-6.916-3.657-10.54 0L11.3 23.838c-3.623 3.657-3.953 10.638.329 14.96 4.282 4.322 11.115 4.105 14.821.333 3.706-3.773 8.74-8.822 11.224-11.33"},null,-1)]),14,Ot)}var ue=_(Lt,[["render",Dt]]);const zt=Object.assign(ue,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+ue.name,ue)}}),$t=e.defineComponent({name:"IconDelete",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-delete`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),Qt=["stroke-width","stroke-linecap","stroke-linejoin"];function Ut(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M5 11h5.5m0 0v29a1 1 0 0 0 1 1h25a1 1 0 0 0 1-1V11m-27 0H16m21.5 0H43m-5.5 0H32m-16 0V7h16v4m-16 0h16M20 18v15m8-15v15"},null,-1)]),14,Qt)}var me=_($t,[["render",Ut]]);const Be=Object.assign(me,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+me.name,me)}}),qt=e.defineComponent({name:"IconFullscreenExit",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-fullscreen-exit`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),Wt=["stroke-width","stroke-linecap","stroke-linejoin"];function _t(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M35 6v8a1 1 0 0 0 1 1h8M13 6v8a1 1 0 0 1-1 1H4m31 27v-8a1 1 0 0 1 1-1h8m-31 9v-8a1 1 0 0 0-1-1H4"},null,-1)]),14,Wt)}var pe=_(qt,[["render",_t]]);const Jt=Object.assign(pe,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+pe.name,pe)}}),Yt=e.defineComponent({name:"IconFullscreen",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const o=q("icon"),r=e.computed(()=>[o,`${o}-fullscreen`,{[`${o}-spin`]:t.spin}]),a=e.computed(()=>{const s={};return t.size&&(s.fontSize=W(t.size)?`${t.size}px`:t.size),t.rotate&&(s.transform=`rotate(${t.rotate}deg)`),s});return{cls:r,innerStyle:a,onClick:s=>{n("click",s)}}}}),Gt=["stroke-width","stroke-linecap","stroke-linejoin"];function Kt(t,n,o,r,a,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...s)=>t.onClick&&t.onClick(...s))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M42 17V9a1 1 0 0 0-1-1h-8M6 17V9a1 1 0 0 1 1-1h8m27 23v8a1 1 0 0 1-1 1h-8M6 31v8a1 1 0 0 0 1 1h8"},null,-1)]),14,Gt)}var he=_(Yt,[["render",Kt]]);const Ht=Object.assign(he,{install:(t,n)=>{var o;const r=(o=n?.iconPrefix)!=null?o:"";t.component(r+he.name,he)}}),Xt="data:image/png;base64,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",Zt={class:"flex-1 font-semibold text-base text-[var(--color-text-1)] overflow-hidden text-ellipsis whitespace-nowrap"},vt={class:"flex items-center gap-3 ml-3"},en={class:"cursor-pointer text-[var(--color-text-2)] flex items-center justify-center transition-colors duration-200 text-base hover:text-[var(--color-text-1)]"},tn={key:1,class:"flex items-center justify-end gap-2"},v=e.defineComponent({__name:"Modal",props:{modelValue:{type:Boolean,default:!1},title:{default:"Title"},width:{default:"50%"},top:{},zIndex:{default:1e3},helpMessage:{default:""},closeOnEsc:{type:Boolean,default:!0},fullscreen:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},okText:{},cancelText:{},okLoading:{type:Boolean},confirmLoading:{type:Boolean},hideCancel:{type:Boolean},okButtonProps:{},cancelButtonProps:{},onVisibleChange:{},onBeforeOk:{},onBeforeCancel:{},onClose:{},onOk:{}},emits:["update:modelValue","close","ok","fullscreen-change"],setup(t,{expose:n,emit:o}){const{t:r}=D.useI18n(),a=t,l=o,s=e.useAttrs(),i=e.ref(!1),p=e.computed({get:()=>a.modelValue,set:h=>l("update:modelValue",h)}),k=e.computed(()=>a.helpMessage||r("common.modal.helpTip")),g=e.ref(!1),d=()=>{g.value=!g.value,l("fullscreen-change",g.value)},u=async()=>{const h=a.onBeforeCancel;typeof h=="function"&&await h()===!1||(g.value=!1,p.value=!1,l("close"))},m=u,A=async()=>{const h=a.onBeforeOk;if(typeof h=="function")try{i.value=!0,await h()!==!1&&(g.value=!1,l("ok"),p.value=!1)}catch(S){console.error(S)}finally{i.value=!1}else g.value=!1,l("ok"),p.value=!1};return n({toggleMaximize:d}),(h,S)=>(e.openBlock(),e.createBlock(e.unref(w.Modal),e.mergeProps({visible:p.value,"onUpdate:visible":S[1]||(S[1]=N=>p.value=N),title:t.title,width:t.width,top:t.top,"z-index":t.zIndex,"mask-closable":t.closeOnClickModal,"esc-to-close":t.closeOnEsc,fullscreen:g.value,closable:!1},h.$attrs,{class:"k-modal-custom",style:{"--modal-bg-image":`url(${e.unref(Xt)})`},onClick:S[2]||(S[2]=e.withModifiers(()=>{},["stop"])),onMousedown:S[3]||(S[3]=e.withModifiers(()=>{},["stop"]))}),{title:e.withCtx(()=>[e.createElementVNode("div",{class:"flex items-center justify-between w-full",onDblclick:S[0]||(S[0]=N=>a.fullscreen&&d())},[e.createElementVNode("div",Zt,[e.renderSlot(h.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),e.createElementVNode("div",vt,[k.value?(e.openBlock(),e.createBlock(e.unref(w.Tooltip),{key:0,content:k.value},{default:e.withCtx(()=>[e.createElementVNode("div",en,[e.createVNode(e.unref(we))])]),_:1},8,["content"])):e.createCommentVNode("",!0),a.fullscreen?(e.openBlock(),e.createElementBlock("div",{key:1,class:"cursor-pointer text-[var(--color-text-2)] flex items-center justify-center transition-colors duration-200 text-base hover:text-[var(--color-text-1)]",onClick:e.withModifiers(d,["stop"])},[g.value?(e.openBlock(),e.createBlock(e.unref(Jt),{key:0})):(e.openBlock(),e.createBlock(e.unref(Ht),{key:1}))])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"cursor-pointer text-[var(--color-text-2)] flex items-center justify-center transition-colors duration-200 text-base hover:text-[rgb(var(--red-6))]",onClick:e.withModifiers(u,["stop"])},[e.createVNode(e.unref(Ae))])])],32)]),footer:e.withCtx(()=>[h.$slots.footer?e.renderSlot(h.$slots,"footer",{key:0}):(e.openBlock(),e.createElementBlock("div",tn,[e.renderSlot(h.$slots,"insertFooter"),e.unref(s).hideCancel?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(w.Button),e.mergeProps({key:0},e.unref(s).cancelButtonProps,{onClick:e.unref(m)}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s).cancelText||e.unref(r)("common.modal.cancel")),1)]),_:1},16,["onClick"])),e.renderSlot(h.$slots,"centerFooter"),e.unref(s).hideOk?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(w.Button),e.mergeProps({key:1,type:"primary",loading:i.value||e.unref(s).okLoading||e.unref(s).confirmLoading},e.unref(s).okButtonProps,{onClick:A}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s).okText||e.unref(r)("common.modal.confirm")),1)]),_:1},16,["loading"])),e.renderSlot(h.$slots,"appendFooter")]))]),default:e.withCtx(()=>[e.renderSlot(h.$slots,"default")]),_:3},16,["visible","title","width","top","z-index","mask-closable","esc-to-close","fullscreen","style"]))}});class nn{state;constructor(n={}){this.state=e.reactive({modelValue:!1,...n})}open=()=>{this.setState({modelValue:!0}),this.state.onVisibleChange?.(!0)};close=()=>{this.setState({modelValue:!1}),this.state.onVisibleChange?.(!1)};setProps=n=>{this.setState(n)};setState(n){if(typeof n=="function"){const o=n(this.state);Object.assign(this.state,o)}else Object.assign(this.state,n);return this}}function on(t={}){const n=new nn(t);return[e.defineComponent({name:"SunnyConnectedModal",inheritAttrs:!1,setup(r,{attrs:a,slots:l}){return()=>e.h(v,{...n.state,...a,"onUpdate:modelValue":s=>{n.setState({modelValue:s}),n.state.onVisibleChange?.(s),typeof a["onUpdate:modelValue"]=="function"&&a["onUpdate:modelValue"](s)}},l)}}),n]}const rn=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),an={key:0,class:"flex items-center justify-center min-h-[400px] p-8"},ln={class:"max-w-[520px] w-full text-center"},sn={class:"mb-3 text-lg font-semibold text-[var(--color-text-1)]"},cn={class:"mb-6 text-sm text-[var(--color-text-2)] leading-relaxed"},dn={key:0,class:"mt-6 mb-6 text-left bg-[var(--color-fill-1)] border border-[var(--color-border-2)] rounded-md overflow-hidden"},fn={class:"flex items-center gap-2 px-4 py-3 bg-[var(--color-fill-2)] border-b border-[var(--color-border-2)] text-sm font-medium text-[var(--color-text-2)]"},un={class:"p-4"},mn={class:"mb-3"},pn={class:"block mb-1 text-xs text-[var(--color-text-3)]"},hn={class:"p-2 bg-[var(--color-fill-1)] rounded text-xs text-[var(--color-text-2)] font-mono break-all"},gn={class:"block mb-1 text-xs text-[var(--color-text-3)]"},yn={class:"mt-2 p-3 bg-[var(--color-fill-2)] rounded text-xs text-[var(--color-text-2)] font-mono leading-relaxed overflow-x-auto whitespace-pre-wrap break-all max-h-[240px]"},Sn={class:"flex gap-3 justify-center flex-wrap"},Cn=e.defineComponent({name:"ErrorBoundary",__name:"ErrorBoundary",props:{showDetails:{type:Boolean},errorIcon:{},errorTitle:{},errorMessage:{},showRetry:{type:Boolean,default:!0},showRefresh:{type:Boolean,default:!0},showReport:{type:Boolean,default:!0}},emits:["error","retry","report"],setup(t,{emit:n}){const o=t,r=n,a=e.shallowRef(!1),l=e.shallowRef(null),s=e.computed(()=>({title:o.errorMessage||D.$t("error.title"),desc:D.$t("error.message"),retry:D.$t("error.retry"),refresh:D.$t("error.refresh"),report:D.$t("error.reportError"),details:D.$t("error.details"),errorMessage:D.$t("error.errorMessage"),errorStack:D.$t("error.errorStack")}));e.onErrorCaptured((g,d,u)=>{if(a.value)return!1;const m=g instanceof Error?g:new Error(String(g));return a.value=!0,l.value=e.markRaw(m),!1});function i(){a.value=!1,l.value=null,r("retry")}function p(){window.location.reload()}function k(){l.value&&r("report",l.value)}return(g,d)=>a.value?(e.openBlock(),e.createElementBlock("div",an,[e.createElementVNode("div",ln,[d[1]||(d[1]=e.createStaticVNode('<div class="flex justify-center mb-6 text-[var(--color-danger-6)]"><svg viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-12 h-12"><circle cx="24" cy="24" r="23" stroke="currentColor" stroke-width="1.5"></circle><path d="M24 16v8M24 28v4" stroke="currentColor" stroke-width="2" stroke-linecap="round"></path><circle cx="24" cy="36" r="1.5" fill="currentColor"></circle></svg></div>',1)),e.createElementVNode("div",sn,e.toDisplayString(s.value.title),1),e.createElementVNode("div",cn,e.toDisplayString(s.value.desc),1),l.value?(e.openBlock(),e.createElementBlock("div",dn,[e.createElementVNode("div",fn,[d[0]||(d[0]=e.createElementVNode("svg",{viewBox:"0 0 16 16",fill:"currentColor",class:"w-3.5 h-3.5 text-[var(--color-warning-6)]"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zM9 13a1 1 0 11-2 0 0 1 1 0 012 0zM9 11a1 1 0 01-2 0V7a1 1 0 012 0v4z","clip-rule":"evenodd"})],-1)),e.createElementVNode("span",null,e.toDisplayString(s.value.details),1)]),e.createElementVNode("div",un,[e.createElementVNode("div",mn,[e.createElementVNode("span",pn,e.toDisplayString(s.value.errorMessage),1),e.createElementVNode("div",hn,e.toDisplayString(l.value?.message),1)]),e.createElementVNode("div",null,[e.createElementVNode("span",gn,e.toDisplayString(s.value.errorStack),1),e.createElementVNode("pre",yn,e.toDisplayString(l.value?.stack),1)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Sn,[t.showRetry?(e.openBlock(),e.createElementBlock("button",{key:0,class:"px-4 py-2 bg-[rgb(var(--primary-6))] text-white rounded hover:bg-[rgb(var(--primary-7))]",onClick:i},e.toDisplayString(s.value.retry),1)):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:1,class:"px-4 py-2 bg-[var(--color-bg-5)] text-[var(--color-text-1)] rounded hover:bg-[var(--color-bg-4)] border border-[var(--color-border)]",onClick:p},e.toDisplayString(s.value.refresh),1)):e.createCommentVNode("",!0),t.showReport?(e.openBlock(),e.createElementBlock("button",{key:2,class:"px-4 py-2 bg-[var(--color-danger-6)] text-white rounded hover:bg-[var(--color-danger-7)]",onClick:k},e.toDisplayString(s.value.report),1)):e.createCommentVNode("",!0)])])])):e.renderSlot(g.$slots,"default",{key:1})}});function xe(t){const{spinning:n,minLoadingTime:o=50}=t,r=e.ref(!1),a=e.ref(!1),l=e.ref(),s=e.computed(()=>{const p=typeof o=="number"?o:o.value;return p<0?(console.warn("[SunnyLoading] minLoadingTime 不能为负数,已自动设置为 0"),0):p>1e4?(console.warn("[SunnyLoading] minLoadingTime 不应超过 10000ms,已自动限制"),1e4):p});e.watch(n,p=>{if(clearTimeout(l.value),!p){r.value=!1;return}l.value=setTimeout(()=>{a.value=!0,requestAnimationFrame(()=>{r.value=!0})},s.value)},{immediate:!0}),e.onUnmounted(()=>{clearTimeout(l.value)});function i(){r.value||(a.value=!1)}return{isVisible:r,shouldRender:a,handleTransitionEnd:i}}const bn=["aria-live","aria-busy"],kn=["aria-label"],An={key:0,class:"mt-4 text-sm text-[rgb(var(--primary-6))]"},wn=e.defineComponent({name:"SunnyLoading",__name:"SunnyLoading",props:{class:{},minLoadingTime:{default:50},spinning:{type:Boolean,default:!1},text:{default:""}},setup(t){const n=t,o=e.computed(()=>{const s=n.minLoadingTime??50;return s<0?(console.warn("[SunnyLoading] minLoadingTime 不能为负数,已自动设置为 0"),0):s>1e4?(console.warn("[SunnyLoading] minLoadingTime 不应超过 10000ms,已自动限制"),1e4):s}),{isVisible:r,shouldRender:a,handleTransitionEnd:l}=xe({spinning:e.computed(()=>n.spinning),minLoadingTime:o});return(s,i)=>(e.openBlock(),e.createElementBlock("output",{class:e.normalizeClass(e.unref(j.cn)("absolute left-0 top-0 z-100 flex size-full flex-col items-center justify-center","transition-all duration-500 ease-in-out","bg-[var(--color-bg-2)]/80 backdrop-blur-sm",{"invisible opacity-0":!e.unref(r)},n.class)),"aria-live":t.spinning?"polite":"off","aria-busy":t.spinning,onTransitionend:i[0]||(i[0]=(...p)=>e.unref(l)&&e.unref(l)(...p))},[e.unref(a)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(s.$slots,"icon",{},()=>[e.createElementVNode("div",{class:"loading-spinner","aria-label":t.text||"加载中"},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(4,p=>e.createElementVNode("span",{key:p,class:"dot","aria-hidden":"true"})),64))],8,kn)],!0),t.text?(e.openBlock(),e.createElementBlock("div",An,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),e.renderSlot(s.$slots,"default",{},void 0,!0)],64)):e.createCommentVNode("",!0)],42,bn))}}),H=(t,n)=>{const o=t.__vccOpts||t;for(const[r,a]of n)o[r]=a;return o},Bn=H(wn,[["__scopeId","data-v-4642fea4"]]),xn=["aria-live","aria-busy"],En={key:0,class:"spinner","aria-hidden":"true"},Nn=H(e.defineComponent({name:"SunnySpinner",__name:"SunnySpinner",props:{class:{},minLoadingTime:{default:50},spinning:{type:Boolean,default:!1}},setup(t){const n=t,o=e.computed(()=>{const s=n.minLoadingTime??50;return s<0?(console.warn("[SunnySpinner] minLoadingTime 不能为负数,已自动设置为 0"),0):s>1e4?(console.warn("[SunnySpinner] minLoadingTime 不应超过 10000ms,已自动限制"),1e4):s}),{isVisible:r,shouldRender:a,handleTransitionEnd:l}=xe({spinning:e.computed(()=>n.spinning),minLoadingTime:o});return(s,i)=>(e.openBlock(),e.createElementBlock("output",{class:e.normalizeClass(e.unref(j.cn)("absolute left-0 top-0 z-100 flex size-full items-center justify-center","transition-all duration-500 ease-in-out","bg-[var(--color-bg-2)]/80 backdrop-blur-sm",{"invisible opacity-0":!e.unref(r)},n.class)),"aria-label":"加载中","aria-live":t.spinning?"polite":"off","aria-busy":t.spinning,onTransitionend:i[0]||(i[0]=(...p)=>e.unref(l)&&e.unref(l)(...p))},[e.unref(a)?(e.openBlock(),e.createElementBlock("div",En,[...i[1]||(i[1]=[e.createElementVNode("div",{class:"cube"},null,-1),e.createElementVNode("div",{class:"shadow"},null,-1)])])):e.createCommentVNode("",!0)],42,xn))}}),[["__scopeId","data-v-033b7571"]]),Vn=["src"],ge=e.defineComponent({name:"SunnyIcon",__name:"icon",props:{fallback:{type:Boolean},icon:{type:[Function,String]}},setup(t){const n=t,o=e.computed(()=>j.isString(n.icon)&&j.isHttpUrl(n.icon)),r=e.computed(()=>{const{icon:a}=n;return!j.isString(a)&&(j.isObject(a)||j.isFunction(a))});return(a,l)=>r.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),e.normalizeProps(e.mergeProps({key:0},a.$attrs)),null,16)):o.value?(e.openBlock(),e.createElementBlock("img",e.mergeProps({key:1,src:t.icon},a.$attrs),null,16,Vn)):t.icon?(e.openBlock(),e.createBlock(e.unref(Ce.IconifyIcon),e.mergeProps({key:2},a.$attrs,{icon:t.icon}),null,16,["icon"])):t.fallback?(e.openBlock(),e.createBlock(e.unref(Ce.IconDefault),e.normalizeProps(e.mergeProps({key:3},a.$attrs)),null,16)):e.createCommentVNode("",!0)}}),Pn=e.defineComponent({name:"SunnyScrollArea",__name:"ScrollArea",props:{type:{},dir:{},scrollHideDelay:{},asChild:{type:Boolean},as:{},class:{},onScroll:{type:Function,default:()=>{}}},setup(t){const n=t,o=e.computed(()=>{const{class:r,onScroll:a,...l}=n;return l});return(r,a)=>(e.openBlock(),e.createBlock(e.unref(X.ScrollAreaRoot),e.mergeProps(o.value,{class:e.unref(j.cn)("relative overflow-hidden",n.class)}),{default:e.withCtx(()=>[e.createVNode(e.unref(X.ScrollAreaViewport),{"as-child":"",class:"h-full w-full rounded-[inherit] focus:outline-none",onScroll:t.onScroll},{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:3},8,["onScroll"]),e.createVNode(e.unref(Ee)),e.createVNode(e.unref(X.ScrollAreaCorner))]),_:3},16,["class"]))}}),Ee=e.defineComponent({name:"SunnyScrollBar",__name:"ScrollBar",props:{orientation:{default:"vertical"},forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(t){const n=t,o=e.computed(()=>{const{class:r,...a}=n;return a});return(r,a)=>(e.openBlock(),e.createBlock(e.unref(X.ScrollAreaScrollbar),e.mergeProps(o.value,{class:e.unref(j.cn)("flex touch-none select-none transition-colors",t.orientation==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",t.orientation==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",n.class)}),{default:e.withCtx(()=>[e.createVNode(e.unref(X.ScrollAreaThumb),{class:"relative flex-1 rounded-full bg-border"})]),_:1},16,["class"]))}}),Ne=1,In=H(e.defineComponent({name:"SunnyScrollbar",__name:"scrollbar",props:{class:{default:""},horizontal:{type:Boolean,default:!1},scrollBarClass:{},shadow:{type:Boolean,default:!1},shadowBorder:{type:Boolean,default:!1},shadowBottom:{type:Boolean,default:!0},shadowLeft:{type:Boolean,default:!1},shadowRight:{type:Boolean,default:!1},shadowTop:{type:Boolean,default:!0}},emits:["scrollAt"],setup(t,{emit:n}){const o=t,r=n,a=e.ref(!0),l=e.ref(!1),s=e.ref(!1),i=e.ref(!0),p=e.computed(()=>o.shadow&&o.shadowTop),k=e.computed(()=>o.shadow&&o.shadowBottom),g=e.computed(()=>o.shadow&&o.shadowLeft),d=e.computed(()=>o.shadow&&o.shadowRight),u=e.computed(()=>({"both-shadow":!i.value&&!l.value&&g.value&&d.value,"left-shadow":!i.value&&g.value,"right-shadow":!l.value&&d.value}));function m(A){const h=A.target,S=h?.scrollTop??0,N=h?.scrollLeft??0,E=h?.clientHeight??0,C=h?.clientWidth??0,I=h?.scrollHeight??0,B=h?.scrollWidth??0;a.value=S<=0,i.value=N<=0,s.value=Math.abs(S)+E>=I-Ne,l.value=Math.abs(N)+C>=B-Ne,r("scrollAt",{bottom:s.value,left:i.value,right:l.value,top:a.value})}return(A,h)=>(e.openBlock(),e.createBlock(e.unref(Pn),{class:e.normalizeClass([[e.unref(j.cn)(o.class),u.value],"sunny-scrollbar relative"]),"on-scroll":m},{default:e.withCtx(()=>[p.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([{"opacity-100":!a.value,"border-t border-border":t.shadowBorder&&!a.value},"scrollbar-top-shadow pointer-events-none absolute top-0 z-10 h-12 w-full opacity-0 transition-opacity duration-300 ease-in-out will-change-[opacity]"])},null,2)):e.createCommentVNode("",!0),e.renderSlot(A.$slots,"default",{},void 0,!0),k.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass([{"opacity-100":!a.value&&!s.value,"border-b border-border":t.shadowBorder&&!a.value&&!s.value},"scrollbar-bottom-shadow pointer-events-none absolute bottom-0 z-10 h-12 w-full opacity-0 transition-opacity duration-300 ease-in-out will-change-[opacity]"])},null,2)):e.createCommentVNode("",!0),t.horizontal?(e.openBlock(),e.createBlock(e.unref(Ee),{key:2,class:e.normalizeClass(t.scrollBarClass),orientation:"horizontal"},null,8,["class"])):e.createCommentVNode("",!0)]),_:3},8,["class"]))}}),[["__scopeId","data-v-299d4e0d"]]),Rn=e.defineAsyncComponent(()=>Promise.resolve().then(()=>Go));G.defineRule("required",t=>t==null||t===""||Array.isArray(t)&&t.length===0?"此项必填":!0);const Mn={Input:w.Input,InputPassword:w.InputPassword,InputNumber:w.InputNumber,Textarea:w.Textarea,Select:w.Select,Checkbox:w.Checkbox,CheckboxGroup:w.CheckboxGroup,Radio:w.Radio,RadioGroup:w.RadioGroup,Switch:w.Switch,DatePicker:w.DatePicker,RangePicker:w.RangePicker,TimePicker:w.TimePicker,Upload:w.Upload,Rate:w.Rate,Slider:w.Slider,Cascader:w.Cascader,TreeSelect:w.TreeSelect,SunnySelect:w.Select,SunnyCheckbox:w.Checkbox,SunnyRadio:w.Radio,SunnySwitch:w.Switch,SunnyDatePicker:w.DatePicker,SunnyTimePicker:w.TimePicker,SunnyUpload:w.Upload,SunnyBusinessSearch:Rn},Q={};function Fn(t){const{config:n,defineRules:o}=t,{disabled:r=!1,disabledOnChangeListener:a=!0,disabledOnInputListener:l=!0,emptyStateValue:s=void 0,businessSearchAdapter:i,customizeSelectAdapter:p,selectOptionsAdapter:k,permissionOptionsAdapter:g,uploadConfig:d,apiPrefix:u}=n||{};if(Object.assign(Q,{disabled:r,disabledOnChangeListener:a,disabledOnInputListener:l,emptyStateValue:s,businessSearchAdapter:i,customizeSelectAdapter:p,selectOptionsAdapter:k,permissionOptionsAdapter:g,uploadConfig:d,apiPrefix:u}),o)for(const m of Object.keys(o))G.defineRule(m,o[m])}const Tn={class:"sunny-file-upload"},jn={class:"font-bold text-gray-700 mb-2"},Ln={class:"flex flex-wrap items-center text-sm mb-3 select-none"},On={class:"cursor-pointer text-blue-600 hover:text-blue-700 flex items-center mr-4 transition-colors"},Dn={class:"text-xs text-blue-600"},zn={class:"text-xs text-gray-400"},$n={class:"border border-dashed border-gray-300 rounded-lg p-4 transition-all duration-300"},Qn={class:"grid grid-cols-1 sm:grid-cols-2 gap-4"},Un={class:"flex-1 min-w-0 pr-8"},qn=["title"],Wn={class:"flex items-center text-xs text-gray-500"},_n={class:"mr-3 min-w-[3em]"},Jn={class:"ml-2 w-8 text-right"},Ve=1024,Yn=e.defineComponent({__name:"index",props:{modelValue:{default:""},action:{default:void 0},delAction:{default:void 0},accept:{default:void 0},limit:{default:void 0},maxSize:{default:void 0},storeType:{default:void 0},s3FileDir:{default:void 0},preSigned:{default:void 0},preSignedExpire:{default:void 0},readonly:{type:Boolean,default:!1},showEncrypt:{type:Boolean,default:!1},encryptFile:{type:Boolean,default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:n}){const o=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],r=t,a=n,l=e.ref(!0),s=e.ref(!1),i=e.ref([]),p=e.ref(!1),k=e.computed(()=>{const y=Q.uploadConfig||{};return{action:r.action||y.action||"",delAction:r.delAction||y.delAction||"",accept:r.accept??y.accept??".csv,.pdf,.xls,.xlsx",limit:r.limit??y.limit??10,maxSize:r.maxSize??y.maxSize??10,storeType:r.storeType??y.storeType??"amazon",s3FileDir:r.s3FileDir??y.s3FileDir??"",preSigned:r.preSigned??y.preSigned??"",preSignedExpire:r.preSignedExpire??y.preSignedExpire??"",encryptFile:r.encryptFile??y.encryptFile??!1}});k.value.action||console.warn("[SunnyUpload] Missing required config: action. Please provide via props or configure globally using setupBusinessForm()."),k.value.delAction||console.warn("[SunnyUpload] Missing required config: delAction. Please provide via props or configure globally using setupBusinessForm().");const g=e.computed(()=>i.value.every(y=>!!y.url)),d=e.computed(()=>i.value.filter(y=>y.checked).length);e.watch(()=>r.modelValue,y=>{try{i.value=JSON.parse(y||"[]")}catch(f){console.warn("Failed to parse modelValue:",f),i.value=[]}},{immediate:!0,deep:!0});const u=y=>y,m=y=>{if(y===0)return"0 B";const f=Math.floor(Math.log(y)/Math.log(Ve));return(y/Math.pow(Ve,f)).toPrecision(3)+" "+o[f]},A=y=>{const f=y.type||"",b=(y.name||"").split(".").pop()?.toLowerCase()||"",x={"vscode-icons:file-type-excel":["xls","xlsx","csv"],"vscode-icons:file-type-powerpoint":["ppt","pptx"],"vscode-icons:file-type-text":["txt"],"vscode-icons:file-type-word":["doc","docx"],"vscode-icons:file-type-zip":["zip","rar","7z","tar","gz"],"vscode-icons:file-type-pdf":["pdf"]};for(const[F,V]of Object.entries(x))if(V.includes(b)||V.some(P=>f.includes(P)))return F;return f.includes("excel")||f.includes("spreadsheet")?"vscode-icons:file-type-excel":f.includes("powerpoint")||f.includes("presentation")?"vscode-icons:file-type-powerpoint":f.includes("text/plain")?"vscode-icons:file-type-text":f.includes("word")||f.includes("document")?"vscode-icons:file-type-word":f.includes("zip")||f.includes("compressed")?"vscode-icons:file-type-zip":f.includes("pdf")?"vscode-icons:file-type-pdf":"vscode-icons:default-file"},h=()=>{const y=JSON.stringify(i.value);a("update:modelValue",y),a("change",y)},S=(y,f)=>{if(f.status!=="init")return;const c=k.value;if(i.value.length>=c.limit){w.Message.error(`最多上传${c.limit}个文件`);return}const b=c.maxSize*1024*1024;if(f.file.size>b){w.Message.error(`文件最大限制${m(b)}`);return}i.value.push({uid:f.uid,name:f.name,size:f.file?.size,type:f.file?.type,file:f.file,percentage:0,checked:!1})},N=async()=>{if(i.value.length===0)return;const y=k.value,f=i.value.filter(c=>!c.url);for(const c of f){const b=new FormData;b.append("fileName",c.file),b.append("encryptFile",s.value?"1":"0"),y.storeType&&b.append("storeType",y.storeType),y.s3FileDir&&b.append("s3FileDir",y.s3FileDir),y.preSigned&&b.append("preSigned",y.preSigned),y.preSignedExpire&&b.append("preSignedExpire",y.preSignedExpire);try{const x=await Y.post(y.action,b,{onUploadProgress:V=>{if(V.total){const P=Math.floor(V.loaded/V.total*100);c.percentage=P}}}),{data:F}=x;F.code===200?(Object.assign(c,F.result),w.Message.success(F.message||"上传成功")):(w.Message.error(F.message||"上传失败"),E(c.uid))}catch{w.Message.error("上传失败"),E(c.uid)}}h()},E=y=>{const f=i.value.findIndex(c=>c.uid===y);f>-1&&i.value.splice(f,1)},C=(y,f)=>{const c=k.value;y.url?w.Modal.confirm({title:u("提示"),content:u("是否删除该文件?"),onOk:()=>{Y.post(c.delAction,{filePathList:[y.url],storeType:c.storeType}).then(b=>{const{data:x}=b;w.Message[x.success?"success":"error"](x.message),x.code===200&&(i.value.splice(f,1),h())})}}):(i.value.splice(f,1),h())},I=()=>{const y=i.value.every(f=>f.checked);i.value.forEach(f=>f.checked=!y)},B=()=>{const y=k.value,f=i.value.filter(c=>c.checked);f.length!==0&&w.Modal.confirm({title:u("提示"),content:u("是否删除选中的文件?"),onOk:()=>{p.value=!0;const c=f.map(b=>b.url).filter(Boolean);c.length>0?Y.post(y.delAction,{filePathList:c,storeType:y.storeType}).then(b=>{const{data:x}=b;w.Message[x.success?"success":"error"](x.message),x.code===200&&(i.value=i.value.filter(F=>!F.checked),h())}).finally(()=>{p.value=!1}):(i.value=i.value.filter(b=>!b.checked),h(),p.value=!1)}})};return(y,f)=>(e.openBlock(),e.createElementBlock("div",Tn,[e.createElementVNode("div",jn,e.toDisplayString(u("附件")),1),e.withDirectives(e.createElementVNode("div",Ln,[e.createVNode(e.unref(w.Upload),{"show-file-list":!1,"auto-upload":!1,multiple:"",accept:k.value.accept,onChange:S},{"upload-button":e.withCtx(()=>[e.createElementVNode("span",On,[e.createVNode(e.unref(zt),{class:"mr-1 w-4 h-4"}),e.createTextVNode(" "+e.toDisplayString(u("选择附件")),1)])]),_:1},8,["accept"]),e.createElementVNode("span",{class:e.normalizeClass(["flex items-center mr-4 transition-colors",g.value?"text-gray-300 cursor-not-allowed":"cursor-pointer text-gray-600 hover:text-gray-800"]),onClick:f[0]||(f[0]=c=>!g.value&&N())},[e.createVNode(e.unref(jt),{class:"mr-1 w-4 h-4"}),e.createTextVNode(" "+e.toDisplayString(u("上传附件")),1)],2),e.createElementVNode("span",{class:"cursor-pointer text-blue-600 hover:text-blue-700 mr-4 transition-colors",onClick:I},e.toDisplayString(u("全选")),1),e.createElementVNode("span",{class:e.normalizeClass(["mr-4 transition-colors",d.value===0?"text-gray-300 cursor-not-allowed":"cursor-pointer text-gray-500 hover:text-red-500"]),onClick:B},e.toDisplayString(u("删除")),3),t.showEncrypt?(e.openBlock(),e.createBlock(e.unref(w.Checkbox),{key:0,modelValue:s.value,"onUpdate:modelValue":f[1]||(f[1]=c=>s.value=c),class:"mr-4"},{default:e.withCtx(()=>[e.createElementVNode("span",Dn,e.toDisplayString(u("是否加密")),1)]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),e.createElementVNode("span",zn," ("+e.toDisplayString(u("单个文件最大"))+e.toDisplayString(k.value.maxSize)+"MB,"+e.toDisplayString(u("最多上传"))+e.toDisplayString(k.value.limit)+e.toDisplayString(u("个"))+") ",1),e.createElementVNode("span",{class:"ml-auto cursor-pointer text-blue-600 text-xs hover:text-blue-700 transition-colors",onClick:f[2]||(f[2]=c=>l.value=!l.value)},e.toDisplayString(l.value?u("隐藏"):u("展开")),1)],512),[[e.vShow,!t.readonly]]),e.withDirectives(e.createElementVNode("div",$n,[e.createElementVNode("div",Qn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(c,b)=>(e.openBlock(),e.createElementBlock("div",{key:c.uid||b,class:"bg-gray-50 hover:bg-gray-100 rounded p-3 relative flex items-center border border-transparent hover:border-gray-200 transition-colors group"},[e.createVNode(e.unref(ge),{icon:A(c),class:"w-10 h-10 mr-3 flex-shrink-0"},null,8,["icon"]),e.createElementVNode("div",Un,[e.createElementVNode("div",{class:"text-sm truncate font-medium text-gray-700 mb-1",title:c.name},e.toDisplayString(c.name),9,qn),e.createElementVNode("div",Wn,[e.createElementVNode("span",_n,e.toDisplayString(m(c.size)),1),e.createVNode(e.unref(w.Progress),{percent:c.percentage/100,size:"small","show-text":!1,color:c.percentage===100?"#00b42a":"#165dff",class:"flex-1"},null,8,["percent","color"]),e.createElementVNode("span",Jn,e.toDisplayString(c.percentage)+"%",1)])]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(w.Checkbox),{key:0,modelValue:c.checked,"onUpdate:modelValue":x=>c.checked=x,class:"absolute top-3 right-3"},null,8,["modelValue","onUpdate:modelValue"])),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(Be),{key:1,class:"absolute bottom-3 right-3 w-4 h-4 cursor-pointer text-gray-400 hover:text-red-500 transition-colors",onClick:x=>C(c,b)},null,8,["onClick"]))]))),128))])],512),[[e.vShow,i.value.length>0&&l.value]])]))}}),Gn={class:"flex gap-2 items-center flex-nowrap overflow-hidden"},Kn={class:"flex gap-2 item-center flex-nowrap"},Pe=e.defineComponent({__name:"index",props:{modelValue:{type:String},action:{type:String,required:!1},delAction:{type:String,required:!1},accept:{type:String},encryptFile:{type:Boolean,default:void 0},storeType:{type:String,default:void 0},s3FileDir:{type:String,default:void 0},preSigned:{type:Boolean,default:void 0},preSignedExpire:{type:Number,default:void 0},limit:{type:Number,default:void 0},maxSize:{type:Number,default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:n}){const o=t,r=e.computed(()=>{const p=Q.uploadConfig||{};return{action:o.action||p.action,delAction:o.delAction||p.delAction,accept:o.accept??p.accept,encryptFile:o.encryptFile??p.encryptFile??!1,storeType:o.storeType??p.storeType??"amazon",s3FileDir:o.s3FileDir??p.s3FileDir??"",preSigned:o.preSigned??p.preSigned??!1,preSignedExpire:o.preSignedExpire??p.preSignedExpire??7,limit:o.limit??p.limit,maxSize:o.maxSize??p.maxSize}});r.value.action||console.warn("[SunnySimpleUpload] Missing required config: action. Please provide via props or configure globally using setupBusinessForm()."),r.value.delAction||console.warn("[SunnySimpleUpload] Missing required config: delAction. Please provide via props or configure globally using setupBusinessForm().");const a=e.computed(()=>JSON.parse(o.modelValue||"[]")),l=n,s=p=>{const{onProgress:k,onError:g,onSuccess:d,fileItem:u,name:m}=p,A=r.value;if(A.limit&&a.value.length>=A.limit){w.Message.error(`最多只能上传 ${A.limit} 个文件`),g();return}if(A.maxSize&&u.file.size>A.maxSize*1024*1024){w.Message.error(`文件大小不能超过 ${A.maxSize} MB`),g();return}var h=new FormData;h.append("fileName",u.file),h.append("encryptFile",A.encryptFile===!0?"1":"0"),h.append("storeType",A.storeType),A.s3FileDir&&h.append("s3FileDir",A.s3FileDir),A.preSigned&&h.append("preSigned",A.preSigned===!0?"1":"0"),A.preSignedExpire&&h.append("preSignedExpire",String(A.preSignedExpire)),Y.post(A.action,h,{onUploadProgress:S=>{const N=Math.floor(S.loaded/S.total*100);k(N)}}).then(S=>{if(S.data.code===200){w.Message.success(S.data.message||"上传成功"),d(S.data.result);const N=[...a.value,u];l("update:modelValue",JSON.stringify(N)),l("change",JSON.stringify(N))}else w.Message.error(S.data.message||"上传失败"),g()}).catch(()=>{g()})},i=p=>{const k=r.value;Y.post(k.delAction,{filePathList:[p.response.url],storeType:k.storeType}).then(g=>{const{data:d}=g;if(w.Message.success(d.message||"删除成功"),d.code===200){const u=a.value.filter(m=>m.uid!==p.uid);l("update:modelValue",JSON.stringify(u))}}).catch(g=>{w.Message.error("删除失败"),console.error("删除文件失败:",g)})};return(p,k)=>{const g=e.resolveComponent("a-button"),d=e.resolveComponent("a-upload"),u=e.resolveComponent("a-tag");return e.openBlock(),e.createElementBlock("div",Gn,[e.createVNode(d,{"show-file-list":!1,action:t.action,"custom-request":s},{"upload-button":e.withCtx(()=>[e.createVNode(g,{type:"primary",size:"mini"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.$t("common.upload")),1)]),_:1})]),_:1},8,["action"]),e.createElementVNode("div",Kn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,m=>(e.openBlock(),e.createBlock(u,{loading:!1,color:m.status==="error"?"red":"green",closable:"",onClose:A=>i(m)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.name),1)]),_:2},1032,["color","onClose"]))),256))])])}}}),Ie=e.defineComponent({name:"SunnySelect",inheritAttrs:!1,props:{modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},options:{type:Array,default:()=>[]},filterModel:{type:Object,default:void 0}},emits:["update:modelValue"],setup(t,{emit:n,slots:o,attrs:r}){const a=i=>{const p=i.cMeta;return!p||Object.keys(p).length===0?!0:!t.filterModel||Object.keys(t.filterModel).length===0?!1:Object.entries(p).every(([k,g])=>{const d=t.filterModel[k];return d==null?!1:String(d)===String(g)})},l=e.computed(()=>{const i=t.modelValue;if(i==null||i===""||r["allow-create"]===!0||r["allow-create"]==="")return i;const p=k=>t.options.some(g=>a(g)?g.value==k||typeof k=="object"&&k!==null&&"value"in k&&g.value==k.value:!1);if(Array.isArray(i)){const k=i.filter(g=>p(g));return k.length===i.length?i:k}else return p(i)?i:void 0});e.watch(l,i=>{i!==t.modelValue&&n("update:modelValue",i)});const s=i=>{n("update:modelValue",i)};return()=>e.createVNode(w.Select,e.mergeProps(r,{modelValue:l.value,"onUpdate:modelValue":s}),{default:()=>t.options.map(i=>a(i)?e.createVNode(w.Option,e.mergeProps({key:i.value},i),{default:()=>o.option?o.option({data:i}):i.label}):null),...Object.fromEntries(Object.entries(o).filter(([i])=>i!=="option"&&i!=="default"))})}}),Hn={class:"flex items-center justify-between px-3 py-2 border-b border-[var(--color-neutral-3)] bg-[var(--color-bg-popup)] select-none"},Xn={class:"flex items-center gap-1"},Zn={class:"w-6 h-6 flex items-center justify-center rounded cursor-help text-[var(--color-text-3)] hover:text-[var(--color-text-1)] hover:bg-[var(--color-fill-3)] transition-all"},vn=e.defineComponent({name:"SunnyBatchSelect",inheritAttrs:!1,__name:"BatchSelect",props:{modelValue:{default:()=>[]},options:{default:()=>[]},matchStrategy:{default:"both"},filterModel:{default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:n}){const o=t,r=n,a=e.computed(()=>o.options.filter(d=>!d.disabled)),l=e.computed(()=>a.value.length===0?!1:a.value.every(d=>o.modelValue.includes(d.value))),s=e.computed(()=>{if(a.value.length===0)return!1;const d=a.value.filter(u=>o.modelValue.includes(u.value)).length;return d>0&&d<a.value.length}),i=d=>{r("update:modelValue",d),r("change",d)},p=d=>{if(d===!0){const m=a.value.map(S=>S.value),A=o.modelValue.filter(S=>{const N=o.options.find(E=>E.value===S);return N&&N.disabled}),h=Array.from(new Set([...A,...m]));r("update:modelValue",h),r("change",h)}else{const m=o.modelValue.filter(A=>{const h=o.options.find(S=>S.value===A);return h&&h.disabled});r("update:modelValue",m),r("change",m)}},k=()=>{const d=o.modelValue.filter(u=>{const m=o.options.find(A=>A.value===u);return m&&m.disabled});r("update:modelValue",d),r("change",d)},g=d=>{const u=d.clipboardData||window.clipboardData;if(!u)return;const m=u.getData("text");if(!m)return;const A=m.split(/\r?\n/).map(E=>E.trim()).filter(E=>E);if(A.length===0)return;const h=[];let S=0;const N=E=>{const C=E.cMeta;return!C||Object.keys(C).length===0?!0:!o.filterModel||Object.keys(o.filterModel).length===0?!1:Object.entries(C).every(([I,B])=>{const y=o.filterModel[I];return y==null?!1:String(y)===String(B)})};if(A.forEach(E=>{if(o.matchStrategy==="value"||o.matchStrategy==="both"){const C=o.options.find(I=>String(I.value)===E);if(C&&!C.disabled&&N(C)){h.push(C.value),S++;return}}if(o.matchStrategy==="label"||o.matchStrategy==="both"){const C=o.options.find(I=>I.label===E);C&&!C.disabled&&N(C)&&(h.push(C.value),S++)}}),h.length>0){d.preventDefault();const E=Array.from(new Set([...o.modelValue,...h]));r("update:modelValue",E),r("change",E),w.Message.success(`成功识别并选中 ${S} 项 (Matched ${S} items)`)}};return(d,u)=>{const m=e.resolveComponent("a-checkbox"),A=e.resolveComponent("a-tooltip");return e.openBlock(),e.createBlock(e.unref(Ie),e.mergeProps(d.$attrs,{"model-value":t.modelValue,options:t.options,"filter-model":t.filterModel,multiple:"","allow-search":"","onUpdate:modelValue":i,onPaste:g}),e.createSlots({header:e.withCtx(()=>[e.createElementVNode("div",Hn,[e.createVNode(m,{"model-value":l.value,indeterminate:s.value,onChange:p,class:"pl-1"},{default:e.withCtx(()=>[...u[0]||(u[0]=[e.createElementVNode("span",{class:"text-[var(--color-text-1)]"},"全选",-1)])]),_:1},8,["model-value","indeterminate"]),e.createElementVNode("div",Xn,[e.createVNode(A,{content:"清除所有选中项"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:"w-6 h-6 flex items-center justify-center rounded cursor-pointer text-[var(--color-text-3)] hover:bg-[var(--color-fill-3)] transition-all",onClick:k},[e.createVNode(e.unref(Be))])]),_:1}),u[1]||(u[1]=e.createElementVNode("div",{class:"w-[1px] h-3 bg-[var(--color-neutral-3)] mx-1"},null,-1)),e.createVNode(A,{content:"支持从 Excel 或文本编辑器(↓列数据)复制多行数据,粘贴至搜索框即可自动匹配并选中。",position:"left"},{default:e.withCtx(()=>[e.createElementVNode("div",Zn,[e.createVNode(e.unref(we))])]),_:1})])])]),_:2},[e.renderList(d.$slots,(h,S)=>({name:S,fn:e.withCtx(N=>[e.renderSlot(d.$slots,S,e.normalizeProps(e.guardReactiveProps(N||{})))])}))]),1040,["model-value","options","filter-model"])}}}),Re=e.defineComponent({name:"SunnySearchInputTag",inheritAttrs:!1,__name:"SearchInputTag",props:{modelValue:{default:()=>[]},fieldNames:{default:()=>({label:"label",value:"value"})},placeholder:{default:"请选择..."},disabled:{type:Boolean,default:!1},maxTagCount:{}},emits:["update:modelValue","search","change","clear"],setup(t,{emit:n}){const o=t,r=n,a=e.computed(()=>o.fieldNames?.label||"label"),l=e.computed(()=>o.fieldNames?.value||"value"),s=e.computed(()=>o.modelValue.map(d=>({label:d[a.value],value:d[l.value],closable:!o.disabled,tagProps:d.tagProps}))),i=d=>{o.disabled||["Backspace","Delete","Tab","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(d.key)||d.preventDefault()},p=(d,u)=>{const m=[...o.modelValue];m.splice(u,1),r("update:modelValue",m),r("change",m)},k=()=>{r("update:modelValue",[]),r("change",[]),r("clear")},g=()=>{o.disabled||r("search")};return(d,u)=>{const m=e.resolveComponent("a-input-tag");return e.openBlock(),e.createBlock(m,e.mergeProps(d.$attrs,{"model-value":s.value,"input-value":"",disabled:t.disabled,placeholder:t.placeholder,"max-tag-count":t.maxTagCount,"allow-create":!1,class:"w-full group",onRemove:p,onClear:k,onKeydown:i}),e.createSlots({suffix:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center h-full px-2 border-l border-[var(--color-neutral-3)] group-hover:border-[var(--color-neutral-4)] -mr-3",[t.disabled?"cursor-not-allowed text-[var(--color-text-4)]":"cursor-pointer text-[var(--color-text-2)] group"]]),onClick:e.withModifiers(g,["stop"])},[e.createVNode(e.unref(de),{class:"transition-colors group-hover:text-[var(--color-primary-6)]"})],2)]),_:2},[e.renderList(d.$slots,(A,h)=>({name:h,fn:e.withCtx(S=>[e.renderSlot(d.$slots,h,e.normalizeProps(e.guardReactiveProps(S||{})))])}))]),1040,["model-value","disabled","placeholder","max-tag-count"])}}});class eo{store;constructor(n,o){this.store=new nt.Store(n),o?.onUpdate&&this.store.subscribe(()=>{o.onUpdate?.()})}setState(n){this.store.setState(o=>{const r=typeof n=="function"?n(o):n;return{...o,...r}})}getState(){return this.store.state}}function Me(t,n="YYYY-MM-DD"){if(!t)return t;if(j.isFunction(t.format))return t.format(n);if(t instanceof Date){const o=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,"0"),a=String(t.getDate()).padStart(2,"0"),l=String(t.getHours()).padStart(2,"0"),s=String(t.getMinutes()).padStart(2,"0"),i=String(t.getSeconds()).padStart(2,"0");return n.replace("YYYY",String(o)).replace("MM",r).replace("DD",a).replace("HH",l).replace("mm",s).replace("ss",i)}return String(t)}function ee(t){return j.is(t,"Date")}function te(t){return j.isObject(t)&&"$d"in t&&"$y"in t&&"$M"in t}function ne(t,n){if(!j.isObject(t)||!j.isObject(n)||Array.isArray(n))return n;const o={...t};return Object.keys(n).forEach(r=>{const a=o[r],l=n[r];j.isObject(a)&&j.isObject(l)?o[r]=ne(a,l):o[r]=l}),o}class to{condition=!1;resolveFn=null;promise=null;setConditionTrue(){this.condition=!0,this.resolveFn&&(this.resolveFn(),this.resolveFn=null)}reset(){this.condition=!1,this.promise=null,this.resolveFn=null}async waitForCondition(){this.condition||(this.promise||(this.promise=new Promise(n=>{this.resolveFn=n})),await this.promise)}}function no(t){const n=Object.getPrototypeOf(t),o=Object.getOwnPropertyNames(n);for(const r of o){const a=t[r];r!=="constructor"&&typeof a=="function"&&(t[r]=a.bind(t))}}function oo(){return{actionWrapperClass:"",collapsed:!1,collapsedRows:1,collapseTriggerResize:!1,commonConfig:{},handleReset:void 0,handleSubmit:void 0,handleValuesChange:void 0,handleCollapsedChange:void 0,layout:"horizontal",resetButtonOptions:{},schema:[],scrollToFirstError:!1,showCollapseButton:!1,showDefaultActions:!0,submitButtonOptions:{},submitOnChange:!1,submitOnEnter:!1,wrapperClass:"grid-cols-1",values:{}}}class Fe{form;isMounted=!1;state=null;stateHandler;store;componentRefMap=new Map;latestSubmissionValues=null;prevState=null;constructor(n={}){const{...o}=n,r=oo();this.store=new eo({...r,...o},{onUpdate:()=>{this.prevState=this.state,this.state=this.store.getState(),this.updateState()}}),this.state=this.store.getState(),this.stateHandler=new to,no(this)}getFieldComponentRef(n){let o=this.componentRefMap.has(n)?this.componentRefMap.get(n):void 0;if(o&&o.$&&o.$.type&&o.$.type.name==="AsyncComponentWrapper"&&o.$.subTree&&o.$.subTree.ref){const r=o.$.subTree.ref;Array.isArray(r)?r.length>0&&r[0]&&e.isRef(r[0].r)&&(o=r[0].r.value):e.isRef(r.r)&&(o=r.r.value)}return o}getFocusedField(){for(const n of this.componentRefMap.keys()){const o=this.getFieldComponentRef(n);if(o){let r=null;if(o instanceof HTMLElement?r=o:o.$el instanceof HTMLElement&&(r=o.$el),!r)continue;if(r===document.activeElement||r.contains(document.activeElement))return n}}}getLatestSubmissionValues(){return this.latestSubmissionValues||{}}getState(){return this.state}async getValues(){const n=await this.getForm();return n.values?this.handleRangeTimeValue(n.values):{}}async isFieldValid(n){return(await this.getForm()).isFieldValid(n)}merge(n){const o=[this,n],r=new Proxy(n,{get(a,l){return l==="merge"?s=>(o.push(s),r):l==="submitAllForm"?async(s=!0)=>{try{const i=await Promise.all(o.map(async p=>(await p.validate()).valid?e.toRaw(await p.getValues()||{}):void 0));return i.some(p=>!p)?void 0:s?Object.assign({},...i):i}catch(i){console.error("Validation error:",i)}}:a[l]}});return r}mount(n,o){this.isMounted||(this.form=n,this.stateHandler.setConditionTrue(),this.setLatestSubmissionValues({...e.toRaw(this.handleRangeTimeValue(this.form.values))}),o&&(this.componentRefMap=o),this.isMounted=!0)}async removeSchemaByFields(n){const o=new Set(n),a=(this.state?.schema??[]).filter(l=>l.fieldName&&!o.has(l.fieldName));this.setState({schema:a})}async resetForm(n,o){return(await this.getForm()).resetForm(n,o)}async resetValidate(){const n=await this.getForm();Object.keys(n.errors.value).forEach(r=>{n.setFieldError(r,void 0)})}scrollToFirstError(n){const o=typeof n=="string"?n:Object.keys(n)[0];if(!o)return;let r=document.querySelector(`[name="${o}"]`);if(!r){const a=this.getFieldComponentRef(o);a&&a.$el instanceof HTMLElement?r=a.$el:a instanceof HTMLElement&&(r=a)}r&&r.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}async setFieldValue(n,o,r){const a=await this.getForm();if(n.includes(".")||n.includes("[")){const l={...a.values},s=J.set(l,n,o);a.setValues(s,r)}else a.setValues({[n]:o},r)}setLatestSubmissionValues(n){this.latestSubmissionValues={...e.toRaw(n)}}setState(n){j.isFunction(n)?this.store.setState(o=>ne(o,n(o))):this.store.setState(o=>ne(o,n))}async setValues(n,o=!0,r=!1){const a=await this.getForm(),l=a.values||{},s={...n};if(this.handleValueToObjectFields(s),Object.keys(s).some(k=>k.includes(".")||k.includes("["))){let k={...l};for(const[g,d]of Object.entries(s))k=J.set(k,g,d);o&&(k=this.filterNestedValues(k,l)),a.setValues(k,r);return}if(!o){a.setValues(s,r);return}const p=this.filterAndMergeValues(s,l);a.setValues(p,r)}filterNestedValues(n,o){if(!j.isObject(n)||!j.isObject(o)||Array.isArray(n))return n;const r={};for(const a in n)if(Object.prototype.hasOwnProperty.call(n,a)&&a in o){const l=n[a],s=o[a];j.isObject(l)&&!Array.isArray(l)&&!ee(l)&&!te(l)&&j.isObject(s)&&!Array.isArray(s)&&!ee(s)&&!te(s)?r[a]=this.filterNestedValues(l,s):r[a]=l}return r}filterAndMergeValues(n,o){if(!j.isObject(n)||!j.isObject(o)||Array.isArray(n))return n;const r={};for(const a in n)if(Object.prototype.hasOwnProperty.call(n,a)&&a in o){const l=n[a],s=o[a];j.isObject(l)&&!Array.isArray(l)&&!ee(l)&&!te(l)&&j.isObject(s)&&!Array.isArray(s)&&!ee(s)&&!te(s)?r[a]=this.filterAndMergeValues(l,s):r[a]=l}return r}async resetValues(n){return this.setValues(n)}async submitForm(n){n?.preventDefault(),n?.stopPropagation();const o=await this.getForm(),{valid:r,errors:a}=await o.validate(),l=e.toRaw(await this.getValues());return r?await this.state?.handleSubmit?.(l):this.state?.scrollToFirstError&&this.scrollToFirstError(a),{valid:r,values:l,errors:a}}unmount(){this.form?.resetForm?.(),this.latestSubmissionValues=null,this.isMounted=!1,this.stateHandler.reset()}updateSchema(n){const o=[...n];if(!o.every(s=>Reflect.has(s,"fieldName")&&s.fieldName)){console.error("All items in the schema array must have a valid `fieldName` property to be updated");return}const a=j.cloneDeep(this.state?.schema??[]),l={};o.forEach(s=>{s.fieldName&&(l[s.fieldName]=s)}),a.forEach((s,i)=>{if(!s.fieldName)return;const p=l[s.fieldName];p&&(a[i]=ne(s,p))}),this.setState({schema:a})}async validate(n){const r=await(await this.getForm()).validate(n);return Object.keys(r?.errors??{}).length>0&&(console.error("validate error",r?.errors),this.state?.scrollToFirstError&&this.scrollToFirstError(r.errors)),r}async validateAndSubmitForm(){const n=await this.getForm(),{valid:o,errors:r}=await n.validate();if(!o){this.state?.scrollToFirstError&&this.scrollToFirstError(r);return}return await this.submitForm()}async validateField(n,o){const a=await(await this.getForm()).validateField(n,o);return Object.keys(a?.errors??{}).length>0&&(console.error("validate error",a?.errors),this.state?.scrollToFirstError&&this.scrollToFirstError(n)),a}async getForm(){if(this.isMounted||await this.stateHandler.waitForCondition(),!this.form?.meta)throw new Error("<SunnyUseForm /> is not mounted");return this.form}handleMultiFields=n=>{const o=this.state?.arrayToStringFields;if(!o||!Array.isArray(o))return;const r=(a,l=",")=>{this.processFields(a,l,n,(s,i)=>{if(Array.isArray(s))return s.join(i);if(typeof s=="string"){if(s==="")return[];const p=i.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`);return s.split(new RegExp(p))}else return s})};if(o.every(a=>typeof a=="string")){const a=o[o.length-1]||"",l=a.length===1?o.slice(0,-1):o,s=a.length===1?a:",";r(l,s);return}o.forEach(a=>{if(Array.isArray(a)){const[l,s=","]=a;if(!Array.isArray(l)){console.warn(`Invalid field configuration: fields should be an array of strings, got ${typeof l}`);return}r(l,s)}})};handleObjectToValueFields=n=>{const o=this.state?.objectToValueFields;!o||!Array.isArray(o)||o.forEach(r=>{const a=n[r];if(!Array.isArray(a)||a.length===0)return;const l=this.state?.schema?.find(g=>g.fieldName===r);if(!l)return;let s=l.componentProps;if(typeof s=="function")try{s=s(n,this.form)}catch(g){console.warn(`[SunnyForm] Failed to resolve componentProps for field ${r}`,g);return}const p=(s?.modalProps?.fieldNames||s?.fieldNames)?.value;if(!p)return;const k=a.map(g=>g&&typeof g=="object"?g[p]:g).filter(g=>g!=null).join(",");n[r]=k})};handleValueToObjectFields=n=>{const o=this.state?.objectToValueFields;!o||!Array.isArray(o)||o.forEach(r=>{const a=n[r];if(typeof a!="string"||a===""||Array.isArray(a))return;const l=this.state?.schema?.find(d=>d.fieldName===r);if(!l)return;let s=l.componentProps;if(typeof s=="function")try{s=s(n,this.form)}catch(d){console.warn(`[SunnyForm] Failed to resolve componentProps for field ${r}`,d);return}const i=s?.modalProps?.fieldNames||s?.fieldNames,p=i?.value||"value",k=i?.label||"label";if(!i?.value)return;const g=a.split(",").map(d=>d.trim()).filter(d=>d!=="").map(d=>({[p]:d,[k]:d}));n[r]=g})};handleRangeTimeValue=n=>{const o={...n},r=this.state?.fieldMappingTime;return this.handleMultiFields(o),this.handleObjectToValueFields(o),!r||!Array.isArray(r)||r.forEach(([a,[l,s],i="YYYY-MM-DD"])=>{if(l&&s&&o[a]===null&&(Reflect.deleteProperty(o,l),Reflect.deleteProperty(o,s)),!o[a]){Reflect.deleteProperty(o,a);return}const[p,k]=o[a];if(i===null)o[l]=p,o[s]=k;else if(j.isFunction(i))o[l]=i(p,a),o[s]=i(k,a);else{const[g,d]=Array.isArray(i)?i:[i,i];o[l]=p?Me(p,g):void 0,o[s]=k?Me(k,d):void 0}Reflect.deleteProperty(o,a)}),o};processFields=(n,o,r,a)=>{n.forEach(l=>{const s=r[l];s!=null&&(r[l]=a(s,o))})};updateState(){const n=this.state?.schema??[],o=this.prevState?.schema??[];if(n.length<o.length){const r=new Set(n.map(l=>l.fieldName)),a=o.filter(l=>!r.has(l.fieldName));for(const l of a)l.fieldName&&this.form?.setFieldValue?.(l.fieldName,void 0)}}useStore}const Te=Symbol("FormRenderProps"),ro=Symbol("ComponentRefMap"),je=Symbol("FieldSlots"),ao=t=>{e.provide(Te,t)},ye=()=>{const t=e.inject(Te);if(!t)throw new Error("injectRenderFormProps must be used within provideFormRenderProps");return t},lo=t=>{e.provide(ro,t)},so=t=>{e.provide(je,t)},io=()=>e.inject(je),Le=()=>{const t=ye(),n=e.computed(()=>t.layout==="vertical");return{props:t,isVertical:n,componentBindEventMap:e.computed(()=>t.config?.modelPropNameMap)}},Oe=Symbol("FormPropsKey");function De(t){e.provide(Oe,t)}function co(){const t=e.inject(Oe);if(!t)throw new Error("Form context not found (表单上下文未找到,请确保在 SunnyForm 或 SunnyUseForm 内部使用)");return t}function fo(t){const n=e.useSlots(),o=e.computed(()=>{const l=e.unref(t),s={};return(l.schema||[]).forEach(i=>{i.fieldName&&i.defaultValue!==void 0&&(s[i.fieldName]=i.defaultValue)}),l.values&&Object.assign(s,l.values),s}),r=G.useForm({initialValues:o.value}),a=e.computed(()=>{const l=[],s=Object.keys(n);for(const i of s)i!=="default"&&typeof n[i]=="function"&&l.push(i);return l});return{form:r,delegatedSlots:a}}function uo(t){const n=G.useFormValues(),r=ye().form;if(!n)throw new Error("useDependencies should be used within <SunnyForm> (VeeValidate Form)");const a=e.computed(()=>n.value),l=e.computed(()=>t()),s=e.computed(()=>{const u=l.value;if(!u)return!0;const{if:m}=u,A=a.value;return j.isFunction(m)?!!m(A,r):j.isBoolean(m)?m:!0}),i=e.computed(()=>{const u=l.value;if(!u)return!0;const{show:m}=u,A=a.value;return j.isFunction(m)?!!m(A,r):j.isBoolean(m)?m:!0}),p=e.computed(()=>{const u=l.value;if(!u)return!1;const{disabled:m}=u,A=a.value;return j.isFunction(m)?!!m(A,r):j.isBoolean(m)?m:!1}),k=e.computed(()=>{const u=l.value;if(!u)return!1;const{required:m}=u,A=a.value;return j.isFunction(m)?!!m(A,r):!1}),g=e.computed(()=>{const u=l.value;if(!u)return{};const{componentProps:m}=u,A=a.value;return j.isFunction(m)?m(A,r)||{}:{}}),d=e.computed(()=>{const u=l.value;if(!u)return;const{rules:m}=u,A=a.value;if(j.isFunction(m))return m(A,r)});return{dynamicComponentProps:g,dynamicRules:d,isDisabled:p,isIf:s,isRequired:k,isShow:i}}const mo=e.defineComponent({__name:"FormField",props:{schema:{}},setup(t){const n=t,o=G.useFormValues(),r=ye(),a=e.computed(()=>Q.disabled??!1),{isVertical:l}=Le(),s=r.form,i=io(),{dynamicComponentProps:p,dynamicRules:k,isDisabled:g,isIf:d,isRequired:u,isShow:m}=uo(()=>n.schema.dependencies),A=e.computed(()=>{const{component:V}=n.schema;return j.isString(V)&&Mn[V]||V}),h=e.computed(()=>{const{component:V}=n.schema;return V==="Slot"}),S=e.computed(()=>{if(!h.value||!i)return!1;const V=n.schema.fieldName;return V?!!i[V]:!1}),N=(V,P)=>{const M=n.schema.fieldName;if(!M||!i||!i[M])return null;const R=i[M],z=O=>{V.onInput(O)},U={model:o.value,value:V.value,setValue:z,disabled:b.value,errorMessage:P,field:V,componentProps:f.value};return R(U)},E=e.defineComponent({name:"FieldSlotRenderer",props:{field:{type:Object,required:!0},errorMessage:{type:String,default:void 0}},setup(V){return()=>N(V.field,V.errorMessage)}}),C=e.computed(()=>n.schema.hidden?!1:d.value&&m.value),I=e.computed(()=>k.value||n.schema.rules),B=e.computed(()=>{if(!C.value)return!1;if(!I.value)return u.value;if(u.value)return!0;if(j.isString(I.value))return I.value.split("|").includes("required");const V=e.toRaw(I.value);let P=V?.isOptional?.();if(V?._def?.typeName==="ZodDefault"){const R=V?._def.innerType;R&&(P=R.isOptional?.())}return!P}),y=e.computed(()=>{if(!C.value)return null;let V=e.toRaw(I.value);if(!V)return u.value?"required":void 0;if(j.isString(V))return V;if(!!B.value){const M=V?.unwrap?.();M&&(V=M)}return ot.toTypedSchema(V)}),f=e.computed(()=>{const{componentProps:V,commonComponentProps:P}=n.schema,M=j.isFunction(V)?V(o.value,s):V;return{...P,...M,...p.value}}),c=V=>{const P=f.value,M=(z,U)=>(...O)=>{j.isFunction(z)&&z(...O),U(...O)},R=z=>{j.isFunction(P?.onInput)&&P.onInput(z),V.onInput(z)};return{...P,onInput:M(P?.onInput,V.onInput),onChange:M(P?.onChange,V.onChange),modelValue:V.value,"onUpdate:modelValue":R}};e.watch(()=>f.value?.autofocus,V=>{V===!0&&e.nextTick(()=>{})},{immediate:!0});const b=e.computed(()=>g.value||n.schema.disabled||f.value?.disabled||n.schema.formDisabled||a.value),x=e.computed(()=>{if(!(l.value||!n.schema.labelWidth))return{style:{flex:1}}}),F=e.computed(()=>{if(l.value||!n.schema.labelWidth)return;const V=n.schema.labelWidth,P=typeof V=="number"?`${V}px`:V;return{style:{width:P,minWidth:P,maxWidth:P,flex:`0 0 ${P}`}}});return(V,P)=>{const M=e.resolveComponent("a-form-item");return C.value&&t.schema.fieldName?(e.openBlock(),e.createBlock(e.unref(G.Field),{key:0,name:t.schema.fieldName,rules:y.value,label:t.schema.label},{default:e.withCtx(({field:R,errorMessage:z})=>[e.createVNode(M,e.mergeProps({label:t.schema.label,help:z||t.schema.help,"validate-status":z?"error":void 0,required:B.value,"label-col-props":F.value,"wrapper-col-props":x.value},t.schema.formFieldProps),{default:e.withCtx(()=>[S.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(E)),{key:0,field:R,"error-message":z},null,8,["field","error-message"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(A.value),e.mergeProps({key:1},c(R),{disabled:b.value}),null,16,["disabled"]))]),_:2},1040,["label","help","validate-status","required","label-col-props","wrapper-col-props"])]),_:1},8,["name","rules","label"])):e.createCommentVNode("",!0)}}}),po=["onClick"],ze=e.defineComponent({__name:"form-actions",props:{modelValue:{type:Boolean},formApi:{},searchPlanConfig:{}},emits:["update:modelValue","reset","submit"],setup(t,{expose:n,emit:o}){const r=t,a=o,{props:l}=Le(),s=G.useFormContext(),i=e.computed({get:()=>r.modelValue??!1,set:m=>a("update:modelValue",m)}),p=e.computed(()=>({content:"重置",show:!0,type:"outline",...e.unref(l).resetButtonOptions})),k=e.computed(()=>({content:"查询",show:!0,htmlType:r.formApi?"button":"submit",...e.unref(l).submitButtonOptions}));async function g(m){if(r.formApi){m?.preventDefault(),m?.stopPropagation();const A=e.unref(l),{valid:h}=await r.formApi.validate();if(!h)return;const S=e.toRaw(await r.formApi.getValues())??{};await A.handleSubmit?.(S)}}async function d(m){m?.preventDefault(),m?.stopPropagation();const A=e.unref(l);if(r.formApi){const h=e.toRaw(await r.formApi.getValues())??{};A.handleReset?await A.handleReset(h):r.formApi.resetForm()}else if(s)if(A.handleReset){const h=s.values;await A.handleReset(h)}else s.resetForm();a("reset")}e.watch(()=>i.value,()=>{e.unref(l).collapseTriggerResize&&window.dispatchEvent(new Event("resize"))});const u=e.computed(()=>{const m=e.unref(l),A=m.actionPosition||"right",h=["flex","items-center","gap-3",m.layout==="vertical"?"self-end":"self-start",m.layout==="inline"?"":"w-full",m.actionWrapperClass];switch(A){case"center":{h.push("justify-center");break}case"left":{h.push("justify-start");break}default:{h.push("justify-end");break}}return h.join(" ")});return n({handleReset:d,handleSubmit:g}),(m,A)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(u.value)},[e.unref(e.unref(l)).actionButtonsReverse?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(m.$slots,"submit-before"),k.value.show?(e.openBlock(),e.createBlock(e.unref(w.Button),e.mergeProps({key:0,type:"primary",size:e.unref(e.unref(l)).size||"small",onClick:g},k.value),{icon:e.withCtx(()=>[e.createVNode(e.unref(de))]),default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(k.value.content),1)]),_:1},16,["size"])):e.createCommentVNode("",!0)],64)),e.renderSlot(m.$slots,"reset-before"),p.value.show?(e.openBlock(),e.createBlock(e.unref(w.Button),e.mergeProps({key:1,size:e.unref(e.unref(l)).size,onClick:d},p.value),{icon:e.withCtx(()=>[e.createVNode(e.unref(Vt))]),default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(p.value.content),1)]),_:1},16,["size"])):e.createCommentVNode("",!0),e.unref(e.unref(l)).actionButtonsReverse?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.renderSlot(m.$slots,"submit-before"),k.value.show?(e.openBlock(),e.createBlock(e.unref(w.Button),e.mergeProps({key:0,type:"primary",size:e.unref(e.unref(l)).size||"small",onClick:g},k.value),{icon:e.withCtx(()=>[e.createVNode(e.unref(de))]),default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(k.value.content),1)]),_:1},16,["size"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"expand-before"),e.renderSlot(m.$slots,"search-plan",{},()=>[r.searchPlanConfig?.enable?(e.openBlock(),e.createBlock(e.unref(Ze),{key:0,"form-config":r.searchPlanConfig.formConfig,"current-search-plan":r.searchPlanConfig.currentSearchPlan,"search-plan-list":r.searchPlanConfig.searchPlanList,"resource-id":r.searchPlanConfig.resourceId,"n-resourceid":r.searchPlanConfig.nResourceid,api:r.searchPlanConfig.api,onSearch:r.searchPlanConfig.onSearch,onDefaultPlanLoaded:r.searchPlanConfig.onDefaultPlanLoaded,"onUpdate:currentSearchPlan":A[0]||(A[0]=h=>r.searchPlanConfig?.onUpdateCurrentSearchPlan&&r.searchPlanConfig.onUpdateCurrentSearchPlan(h)),"onUpdate:searchPlanList":A[1]||(A[1]=h=>r.searchPlanConfig?.onUpdateSearchPlanList&&r.searchPlanConfig.onUpdateSearchPlanList(h))},{trigger:e.withCtx(({open:h})=>[e.createElementVNode("button",{type:"button",class:"px-3 py-1.5 border border-[var(--color-border-2)] rounded bg-white text-sm transition-all hover:border-[rgb(var(--primary-6))] hover:text-[rgb(var(--primary-6))] disabled:cursor-not-allowed disabled:opacity-60 mr-2",onClick:h,title:"查询方案"},[e.createVNode(e.unref(ge),{icon:"lucide:filter",class:"w-4 h-4"})],8,po)]),_:1},8,["form-config","current-search-plan","search-plan-list","resource-id","n-resourceid","api","onSearch","onDefaultPlanLoaded"])):e.createCommentVNode("",!0)]),e.unref(e.unref(l)).showCollapseButton?(e.openBlock(),e.createElementBlock("div",{key:3,class:"cursor-pointer ml-2 text-[rgb(var(--primary-6))] hover:opacity-80 transition-opacity select-none flex items-center gap-0.5",onClick:A[2]||(A[2]=h=>i.value=!i.value)},[i.value?(e.openBlock(),e.createBlock(e.unref(pt),{key:0,size:16})):(e.openBlock(),e.createBlock(e.unref(St),{key:1,size:16}))])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"expand-after")],2))}});function ho(t){const n={xs:576,sm:576,md:768,lg:992,xl:1200,xxl:1600},o=be.useBreakpoints(n),r=e.computed(()=>{const i={},p=t.schema||[],k=l(),g=t.commonConfig?.colProps;return p.forEach(d=>{if(!d.fieldName)return;const u=d.colProps||g;i[d.fieldName]=s(u,d.colSpan,k)}),i}),a=e.computed(()=>{const i=l();if(t.layout!=="inline"){if(t.actionColProps)return s(t.actionColProps,void 0,i);if(t.showCollapseButton){const p=t.commonConfig?.colProps;return s(p||{xs:12,sm:12,md:8,lg:6},void 0,i)}return 24}});function l(){return o.greaterOrEqual("xxl").value?"xxl":o.greaterOrEqual("xl").value?"xl":o.greaterOrEqual("lg").value?"lg":o.greaterOrEqual("md").value?"md":o.greaterOrEqual("sm").value?"sm":"xs"}function s(i,p,k){if(i){const g=["xxl","xl","lg","md","sm","xs"],d=g.indexOf(k);for(let u=d;u<g.length;u++){const m=g[u],A=i[m];if(A!==void 0)return typeof A=="object"?A.span??24:A}if(i.span!==void 0)return i.span}return p!==void 0?p:24}return{spans:r,actionSpan:a}}const go={class:"h-full flex flex-col justify-end"},$e=e.defineComponent({__name:"Form",props:{formApi:{},form:{}},emits:["submit"],setup(t,{expose:n,emit:o}){const r=t,a=o,l=e.useSlots(),s=co(),i=e.reactive({...s.value});e.watch(()=>s.value,f=>{Object.assign(i,f)},{deep:!0}),ao(i),so(l);const{spans:p,actionSpan:k}=ho(i),g=e.computed(()=>{const{commonConfig:f={},labelWidth:c,schema:b=[]}=i,{componentProps:x={},formFieldProps:F={},disabled:V,...P}=f,M={...P};return c!==void 0&&Object.assign(M,{labelWidth:c}),b.map(R=>({...M,...R,formDisabled:V,hidden:R.hidden??R.hide,commonComponentProps:x,formFieldProps:{...F,...R.formFieldProps||{}},componentProps:R.componentProps}))}),d=e.computed(()=>i.layout==="inline"),u=r.form||G.useForm({initialValues:{...g.value.reduce((f,c)=>(c.fieldName&&(f[c.fieldName]=c.defaultValue),f),{}),...i.values||{}}}),{handleSubmit:m,resetForm:A,setValues:h,values:S,validate:N,errors:E,meta:C}=u;i.form=u,n({validate:async()=>({valid:(await N()).valid,errors:E.value}),handleSubmit:m}),e.onMounted(()=>{r.formApi&&r.formApi.mount({handleSubmit:m,resetForm:A,setValues:h,values:S,validate:N,errors:E,meta:C})});const I=m(f=>{a("submit",f),i.handleSubmit&&i.handleSubmit(f)}),B=f=>{i.collapsed=f,i.handleCollapsedChange?.(f),r.formApi&&r.formApi.setState({collapsed:f})},y=e.computed(()=>{const{compact:f,gridProps:c}=i,b=f?8:16,x=c?.xGap??c?.["x-gap"]??b,F=c?.yGap??c?.["y-gap"]??b;return{x,y:F}});return(f,c)=>{const b=e.resolveComponent("a-col"),x=e.resolveComponent("a-row"),F=e.resolveComponent("a-form");return e.openBlock(),e.createBlock(F,{model:{},layout:e.unref(s).layout||"horizontal",size:e.unref(s).size||"small",class:"arco-form",onSubmit:c[0]||(c[0]=(V,P)=>e.unref(I)(P))},{default:e.withCtx(()=>[e.createVNode(x,{gutter:[y.value.x,y.value.y],class:e.normalizeClass(i.wrapperClass),align:(i.layout||"horizontal")==="vertical"?"stretch":void 0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(V,P)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:V.fieldName||P},[V.fieldName&&!V.hidden&&(!i.collapsed||P<24/(e.unref(p)[V.fieldName]??24)*(i.collapsedRows??1)-1)?(e.openBlock(),e.createBlock(b,{key:0,span:e.unref(p)[V.fieldName]??(d.value?void 0:24)},{default:e.withCtx(()=>[e.createVNode(mo,{schema:V},null,8,["schema"])]),_:2},1032,["span"])):e.createCommentVNode("",!0)],64))),128)),i.showDefaultActions||e.unref(l).actions?(e.openBlock(),e.createBlock(b,{key:0,span:e.unref(k),style:e.normalizeStyle(d.value?{marginLeft:"16px"}:{flex:1,textAlign:"right"})},{default:e.withCtx(()=>[e.createElementVNode("div",go,[e.unref(l).actions?e.renderSlot(f.$slots,"actions",{key:0,collapsed:i.collapsed,formApi:r.formApi}):(e.openBlock(),e.createBlock(ze,{key:1,"model-value":i.collapsed,"onUpdate:modelValue":B,"form-api":r.formApi,"search-plan-config":i.searchPlanConfig},e.createSlots({_:2},[e.unref(l)["submit-before"]?{name:"submit-before",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"submit-before")]),key:"0"}:void 0,e.unref(l)["reset-before"]?{name:"reset-before",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"reset-before")]),key:"1"}:void 0,e.unref(l)["expand-before"]?{name:"expand-before",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"expand-before")]),key:"2"}:void 0,e.unref(l)["expand-after"]?{name:"expand-after",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"expand-after")]),key:"3"}:void 0]),1032,["model-value","form-api","search-plan-config"]))])]),_:3},8,["span","style"])):e.createCommentVNode("",!0)]),_:3},8,["gutter","class","align"])]),_:3},8,["layout","size"])}}}),Qe=e.defineComponent({__name:"SunnyUseForm",props:{id:{},layout:{},size:{},schema:{},labelWidth:{},wrapperClass:{},gridProps:{},actionWrapperClass:{},commonConfig:{},config:{},showDefaultActions:{type:Boolean,default:void 0},submitButtonOptions:{},resetButtonOptions:{},submitOnEnter:{type:Boolean,default:void 0},submitOnChange:{type:Boolean,default:void 0},handleValuesChange:{},handleCollapsedChange:{},handleSubmit:{},scrollToFirstError:{type:Boolean},handleReset:{},collapsed:{type:Boolean,default:void 0},showCollapseButton:{type:Boolean,default:void 0},collapsedRows:{},collapseTriggerResize:{type:Boolean,default:void 0},compact:{type:Boolean,default:void 0},actionLayout:{},actionPosition:{},actionColProps:{},values:{},fieldMappingTime:{},arrayToStringFields:{},objectToValueFields:{},searchPlanConfig:{},formApi:{}},setup(t){const n=t,o=n.formApi.useStore?.()||e.computed(()=>({})),r=e.computed(()=>{const g=Object.entries(n).reduce((d,[u,m])=>(m!==void 0&&(d[u]=m),d),{});return{...o.value,...g}}),a=new Map,{delegatedSlots:l,form:s}=fo(r);De(r),lo(a),e.onBeforeUnmount(()=>{n.formApi.unmount()});const i={};e.onMounted(async()=>{n.formApi.mount(s,a),n.formApi.setState({values:j.cloneDeep(s.values)}),await e.nextTick(),e.watch(()=>s.values,async g=>{if(n.formApi.setState({values:j.cloneDeep(g)}),p(),!r.value.handleValuesChange)return;const d=r.value.schema?.map(m=>m.fieldName)||[];if(d.length===0)return;const u=[];for(const m of d){const A=j.get(g,m),h=j.get(i,m);j.isEqual(A,h)||(u.push(m),j.set(i,m,A))}if(u.length>0){const m=await n.formApi.getValues();r.value.handleValuesChange(j.cloneDeep(m??{}),u)}},{deep:!0})});const p=be.useDebounceFn(async()=>{o.value.submitOnChange&&await n.formApi.submitForm()},300);function k(g){o.value.submitOnEnter&&(g.target instanceof HTMLTextAreaElement||(g.preventDefault(),n.formApi.submitForm()))}return(g,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value.wrapperClass)},[e.createVNode($e,e.mergeProps(r.value,{form:e.unref(s),"form-api":n.formApi,onKeydown:e.withKeys(k,["enter"])}),e.createSlots({default:e.withCtx(()=>[]),_:2},[e.renderList(e.unref(l),u=>({name:u,fn:e.withCtx(m=>[e.renderSlot(g.$slots,u,e.normalizeProps(e.guardReactiveProps(m)))])}))]),1040,["form","form-api"])],2))}});function Ue(t={}){const n=new Fe(t);return n.useStore=r=>tt.useStore(n.store.store,r),e.isReactive(t)&&e.watch(()=>t.schema,()=>{t.schema&&n.setState({schema:t.schema})},{immediate:!0}),[e.defineComponent({name:"useSunnyFormWrapper",setup(r,{attrs:a,slots:l}){return n.setState({...r,...a}),()=>e.h(Qe,{...r,...a,formApi:n},l)}}),n]}const qe=e.defineComponent({__name:"SunnyForm",props:{id:{},layout:{},size:{},schema:{},labelWidth:{},wrapperClass:{},gridProps:{},actionWrapperClass:{},commonConfig:{},config:{},showDefaultActions:{type:Boolean},submitButtonOptions:{},resetButtonOptions:{},submitOnEnter:{type:Boolean},submitOnChange:{type:Boolean},handleValuesChange:{type:Function},handleCollapsedChange:{type:Function},handleSubmit:{type:Function},scrollToFirstError:{type:Boolean},handleReset:{type:Function},collapsed:{type:Boolean},showCollapseButton:{type:Boolean},collapsedRows:{},collapseTriggerResize:{type:Boolean},compact:{type:Boolean},actionLayout:{},actionPosition:{},actionColProps:{},values:{},fieldMappingTime:{},arrayToStringFields:{},objectToValueFields:{},searchPlanConfig:{}},emits:["submit","reset","update:collapsed"],setup(t,{expose:n,emit:o}){const r=t,a=o,l=e.useSlots(),s=e.ref(null),i=e.computed(()=>r);De(i);const p=d=>{a("update:collapsed",d),r.handleCollapsedChange?.(d)},k=d=>{a("submit",d),r.handleSubmit?.(d)},g=()=>{a("reset",void 0)};return n({validate:async()=>s.value?s.value.validate():{valid:!1,errors:{}},submit:()=>{s.value?.handleSubmit&&s.value.handleSubmit(k)(void 0)}}),(d,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.wrapperClass)},[e.createVNode($e,{ref_key:"formRenderRef",ref:s,onSubmit:k},e.createSlots({default:e.withCtx(()=>[r.showDefaultActions?(e.openBlock(),e.createBlock(ze,{key:0,"model-value":r.collapsed,"onUpdate:modelValue":p,onReset:g,"search-plan-config":r.searchPlanConfig},{"reset-before":e.withCtx(()=>[e.renderSlot(d.$slots,"reset-before")]),"submit-before":e.withCtx(()=>[e.renderSlot(d.$slots,"submit-before")]),"expand-before":e.withCtx(()=>[e.renderSlot(d.$slots,"expand-before")]),"expand-after":e.withCtx(()=>[e.renderSlot(d.$slots,"expand-after")]),_:3},8,["model-value","search-plan-config"])):e.createCommentVNode("",!0)]),_:2},[e.renderList(e.unref(l),(m,A)=>({name:A,fn:e.withCtx(h=>[e.renderSlot(d.$slots,A,e.normalizeProps(e.guardReactiveProps(h)))])}))]),1536)],2))}});let yo=class{gridRef;constructor(n,o){this.gridRef=n}get grid(){return this.gridRef.value?.getGrid?.()||this.gridRef.value}get $grid(){return this.grid}async reloadData(n){const o=this.grid;o&&await o.reloadData(n)}async getFullData(){const n=this.grid;return n?n.getFullData():[]}async getCheckboxRecords(){const n=this.grid;return n?n.getCheckboxRecords():[]}async addEvent(n,o){const r=this.grid;if(r){const{row:a}=await r.insertAt(n,o);await e.nextTick(),r.setEditRow(a)}}async deleteSelection(){const n=this.grid;if(n){const o=n.getCheckboxRecords();o.length>0&&await n.remove(o)}}async validate(n=!0){const o=this.grid;return o?o.validate(n):null}};const So=e.defineComponent({__name:"use-vxe-grid",setup(t,{expose:n}){const o=e.ref();return n({getGrid:()=>o.value}),(r,a)=>{const l=e.resolveComponent("a-config-provider");return e.openBlock(),e.createBlock(l,{size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(oe.VxeGrid),e.mergeProps({ref_key:"gridRef",ref:o},r.$attrs),e.createSlots({_:2},[e.renderList(r.$slots,(s,i)=>({name:i,fn:e.withCtx(p=>[e.renderSlot(r.$slots,i,e.normalizeProps(e.guardReactiveProps(p||{})))])}))]),1040)]),_:3})}}});function Co(t){const n=e.ref(),o=new yo(n,t);return[e.defineComponent((a,{attrs:l,slots:s})=>{const{gridEvents:i,gridOptions:p}=t,k=Object.entries(i||{}).reduce((g,[d,u])=>{const m=`on${d.charAt(0).toUpperCase()+d.slice(1)}`;return g[m]=u,g},{});return()=>e.h(So,{ref:n,...a,...l,...p,...k},s)}),o]}const bo=Object.freeze(Object.defineProperty({__proto__:null,BusinessSearchRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]?JSON.stringify(t[n.field]):""])],edit:({row:t,column:n})=>[e.createVNode(Se,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},DatePickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(w.DatePicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},InputNumberRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>{const o=t[n.field],r=typeof o=="string"&&o!==""?Number(o):o;return[e.createVNode(w.InputNumber,e.mergeProps({modelValue:r,"onUpdate:modelValue":a=>{typeof o=="string"&&a!==null&&a!==void 0?t[n.field]=String(a):t[n.field]=a}},n.params),null)]}}},InputRangeRender:{editRender:{},slots:{default:({row:t,column:n})=>{const o=n.params?.fieldNames;let r;if(o){const a=t[o.start],l=t[o.end];r=[a,l]}else r=t[n.field];return[e.createVNode("span",null,[J.isArray(r)?r.join(" ~ "):r])]},edit:({row:t,column:n})=>{const o=n.params?.fieldNames,r=n.params?.inputType||"input",a=r==="number"?w.InputNumber:w.Input;if(o){const i=t[o.start],p=t[o.end],k=r==="number"&&typeof i=="string"&&i!==""?Number(i):i,g=r==="number"&&typeof p=="string"&&p!==""?Number(p):p;return[e.createVNode("div",{style:{display:"flex",alignItems:"center",gap:"8px"}},[e.createVNode(a,e.mergeProps({modelValue:k,"onUpdate:modelValue":d=>{r==="number"&&typeof i=="string"&&d!==null&&d!==void 0?t[o.start]=String(d):t[o.start]=d}},n.params),null),e.createVNode("span",null,[e.createTextVNode("~")]),e.createVNode(a,e.mergeProps({modelValue:g,"onUpdate:modelValue":d=>{r==="number"&&typeof p=="string"&&d!==null&&d!==void 0?t[o.end]=String(d):t[o.end]=d}},n.params),null)])]}const l=t[n.field],s=r==="number"&&typeof l=="string"&&l!==""?Number(l):l;return[e.createVNode(a,e.mergeProps({modelValue:s,"onUpdate:modelValue":i=>{r==="number"&&typeof l=="string"&&i!==null&&i!==void 0?t[n.field]=String(i):t[n.field]=i}},n.params),null)]}}},InputRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(w.Input,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},MonthPickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(w.MonthPicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},RangePickerRender:{editRender:{},slots:{default:({row:t,column:n})=>{const o=n.params?.fieldNames;let r;if(o){const a=t[o.start],l=t[o.end];r=[a,l]}else r=t[n.field];return[e.createVNode("span",null,[J.isArray(r)?r.join(" / "):r])]},edit:({row:t,column:n})=>{const o=n.params?.fieldNames;let r;if(o){const a=t[o.start],l=t[o.end];r=[a,l]}else r=t[n.field];return[e.createVNode(w.RangePicker,e.mergeProps({modelValue:r,"onUpdate:modelValue":a=>{o?J.isArray(a)&&a.length===2?(t[o.start]=a[0],t[o.end]=a[1]):(t[o.start]=void 0,t[o.end]=void 0):t[n.field]=a}},n.params),null)]}}},SelectRender:{editRender:{},slots:{default:({row:t,column:n})=>{const o=t[n.field],a=n.params?.options?.find(l=>l.value===o);return[e.createVNode("span",null,[a?.label??o])]},edit:({row:t,column:n})=>[e.createVNode(w.Select,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},SpanRender:{editRender:{},slots:{default:({row:t,column:n})=>{const o=t[n.field],a=n.params?.options?.find(l=>l.value===o);return[e.createVNode("span",null,[a?.label??o])]}}},SpanselectRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])]}},SwitchRender:{editRender:{},slots:{default:({row:t,column:n})=>{const{checkedValue:o,checkedText:r,uncheckedValue:a,uncheckedText:l}=n.params||{},s=t[n.field];return o!==void 0&&r!==void 0&&s===o?[e.createVNode("span",null,[r])]:a!==void 0&&l!==void 0&&s===a?[e.createVNode("span",null,[l])]:[e.createVNode("span",null,[s])]},edit:({row:t,column:n})=>[e.createVNode(w.Switch,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},TextareaRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>{const o=e.ref(!1),r=e.ref(t[n.field]||"");return[e.createVNode(w.Popover,{popupVisible:o.value,"onUpdate:popupVisible":a=>o.value=a,trigger:"click",position:"top"},{default:()=>[e.createVNode(w.Input,e.mergeProps({modelValue:r.value,"onUpdate:modelValue":a=>{r.value=a,t[n.field]=a},onFocus:()=>{o.value=!0}},n.params),null)],content:()=>[e.createVNode(w.Textarea,e.mergeProps({modelValue:r.value,"onUpdate:modelValue":a=>{r.value=a,t[n.field]=a},autoSize:{minRows:3,maxRows:6},placeholder:n.params?.placeholder||"请输入内容"},n.params),null)]})]}}},UploadRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]?JSON.stringify(t[n.field]):""])],edit:({row:t,column:n})=>[e.createVNode(Pe,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},WeekPickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(w.WeekPicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}},YearPickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(w.YearPicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":o=>{t[n.field]=o}},n.params),null)]}}},Symbol.toStringTag,{value:"Module"})),ko=Object.freeze(Object.defineProperty({__proto__:null,requiredValidator:({row:t,rule:n})=>{const o=t[n.field];if(o==null||o==="")return new Error(n.message)}},Symbol.toStringTag,{value:"Module"}));class Ao{gridRef;constructor(n){this.gridRef=n}get grid(){return this.gridRef.value?.getGrid?.()||this.gridRef.value}get $grid(){return this.grid}async addEvent(n={}){const o=this.grid;if(o){const{record:r={},index:a=-1}=n,{row:l}=await o.insertAt(r,a);await e.nextTick(),o.setEditRow(l)}}getSelection(){const n=this.grid;return n?n.getCheckboxRecords():[]}async deleteSelection(){const n=this.grid;if(n){const o=n.getCheckboxRecords();o.length>0&&await n.remove(o)}}clearSelection(){const n=this.grid;n&&n.clearCheckboxRow()}commitProxy(n,...o){const r=this.grid;if(r)return r.commitProxy(n,...o)}}function wo(t,n){let o=null,r=null,a=null,l=null,s=null,i=!1,p=!1;const k=h=>{if(!h)return window;let S=h.parentElement;for(;S;){const N=window.getComputedStyle(S);if(/(auto|scroll)/.test(N.overflow+N.overflowY+N.overflowX))return S;S=S.parentElement}return window},g=()=>{o&&o.classList.contains("is-sticky")&&(o.style.position="",o.style.top="",o.style.left="",o.style.zIndex="",o.style.width="",o.classList.remove("is-sticky"),r&&r.parentNode&&(r.parentNode.removeChild(r),r=null)),l&&(l.style.display="none")},d=()=>{p||l&&a&&(i=!0,l.scrollLeft=a.scrollLeft,requestAnimationFrame(()=>{i=!1}))},u=()=>{i||l&&a&&(p=!0,a.scrollLeft=l.scrollLeft,requestAnimationFrame(()=>{p=!1}))},m=()=>{!t.value||l||(l=document.createElement("div"),l.className="vxe-table--sticky-scrollbar",l.style.position="fixed",l.style.bottom="0",l.style.overflowX="auto",l.style.overflowY="hidden",l.style.zIndex="101",l.style.display="none",s=document.createElement("div"),l.appendChild(s),l.addEventListener("scroll",u),document.body.appendChild(l),a=t.value.$el.querySelector(".vxe-table--body-wrapper"),a&&a.addEventListener("scroll",d))},A=()=>{if(!t.value||!o)return;if(!n.sticky){g();return}const h=t.value.$el,S=h.getBoundingClientRect(),N=o.getBoundingClientRect(),E=k(h);let C={top:0,bottom:window.innerHeight};if(E!==window&&E instanceof HTMLElement&&(C=E.getBoundingClientRect()),C.bottom>0&&C.top<window.innerHeight&&S.top<C.top&&S.bottom>N.height){const B=Math.max(0,C.top);S.bottom-N.height>B?(!o.classList.contains("is-sticky")||o.style.top!==`${B}px`||o.style.left!==`${S.left}px`)&&(o.style.position="fixed",o.style.top=`${B}px`,o.style.left=`${S.left}px`,o.style.width=`${S.width}px`,o.style.zIndex="100",o.classList.add("is-sticky"),r||(r=document.createElement("div"),o.parentNode?.insertBefore(r,o)),r.style.height=`${N.height}px`):g()}else o.classList.contains("is-sticky")&&(o.style.position="",o.style.top="",o.style.left="",o.style.width="",o.classList.remove("is-sticky"),r&&r.parentNode&&(r.parentNode.removeChild(r),r=null));if((!l||!a)&&m(),l&&a&&s){const B=a.scrollWidth,y=a.clientWidth;if(B>y){const f=window.innerHeight;S.bottom>f&&S.top<f?(l.style.display="block",l.style.width=`${S.width}px`,l.style.left=`${S.left}px`,s.style.width=`${B}px`,Math.abs(l.scrollLeft-a.scrollLeft)>1&&(l.scrollLeft=a.scrollLeft)):l.style.display="none"}else l.style.display="none"}};e.watch(()=>n.sticky,()=>{A()}),e.onMounted(()=>{setTimeout(()=>{t.value&&(o=t.value.$el.querySelector(".vxe-table--header-wrapper"),o&&(window.addEventListener("scroll",A,!0),window.addEventListener("resize",A)),m())},100)}),e.onBeforeUnmount(()=>{window.removeEventListener("scroll",A,!0),window.removeEventListener("resize",A),r&&r.parentNode&&r.parentNode.removeChild(r),l&&l.parentNode&&l.parentNode.removeChild(l),a&&a.removeEventListener("scroll",d)})}const Bo={class:"my-filter-complex"},xo={key:0,class:"my-filter-input"},Eo={class:"my-fc-footer"},No=H(e.defineComponent({__name:"FilterComplex",props:{renderOpts:Object,renderParams:Object},setup(t){const n=t,o=e.ref(),r=e.computed(()=>{const{column:d}=n.renderParams||{};return d?d.field:""}),a=()=>{const{renderParams:d}=n;if(d){const{column:u}=d,m=u.filters[0];o.value=m}};e.watch(r,()=>{a()}),a();const l=e.computed(()=>n.renderParams?.column),s=e.computed(()=>{const d=l.value;return d&&J.hasIn(d.params,"optionlist")?"select":"input"}),i=()=>{const{renderParams:d}=n,u=o.value;if(d&&u){const{$table:m}=d,A=!!u.data;m.updateFilterOptionStatus(u,A)}},p=()=>{const{renderParams:d}=n,u={};if(d){const{$table:m}=d;m.getColumns().forEach(h=>{const{field:S,filters:N}=h;if(S&&N&&N.length){const E=N[0];E.data&&(u[S]=E.data)}})}return u},k=()=>{const{renderParams:d}=n;if(d){const{$table:u,$grid:m}=d,A=o.value;A&&u.updateFilterOptionStatus(A,!!A.data);const h=p();m.commitProxy("query",h),m.closeFilter()}},g=()=>{const{renderParams:d}=n,u=o.value;if(d&&u){const{$table:m,$grid:A}=d;u.data="",m.updateFilterOptionStatus(u,!1);const h=p();A.commitProxy("query",h),A.closeFilter()}};return(d,u)=>(e.openBlock(),e.createElementBlock("div",Bo,[o.value?(e.openBlock(),e.createElementBlock("div",xo,[s.value==="select"&&l.value?(e.openBlock(),e.createBlock(e.unref(K.VxeSelect),{key:0,modelValue:o.value.data,"onUpdate:modelValue":u[0]||(u[0]=m=>o.value.data=m),options:l.value.params.optionlist,clearable:"",onChange:i},null,8,["modelValue","options"])):(e.openBlock(),e.createBlock(e.unref(K.VxeInput),{key:1,modelValue:o.value.data,"onUpdate:modelValue":u[1]||(u[1]=m=>o.value.data=m),clearable:"",onKeyup:e.withKeys(k,["enter"]),onInput:i},null,8,["modelValue"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Eo,[e.createVNode(e.unref(K.VxeButton),{onClick:g},{default:e.withCtx(()=>[...u[2]||(u[2]=[e.createTextVNode("重置",-1)])]),_:1}),e.createVNode(e.unref(K.VxeButton),{status:"primary",onClick:k},{default:e.withCtx(()=>[...u[3]||(u[3]=[e.createTextVNode("确认",-1)])]),_:1})])]))}}),[["__scopeId","data-v-85c1d0e2"]]);oe.VxeUI.renderer.add("MyFilterComplex",{showTableFilterFooter:!1,renderTableFilter(t,n){return e.createVNode(No,{renderOpts:t,renderParams:n},null)}});const We=e.defineComponent({components:{VxePager:K.VxePager,VxeButton:K.VxeButton},__name:"use-query-grid",props:{size:{default:"small"}},setup(t,{expose:n}){const o=t,r=e.ref(),a=e.useAttrs();return wo(r,a),n({getGrid:()=>r.value}),(l,s)=>(e.openBlock(),e.createBlock(e.unref(oe.VxeGrid),e.mergeProps({ref_key:"gridRef",ref:r},l.$attrs,{size:o.size}),e.createSlots({_:2},[e.renderList(l.$slots,(i,p)=>({name:p,fn:e.withCtx(k=>[e.renderSlot(l.$slots,p,e.normalizeProps(e.guardReactiveProps(k||{})))])}))]),1040,["size"]))}});function Vo(t){const n=e.ref(),o=new Ao(n);return[e.defineComponent((a,{attrs:l,slots:s})=>{const{gridEvents:i,gridOptions:p}=t,k=Object.entries(i||{}).reduce((g,[d,u])=>{const m=`on${d.charAt(0).toUpperCase()+d.slice(1)}`;return g[m]=u,g},{});return()=>e.h(We,{ref:n,...a,...l,...p,...k},s)}),o]}function _e(t){const{props:n,emit:o,attrs:r}=t,a=e.computed(()=>n.contextMenuActions||n.actions||[]),l=e.computed(()=>{const h=r["field-names"],S=r.fieldNames;return{key:"key",title:"title",children:"children",...h||S||{}}}),s=h=>{const S=l.value.key||"key";return h[S]??h.key},i=()=>r.data||[],p=h=>{const S=s(h);return S==null?!1:i().some(N=>s(N)===S||N===h)},k=(h,S,N)=>typeof h=="boolean"?h:typeof h=="function"?h(S):N,g=h=>h?!n.enableRootContextMenu&&p(h)?[]:a.value.filter(S=>k(S.visible,h,!0)):[],d=(h,S)=>k(h.disabled,S,!1);return{canShowContextMenu:h=>g(h).length>0,getNodeActions:g,isActionDisabled:d,getNodeTitle:h=>{const S=l.value.title||"title",N=s(h);return String(h?.[S]??h?.title??N??"")},handleActionClick:async(h,S)=>{const N=g(S).find(E=>E.key===String(h));N&&(d(N,S)||(N.handler&&await N.handler(S),o("action",{key:N.key,action:N,node:S})))}}}const Po={class:"sunny-resource-tree"},Io={class:"sunny-resource-tree__title"},Ro=H(e.defineComponent({name:"SunnyResourceTree",inheritAttrs:!1,__name:"SunnyResourceTree",props:{contextMenuActions:{default:()=>[]},actions:{default:()=>[]},enableRootContextMenu:{type:Boolean,default:!1}},emits:["action"],setup(t,{expose:n,emit:o}){const r=t,a=o,l=e.useAttrs(),s=e.useSlots(),i=e.ref(),{canShowContextMenu:p,getNodeActions:k,isActionDisabled:g,getNodeTitle:d,handleActionClick:u}=_e({props:r,emit:a,attrs:l}),m=(S,N)=>{u(S,N)},A=e.computed(()=>Object.keys(s).filter(S=>S!=="title")),h=(S,...N)=>i.value?.[S]?.(...N);return n({getTree:()=>i.value,toggleCheck:(S,N)=>h("toggleCheck",S,N),scrollIntoView:S=>h("scrollIntoView",S),getSelectedNodes:()=>h("getSelectedNodes"),getCheckedNodes:S=>h("getCheckedNodes",S),getHalfCheckedNodes:()=>h("getHalfCheckedNodes"),getExpandedNodes:()=>h("getExpandedNodes"),checkAll:S=>h("checkAll",S),checkNode:(S,N,E)=>h("checkNode",S,N,E),selectAll:S=>h("selectAll",S),selectNode:(S,N)=>h("selectNode",S,N),expandAll:S=>h("expandAll",S),expandNode:(S,N)=>h("expandNode",S,N)}),(S,N)=>(e.openBlock(),e.createElementBlock("div",Po,[e.createVNode(e.unref(w.Tree),e.mergeProps({ref_key:"treeRef",ref:i},S.$attrs),e.createSlots({title:e.withCtx(E=>[e.unref(p)(E)?(e.openBlock(),e.createBlock(e.unref(w.Dropdown),{key:0,trigger:"contextMenu","popup-max-height":!1,onSelect:C=>m(C,E)},{content:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k)(E),C=>(e.openBlock(),e.createBlock(e.unref(w.Doption),{key:`${String(E?.key)}-${C.key}`,value:C.key,disabled:e.unref(g)(C,E)},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass({"sunny-resource-tree__danger":C.danger})},e.toDisplayString(C.label),3)]),_:2},1032,["value","disabled"]))),128))]),default:e.withCtx(()=>[e.createElementVNode("span",Io,[e.renderSlot(S.$slots,"title",e.normalizeProps(e.guardReactiveProps(E)),()=>[e.createTextVNode(e.toDisplayString(e.unref(d)(E)),1)],!0)])]),_:2},1032,["onSelect"])):e.renderSlot(S.$slots,"title",e.normalizeProps(e.mergeProps({key:1},E)),()=>[e.createTextVNode(e.toDisplayString(e.unref(d)(E)),1)],!0)]),_:2},[e.renderList(A.value,E=>({name:E,fn:e.withCtx(C=>[e.renderSlot(S.$slots,E,e.normalizeProps(e.guardReactiveProps(C||{})),void 0,!0)])}))]),1040)]))}}),[["__scopeId","data-v-f860649c"]]);function Je(t){if(!t||!Array.isArray(t))return{};const n={};return t.forEach(o=>{o.fieldName&&o.defaultValue!==void 0&&(n[o.fieldName]=o.defaultValue)}),n}function Mo(t,n){const o=e.ref(!1),r=e.ref({}),a=e.ref([]),l=e.ref({current:1,pageSize:200,total:0}),s=e.ref([]),i=e.computed(()=>({label:"label",value:"value",desc:"desc",...t.fieldNames})),p=e.computed(()=>t.fieldNames?.value||"id"),k=c=>J.get(c,p.value),g=()=>new Set((t.formSchema||[]).map(c=>c.fieldName).filter(Boolean)),d=()=>{const c=Je(t.formSchema);r.value={...c,...t.defaultModel}},u=()=>{const c=Je(t.formSchema),b=g(),x={};t.defaultModel&&Object.entries(t.defaultModel).forEach(([F,V])=>{b.has(F)&&(x[F]=V)}),r.value={...r.value,...c,...x}};e.watch(()=>t.visible,c=>{c&&(t.modelValue&&Array.isArray(t.modelValue)?a.value=J.cloneDeep(t.modelValue):a.value=[])},{immediate:!0});const m=async c=>{if(t.searchApi){c&&(r.value={...c}),o.value=!0;try{const b={pageNo:l.value.current,pageSize:l.value.pageSize,...r.value};let x;if(typeof t.searchApi=="function"&&(x=await t.searchApi(b)),x){const F=x.list||x.records||[],V=x.total||x.totalCount||0;s.value=F,l.value.total=V}}catch(b){console.error("Search failed:",b),w.Message.error("查询失败")}finally{o.value=!1}}},A=c=>{l.value.current=c,m()},h=c=>{l.value.pageSize=c,l.value.current=1,m()},S=(c,b)=>{const x=k(c),F=a.value.findIndex(V=>k(V)===x);b?F===-1&&(t.multiple?a.value.push(c):a.value=[c]):F>-1&&a.value.splice(F,1)};return{loading:o,searchParams:r,selectedRows:a,pagination:l,tableData:s,actualFieldNames:i,actualRowKey:p,initDefaultValues:d,resetFormValues:u,handleSearch:m,handlePageChange:A,handlePageSizeChange:h,handleCheckboxChange:c=>{const{row:b,checked:x}=c;S(b,x)},handleCheckboxAll:c=>{const{checked:b,records:x}=c;b?x.forEach(F=>S(F,!0)):s.value.forEach(F=>S(F,!1))},handleRadioChange:c=>{const{row:b}=c;a.value=[b]},removeRow:c=>{S(c,!1)},handleOk:()=>{n("update:modelValue",a.value),n("confirm",a.value),n("update:visible",!1)},handleCancel:()=>{a.value=[],n("update:modelValue",[]),n("cancel"),n("update:visible",!1)},toggleRowSelection:S,reset:()=>{s.value=[],a.value=[],l.value.current=1,l.value.total=0,n("update:modelValue",[])}}}const Fo={class:"flex flex-col h-full"},To={class:"mb-4 border-b border-gray-100 pb-4 shrink-0"},jo={class:"flex-1 overflow-hidden"},Lo={class:"w-[180px] border-l border-gray-200 bg-gray-50 flex flex-col ml-2 overflow-hidden shrink-0"},Oo={class:"font-bold px-2 py-2 text-gray-700 flex justify-between items-center text-xs border-b border-gray-200 shrink-0"},Do={class:"flex-1 min-h-0 overflow-y-auto p-2 custom-scrollbar"},zo={class:"text-xs font-medium text-gray-800 truncate leading-none mb-1"},$o={class:"text-[10px] text-gray-500 truncate leading-none"},Qo=["onClick"],Uo={key:1,class:"h-full flex items-center justify-center text-gray-400 text-xs"},qo={class:"flex justify-between items-center w-full"},Wo={class:"space-x-2"},Ye=H(e.defineComponent({name:"SunnySearchModal",inheritAttrs:!1,__name:"SunnySearchModal",props:{visible:{type:Boolean},formSchema:{},tableColumns:{},searchApi:{},modelValue:{},fieldNames:{default:()=>({label:"label",value:"value",desc:"desc"})},commonConfig:{default:()=>({colProps:{xs:24,sm:12,md:6,lg:6,xl:6,xxl:6}})},helpMessage:{default:"支持跨页多选,翻页保留选中状态;双击表格行可快速确认。"},title:{default:"数据查询"},multiple:{type:Boolean,default:!0},rowKey:{default:"id"},width:{default:"800px"},contentHeight:{default:300},resetOnOpen:{type:Boolean,default:!0},clearOnSearch:{type:Boolean,default:!1},defaultModel:{}},emits:["update:visible","update:modelValue","confirm","cancel"],setup(t,{expose:n,emit:o}){const r=e.useSlots(),a=t,l=o,s=e.computed({get:()=>a.visible,set:O=>l("update:visible",O)}),i=e.ref(),p=e.ref(null),{loading:k,searchParams:g,selectedRows:d,pagination:u,tableData:m,actualFieldNames:A,actualRowKey:h,initDefaultValues:S,resetFormValues:N,handleSearch:E,handlePageChange:C,handlePageSizeChange:I,handleCheckboxChange:B,handleCheckboxAll:y,handleRadioChange:f,removeRow:c,handleOk:b,handleCancel:x,toggleRowSelection:F,reset:V}=Mo(a,l);n({reset:V});const P=async()=>{u.value.current=1,N(),await e.nextTick(),await M()},M=async()=>{if(!p.value)return E(),!0;try{const{valid:O}=await p.value.validate();return O?(E(),!0):!1}catch(O){return console.error("Form validation failed:",O),!1}},R=async O=>{u.value.current=1,a.clearOnSearch&&(d.value=[]),E(O)},z=e.computed(()=>({border:!0,stripe:!0,showOverflow:!0,height:a.contentHeight,align:"center",autoResize:!0,columnConfig:{resizable:!0},rowConfig:{isCurrent:!0,isHover:!0,keyField:h.value},checkboxConfig:{trigger:"row",highlight:!0,reserve:!1},radioConfig:{trigger:"row",highlight:!0,reserve:!1}}));e.watch([()=>m.value,()=>d.value],async()=>{await e.nextTick();const O=i.value?.getGrid?.()||i.value;if(O&&m.value.length>0){O.clearCheckboxRow();const $=m.value.filter(L=>d.value.some(Z=>Z[h.value]===L[h.value]));$.length>0&&O.setCheckboxRow($,!0)}},{deep:!0});const U=({row:O})=>{if(!a.multiple)d.value=[O],b();else{const $=d.value.some(L=>L[h.value]===O[h.value]);F(O,!$)}};return e.watch(()=>a.visible,O=>{O&&(S(),a.resetOnOpen&&(m.value=[],u.value.total=0,e.nextTick(()=>{M()})))},{immediate:!0}),(O,$)=>(e.openBlock(),e.createBlock(v,{modelValue:s.value,"onUpdate:modelValue":$[3]||($[3]=L=>s.value=L),title:a.title,width:a.width,"unmount-on-close":"","title-align":"start",fullscreen:!1,"help-message":a.helpMessage,onCancel:e.unref(x),onClose:e.unref(x),onOk:e.unref(b)},{footer:e.withCtx(()=>[e.createElementVNode("div",qo,[e.createVNode(e.unref(w.Pagination),{current:e.unref(u).current,"onUpdate:current":$[2]||($[2]=L=>e.unref(u).current=L),"page-size":e.unref(u).pageSize,total:e.unref(u).total,"show-total":"","show-page-size":"","page-size-options":[20,50,100,200],size:"small",onChange:e.unref(C),onPageSizeChange:e.unref(I)},null,8,["current","page-size","total","onChange","onPageSizeChange"]),e.createElementVNode("div",Wo,[e.createVNode(e.unref(w.Button),{onClick:e.unref(x)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(D.$t)("common.cancel")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(w.Button),{type:"primary",onClick:e.unref(b)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(D.$t)("common.confirm")),1)]),_:1},8,["onClick"])])])]),default:e.withCtx(()=>[e.createElementVNode("div",Fo,[e.createElementVNode("div",To,[e.createVNode(qe,{ref_key:"formRef",ref:p,values:e.unref(g),"onUpdate:values":$[0]||($[0]=L=>e.isRef(g)?g.value=L:null),schema:a.formSchema,"common-config":a.commonConfig,"show-default-actions":"","reset-button-options":{show:!0},onSubmit:R,onReset:P,layout:"vertical"},e.createSlots({_:2},[e.renderList(e.unref(r),(L,Z)=>({name:Z,fn:e.withCtx(Nr=>[e.renderSlot(O.$slots,Z,e.normalizeProps(e.guardReactiveProps(Nr)),void 0,!0)])}))]),1032,["values","schema","common-config"])]),e.createElementVNode("div",{class:"flex min-h-0 overflow-hidden box-border border border-gray-200 rounded",style:e.normalizeStyle({height:typeof a.contentHeight=="number"?a.contentHeight+"px":a.contentHeight})},[e.createElementVNode("div",jo,[e.createVNode(We,e.mergeProps({ref_key:"gridRef",ref:i,columns:a.tableColumns,data:e.unref(m),loading:e.unref(k)},z.value,{onCheckboxChange:e.unref(B),onCheckboxAll:e.unref(y),onRadioChange:e.unref(f),onCellDblclick:U}),null,16,["columns","data","loading","onCheckboxChange","onCheckboxAll","onRadioChange"])]),e.createElementVNode("div",Lo,[e.createElementVNode("div",Oo,[e.createElementVNode("span",null,e.toDisplayString(e.unref(D.$t)("common.selected"))+" ("+e.toDisplayString(e.unref(d).length)+")",1),e.unref(d).length?(e.openBlock(),e.createElementBlock("span",{key:0,class:"text-xs text-blue-500 cursor-pointer",onClick:$[1]||($[1]=L=>d.value=[])},e.toDisplayString(e.unref(D.$t)("common.clear")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Do,[e.unref(d).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(d),L=>(e.openBlock(),e.createElementBlock("div",{key:L[e.unref(h)],class:"relative group px-2 py-1 mb-1 bg-white border border-gray-200 rounded hover:shadow-sm transition-all h-[42px] flex flex-col justify-center"},[e.createVNode(e.unref(w.Tooltip),{content:`${L[e.unref(A).desc]}`},{default:e.withCtx(()=>[e.createElementVNode("div",zo,e.toDisplayString(L[e.unref(A).value]||"-"),1),e.createElementVNode("div",$o,e.toDisplayString(L[e.unref(A).label]||" "),1)]),_:2},1032,["content"]),e.createElementVNode("div",{class:"absolute top-0.5 right-0.5 opacity-0 group-hover:opacity-100 cursor-pointer text-gray-400 hover:text-red-500 transition-opacity p-0.5 bg-white rounded-full shadow-sm",onClick:Z=>e.unref(c)(L)},[e.createVNode(e.unref(Ae),{size:10})],8,Qo)]))),128)):(e.openBlock(),e.createElementBlock("div",Uo,e.toDisplayString(e.unref(D.$t)("common.noData")),1))])])],4)])]),_:3},8,["modelValue","title","width","help-message","onCancel","onClose","onOk"]))}}),[["__scopeId","data-v-8a38d826"]]),Ge={};async function Ke(t){const n=Ge[t];return n?await n():(console.warn(`[SunnyBusinessSearch] Config for type "${t}" not found.`),null)}function _o(t,n){Ge[t]=n}function Jo(t,n){const o=e.ref(!1),r=e.ref(!1),a=e.ref({}),l=e.computed({get:()=>t.modelValue||[],set:u=>{n("update:modelValue",u),n("change",u)}}),s=()=>Q.businessSearchAdapter,i=u=>async m=>{if(!u?.search)return console.warn("[SunnyBusinessSearch] No search adapter configured."),{records:[],total:0};try{return await u.search({...m,cNum:t.cNum})}catch(A){throw console.error("[SunnyBusinessSearch] Search failed:",A),A}},p=async()=>{if(!t.cNum)return;const u=s();if(!u?.loadConfig){console.warn("[SunnyBusinessSearch] No loadConfig adapter configured. Please call setupBusinessForm() in your app entry.");return}r.value=!0;try{const m=await u.loadConfig(t.cNum);m.searchApi=i(u),a.value=m}catch(m){console.error("[SunnyBusinessSearch] Failed to load dynamic config:",m)}finally{r.value=!1}},k=async()=>{if(t.type){r.value=!0;try{const u=await Ke(t.type);u&&(a.value=u)}catch(u){console.error("[SunnyBusinessSearch] Failed to load static config:",u)}finally{r.value=!1}}},g=async()=>{o.value=!0,t.cNum?a.value.title||await p():t.type&&(a.value.title||await k())},d=u=>{l.value=u,o.value=!1};return e.watch(()=>[t.cNum,t.type],()=>{a.value={}}),{visible:o,loading:r,currentConfig:a,selectedValues:l,handleOpen:g,handleConfirm:d}}const Yo={class:"sunny-business-search w-full"},Se=e.defineComponent({name:"SunnyBusinessSearch",inheritAttrs:!1,__name:"SunnyBusinessSearch",props:{modelValue:{default:()=>[]},type:{},cNum:{},placeholder:{default:"请选择"},multiple:{type:Boolean,default:void 0},cSelectionMode:{},maxTagCount:{},modalProps:{default:()=>({})},disabled:{type:Boolean,default:!1},fieldNames:{},defaultModel:{}},emits:["update:modelValue","change"],setup(t,{emit:n}){const o=t,r=n,{visible:a,currentConfig:l,selectedValues:s,handleOpen:i,handleConfirm:p}=Jo(o,r),k=e.computed(()=>o.fieldNames||o.modalProps?.fieldNames||l.value.fieldNames||{label:"label",value:"value"}),g=e.computed(()=>{let d=o.modalProps?.multiple;d===void 0&&(d=o.multiple),d===void 0&&o.cSelectionMode&&(d=o.cSelectionMode!=="single"),d=d??l.value.multiple??!0;let m=[...o.modalProps.tableColumns||l.value.tableColumns||[]];return!m.some(h=>h.type==="checkbox"||h.type==="radio")&&m.length>0&&(d?m.unshift({type:"checkbox",width:50,fixed:"left",align:"center"}):m.unshift({type:"radio",width:50,fixed:"left",align:"center"})),{...l.value,multiple:d,fieldNames:k.value,defaultModel:o.defaultModel||l.value.defaultModel,...o.modalProps,tableColumns:m}});return(d,u)=>(e.openBlock(),e.createElementBlock("div",Yo,[e.createVNode(e.unref(Re),e.mergeProps(d.$attrs,{"model-value":e.unref(s),placeholder:t.placeholder,disabled:t.disabled,"max-tag-count":t.maxTagCount,"field-names":k.value,"onUpdate:modelValue":u[0]||(u[0]=m=>s.value=m),onSearch:e.unref(i)}),e.createSlots({_:2},[e.renderList(d.$slots,(m,A)=>({name:A,fn:e.withCtx(h=>[e.renderSlot(d.$slots,A,e.normalizeProps(e.guardReactiveProps(h||{})))])}))]),1040,["model-value","placeholder","disabled","max-tag-count","field-names","onSearch"]),e.unref(l).title||e.unref(a)?(e.openBlock(),e.createBlock(e.unref(Ye),e.mergeProps({key:0,visible:e.unref(a),"onUpdate:visible":u[1]||(u[1]=m=>e.isRef(a)?a.value=m:null),"model-value":e.unref(s)},g.value,{onConfirm:e.unref(p)}),null,16,["visible","model-value","onConfirm"])):e.createCommentVNode("",!0)]))}}),Go=Object.freeze(Object.defineProperty({__proto__:null,default:Se},Symbol.toStringTag,{value:"Module"})),He={findAllByResourceid:async()=>({data:[]}),findSearchPlanColsByPlanId:async()=>({data:{}}),insert:async()=>({}),update:async()=>({}),del:async()=>({}),findDefSearchPlan:async()=>({data:{}})};function Xe(t,n,o,r,a=He){const l=e.ref(!1),s=e.ref(""),i=e.ref(!1),p=async()=>{if(t.searchPlanList.length>0&&!s.value.trim()){i.value=!0;return}i.value=!1;let E=o?.value||t.model;if(r)try{const B=await r.getValues();B&&(E=B)}catch{}const C={...E};if(Object.keys(C).forEach(B=>{const y=C[B];Array.isArray(y)&&(t.formConfig?.some(c=>c.fieldName===B&&c.component&&(c.component.name==="SunnyBusinessSearch"||c.component==="SunnyBusinessSearch"))?C[B]=JSON.stringify(y):C[B]=y.map(c=>{let b=c;return typeof c=="object"&&c!==null&&(b=c.value!==void 0?c.value:c.ID!==void 0?c.ID:c.id!==void 0?c.id:c),typeof b=="string"?b:String(b)}))}),!Object.values(C).some(B=>Array.isArray(B)?B.length>0:B!==""&&B!==void 0&&B!==null)){w.Message.error("请输入查询条件");return}try{let B=s.value.trim();t.searchPlanList.length===0&&(B="默认方案");const y=await a.insert({assSearchplan:{cSearchplanname:B,...t.nResourceid&&{nResourceid:t.nResourceid}},colMap:C});if(y.message&&w.Message.success(y.message),t.resourceId){const f=await u(t.resourceId);n("update:searchPlanList",f);const c=f.find(b=>b.CSEARCHPLANNAME===B);c&&await d(c)}n("add",B,{...C}),s.value=""}catch(B){n("error",B)}},k=async()=>{if(!t.currentSearchPlan){i.value=!0;return}i.value=!1;let E=o?.value||t.model;if(r)try{const B=await r.getValues();B&&(E=B)}catch{}const C={...E};if(Object.keys(C).forEach(B=>{const y=C[B];Array.isArray(y)&&(t.formConfig?.some(c=>c.fieldName===B&&c.component&&(c.component.name==="SunnyBusinessSearch"||c.component==="SunnyBusinessSearch"))?C[B]=JSON.stringify(y):C[B]=y.map(c=>{let b=c;return typeof c=="object"&&c!==null&&(b=c.value!==void 0?c.value:c.ID!==void 0?c.ID:c.id!==void 0?c.id:c),typeof b=="string"?b:String(b)}))}),!Object.values(C).some(B=>Array.isArray(B)?B.length>0:B!==""&&B!==void 0&&B!==null)){w.Message.error("请输入查询条件");return}try{const B=await a.update({assSearchplan:{id:t.currentSearchPlan.ID,...t.nResourceid&&{nResourceid:t.nResourceid},...s.value.trim()&&{cSearchplanname:s.value.trim()}},colMap:C});if(B.message&&w.Message.success(B.message),t.resourceId){const y=await u(t.resourceId);n("update:searchPlanList",y);const f=y.find(c=>c.ID===t.currentSearchPlan?.ID);f&&await d(f)}n("update",t.currentSearchPlan?.ID,s.value.trim()||t.currentSearchPlan?.CSEARCHPLANNAME,{...C}),s.value=""}catch(B){n("error",B)}},g=async E=>{try{const C=await a.del({id:E.ID});if(n("delete",E.ID),t.currentSearchPlan&&t.currentSearchPlan.ID===E.ID&&n("update:currentSearchPlan",void 0),C.message&&w.Message.success(C.message),t.resourceId){const I=await u(t.resourceId);n("update:searchPlanList",I)}}catch(C){n("error",C)}},d=async E=>{n("update:currentSearchPlan",E);try{const C={...t.nResourceid&&{nResourceid:t.nResourceid},nPlanId:E.ID};let B=(await a.findSearchPlanColsByPlanId(C)).result||{};if(Object.keys(B).forEach(y=>{let f=B[y];try{if(t.formConfig?.some(b=>b.fieldName===y&&b.component&&(b.component.name==="SunnyBusinessSearch"||b.component==="SunnyBusinessSearch"))){if(typeof f=="string")try{f=JSON.parse(f)}catch{}if(Array.isArray(f)&&f.every(x=>typeof x=="string")&&f.length>0)try{const x=f.join(""),F=[];let V="",P=0;for(let M=0;M<x.length;M++){const R=x[M];if(V+=R,R==="{")P++;else if(R==="}"&&(P--,P===0)){try{F.push(JSON.parse(V))}catch{}V=""}}F.length>0?f=F:f=JSON.parse(x)}catch{try{const x=f.join(""),F=[];x.split("}{").map((P,M)=>M===0?P+"}":M===x.split("}{").length-1?"{"+P:"{"+P+"}").forEach(P=>{if(P.trim()){const M=P.match(/"([^"]+)"\s*:\s*("[^"]*"|\d+)/g)||[],R={};M.forEach(z=>{const[U,O]=z.split(/\s*:\s*/),$=U.replace(/"/g,"");let L=O;L.startsWith('"')&&L.endsWith('"')?L=L.substring(1,L.length-1):isNaN(Number(L))||(L=Number(L)),R[$]=L}),Object.keys(R).length>0&&F.push(R)}}),F.length>0&&(f=F)}catch{}}}else{if(typeof f=="string"&&(f.startsWith("[")||f.includes(",")))try{f=JSON.parse(f)}catch{f.includes(",")&&(f=f.split(",").map(b=>b.trim()))}Array.isArray(f)&&(f=f.map(b=>{const x=typeof b=="string"?b.trim():b;return String(x)}))}B[y]=f}catch{}}),t.formConfig?.forEach(y=>{const f=y.fieldName;let c=B[f];if(c!=null&&y.component&&(y.component.name==="SunnyBusinessSearch"||y.component==="SunnyBusinessSearch")){if(typeof c=="string")try{c=JSON.parse(c)}catch{}if(Array.isArray(c)){if(c.every(x=>typeof x=="string")&&c.length>0)try{const x=c.join("");c=JSON.parse(x)}catch{}Array.isArray(c)?B[f]=c.map(x=>typeof x=="object"&&x!==null?x:{value:x}):typeof c=="object"&&c!==null?B[f]=[c]:B[f]=c}}}),o&&(o.value={...B}),r)try{await r.setValues(B)}catch{}n("select",E)}catch(C){n("error",C)}},u=async E=>{try{const C={...t.nResourceid&&{nResourceid:t.nResourceid}};return(await a.findAllByResourceid(C)).result?.searchplanList||[]}catch(C){return n("error",C),[]}};return{visible:l,inputValue:s,showNameError:i,handleAdd:p,handleUpdate:k,handleDelete:g,handleSelect:d,handleReset:async()=>{if(r)try{await r.resetForm()}catch{}if(o){const E={...o.value};Object.keys(E).forEach(C=>{E[C]=""}),o.value=E}},handleSearch:async()=>{let E=o?.value||t.model;if(r)try{const C=await r.getValues();C&&(E=C)}catch{}n("search",{...E}),l.value=!1},handleClose:()=>{l.value=!1,s.value="",i.value=!1},handleOpen:async()=>{if(l.value=!0,s.value="",i.value=!1,o){const E={...o.value};Object.keys(E).forEach(C=>{E[C]=""}),o.value=E}if(r)try{await r.resetForm()}catch{}if(t.resourceId)try{const E=await u(t.resourceId);if(n("update:searchPlanList",E),E.length>0){n("update:currentSearchPlan",E[0]);const C={...t.nResourceid&&{nResourceid:t.nResourceid},nPlanId:E[0].ID};let B=(await a.findSearchPlanColsByPlanId(C)).result||{};if(Object.keys(B).forEach(y=>{let f=B[y];try{if(t.formConfig?.some(b=>b.fieldName===y&&b.component&&(b.component.name==="SunnyBusinessSearch"||b.component==="SunnyBusinessSearch"))){if(typeof f=="string")try{f=JSON.parse(f)}catch{}if(Array.isArray(f)&&f.every(x=>typeof x=="string")&&f.length>0)try{const x=f.join("");f=JSON.parse(x)}catch{}}else{if(typeof f=="string"&&(f.startsWith("[")||f.includes(",")))try{f=JSON.parse(f)}catch{f.includes(",")&&(f=f.split(",").map(b=>b.trim()))}Array.isArray(f)&&(f=f.map(b=>{const x=typeof b=="string"?b.trim():b;return String(x)}))}B[y]=f}catch{}}),t.formConfig?.forEach(y=>{const f=y.fieldName;let c=B[f];if(c!=null&&y.component&&(y.component.name==="SunnyBusinessSearch"||y.component==="SunnyBusinessSearch")){if(typeof c=="string")try{c=JSON.parse(c)}catch{}if(Array.isArray(c)){if(c.every(x=>typeof x=="string")&&c.length>0)try{const x=c.join(""),F=[];let V="",P=0;for(let M=0;M<x.length;M++){const R=x[M];if(V+=R,R==="{")P++;else if(R==="}"&&(P--,P===0)){try{F.push(JSON.parse(V))}catch{}V=""}}F.length>0?c=F:c=JSON.parse(x)}catch{try{const x=c.join(""),F=[];x.split("}{").map((P,M)=>M===0?P+"}":M===x.split("}{").length-1?"{"+P:"{"+P+"}").forEach(P=>{if(P.trim()){const M=P.match(/"([^"]+)"\s*:\s*("[^"]*"|\d+)/g)||[],R={};M.forEach(z=>{const[U,O]=z.split(/\s*:\s*/),$=U.replace(/"/g,"");let L=O;L.startsWith('"')&&L.endsWith('"')?L=L.substring(1,L.length-1):isNaN(Number(L))||(L=Number(L)),R[$]=L}),Object.keys(R).length>0&&F.push(R)}}),F.length>0&&(c=F)}catch{}}Array.isArray(c)?B[f]=c.map(x=>typeof x=="object"&&x!==null?x:{value:x}):typeof c=="object"&&c!==null?B[f]=[c]:B[f]=c}}}),o&&(o.value={...B}),r)try{await r.setValues(B)}catch{}n("select",E[0])}}catch{}},loadSearchPlans:u,loadDefaultSearchPlan:async()=>{try{const E={...t.nResourceid&&{nResourceid:t.nResourceid}},I=(await a.findDefSearchPlan(E)).result||[];if(I.length>0){const B={};if(I.forEach(y=>{y.C_COLNAME&&y.C_COLVALUE!==void 0&&(B[y.C_COLNAME]=y.C_COLVALUE)}),Object.keys(B).forEach(y=>{let f=B[y];try{if(t.formConfig?.some(b=>b.fieldName===y&&b.component&&(b.component.name==="SunnyBusinessSearch"||b.component==="SunnyBusinessSearch"))){if(typeof f=="string")try{f=JSON.parse(f)}catch{}if(Array.isArray(f)&&f.every(x=>typeof x=="string")&&f.length>0)try{const x=f.join("");f=JSON.parse(x)}catch{}}else{if(typeof f=="string"&&(f.startsWith("[")||f.includes(",")))try{f=JSON.parse(f)}catch{f.includes(",")&&(f=f.split(",").map(b=>b.trim()))}Array.isArray(f)&&(f=f.map(b=>{const x=typeof b=="string"?b.trim():b;return String(x)}))}B[y]=f}catch{}}),t.formConfig?.forEach(y=>{const f=y.fieldName;let c=B[f];if(c!=null&&y.component&&(y.component.name==="SunnyBusinessSearch"||y.component==="SunnyBusinessSearch")){if(typeof c=="string")try{c=JSON.parse(c)}catch{}if(Array.isArray(c)){if(c.every(x=>typeof x=="string")&&c.length>0)try{const x=c.join(""),F=[];let V="",P=0;for(let M=0;M<x.length;M++){const R=x[M];if(V+=R,R==="{")P++;else if(R==="}"&&(P--,P===0)){try{F.push(JSON.parse(V))}catch{}V=""}}F.length>0?c=F:c=JSON.parse(x)}catch{try{const x=c.join(""),F=[];x.split("}{").map((P,M)=>M===0?P+"}":M===x.split("}{").length-1?"{"+P:"{"+P+"}").forEach(P=>{if(P.trim()){const M=P.match(/"([^"]+)"\s*:\s*("[^"]*"|\d+)/g)||[],R={};M.forEach(z=>{const[U,O]=z.split(/\s*:\s*/),$=U.replace(/"/g,"");let L=O;L.startsWith('"')&&L.endsWith('"')?L=L.substring(1,L.length-1):isNaN(Number(L))||(L=Number(L)),R[$]=L}),Object.keys(R).length>0&&F.push(R)}}),F.length>0&&(c=F)}catch{}}Array.isArray(c)?B[f]=c.map(x=>typeof x=="object"&&x!==null?x:{value:x}):typeof c=="object"&&c!==null?B[f]=[c]:B[f]=c}}}),o&&(o.value={...B}),r)try{await r.setValues(B)}catch{}return n("default-plan-loaded",B),B}return n("default-plan-loaded",{}),{}}catch(E){return n("error",E),n("default-plan-loaded",{}),{}}}}}const Ko={class:"inline-block"},Ho=["disabled"],Xo={class:"p-5 relative"},Zo={key:0,class:"absolute inset-0 bg-white/80 flex flex-col items-center justify-center z-10 rounded"},vo={class:"text-sm text-[var(--color-text-2)]"},er={class:"w-2/3 min-w-0 pr-6 border-r border-[#D8D8D8]"},tr={class:"w-1/3 pl-6"},nr={class:"text-base font-semibold mb-4 text-[var(--color-text-1)]"},or={class:"mb-5"},rr={class:"mb-3"},ar={class:"block text-sm text-[var(--color-text-2)] mb-1"},lr=["placeholder","disabled"],sr={key:0,class:"text-xs text-red-500 mt-1"},ir={class:"flex gap-2 mt-3"},cr=["disabled"],dr=["disabled"],fr={class:"text-base font-semibold mb-4 text-[var(--color-text-1)]"},ur={class:"max-h-44 overflow-y-auto border border-[var(--color-border-2)] rounded p-2"},mr=["onClick"],pr=["onClick","disabled"],hr={key:0,class:"text-center py-8 text-sm text-[var(--color-text-3)]"},gr={class:"flex justify-end gap-3 pt-5 border-t border-[var(--color-border-2)]"},yr=["disabled"],Sr=["disabled"],Ze=e.defineComponent({name:"SunnySearchPlan",inheritAttrs:!1,__name:"SunnySearchPlan",props:{formConfig:{default:()=>[]},model:{default:()=>({})},modelValue:{default:()=>({})},searchPlanList:{default:()=>[]},currentSearchPlan:{},resourceId:{},nResourceid:{},disabled:{type:Boolean,default:!1},modalProps:{default:()=>({})},formProps:{default:()=>({})},title:{default:()=>D.$t("common.searchPlan.title")},width:{default:900},loading:{type:Boolean,default:!1},api:{default:()=>He}},emits:["add","update","delete","select","reset","search","error","default-plan-loaded","update:model","update:modelValue","update:currentSearchPlan","update:searchPlanList"],setup(t,{emit:n}){const o=t,r=n,[,a]=Ue({schema:o.formConfig,model:o.modelValue||o.model}),l=e.ref({...o.modelValue||o.model}),{visible:s,inputValue:i,showNameError:p,handleAdd:k,handleUpdate:g,handleDelete:d,handleSelect:u,handleReset:m,handleSearch:A,handleClose:h,handleOpen:S,loadSearchPlans:N,loadDefaultSearchPlan:E}=Xe(o,r,l,a,o.api);e.onMounted(async()=>{if(o.resourceId)try{const P=await N(o.resourceId);r("update:searchPlanList",P),await E()}catch(P){console.error("Failed to initialize search plan:",P)}else try{await E()}catch(P){console.error("Failed to load default search plan:",P)}});const C=async()=>{await S()},I=()=>{console.log("SunnyUseForm mounted"),a&&(o.modelValue||o.model)&&a.setValues(o.modelValue||o.model).catch(P=>{console.error("setValues error:",P)})};e.watch(()=>[o.model,o.modelValue],([P,M])=>{const R=M||P;R&&(l.value={...R},a&&a.setValues(R).catch(z=>{console.error("setValues error:",z)}))},{deep:!0}),e.watch(()=>l.value,P=>{r("update:model",P),r("update:modelValue",P)},{deep:!0});const B=e.computed(()=>({...o.modalProps})),y=e.computed(()=>o.formConfig.map(P=>({...P,labelWidth:80,colProps:{...P.colProps,span:8}}))),f=e.computed(()=>o.searchPlanList),c=e.computed(()=>o.currentSearchPlan),b=e.computed(()=>o.disabled),x=e.computed(()=>o.formProps),F=e.computed(()=>o.title),V=e.computed(()=>o.width);return(P,M)=>(e.openBlock(),e.createElementBlock("div",Ko,[e.renderSlot(P.$slots,"trigger",{open:C,disabled:b.value},()=>[e.createElementVNode("button",{class:"px-3 py-1.5 border border-[var(--color-border-2)] rounded bg-white text-base transition-all hover:border-[rgb(var(--primary-6))] hover:text-[rgb(var(--primary-6))] disabled:cursor-not-allowed disabled:opacity-60",disabled:b.value,onClick:C},e.toDisplayString(e.unref(D.$t)("common.searchPlan.title")),9,Ho)]),e.createVNode(e.unref(v),e.mergeProps({visible:e.unref(s),"onUpdate:visible":M[5]||(M[5]=R=>e.isRef(s)?s.value=R:null),title:F.value,width:V.value,top:"50px","close-on-click-modal":!1},B.value,{onCancel:e.unref(h),onClose:e.unref(h)}),{footer:e.withCtx(()=>[e.createElementVNode("div",gr,[e.createElementVNode("button",{class:"px-3 py-1.5 border border-[var(--color-border-2)] rounded bg-white text-sm transition-colors hover:border-[rgb(var(--primary-6))] hover:text-[rgb(var(--primary-6))] disabled:cursor-not-allowed disabled:opacity-60",onClick:M[3]||(M[3]=(...R)=>e.unref(m)&&e.unref(m)(...R)),disabled:o.loading},e.toDisplayString(e.unref(D.$t)("common.searchPlan.reset")),9,yr),e.createElementVNode("button",{class:"px-3 py-1.5 bg-[rgb(var(--primary-6))] border border-[rgb(var(--primary-6))] text-white text-sm rounded hover:bg-[rgb(var(--primary-7))] transition-colors disabled:cursor-not-allowed disabled:opacity-60",onClick:M[4]||(M[4]=(...R)=>e.unref(A)&&e.unref(A)(...R)),disabled:o.loading},e.toDisplayString(e.unref(D.$t)("common.searchPlan.search")),9,Sr)])]),default:e.withCtx(()=>[e.createElementVNode("div",Xo,[o.loading?(e.openBlock(),e.createElementBlock("div",Zo,[M[6]||(M[6]=e.createElementVNode("div",{class:"w-7 h-7 border-3 border-[var(--color-border-2)] border-t-[rgb(var(--primary-6))] rounded-full animate-spin mb-2.5"},null,-1)),e.createElementVNode("div",vo,e.toDisplayString(e.unref(D.$t)("common.searchPlan.loading")),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass([{"opacity-60":o.loading},"flex gap-5"])},[e.createElementVNode("div",er,[e.createVNode(e.unref(Qe),e.mergeProps({"form-api":e.unref(a),schema:y.value,"show-default-actions":!1,"show-message":!1,layout:"vertical"},x.value,{onMounted:I}),null,16,["form-api","schema"])]),e.createElementVNode("div",tr,[e.createElementVNode("h3",nr,e.toDisplayString(e.unref(D.$t)("common.searchPlan.newPlan")),1),e.createElementVNode("div",or,[e.createElementVNode("div",rr,[e.createElementVNode("label",ar,e.toDisplayString(e.unref(D.$t)("common.searchPlan.planName")),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":M[0]||(M[0]=R=>e.isRef(i)?i.value=R:null),type:"text",placeholder:e.unref(D.$t)("common.searchPlan.planNamePlaceholder"),class:"w-full px-2 py-1.5 border border-[var(--color-border-2)] rounded text-xs focus:outline-none focus:border-[rgb(var(--primary-6))] focus:ring-2 focus:ring-[rgb(var(--primary-1))]",disabled:o.loading},null,8,lr),[[e.vModelText,e.unref(i)]]),!e.unref(i).trim()&&e.unref(p)?(e.openBlock(),e.createElementBlock("div",sr,e.toDisplayString(e.unref(D.$t)("common.searchPlan.planNameRequired")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",ir,[e.createElementVNode("button",{class:"px-3 py-1 border border-[rgb(var(--primary-6))] text-[rgb(var(--primary-6))] text-xs rounded hover:bg-[rgb(var(--primary-6))] hover:text-white transition-colors disabled:cursor-not-allowed disabled:opacity-60",onClick:M[1]||(M[1]=(...R)=>e.unref(k)&&e.unref(k)(...R)),disabled:o.loading},e.toDisplayString(e.unref(D.$t)("common.searchPlan.add")),9,cr),e.createElementVNode("button",{class:"px-3 py-1 border border-[#ff4949] text-[#ff4949] text-xs rounded hover:bg-[#ff4949] hover:text-white transition-colors disabled:cursor-not-allowed disabled:opacity-60",disabled:!c.value||o.loading,onClick:M[2]||(M[2]=(...R)=>e.unref(g)&&e.unref(g)(...R))},e.toDisplayString(e.unref(D.$t)("common.searchPlan.update")),9,dr)])]),M[7]||(M[7]=e.createElementVNode("div",{class:"h-px bg-[var(--color-border-2)] my-5"},null,-1)),e.createElementVNode("h3",fr,e.toDisplayString(e.unref(D.$t)("common.searchPlan.savedPlans")),1),e.createElementVNode("div",ur,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,(R,z)=>(e.openBlock(),e.createElementBlock("div",{key:R.ID,class:e.normalizeClass(["flex items-center p-2 mb-1 rounded cursor-pointer transition-all hover:bg-[var(--color-fill-1)] border border-transparent",{"bg-[rgb(var(--primary-1))] border-[rgb(var(--primary-6))]":c.value&&(c.value.ID==R.ID||c.value.ID===R.ID)}]),onClick:U=>e.unref(u)(R),style:e.normalizeStyle({cursor:o.loading?"not-allowed":"pointer"})},[e.createElementVNode("div",{class:e.normalizeClass(["w-5 h-5 flex items-center justify-center rounded text-xs mr-2 text-[var(--color-text-2)]",c.value&&(c.value.ID==R.ID||c.value.ID===R.ID)?"bg-[rgb(var(--primary-6))] text-white":"bg-[var(--color-fill-2)]"])},e.toDisplayString(String(z+1).padStart(2,"0")),3),e.createElementVNode("div",{class:e.normalizeClass(["flex-1 text-xs truncate",c.value&&(c.value.ID==R.ID||c.value.ID===R.ID)?"text-[rgb(var(--primary-6))] font-medium":"text-[var(--color-text-1)]"])},e.toDisplayString(R.CSEARCHPLANNAME),3),e.createElementVNode("button",{class:"w-4 h-4 flex items-center justify-center border-none bg-transparent cursor-pointer text-sm text-[var(--color-text-3)] transition-colors rounded hover:text-[var(--color-danger)] hover:bg-[var(--color-danger-light)]",onClick:e.withModifiers(U=>e.unref(d)(R),["stop"]),disabled:o.loading}," × ",8,pr)],14,mr))),128)),f.value.length===0?(e.openBlock(),e.createElementBlock("div",hr,e.toDisplayString(e.unref(D.$t)("common.searchPlan.noPlans")),1)):e.createCommentVNode("",!0)])])],2)])]),_:1},16,["visible","title","width","onCancel","onClose"])]))}}),Cr={class:"w-full"},br={key:0,class:"flex justify-between items-center w-full"},kr={class:"text-[var(--color-text-3)] text-xs"},Ar=e.defineComponent({name:"SunnyCustomizeSelect",inheritAttrs:!0,__name:"CustomizeSelect",props:{value:{default:""},cNum:{default:""},defaultQuery:{type:Boolean,default:!0},defaultConfig:{default:()=>({})},attrParam:{default:()=>({})},fieldNames:{default:()=>({label:"cKeyname",value:"cKeynumb"})}},emits:["update:modelValue","selectChange","change"],setup(t,{emit:n}){const o=w.Select,r=w.Option,a=t,l=n,s=e.getCurrentInstance(),i=e.ref({nType:1,cLabelslotcol:"",nSearchinterval:700}),p=e.ref([{cKeynumb:"",cKeyname:"",cSlot:""}]),k=e.ref([]),g=e.ref(!1),d=e.ref(!1),u=e.computed({get:()=>a.value,set:N=>{l("update:modelValue",N)}}),m=async()=>{if(a.cNum)try{const N=Q.customizeSelectAdapter;if(!N?.query){d.value=!0,w.Message.error("CustomizeSelect adapter not configured");return}const E={cNum:a.cNum,attrParam:{...a.attrParam}};u.value&&(E.cVal=J.toString(u.value));const C=await N.query(E);p.value=C.options||[],k.value=C.options||[],C.config&&(i.value=Object.assign({},i.value,C.config)),d.value=!1}catch(N){d.value=!0,w.Message.error(N?.message||"加载失败")}},A=N=>{l("selectChange",N,s?.proxy)},h=J.debounce(N=>{if(N!==""){g.value=!0;const E=Q.customizeSelectAdapter,C={cNum:a.cNum,attrParam:{...a.attrParam},searchCondition:N};Promise.resolve().then(async()=>{if(!E?.query)throw new Error("CustomizeSelect adapter not configured");return E.query(C)}).then(I=>{I.config&&(i.value=Object.assign({},i.value,I.config)),p.value=I.options||[],k.value=I.options||[]}).catch(I=>{w.Message.error(I?.message||"查询失败")}).finally(()=>{g.value=!1})}else p.value=k.value},i.value.nSearchinterval||700),S=()=>{h("")};return e.watch(()=>a.attrParam,()=>{m()},{deep:!0}),e.onMounted(()=>{a.defaultQuery&&a.defaultQuery===!0?m():a.cNum&&a.defaultQuery===!1&&(i.value=Object.assign({},i.value,a.defaultConfig))}),(N,E)=>(e.openBlock(),e.createElementBlock("div",Cr,[e.createVNode(e.unref(o),e.mergeProps({modelValue:u.value,"onUpdate:modelValue":E[0]||(E[0]=C=>u.value=C),"allow-clear":"","allow-search":i.value.nType==1,loading:g.value,error:d.value},N.$attrs,{onChange:A,onClear:S,onSearch:e.unref(h),triggerProps:{contentClass:"customize-select-content"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,C=>(e.openBlock(),e.createBlock(e.unref(r),{key:C[a.fieldNames.value],label:C[a.fieldNames.label],value:C[a.fieldNames.value]},{default:e.withCtx(()=>[i.value.cLabelslotcol?(e.openBlock(),e.createElementBlock("div",br,[e.createElementVNode("span",null,e.toDisplayString(C.cKeyname),1),e.createElementVNode("span",kr,e.toDisplayString(C.cSlot),1)])):e.createCommentVNode("",!0)]),_:2},1032,["label","value"]))),128))]),_:1},16,["modelValue","allow-search","loading","error","onSearch"])]))}}),ve=e.defineComponent({__name:"SunnyExportModal",props:{exportUrl:{default:""},nmodid:{},nButtonid:{},conditionMap:{}},emits:["export-success","export-error","close"],setup(t,{expose:n,emit:o}){const{t:r}=ke.useI18n(),a=t,l=o,s=e.ref(!1),i=e.ref([]),p=e.ref({}),k=e.ref(!1),g=e.ref(!1),d=[{label:r("common.exportModal.default"),value:"default"},{label:r("common.exportModal.varchar"),value:"varchar"},{label:r("common.exportModal.number"),value:"number"},{label:r("common.exportModal.date"),value:"date"}],u=[{label:"10000",value:"10000"},{label:"20000",value:"20000"},{label:"50000",value:"50000"},{label:"100000",value:"100000"}],m=async()=>{k.value=!0;try{const C=await Y.post(`${Q.apiPrefix}${a.exportUrl}/export/openInit`,{nmodid:a.nmodid,nButtonid:a.nButtonid});C.data.code===200?(i.value=C.data.result.exportList,p.value=C.data.result.exportUserWebConfig,s.value=!0):w.Message.error(C.data.message)}catch(C){w.Message.error(C.message)}finally{k.value=!1}},A=()=>{m()},h=()=>{s.value=!1,l("close")};n({open:A,close:h});const S=({newIndex:C,oldIndex:I})=>{const B=i.value.splice(I,1)[0];i.value.splice(C,0,B)},N=async()=>{g.value=!0;try{i.value.forEach(y=>{y.colType==="spanselect"&&isNaN(Number(y.selId))});const C={conditionMap:a.conditionMap||{},exportList:i.value,exportUserWebConfig:p.value,nmodid:a.nmodid,nButtonid:a.nButtonid},I=await Y.post(`${Q.apiPrefix}${a.exportUrl}/export/exportExecuteStream`,C,{responseType:"blob"}),B=new FileReader;B.onload=function(){const y=I.headers["content-disposition"]?.split("attachment;filename=")[1],f=new Blob([I.data]),c=document.createElement("a");c.href=URL.createObjectURL(f),c.download=decodeURI(y||"export.xlsx"),c.click(),URL.revokeObjectURL(c.href),h(),l("export-success",I)},B.readAsText(I.data)}catch(C){w.Message.error(C.message),l("export-error",C)}finally{g.value=!1}},E=()=>{h()};return(C,I)=>{const B=e.resolveComponent("vxe-checkbox"),y=e.resolveComponent("vxe-column"),f=e.resolveComponent("vxe-table");return e.openBlock(),e.createBlock(e.unref(w.Modal),{visible:s.value,"onUpdate:visible":I[2]||(I[2]=c=>s.value=c),title:e.unref(r)("common.exportModal.title"),width:700,"mask-closable":!1,onCancel:E},{footer:e.withCtx(()=>[e.createVNode(e.unref(w.Button),{onClick:E},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("common.modal.cancel")),1)]),_:1}),e.createVNode(e.unref(w.Button),{type:"primary",loading:g.value,onClick:N},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("common.modal.confirm")),1)]),_:1},8,["loading"])]),default:e.withCtx(()=>[e.createVNode(e.unref(w.Form),{model:p.value,layout:"inline"},{default:e.withCtx(()=>[p.value.showSheetRowNum?(e.openBlock(),e.createBlock(e.unref(w.FormItem),{key:0,label:e.unref(r)("common.exportModal.showSheetRowNum")},{default:e.withCtx(()=>[e.createVNode(e.unref(w.Select),{modelValue:p.value.nSheetRowNum,"onUpdate:modelValue":I[0]||(I[0]=c=>p.value.nSheetRowNum=c),placeholder:p.value.hintSheetRowNum,"allow-clear":""},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(u,c=>e.createVNode(e.unref(w.Option),{key:c.value,label:c.label,value:c.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])):e.createCommentVNode("",!0),p.value.showMaxExportNumber?(e.openBlock(),e.createBlock(e.unref(w.FormItem),{key:1,label:e.unref(r)("common.exportModal.showMaxExportNumber")},{default:e.withCtx(()=>[e.createVNode(e.unref(w.InputNumber),{modelValue:p.value.maxExportNumber,"onUpdate:modelValue":I[1]||(I[1]=c=>p.value.maxExportNumber=c),placeholder:p.value.hintMaxExportNumber},null,8,["modelValue","placeholder"])]),_:1},8,["label"])):e.createCommentVNode("",!0)]),_:1},8,["model"]),e.createVNode(f,{size:"mini",data:i.value,border:"","max-height":"500",loading:k.value,"row-config":{drag:!0},onRowDragEnd:S},{default:e.withCtx(()=>[e.createVNode(y,{title:e.unref(r)("common.exportModal.nSfExport"),width:"70",align:"center"},{default:e.withCtx(({row:c})=>[e.createVNode(B,{modelValue:c.nSfExport,"onUpdate:modelValue":b=>c.nSfExport=b,size:"small","checked-value":1,"unchecked-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["title"]),e.createVNode(y,{field:"colName",title:e.unref(r)("common.exportModal.colName"),align:"center"},null,8,["title"]),e.createVNode(y,{title:e.unref(r)("common.exportModal.colWidth"),width:"100",align:"center"},{default:e.withCtx(({row:c})=>[e.createVNode(e.unref(w.InputNumber),{modelValue:c.colWidth,"onUpdate:modelValue":b=>c.colWidth=b,size:"small"},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["title"]),e.createVNode(y,{title:e.unref(r)("common.exportModal.colDataType"),width:"120",align:"center"},{default:e.withCtx(({row:c})=>[e.createVNode(e.unref(w.Select),{modelValue:c.colDataType,"onUpdate:modelValue":b=>c.colDataType=b,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(d,b=>e.createVNode(e.unref(w.Option),{key:b.value,label:b.label,value:b.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:1},8,["title"]),e.createVNode(y,{title:e.unref(r)("common.exportModal.drag"),width:"50",align:"center",fixed:"right",dragSort:!0},null,8,["title"])]),_:1},8,["data","loading"])]),_:1},8,["visible","title"])}}});function wr(t={}){const n=e.shallowRef(null),o=e.ref(t);return[e.defineComponent({name:"useSunnyExportModalWrapper",setup(l,{attrs:s,slots:i}){return()=>e.h(ve,{ref:n,...o.value,...l,...s},i)}}),{open:l=>{o.value={...o.value,...l},e.nextTick(()=>{n.value?.open()})},close:()=>{n.value?.close()}}]}const Br={class:"import-modal-body"},xr={class:"option-label"},et=e.defineComponent({__name:"SunnyImportModal",props:{templateUrl:{default:""},uploadUrl:{default:""},accept:{default:".xlsx,.xls"},maxSize:{default:10},limit:{default:1},params:{},nModid:{},nButtonid:{}},emits:["upload-success","upload-error","download-success","download-error","close"],setup(t,{expose:n,emit:o}){const{t:r}=ke.useI18n(),a=t,l=o,s=e.ref(!1),i=e.ref([]),p=e.ref(!1),k=e.ref(!1),g=e.ref(),d=C=>i.value.length>=a.limit?(w.Message.error(r("common.importModal.maxUploadLimit",{limit:a.limit})),!1):a.accept.split(",").some(y=>C.name.endsWith(y.replace(".","")))?C.size/1024/1024<a.maxSize?!0:(w.Message.error(r("common.importModal.maxSize",{maxSize:a.maxSize})),!1):(w.Message.error(r("common.importModal.onlySupport",{accept:a.accept})),!1),u=()=>{g.value.submit()},m=async C=>{const{onProgress:I,onError:B,onSuccess:y,fileItem:f,name:c}=C;p.value=!0;try{const b=new FormData;b.append("fileName",f.file),b.append("nModid",String(a.nModid)),b.append("nButtonid",String(a.nButtonid)),a.params&&b.append("paramMap",JSON.stringify(a.params));const x=k.value?`${Q.apiPrefix}${a.uploadUrl}/upload/fileUploadDecode`:`${Q.apiPrefix}${a.uploadUrl}/upload/fileUpload`,F=await Y.post(x,b,{headers:{"Content-Type":"multipart/form-data"}});F.data.code===200?(w.Message.success({content:F.data.message||r("common.importModal.uploadSuccess"),duration:5e3}),y(F.data),l("upload-success",F.data),N()):(w.Message.error(F.data.message||r("common.importModal.uploadError")),B(F.data),l("upload-error",F.data))}catch(b){w.Message.error(b.message||r("common.importModal.uploadError")),B(b),l("upload-error",b)}finally{p.value=!1}},A=C=>{C.value=C},h=async()=>{try{const C=await Y.post(`${Q.apiPrefix}${a.templateUrl}/export/fileDownload?nModid=${a.nModid}&nButtonid=${a.nButtonid}`,{},{responseType:"blob"}),I=new FileReader;I.onload=function(){const B=C.headers["content-disposition"]?.split("attachment;filename=")[1],y=new Blob([C.data]),f=document.createElement("a");f.href=URL.createObjectURL(y),f.download=decodeURI(B||"template.xlsx"),f.click(),URL.revokeObjectURL(f.href),l("download-success")},I.readAsText(C.data)}catch(C){w.Message.error(C.message||"模板下载失败"),l("download-error",C)}},S=()=>{s.value=!0,i.value=[],k.value=!1},N=()=>{i.value=[],s.value=!1,l("close")};n({open:S,close:N});const E=()=>{N()};return(C,I)=>{const B=e.resolveComponent("a-space");return e.openBlock(),e.createBlock(e.unref(w.Modal),{visible:s.value,"onUpdate:visible":I[3]||(I[3]=y=>s.value=y),title:e.unref(r)("common.importModal.title"),width:550,"mask-closable":!1,footer:!1,onCancel:E},{default:e.withCtx(()=>[e.createElementVNode("div",Br,[e.createVNode(e.unref(w.Upload),{action:"#","auto-upload":!1,ref_key:"uploadRef",ref:g,multiple:"","custom-request":m,onBeforeUpload:d,onChange:A},{"upload-button":e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(()=>[e.createVNode(e.unref(w.Button),{type:"outline",disabled:p.value,onClick:e.withModifiers(h,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("common.importModal.downloadTemplate")),1)]),_:1},8,["disabled"]),e.createVNode(e.unref(w.Button),null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("common.importModal.selectFile")),1)]),_:1}),e.createVNode(e.unref(w.Button),{type:"primary",disabled:p.value,onClick:e.withModifiers(u,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("common.importModal.upload")),1)]),_:1},8,["disabled"]),e.createElementVNode("div",{onClick:I[2]||(I[2]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("span",xr,e.toDisplayString(e.unref(r)("common.importModal.isdecode"))+":",1),e.createVNode(e.unref(w.Switch),{modelValue:k.value,"onUpdate:modelValue":I[0]||(I[0]=y=>k.value=y),onClick:I[1]||(I[1]=e.withModifiers(()=>{},["stop"]))},null,8,["modelValue"])])]),_:1})]),_:1},512)])]),_:1},8,["visible","title"])}}});function Er(t={}){const n=e.shallowRef(null),o=e.ref(t);return[e.defineComponent({name:"useSunnyImportModalWrapper",setup(l,{attrs:s,slots:i}){return()=>e.h(et,{ref:n,...o.value,...l,...s},i)}}),{open:l=>{o.value={...o.value,...l},e.nextTick(()=>{n.value?.open()})},close:()=>{n.value?.close()}}]}Object.defineProperty(T,"patterns",{enumerable:!0,get:()=>j.patterns}),Object.defineProperty(T,"startProgress",{enumerable:!0,get:()=>j.startProgress}),Object.defineProperty(T,"stopProgress",{enumerable:!0,get:()=>j.stopProgress}),T.z=lt,T.DEFAULT_FORM_COMMON_CONFIG=Q,T.EditRender=bo,T.ErrorBoundary=Cn,T.FormApi=Fe,T.Modal=v,T.ModalTypes=rn,T.SunnyBatchSelect=vn,T.SunnyBusinessSearch=Se,T.SunnyCustomizeSelect=Ar,T.SunnyExportModal=ve,T.SunnyForm=qe,T.SunnyIcon=ge,T.SunnyImportModal=et,T.SunnyLoading=Bn,T.SunnyResourceTree=Ro,T.SunnyScrollbar=In,T.SunnySearchInputTag=Re,T.SunnySearchModal=Ye,T.SunnySearchPlan=Ze,T.SunnySelect=Ie,T.SunnySimpleUpload=Pe,T.SunnySpinner=Nn,T.SunnyUpload=Yn,T.Validators=ko,T.getBusinessConfig=Ke,T.registerBusinessConfig=_o,T.setupSunnyForm=Fn,T.useExportModal=wr,T.useImportModal=Er,T.useSunnyEditGrid=Co,T.useSunnyForm=Ue,T.useSunnyModal=on,T.useSunnyQueryGrid=Vo,T.useSunnyResourceTree=_e,T.useSunnySearchPlan=Xe,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
(function(q,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@arco-design/web-vue"),require("@sunny-base-web/locales"),require("@sunny-base-web/utils"),require("@sunny-base-web/icons"),require("reka-ui"),require("axios"),require("vee-validate"),require("@tanstack/vue-store"),require("lodash-es"),require("@tanstack/store"),require("@vueuse/core"),require("@vee-validate/zod"),require("zod"),require("vxe-table"),require("vxe-pc-ui"),require("vue-i18n")):typeof define=="function"&&define.amd?define(["exports","vue","@arco-design/web-vue","@sunny-base-web/locales","@sunny-base-web/utils","@sunny-base-web/icons","reka-ui","axios","vee-validate","@tanstack/vue-store","lodash-es","@tanstack/store","@vueuse/core","@vee-validate/zod","zod","vxe-table","vxe-pc-ui","vue-i18n"],e):(q=typeof globalThis<"u"?globalThis:q||self,e(q.SunnyBaseWebUI={},q.Vue,q.ArcoVue,q.SunnyBaseWebLocales,q.SunnyBaseWebUtils,q.SunnyBaseWebIcons,q.rekaUi,q.axios,q.veeValidate,q.vueStore,q.lodashEs,q.store,q.core,q.zod$1,q.zod,q.vxeTable,q.vxePcUi,q.vueI18n))})(this,(function(q,e,R,te,H,gr,Ge,Ve,$e,mo,ve,ho,yr,go,yo,Nt,ze,br){"use strict";function bo(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:()=>t[r]})}}return n.default=t,Object.freeze(n)}const Co=bo(yo),So=Symbol("ArcoConfigProvider"),wo="arco",ko="$arco",ke=t=>{var n,r,o;const i=e.getCurrentInstance(),l=e.inject(So,void 0);return`${(o=(r=l?.prefixCls)!=null?r:(n=i?.appContext.config.globalProperties[ko])==null?void 0:n.classPrefix)!=null?o:wo}-${t}`},Ao=Object.prototype.toString;function Ae(t){return Ao.call(t)==="[object Number]"&&t===t}var Ee=(t,n)=>{for(const[r,o]of n)t[r]=o;return t};const Eo=e.defineComponent({name:"IconDown",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-down`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),xo=["stroke-width","stroke-linecap","stroke-linejoin"];function vo(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M39.6 17.443 24.043 33 8.487 17.443"},null,-1)]),14,xo)}var Tt=Ee(Eo,[["render",vo]]);const Bo=Object.assign(Tt,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+Tt.name,Tt)}}),Po=e.defineComponent({name:"IconUp",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-up`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),No=["stroke-width","stroke-linecap","stroke-linejoin"];function To(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M39.6 30.557 24.043 15 8.487 30.557"},null,-1)]),14,No)}var Vt=Ee(Po,[["render",To]]);const Vo=Object.assign(Vt,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+Vt.name,Vt)}}),Mo=e.defineComponent({name:"IconClose",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-close`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),Io=["stroke-width","stroke-linecap","stroke-linejoin"];function Ro(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M9.857 9.858 24 24m0 0 14.142 14.142M24 24 38.142 9.858M24 24 9.857 38.142"},null,-1)]),14,Io)}var Mt=Ee(Mo,[["render",Ro]]);const Cr=Object.assign(Mt,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+Mt.name,Mt)}}),$o=e.defineComponent({name:"IconQuestionCircle",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-question-circle`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),Oo=["stroke-width","stroke-linecap","stroke-linejoin"];function Fo(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M42 24c0 9.941-8.059 18-18 18S6 33.941 6 24 14.059 6 24 6s18 8.059 18 18Z"},null,-1),e.createElementVNode("path",{d:"M24.006 31v4.008m0-6.008L24 28c0-3 3-4 4.78-6.402C30.558 19.195 28.288 15 23.987 15c-4.014 0-5.382 2.548-5.388 4.514v.465"},null,-1)]),14,Oo)}var It=Ee($o,[["render",Fo]]);const Sr=Object.assign(It,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+It.name,It)}}),jo=e.defineComponent({name:"IconRefresh",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-refresh`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),Do=["stroke-width","stroke-linecap","stroke-linejoin"];function Lo(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M38.837 18C36.463 12.136 30.715 8 24 8 15.163 8 8 15.163 8 24s7.163 16 16 16c7.455 0 13.72-5.1 15.496-12M40 8v10H30"},null,-1)]),14,Do)}var Rt=Ee(jo,[["render",Lo]]);const _o=Object.assign(Rt,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+Rt.name,Rt)}}),zo=e.defineComponent({name:"IconSearch",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-search`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),Uo=["stroke-width","stroke-linecap","stroke-linejoin"];function Qo(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M33.072 33.071c6.248-6.248 6.248-16.379 0-22.627-6.249-6.249-16.38-6.249-22.628 0-6.248 6.248-6.248 16.379 0 22.627 6.248 6.248 16.38 6.248 22.628 0Zm0 0 8.485 8.485"},null,-1)]),14,Uo)}var $t=Ee(zo,[["render",Qo]]);const Ot=Object.assign($t,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+$t.name,$t)}}),Wo=e.defineComponent({name:"IconUpload",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-upload`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),qo=["stroke-width","stroke-linecap","stroke-linejoin"];function Jo(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M14.93 17.071 24.001 8l9.071 9.071m-9.07 16.071v-25M40 35v6H8v-6"},null,-1)]),14,qo)}var Ft=Ee(Wo,[["render",Jo]]);const Ho=Object.assign(Ft,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+Ft.name,Ft)}}),Yo=e.defineComponent({name:"IconAttachment",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-attachment`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),Go=["stroke-width","stroke-linecap","stroke-linejoin"];function Ko(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",stroke:"currentColor",xmlns:"http://www.w3.org/2000/svg",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M29.037 15.236s-9.174 9.267-11.48 11.594c-2.305 2.327-1.646 4.987-.329 6.316 1.317 1.33 3.994 1.953 6.258-.332L37.32 18.851c3.623-3.657 2.092-8.492 0-10.639-2.093-2.147-6.916-3.657-10.54 0L11.3 23.838c-3.623 3.657-3.953 10.638.329 14.96 4.282 4.322 11.115 4.105 14.821.333 3.706-3.773 8.74-8.822 11.224-11.33"},null,-1)]),14,Go)}var jt=Ee(Yo,[["render",Ko]]);const Xo=Object.assign(jt,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+jt.name,jt)}}),Zo=e.defineComponent({name:"IconDelete",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-delete`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),ea=["stroke-width","stroke-linecap","stroke-linejoin"];function ta(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M5 11h5.5m0 0v29a1 1 0 0 0 1 1h25a1 1 0 0 0 1-1V11m-27 0H16m21.5 0H43m-5.5 0H32m-16 0V7h16v4m-16 0h16M20 18v15m8-15v15"},null,-1)]),14,ea)}var Dt=Ee(Zo,[["render",ta]]);const wr=Object.assign(Dt,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+Dt.name,Dt)}}),ra=e.defineComponent({name:"IconFullscreenExit",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-fullscreen-exit`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),na=["stroke-width","stroke-linecap","stroke-linejoin"];function oa(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M35 6v8a1 1 0 0 0 1 1h8M13 6v8a1 1 0 0 1-1 1H4m31 27v-8a1 1 0 0 1 1-1h8m-31 9v-8a1 1 0 0 0-1-1H4"},null,-1)]),14,na)}var Lt=Ee(ra,[["render",oa]]);const aa=Object.assign(Lt,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+Lt.name,Lt)}}),sa=e.defineComponent({name:"IconFullscreen",props:{size:{type:[Number,String]},strokeWidth:{type:Number,default:4},strokeLinecap:{type:String,default:"butt",validator:t=>["butt","round","square"].includes(t)},strokeLinejoin:{type:String,default:"miter",validator:t=>["arcs","bevel","miter","miter-clip","round"].includes(t)},rotate:Number,spin:Boolean},emits:{click:t=>!0},setup(t,{emit:n}){const r=ke("icon"),o=e.computed(()=>[r,`${r}-fullscreen`,{[`${r}-spin`]:t.spin}]),i=e.computed(()=>{const c={};return t.size&&(c.fontSize=Ae(t.size)?`${t.size}px`:t.size),t.rotate&&(c.transform=`rotate(${t.rotate}deg)`),c});return{cls:o,innerStyle:i,onClick:c=>{n("click",c)}}}}),ia=["stroke-width","stroke-linecap","stroke-linejoin"];function la(t,n,r,o,i,l){return e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",class:e.normalizeClass(t.cls),style:e.normalizeStyle(t.innerStyle),"stroke-width":t.strokeWidth,"stroke-linecap":t.strokeLinecap,"stroke-linejoin":t.strokeLinejoin,onClick:n[0]||(n[0]=(...c)=>t.onClick&&t.onClick(...c))},n[1]||(n[1]=[e.createElementVNode("path",{d:"M42 17V9a1 1 0 0 0-1-1h-8M6 17V9a1 1 0 0 1 1-1h8m27 23v8a1 1 0 0 1-1 1h-8M6 31v8a1 1 0 0 0 1 1h8"},null,-1)]),14,ia)}var _t=Ee(sa,[["render",la]]);const ca=Object.assign(_t,{install:(t,n)=>{var r;const o=(r=n?.iconPrefix)!=null?r:"";t.component(o+_t.name,_t)}}),da="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4gAAADQCAYAAABFhU/JAAAAAXNSR0IArs4c6QAAIABJREFUeF7t3b+PHMe16PFT/XtmdrlN2bIlAb6wgWdc4DLkP8DgQe8tBBJM5gUWCBAKmOlvuPs/CHgBIwLOvKECAkoeMyfXIQNfAXZAWDBEmQtqd/vHTHfXQ++Ion4suTuz3T1VXd8N7e6qcz6nRKm4M+co4QcBBBC4hMB8rveK4DiUk5Ps888/yC7xCo8ggAACCCCAAAIIWCagLIuXcBFAYGCBW7d0sPv+caq0H73auqp1o6Myy//xTvbkiaoGDontEEAAAQQQQAABBHoS4ILYEyzLIjAGgfn82aSO30mrSt74Z0VZV0U5e5E9efS7Ygw5kwMCCCCAAAIIIOCyABdEl6tP7gi8ReDOJ3pXsmz3skh+2VRBkGeHN97N5EA1l32P5xBAAAEEEEAAAQTMEeCCaE4tiAQBIwQODrT39Om3aekHyaYBecUiC8OvssPDG4tN1+A9BBBAAAEEEEAAgeEFuCAOb86OCBgrsL//ZRym76eild9FkH40LYNcssNDlXexHmsggAACCCCAAAII9CvABbFfX1ZHwBqBD+/pWbLM9noJWE1rmUgWH59dFute9mBRBBBAAAEEEEAAgSsLcEG8MiELIGC/wN27R2mTRNMhMqm9ad78QrLHn6lyiP3YAwEEEEAAAQQQQODyAlwQL2/FkwiMTuDWgQ52/yqp0tn3IyyGSjKum+XLZCf74o+SiSg91L7sgwACCCCAAAIIIPBmAS6InA4EHBWYz/WkjrO3jrAYgiYIRPvlNLt+XbKHD9VyiD3ZAwEEEEAAAQQQQOB8AS6InAwEHBTY//hf18I62TEtdT+qyyDfpamNaYUhHgQQQAABBBBwRoALojOlJlEERFYjLCQt/WzjERaDOCpdy2RGU5tBsNkEAQQQQAABBBB4LcAFkdOAgCMC+/s6DtPTzkZYDMVWe8u8OdrLHj+mqc1Q5uyDAAIIIIAAAu4KcEF0t/Zk7pDAvXt69rKvERYDOS7rZlknp9kXf/w1TW0GMmcbBBBAAAEEEHBPgAuiezUnY8cE7t4/SptimBEWQ9CumtqU2d+uX8/+QlObIcjZAwEEEEAAAQQcEuCC6FCxSdUtgZsPdPiro5M09L1wrJn7ZV0Gwcvs8PA3+VhzJC8EEEAAAQQQQGBIAS6IQ2qzFwIDCZgywmKgdNsxirWc5lkc/7LtgFoPti8bIYAAAggggAACIxPggjiygpIOAqaOsBiqMqumNs+zx49/Xw61J/sggAACCCCAAAJjEeCCOJZKkofzAvP5n/yq+t9pHfux8xgi8rqpzXuZiGhMEEAAAQQQQAABBC4W4IJ4sRFPIGC8gK0jLIaAjetpcxJJlv9esicHqhpiT/ZAAAEEEEAAAQRsFeCCaGvliBuB7wTm8693Sn92DZCLBeJ6Wsxmkj16pIqLn+YJBBBAAAEEEEDAPQEuiO7VnIxHJHD3vk6bIpuOKKVBUvHDpgqKnezGDckODlQzyKZsggACCCCAAAIIWCDABdGCIhEiAj8VePBAh89GPsJiqKp7yTQLT6XtfroYak/2QQABBBBAAAEETBXggmhqZYgLgTcI3L791VTN9lKAuhXQql7I7m72+UPVNrXhBwEEEEAAAQQQcFKAC6KTZSdpWwX2P9bXwjrbsTV+G+Kuat3oaJbl/5DsyROa2thQM2JEAAEEEEAAge4EuCB2Z8lKCPQmMJ9rv5ocp/WCERa9IZ+zcFxXxfPZtewJTW2GZGcvBBBAAAEEENiiABfELeKzNQKXEdj/VMfhN5KKzvzLPM8z3Qusmtrk2Y0b79LUpnteVkQAAQQQQAABgwS4IBpUDEJB4KcC87neKf2MERYGHQ2vWGRhmNLUxqCaEAoCCCCAAAIIdCfABbE7S1ZCoEMBrT76w8vUb8JJh4uyVIcCZ01tTk6yzz//gKY2HbqyFAIIIIAAAghsV4AL4nb92R2Bnwm0IyyOjk7S0vdCeMwXWDW1KbP8H+/Q1Mb8chEhAggggAACCFwgwAWRI4KAQQK3b+upmmWMsDCoJuuEUtZVUc5eZE8e/a5Y5z2eRQABBBBAAAEETBHggmhKJYjDeYH/OX+xN/XjmfMQIwDwy6YKgjw7vPFuJgeqGUFKpIAAAggggAACjghwQXSk0KRprgAjLMytTReRrZrafJUdHt5YdLEeayCAAAIIIIAAAn0KcEHsU5e1EbhA4Nb9vyfT03fTwFceWOMW8KNpGeTSdj/Nx50p2SGAAAIIIICAzQJcEG2uHrFbLcAIC6vLt3nwStcymWXx8dllsd58Id5EAAEEEEAAAQS6F+CC2L0pKyJwgQAjLDgiK4Ham+bNLyR7/JkqMUEAAQQQQAABBEwQ4IJoQhWIwRmB+fxpVFX/ltaxFziTNIleKBDXzfJlspN98UfJRJS+8AUecFLgwQM9FZHlw4dq6SQASSOAAAIIDCLABXEQZjZBQOT2Az1V3zLCgrPwZoEgEO2X0+z6dcm4BHBSXgkcHGjvyy9lp2kkav+3PJcqTaV49EgxToVjggACCCDQuQAXxM5JWRCBnwvM5y/2SkZYcDTWEPCjugzyXZrarGE2xkcfPNDh0ZHsBoH8rJFVGIrWWoqikILvs46x+uSEAAIIbEeAC+J23NnVEYHVCAtJ60UWO5IyaXYtQFObrkWtWW8+15MgkEvNRvU8WSwWZxdFxqlYU2ECRQABBMwU4IJoZl2IagQCt+7rZHp6ygiLEdTSlBRqb5k3R3vZ48c0tTGlJn3FceeO3p3NZO2/WFJK6uVSihs3pDw4UE1f8bEuAggggMB4Bbggjre2ZLZFgTt3nu/KdLq7xRDYesQCy7pZ1slp9sUff01Tm5HV+dYtHfz2t7JTlnLlRlZVJcX161LyfdaRHRLSQQABBHoW4ILYMzDLuybQjrCQ1G+yiWuZk+/wAqumNmX2t+vXs7/Q2XL4AnS846ef6vibb6Tzv1iiqU3HhWI5BBBAYOQCXBBHXmDSG05gPtdRlZyk9ZIRFsOps9MrAb+syyB4mR0e/iZHxT6Be/f0rKqk179YoqmNfeeCiBFAAIFtCHBB3IY6e45O4MN7/5wly9290SVGQvYJtE1tTvMsjn/ZdkCt7UvArYjbERZPn551KQ2HzJymNkNqsxcCCCBglwAXRLvqRbQGCszneq/0s0t1GjQwfEIascCqqc3z7PHj35cjTtPa1NpPHYjIznkjLIZKiqY2Q0mzDwIIIGCPABdEe2pFpIYJtM0kdt8/TpX2z4ZX84OAqQJtU5vg+s7p5w9VZmqMrsW1zgiLoWxoajOUNPsggAACZgtwQTS7PkRnqMD9+zr5mhEWhlaHsN4kENfT5iSSLP+9ZE8OVIXUNgS0+uQT2cnz9UdYDBVtVclyNpPy0SNVDLUn+yCAAAIImCPABdGcWhCJJQKMsLCkUIT5VoG4nhazmWRcAoY7KO2nDj74QHa1Fn+4XTffqaqkSRIpi0IKvs+6uSNvIoAAArYJcEG0rWLEuzWBtpnEn59+m8Z+kGwtCDZGoGMBP2yqoNjJbtyQjMHqHeP+YLn2UwdlKTv97dDvyjS16deX1RFAAAGTBLggmlQNYjFWgBEWxpaGwDoU8JJpFp5K2/100eGyzi81xAiLoZBpajOUNPsggAAC2xPggrg9e3a2RIARFpYUijA7E9CqXsjubkZTm6uRzue6/Shp26V00BEWV4v68m/T1ObyVjyJAAII2CTABdGmahHr4AKMsBicnA0NEqhq3eholuX/kOzJE5rarFOas08dVLKbJDL6f8/S1Gadk8GzCCCAgPkCo/8Xl/klIEITBRhhYWJViGmbAnFdFc9n17IndLa8sAy3b+vpzo5ML3xwZA/Q1GZkBSUdBBBwVoALorOlJ/E3CcznzyZ1/E5aVeP/m39OAQLrCqya2uTZjRvv0tTmZ3jmj7BYt96bPk9Tm03leA8BBBDYvgAXxO3XgAgMErjzid6VLNs1KCRCQcBYAa9YZGGY0tRGRB480OHJiezYMsJiqEP1qqnN4aEUIkoPtS/7IIAAAghsLsAFcXM73hyRQDvC4unTb9OSERYjqiqpDCVw1tTm5CT7/PMPsqH2NGkf20dYDGXZNrW5cUOKgwO+zzqUOfsggAACmwhwQdxEjXdGJbC//2Wc/PJ/7NXLLBhVYiSDwMACq6Y2ZZb/4x1nmtrM57rtUsps1DXOGk1t1sDiUQQQQGALAlwQt4DOluYIfHhPz5JltmdORESCwDgEyroqytmL7Mmj3xXjyOjHWYx9hMUQNaOpzRDK7IEAAgisL8AFcX0z3hiJwN27R2mTRM51GhxJ+UjDEgG/bKogyLPDG/83k4ODxpKw3xrm/r6O331XdpZLGll1VU+a2nQlyToIIIDA1QW4IF7dkBUsE7h1oIPdv0qqdBZZFjrhImC1QFxPT69fl+zhQ7W0NZEHD/T0+Ni9ERZD1YumNkNJsw8CCCDwZgEuiJwOpwTmcz2p44wRFk5VnWRNE/CjaRnk0nY/zU2L7U3xtI2svvxSdppG+IulgYpGU5uBoNkGAQQQ+IkAF0SOhDMC+x//61pYJzvOJEyiCJguoHQtk1kWH59dFmtTw2WExXYr0za1ee89KT77TJXbjYTdEUAAATcEuCC6UWens2SEhdPlJ3lLBGpvmje/kOyxYZeA9lMHQSAzSxhHHWbb1Ob6dSmOjqQ0+S8URl0EkkMAAScEuCA6UWZ3k2ybSYTpaSpa+e4qkDkC9gjEdbN8mexkX/xRsm0PVmeEhbnnhqY25taGyBBAwH4BLoj215AM3iBw756evWSEBecDASsFgkC0X06zbTS1uXVLB7/9reyUpTAb1fDTQ1MbwwtEeAggYKUAF0Qry0bQFwncvX+UNgUjLC5y4v9HwAYBP6rLIN8dpKnNp5/q+OVLRljYcC5+GiNNbWysGjEjgICJAlwQTawKMW0scPOBDn91dJKGvhduvAgvIoCAmQJtU5vTPIvjX/bS1Kb91EFVycTM5InqsgI0tbmsFM8hgAAC5wtwQeRkjEaAERajKSWJIHChQO0t8+ZoL3v8+OqdLRlhcSG3lQ/Q1MbKshE0AggYIMAF0YAiEMLVBRhhcXVDVkDARoFl3Szr5DT74o+/3qipzXyu27mGO0Egno35E/PlBCYTKY+Pz7qfLi73Bk8hgAAC7gpwQXS39qPIfD7/ky8y3yv9LBlFQiSBAAIbCaya2pTZ365fz/7yUC0vswgjLC6jNK5naGozrnqSDQII9CPABbEfV1YdQIARFgMgswUCFgr4ZV0Gwcvs8PA3+fnha3XnjuzMZhJbmB4hdyTQNrV5/lyKJ09U1dGSLIMAAgiMQoAL4ijK6F4S8/nXO6U/u+Ze5mSMAAKXFvi+qc3/yw4P/0/dvscIi0vrOfMgTW2cKTWJIoDAJQW4IF4SisfMEbh7X6dNkU3NiYhIEEDAdIG2qU2q6rpp3mm/c8gPAj8ToKkNhwIBBBBYCXBB5CRYI/DggQ6fMcLCmnoRKAImCcSBP62WKokkWqip5KqQN3z81KSoiWVbAjS12ZY8+yKAgAkCXBBNqAIxXChw+/ZXUzXbSy98kAcQQACBHwgEvvJ85c2qpfrRbNSgkUaSKBdf8qAUvoPGqTlXII6lOj1tu59KIaI0TAgggIALAlwQXaiy5Tnuf6yvhXW2Y3kahI8AAgMLBJ4X+iqZVdXirSMsJn5UBoFky6WUA4fIdpYIhKHoPJeSpjaWFIwwEUDgSgJcEK/Ex8t9Cszn2q8mx2m98Ok02Cc0ayMwQgFP+xMlarJOap4nVayi3Pclb7+Pts67POuOAE1t3Kk1mSLgqgAXRFcrb3je+5/qOPzmNBWtfMNDJTwEEDBIoKmVCj1vJqKu1IwmSqJclZIrJQxWN6i+JoVCUxuTqkEsCCDQpQAXxC41WasTgflc75R+xgiLTjRZBAF3BJpaBaHnz0Sks79YOmtqo84uijS1cecorZ0pTW3WJuMFBBAwWIALosHFcS80rT76w8vUb8K1PhbmnhMZI4DATwXi0IurRfubw35+mkaaKGlyKZI8CGhq04+y/avS1Mb+GpIBAggw5oIzYIhAO8Li6OgkLX3vR50GDQmPMBBAwGCBOJhOq+UiGSrEia/LZRBnAU1thiK3bh+a2lhXMgJGAIEfCPAbRI7D1gVu39ZTNcsYYbH1ShAAAnYJKFF+oPxZ00iwjchXTW2a3PcTmtpsowCW7Nk2tTk5keLxY0WXXEtqRpgIuC7ABdH1E7Dl/BlhseUCsD0Clgp44kXtfMOmESP+PRaJzpWKaWpj6XkaIuxXTW0++ECKgwNFl9wh0NkDAQQ2EjDiX6wbRc5LVgswwsLq8hE8AlsV2GSExVABr5ra5LlSE5raDIVu4T5tU5sgkOLhQ7W0MHxCRgCBkQtwQRx5gU1M79b9vyfT03fTwFdvHV5tYuzEhAAC2xPoaoTFEBm8bmpT50Ewq4bYkz3sE6CpjX01I2IEXBDgguhClQ3KkREWBhWDUBCwSCAOVVAtJjORRWcjLIZK3/N16QVNFiwnfAdtKHTL9qGpjWUFI1wERi7ABXHkBTYnPUZYmFMLIkHALoHQ85OmVlO7ov55tF4lVRw3ee5XeVLt8B002wvaU/w0tekJlmURQODSAlwQL03Fg5sKzOdPo6r6t7SOva10Gtw0bt5DAIHtC7SD75taxduPpLsIPE90rKLc8ySva+E7aN3RjmolmtqMqpwkg4BVAlwQrSqXfcHefqCn6ltGWNhXOSJGYLsC2x5hMVT2bVObIJCsaaQYak/2sU+Apjb21YyIEbBZgAuizdUzPPb5/MVe6cczw8MkPAQQMEzAtBEWA/HU8STKVSlt99N6oD3ZxjKBtqmNiBSPHkkporRl4RMuAghYIsAF0ZJC2RTmaoSFpPUiG9XHwmyqAbEiYKuAp6cTJYuJrfF3EXcQRoVfSaaULLpYjzXGJ9A2tdFaimfPpHzyRNEld3wlJiMEtirABXGr/OPb/NZ9nUxPTxlhMb7SkhECvQq0Y2+qhTfzPRX2upFFiweNXkoS51JIHgTCb4ssqt2QodLUZkht9kLADQEuiG7UeZAs79x5vivT6e4gm7EJAgiMRiDwvNBX3qyqhNmo51SVpjajOeq9JtI2tSkKKW7elOLgQNElt1dtFkdg3AJcEMdd34Gya0dYSOo3mdMfCxsIm20QGJXAWEZYDFWUSPQiCGKa2gwFbuk+NLWxtHCEjYAhAlwQDSmErWHM5zqqkpO0XjLCwtYaEjcC2xIY4wiLAS3rWDW5UglNbQZEt20rmtrYVjHiRcAMAS6IZtTByigYYWFl2Qgaga0LrEZYTGZNs2A2agfVCEJd+FVMU5sOLMe6BE1txlpZ8kKgHwEuiP24jn7V+VzvlX7GCIvRV5oEEehWQNdeHHgef3Z0y3q22qqpTZNLMaGpTQ++Y1nS82Tx4oWUjx+rciw5kQcCCHQrwAWxW8/Rr3brlg523z9Olfaj0SdLgggg0KlAXPvTylNJp4uy2M8EVk1tdF54cR7XsoQIgfMEaGrDuUAAgTcJcEHkbFxa4P59nXzNCItLe/EgAgisBNoRFmddSpeMsBj6TKya2jRZ00yKofdmP3sEaGpjT62IFIEhBLggDqE8gj0YYTGCIpICAlsQYITFFtDP3/K7pjZ1LjKrjYmKQIwSoKmNUeUgGAS2JsAFcWv0lmx8oL3/9fTbNPYDPhZmSckIEwFTBEJvmjT1YmpKPMSxEoiSKFel5ErJAhMEzhOgqQ3nAgG3Bbggul3/t2bPCAsOBwIIbCLQ1EqFZ41oFN9V3gRwoHciiRZqKrkqpB2VwQ8C5wrQ1IaDgYB7AlwQ3av5pTL+8N4/Z8lyd+9SD/MQAggg8J1AU6ugnW8oIj4odggEjTSSRLkU0nY/reyImiiHFlBK6uNjKW/elOLgQDVD789+CCAwnAAXxOGsrdmJERbWlIpAETBKIK69uGKEhVE1WTeYiR+VQSDZcimMQFgXz6HnT0+lfO89KR4+VHTJdajupOqOABdEd2p9YaaMsLiQiAcQQOANAnHgT6slIyzGckA8T6pYRbnvS96OQxhLXuTRrcDrpjaKLrnd0rIaAlsV4IK4VX5zNp/Pn03q+J20qoQzYU5ZiAQB4wVWIywms2q5CI0PlgA3EqCpzUZsTr1EUxunyk2yDghwGXCgyBeleOcTvStZtnvRc/z/CCCAwA8FPPGidr5h0/AXSy6cjLOmNuqs+ylNbVwo+IY50tRmQzheQ8AgAS6IBhVj6FAODrT3Z0ZYDM3OfgiMQsDT/kSJmowiGZJYS6BppImSJpcioanNWnJuPUxTG7fqTbbjEuCCOK56Xjqb1QgLSetlFlz6JR5EAAHnBRhh4fwR+BHAxNflMoizgKY2HIy3CNDUhuOBgF0CXBDtqlcn0X54T8+SZcYIi040WQQBdwTiWgUVIyzcKfgama6a2jS57yc0tVnDzbVHaWrjWsXJ11YBLoi2Vm7DuO/ePUqbJJpu+DqvIYCAowJxOI2rxaKdb8gPAm8ViETnSsXtdxUXUCFwnsCrpjZFIcXhoapRQgABswS4IJpVj96iuXWgg92/Sqp0FvW2CQsjgMAoBdrB902t4lEmR1K9Caya2uS5UhOa2vSmbP/CbVObxeLsoshfKNhfTjIYiQAXxJEU8m1pzOd6UscZIywcqDUpItClgBLlB8pvu5TyXeUuYR1b63VTmzoPglnlWPqke0kBmtpcEorHEBhAgAviAMjb3GL/439dC+tkZ5sxsDcCCNgnwAgL+2pmQ8Ser0svaLJgOSltiJcYtyNAU5vtuLMrAq8EuCCO9Cy0IyyePv02Lf0gGWmKpIUAAj0JMMKiJ1iW/V4gaKJlkkheBJIHhWhoEDhPIM+lSlMpHj1SBUIIIDCcABfE4awH22l/X8dhepqKVv5gm7IRAghYLxBHSlXlZCay4LvK1lfTjgQ8T3SsotzzJK9rWdoRNVEOLUBTm6HF2c91AS6IIzsB9+7p2UtGWIysqqSDQP8CgeeF/tKbVZ54/e/GDgj8XKBtahMEkjWN8NsiDsgbBWhqw+FAoH8BLoj9Gw+2w937R2lTMMJiMHA2QmAkAqHnJ02tGH8zknqOII06nkS5KqXtfsoIhBEUtI8U2qY2y6UUN25IeXCgmj72YE0EXBXggjiCyt988F/hr47+PQ19LxxBOqSAAAIDCjDCYkBstlpbIAijwq8kY6bi2nROvVBVUly/LuXDh4qPKTtVeZLtS4ALYl+yA63LCIuBoNkGgZEJMMJiZAUdeTpBo5eSxLkUkgcBTW1GXu6N06OpzcZ0vIjAjwS4IFp8IBhhYXHxCB2BLQp4Mo18JbOmWfDvgC3Wga3XF1g1tdG558U0tVmfz5k3aGrjTKlJtCcB/uOgJ9g+l12NsJC09DNGWPQJzdoIjFGg9qe+p/izY4y1dSynSPQiCGKa2jhW93XTpanNumI8j4AIF0TLTgEjLCwrGOEiYIhA4CvPV96sWiq+q2xITQijM4E6Vk2uVEJTm85Ix7cQTW3GV1My6k+AC2J/tp2vPJ9/vVP6s2udL8yCCCAwaoGzERbt5bBihMWoC01yEoS68KuYpjachbcK0NSGA4LA2wW4IFpyQu7e12lTZLSht6RehImAKQKMsDClEsQxpMCqqU2TSzGhqc2Q8JbtVVWynM2kfPRIMXvTstoRbr8CXBD79b3y6g8e6PDZ0QkjLK4syQIIuCXQ1ErF4WTa1IvYrczJFoHXAq+a2hRencf1lBEIHI5zBYpC9M6OFEUhxeGhYvYm58R5AS6IBh+B27e/moZ7e3tVxXdFDS4ToSFgnEBTq6CdbygivnHBERACWxJYNbVpsqaZ8NuiLdXAhm1pamNDlYixbwEuiH0Lb7j+/sf6WlhnOxu+zmsIIOCogK69OPC89nLIDwIInC/wXVObOheZ8dsiTsm5AjS14WC4LMAF0bDqz+far6rjtI59PhZmWG0IBwHTBeLAn1ZLRliYXifiM0cgSqJclZIrJQtzoiIS0wRoamNaRYinbwEuiH0Lr7H+/qc6Dr85TUUrPha2hhuPIuC6ACMsXD8B5H9VgUiihZpKrgppR2Xwg8C5AjS14WC4IsAF0ZBKz+d6p/QzRlgYUg/CQMAWgcCbhr6SWVUtPFtiJk4ETBVoGmna3ypKIW3308rUOIlruwJVJU2SSElTm+3Wgd37E+CC2J/tJVfW6qM/vEz9Jpxc8gUeQwABBM4EPO1PlCj+7OA8INCDwMSPyiCQbLmUsoflWXIkAjS1GUkhSeNHAlwQt3gg2hEWR0cnael74RbDYGsEELBMoB1hEZ41olGRZaETLgLWCXieVLGKct+XvP3NkXUJEPAgAq+a2vzpT1IopfQgm7IJAj0JcEHsCfaiZdsRFmq2l170HP8/Aggg8EMBRlhwHhDYnkCU6FyVMU1ttlcCK3Zum9rcuCHFwYHiY8pWVIwgfyrABXELZ4IRFltAZ0sERiAQh15cLRhhMYJSkoLlAmdNbdRZ91Oa2lheyz7Dp6lNn7qs3acAF8Q+dX+y9tkIi8lxWi8YYTEgO1shMAqBOJhOq+UiGUUyJIHASARWTW2aXIqEpjYjqWkfadDUpg9V1uxTgAtin7o/WPvW/b8n09N307Yd/UBbsg0CCIxAQInyA+XPmkaCEaRDCgiMVmDi63IZxFlAU5vR1riLxGhq04Uia/QtwAWxb2ERYYTFAMhsgcAIBTzxIl957eWQP6tHWF9SGqfAqqlNk/t+QlObcZa4k6xeNbU5PJRChKY2naCySGcC/EdHZ5TnLcQIi155WRyBEQswwmLExSU1ZwQi0blSda7UdOFM0iS6tgBNbdYm44WeBbgg9gQ8nz+NRP5jr/QzRlj0ZMyyCIxRgBEWY6wqObkusGpqk+dKTWhq4/pheEv+bVOb996T4rPPFLM3OSdbFeCC2AP/7Qd6qr4CSCzaAAAPBklEQVTNGGHRgy1LIjBmgTicBtVCZiILf8x5khsCrgq8bmpT50EwYwSCqwfhgrxpasPB2LYAF8SOKzCfv9gr/XjW8bIshwACIxcIPT9pajUdeZqkhwAC3wl4vi69oMmC5YTfFnEq3ihAUxsOxzYEuCB2pL4aYSFpvcjijpZkGQQQcEQg9PxZUyv+7HCk3qSJwA8FgiZaJonkRSHtqAyNDgLnCdDUhnMxpAAXxA60b93XyfT0lBEWHViyBAIuCTDCwqVqkysCbxfwPNGxinLPk7yuZYkXAm8SoKkNZ6NvAS6IVxS+c+f5rkynu1dchtcRQMAxAUZYOFZw0kVgDYG2qU0QSNY07QgEfhA4X4CmNpyMvgS4IG4s246wkNRvssnGS/AiAgg4KeDp6UTJgj87nKw+SSOwlkAdT6JcldJ2P63XepOHnRFom9pcvy7F0ZGUh4eKc+JM5ftLlAviBrbzuY6q5CStl16wweu8ggACjgoEvvL8hTerPMX4G0fPAGkjsKlAEOrCr+JMKWGm4qaIDrw3mUh5fHx2UeScOFDvvlLkgrimLCMs1gTjcQQQOBMIPC/0lTerKvEgQQABBDYVCBq9lCTOhaY2mxI68R5NbZwoc29JckFcg5YRFmtg8SgCCHwvwAgLDgMCCHQtsGpqo3PPi2lq0zXuyNZrm9o8fy7FkyeK2Zsjq21f6XBBvITsrVs62H3/OFXajy7xOI8ggAACP7wcMsKC84AAAr0KRKIXQRDT1KZXZfsXp6mN/TUcKgMuiBdI37+vk68ZYTHUeWQfBEYj0NQqiIPJtGkWfFd5NFUlEQSMF6hj1eRKJTS1Mb5U2wuQpjbbs7dlZy6Ib6kUIyxsOcbEiYBZArr24sDzZmZFRTQIIOCSAE1tXKr25rnS1GZzuzG/yQXxvOoeHHgf/fd/7jHCYsxHn9wQ6Ecgrv1p5amkn9VZFQEEEFhPYNXUpsmlmORBIHq9t3naFYE4lur0tO1+2s7eVJwTVwr/hjy5IP4EhhEWjv8TQfoIbChwNsKi7VK6ZITFhoS8hgACPQq8ampTeHUe19Nlj1uxtOUCNLWxvIAdhM8F8QeIH9775yxZ7u514MoSCCDgkAAjLBwqNqkiMAKBVVObJmuaSTGCdEihJwGa2vQEa8GyXBC/K9J8rvdKP+M7QxYcWkJEwCQBT/sTJWpiUkzEggACCFxSoJ74Ueb7kreNSy75Do85JkBTG8cKLiLOXxAZYeHeoSdjBLoQaGqlwrNGNIrxN12AsgYCCGxVIEqiXJWSKyWLrQbC5kYL0NTG6PJ0FpzTF8T5/Nmkrt9Jq4iLcmcnioUQcECgHWERen77iQPfgXRJEQEEHBKIJFqoqeSqkHZUBj8InCtAU5txHwxnL4h3PtG7kmW74y4v2SGAQNcCce3FFSMsumZlPQQQMEygaaRpf6sohbTdTyvDwiMcQwTCUHSeS/n8uRRPnijOiSF1uWoYzl0QDw609+en36axH9CG/qqnh/cRcEwgDvxptWSEhWNlJ10EnBeY+FEZBJItl1I6jwHAGwXapjYnJ1I8fqw4J5afE6cuiKsRFpLWyyywvG6EjwACAwooUX6g/FnTCH92DOjOVgggYJaA50kVqyinqY1ZdTEtmldNbT74QIqDA0XzI9MKdIl4nLkgfnhPz5JlxgiLSxwKHkEAgdcCnnhRO9+wafiuMucCAQQQeCUQJTpXZUxTG47EWwXapjZBIMXDh4rZmxadFScuiHfvHqVNEk0tqguhIoCAAQKMsDCgCISAAAJGC5w1tVFn3U9pamN0pbYbHE1ttuu/7u6jviAywmLd48DzCCDQCjDCgnOAAAIIrCewamrT5FIkNLVZj86pp2lqY0e5R3tBnM/1pI6ztKr4WJgdR5EoETBDIA5VUC0YYWFGNYgCAQRsFPB8XXpBnAU0tbGxfIPFTFObwajX3miUF0RGWKx9DngBAQREJPT8pKkVH0fnNCCAAAIdCKya2jS57yd527ikgyVZYoQCNLUxr6ijuiC2IyyePv02LRlhYd5JIyIEDBdoB983tYoND5PwEEAAASsFItG5UnWu1HRhZQIEPYgATW0GYb5wk9FcEPf3v4zD9P1UtPIvzJoHEEAAge8EGGHBUUAAAQSGE1g1tclzpSY0tRmO3bqd2qY2IlI8etTO3lTaugQsD3gUF0RGWFh+CgkfgS0JMMJiS/BsiwACzgu8bmpT50Eway8D/CDwMwGa2mznUFh/Qbx7/yhtCkZYbOf4sCsC9gowwsLe2hE5AgiMSyAIo8KPJFO58PHTcZW202xoatMp51sXs/aCePPBf4W/Ovr3NPS9cDgudkIAAdsFAl951cKb+Z7izw7bi0n8CCAwKoGgiZZJInlRSDsqg48Vjqq63SXTNrUpCilu3pTi4EDR/Kg72u9XsvKCyAiLHk4CSyLggEDgeaGvvFlViedAuqSIAAIIWCngeaJjFeWeJ3ldy9LKJAh6EAGa2vTDbN0Fcf/jf10L62SnHw5WRQCBsQowwmKslSUvBBAYs0Db1CYIJGsaKcacJ7ldTYCmNlfz++nb1lwQVyMsJC39LOmWgNUQQGDsAoywGHuFyQ8BBBwQqONJlKtS2u6ntQP5kuIGAm1TG62lePZMyidPFM2PNjBsX7Higri/r+MwPWWExYZF5jUEXBVghIWrlSdvBBAYs0AQ6sKv4kwpmtqMuc5Xzc3zZPHihZSPH6vyqmu59r7xF8T5/Oud0p9dc60w5IsAAlcT0LUXB543u9oqvI0AAgggYKpA0OilJHEuNLUxtURGxEVTm/XLYPQF8e59nTZFNl0/Ld5AAAGnBWp/6nuKj6M7fQhIHgEEXBFYNbXRuefFNLVxpegb5klTm8vBGXlBfPBAh8+OThhhcbka8hQCCHwn0I6wOOtSumSEBYcCAQQQcFEgEr0IgpimNi4Wf42caWrzdizjLoiMsFjjdPMoAgh8L8AICw4DAggggMAPBOpYNblSCU1tOBZvFKCpzfk0Rl0Q9z/W18I6Y4QF/yAjgMBaAoywWIuLhxFAAAGnBGhq41S5N06Wpjav6Yy4IM7n2q+q47SO/XjjqvIiAgg4J9DUSoVnjWhU5FzyJIwAAgggsJbAqqlNk0sxyYNA9Fov87AzAkpJfXws5c2bUhwcqMaZxH+Q6NYviPuf6jj8hhEWLh4+ckbgKgJNrYJ2vqGI+FdZh3cRQAABBNwSaJvaiNK59uo8rqdLt7In23UETk+lfO89KR4+VE6dk61eEBlhsc4R5VkEEHglwAgLzgICCCCAQBcCq6Y2TdY0k6KL9VhjnAKvm9ooJ87Jli6IWn30h5ep34STcR4jskIAgb4E4sCfVktGWPTly7oIIICAiwKeF1Wxktz3JW/n5rloQM4XC7jS1GbwC2I7wuLo6CQtfS+8uAw8gQACCKwEGGHBSUAAAQQQGEIgSqJclZIrJYsh9mMPOwXG3NRm0Avi7dtfTdVsL7XzGBA1AghsS8ATL2rnGzaNDPpn1rbyZV8EEEAAge0LRBIt1FRyVUg7KoMfBM4VGGNTm8H+Y4sRFvxThQACmwh42p8oUXwcfRM83kEAAQQQuLJA00jT/lZRCmm7n1ZXXpAFRiswlqY2vV8Qz0ZYTI7TesEIi9H+00BiCPQgwAiLHlBZEgEEEEDgSgITX5dBEGfLpZRXWoiXRy1ge1ObXi+It+7/PZmevpu23x0a9SkgOQQQ6FSAERadcrIYAggggEDHAp4nVawimtp07Dq25V41tSkKKQ4PVW1Lfr1dEOdzvVP62TVbIIgTAQTMEIhDL64WXjvfkB8EEEAAAQSMF4gSnasypqmN8ZXaboBtU5vF4uyiaHzzox4uiIyw2O7xY3cE7BVoB983tYrtzYDIEUAAAQRcFThraqPOup/S1MbVQ3CJvG1oatPpBXE+fxqJ/Mde6WeMsLjEAeERBBBYCShRfqD8tktpgAkCCCCAAAI2C6ya2jS5FAlNbWwu5ACxm9rUprML4u3beqpmGSMsBjhMbIHAmAQYYTGmapILAggggMAPBTxfl17QZMFyQlMbjsYbBfJcqjSV4tEjVZjA1MkFcT5/sVf6Md8ZMqGixICARQKMsLCoWISKAAIIILCxwKqpTZP7fpJXlTQbL8SLoxYwpanNlS6IqxEWktaLjO8Mjfq4khwC3QowwqJbT1ZDAAEEELBHIBKdK1XnSk2Nb1Zij+r4It1mU5uNL4i37utkenrKCIvxnUcyQqBXgcDzQn/pzSpPGH/TqzSLI4AAAgiYLLBqapPnSk1oamNyobYcW9vUZrmU4sYNKQ8O1CC/fd7ognjnzvNdmU53t+zF9gggYJlA6PlJU6upZWETLgIIIIAAAr0JvGpqE1RJJiLWzMrrDYSF3ygwVFObNS+IjLDgzCKAwGYCjLDYzI23EEAAAQTcEQjCqPAjyVQufPzUnbKvnWnfTW0ufUGcz3VUJSdpvfRoQ792GXkBAXcFGGHhbu3JHAEEEEBgM4GgiZaSSC6FtKMy9Gar8NbYBfpqanOpC+LtB3qqvmWExdgPGfkh0LUAIyy6FmU9BBBAAAGXBDxPdKyi3PMkr2tZupQ7ua4n0GVTmwsviIywWK84PI0AAt8J1P7U91SCBwIIIIAAAghcXaBtahMEkjWNGDEr7+oZsUIfAl00tXnjBfHWLR3svn+cKu1HfQTPmgggME6BwFeev2i7lKpwnBmSFQIIIIAAAlsVqONJlKtS2u6nNLXZainM3ryqpLh+XcqHD9Vav30+94J4/75OvmaEhdkVJzoEDBQ4G2GhvFlVMcLCwPIQEgIIIIDAyASCUBd+FWdK0dRmZKXtNJ2qkuVsJuWjR+pSv33+2QWRERad1oPFEHBGgBEWzpSaRBFAAAEEDBMIGr2UJKapjWF1MS2cohC9syNFUUhxeKje+Nvn1xfEgwPvo//+zz2/ySamJUM8CCBgtgAjLMyuD9EhgAACCLghsGpqo3PPi2lq40bJN87ybU1tzi6IjLDY2JYXEXBaoKlV0F4ORcR3GoLkEUAAAQQQMEwgEr0IgpimNobVxbRwzmtqoz68989ZstzdMy1Y4kEAAbMFdO3Fgee1l0N+EEAAAQQQQMBcgTpWTa5UQlMbc2tkRGSvmtr8f0k503PA5tvdAAAAAElFTkSuQmCC",ua={class:"flex-1 font-semibold text-base text-[var(--color-text-1)] overflow-hidden text-ellipsis whitespace-nowrap"},fa={class:"flex items-center gap-3 ml-3"},pa={class:"cursor-pointer text-[var(--color-text-2)] flex items-center justify-center transition-colors duration-200 text-base hover:text-[var(--color-text-1)]"},ma={key:1,class:"flex items-center justify-end gap-2"},at=e.defineComponent({__name:"Modal",props:{modelValue:{type:Boolean,default:!1},title:{default:"Title"},width:{default:"50%"},top:{},zIndex:{default:1e3},helpMessage:{default:""},closeOnEsc:{type:Boolean,default:!0},fullscreen:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},okText:{},cancelText:{},okLoading:{type:Boolean},confirmLoading:{type:Boolean},hideCancel:{type:Boolean},okButtonProps:{},cancelButtonProps:{},onVisibleChange:{},onBeforeOk:{},onBeforeCancel:{},onClose:{},onOk:{}},emits:["update:modelValue","close","ok","fullscreen-change"],setup(t,{expose:n,emit:r}){const{t:o}=te.useI18n(),i=t,l=r,c=e.useAttrs(),u=e.ref(!1),f=e.computed({get:()=>i.modelValue,set:k=>l("update:modelValue",k)}),g=e.computed(()=>i.helpMessage||o("common.modal.helpTip")),y=e.ref(!1),m=()=>{y.value=!y.value,l("fullscreen-change",y.value)},b=async()=>{const k=i.onBeforeCancel;typeof k=="function"&&await k()===!1||(y.value=!1,f.value=!1,l("close"))},C=b,v=async()=>{const k=i.onBeforeOk;if(typeof k=="function")try{u.value=!0,await k()!==!1&&(y.value=!1,l("ok"),f.value=!1)}catch(E){console.error(E)}finally{u.value=!1}else y.value=!1,l("ok"),f.value=!1};return n({toggleMaximize:m}),(k,E)=>(e.openBlock(),e.createBlock(e.unref(R.Modal),e.mergeProps({visible:f.value,"onUpdate:visible":E[1]||(E[1]=$=>f.value=$),title:t.title,width:t.width,top:t.top,"z-index":t.zIndex,"mask-closable":t.closeOnClickModal,"esc-to-close":t.closeOnEsc,fullscreen:y.value,closable:!1},k.$attrs,{class:"k-modal-custom",style:{"--modal-bg-image":`url(${e.unref(da)})`},onClick:E[2]||(E[2]=e.withModifiers(()=>{},["stop"])),onMousedown:E[3]||(E[3]=e.withModifiers(()=>{},["stop"]))}),{title:e.withCtx(()=>[e.createElementVNode("div",{class:"flex items-center justify-between w-full",onDblclick:E[0]||(E[0]=$=>i.fullscreen&&m())},[e.createElementVNode("div",ua,[e.renderSlot(k.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),e.createElementVNode("div",fa,[g.value?(e.openBlock(),e.createBlock(e.unref(R.Tooltip),{key:0,content:g.value},{default:e.withCtx(()=>[e.createElementVNode("div",pa,[e.createVNode(e.unref(Sr))])]),_:1},8,["content"])):e.createCommentVNode("",!0),i.fullscreen?(e.openBlock(),e.createElementBlock("div",{key:1,class:"cursor-pointer text-[var(--color-text-2)] flex items-center justify-center transition-colors duration-200 text-base hover:text-[var(--color-text-1)]",onClick:e.withModifiers(m,["stop"])},[y.value?(e.openBlock(),e.createBlock(e.unref(aa),{key:0})):(e.openBlock(),e.createBlock(e.unref(ca),{key:1}))])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"cursor-pointer text-[var(--color-text-2)] flex items-center justify-center transition-colors duration-200 text-base hover:text-[rgb(var(--red-6))]",onClick:e.withModifiers(b,["stop"])},[e.createVNode(e.unref(Cr))])])],32)]),footer:e.withCtx(()=>[k.$slots.footer?e.renderSlot(k.$slots,"footer",{key:0}):(e.openBlock(),e.createElementBlock("div",ma,[e.renderSlot(k.$slots,"insertFooter"),e.unref(c).hideCancel?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(R.Button),e.mergeProps({key:0},e.unref(c).cancelButtonProps,{onClick:e.unref(C)}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(c).cancelText||e.unref(o)("common.modal.cancel")),1)]),_:1},16,["onClick"])),e.renderSlot(k.$slots,"centerFooter"),e.unref(c).hideOk?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(R.Button),e.mergeProps({key:1,type:"primary",loading:u.value||e.unref(c).okLoading||e.unref(c).confirmLoading},e.unref(c).okButtonProps,{onClick:v}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(c).okText||e.unref(o)("common.modal.confirm")),1)]),_:1},16,["loading"])),e.renderSlot(k.$slots,"appendFooter")]))]),default:e.withCtx(()=>[e.renderSlot(k.$slots,"default")]),_:3},16,["visible","title","width","top","z-index","mask-closable","esc-to-close","fullscreen","style"]))}});class ha{state;constructor(n={}){this.state=e.reactive({modelValue:!1,...n})}open=()=>{this.setState({modelValue:!0}),this.state.onVisibleChange?.(!0)};close=()=>{this.setState({modelValue:!1}),this.state.onVisibleChange?.(!1)};setProps=n=>{this.setState(n)};setState(n){if(typeof n=="function"){const r=n(this.state);Object.assign(this.state,r)}else Object.assign(this.state,n);return this}}function ga(t={}){const n=new ha(t);return[e.defineComponent({name:"SunnyConnectedModal",inheritAttrs:!1,setup(o,{attrs:i,slots:l}){return()=>e.h(at,{...n.state,...i,"onUpdate:modelValue":c=>{n.setState({modelValue:c}),n.state.onVisibleChange?.(c),typeof i["onUpdate:modelValue"]=="function"&&i["onUpdate:modelValue"](c)}},l)}}),n]}const ya=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),ba={key:0,class:"flex items-center justify-center min-h-[400px] p-8"},Ca={class:"max-w-[520px] w-full text-center"},Sa={class:"mb-3 text-lg font-semibold text-[var(--color-text-1)]"},wa={class:"mb-6 text-sm text-[var(--color-text-2)] leading-relaxed"},ka={key:0,class:"mt-6 mb-6 text-left bg-[var(--color-fill-1)] border border-[var(--color-border-2)] rounded-md overflow-hidden"},Aa={class:"flex items-center gap-2 px-4 py-3 bg-[var(--color-fill-2)] border-b border-[var(--color-border-2)] text-sm font-medium text-[var(--color-text-2)]"},Ea={class:"p-4"},xa={class:"mb-3"},va={class:"block mb-1 text-xs text-[var(--color-text-3)]"},Ba={class:"p-2 bg-[var(--color-fill-1)] rounded text-xs text-[var(--color-text-2)] font-mono break-all"},Pa={class:"block mb-1 text-xs text-[var(--color-text-3)]"},Na={class:"mt-2 p-3 bg-[var(--color-fill-2)] rounded text-xs text-[var(--color-text-2)] font-mono leading-relaxed overflow-x-auto whitespace-pre-wrap break-all max-h-[240px]"},Ta={class:"flex gap-3 justify-center flex-wrap"},Va=e.defineComponent({name:"ErrorBoundary",__name:"ErrorBoundary",props:{showDetails:{type:Boolean},errorIcon:{},errorTitle:{},errorMessage:{},showRetry:{type:Boolean,default:!0},showRefresh:{type:Boolean,default:!0},showReport:{type:Boolean,default:!0}},emits:["error","retry","report"],setup(t,{emit:n}){const r=t,o=n,i=e.shallowRef(!1),l=e.shallowRef(null),c=e.computed(()=>({title:r.errorMessage||te.$t("error.title"),desc:te.$t("error.message"),retry:te.$t("error.retry"),refresh:te.$t("error.refresh"),report:te.$t("error.reportError"),details:te.$t("error.details"),errorMessage:te.$t("error.errorMessage"),errorStack:te.$t("error.errorStack")}));e.onErrorCaptured((y,m,b)=>{if(i.value)return!1;const C=y instanceof Error?y:new Error(String(y));return i.value=!0,l.value=e.markRaw(C),!1});function u(){i.value=!1,l.value=null,o("retry")}function f(){window.location.reload()}function g(){l.value&&o("report",l.value)}return(y,m)=>i.value?(e.openBlock(),e.createElementBlock("div",ba,[e.createElementVNode("div",Ca,[m[1]||(m[1]=e.createStaticVNode('<div class="flex justify-center mb-6 text-[var(--color-danger-6)]"><svg viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg" class="w-12 h-12"><circle cx="24" cy="24" r="23" stroke="currentColor" stroke-width="1.5"></circle><path d="M24 16v8M24 28v4" stroke="currentColor" stroke-width="2" stroke-linecap="round"></path><circle cx="24" cy="36" r="1.5" fill="currentColor"></circle></svg></div>',1)),e.createElementVNode("div",Sa,e.toDisplayString(c.value.title),1),e.createElementVNode("div",wa,e.toDisplayString(c.value.desc),1),l.value?(e.openBlock(),e.createElementBlock("div",ka,[e.createElementVNode("div",Aa,[m[0]||(m[0]=e.createElementVNode("svg",{viewBox:"0 0 16 16",fill:"currentColor",class:"w-3.5 h-3.5 text-[var(--color-warning-6)]"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zM9 13a1 1 0 11-2 0 0 1 1 0 012 0zM9 11a1 1 0 01-2 0V7a1 1 0 012 0v4z","clip-rule":"evenodd"})],-1)),e.createElementVNode("span",null,e.toDisplayString(c.value.details),1)]),e.createElementVNode("div",Ea,[e.createElementVNode("div",xa,[e.createElementVNode("span",va,e.toDisplayString(c.value.errorMessage),1),e.createElementVNode("div",Ba,e.toDisplayString(l.value?.message),1)]),e.createElementVNode("div",null,[e.createElementVNode("span",Pa,e.toDisplayString(c.value.errorStack),1),e.createElementVNode("pre",Na,e.toDisplayString(l.value?.stack),1)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ta,[t.showRetry?(e.openBlock(),e.createElementBlock("button",{key:0,class:"px-4 py-2 bg-[rgb(var(--primary-6))] text-white rounded hover:bg-[rgb(var(--primary-7))]",onClick:u},e.toDisplayString(c.value.retry),1)):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:1,class:"px-4 py-2 bg-[var(--color-bg-5)] text-[var(--color-text-1)] rounded hover:bg-[var(--color-bg-4)] border border-[var(--color-border)]",onClick:f},e.toDisplayString(c.value.refresh),1)):e.createCommentVNode("",!0),t.showReport?(e.openBlock(),e.createElementBlock("button",{key:2,class:"px-4 py-2 bg-[var(--color-danger-6)] text-white rounded hover:bg-[var(--color-danger-7)]",onClick:g},e.toDisplayString(c.value.report),1)):e.createCommentVNode("",!0)])])])):e.renderSlot(y.$slots,"default",{key:1})}});function kr(t){const{spinning:n,minLoadingTime:r=50}=t,o=e.ref(!1),i=e.ref(!1),l=e.ref(),c=e.computed(()=>{const f=typeof r=="number"?r:r.value;return f<0?(console.warn("[SunnyLoading] minLoadingTime 不能为负数,已自动设置为 0"),0):f>1e4?(console.warn("[SunnyLoading] minLoadingTime 不应超过 10000ms,已自动限制"),1e4):f});e.watch(n,f=>{if(clearTimeout(l.value),!f){o.value=!1;return}l.value=setTimeout(()=>{i.value=!0,requestAnimationFrame(()=>{o.value=!0})},c.value)},{immediate:!0}),e.onUnmounted(()=>{clearTimeout(l.value)});function u(){o.value||(i.value=!1)}return{isVisible:o,shouldRender:i,handleTransitionEnd:u}}const Ma=["aria-live","aria-busy"],Ia=["aria-label"],Ra={key:0,class:"mt-4 text-sm text-[rgb(var(--primary-6))]"},$a=e.defineComponent({name:"SunnyLoading",__name:"SunnyLoading",props:{class:{},minLoadingTime:{default:50},spinning:{type:Boolean,default:!1},text:{default:""}},setup(t){const n=t,r=e.computed(()=>{const c=n.minLoadingTime??50;return c<0?(console.warn("[SunnyLoading] minLoadingTime 不能为负数,已自动设置为 0"),0):c>1e4?(console.warn("[SunnyLoading] minLoadingTime 不应超过 10000ms,已自动限制"),1e4):c}),{isVisible:o,shouldRender:i,handleTransitionEnd:l}=kr({spinning:e.computed(()=>n.spinning),minLoadingTime:r});return(c,u)=>(e.openBlock(),e.createElementBlock("output",{class:e.normalizeClass(e.unref(H.cn)("absolute left-0 top-0 z-100 flex size-full flex-col items-center justify-center","transition-all duration-500 ease-in-out","bg-[var(--color-bg-2)]/80 backdrop-blur-sm",{"invisible opacity-0":!e.unref(o)},n.class)),"aria-live":t.spinning?"polite":"off","aria-busy":t.spinning,onTransitionend:u[0]||(u[0]=(...f)=>e.unref(l)&&e.unref(l)(...f))},[e.unref(i)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(c.$slots,"icon",{},()=>[e.createElementVNode("div",{class:"loading-spinner","aria-label":t.text||"加载中"},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(4,f=>e.createElementVNode("span",{key:f,class:"dot","aria-hidden":"true"})),64))],8,Ia)],!0),t.text?(e.openBlock(),e.createElementBlock("div",Ra,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default",{},void 0,!0)],64)):e.createCommentVNode("",!0)],42,Ma))}}),Ue=(t,n)=>{const r=t.__vccOpts||t;for(const[o,i]of n)r[o]=i;return r},Oa=Ue($a,[["__scopeId","data-v-4642fea4"]]),Fa=["aria-live","aria-busy"],ja={key:0,class:"spinner","aria-hidden":"true"},Da=Ue(e.defineComponent({name:"SunnySpinner",__name:"SunnySpinner",props:{class:{},minLoadingTime:{default:50},spinning:{type:Boolean,default:!1}},setup(t){const n=t,r=e.computed(()=>{const c=n.minLoadingTime??50;return c<0?(console.warn("[SunnySpinner] minLoadingTime 不能为负数,已自动设置为 0"),0):c>1e4?(console.warn("[SunnySpinner] minLoadingTime 不应超过 10000ms,已自动限制"),1e4):c}),{isVisible:o,shouldRender:i,handleTransitionEnd:l}=kr({spinning:e.computed(()=>n.spinning),minLoadingTime:r});return(c,u)=>(e.openBlock(),e.createElementBlock("output",{class:e.normalizeClass(e.unref(H.cn)("absolute left-0 top-0 z-100 flex size-full items-center justify-center","transition-all duration-500 ease-in-out","bg-[var(--color-bg-2)]/80 backdrop-blur-sm",{"invisible opacity-0":!e.unref(o)},n.class)),"aria-label":"加载中","aria-live":t.spinning?"polite":"off","aria-busy":t.spinning,onTransitionend:u[0]||(u[0]=(...f)=>e.unref(l)&&e.unref(l)(...f))},[e.unref(i)?(e.openBlock(),e.createElementBlock("div",ja,[...u[1]||(u[1]=[e.createElementVNode("div",{class:"cube"},null,-1),e.createElementVNode("div",{class:"shadow"},null,-1)])])):e.createCommentVNode("",!0)],42,Fa))}}),[["__scopeId","data-v-033b7571"]]),La=["src"],zt=e.defineComponent({name:"SunnyIcon",__name:"icon",props:{fallback:{type:Boolean},icon:{type:[Function,String]}},setup(t){const n=t,r=e.computed(()=>H.isString(n.icon)&&H.isHttpUrl(n.icon)),o=e.computed(()=>{const{icon:i}=n;return!H.isString(i)&&(H.isObject(i)||H.isFunction(i))});return(i,l)=>o.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),e.normalizeProps(e.mergeProps({key:0},i.$attrs)),null,16)):r.value?(e.openBlock(),e.createElementBlock("img",e.mergeProps({key:1,src:t.icon},i.$attrs),null,16,La)):t.icon?(e.openBlock(),e.createBlock(e.unref(gr.IconifyIcon),e.mergeProps({key:2},i.$attrs,{icon:t.icon}),null,16,["icon"])):t.fallback?(e.openBlock(),e.createBlock(e.unref(gr.IconDefault),e.normalizeProps(e.mergeProps({key:3},i.$attrs)),null,16)):e.createCommentVNode("",!0)}}),_a=e.defineComponent({name:"SunnyScrollArea",__name:"ScrollArea",props:{type:{},dir:{},scrollHideDelay:{},asChild:{type:Boolean},as:{},class:{},onScroll:{type:Function,default:()=>{}}},setup(t){const n=t,r=e.computed(()=>{const{class:o,onScroll:i,...l}=n;return l});return(o,i)=>(e.openBlock(),e.createBlock(e.unref(Ge.ScrollAreaRoot),e.mergeProps(r.value,{class:e.unref(H.cn)("relative overflow-hidden",n.class)}),{default:e.withCtx(()=>[e.createVNode(e.unref(Ge.ScrollAreaViewport),{"as-child":"",class:"h-full w-full rounded-[inherit] focus:outline-none",onScroll:t.onScroll},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3},8,["onScroll"]),e.createVNode(e.unref(Ar)),e.createVNode(e.unref(Ge.ScrollAreaCorner))]),_:3},16,["class"]))}}),Ar=e.defineComponent({name:"SunnyScrollBar",__name:"ScrollBar",props:{orientation:{default:"vertical"},forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(t){const n=t,r=e.computed(()=>{const{class:o,...i}=n;return i});return(o,i)=>(e.openBlock(),e.createBlock(e.unref(Ge.ScrollAreaScrollbar),e.mergeProps(r.value,{class:e.unref(H.cn)("flex touch-none select-none transition-colors",t.orientation==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",t.orientation==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",n.class)}),{default:e.withCtx(()=>[e.createVNode(e.unref(Ge.ScrollAreaThumb),{class:"relative flex-1 rounded-full bg-border"})]),_:1},16,["class"]))}}),Er=1,za=Ue(e.defineComponent({name:"SunnyScrollbar",__name:"scrollbar",props:{class:{default:""},horizontal:{type:Boolean,default:!1},scrollBarClass:{},shadow:{type:Boolean,default:!1},shadowBorder:{type:Boolean,default:!1},shadowBottom:{type:Boolean,default:!0},shadowLeft:{type:Boolean,default:!1},shadowRight:{type:Boolean,default:!1},shadowTop:{type:Boolean,default:!0}},emits:["scrollAt"],setup(t,{emit:n}){const r=t,o=n,i=e.ref(!0),l=e.ref(!1),c=e.ref(!1),u=e.ref(!0),f=e.computed(()=>r.shadow&&r.shadowTop),g=e.computed(()=>r.shadow&&r.shadowBottom),y=e.computed(()=>r.shadow&&r.shadowLeft),m=e.computed(()=>r.shadow&&r.shadowRight),b=e.computed(()=>({"both-shadow":!u.value&&!l.value&&y.value&&m.value,"left-shadow":!u.value&&y.value,"right-shadow":!l.value&&m.value}));function C(v){const k=v.target,E=k?.scrollTop??0,$=k?.scrollLeft??0,M=k?.clientHeight??0,A=k?.clientWidth??0,O=k?.scrollHeight??0,B=k?.scrollWidth??0;i.value=E<=0,u.value=$<=0,c.value=Math.abs(E)+M>=O-Er,l.value=Math.abs($)+A>=B-Er,o("scrollAt",{bottom:c.value,left:u.value,right:l.value,top:i.value})}return(v,k)=>(e.openBlock(),e.createBlock(e.unref(_a),{class:e.normalizeClass([[e.unref(H.cn)(r.class),b.value],"sunny-scrollbar relative"]),"on-scroll":C},{default:e.withCtx(()=>[f.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([{"opacity-100":!i.value,"border-t border-border":t.shadowBorder&&!i.value},"scrollbar-top-shadow pointer-events-none absolute top-0 z-10 h-12 w-full opacity-0 transition-opacity duration-300 ease-in-out will-change-[opacity]"])},null,2)):e.createCommentVNode("",!0),e.renderSlot(v.$slots,"default",{},void 0,!0),g.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass([{"opacity-100":!i.value&&!c.value,"border-b border-border":t.shadowBorder&&!i.value&&!c.value},"scrollbar-bottom-shadow pointer-events-none absolute bottom-0 z-10 h-12 w-full opacity-0 transition-opacity duration-300 ease-in-out will-change-[opacity]"])},null,2)):e.createCommentVNode("",!0),t.horizontal?(e.openBlock(),e.createBlock(e.unref(Ar),{key:2,class:e.normalizeClass(t.scrollBarClass),orientation:"horizontal"},null,8,["class"])):e.createCommentVNode("",!0)]),_:3},8,["class"]))}}),[["__scopeId","data-v-299d4e0d"]]),Ua=e.defineAsyncComponent(()=>Promise.resolve().then(()=>ai));$e.defineRule("required",t=>t==null||t===""||Array.isArray(t)&&t.length===0?"此项必填":!0);const Qa={Input:R.Input,InputPassword:R.InputPassword,InputNumber:R.InputNumber,Textarea:R.Textarea,Select:R.Select,Checkbox:R.Checkbox,CheckboxGroup:R.CheckboxGroup,Radio:R.Radio,RadioGroup:R.RadioGroup,Switch:R.Switch,DatePicker:R.DatePicker,RangePicker:R.RangePicker,TimePicker:R.TimePicker,Upload:R.Upload,Rate:R.Rate,Slider:R.Slider,Cascader:R.Cascader,TreeSelect:R.TreeSelect,SunnySelect:R.Select,SunnyCheckbox:R.Checkbox,SunnyRadio:R.Radio,SunnySwitch:R.Switch,SunnyDatePicker:R.DatePicker,SunnyTimePicker:R.TimePicker,SunnyUpload:R.Upload,SunnyBusinessSearch:Ua},Se={};function Wa(t){const{config:n,defineRules:r}=t,{disabled:o=!1,disabledOnChangeListener:i=!0,disabledOnInputListener:l=!0,emptyStateValue:c=void 0,businessSearchAdapter:u,customizeSelectAdapter:f,selectOptionsAdapter:g,permissionOptionsAdapter:y,uploadConfig:m,apiPrefix:b}=n||{};if(Object.assign(Se,{disabled:o,disabledOnChangeListener:i,disabledOnInputListener:l,emptyStateValue:c,businessSearchAdapter:u,customizeSelectAdapter:f,selectOptionsAdapter:g,permissionOptionsAdapter:y,uploadConfig:m,apiPrefix:b}),r)for(const C of Object.keys(r))$e.defineRule(C,r[C])}const qa={class:"sunny-file-upload"},Ja={class:"font-bold text-gray-700 mb-2"},Ha={class:"flex flex-wrap items-center text-sm mb-3 select-none"},Ya={class:"cursor-pointer text-blue-600 hover:text-blue-700 flex items-center mr-4 transition-colors"},Ga={class:"text-xs text-blue-600"},Ka={class:"text-xs text-gray-400"},Xa={class:"border border-dashed border-gray-300 rounded-lg p-4 transition-all duration-300"},Za={class:"grid grid-cols-1 sm:grid-cols-2 gap-4"},es={class:"flex-1 min-w-0 pr-8"},ts=["title"],rs={class:"flex items-center text-xs text-gray-500"},ns={class:"mr-3 min-w-[3em]"},os={class:"ml-2 w-8 text-right"},xr=1024,as=e.defineComponent({__name:"index",props:{modelValue:{default:""},action:{default:void 0},delAction:{default:void 0},accept:{default:void 0},limit:{default:void 0},maxSize:{default:void 0},storeType:{default:void 0},s3FileDir:{default:void 0},preSigned:{default:void 0},preSignedExpire:{default:void 0},readonly:{type:Boolean,default:!1},showEncrypt:{type:Boolean,default:!1},encryptFile:{type:Boolean,default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:n}){const r=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],o=t,i=n,l=e.ref(!0),c=e.ref(!1),u=e.ref([]),f=e.ref(!1),g=e.computed(()=>{const P=Se.uploadConfig||{};return{action:o.action||P.action||"",delAction:o.delAction||P.delAction||"",accept:o.accept??P.accept??".csv,.pdf,.xls,.xlsx",limit:o.limit??P.limit??10,maxSize:o.maxSize??P.maxSize??10,storeType:o.storeType??P.storeType??"amazon",s3FileDir:o.s3FileDir??P.s3FileDir??"",preSigned:o.preSigned??P.preSigned??"",preSignedExpire:o.preSignedExpire??P.preSignedExpire??"",encryptFile:o.encryptFile??P.encryptFile??!1}});g.value.action||console.warn("[SunnyUpload] Missing required config: action. Please provide via props or configure globally using setupBusinessForm()."),g.value.delAction||console.warn("[SunnyUpload] Missing required config: delAction. Please provide via props or configure globally using setupBusinessForm().");const y=e.computed(()=>u.value.every(P=>!!P.url)),m=e.computed(()=>u.value.filter(P=>P.checked).length);e.watch(()=>o.modelValue,P=>{try{u.value=JSON.parse(P||"[]")}catch(S){console.warn("Failed to parse modelValue:",S),u.value=[]}},{immediate:!0,deep:!0});const b=P=>P,C=P=>{if(P===0)return"0 B";const S=Math.floor(Math.log(P)/Math.log(xr));return(P/Math.pow(xr,S)).toPrecision(3)+" "+r[S]},v=P=>{const S=P.type||"",T=(P.name||"").split(".").pop()?.toLowerCase()||"",I={"vscode-icons:file-type-excel":["xls","xlsx","csv"],"vscode-icons:file-type-powerpoint":["ppt","pptx"],"vscode-icons:file-type-text":["txt"],"vscode-icons:file-type-word":["doc","docx"],"vscode-icons:file-type-zip":["zip","rar","7z","tar","gz"],"vscode-icons:file-type-pdf":["pdf"]};for(const[U,D]of Object.entries(I))if(D.includes(T)||D.some(L=>S.includes(L)))return U;return S.includes("excel")||S.includes("spreadsheet")?"vscode-icons:file-type-excel":S.includes("powerpoint")||S.includes("presentation")?"vscode-icons:file-type-powerpoint":S.includes("text/plain")?"vscode-icons:file-type-text":S.includes("word")||S.includes("document")?"vscode-icons:file-type-word":S.includes("zip")||S.includes("compressed")?"vscode-icons:file-type-zip":S.includes("pdf")?"vscode-icons:file-type-pdf":"vscode-icons:default-file"},k=()=>{const P=JSON.stringify(u.value);i("update:modelValue",P),i("change",P)},E=(P,S)=>{if(S.status!=="init")return;const h=g.value;if(u.value.length>=h.limit){R.Message.error(`最多上传${h.limit}个文件`);return}const T=h.maxSize*1024*1024;if(S.file.size>T){R.Message.error(`文件最大限制${C(T)}`);return}u.value.push({uid:S.uid,name:S.name,size:S.file?.size,type:S.file?.type,file:S.file,percentage:0,checked:!1})},$=async()=>{if(u.value.length===0)return;const P=g.value,S=u.value.filter(h=>!h.url);for(const h of S){const T=new FormData;T.append("fileName",h.file),T.append("encryptFile",c.value?"1":"0"),P.storeType&&T.append("storeType",P.storeType),P.s3FileDir&&T.append("s3FileDir",P.s3FileDir),P.preSigned&&T.append("preSigned",P.preSigned),P.preSignedExpire&&T.append("preSignedExpire",P.preSignedExpire);try{const I=await Ve.post(P.action,T,{onUploadProgress:D=>{if(D.total){const L=Math.floor(D.loaded/D.total*100);h.percentage=L}}}),{data:U}=I;U.code===200?(Object.assign(h,U.result),R.Message.success(U.message||"上传成功")):(R.Message.error(U.message||"上传失败"),M(h.uid))}catch{R.Message.error("上传失败"),M(h.uid)}}k()},M=P=>{const S=u.value.findIndex(h=>h.uid===P);S>-1&&u.value.splice(S,1)},A=(P,S)=>{const h=g.value;P.url?R.Modal.confirm({title:b("提示"),content:b("是否删除该文件?"),onOk:()=>{Ve.post(h.delAction,{filePathList:[P.url],storeType:h.storeType}).then(T=>{const{data:I}=T;R.Message[I.success?"success":"error"](I.message),I.code===200&&(u.value.splice(S,1),k())})}}):(u.value.splice(S,1),k())},O=()=>{const P=u.value.every(S=>S.checked);u.value.forEach(S=>S.checked=!P)},B=()=>{const P=g.value,S=u.value.filter(h=>h.checked);S.length!==0&&R.Modal.confirm({title:b("提示"),content:b("是否删除选中的文件?"),onOk:()=>{f.value=!0;const h=S.map(T=>T.url).filter(Boolean);h.length>0?Ve.post(P.delAction,{filePathList:h,storeType:P.storeType}).then(T=>{const{data:I}=T;R.Message[I.success?"success":"error"](I.message),I.code===200&&(u.value=u.value.filter(U=>!U.checked),k())}).finally(()=>{f.value=!1}):(u.value=u.value.filter(T=>!T.checked),k(),f.value=!1)}})};return(P,S)=>(e.openBlock(),e.createElementBlock("div",qa,[e.createElementVNode("div",Ja,e.toDisplayString(b("附件")),1),e.withDirectives(e.createElementVNode("div",Ha,[e.createVNode(e.unref(R.Upload),{"show-file-list":!1,"auto-upload":!1,multiple:"",accept:g.value.accept,onChange:E},{"upload-button":e.withCtx(()=>[e.createElementVNode("span",Ya,[e.createVNode(e.unref(Xo),{class:"mr-1 w-4 h-4"}),e.createTextVNode(" "+e.toDisplayString(b("选择附件")),1)])]),_:1},8,["accept"]),e.createElementVNode("span",{class:e.normalizeClass(["flex items-center mr-4 transition-colors",y.value?"text-gray-300 cursor-not-allowed":"cursor-pointer text-gray-600 hover:text-gray-800"]),onClick:S[0]||(S[0]=h=>!y.value&&$())},[e.createVNode(e.unref(Ho),{class:"mr-1 w-4 h-4"}),e.createTextVNode(" "+e.toDisplayString(b("上传附件")),1)],2),e.createElementVNode("span",{class:"cursor-pointer text-blue-600 hover:text-blue-700 mr-4 transition-colors",onClick:O},e.toDisplayString(b("全选")),1),e.createElementVNode("span",{class:e.normalizeClass(["mr-4 transition-colors",m.value===0?"text-gray-300 cursor-not-allowed":"cursor-pointer text-gray-500 hover:text-red-500"]),onClick:B},e.toDisplayString(b("删除")),3),t.showEncrypt?(e.openBlock(),e.createBlock(e.unref(R.Checkbox),{key:0,modelValue:c.value,"onUpdate:modelValue":S[1]||(S[1]=h=>c.value=h),class:"mr-4"},{default:e.withCtx(()=>[e.createElementVNode("span",Ga,e.toDisplayString(b("是否加密")),1)]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),e.createElementVNode("span",Ka," ("+e.toDisplayString(b("单个文件最大"))+e.toDisplayString(g.value.maxSize)+"MB,"+e.toDisplayString(b("最多上传"))+e.toDisplayString(g.value.limit)+e.toDisplayString(b("个"))+") ",1),e.createElementVNode("span",{class:"ml-auto cursor-pointer text-blue-600 text-xs hover:text-blue-700 transition-colors",onClick:S[2]||(S[2]=h=>l.value=!l.value)},e.toDisplayString(l.value?b("隐藏"):b("展开")),1)],512),[[e.vShow,!t.readonly]]),e.withDirectives(e.createElementVNode("div",Xa,[e.createElementVNode("div",Za,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(h,T)=>(e.openBlock(),e.createElementBlock("div",{key:h.uid||T,class:"bg-gray-50 hover:bg-gray-100 rounded p-3 relative flex items-center border border-transparent hover:border-gray-200 transition-colors group"},[e.createVNode(e.unref(zt),{icon:v(h),class:"w-10 h-10 mr-3 flex-shrink-0"},null,8,["icon"]),e.createElementVNode("div",es,[e.createElementVNode("div",{class:"text-sm truncate font-medium text-gray-700 mb-1",title:h.name},e.toDisplayString(h.name),9,ts),e.createElementVNode("div",rs,[e.createElementVNode("span",ns,e.toDisplayString(C(h.size)),1),e.createVNode(e.unref(R.Progress),{percent:h.percentage/100,size:"small","show-text":!1,color:h.percentage===100?"#00b42a":"#165dff",class:"flex-1"},null,8,["percent","color"]),e.createElementVNode("span",os,e.toDisplayString(h.percentage)+"%",1)])]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(R.Checkbox),{key:0,modelValue:h.checked,"onUpdate:modelValue":I=>h.checked=I,class:"absolute top-3 right-3"},null,8,["modelValue","onUpdate:modelValue"])),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(wr),{key:1,class:"absolute bottom-3 right-3 w-4 h-4 cursor-pointer text-gray-400 hover:text-red-500 transition-colors",onClick:I=>A(h,T)},null,8,["onClick"]))]))),128))])],512),[[e.vShow,u.value.length>0&&l.value]])]))}}),ss={class:"flex gap-2 items-center flex-nowrap overflow-hidden"},is={class:"flex gap-2 item-center flex-nowrap"},vr=e.defineComponent({__name:"index",props:{modelValue:{type:String},action:{type:String,required:!1},delAction:{type:String,required:!1},accept:{type:String},encryptFile:{type:Boolean,default:void 0},storeType:{type:String,default:void 0},s3FileDir:{type:String,default:void 0},preSigned:{type:Boolean,default:void 0},preSignedExpire:{type:Number,default:void 0},limit:{type:Number,default:void 0},maxSize:{type:Number,default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:n}){const r=t,o=e.computed(()=>{const f=Se.uploadConfig||{};return{action:r.action||f.action,delAction:r.delAction||f.delAction,accept:r.accept??f.accept,encryptFile:r.encryptFile??f.encryptFile??!1,storeType:r.storeType??f.storeType??"amazon",s3FileDir:r.s3FileDir??f.s3FileDir??"",preSigned:r.preSigned??f.preSigned??!1,preSignedExpire:r.preSignedExpire??f.preSignedExpire??7,limit:r.limit??f.limit,maxSize:r.maxSize??f.maxSize}});o.value.action||console.warn("[SunnySimpleUpload] Missing required config: action. Please provide via props or configure globally using setupBusinessForm()."),o.value.delAction||console.warn("[SunnySimpleUpload] Missing required config: delAction. Please provide via props or configure globally using setupBusinessForm().");const i=e.computed(()=>JSON.parse(r.modelValue||"[]")),l=n,c=f=>{const{onProgress:g,onError:y,onSuccess:m,fileItem:b,name:C}=f,v=o.value;if(v.limit&&i.value.length>=v.limit){R.Message.error(`最多只能上传 ${v.limit} 个文件`),y();return}if(v.maxSize&&b.file.size>v.maxSize*1024*1024){R.Message.error(`文件大小不能超过 ${v.maxSize} MB`),y();return}var k=new FormData;k.append("fileName",b.file),k.append("encryptFile",v.encryptFile===!0?"1":"0"),k.append("storeType",v.storeType),v.s3FileDir&&k.append("s3FileDir",v.s3FileDir),v.preSigned&&k.append("preSigned",v.preSigned===!0?"1":"0"),v.preSignedExpire&&k.append("preSignedExpire",String(v.preSignedExpire)),Ve.post(v.action,k,{onUploadProgress:E=>{const $=Math.floor(E.loaded/E.total*100);g($)}}).then(E=>{if(E.data.code===200){R.Message.success(E.data.message||"上传成功"),m(E.data.result);const $=[...i.value,b];l("update:modelValue",JSON.stringify($)),l("change",JSON.stringify($))}else R.Message.error(E.data.message||"上传失败"),y()}).catch(()=>{y()})},u=f=>{const g=o.value;Ve.post(g.delAction,{filePathList:[f.response.url],storeType:g.storeType}).then(y=>{const{data:m}=y;if(R.Message.success(m.message||"删除成功"),m.code===200){const b=i.value.filter(C=>C.uid!==f.uid);l("update:modelValue",JSON.stringify(b))}}).catch(y=>{R.Message.error("删除失败"),console.error("删除文件失败:",y)})};return(f,g)=>{const y=e.resolveComponent("a-button"),m=e.resolveComponent("a-upload"),b=e.resolveComponent("a-tag");return e.openBlock(),e.createElementBlock("div",ss,[e.createVNode(m,{"show-file-list":!1,action:t.action,"custom-request":c},{"upload-button":e.withCtx(()=>[e.createVNode(y,{type:"primary",size:"mini"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.$t("common.upload")),1)]),_:1})]),_:1},8,["action"]),e.createElementVNode("div",is,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,C=>(e.openBlock(),e.createBlock(b,{loading:!1,color:C.status==="error"?"red":"green",closable:"",onClose:v=>u(C)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C.name),1)]),_:2},1032,["color","onClose"]))),256))])])}}}),Br=e.defineComponent({name:"SunnySelect",inheritAttrs:!1,props:{modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},options:{type:Array,default:()=>[]},filterModel:{type:Object,default:void 0}},emits:["update:modelValue"],setup(t,{emit:n,slots:r,attrs:o}){const i=u=>{const f=u.cMeta;return!f||Object.keys(f).length===0?!0:!t.filterModel||Object.keys(t.filterModel).length===0?!1:Object.entries(f).every(([g,y])=>{const m=t.filterModel[g];return m==null?!1:String(m)===String(y)})},l=e.computed(()=>{const u=t.modelValue;if(u==null||u===""||o["allow-create"]===!0||o["allow-create"]==="")return u;const f=g=>t.options.some(y=>i(y)?y.value==g||typeof g=="object"&&g!==null&&"value"in g&&y.value==g.value:!1);if(Array.isArray(u)){const g=u.filter(y=>f(y));return g.length===u.length?u:g}else return f(u)?u:void 0});e.watch(l,u=>{u!==t.modelValue&&n("update:modelValue",u)});const c=u=>{n("update:modelValue",u)};return()=>e.createVNode(R.Select,e.mergeProps(o,{modelValue:l.value,"onUpdate:modelValue":c}),{default:()=>t.options.map(u=>i(u)?e.createVNode(R.Option,e.mergeProps({key:u.value},u),{default:()=>r.option?r.option({data:u}):u.label}):null),...Object.fromEntries(Object.entries(r).filter(([u])=>u!=="option"&&u!=="default"))})}}),ls={class:"flex items-center justify-between px-3 py-2 border-b border-[var(--color-neutral-3)] bg-[var(--color-bg-popup)] select-none"},cs={class:"flex items-center gap-1"},ds={class:"w-6 h-6 flex items-center justify-center rounded cursor-help text-[var(--color-text-3)] hover:text-[var(--color-text-1)] hover:bg-[var(--color-fill-3)] transition-all"},us=e.defineComponent({name:"SunnyBatchSelect",inheritAttrs:!1,__name:"BatchSelect",props:{modelValue:{default:()=>[]},options:{default:()=>[]},matchStrategy:{default:"both"},filterModel:{default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:n}){const r=t,o=n,i=e.computed(()=>r.options.filter(m=>!m.disabled)),l=e.computed(()=>i.value.length===0?!1:i.value.every(m=>r.modelValue.includes(m.value))),c=e.computed(()=>{if(i.value.length===0)return!1;const m=i.value.filter(b=>r.modelValue.includes(b.value)).length;return m>0&&m<i.value.length}),u=m=>{o("update:modelValue",m),o("change",m)},f=m=>{if(m===!0){const C=i.value.map(E=>E.value),v=r.modelValue.filter(E=>{const $=r.options.find(M=>M.value===E);return $&&$.disabled}),k=Array.from(new Set([...v,...C]));o("update:modelValue",k),o("change",k)}else{const C=r.modelValue.filter(v=>{const k=r.options.find(E=>E.value===v);return k&&k.disabled});o("update:modelValue",C),o("change",C)}},g=()=>{const m=r.modelValue.filter(b=>{const C=r.options.find(v=>v.value===b);return C&&C.disabled});o("update:modelValue",m),o("change",m)},y=m=>{const b=m.clipboardData||window.clipboardData;if(!b)return;const C=b.getData("text");if(!C)return;const v=C.split(/\r?\n/).map(M=>M.trim()).filter(M=>M);if(v.length===0)return;const k=[];let E=0;const $=M=>{const A=M.cMeta;return!A||Object.keys(A).length===0?!0:!r.filterModel||Object.keys(r.filterModel).length===0?!1:Object.entries(A).every(([O,B])=>{const P=r.filterModel[O];return P==null?!1:String(P)===String(B)})};if(v.forEach(M=>{if(r.matchStrategy==="value"||r.matchStrategy==="both"){const A=r.options.find(O=>String(O.value)===M);if(A&&!A.disabled&&$(A)){k.push(A.value),E++;return}}if(r.matchStrategy==="label"||r.matchStrategy==="both"){const A=r.options.find(O=>O.label===M);A&&!A.disabled&&$(A)&&(k.push(A.value),E++)}}),k.length>0){m.preventDefault();const M=Array.from(new Set([...r.modelValue,...k]));o("update:modelValue",M),o("change",M),R.Message.success(`成功识别并选中 ${E} 项 (Matched ${E} items)`)}};return(m,b)=>{const C=e.resolveComponent("a-checkbox"),v=e.resolveComponent("a-tooltip");return e.openBlock(),e.createBlock(e.unref(Br),e.mergeProps(m.$attrs,{"model-value":t.modelValue,options:t.options,"filter-model":t.filterModel,multiple:"","allow-search":"","onUpdate:modelValue":u,onPaste:y}),e.createSlots({header:e.withCtx(()=>[e.createElementVNode("div",ls,[e.createVNode(C,{"model-value":l.value,indeterminate:c.value,onChange:f,class:"pl-1"},{default:e.withCtx(()=>[...b[0]||(b[0]=[e.createElementVNode("span",{class:"text-[var(--color-text-1)]"},"全选",-1)])]),_:1},8,["model-value","indeterminate"]),e.createElementVNode("div",cs,[e.createVNode(v,{content:"清除所有选中项"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:"w-6 h-6 flex items-center justify-center rounded cursor-pointer text-[var(--color-text-3)] hover:bg-[var(--color-fill-3)] transition-all",onClick:g},[e.createVNode(e.unref(wr))])]),_:1}),b[1]||(b[1]=e.createElementVNode("div",{class:"w-[1px] h-3 bg-[var(--color-neutral-3)] mx-1"},null,-1)),e.createVNode(v,{content:"支持从 Excel 或文本编辑器(↓列数据)复制多行数据,粘贴至搜索框即可自动匹配并选中。",position:"left"},{default:e.withCtx(()=>[e.createElementVNode("div",ds,[e.createVNode(e.unref(Sr))])]),_:1})])])]),_:2},[e.renderList(m.$slots,(k,E)=>({name:E,fn:e.withCtx($=>[e.renderSlot(m.$slots,E,e.normalizeProps(e.guardReactiveProps($||{})))])}))]),1040,["model-value","options","filter-model"])}}}),Pr=e.defineComponent({name:"SunnySearchInputTag",inheritAttrs:!1,__name:"SearchInputTag",props:{modelValue:{default:()=>[]},fieldNames:{default:()=>({label:"label",value:"value"})},placeholder:{default:"请选择..."},disabled:{type:Boolean,default:!1},maxTagCount:{}},emits:["update:modelValue","search","change","clear"],setup(t,{emit:n}){const r=t,o=n,i=e.computed(()=>r.fieldNames?.label||"label"),l=e.computed(()=>r.fieldNames?.value||"value"),c=e.computed(()=>r.modelValue.map(m=>({label:m[i.value],value:m[l.value],closable:!r.disabled,tagProps:m.tagProps}))),u=m=>{r.disabled||["Backspace","Delete","Tab","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(m.key)||m.preventDefault()},f=(m,b)=>{const C=[...r.modelValue];C.splice(b,1),o("update:modelValue",C),o("change",C)},g=()=>{o("update:modelValue",[]),o("change",[]),o("clear")},y=()=>{r.disabled||o("search")};return(m,b)=>{const C=e.resolveComponent("a-input-tag");return e.openBlock(),e.createBlock(C,e.mergeProps(m.$attrs,{"model-value":c.value,"input-value":"",disabled:t.disabled,placeholder:t.placeholder,"max-tag-count":t.maxTagCount,"allow-create":!1,class:"w-full group",onRemove:f,onClear:g,onKeydown:u}),e.createSlots({suffix:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center h-full px-2 border-l border-[var(--color-neutral-3)] group-hover:border-[var(--color-neutral-4)] -mr-3",[t.disabled?"cursor-not-allowed text-[var(--color-text-4)]":"cursor-pointer text-[var(--color-text-2)] group"]]),onClick:e.withModifiers(y,["stop"])},[e.createVNode(e.unref(Ot),{class:"transition-colors group-hover:text-[var(--color-primary-6)]"})],2)]),_:2},[e.renderList(m.$slots,(v,k)=>({name:k,fn:e.withCtx(E=>[e.renderSlot(m.$slots,k,e.normalizeProps(e.guardReactiveProps(E||{})))])}))]),1040,["model-value","disabled","placeholder","max-tag-count"])}}});class fs{store;constructor(n,r){this.store=new ho.Store(n),r?.onUpdate&&this.store.subscribe(()=>{r.onUpdate?.()})}setState(n){this.store.setState(r=>{const o=typeof n=="function"?n(r):n;return{...r,...o}})}getState(){return this.store.state}}function Nr(t,n="YYYY-MM-DD"){if(!t)return t;if(H.isFunction(t.format))return t.format(n);if(t instanceof Date){const r=t.getFullYear(),o=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0"),l=String(t.getHours()).padStart(2,"0"),c=String(t.getMinutes()).padStart(2,"0"),u=String(t.getSeconds()).padStart(2,"0");return n.replace("YYYY",String(r)).replace("MM",o).replace("DD",i).replace("HH",l).replace("mm",c).replace("ss",u)}return String(t)}function st(t){return H.is(t,"Date")}function it(t){return H.isObject(t)&&"$d"in t&&"$y"in t&&"$M"in t}function lt(t,n){if(!H.isObject(t)||!H.isObject(n)||Array.isArray(n))return n;const r={...t};return Object.keys(n).forEach(o=>{const i=r[o],l=n[o];H.isObject(i)&&H.isObject(l)?r[o]=lt(i,l):r[o]=l}),r}class ps{condition=!1;resolveFn=null;promise=null;setConditionTrue(){this.condition=!0,this.resolveFn&&(this.resolveFn(),this.resolveFn=null)}reset(){this.condition=!1,this.promise=null,this.resolveFn=null}async waitForCondition(){this.condition||(this.promise||(this.promise=new Promise(n=>{this.resolveFn=n})),await this.promise)}}function ms(t){const n=Object.getPrototypeOf(t),r=Object.getOwnPropertyNames(n);for(const o of r){const i=t[o];o!=="constructor"&&typeof i=="function"&&(t[o]=i.bind(t))}}function hs(){return{actionWrapperClass:"",collapsed:!1,collapsedRows:1,collapseTriggerResize:!1,commonConfig:{},handleReset:void 0,handleSubmit:void 0,handleValuesChange:void 0,handleCollapsedChange:void 0,layout:"horizontal",resetButtonOptions:{},schema:[],scrollToFirstError:!1,showCollapseButton:!1,showDefaultActions:!0,submitButtonOptions:{},submitOnChange:!1,submitOnEnter:!1,wrapperClass:"grid-cols-1",values:{}}}class Tr{form;isMounted=!1;state=null;stateHandler;store;componentRefMap=new Map;latestSubmissionValues=null;prevState=null;constructor(n={}){const{...r}=n,o=hs();this.store=new fs({...o,...r},{onUpdate:()=>{this.prevState=this.state,this.state=this.store.getState(),this.updateState()}}),this.state=this.store.getState(),this.stateHandler=new ps,ms(this)}getFieldComponentRef(n){let r=this.componentRefMap.has(n)?this.componentRefMap.get(n):void 0;if(r&&r.$&&r.$.type&&r.$.type.name==="AsyncComponentWrapper"&&r.$.subTree&&r.$.subTree.ref){const o=r.$.subTree.ref;Array.isArray(o)?o.length>0&&o[0]&&e.isRef(o[0].r)&&(r=o[0].r.value):e.isRef(o.r)&&(r=o.r.value)}return r}getFocusedField(){for(const n of this.componentRefMap.keys()){const r=this.getFieldComponentRef(n);if(r){let o=null;if(r instanceof HTMLElement?o=r:r.$el instanceof HTMLElement&&(o=r.$el),!o)continue;if(o===document.activeElement||o.contains(document.activeElement))return n}}}getLatestSubmissionValues(){return this.latestSubmissionValues||{}}getState(){return this.state}async getValues(){const n=await this.getForm();return n.values?this.handleRangeTimeValue(n.values):{}}async isFieldValid(n){return(await this.getForm()).isFieldValid(n)}merge(n){const r=[this,n],o=new Proxy(n,{get(i,l){return l==="merge"?c=>(r.push(c),o):l==="submitAllForm"?async(c=!0)=>{try{const u=await Promise.all(r.map(async f=>(await f.validate()).valid?e.toRaw(await f.getValues()||{}):void 0));return u.some(f=>!f)?void 0:c?Object.assign({},...u):u}catch(u){console.error("Validation error:",u)}}:i[l]}});return o}mount(n,r){this.isMounted||(this.form=n,this.stateHandler.setConditionTrue(),this.setLatestSubmissionValues({...e.toRaw(this.handleRangeTimeValue(this.form.values))}),r&&(this.componentRefMap=r),this.isMounted=!0)}async removeSchemaByFields(n){const r=new Set(n),i=(this.state?.schema??[]).filter(l=>l.fieldName&&!r.has(l.fieldName));this.setState({schema:i})}async resetForm(n,r){return(await this.getForm()).resetForm(n,r)}async resetValidate(){const n=await this.getForm();Object.keys(n.errors.value).forEach(o=>{n.setFieldError(o,void 0)})}scrollToFirstError(n){const r=typeof n=="string"?n:Object.keys(n)[0];if(!r)return;let o=document.querySelector(`[name="${r}"]`);if(!o){const i=this.getFieldComponentRef(r);i&&i.$el instanceof HTMLElement?o=i.$el:i instanceof HTMLElement&&(o=i)}o&&o.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}async setFieldValue(n,r,o){const i=await this.getForm();if(n.includes(".")||n.includes("[")){const l={...i.values},c=ve.set(l,n,r);i.setValues(c,o)}else i.setValues({[n]:r},o)}setLatestSubmissionValues(n){this.latestSubmissionValues={...e.toRaw(n)}}setState(n){H.isFunction(n)?this.store.setState(r=>lt(r,n(r))):this.store.setState(r=>lt(r,n))}async setValues(n,r=!0,o=!1){const i=await this.getForm(),l=i.values||{},c={...n};if(this.handleValueToObjectFields(c),Object.keys(c).some(g=>g.includes(".")||g.includes("["))){let g={...l};for(const[y,m]of Object.entries(c))g=ve.set(g,y,m);r&&(g=this.filterNestedValues(g,l)),i.setValues(g,o);return}if(!r){i.setValues(c,o);return}const f=this.filterAndMergeValues(c,l);i.setValues(f,o)}filterNestedValues(n,r){if(!H.isObject(n)||!H.isObject(r)||Array.isArray(n))return n;const o={};for(const i in n)if(Object.prototype.hasOwnProperty.call(n,i)&&i in r){const l=n[i],c=r[i];H.isObject(l)&&!Array.isArray(l)&&!st(l)&&!it(l)&&H.isObject(c)&&!Array.isArray(c)&&!st(c)&&!it(c)?o[i]=this.filterNestedValues(l,c):o[i]=l}return o}filterAndMergeValues(n,r){if(!H.isObject(n)||!H.isObject(r)||Array.isArray(n))return n;const o={};for(const i in n)if(Object.prototype.hasOwnProperty.call(n,i)&&i in r){const l=n[i],c=r[i];H.isObject(l)&&!Array.isArray(l)&&!st(l)&&!it(l)&&H.isObject(c)&&!Array.isArray(c)&&!st(c)&&!it(c)?o[i]=this.filterAndMergeValues(l,c):o[i]=l}return o}async resetValues(n){return this.setValues(n)}async submitForm(n){n?.preventDefault(),n?.stopPropagation();const r=await this.getForm(),{valid:o,errors:i}=await r.validate(),l=e.toRaw(await this.getValues());return o?await this.state?.handleSubmit?.(l):this.state?.scrollToFirstError&&this.scrollToFirstError(i),{valid:o,values:l,errors:i}}unmount(){this.form?.resetForm?.(),this.latestSubmissionValues=null,this.isMounted=!1,this.stateHandler.reset()}updateSchema(n){const r=[...n];if(!r.every(c=>Reflect.has(c,"fieldName")&&c.fieldName)){console.error("All items in the schema array must have a valid `fieldName` property to be updated");return}const i=H.cloneDeep(this.state?.schema??[]),l={};r.forEach(c=>{c.fieldName&&(l[c.fieldName]=c)}),i.forEach((c,u)=>{if(!c.fieldName)return;const f=l[c.fieldName];f&&(i[u]=lt(c,f))}),this.setState({schema:i})}async validate(n){const o=await(await this.getForm()).validate(n);return Object.keys(o?.errors??{}).length>0&&(console.error("validate error",o?.errors),this.state?.scrollToFirstError&&this.scrollToFirstError(o.errors)),o}async validateAndSubmitForm(){const n=await this.getForm(),{valid:r,errors:o}=await n.validate();if(!r){this.state?.scrollToFirstError&&this.scrollToFirstError(o);return}return await this.submitForm()}async validateField(n,r){const i=await(await this.getForm()).validateField(n,r);return Object.keys(i?.errors??{}).length>0&&(console.error("validate error",i?.errors),this.state?.scrollToFirstError&&this.scrollToFirstError(n)),i}async getForm(){if(this.isMounted||await this.stateHandler.waitForCondition(),!this.form?.meta)throw new Error("<SunnyUseForm /> is not mounted");return this.form}handleMultiFields=n=>{const r=this.state?.arrayToStringFields;if(!r||!Array.isArray(r))return;const o=(i,l=",")=>{this.processFields(i,l,n,(c,u)=>{if(Array.isArray(c))return c.join(u);if(typeof c=="string"){if(c==="")return[];const f=u.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`);return c.split(new RegExp(f))}else return c})};if(r.every(i=>typeof i=="string")){const i=r[r.length-1]||"",l=i.length===1?r.slice(0,-1):r,c=i.length===1?i:",";o(l,c);return}r.forEach(i=>{if(Array.isArray(i)){const[l,c=","]=i;if(!Array.isArray(l)){console.warn(`Invalid field configuration: fields should be an array of strings, got ${typeof l}`);return}o(l,c)}})};handleObjectToValueFields=n=>{const r=this.state?.objectToValueFields;!r||!Array.isArray(r)||r.forEach(o=>{const i=n[o];if(!Array.isArray(i)||i.length===0)return;const l=this.state?.schema?.find(y=>y.fieldName===o);if(!l)return;let c=l.componentProps;if(typeof c=="function")try{c=c(n,this.form)}catch(y){console.warn(`[SunnyForm] Failed to resolve componentProps for field ${o}`,y);return}const f=(c?.modalProps?.fieldNames||c?.fieldNames)?.value;if(!f)return;const g=i.map(y=>y&&typeof y=="object"?y[f]:y).filter(y=>y!=null).join(",");n[o]=g})};handleValueToObjectFields=n=>{const r=this.state?.objectToValueFields;!r||!Array.isArray(r)||r.forEach(o=>{const i=n[o];if(typeof i!="string"||i===""||Array.isArray(i))return;const l=this.state?.schema?.find(m=>m.fieldName===o);if(!l)return;let c=l.componentProps;if(typeof c=="function")try{c=c(n,this.form)}catch(m){console.warn(`[SunnyForm] Failed to resolve componentProps for field ${o}`,m);return}const u=c?.modalProps?.fieldNames||c?.fieldNames,f=u?.value||"value",g=u?.label||"label";if(!u?.value)return;const y=i.split(",").map(m=>m.trim()).filter(m=>m!=="").map(m=>({[f]:m,[g]:m}));n[o]=y})};handleRangeTimeValue=n=>{const r={...n},o=this.state?.fieldMappingTime;return this.handleMultiFields(r),this.handleObjectToValueFields(r),!o||!Array.isArray(o)||o.forEach(([i,[l,c],u="YYYY-MM-DD"])=>{if(l&&c&&r[i]===null&&(Reflect.deleteProperty(r,l),Reflect.deleteProperty(r,c)),!r[i]){Reflect.deleteProperty(r,i);return}const[f,g]=r[i];if(u===null)r[l]=f,r[c]=g;else if(H.isFunction(u))r[l]=u(f,i),r[c]=u(g,i);else{const[y,m]=Array.isArray(u)?u:[u,u];r[l]=f?Nr(f,y):void 0,r[c]=g?Nr(g,m):void 0}Reflect.deleteProperty(r,i)}),r};processFields=(n,r,o,i)=>{n.forEach(l=>{const c=o[l];c!=null&&(o[l]=i(c,r))})};updateState(){const n=this.state?.schema??[],r=this.prevState?.schema??[];if(n.length<r.length){const o=new Set(n.map(l=>l.fieldName)),i=r.filter(l=>!o.has(l.fieldName));for(const l of i)l.fieldName&&this.form?.setFieldValue?.(l.fieldName,void 0)}}useStore}const Vr=Symbol("FormRenderProps"),gs=Symbol("ComponentRefMap"),Mr=Symbol("FieldSlots"),ys=t=>{e.provide(Vr,t)},Ut=()=>{const t=e.inject(Vr);if(!t)throw new Error("injectRenderFormProps must be used within provideFormRenderProps");return t},bs=t=>{e.provide(gs,t)},Cs=t=>{e.provide(Mr,t)},Ss=()=>e.inject(Mr),Ir=()=>{const t=Ut(),n=e.computed(()=>t.layout==="vertical");return{props:t,isVertical:n,componentBindEventMap:e.computed(()=>t.config?.modelPropNameMap)}},Rr=Symbol("FormPropsKey");function $r(t){e.provide(Rr,t)}function ws(){const t=e.inject(Rr);if(!t)throw new Error("Form context not found (表单上下文未找到,请确保在 SunnyForm 或 SunnyUseForm 内部使用)");return t}function ks(t){const n=e.useSlots(),r=e.computed(()=>{const l=e.unref(t),c={};return(l.schema||[]).forEach(u=>{u.fieldName&&u.defaultValue!==void 0&&(c[u.fieldName]=u.defaultValue)}),l.values&&Object.assign(c,l.values),c}),o=$e.useForm({initialValues:r.value}),i=e.computed(()=>{const l=[],c=Object.keys(n);for(const u of c)u!=="default"&&typeof n[u]=="function"&&l.push(u);return l});return{form:o,delegatedSlots:i}}function As(t){const n=$e.useFormValues(),o=Ut().form;if(!n)throw new Error("useDependencies should be used within <SunnyForm> (VeeValidate Form)");const i=e.computed(()=>n.value),l=e.computed(()=>t()),c=e.computed(()=>{const b=l.value;if(!b)return!0;const{if:C}=b,v=i.value;return H.isFunction(C)?!!C(v,o):H.isBoolean(C)?C:!0}),u=e.computed(()=>{const b=l.value;if(!b)return!0;const{show:C}=b,v=i.value;return H.isFunction(C)?!!C(v,o):H.isBoolean(C)?C:!0}),f=e.computed(()=>{const b=l.value;if(!b)return!1;const{disabled:C}=b,v=i.value;return H.isFunction(C)?!!C(v,o):H.isBoolean(C)?C:!1}),g=e.computed(()=>{const b=l.value;if(!b)return!1;const{required:C}=b,v=i.value;return H.isFunction(C)?!!C(v,o):!1}),y=e.computed(()=>{const b=l.value;if(!b)return{};const{componentProps:C}=b,v=i.value;return H.isFunction(C)?C(v,o)||{}:{}}),m=e.computed(()=>{const b=l.value;if(!b)return;const{rules:C}=b,v=i.value;if(H.isFunction(C))return C(v,o)});return{dynamicComponentProps:y,dynamicRules:m,isDisabled:f,isIf:c,isRequired:g,isShow:u}}const Es=e.defineComponent({__name:"FormField",props:{schema:{}},setup(t){const n=t,r=$e.useFormValues(),o=Ut(),i=e.computed(()=>Se.disabled??!1),{isVertical:l}=Ir(),c=o.form,u=Ss(),{dynamicComponentProps:f,dynamicRules:g,isDisabled:y,isIf:m,isRequired:b,isShow:C}=As(()=>n.schema.dependencies),v=e.computed(()=>{const{component:D}=n.schema;return H.isString(D)&&Qa[D]||D}),k=e.computed(()=>{const{component:D}=n.schema;return D==="Slot"}),E=e.computed(()=>{if(!k.value||!u)return!1;const D=n.schema.fieldName;return D?!!u[D]:!1}),$=(D,L)=>{const Q=n.schema.fieldName;if(!Q||!u||!u[Q])return null;const z=u[Q],re=Z=>{D.onInput(Z)},pe={model:r.value,value:D.value,setValue:re,disabled:T.value,errorMessage:L,field:D,componentProps:S.value};return z(pe)},M=e.defineComponent({name:"FieldSlotRenderer",props:{field:{type:Object,required:!0},errorMessage:{type:String,default:void 0}},setup(D){return()=>$(D.field,D.errorMessage)}}),A=e.computed(()=>n.schema.hidden?!1:m.value&&C.value),O=e.computed(()=>g.value||n.schema.rules),B=e.computed(()=>{if(!A.value)return!1;if(!O.value)return b.value;if(b.value)return!0;if(H.isString(O.value))return O.value.split("|").includes("required");const D=e.toRaw(O.value);let L=D?.isOptional?.();if(D?._def?.typeName==="ZodDefault"){const z=D?._def.innerType;z&&(L=z.isOptional?.())}return!L}),P=e.computed(()=>{if(!A.value)return null;let D=e.toRaw(O.value);if(!D)return b.value?"required":void 0;if(H.isString(D))return D;if(!!B.value){const Q=D?.unwrap?.();Q&&(D=Q)}return go.toTypedSchema(D)}),S=e.computed(()=>{const{componentProps:D,commonComponentProps:L}=n.schema,Q=H.isFunction(D)?D(r.value,c):D;return{...L,...Q,...f.value}}),h=D=>{const L=S.value,Q=(re,pe)=>(...Z)=>{H.isFunction(re)&&re(...Z),pe(...Z)},z=re=>{H.isFunction(L?.onInput)&&L.onInput(re),D.onInput(re)};return{...L,onInput:Q(L?.onInput,D.onInput),onChange:Q(L?.onChange,D.onChange),modelValue:D.value,"onUpdate:modelValue":z}};e.watch(()=>S.value?.autofocus,D=>{D===!0&&e.nextTick(()=>{})},{immediate:!0});const T=e.computed(()=>y.value||n.schema.disabled||S.value?.disabled||n.schema.formDisabled||i.value),I=e.computed(()=>{if(!(l.value||!n.schema.labelWidth))return{style:{flex:1}}}),U=e.computed(()=>{if(l.value||!n.schema.labelWidth)return;const D=n.schema.labelWidth,L=typeof D=="number"?`${D}px`:D;return{style:{width:L,minWidth:L,maxWidth:L,flex:`0 0 ${L}`}}});return(D,L)=>{const Q=e.resolveComponent("a-form-item");return A.value&&t.schema.fieldName?(e.openBlock(),e.createBlock(e.unref($e.Field),{key:0,name:t.schema.fieldName,rules:P.value,label:t.schema.label},{default:e.withCtx(({field:z,errorMessage:re})=>[e.createVNode(Q,e.mergeProps({label:t.schema.label,help:re||t.schema.help,"validate-status":re?"error":void 0,required:B.value,"label-col-props":U.value,"wrapper-col-props":I.value},t.schema.formFieldProps),{default:e.withCtx(()=>[E.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(M)),{key:0,field:z,"error-message":re},null,8,["field","error-message"])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(v.value),e.mergeProps({key:1},h(z),{disabled:T.value}),null,16,["disabled"]))]),_:2},1040,["label","help","validate-status","required","label-col-props","wrapper-col-props"])]),_:1},8,["name","rules","label"])):e.createCommentVNode("",!0)}}}),xs=["onClick"],Or=e.defineComponent({__name:"form-actions",props:{modelValue:{type:Boolean},formApi:{},searchPlanConfig:{}},emits:["update:modelValue","reset","submit"],setup(t,{expose:n,emit:r}){const o=t,i=r,{props:l}=Ir(),c=$e.useFormContext(),u=e.computed({get:()=>o.modelValue??!1,set:C=>i("update:modelValue",C)}),f=e.computed(()=>({content:"重置",show:!0,type:"outline",...e.unref(l).resetButtonOptions})),g=e.computed(()=>({content:"查询",show:!0,htmlType:o.formApi?"button":"submit",...e.unref(l).submitButtonOptions}));async function y(C){if(o.formApi){C?.preventDefault(),C?.stopPropagation();const v=e.unref(l),{valid:k}=await o.formApi.validate();if(!k)return;const E=e.toRaw(await o.formApi.getValues())??{};await v.handleSubmit?.(E)}}async function m(C){C?.preventDefault(),C?.stopPropagation();const v=e.unref(l);if(o.formApi){const k=e.toRaw(await o.formApi.getValues())??{};v.handleReset?await v.handleReset(k):o.formApi.resetForm()}else if(c)if(v.handleReset){const k=c.values;await v.handleReset(k)}else c.resetForm();i("reset")}e.watch(()=>u.value,()=>{e.unref(l).collapseTriggerResize&&window.dispatchEvent(new Event("resize"))});const b=e.computed(()=>{const C=e.unref(l),v=C.actionPosition||"right",k=["flex","items-center","gap-3",C.layout==="vertical"?"self-end":"self-start",C.layout==="inline"?"":"w-full",C.actionWrapperClass];switch(v){case"center":{k.push("justify-center");break}case"left":{k.push("justify-start");break}default:{k.push("justify-end");break}}return k.join(" ")});return n({handleReset:m,handleSubmit:y}),(C,v)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(b.value)},[e.unref(e.unref(l)).actionButtonsReverse?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(C.$slots,"submit-before"),g.value.show?(e.openBlock(),e.createBlock(e.unref(R.Button),e.mergeProps({key:0,type:"primary",size:e.unref(e.unref(l)).size||"small",onClick:y},g.value),{icon:e.withCtx(()=>[e.createVNode(e.unref(Ot))]),default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(g.value.content),1)]),_:1},16,["size"])):e.createCommentVNode("",!0)],64)),e.renderSlot(C.$slots,"reset-before"),f.value.show?(e.openBlock(),e.createBlock(e.unref(R.Button),e.mergeProps({key:1,size:e.unref(e.unref(l)).size,onClick:m},f.value),{icon:e.withCtx(()=>[e.createVNode(e.unref(_o))]),default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(f.value.content),1)]),_:1},16,["size"])):e.createCommentVNode("",!0),e.unref(e.unref(l)).actionButtonsReverse?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.renderSlot(C.$slots,"submit-before"),g.value.show?(e.openBlock(),e.createBlock(e.unref(R.Button),e.mergeProps({key:0,type:"primary",size:e.unref(e.unref(l)).size||"small",onClick:y},g.value),{icon:e.withCtx(()=>[e.createVNode(e.unref(Ot))]),default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(g.value.content),1)]),_:1},16,["size"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),e.renderSlot(C.$slots,"expand-before"),e.renderSlot(C.$slots,"search-plan",{},()=>[o.searchPlanConfig?.enable?(e.openBlock(),e.createBlock(e.unref(Yr),{key:0,"form-config":o.searchPlanConfig.formConfig,"current-search-plan":o.searchPlanConfig.currentSearchPlan,"search-plan-list":o.searchPlanConfig.searchPlanList,"resource-id":o.searchPlanConfig.resourceId,"n-resourceid":o.searchPlanConfig.nResourceid,api:o.searchPlanConfig.api,onSearch:o.searchPlanConfig.onSearch,onDefaultPlanLoaded:o.searchPlanConfig.onDefaultPlanLoaded,"onUpdate:currentSearchPlan":v[0]||(v[0]=k=>o.searchPlanConfig?.onUpdateCurrentSearchPlan&&o.searchPlanConfig.onUpdateCurrentSearchPlan(k)),"onUpdate:searchPlanList":v[1]||(v[1]=k=>o.searchPlanConfig?.onUpdateSearchPlanList&&o.searchPlanConfig.onUpdateSearchPlanList(k))},{trigger:e.withCtx(({open:k})=>[e.createElementVNode("button",{type:"button",class:"px-3 py-1.5 border border-[var(--color-border-2)] rounded bg-white text-sm transition-all hover:border-[rgb(var(--primary-6))] hover:text-[rgb(var(--primary-6))] disabled:cursor-not-allowed disabled:opacity-60 mr-2",onClick:k,title:"查询方案"},[e.createVNode(e.unref(zt),{icon:"lucide:filter",class:"w-4 h-4"})],8,xs)]),_:1},8,["form-config","current-search-plan","search-plan-list","resource-id","n-resourceid","api","onSearch","onDefaultPlanLoaded"])):e.createCommentVNode("",!0)]),e.unref(e.unref(l)).showCollapseButton?(e.openBlock(),e.createElementBlock("div",{key:3,class:"cursor-pointer ml-2 text-[rgb(var(--primary-6))] hover:opacity-80 transition-opacity select-none flex items-center gap-0.5",onClick:v[2]||(v[2]=k=>u.value=!u.value)},[u.value?(e.openBlock(),e.createBlock(e.unref(Bo),{key:0,size:16})):(e.openBlock(),e.createBlock(e.unref(Vo),{key:1,size:16}))])):e.createCommentVNode("",!0),e.renderSlot(C.$slots,"expand-after")],2))}});function vs(t){const n={xs:576,sm:576,md:768,lg:992,xl:1200,xxl:1600},r=yr.useBreakpoints(n),o=e.computed(()=>{const u={},f=t.schema||[],g=l(),y=t.commonConfig?.colProps;return f.forEach(m=>{if(!m.fieldName)return;const b=m.colProps||y;u[m.fieldName]=c(b,m.colSpan,g)}),u}),i=e.computed(()=>{const u=l();if(t.layout!=="inline"){if(t.actionColProps)return c(t.actionColProps,void 0,u);if(t.showCollapseButton){const f=t.commonConfig?.colProps;return c(f||{xs:12,sm:12,md:8,lg:6},void 0,u)}return 24}});function l(){return r.greaterOrEqual("xxl").value?"xxl":r.greaterOrEqual("xl").value?"xl":r.greaterOrEqual("lg").value?"lg":r.greaterOrEqual("md").value?"md":r.greaterOrEqual("sm").value?"sm":"xs"}function c(u,f,g){if(u){const y=["xxl","xl","lg","md","sm","xs"],m=y.indexOf(g);for(let b=m;b<y.length;b++){const C=y[b],v=u[C];if(v!==void 0)return typeof v=="object"?v.span??24:v}if(u.span!==void 0)return u.span}return f!==void 0?f:24}return{spans:o,actionSpan:i}}const Bs={class:"h-full flex flex-col justify-end"},Fr=e.defineComponent({__name:"Form",props:{formApi:{},form:{}},emits:["submit"],setup(t,{expose:n,emit:r}){const o=t,i=r,l=e.useSlots(),c=ws(),u=e.reactive({...c.value});e.watch(()=>c.value,S=>{Object.assign(u,S)},{deep:!0}),ys(u),Cs(l);const{spans:f,actionSpan:g}=vs(u),y=e.computed(()=>{const{commonConfig:S={},labelWidth:h,schema:T=[]}=u,{componentProps:I={},formFieldProps:U={},disabled:D,...L}=S,Q={...L};return h!==void 0&&Object.assign(Q,{labelWidth:h}),T.map(z=>({...Q,...z,formDisabled:D,hidden:z.hidden??z.hide,commonComponentProps:I,formFieldProps:{...U,...z.formFieldProps||{}},componentProps:z.componentProps}))}),m=e.computed(()=>u.layout==="inline"),b=o.form||$e.useForm({initialValues:{...y.value.reduce((S,h)=>(h.fieldName&&(S[h.fieldName]=h.defaultValue),S),{}),...u.values||{}}}),{handleSubmit:C,resetForm:v,setValues:k,values:E,validate:$,errors:M,meta:A}=b;u.form=b,n({validate:async()=>({valid:(await $()).valid,errors:M.value}),handleSubmit:C}),e.onMounted(()=>{o.formApi&&o.formApi.mount({handleSubmit:C,resetForm:v,setValues:k,values:E,validate:$,errors:M,meta:A})});const O=C(S=>{i("submit",S),u.handleSubmit&&u.handleSubmit(S)}),B=S=>{u.collapsed=S,u.handleCollapsedChange?.(S),o.formApi&&o.formApi.setState({collapsed:S})},P=e.computed(()=>{const{compact:S,gridProps:h}=u,T=S?8:16,I=h?.xGap??h?.["x-gap"]??T,U=h?.yGap??h?.["y-gap"]??T;return{x:I,y:U}});return(S,h)=>{const T=e.resolveComponent("a-col"),I=e.resolveComponent("a-row"),U=e.resolveComponent("a-form");return e.openBlock(),e.createBlock(U,{model:{},layout:e.unref(c).layout||"horizontal",size:e.unref(c).size||"small",class:"arco-form",onSubmit:h[0]||(h[0]=(D,L)=>e.unref(O)(L))},{default:e.withCtx(()=>[e.createVNode(I,{gutter:[P.value.x,P.value.y],class:e.normalizeClass(u.wrapperClass),align:(u.layout||"horizontal")==="vertical"?"stretch":void 0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(D,L)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:D.fieldName||L},[D.fieldName&&!D.hidden&&(!u.collapsed||L<24/(e.unref(f)[D.fieldName]??24)*(u.collapsedRows??1)-1)?(e.openBlock(),e.createBlock(T,{key:0,span:e.unref(f)[D.fieldName]??(m.value?void 0:24)},{default:e.withCtx(()=>[e.createVNode(Es,{schema:D},null,8,["schema"])]),_:2},1032,["span"])):e.createCommentVNode("",!0)],64))),128)),u.showDefaultActions||e.unref(l).actions?(e.openBlock(),e.createBlock(T,{key:0,span:e.unref(g),style:e.normalizeStyle(m.value?{marginLeft:"16px"}:{flex:1,textAlign:"right"})},{default:e.withCtx(()=>[e.createElementVNode("div",Bs,[e.unref(l).actions?e.renderSlot(S.$slots,"actions",{key:0,collapsed:u.collapsed,formApi:o.formApi}):(e.openBlock(),e.createBlock(Or,{key:1,"model-value":u.collapsed,"onUpdate:modelValue":B,"form-api":o.formApi,"search-plan-config":u.searchPlanConfig},e.createSlots({_:2},[e.unref(l)["submit-before"]?{name:"submit-before",fn:e.withCtx(()=>[e.renderSlot(S.$slots,"submit-before")]),key:"0"}:void 0,e.unref(l)["reset-before"]?{name:"reset-before",fn:e.withCtx(()=>[e.renderSlot(S.$slots,"reset-before")]),key:"1"}:void 0,e.unref(l)["expand-before"]?{name:"expand-before",fn:e.withCtx(()=>[e.renderSlot(S.$slots,"expand-before")]),key:"2"}:void 0,e.unref(l)["expand-after"]?{name:"expand-after",fn:e.withCtx(()=>[e.renderSlot(S.$slots,"expand-after")]),key:"3"}:void 0]),1032,["model-value","form-api","search-plan-config"]))])]),_:3},8,["span","style"])):e.createCommentVNode("",!0)]),_:3},8,["gutter","class","align"])]),_:3},8,["layout","size"])}}}),jr=e.defineComponent({__name:"SunnyUseForm",props:{id:{},layout:{},size:{},schema:{},labelWidth:{},wrapperClass:{},gridProps:{},actionWrapperClass:{},commonConfig:{},config:{},showDefaultActions:{type:Boolean,default:void 0},submitButtonOptions:{},resetButtonOptions:{},submitOnEnter:{type:Boolean,default:void 0},submitOnChange:{type:Boolean,default:void 0},handleValuesChange:{},handleCollapsedChange:{},handleSubmit:{},scrollToFirstError:{type:Boolean},handleReset:{},collapsed:{type:Boolean,default:void 0},showCollapseButton:{type:Boolean,default:void 0},collapsedRows:{},collapseTriggerResize:{type:Boolean,default:void 0},compact:{type:Boolean,default:void 0},actionLayout:{},actionPosition:{},actionColProps:{},values:{},fieldMappingTime:{},arrayToStringFields:{},objectToValueFields:{},searchPlanConfig:{},formApi:{}},setup(t){const n=t,r=n.formApi.useStore?.()||e.computed(()=>({})),o=e.computed(()=>{const y=Object.entries(n).reduce((m,[b,C])=>(C!==void 0&&(m[b]=C),m),{});return{...r.value,...y}}),i=new Map,{delegatedSlots:l,form:c}=ks(o);$r(o),bs(i),e.onBeforeUnmount(()=>{n.formApi.unmount()});const u={};e.onMounted(async()=>{n.formApi.mount(c,i),n.formApi.setState({values:H.cloneDeep(c.values)}),await e.nextTick(),e.watch(()=>c.values,async y=>{if(n.formApi.setState({values:H.cloneDeep(y)}),f(),!o.value.handleValuesChange)return;const m=o.value.schema?.map(C=>C.fieldName)||[];if(m.length===0)return;const b=[];for(const C of m){const v=H.get(y,C),k=H.get(u,C);H.isEqual(v,k)||(b.push(C),H.set(u,C,v))}if(b.length>0){const C=await n.formApi.getValues();o.value.handleValuesChange(H.cloneDeep(C??{}),b)}},{deep:!0})});const f=yr.useDebounceFn(async()=>{r.value.submitOnChange&&await n.formApi.submitForm()},300);function g(y){r.value.submitOnEnter&&(y.target instanceof HTMLTextAreaElement||(y.preventDefault(),n.formApi.submitForm()))}return(y,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value.wrapperClass)},[e.createVNode(Fr,e.mergeProps(o.value,{form:e.unref(c),"form-api":n.formApi,onKeydown:e.withKeys(g,["enter"])}),e.createSlots({default:e.withCtx(()=>[]),_:2},[e.renderList(e.unref(l),b=>({name:b,fn:e.withCtx(C=>[e.renderSlot(y.$slots,b,e.normalizeProps(e.guardReactiveProps(C)))])}))]),1040,["form","form-api"])],2))}});function Dr(t={}){const n=new Tr(t);return n.useStore=o=>mo.useStore(n.store.store,o),e.isReactive(t)&&e.watch(()=>t.schema,()=>{t.schema&&n.setState({schema:t.schema})},{immediate:!0}),[e.defineComponent({name:"useSunnyFormWrapper",setup(o,{attrs:i,slots:l}){return n.setState({...o,...i}),()=>e.h(jr,{...o,...i,formApi:n},l)}}),n]}const Lr=e.defineComponent({__name:"SunnyForm",props:{id:{},layout:{},size:{},schema:{},labelWidth:{},wrapperClass:{},gridProps:{},actionWrapperClass:{},commonConfig:{},config:{},showDefaultActions:{type:Boolean},submitButtonOptions:{},resetButtonOptions:{},submitOnEnter:{type:Boolean},submitOnChange:{type:Boolean},handleValuesChange:{type:Function},handleCollapsedChange:{type:Function},handleSubmit:{type:Function},scrollToFirstError:{type:Boolean},handleReset:{type:Function},collapsed:{type:Boolean},showCollapseButton:{type:Boolean},collapsedRows:{},collapseTriggerResize:{type:Boolean},compact:{type:Boolean},actionLayout:{},actionPosition:{},actionColProps:{},values:{},fieldMappingTime:{},arrayToStringFields:{},objectToValueFields:{},searchPlanConfig:{}},emits:["submit","reset","update:collapsed"],setup(t,{expose:n,emit:r}){const o=t,i=r,l=e.useSlots(),c=e.ref(null),u=e.computed(()=>o);$r(u);const f=m=>{i("update:collapsed",m),o.handleCollapsedChange?.(m)},g=m=>{i("submit",m),o.handleSubmit?.(m)},y=()=>{i("reset",void 0)};return n({validate:async()=>c.value?c.value.validate():{valid:!1,errors:{}},submit:()=>{c.value?.handleSubmit&&c.value.handleSubmit(g)(void 0)}}),(m,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.wrapperClass)},[e.createVNode(Fr,{ref_key:"formRenderRef",ref:c,onSubmit:g},e.createSlots({default:e.withCtx(()=>[o.showDefaultActions?(e.openBlock(),e.createBlock(Or,{key:0,"model-value":o.collapsed,"onUpdate:modelValue":f,onReset:y,"search-plan-config":o.searchPlanConfig},{"reset-before":e.withCtx(()=>[e.renderSlot(m.$slots,"reset-before")]),"submit-before":e.withCtx(()=>[e.renderSlot(m.$slots,"submit-before")]),"expand-before":e.withCtx(()=>[e.renderSlot(m.$slots,"expand-before")]),"expand-after":e.withCtx(()=>[e.renderSlot(m.$slots,"expand-after")]),_:3},8,["model-value","search-plan-config"])):e.createCommentVNode("",!0)]),_:2},[e.renderList(e.unref(l),(C,v)=>({name:v,fn:e.withCtx(k=>[e.renderSlot(m.$slots,v,e.normalizeProps(e.guardReactiveProps(k)))])}))]),1536)],2))}});let Ps=class{gridRef;constructor(n,r){this.gridRef=n}get grid(){return this.gridRef.value?.getGrid?.()||this.gridRef.value}get $grid(){return this.grid}async reloadData(n){const r=this.grid;r&&await r.reloadData(n)}async getFullData(){const n=this.grid;return n?n.getFullData():[]}async getCheckboxRecords(){const n=this.grid;return n?n.getCheckboxRecords():[]}async addEvent(n,r){const o=this.grid;if(o){const{row:i}=await o.insertAt(n,r);await e.nextTick(),o.setEditRow(i)}}async deleteSelection(){const n=this.grid;if(n){const r=n.getCheckboxRecords();r.length>0&&await n.remove(r)}}async validate(n=!0){const r=this.grid;return r?r.validate(n):null}};const Ns=e.defineComponent({__name:"use-vxe-grid",setup(t,{expose:n}){const r=e.ref();return n({getGrid:()=>r.value}),(o,i)=>{const l=e.resolveComponent("a-config-provider");return e.openBlock(),e.createBlock(l,{size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(Nt.VxeGrid),e.mergeProps({ref_key:"gridRef",ref:r},o.$attrs),e.createSlots({_:2},[e.renderList(o.$slots,(c,u)=>({name:u,fn:e.withCtx(f=>[e.renderSlot(o.$slots,u,e.normalizeProps(e.guardReactiveProps(f||{})))])}))]),1040)]),_:3})}}});function Ts(t){const n=e.ref(),r=new Ps(n,t);return[e.defineComponent((i,{attrs:l,slots:c})=>{const{gridEvents:u,gridOptions:f}=t,g=Object.entries(u||{}).reduce((y,[m,b])=>{const C=`on${m.charAt(0).toUpperCase()+m.slice(1)}`;return y[C]=b,y},{});return()=>e.h(Ns,{ref:n,...i,...l,...f,...g},c)}),r]}const Vs=Object.freeze(Object.defineProperty({__proto__:null,BusinessSearchRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]?JSON.stringify(t[n.field]):""])],edit:({row:t,column:n})=>[e.createVNode(Qt,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},DatePickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(R.DatePicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},InputNumberRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>{const r=t[n.field],o=typeof r=="string"&&r!==""?Number(r):r;return[e.createVNode(R.InputNumber,e.mergeProps({modelValue:o,"onUpdate:modelValue":i=>{typeof r=="string"&&i!==null&&i!==void 0?t[n.field]=String(i):t[n.field]=i}},n.params),null)]}}},InputRangeRender:{editRender:{},slots:{default:({row:t,column:n})=>{const r=n.params?.fieldNames;let o;if(r){const i=t[r.start],l=t[r.end];o=[i,l]}else o=t[n.field];return[e.createVNode("span",null,[ve.isArray(o)?o.join(" ~ "):o])]},edit:({row:t,column:n})=>{const r=n.params?.fieldNames,o=n.params?.inputType||"input",i=o==="number"?R.InputNumber:R.Input;if(r){const u=t[r.start],f=t[r.end],g=o==="number"&&typeof u=="string"&&u!==""?Number(u):u,y=o==="number"&&typeof f=="string"&&f!==""?Number(f):f;return[e.createVNode("div",{style:{display:"flex",alignItems:"center",gap:"8px"}},[e.createVNode(i,e.mergeProps({modelValue:g,"onUpdate:modelValue":m=>{o==="number"&&typeof u=="string"&&m!==null&&m!==void 0?t[r.start]=String(m):t[r.start]=m}},n.params),null),e.createVNode("span",null,[e.createTextVNode("~")]),e.createVNode(i,e.mergeProps({modelValue:y,"onUpdate:modelValue":m=>{o==="number"&&typeof f=="string"&&m!==null&&m!==void 0?t[r.end]=String(m):t[r.end]=m}},n.params),null)])]}const l=t[n.field],c=o==="number"&&typeof l=="string"&&l!==""?Number(l):l;return[e.createVNode(i,e.mergeProps({modelValue:c,"onUpdate:modelValue":u=>{o==="number"&&typeof l=="string"&&u!==null&&u!==void 0?t[n.field]=String(u):t[n.field]=u}},n.params),null)]}}},InputRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(R.Input,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},MonthPickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(R.MonthPicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},RangePickerRender:{editRender:{},slots:{default:({row:t,column:n})=>{const r=n.params?.fieldNames;let o;if(r){const i=t[r.start],l=t[r.end];o=[i,l]}else o=t[n.field];return[e.createVNode("span",null,[ve.isArray(o)?o.join(" / "):o])]},edit:({row:t,column:n})=>{const r=n.params?.fieldNames;let o;if(r){const i=t[r.start],l=t[r.end];o=[i,l]}else o=t[n.field];return[e.createVNode(R.RangePicker,e.mergeProps({modelValue:o,"onUpdate:modelValue":i=>{r?ve.isArray(i)&&i.length===2?(t[r.start]=i[0],t[r.end]=i[1]):(t[r.start]=void 0,t[r.end]=void 0):t[n.field]=i}},n.params),null)]}}},SelectRender:{editRender:{},slots:{default:({row:t,column:n})=>{const r=t[n.field],i=n.params?.options?.find(l=>l.value===r);return[e.createVNode("span",null,[i?.label??r])]},edit:({row:t,column:n})=>[e.createVNode(R.Select,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},SpanRender:{editRender:{},slots:{default:({row:t,column:n})=>{const r=t[n.field],i=n.params?.options?.find(l=>l.value===r);return[e.createVNode("span",null,[i?.label??r])]}}},SpanselectRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])]}},SwitchRender:{editRender:{},slots:{default:({row:t,column:n})=>{const{checkedValue:r,checkedText:o,uncheckedValue:i,uncheckedText:l}=n.params||{},c=t[n.field];return r!==void 0&&o!==void 0&&c===r?[e.createVNode("span",null,[o])]:i!==void 0&&l!==void 0&&c===i?[e.createVNode("span",null,[l])]:[e.createVNode("span",null,[c])]},edit:({row:t,column:n})=>[e.createVNode(R.Switch,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},TextareaRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>{const r=e.ref(!1),o=e.ref(t[n.field]||"");return[e.createVNode(R.Popover,{popupVisible:r.value,"onUpdate:popupVisible":i=>r.value=i,trigger:"click",position:"top"},{default:()=>[e.createVNode(R.Input,e.mergeProps({modelValue:o.value,"onUpdate:modelValue":i=>{o.value=i,t[n.field]=i},onFocus:()=>{r.value=!0}},n.params),null)],content:()=>[e.createVNode(R.Textarea,e.mergeProps({modelValue:o.value,"onUpdate:modelValue":i=>{o.value=i,t[n.field]=i},autoSize:{minRows:3,maxRows:6},placeholder:n.params?.placeholder||"请输入内容"},n.params),null)]})]}}},UploadRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]?JSON.stringify(t[n.field]):""])],edit:({row:t,column:n})=>[e.createVNode(vr,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},WeekPickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(R.WeekPicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}},YearPickerRender:{editRender:{},slots:{default:({row:t,column:n})=>[e.createVNode("span",null,[t[n.field]])],edit:({row:t,column:n})=>[e.createVNode(R.YearPicker,e.mergeProps({modelValue:t[n.field],"onUpdate:modelValue":r=>{t[n.field]=r}},n.params),null)]}}},Symbol.toStringTag,{value:"Module"})),Ms=Object.freeze(Object.defineProperty({__proto__:null,requiredValidator:({row:t,rule:n})=>{const r=t[n.field];if(r==null||r==="")return new Error(n.message)}},Symbol.toStringTag,{value:"Module"}));class Is{gridRef;constructor(n){this.gridRef=n}get grid(){return this.gridRef.value?.getGrid?.()||this.gridRef.value}get $grid(){return this.grid}async addEvent(n={}){const r=this.grid;if(r){const{record:o={},index:i=-1}=n,{row:l}=await r.insertAt(o,i);await e.nextTick(),r.setEditRow(l)}}getSelection(){const n=this.grid;return n?n.getCheckboxRecords():[]}async deleteSelection(){const n=this.grid;if(n){const r=n.getCheckboxRecords();r.length>0&&await n.remove(r)}}clearSelection(){const n=this.grid;n&&n.clearCheckboxRow()}commitProxy(n,...r){const o=this.grid;if(o)return o.commitProxy(n,...r)}}function Rs(t,n){let r=null,o=null,i=null,l=null,c=null,u=!1,f=!1;const g=k=>{if(!k)return window;let E=k.parentElement;for(;E;){const $=window.getComputedStyle(E);if(/(auto|scroll)/.test($.overflow+$.overflowY+$.overflowX))return E;E=E.parentElement}return window},y=()=>{r&&r.classList.contains("is-sticky")&&(r.style.position="",r.style.top="",r.style.left="",r.style.zIndex="",r.style.width="",r.classList.remove("is-sticky"),o&&o.parentNode&&(o.parentNode.removeChild(o),o=null)),l&&(l.style.display="none")},m=()=>{f||l&&i&&(u=!0,l.scrollLeft=i.scrollLeft,requestAnimationFrame(()=>{u=!1}))},b=()=>{u||l&&i&&(f=!0,i.scrollLeft=l.scrollLeft,requestAnimationFrame(()=>{f=!1}))},C=()=>{!t.value||l||(l=document.createElement("div"),l.className="vxe-table--sticky-scrollbar",l.style.position="fixed",l.style.bottom="0",l.style.overflowX="auto",l.style.overflowY="hidden",l.style.zIndex="101",l.style.display="none",c=document.createElement("div"),l.appendChild(c),l.addEventListener("scroll",b),document.body.appendChild(l),i=t.value.$el.querySelector(".vxe-table--body-wrapper"),i&&i.addEventListener("scroll",m))},v=()=>{if(!t.value||!r)return;if(!n.sticky){y();return}const k=t.value.$el,E=k.getBoundingClientRect(),$=r.getBoundingClientRect(),M=g(k);let A={top:0,bottom:window.innerHeight};if(M!==window&&M instanceof HTMLElement&&(A=M.getBoundingClientRect()),A.bottom>0&&A.top<window.innerHeight&&E.top<A.top&&E.bottom>$.height){const B=Math.max(0,A.top);E.bottom-$.height>B?(!r.classList.contains("is-sticky")||r.style.top!==`${B}px`||r.style.left!==`${E.left}px`)&&(r.style.position="fixed",r.style.top=`${B}px`,r.style.left=`${E.left}px`,r.style.width=`${E.width}px`,r.style.zIndex="100",r.classList.add("is-sticky"),o||(o=document.createElement("div"),r.parentNode?.insertBefore(o,r)),o.style.height=`${$.height}px`):y()}else r.classList.contains("is-sticky")&&(r.style.position="",r.style.top="",r.style.left="",r.style.width="",r.classList.remove("is-sticky"),o&&o.parentNode&&(o.parentNode.removeChild(o),o=null));if((!l||!i)&&C(),l&&i&&c){const B=i.scrollWidth,P=i.clientWidth;if(B>P){const S=window.innerHeight;E.bottom>S&&E.top<S?(l.style.display="block",l.style.width=`${E.width}px`,l.style.left=`${E.left}px`,c.style.width=`${B}px`,Math.abs(l.scrollLeft-i.scrollLeft)>1&&(l.scrollLeft=i.scrollLeft)):l.style.display="none"}else l.style.display="none"}};e.watch(()=>n.sticky,()=>{v()}),e.onMounted(()=>{setTimeout(()=>{t.value&&(r=t.value.$el.querySelector(".vxe-table--header-wrapper"),r&&(window.addEventListener("scroll",v,!0),window.addEventListener("resize",v)),C())},100)}),e.onBeforeUnmount(()=>{window.removeEventListener("scroll",v,!0),window.removeEventListener("resize",v),o&&o.parentNode&&o.parentNode.removeChild(o),l&&l.parentNode&&l.parentNode.removeChild(l),i&&i.removeEventListener("scroll",m)})}const $s={class:"my-filter-complex"},Os={key:0,class:"my-filter-input"},Fs={class:"my-fc-footer"},js=Ue(e.defineComponent({__name:"FilterComplex",props:{renderOpts:Object,renderParams:Object},setup(t){const n=t,r=e.ref(),o=e.computed(()=>{const{column:m}=n.renderParams||{};return m?m.field:""}),i=()=>{const{renderParams:m}=n;if(m){const{column:b}=m,C=b.filters[0];r.value=C}};e.watch(o,()=>{i()}),i();const l=e.computed(()=>n.renderParams?.column),c=e.computed(()=>{const m=l.value;return m&&ve.hasIn(m.params,"optionlist")?"select":"input"}),u=()=>{const{renderParams:m}=n,b=r.value;if(m&&b){const{$table:C}=m,v=!!b.data;C.updateFilterOptionStatus(b,v)}},f=()=>{const{renderParams:m}=n,b={};if(m){const{$table:C}=m;C.getColumns().forEach(k=>{const{field:E,filters:$}=k;if(E&&$&&$.length){const M=$[0];M.data&&(b[E]=M.data)}})}return b},g=()=>{const{renderParams:m}=n;if(m){const{$table:b,$grid:C}=m,v=r.value;v&&b.updateFilterOptionStatus(v,!!v.data);const k=f();C.commitProxy("query",k),C.closeFilter()}},y=()=>{const{renderParams:m}=n,b=r.value;if(m&&b){const{$table:C,$grid:v}=m;b.data="",C.updateFilterOptionStatus(b,!1);const k=f();v.commitProxy("query",k),v.closeFilter()}};return(m,b)=>(e.openBlock(),e.createElementBlock("div",$s,[r.value?(e.openBlock(),e.createElementBlock("div",Os,[c.value==="select"&&l.value?(e.openBlock(),e.createBlock(e.unref(ze.VxeSelect),{key:0,modelValue:r.value.data,"onUpdate:modelValue":b[0]||(b[0]=C=>r.value.data=C),options:l.value.params.optionlist,clearable:"",onChange:u},null,8,["modelValue","options"])):(e.openBlock(),e.createBlock(e.unref(ze.VxeInput),{key:1,modelValue:r.value.data,"onUpdate:modelValue":b[1]||(b[1]=C=>r.value.data=C),clearable:"",onKeyup:e.withKeys(g,["enter"]),onInput:u},null,8,["modelValue"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Fs,[e.createVNode(e.unref(ze.VxeButton),{onClick:y},{default:e.withCtx(()=>[...b[2]||(b[2]=[e.createTextVNode("重置",-1)])]),_:1}),e.createVNode(e.unref(ze.VxeButton),{status:"primary",onClick:g},{default:e.withCtx(()=>[...b[3]||(b[3]=[e.createTextVNode("确认",-1)])]),_:1})])]))}}),[["__scopeId","data-v-85c1d0e2"]]);Nt.VxeUI.renderer.add("MyFilterComplex",{showTableFilterFooter:!1,renderTableFilter(t,n){return e.createVNode(js,{renderOpts:t,renderParams:n},null)}});const _r=e.defineComponent({components:{VxePager:ze.VxePager,VxeButton:ze.VxeButton},__name:"use-query-grid",props:{size:{default:"small"}},setup(t,{expose:n}){const r=t,o=e.ref(),i=e.useAttrs();return Rs(o,i),n({getGrid:()=>o.value}),(l,c)=>(e.openBlock(),e.createBlock(e.unref(Nt.VxeGrid),e.mergeProps({ref_key:"gridRef",ref:o},l.$attrs,{size:r.size}),e.createSlots({_:2},[e.renderList(l.$slots,(u,f)=>({name:f,fn:e.withCtx(g=>[e.renderSlot(l.$slots,f,e.normalizeProps(e.guardReactiveProps(g||{})))])}))]),1040,["size"]))}});function Ds(t){const n=e.ref(),r=new Is(n);return[e.defineComponent((i,{attrs:l,slots:c})=>{const{gridEvents:u,gridOptions:f}=t,g=Object.entries(u||{}).reduce((y,[m,b])=>{const C=`on${m.charAt(0).toUpperCase()+m.slice(1)}`;return y[C]=b,y},{});return()=>e.h(_r,{ref:n,...i,...l,...f,...g},c)}),r]}function zr(t){const{props:n,emit:r,attrs:o}=t,i=e.computed(()=>n.contextMenuActions||n.actions||[]),l=e.computed(()=>{const k=o["field-names"],E=o.fieldNames;return{key:"key",title:"title",children:"children",...k||E||{}}}),c=k=>{const E=l.value.key||"key";return k[E]??k.key},u=()=>o.data||[],f=k=>{const E=c(k);return E==null?!1:u().some($=>c($)===E||$===k)},g=(k,E,$)=>typeof k=="boolean"?k:typeof k=="function"?k(E):$,y=k=>k?!n.enableRootContextMenu&&f(k)?[]:i.value.filter(E=>g(E.visible,k,!0)):[],m=(k,E)=>g(k.disabled,E,!1);return{canShowContextMenu:k=>y(k).length>0,getNodeActions:y,isActionDisabled:m,getNodeTitle:k=>{const E=l.value.title||"title",$=c(k);return String(k?.[E]??k?.title??$??"")},handleActionClick:async(k,E)=>{const $=y(E).find(M=>M.key===String(k));$&&(m($,E)||($.handler&&await $.handler(E),r("action",{key:$.key,action:$,node:E})))}}}const Ls={class:"sunny-resource-tree"},_s={class:"sunny-resource-tree__title"},zs=Ue(e.defineComponent({name:"SunnyResourceTree",inheritAttrs:!1,__name:"SunnyResourceTree",props:{contextMenuActions:{default:()=>[]},actions:{default:()=>[]},enableRootContextMenu:{type:Boolean,default:!1}},emits:["action"],setup(t,{expose:n,emit:r}){const o=t,i=r,l=e.useAttrs(),c=e.useSlots(),u=e.ref(),{canShowContextMenu:f,getNodeActions:g,isActionDisabled:y,getNodeTitle:m,handleActionClick:b}=zr({props:o,emit:i,attrs:l}),C=(E,$)=>{b(E,$)},v=e.computed(()=>Object.keys(c).filter(E=>E!=="title")),k=(E,...$)=>u.value?.[E]?.(...$);return n({getTree:()=>u.value,toggleCheck:(E,$)=>k("toggleCheck",E,$),scrollIntoView:E=>k("scrollIntoView",E),getSelectedNodes:()=>k("getSelectedNodes"),getCheckedNodes:E=>k("getCheckedNodes",E),getHalfCheckedNodes:()=>k("getHalfCheckedNodes"),getExpandedNodes:()=>k("getExpandedNodes"),checkAll:E=>k("checkAll",E),checkNode:(E,$,M)=>k("checkNode",E,$,M),selectAll:E=>k("selectAll",E),selectNode:(E,$)=>k("selectNode",E,$),expandAll:E=>k("expandAll",E),expandNode:(E,$)=>k("expandNode",E,$)}),(E,$)=>(e.openBlock(),e.createElementBlock("div",Ls,[e.createVNode(e.unref(R.Tree),e.mergeProps({ref_key:"treeRef",ref:u},E.$attrs),e.createSlots({title:e.withCtx(M=>[e.unref(f)(M)?(e.openBlock(),e.createBlock(e.unref(R.Dropdown),{key:0,trigger:"contextMenu","popup-max-height":!1,onSelect:A=>C(A,M)},{content:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(g)(M),A=>(e.openBlock(),e.createBlock(e.unref(R.Doption),{key:`${String(M?.key)}-${A.key}`,value:A.key,disabled:e.unref(y)(A,M)},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass({"sunny-resource-tree__danger":A.danger})},e.toDisplayString(A.label),3)]),_:2},1032,["value","disabled"]))),128))]),default:e.withCtx(()=>[e.createElementVNode("span",_s,[e.renderSlot(E.$slots,"title",e.normalizeProps(e.guardReactiveProps(M)),()=>[e.createTextVNode(e.toDisplayString(e.unref(m)(M)),1)],!0)])]),_:2},1032,["onSelect"])):e.renderSlot(E.$slots,"title",e.normalizeProps(e.mergeProps({key:1},M)),()=>[e.createTextVNode(e.toDisplayString(e.unref(m)(M)),1)],!0)]),_:2},[e.renderList(v.value,M=>({name:M,fn:e.withCtx(A=>[e.renderSlot(E.$slots,M,e.normalizeProps(e.guardReactiveProps(A||{})),void 0,!0)])}))]),1040)]))}}),[["__scopeId","data-v-f860649c"]]);function Ur(t){if(!t||!Array.isArray(t))return{};const n={};return t.forEach(r=>{r.fieldName&&r.defaultValue!==void 0&&(n[r.fieldName]=r.defaultValue)}),n}function Us(t,n){const r=e.ref(!1),o=e.ref({}),i=e.ref([]),l=e.ref({current:1,pageSize:200,total:0}),c=e.ref([]),u=e.computed(()=>({label:"label",value:"value",desc:"desc",...t.fieldNames})),f=e.computed(()=>t.fieldNames?.value||"id"),g=h=>ve.get(h,f.value),y=()=>new Set((t.formSchema||[]).map(h=>h.fieldName).filter(Boolean)),m=()=>{const h=Ur(t.formSchema);o.value={...h,...t.defaultModel}},b=()=>{const h=Ur(t.formSchema),T=y(),I={};t.defaultModel&&Object.entries(t.defaultModel).forEach(([U,D])=>{T.has(U)&&(I[U]=D)}),o.value={...o.value,...h,...I}};e.watch(()=>t.visible,h=>{h&&(t.modelValue&&Array.isArray(t.modelValue)?i.value=ve.cloneDeep(t.modelValue):i.value=[])},{immediate:!0});const C=async h=>{if(t.searchApi){h&&(o.value={...h}),r.value=!0;try{const T={pageNo:l.value.current,pageSize:l.value.pageSize,...o.value};let I;if(typeof t.searchApi=="function"&&(I=await t.searchApi(T)),I){const U=I.list||I.records||[],D=I.total||I.totalCount||0;c.value=U,l.value.total=D}}catch(T){console.error("Search failed:",T),R.Message.error("查询失败")}finally{r.value=!1}}},v=h=>{l.value.current=h,C()},k=h=>{l.value.pageSize=h,l.value.current=1,C()},E=(h,T)=>{const I=g(h),U=i.value.findIndex(D=>g(D)===I);T?U===-1&&(t.multiple?i.value.push(h):i.value=[h]):U>-1&&i.value.splice(U,1)};return{loading:r,searchParams:o,selectedRows:i,pagination:l,tableData:c,actualFieldNames:u,actualRowKey:f,initDefaultValues:m,resetFormValues:b,handleSearch:C,handlePageChange:v,handlePageSizeChange:k,handleCheckboxChange:h=>{const{row:T,checked:I}=h;E(T,I)},handleCheckboxAll:h=>{const{checked:T,records:I}=h;T?I.forEach(U=>E(U,!0)):c.value.forEach(U=>E(U,!1))},handleRadioChange:h=>{const{row:T}=h;i.value=[T]},removeRow:h=>{E(h,!1)},handleOk:()=>{n("update:modelValue",i.value),n("confirm",i.value),n("update:visible",!1)},handleCancel:()=>{i.value=[],n("update:modelValue",[]),n("cancel"),n("update:visible",!1)},toggleRowSelection:E,reset:()=>{c.value=[],i.value=[],l.value.current=1,l.value.total=0,n("update:modelValue",[])}}}const Qs={class:"flex flex-col h-full"},Ws={class:"mb-4 border-b border-gray-100 pb-4 shrink-0"},qs={class:"flex-1 overflow-hidden"},Js={class:"w-[180px] border-l border-gray-200 bg-gray-50 flex flex-col ml-2 overflow-hidden shrink-0"},Hs={class:"font-bold px-2 py-2 text-gray-700 flex justify-between items-center text-xs border-b border-gray-200 shrink-0"},Ys={class:"flex-1 min-h-0 overflow-y-auto p-2 custom-scrollbar"},Gs={class:"text-xs font-medium text-gray-800 truncate leading-none mb-1"},Ks={class:"text-[10px] text-gray-500 truncate leading-none"},Xs=["onClick"],Zs={key:1,class:"h-full flex items-center justify-center text-gray-400 text-xs"},ei={class:"flex justify-between items-center w-full"},ti={class:"space-x-2"},Qr=Ue(e.defineComponent({name:"SunnySearchModal",inheritAttrs:!1,__name:"SunnySearchModal",props:{visible:{type:Boolean},formSchema:{},tableColumns:{},searchApi:{},modelValue:{},fieldNames:{default:()=>({label:"label",value:"value",desc:"desc"})},commonConfig:{default:()=>({colProps:{xs:24,sm:12,md:6,lg:6,xl:6,xxl:6}})},helpMessage:{default:"支持跨页多选,翻页保留选中状态;双击表格行可快速确认。"},title:{default:"数据查询"},multiple:{type:Boolean,default:!0},rowKey:{default:"id"},width:{default:"800px"},contentHeight:{default:300},resetOnOpen:{type:Boolean,default:!0},clearOnSearch:{type:Boolean,default:!1},defaultModel:{}},emits:["update:visible","update:modelValue","confirm","cancel"],setup(t,{expose:n,emit:r}){const o=e.useSlots(),i=t,l=r,c=e.computed({get:()=>i.visible,set:Z=>l("update:visible",Z)}),u=e.ref(),f=e.ref(null),{loading:g,searchParams:y,selectedRows:m,pagination:b,tableData:C,actualFieldNames:v,actualRowKey:k,initDefaultValues:E,resetFormValues:$,handleSearch:M,handlePageChange:A,handlePageSizeChange:O,handleCheckboxChange:B,handleCheckboxAll:P,handleRadioChange:S,removeRow:h,handleOk:T,handleCancel:I,toggleRowSelection:U,reset:D}=Us(i,l);n({reset:D});const L=async()=>{b.value.current=1,$(),await e.nextTick(),await Q()},Q=async()=>{if(!f.value)return M(),!0;try{const{valid:Z}=await f.value.validate();return Z?(M(),!0):!1}catch(Z){return console.error("Form validation failed:",Z),!1}},z=async Z=>{b.value.current=1,i.clearOnSearch&&(m.value=[]),M(Z)},re=e.computed(()=>({border:!0,stripe:!0,showOverflow:!0,height:i.contentHeight,align:"center",autoResize:!0,columnConfig:{resizable:!0},rowConfig:{isCurrent:!0,isHover:!0,keyField:k.value},checkboxConfig:{trigger:"row",highlight:!0,reserve:!1},radioConfig:{trigger:"row",highlight:!0,reserve:!1}}));e.watch([()=>C.value,()=>m.value],async()=>{await e.nextTick();const Z=u.value?.getGrid?.()||u.value;if(Z&&C.value.length>0){Z.clearCheckboxRow();const ne=C.value.filter(Y=>m.value.some(Ce=>Ce[k.value]===Y[k.value]));ne.length>0&&Z.setCheckboxRow(ne,!0)}},{deep:!0});const pe=({row:Z})=>{if(!i.multiple)m.value=[Z],T();else{const ne=m.value.some(Y=>Y[k.value]===Z[k.value]);U(Z,!ne)}};return e.watch(()=>i.visible,Z=>{Z&&(E(),i.resetOnOpen&&(C.value=[],b.value.total=0,e.nextTick(()=>{Q()})))},{immediate:!0}),(Z,ne)=>(e.openBlock(),e.createBlock(at,{modelValue:c.value,"onUpdate:modelValue":ne[3]||(ne[3]=Y=>c.value=Y),title:i.title,width:i.width,"unmount-on-close":"","title-align":"start",fullscreen:!1,"help-message":i.helpMessage,onCancel:e.unref(I),onClose:e.unref(I),onOk:e.unref(T)},{footer:e.withCtx(()=>[e.createElementVNode("div",ei,[e.createVNode(e.unref(R.Pagination),{current:e.unref(b).current,"onUpdate:current":ne[2]||(ne[2]=Y=>e.unref(b).current=Y),"page-size":e.unref(b).pageSize,total:e.unref(b).total,"show-total":"","show-page-size":"","page-size-options":[20,50,100,200],size:"small",onChange:e.unref(A),onPageSizeChange:e.unref(O)},null,8,["current","page-size","total","onChange","onPageSizeChange"]),e.createElementVNode("div",ti,[e.createVNode(e.unref(R.Button),{onClick:e.unref(I)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(te.$t)("common.cancel")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(R.Button),{type:"primary",onClick:e.unref(T)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(te.$t)("common.confirm")),1)]),_:1},8,["onClick"])])])]),default:e.withCtx(()=>[e.createElementVNode("div",Qs,[e.createElementVNode("div",Ws,[e.createVNode(Lr,{ref_key:"formRef",ref:f,values:e.unref(y),"onUpdate:values":ne[0]||(ne[0]=Y=>e.isRef(y)?y.value=Y:null),schema:i.formSchema,"common-config":i.commonConfig,"show-default-actions":"","reset-button-options":{show:!0},onSubmit:z,onReset:L,layout:"vertical"},e.createSlots({_:2},[e.renderList(e.unref(o),(Y,Ce)=>({name:Ce,fn:e.withCtx(ye=>[e.renderSlot(Z.$slots,Ce,e.normalizeProps(e.guardReactiveProps(ye)),void 0,!0)])}))]),1032,["values","schema","common-config"])]),e.createElementVNode("div",{class:"flex min-h-0 overflow-hidden box-border border border-gray-200 rounded",style:e.normalizeStyle({height:typeof i.contentHeight=="number"?i.contentHeight+"px":i.contentHeight})},[e.createElementVNode("div",qs,[e.createVNode(_r,e.mergeProps({ref_key:"gridRef",ref:u,columns:i.tableColumns,data:e.unref(C),loading:e.unref(g)},re.value,{onCheckboxChange:e.unref(B),onCheckboxAll:e.unref(P),onRadioChange:e.unref(S),onCellDblclick:pe}),null,16,["columns","data","loading","onCheckboxChange","onCheckboxAll","onRadioChange"])]),e.createElementVNode("div",Js,[e.createElementVNode("div",Hs,[e.createElementVNode("span",null,e.toDisplayString(e.unref(te.$t)("common.selected"))+" ("+e.toDisplayString(e.unref(m).length)+")",1),e.unref(m).length?(e.openBlock(),e.createElementBlock("span",{key:0,class:"text-xs text-blue-500 cursor-pointer",onClick:ne[1]||(ne[1]=Y=>m.value=[])},e.toDisplayString(e.unref(te.$t)("common.clear")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ys,[e.unref(m).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(m),Y=>(e.openBlock(),e.createElementBlock("div",{key:Y[e.unref(k)],class:"relative group px-2 py-1 mb-1 bg-white border border-gray-200 rounded hover:shadow-sm transition-all h-[42px] flex flex-col justify-center"},[e.createVNode(e.unref(R.Tooltip),{content:`${Y[e.unref(v).desc]}`},{default:e.withCtx(()=>[e.createElementVNode("div",Gs,e.toDisplayString(Y[e.unref(v).value]||"-"),1),e.createElementVNode("div",Ks,e.toDisplayString(Y[e.unref(v).label]||" "),1)]),_:2},1032,["content"]),e.createElementVNode("div",{class:"absolute top-0.5 right-0.5 opacity-0 group-hover:opacity-100 cursor-pointer text-gray-400 hover:text-red-500 transition-opacity p-0.5 bg-white rounded-full shadow-sm",onClick:Ce=>e.unref(h)(Y)},[e.createVNode(e.unref(Cr),{size:10})],8,Xs)]))),128)):(e.openBlock(),e.createElementBlock("div",Zs,e.toDisplayString(e.unref(te.$t)("common.noData")),1))])])],4)])]),_:3},8,["modelValue","title","width","help-message","onCancel","onClose","onOk"]))}}),[["__scopeId","data-v-8a38d826"]]),Wr={};async function qr(t){const n=Wr[t];return n?await n():(console.warn(`[SunnyBusinessSearch] Config for type "${t}" not found.`),null)}function ri(t,n){Wr[t]=n}function ni(t,n){const r=e.ref(!1),o=e.ref(!1),i=e.ref({}),l=e.computed({get:()=>t.modelValue||[],set:b=>{n("update:modelValue",b),n("change",b)}}),c=()=>Se.businessSearchAdapter,u=b=>async C=>{if(!b?.search)return console.warn("[SunnyBusinessSearch] No search adapter configured."),{records:[],total:0};try{return await b.search({...C,cNum:t.cNum})}catch(v){throw console.error("[SunnyBusinessSearch] Search failed:",v),v}},f=async()=>{if(!t.cNum)return;const b=c();if(!b?.loadConfig){console.warn("[SunnyBusinessSearch] No loadConfig adapter configured. Please call setupBusinessForm() in your app entry.");return}o.value=!0;try{const C=await b.loadConfig(t.cNum);C.searchApi=u(b),i.value=C}catch(C){console.error("[SunnyBusinessSearch] Failed to load dynamic config:",C)}finally{o.value=!1}},g=async()=>{if(t.type){o.value=!0;try{const b=await qr(t.type);b&&(i.value=b)}catch(b){console.error("[SunnyBusinessSearch] Failed to load static config:",b)}finally{o.value=!1}}},y=async()=>{r.value=!0,t.cNum?i.value.title||await f():t.type&&(i.value.title||await g())},m=b=>{l.value=b,r.value=!1};return e.watch(()=>[t.cNum,t.type],()=>{i.value={}}),{visible:r,loading:o,currentConfig:i,selectedValues:l,handleOpen:y,handleConfirm:m}}const oi={class:"sunny-business-search w-full"},Qt=e.defineComponent({name:"SunnyBusinessSearch",inheritAttrs:!1,__name:"SunnyBusinessSearch",props:{modelValue:{default:()=>[]},type:{},cNum:{},placeholder:{default:"请选择"},multiple:{type:Boolean,default:void 0},cSelectionMode:{},maxTagCount:{},modalProps:{default:()=>({})},disabled:{type:Boolean,default:!1},fieldNames:{},defaultModel:{}},emits:["update:modelValue","change"],setup(t,{emit:n}){const r=t,o=n,{visible:i,currentConfig:l,selectedValues:c,handleOpen:u,handleConfirm:f}=ni(r,o),g=e.computed(()=>r.fieldNames||r.modalProps?.fieldNames||l.value.fieldNames||{label:"label",value:"value"}),y=e.computed(()=>{let m=r.modalProps?.multiple;m===void 0&&(m=r.multiple),m===void 0&&r.cSelectionMode&&(m=r.cSelectionMode!=="single"),m=m??l.value.multiple??!0;let C=[...r.modalProps.tableColumns||l.value.tableColumns||[]];return!C.some(k=>k.type==="checkbox"||k.type==="radio")&&C.length>0&&(m?C.unshift({type:"checkbox",width:50,fixed:"left",align:"center"}):C.unshift({type:"radio",width:50,fixed:"left",align:"center"})),{...l.value,multiple:m,fieldNames:g.value,defaultModel:r.defaultModel||l.value.defaultModel,...r.modalProps,tableColumns:C}});return(m,b)=>(e.openBlock(),e.createElementBlock("div",oi,[e.createVNode(e.unref(Pr),e.mergeProps(m.$attrs,{"model-value":e.unref(c),placeholder:t.placeholder,disabled:t.disabled,"max-tag-count":t.maxTagCount,"field-names":g.value,"onUpdate:modelValue":b[0]||(b[0]=C=>c.value=C),onSearch:e.unref(u)}),e.createSlots({_:2},[e.renderList(m.$slots,(C,v)=>({name:v,fn:e.withCtx(k=>[e.renderSlot(m.$slots,v,e.normalizeProps(e.guardReactiveProps(k||{})))])}))]),1040,["model-value","placeholder","disabled","max-tag-count","field-names","onSearch"]),e.unref(l).title||e.unref(i)?(e.openBlock(),e.createBlock(e.unref(Qr),e.mergeProps({key:0,visible:e.unref(i),"onUpdate:visible":b[1]||(b[1]=C=>e.isRef(i)?i.value=C:null),"model-value":e.unref(c)},y.value,{onConfirm:e.unref(f)}),null,16,["visible","model-value","onConfirm"])):e.createCommentVNode("",!0)]))}}),ai=Object.freeze(Object.defineProperty({__proto__:null,default:Qt},Symbol.toStringTag,{value:"Module"})),Jr={findAllByResourceid:async()=>({data:[]}),findSearchPlanColsByPlanId:async()=>({data:{}}),insert:async()=>({}),update:async()=>({}),del:async()=>({}),findDefSearchPlan:async()=>({data:{}})};function Hr(t,n,r,o,i=Jr){const l=e.ref(!1),c=e.ref(""),u=e.ref(!1),f=async()=>{if(t.searchPlanList.length>0&&!c.value.trim()){u.value=!0;return}u.value=!1;let M=r?.value||t.model;if(o)try{const B=await o.getValues();B&&(M=B)}catch{}const A={...M};if(Object.keys(A).forEach(B=>{const P=A[B];Array.isArray(P)&&(t.formConfig?.some(h=>h.fieldName===B&&h.component&&(h.component.name==="SunnyBusinessSearch"||h.component==="SunnyBusinessSearch"))?A[B]=JSON.stringify(P):A[B]=P.map(h=>{let T=h;return typeof h=="object"&&h!==null&&(T=h.value!==void 0?h.value:h.ID!==void 0?h.ID:h.id!==void 0?h.id:h),typeof T=="string"?T:String(T)}))}),!Object.values(A).some(B=>Array.isArray(B)?B.length>0:B!==""&&B!==void 0&&B!==null)){R.Message.error("请输入查询条件");return}try{let B=c.value.trim();t.searchPlanList.length===0&&(B="默认方案");const P=await i.insert({assSearchplan:{cSearchplanname:B,...t.nResourceid&&{nResourceid:t.nResourceid}},colMap:A});if(P.message&&R.Message.success(P.message),t.resourceId){const S=await b(t.resourceId);n("update:searchPlanList",S);const h=S.find(T=>T.CSEARCHPLANNAME===B);h&&await m(h)}n("add",B,{...A}),c.value=""}catch(B){n("error",B)}},g=async()=>{if(!t.currentSearchPlan){u.value=!0;return}u.value=!1;let M=r?.value||t.model;if(o)try{const B=await o.getValues();B&&(M=B)}catch{}const A={...M};if(Object.keys(A).forEach(B=>{const P=A[B];Array.isArray(P)&&(t.formConfig?.some(h=>h.fieldName===B&&h.component&&(h.component.name==="SunnyBusinessSearch"||h.component==="SunnyBusinessSearch"))?A[B]=JSON.stringify(P):A[B]=P.map(h=>{let T=h;return typeof h=="object"&&h!==null&&(T=h.value!==void 0?h.value:h.ID!==void 0?h.ID:h.id!==void 0?h.id:h),typeof T=="string"?T:String(T)}))}),!Object.values(A).some(B=>Array.isArray(B)?B.length>0:B!==""&&B!==void 0&&B!==null)){R.Message.error("请输入查询条件");return}try{const B=await i.update({assSearchplan:{id:t.currentSearchPlan.ID,...t.nResourceid&&{nResourceid:t.nResourceid},...c.value.trim()&&{cSearchplanname:c.value.trim()}},colMap:A});if(B.message&&R.Message.success(B.message),t.resourceId){const P=await b(t.resourceId);n("update:searchPlanList",P);const S=P.find(h=>h.ID===t.currentSearchPlan?.ID);S&&await m(S)}n("update",t.currentSearchPlan?.ID,c.value.trim()||t.currentSearchPlan?.CSEARCHPLANNAME,{...A}),c.value=""}catch(B){n("error",B)}},y=async M=>{try{const A=await i.del({id:M.ID});if(n("delete",M.ID),t.currentSearchPlan&&t.currentSearchPlan.ID===M.ID&&n("update:currentSearchPlan",void 0),A.message&&R.Message.success(A.message),t.resourceId){const O=await b(t.resourceId);n("update:searchPlanList",O)}}catch(A){n("error",A)}},m=async M=>{n("update:currentSearchPlan",M);try{const A={...t.nResourceid&&{nResourceid:t.nResourceid},nPlanId:M.ID};let B=(await i.findSearchPlanColsByPlanId(A)).result||{};if(Object.keys(B).forEach(P=>{let S=B[P];try{if(t.formConfig?.some(T=>T.fieldName===P&&T.component&&(T.component.name==="SunnyBusinessSearch"||T.component==="SunnyBusinessSearch"))){if(typeof S=="string")try{S=JSON.parse(S)}catch{}if(Array.isArray(S)&&S.every(I=>typeof I=="string")&&S.length>0)try{const I=S.join(""),U=[];let D="",L=0;for(let Q=0;Q<I.length;Q++){const z=I[Q];if(D+=z,z==="{")L++;else if(z==="}"&&(L--,L===0)){try{U.push(JSON.parse(D))}catch{}D=""}}U.length>0?S=U:S=JSON.parse(I)}catch{try{const I=S.join(""),U=[];I.split("}{").map((L,Q)=>Q===0?L+"}":Q===I.split("}{").length-1?"{"+L:"{"+L+"}").forEach(L=>{if(L.trim()){const Q=L.match(/"([^"]+)"\s*:\s*("[^"]*"|\d+)/g)||[],z={};Q.forEach(re=>{const[pe,Z]=re.split(/\s*:\s*/),ne=pe.replace(/"/g,"");let Y=Z;Y.startsWith('"')&&Y.endsWith('"')?Y=Y.substring(1,Y.length-1):isNaN(Number(Y))||(Y=Number(Y)),z[ne]=Y}),Object.keys(z).length>0&&U.push(z)}}),U.length>0&&(S=U)}catch{}}}else{if(typeof S=="string"&&(S.startsWith("[")||S.includes(",")))try{S=JSON.parse(S)}catch{S.includes(",")&&(S=S.split(",").map(T=>T.trim()))}Array.isArray(S)&&(S=S.map(T=>{const I=typeof T=="string"?T.trim():T;return String(I)}))}B[P]=S}catch{}}),t.formConfig?.forEach(P=>{const S=P.fieldName;let h=B[S];if(h!=null&&P.component&&(P.component.name==="SunnyBusinessSearch"||P.component==="SunnyBusinessSearch")){if(typeof h=="string")try{h=JSON.parse(h)}catch{}if(Array.isArray(h)){if(h.every(I=>typeof I=="string")&&h.length>0)try{const I=h.join("");h=JSON.parse(I)}catch{}Array.isArray(h)?B[S]=h.map(I=>typeof I=="object"&&I!==null?I:{value:I}):typeof h=="object"&&h!==null?B[S]=[h]:B[S]=h}}}),r&&(r.value={...B}),o)try{await o.setValues(B)}catch{}n("select",M)}catch(A){n("error",A)}},b=async M=>{try{const A={...t.nResourceid&&{nResourceid:t.nResourceid}};return(await i.findAllByResourceid(A)).result?.searchplanList||[]}catch(A){return n("error",A),[]}};return{visible:l,inputValue:c,showNameError:u,handleAdd:f,handleUpdate:g,handleDelete:y,handleSelect:m,handleReset:async()=>{if(o)try{await o.resetForm()}catch{}if(r){const M={...r.value};Object.keys(M).forEach(A=>{M[A]=""}),r.value=M}},handleSearch:async()=>{let M=r?.value||t.model;if(o)try{const A=await o.getValues();A&&(M=A)}catch{}n("search",{...M}),l.value=!1},handleClose:()=>{l.value=!1,c.value="",u.value=!1},handleOpen:async()=>{if(l.value=!0,c.value="",u.value=!1,r){const M={...r.value};Object.keys(M).forEach(A=>{M[A]=""}),r.value=M}if(o)try{await o.resetForm()}catch{}if(t.resourceId)try{const M=await b(t.resourceId);if(n("update:searchPlanList",M),M.length>0){n("update:currentSearchPlan",M[0]);const A={...t.nResourceid&&{nResourceid:t.nResourceid},nPlanId:M[0].ID};let B=(await i.findSearchPlanColsByPlanId(A)).result||{};if(Object.keys(B).forEach(P=>{let S=B[P];try{if(t.formConfig?.some(T=>T.fieldName===P&&T.component&&(T.component.name==="SunnyBusinessSearch"||T.component==="SunnyBusinessSearch"))){if(typeof S=="string")try{S=JSON.parse(S)}catch{}if(Array.isArray(S)&&S.every(I=>typeof I=="string")&&S.length>0)try{const I=S.join("");S=JSON.parse(I)}catch{}}else{if(typeof S=="string"&&(S.startsWith("[")||S.includes(",")))try{S=JSON.parse(S)}catch{S.includes(",")&&(S=S.split(",").map(T=>T.trim()))}Array.isArray(S)&&(S=S.map(T=>{const I=typeof T=="string"?T.trim():T;return String(I)}))}B[P]=S}catch{}}),t.formConfig?.forEach(P=>{const S=P.fieldName;let h=B[S];if(h!=null&&P.component&&(P.component.name==="SunnyBusinessSearch"||P.component==="SunnyBusinessSearch")){if(typeof h=="string")try{h=JSON.parse(h)}catch{}if(Array.isArray(h)){if(h.every(I=>typeof I=="string")&&h.length>0)try{const I=h.join(""),U=[];let D="",L=0;for(let Q=0;Q<I.length;Q++){const z=I[Q];if(D+=z,z==="{")L++;else if(z==="}"&&(L--,L===0)){try{U.push(JSON.parse(D))}catch{}D=""}}U.length>0?h=U:h=JSON.parse(I)}catch{try{const I=h.join(""),U=[];I.split("}{").map((L,Q)=>Q===0?L+"}":Q===I.split("}{").length-1?"{"+L:"{"+L+"}").forEach(L=>{if(L.trim()){const Q=L.match(/"([^"]+)"\s*:\s*("[^"]*"|\d+)/g)||[],z={};Q.forEach(re=>{const[pe,Z]=re.split(/\s*:\s*/),ne=pe.replace(/"/g,"");let Y=Z;Y.startsWith('"')&&Y.endsWith('"')?Y=Y.substring(1,Y.length-1):isNaN(Number(Y))||(Y=Number(Y)),z[ne]=Y}),Object.keys(z).length>0&&U.push(z)}}),U.length>0&&(h=U)}catch{}}Array.isArray(h)?B[S]=h.map(I=>typeof I=="object"&&I!==null?I:{value:I}):typeof h=="object"&&h!==null?B[S]=[h]:B[S]=h}}}),r&&(r.value={...B}),o)try{await o.setValues(B)}catch{}n("select",M[0])}}catch{}},loadSearchPlans:b,loadDefaultSearchPlan:async()=>{try{const M={...t.nResourceid&&{nResourceid:t.nResourceid}},O=(await i.findDefSearchPlan(M)).result||[];if(O.length>0){const B={};if(O.forEach(P=>{P.C_COLNAME&&P.C_COLVALUE!==void 0&&(B[P.C_COLNAME]=P.C_COLVALUE)}),Object.keys(B).forEach(P=>{let S=B[P];try{if(t.formConfig?.some(T=>T.fieldName===P&&T.component&&(T.component.name==="SunnyBusinessSearch"||T.component==="SunnyBusinessSearch"))){if(typeof S=="string")try{S=JSON.parse(S)}catch{}if(Array.isArray(S)&&S.every(I=>typeof I=="string")&&S.length>0)try{const I=S.join("");S=JSON.parse(I)}catch{}}else{if(typeof S=="string"&&(S.startsWith("[")||S.includes(",")))try{S=JSON.parse(S)}catch{S.includes(",")&&(S=S.split(",").map(T=>T.trim()))}Array.isArray(S)&&(S=S.map(T=>{const I=typeof T=="string"?T.trim():T;return String(I)}))}B[P]=S}catch{}}),t.formConfig?.forEach(P=>{const S=P.fieldName;let h=B[S];if(h!=null&&P.component&&(P.component.name==="SunnyBusinessSearch"||P.component==="SunnyBusinessSearch")){if(typeof h=="string")try{h=JSON.parse(h)}catch{}if(Array.isArray(h)){if(h.every(I=>typeof I=="string")&&h.length>0)try{const I=h.join(""),U=[];let D="",L=0;for(let Q=0;Q<I.length;Q++){const z=I[Q];if(D+=z,z==="{")L++;else if(z==="}"&&(L--,L===0)){try{U.push(JSON.parse(D))}catch{}D=""}}U.length>0?h=U:h=JSON.parse(I)}catch{try{const I=h.join(""),U=[];I.split("}{").map((L,Q)=>Q===0?L+"}":Q===I.split("}{").length-1?"{"+L:"{"+L+"}").forEach(L=>{if(L.trim()){const Q=L.match(/"([^"]+)"\s*:\s*("[^"]*"|\d+)/g)||[],z={};Q.forEach(re=>{const[pe,Z]=re.split(/\s*:\s*/),ne=pe.replace(/"/g,"");let Y=Z;Y.startsWith('"')&&Y.endsWith('"')?Y=Y.substring(1,Y.length-1):isNaN(Number(Y))||(Y=Number(Y)),z[ne]=Y}),Object.keys(z).length>0&&U.push(z)}}),U.length>0&&(h=U)}catch{}}Array.isArray(h)?B[S]=h.map(I=>typeof I=="object"&&I!==null?I:{value:I}):typeof h=="object"&&h!==null?B[S]=[h]:B[S]=h}}}),r&&(r.value={...B}),o)try{await o.setValues(B)}catch{}return n("default-plan-loaded",B),B}return n("default-plan-loaded",{}),{}}catch(M){return n("error",M),n("default-plan-loaded",{}),{}}}}}const si={class:"inline-block"},ii=["disabled"],li={class:"p-5 relative"},ci={key:0,class:"absolute inset-0 bg-white/80 flex flex-col items-center justify-center z-10 rounded"},di={class:"text-sm text-[var(--color-text-2)]"},ui={class:"w-2/3 min-w-0 pr-6 border-r border-[#D8D8D8]"},fi={class:"w-1/3 pl-6"},pi={class:"text-base font-semibold mb-4 text-[var(--color-text-1)]"},mi={class:"mb-5"},hi={class:"mb-3"},gi={class:"block text-sm text-[var(--color-text-2)] mb-1"},yi=["placeholder","disabled"],bi={key:0,class:"text-xs text-red-500 mt-1"},Ci={class:"flex gap-2 mt-3"},Si=["disabled"],wi=["disabled"],ki={class:"text-base font-semibold mb-4 text-[var(--color-text-1)]"},Ai={class:"max-h-44 overflow-y-auto border border-[var(--color-border-2)] rounded p-2"},Ei=["onClick"],xi=["onClick","disabled"],vi={key:0,class:"text-center py-8 text-sm text-[var(--color-text-3)]"},Bi={class:"flex justify-end gap-3 pt-5 border-t border-[var(--color-border-2)]"},Pi=["disabled"],Ni=["disabled"],Yr=e.defineComponent({name:"SunnySearchPlan",inheritAttrs:!1,__name:"SunnySearchPlan",props:{formConfig:{default:()=>[]},model:{default:()=>({})},modelValue:{default:()=>({})},searchPlanList:{default:()=>[]},currentSearchPlan:{},resourceId:{},nResourceid:{},disabled:{type:Boolean,default:!1},modalProps:{default:()=>({})},formProps:{default:()=>({})},title:{default:()=>te.$t("common.searchPlan.title")},width:{default:900},loading:{type:Boolean,default:!1},api:{default:()=>Jr}},emits:["add","update","delete","select","reset","search","error","default-plan-loaded","update:model","update:modelValue","update:currentSearchPlan","update:searchPlanList"],setup(t,{emit:n}){const r=t,o=n,[,i]=Dr({schema:r.formConfig,model:r.modelValue||r.model}),l=e.ref({...r.modelValue||r.model}),{visible:c,inputValue:u,showNameError:f,handleAdd:g,handleUpdate:y,handleDelete:m,handleSelect:b,handleReset:C,handleSearch:v,handleClose:k,handleOpen:E,loadSearchPlans:$,loadDefaultSearchPlan:M}=Hr(r,o,l,i,r.api);e.onMounted(async()=>{if(r.resourceId)try{const L=await $(r.resourceId);o("update:searchPlanList",L),await M()}catch(L){console.error("Failed to initialize search plan:",L)}else try{await M()}catch(L){console.error("Failed to load default search plan:",L)}});const A=async()=>{await E()},O=()=>{console.log("SunnyUseForm mounted"),i&&(r.modelValue||r.model)&&i.setValues(r.modelValue||r.model).catch(L=>{console.error("setValues error:",L)})};e.watch(()=>[r.model,r.modelValue],([L,Q])=>{const z=Q||L;z&&(l.value={...z},i&&i.setValues(z).catch(re=>{console.error("setValues error:",re)}))},{deep:!0}),e.watch(()=>l.value,L=>{o("update:model",L),o("update:modelValue",L)},{deep:!0});const B=e.computed(()=>({...r.modalProps})),P=e.computed(()=>r.formConfig.map(L=>({...L,labelWidth:80,colProps:{...L.colProps,span:8}}))),S=e.computed(()=>r.searchPlanList),h=e.computed(()=>r.currentSearchPlan),T=e.computed(()=>r.disabled),I=e.computed(()=>r.formProps),U=e.computed(()=>r.title),D=e.computed(()=>r.width);return(L,Q)=>(e.openBlock(),e.createElementBlock("div",si,[e.renderSlot(L.$slots,"trigger",{open:A,disabled:T.value},()=>[e.createElementVNode("button",{class:"px-3 py-1.5 border border-[var(--color-border-2)] rounded bg-white text-base transition-all hover:border-[rgb(var(--primary-6))] hover:text-[rgb(var(--primary-6))] disabled:cursor-not-allowed disabled:opacity-60",disabled:T.value,onClick:A},e.toDisplayString(e.unref(te.$t)("common.searchPlan.title")),9,ii)]),e.createVNode(e.unref(at),e.mergeProps({visible:e.unref(c),"onUpdate:visible":Q[5]||(Q[5]=z=>e.isRef(c)?c.value=z:null),title:U.value,width:D.value,top:"50px","close-on-click-modal":!1},B.value,{onCancel:e.unref(k),onClose:e.unref(k)}),{footer:e.withCtx(()=>[e.createElementVNode("div",Bi,[e.createElementVNode("button",{class:"px-3 py-1.5 border border-[var(--color-border-2)] rounded bg-white text-sm transition-colors hover:border-[rgb(var(--primary-6))] hover:text-[rgb(var(--primary-6))] disabled:cursor-not-allowed disabled:opacity-60",onClick:Q[3]||(Q[3]=(...z)=>e.unref(C)&&e.unref(C)(...z)),disabled:r.loading},e.toDisplayString(e.unref(te.$t)("common.searchPlan.reset")),9,Pi),e.createElementVNode("button",{class:"px-3 py-1.5 bg-[rgb(var(--primary-6))] border border-[rgb(var(--primary-6))] text-white text-sm rounded hover:bg-[rgb(var(--primary-7))] transition-colors disabled:cursor-not-allowed disabled:opacity-60",onClick:Q[4]||(Q[4]=(...z)=>e.unref(v)&&e.unref(v)(...z)),disabled:r.loading},e.toDisplayString(e.unref(te.$t)("common.searchPlan.search")),9,Ni)])]),default:e.withCtx(()=>[e.createElementVNode("div",li,[r.loading?(e.openBlock(),e.createElementBlock("div",ci,[Q[6]||(Q[6]=e.createElementVNode("div",{class:"w-7 h-7 border-3 border-[var(--color-border-2)] border-t-[rgb(var(--primary-6))] rounded-full animate-spin mb-2.5"},null,-1)),e.createElementVNode("div",di,e.toDisplayString(e.unref(te.$t)("common.searchPlan.loading")),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass([{"opacity-60":r.loading},"flex gap-5"])},[e.createElementVNode("div",ui,[e.createVNode(e.unref(jr),e.mergeProps({"form-api":e.unref(i),schema:P.value,"show-default-actions":!1,"show-message":!1,layout:"vertical"},I.value,{onMounted:O}),null,16,["form-api","schema"])]),e.createElementVNode("div",fi,[e.createElementVNode("h3",pi,e.toDisplayString(e.unref(te.$t)("common.searchPlan.newPlan")),1),e.createElementVNode("div",mi,[e.createElementVNode("div",hi,[e.createElementVNode("label",gi,e.toDisplayString(e.unref(te.$t)("common.searchPlan.planName")),1),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":Q[0]||(Q[0]=z=>e.isRef(u)?u.value=z:null),type:"text",placeholder:e.unref(te.$t)("common.searchPlan.planNamePlaceholder"),class:"w-full px-2 py-1.5 border border-[var(--color-border-2)] rounded text-xs focus:outline-none focus:border-[rgb(var(--primary-6))] focus:ring-2 focus:ring-[rgb(var(--primary-1))]",disabled:r.loading},null,8,yi),[[e.vModelText,e.unref(u)]]),!e.unref(u).trim()&&e.unref(f)?(e.openBlock(),e.createElementBlock("div",bi,e.toDisplayString(e.unref(te.$t)("common.searchPlan.planNameRequired")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ci,[e.createElementVNode("button",{class:"px-3 py-1 border border-[rgb(var(--primary-6))] text-[rgb(var(--primary-6))] text-xs rounded hover:bg-[rgb(var(--primary-6))] hover:text-white transition-colors disabled:cursor-not-allowed disabled:opacity-60",onClick:Q[1]||(Q[1]=(...z)=>e.unref(g)&&e.unref(g)(...z)),disabled:r.loading},e.toDisplayString(e.unref(te.$t)("common.searchPlan.add")),9,Si),e.createElementVNode("button",{class:"px-3 py-1 border border-[#ff4949] text-[#ff4949] text-xs rounded hover:bg-[#ff4949] hover:text-white transition-colors disabled:cursor-not-allowed disabled:opacity-60",disabled:!h.value||r.loading,onClick:Q[2]||(Q[2]=(...z)=>e.unref(y)&&e.unref(y)(...z))},e.toDisplayString(e.unref(te.$t)("common.searchPlan.update")),9,wi)])]),Q[7]||(Q[7]=e.createElementVNode("div",{class:"h-px bg-[var(--color-border-2)] my-5"},null,-1)),e.createElementVNode("h3",ki,e.toDisplayString(e.unref(te.$t)("common.searchPlan.savedPlans")),1),e.createElementVNode("div",Ai,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(z,re)=>(e.openBlock(),e.createElementBlock("div",{key:z.ID,class:e.normalizeClass(["flex items-center p-2 mb-1 rounded cursor-pointer transition-all hover:bg-[var(--color-fill-1)] border border-transparent",{"bg-[rgb(var(--primary-1))] border-[rgb(var(--primary-6))]":h.value&&(h.value.ID==z.ID||h.value.ID===z.ID)}]),onClick:pe=>e.unref(b)(z),style:e.normalizeStyle({cursor:r.loading?"not-allowed":"pointer"})},[e.createElementVNode("div",{class:e.normalizeClass(["w-5 h-5 flex items-center justify-center rounded text-xs mr-2 text-[var(--color-text-2)]",h.value&&(h.value.ID==z.ID||h.value.ID===z.ID)?"bg-[rgb(var(--primary-6))] text-white":"bg-[var(--color-fill-2)]"])},e.toDisplayString(String(re+1).padStart(2,"0")),3),e.createElementVNode("div",{class:e.normalizeClass(["flex-1 text-xs truncate",h.value&&(h.value.ID==z.ID||h.value.ID===z.ID)?"text-[rgb(var(--primary-6))] font-medium":"text-[var(--color-text-1)]"])},e.toDisplayString(z.CSEARCHPLANNAME),3),e.createElementVNode("button",{class:"w-4 h-4 flex items-center justify-center border-none bg-transparent cursor-pointer text-sm text-[var(--color-text-3)] transition-colors rounded hover:text-[var(--color-danger)] hover:bg-[var(--color-danger-light)]",onClick:e.withModifiers(pe=>e.unref(m)(z),["stop"]),disabled:r.loading}," × ",8,xi)],14,Ei))),128)),S.value.length===0?(e.openBlock(),e.createElementBlock("div",vi,e.toDisplayString(e.unref(te.$t)("common.searchPlan.noPlans")),1)):e.createCommentVNode("",!0)])])],2)])]),_:1},16,["visible","title","width","onCancel","onClose"])]))}}),Ti={class:"w-full"},Vi={key:0,class:"flex justify-between items-center w-full"},Mi={class:"text-[var(--color-text-3)] text-xs"},Ii=e.defineComponent({name:"SunnyCustomizeSelect",inheritAttrs:!0,__name:"CustomizeSelect",props:{value:{default:""},cNum:{default:""},defaultQuery:{type:Boolean,default:!0},defaultConfig:{default:()=>({})},attrParam:{default:()=>({})},fieldNames:{default:()=>({label:"cKeyname",value:"cKeynumb"})}},emits:["update:modelValue","selectChange","change"],setup(t,{emit:n}){const r=R.Select,o=R.Option,i=t,l=n,c=e.getCurrentInstance(),u=e.ref({nType:1,cLabelslotcol:"",nSearchinterval:700}),f=e.ref([{cKeynumb:"",cKeyname:"",cSlot:""}]),g=e.ref([]),y=e.ref(!1),m=e.ref(!1),b=e.computed({get:()=>i.value,set:$=>{l("update:modelValue",$)}}),C=async()=>{if(i.cNum)try{const $=Se.customizeSelectAdapter;if(!$?.query){m.value=!0,R.Message.error("CustomizeSelect adapter not configured");return}const M={cNum:i.cNum,attrParam:{...i.attrParam}};b.value&&(M.cVal=ve.toString(b.value));const A=await $.query(M);f.value=A.options||[],g.value=A.options||[],A.config&&(u.value=Object.assign({},u.value,A.config)),m.value=!1}catch($){m.value=!0,R.Message.error($?.message||"加载失败")}},v=$=>{l("selectChange",$,c?.proxy)},k=ve.debounce($=>{if($!==""){y.value=!0;const M=Se.customizeSelectAdapter,A={cNum:i.cNum,attrParam:{...i.attrParam},searchCondition:$};Promise.resolve().then(async()=>{if(!M?.query)throw new Error("CustomizeSelect adapter not configured");return M.query(A)}).then(O=>{O.config&&(u.value=Object.assign({},u.value,O.config)),f.value=O.options||[],g.value=O.options||[]}).catch(O=>{R.Message.error(O?.message||"查询失败")}).finally(()=>{y.value=!1})}else f.value=g.value},u.value.nSearchinterval||700),E=()=>{k("")};return e.watch(()=>i.attrParam,()=>{C()},{deep:!0}),e.onMounted(()=>{i.defaultQuery&&i.defaultQuery===!0?C():i.cNum&&i.defaultQuery===!1&&(u.value=Object.assign({},u.value,i.defaultConfig))}),($,M)=>(e.openBlock(),e.createElementBlock("div",Ti,[e.createVNode(e.unref(r),e.mergeProps({modelValue:b.value,"onUpdate:modelValue":M[0]||(M[0]=A=>b.value=A),"allow-clear":"","allow-search":u.value.nType==1,loading:y.value,error:m.value},$.$attrs,{onChange:v,onClear:E,onSearch:e.unref(k),triggerProps:{contentClass:"customize-select-content"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,A=>(e.openBlock(),e.createBlock(e.unref(o),{key:A[i.fieldNames.value],label:A[i.fieldNames.label],value:A[i.fieldNames.value]},{default:e.withCtx(()=>[u.value.cLabelslotcol?(e.openBlock(),e.createElementBlock("div",Vi,[e.createElementVNode("span",null,e.toDisplayString(A.cKeyname),1),e.createElementVNode("span",Mi,e.toDisplayString(A.cSlot),1)])):e.createCommentVNode("",!0)]),_:2},1032,["label","value"]))),128))]),_:1},16,["modelValue","allow-search","loading","error","onSearch"])]))}}),Gr=e.defineComponent({__name:"SunnyExportModal",props:{exportUrl:{default:""},nmodid:{},nButtonid:{},conditionMap:{}},emits:["export-success","export-error","close"],setup(t,{expose:n,emit:r}){const{t:o}=br.useI18n(),i=t,l=r,c=e.ref(!1),u=e.ref([]),f=e.ref({}),g=e.ref(!1),y=e.ref(!1),m=[{label:o("common.exportModal.default"),value:"default"},{label:o("common.exportModal.varchar"),value:"varchar"},{label:o("common.exportModal.number"),value:"number"},{label:o("common.exportModal.date"),value:"date"}],b=[{label:"10000",value:"10000"},{label:"20000",value:"20000"},{label:"50000",value:"50000"},{label:"100000",value:"100000"}],C=async()=>{g.value=!0;try{const A=await Ve.post(`${Se.apiPrefix}${i.exportUrl}/export/openInit`,{nmodid:i.nmodid,nButtonid:i.nButtonid});A.data.code===200?(u.value=A.data.result.exportList,f.value=A.data.result.exportUserWebConfig,c.value=!0):R.Message.error(A.data.message)}catch(A){R.Message.error(A.message)}finally{g.value=!1}},v=()=>{C()},k=()=>{c.value=!1,l("close")};n({open:v,close:k});const E=({newIndex:A,oldIndex:O})=>{const B=u.value.splice(O,1)[0];u.value.splice(A,0,B)},$=async()=>{y.value=!0;try{u.value.forEach(P=>{P.colType==="spanselect"&&isNaN(Number(P.selId))});const A={conditionMap:i.conditionMap||{},exportList:u.value,exportUserWebConfig:f.value,nmodid:i.nmodid,nButtonid:i.nButtonid},O=await Ve.post(`${Se.apiPrefix}${i.exportUrl}/export/exportExecuteStream`,A,{responseType:"blob"}),B=new FileReader;B.onload=function(){const P=O.headers["content-disposition"]?.split("attachment;filename=")[1],S=new Blob([O.data]),h=document.createElement("a");h.href=URL.createObjectURL(S),h.download=decodeURI(P||"export.xlsx"),h.click(),URL.revokeObjectURL(h.href),k(),l("export-success",O)},B.readAsText(O.data)}catch(A){R.Message.error(A.message),l("export-error",A)}finally{y.value=!1}},M=()=>{k()};return(A,O)=>{const B=e.resolveComponent("vxe-checkbox"),P=e.resolveComponent("vxe-column"),S=e.resolveComponent("vxe-table");return e.openBlock(),e.createBlock(e.unref(R.Modal),{visible:c.value,"onUpdate:visible":O[2]||(O[2]=h=>c.value=h),title:e.unref(o)("common.exportModal.title"),width:700,"mask-closable":!1,onCancel:M},{footer:e.withCtx(()=>[e.createVNode(e.unref(R.Button),{onClick:M},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("common.modal.cancel")),1)]),_:1}),e.createVNode(e.unref(R.Button),{type:"primary",loading:y.value,onClick:$},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("common.modal.confirm")),1)]),_:1},8,["loading"])]),default:e.withCtx(()=>[e.createVNode(e.unref(R.Form),{model:f.value,layout:"inline"},{default:e.withCtx(()=>[f.value.showSheetRowNum?(e.openBlock(),e.createBlock(e.unref(R.FormItem),{key:0,label:e.unref(o)("common.exportModal.showSheetRowNum")},{default:e.withCtx(()=>[e.createVNode(e.unref(R.Select),{modelValue:f.value.nSheetRowNum,"onUpdate:modelValue":O[0]||(O[0]=h=>f.value.nSheetRowNum=h),placeholder:f.value.hintSheetRowNum,"allow-clear":""},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(b,h=>e.createVNode(e.unref(R.Option),{key:h.value,label:h.label,value:h.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])):e.createCommentVNode("",!0),f.value.showMaxExportNumber?(e.openBlock(),e.createBlock(e.unref(R.FormItem),{key:1,label:e.unref(o)("common.exportModal.showMaxExportNumber")},{default:e.withCtx(()=>[e.createVNode(e.unref(R.InputNumber),{modelValue:f.value.maxExportNumber,"onUpdate:modelValue":O[1]||(O[1]=h=>f.value.maxExportNumber=h),placeholder:f.value.hintMaxExportNumber},null,8,["modelValue","placeholder"])]),_:1},8,["label"])):e.createCommentVNode("",!0)]),_:1},8,["model"]),e.createVNode(S,{size:"mini",data:u.value,border:"","max-height":"500",loading:g.value,"row-config":{drag:!0},onRowDragEnd:E},{default:e.withCtx(()=>[e.createVNode(P,{title:e.unref(o)("common.exportModal.nSfExport"),width:"70",align:"center"},{default:e.withCtx(({row:h})=>[e.createVNode(B,{modelValue:h.nSfExport,"onUpdate:modelValue":T=>h.nSfExport=T,size:"small","checked-value":1,"unchecked-value":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["title"]),e.createVNode(P,{field:"colName",title:e.unref(o)("common.exportModal.colName"),align:"center"},null,8,["title"]),e.createVNode(P,{title:e.unref(o)("common.exportModal.colWidth"),width:"100",align:"center"},{default:e.withCtx(({row:h})=>[e.createVNode(e.unref(R.InputNumber),{modelValue:h.colWidth,"onUpdate:modelValue":T=>h.colWidth=T,size:"small"},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["title"]),e.createVNode(P,{title:e.unref(o)("common.exportModal.colDataType"),width:"120",align:"center"},{default:e.withCtx(({row:h})=>[e.createVNode(e.unref(R.Select),{modelValue:h.colDataType,"onUpdate:modelValue":T=>h.colDataType=T,size:"small"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(m,T=>e.createVNode(e.unref(R.Option),{key:T.value,label:T.label,value:T.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:1},8,["title"]),e.createVNode(P,{title:e.unref(o)("common.exportModal.drag"),width:"50",align:"center",fixed:"right",dragSort:!0},null,8,["title"])]),_:1},8,["data","loading"])]),_:1},8,["visible","title"])}}});function Ri(t={}){const n=e.shallowRef(null),r=e.ref(t);return[e.defineComponent({name:"useSunnyExportModalWrapper",setup(l,{attrs:c,slots:u}){return()=>e.h(Gr,{ref:n,...r.value,...l,...c},u)}}),{open:l=>{r.value={...r.value,...l},e.nextTick(()=>{n.value?.open()})},close:()=>{n.value?.close()}}]}const $i={class:"import-modal-body"},Oi={class:"option-label"},Kr=e.defineComponent({__name:"SunnyImportModal",props:{templateUrl:{default:""},uploadUrl:{default:""},accept:{default:".xlsx,.xls"},maxSize:{default:10},limit:{default:1},params:{},nModid:{},nButtonid:{}},emits:["upload-success","upload-error","download-success","download-error","close"],setup(t,{expose:n,emit:r}){const{t:o}=br.useI18n(),i=t,l=r,c=e.ref(!1),u=e.ref([]),f=e.ref(!1),g=e.ref(!1),y=e.ref(),m=A=>u.value.length>=i.limit?(R.Message.error(o("common.importModal.maxUploadLimit",{limit:i.limit})),!1):i.accept.split(",").some(P=>A.name.endsWith(P.replace(".","")))?A.size/1024/1024<i.maxSize?!0:(R.Message.error(o("common.importModal.maxSize",{maxSize:i.maxSize})),!1):(R.Message.error(o("common.importModal.onlySupport",{accept:i.accept})),!1),b=()=>{y.value.submit()},C=async A=>{const{onProgress:O,onError:B,onSuccess:P,fileItem:S,name:h}=A;f.value=!0;try{const T=new FormData;T.append("fileName",S.file),T.append("nModid",String(i.nModid)),T.append("nButtonid",String(i.nButtonid)),i.params&&T.append("paramMap",JSON.stringify(i.params));const I=g.value?`${Se.apiPrefix}${i.uploadUrl}/upload/fileUploadDecode`:`${Se.apiPrefix}${i.uploadUrl}/upload/fileUpload`,U=await Ve.post(I,T,{headers:{"Content-Type":"multipart/form-data"}});U.data.code===200?(R.Message.success({content:U.data.message||o("common.importModal.uploadSuccess"),duration:5e3}),P(U.data),l("upload-success",U.data),$()):(R.Message.error(U.data.message||o("common.importModal.uploadError")),B(U.data),l("upload-error",U.data))}catch(T){R.Message.error(T.message||o("common.importModal.uploadError")),B(T),l("upload-error",T)}finally{f.value=!1}},v=A=>{A.value=A},k=async()=>{try{const A=await Ve.post(`${Se.apiPrefix}${i.templateUrl}/export/fileDownload?nModid=${i.nModid}&nButtonid=${i.nButtonid}`,{},{responseType:"blob"}),O=new FileReader;O.onload=function(){const B=A.headers["content-disposition"]?.split("attachment;filename=")[1],P=new Blob([A.data]),S=document.createElement("a");S.href=URL.createObjectURL(P),S.download=decodeURI(B||"template.xlsx"),S.click(),URL.revokeObjectURL(S.href),l("download-success")},O.readAsText(A.data)}catch(A){R.Message.error(A.message||"模板下载失败"),l("download-error",A)}},E=()=>{c.value=!0,u.value=[],g.value=!1},$=()=>{u.value=[],c.value=!1,l("close")};n({open:E,close:$});const M=()=>{$()};return(A,O)=>{const B=e.resolveComponent("a-space");return e.openBlock(),e.createBlock(e.unref(R.Modal),{visible:c.value,"onUpdate:visible":O[3]||(O[3]=P=>c.value=P),title:e.unref(o)("common.importModal.title"),width:550,"mask-closable":!1,footer:!1,onCancel:M},{default:e.withCtx(()=>[e.createElementVNode("div",$i,[e.createVNode(e.unref(R.Upload),{action:"#","auto-upload":!1,ref_key:"uploadRef",ref:y,multiple:"","custom-request":C,onBeforeUpload:m,onChange:v},{"upload-button":e.withCtx(()=>[e.createVNode(B,null,{default:e.withCtx(()=>[e.createVNode(e.unref(R.Button),{type:"outline",disabled:f.value,onClick:e.withModifiers(k,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("common.importModal.downloadTemplate")),1)]),_:1},8,["disabled"]),e.createVNode(e.unref(R.Button),null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("common.importModal.selectFile")),1)]),_:1}),e.createVNode(e.unref(R.Button),{type:"primary",disabled:f.value,onClick:e.withModifiers(b,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("common.importModal.upload")),1)]),_:1},8,["disabled"]),e.createElementVNode("div",{onClick:O[2]||(O[2]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("span",Oi,e.toDisplayString(e.unref(o)("common.importModal.isdecode"))+":",1),e.createVNode(e.unref(R.Switch),{modelValue:g.value,"onUpdate:modelValue":O[0]||(O[0]=P=>g.value=P),onClick:O[1]||(O[1]=e.withModifiers(()=>{},["stop"]))},null,8,["modelValue"])])]),_:1})]),_:1},512)])]),_:1},8,["visible","title"])}}});function Fi(t={}){const n=e.shallowRef(null),r=e.ref(t);return[e.defineComponent({name:"useSunnyImportModalWrapper",setup(l,{attrs:c,slots:u}){return()=>e.h(Kr,{ref:n,...r.value,...l,...c},u)}}),{open:l=>{r.value={...r.value,...l},e.nextTick(()=>{n.value?.open()})},close:()=>{n.value?.close()}}]}var Xr=(t,n,r)=>{if(!n.has(t))throw TypeError("Cannot "+r)},Zr=(t,n,r)=>(Xr(t,n,"read from private field"),r?r.call(t):n.get(t)),ji=(t,n,r)=>{if(n.has(t))throw TypeError("Cannot add the same private member more than once");n instanceof WeakSet?n.add(t):n.set(t,r)},Di=(t,n,r,o)=>(Xr(t,n,"write to private field"),n.set(t,r),r);const en=[["aztec","Aztec"],["code_128","Code128"],["code_39","Code39"],["code_93","Code93"],["codabar","Codabar"],["databar","DataBar"],["databar_expanded","DataBarExpanded"],["data_matrix","DataMatrix"],["dx_film_edge","DXFilmEdge"],["ean_13","EAN-13"],["ean_8","EAN-8"],["itf","ITF"],["maxi_code","MaxiCode"],["micro_qr_code","MicroQRCode"],["pdf417","PDF417"],["qr_code","QRCode"],["rm_qr_code","rMQRCode"],["upc_a","UPC-A"],["upc_e","UPC-E"],["linear_codes","Linear-Codes"],["matrix_codes","Matrix-Codes"]],Li=[...en,["unknown"]].map(t=>t[0]),ct=new Map(en);function _i(t){for(const[n,r]of ct)if(t===r)return n;return"unknown"}function zi(t){if(tn(t))return{width:t.naturalWidth,height:t.naturalHeight};if(rn(t))return{width:t.width.baseVal.value,height:t.height.baseVal.value};if(nn(t))return{width:t.videoWidth,height:t.videoHeight};if(an(t))return{width:t.width,height:t.height};if(ln(t))return{width:t.displayWidth,height:t.displayHeight};if(on(t))return{width:t.width,height:t.height};if(sn(t))return{width:t.width,height:t.height};throw new TypeError("The provided value is not of type '(Blob or HTMLCanvasElement or HTMLImageElement or HTMLVideoElement or ImageBitmap or ImageData or OffscreenCanvas or SVGImageElement or VideoFrame)'.")}function tn(t){try{return t instanceof HTMLImageElement}catch{return!1}}function rn(t){try{return t instanceof SVGImageElement}catch{return!1}}function nn(t){try{return t instanceof HTMLVideoElement}catch{return!1}}function on(t){try{return t instanceof HTMLCanvasElement}catch{return!1}}function an(t){try{return t instanceof ImageBitmap}catch{return!1}}function sn(t){try{return t instanceof OffscreenCanvas}catch{return!1}}function ln(t){try{return t instanceof VideoFrame}catch{return!1}}function cn(t){try{return t instanceof Blob}catch{return!1}}function Ui(t){try{return t instanceof ImageData}catch{return!1}}function Qi(t,n){try{const r=new OffscreenCanvas(t,n);if(r.getContext("2d")instanceof OffscreenCanvasRenderingContext2D)return r;throw void 0}catch{const o=document.createElement("canvas");return o.width=t,o.height=n,o}}async function dn(t){if(tn(t)&&!await Hi(t))throw new DOMException("Failed to load or decode HTMLImageElement.","InvalidStateError");if(rn(t)&&!await Yi(t))throw new DOMException("Failed to load or decode SVGImageElement.","InvalidStateError");if(ln(t)&&Gi(t))throw new DOMException("VideoFrame is closed.","InvalidStateError");if(nn(t)&&(t.readyState===0||t.readyState===1))throw new DOMException("Invalid element or state.","InvalidStateError");if(an(t)&&Xi(t))throw new DOMException("The image source is detached.","InvalidStateError");const{width:n,height:r}=zi(t);if(n===0||r===0)return null;const o=Qi(n,r).getContext("2d");o.drawImage(t,0,0);try{return o.getImageData(0,0,n,r)}catch{throw new DOMException("Source would taint origin.","SecurityError")}}async function Wi(t){let n;try{if(globalThis.createImageBitmap)n=await createImageBitmap(t);else if(globalThis.Image){n=new Image;let r="";try{r=URL.createObjectURL(t),n.src=r,await n.decode()}finally{URL.revokeObjectURL(r)}}else return t}catch{throw new DOMException("Failed to load or decode Blob.","InvalidStateError")}return await dn(n)}function qi(t){const{width:n,height:r}=t;if(n===0||r===0)return null;const o=t.getContext("2d");try{return o.getImageData(0,0,n,r)}catch{throw new DOMException("Source would taint origin.","SecurityError")}}async function Ji(t){if(cn(t))return await Wi(t);if(Ui(t)){if(Ki(t))throw new DOMException("The image data has been detached.","InvalidStateError");return t}return on(t)||sn(t)?qi(t):await dn(t)}async function Hi(t){try{return await t.decode(),!0}catch{return!1}}async function Yi(t){var n;try{return await((n=t.decode)==null?void 0:n.call(t)),!0}catch{return!1}}function Gi(t){return t.format===null}function Ki(t){return t.data.buffer.byteLength===0}function Xi(t){return t.width===0&&t.height===0}function un(t,n){return t instanceof DOMException?new DOMException(`${n}: ${t.message}`,t.name):t instanceof Error?new t.constructor(`${n}: ${t.message}`):new Error(`${n}: ${t}`)}const fn=["Aztec","Codabar","Code128","Code39","Code93","DataBar","DataBarExpanded","DataMatrix","DXFilmEdge","EAN-13","EAN-8","ITF","Linear-Codes","Matrix-Codes","MaxiCode","MicroQRCode","None","PDF417","QRCode","rMQRCode","UPC-A","UPC-E"];function Zi(t){return t.join("|")}function el(t){const n=pn(t);let r=0,o=fn.length-1;for(;r<=o;){const i=Math.floor((r+o)/2),l=fn[i],c=pn(l);if(c===n)return l;c<n?r=i+1:o=i-1}return"None"}function pn(t){return t.toLowerCase().replace(/_-\[\]/g,"")}function tl(t,n){return t.Binarizer[n]}function rl(t,n){return t.CharacterSet[n]}const nl=["Text","Binary","Mixed","GS1","ISO15434","UnknownECI"];function ol(t){return nl[t.value]}function al(t,n){return t.EanAddOnSymbol[n]}function sl(t,n){return t.TextMode[n]}const Qe={formats:[],tryHarder:!0,tryRotate:!0,tryInvert:!0,tryDownscale:!0,binarizer:"LocalAverage",isPure:!1,downscaleFactor:3,downscaleThreshold:500,minLineCount:2,maxNumberOfSymbols:255,tryCode39ExtendedMode:!1,validateCode39CheckSum:!1,validateITFCheckSum:!1,returnCodabarStartEnd:!1,returnErrors:!1,eanAddOnSymbol:"Read",textMode:"Plain",characterSet:"Unknown"};function mn(t,n){return{...n,formats:Zi(n.formats),binarizer:tl(t,n.binarizer),eanAddOnSymbol:al(t,n.eanAddOnSymbol),textMode:sl(t,n.textMode),characterSet:rl(t,n.characterSet)}}function hn(t){return{...t,format:el(t.format),eccLevel:t.eccLevel,contentType:ol(t.contentType)}}const il={locateFile:(t,n)=>{const r=t.match(/_(.+?)\.wasm$/);return r?`https://fastly.jsdelivr.net/npm/zxing-wasm@1.1.3/dist/${r[1]}/${t}`:n+t}};let gn=new WeakMap;function Wt(t,n){var r;const o=gn.get(t);if(o!=null&&o.modulePromise&&n===void 0)return o.modulePromise;const i=(r=o?.moduleOverrides)!=null?r:il,l=t({...i});return gn.set(t,{moduleOverrides:i,modulePromise:l}),l}async function ll(t,n,r=Qe){const o={...Qe,...r},i=await Wt(t),{size:l}=n,c=new Uint8Array(await n.arrayBuffer()),u=i._malloc(l);i.HEAPU8.set(c,u);const f=i.readBarcodesFromImage(u,l,mn(i,o));i._free(u);const g=[];for(let y=0;y<f.size();++y)g.push(hn(f.get(y)));return g}async function cl(t,n,r=Qe){const o={...Qe,...r},i=await Wt(t),{data:l,width:c,height:u,data:{byteLength:f}}=n,g=i._malloc(f);i.HEAPU8.set(l,g);const y=i.readBarcodesFromPixmap(g,c,u,mn(i,o));i._free(g);const m=[];for(let b=0;b<y.size();++b)m.push(hn(y.get(b)));return m}({...Qe,formats:[...Qe.formats]});var qt=(()=>{var t=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return function(n={}){var r=n,o,i;r.ready=new Promise((a,s)=>{o=a,i=s});var l=Object.assign({},r),c="./this.program",u=typeof window=="object",f=typeof importScripts=="function";typeof process=="object"&&typeof process.versions=="object"&&process.versions.node;var g="";function y(a){return r.locateFile?r.locateFile(a,g):g+a}var m;(u||f)&&(f?g=self.location.href:typeof document<"u"&&document.currentScript&&(g=document.currentScript.src),t&&(g=t),g.indexOf("blob:")!==0?g=g.substr(0,g.replace(/[?#].*/,"").lastIndexOf("/")+1):g="",f&&(m=a=>{var s=new XMLHttpRequest;return s.open("GET",a,!1),s.responseType="arraybuffer",s.send(null),new Uint8Array(s.response)})),r.print||console.log.bind(console);var b=r.printErr||console.error.bind(console);Object.assign(r,l),l=null,r.arguments&&r.arguments,r.thisProgram&&(c=r.thisProgram),r.quit&&r.quit;var C;r.wasmBinary&&(C=r.wasmBinary),typeof WebAssembly!="object"&&ye("no native wasm support detected");var v,k=!1,E,$,M,A,O,B,P,S;function h(){var a=v.buffer;r.HEAP8=E=new Int8Array(a),r.HEAP16=M=new Int16Array(a),r.HEAPU8=$=new Uint8Array(a),r.HEAPU16=A=new Uint16Array(a),r.HEAP32=O=new Int32Array(a),r.HEAPU32=B=new Uint32Array(a),r.HEAPF32=P=new Float32Array(a),r.HEAPF64=S=new Float64Array(a)}var T=[],I=[],U=[];function D(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)z(r.preRun.shift());Kt(T)}function L(){Kt(I)}function Q(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)pe(r.postRun.shift());Kt(U)}function z(a){T.unshift(a)}function re(a){I.unshift(a)}function pe(a){U.unshift(a)}var Z=0,ne=null;function Y(a){var s;Z++,(s=r.monitorRunDependencies)===null||s===void 0||s.call(r,Z)}function Ce(a){var s;if(Z--,(s=r.monitorRunDependencies)===null||s===void 0||s.call(r,Z),Z==0&&ne){var d=ne;ne=null,d()}}function ye(a){var s;(s=r.onAbort)===null||s===void 0||s.call(r,a),a="Aborted("+a+")",b(a),k=!0,a+=". Build with -sASSERTIONS for more info.";var d=new WebAssembly.RuntimeError(a);throw i(d),d}var Yt="data:application/octet-stream;base64,",pt=a=>a.startsWith(Yt),De;De="zxing_reader.wasm",pt(De)||(De=y(De));function mt(a){if(a==De&&C)return new Uint8Array(C);if(m)return m(a);throw"both async and sync fetching of the wasm failed"}function Gt(a){return!C&&(u||f)&&typeof fetch=="function"?fetch(a,{credentials:"same-origin"}).then(s=>{if(!s.ok)throw"failed to load wasm binary file at '"+a+"'";return s.arrayBuffer()}).catch(()=>mt(a)):Promise.resolve().then(()=>mt(a))}function ht(a,s,d){return Gt(a).then(p=>WebAssembly.instantiate(p,s)).then(p=>p).then(d,p=>{b(`failed to asynchronously prepare wasm: ${p}`),ye(p)})}function tc(a,s,d,p){return!a&&typeof WebAssembly.instantiateStreaming=="function"&&!pt(s)&&typeof fetch=="function"?fetch(s,{credentials:"same-origin"}).then(w=>{var x=WebAssembly.instantiateStreaming(w,d);return x.then(p,function(N){return b(`wasm streaming compile failed: ${N}`),b("falling back to ArrayBuffer instantiation"),ht(s,d,p)})}):ht(s,d,p)}function rc(){var a={a:Ud};function s(p,w){return fe=p.exports,v=fe.ia,h(),qn=fe.ma,re(fe.ja),Ce(),fe}Y();function d(p){s(p.instance)}if(r.instantiateWasm)try{return r.instantiateWasm(a,s)}catch(p){b(`Module.instantiateWasm callback failed with error: ${p}`),i(p)}return tc(C,De,a,d).catch(i),{}}var Kt=a=>{for(;a.length>0;)a.shift()(r)};r.noExitRuntime;var gt=[],yt=0,nc=a=>{var s=new Xt(a);return s.get_caught()||(s.set_caught(!0),yt--),s.set_rethrown(!1),gt.push(s),so(s.excPtr),s.get_exception_ptr()},Me=0,oc=()=>{ae(0,0);var a=gt.pop();ao(a.excPtr),Me=0};function Xt(a){this.excPtr=a,this.ptr=a-24,this.set_type=function(s){B[this.ptr+4>>2]=s},this.get_type=function(){return B[this.ptr+4>>2]},this.set_destructor=function(s){B[this.ptr+8>>2]=s},this.get_destructor=function(){return B[this.ptr+8>>2]},this.set_caught=function(s){s=s?1:0,E[this.ptr+12>>0]=s},this.get_caught=function(){return E[this.ptr+12>>0]!=0},this.set_rethrown=function(s){s=s?1:0,E[this.ptr+13>>0]=s},this.get_rethrown=function(){return E[this.ptr+13>>0]!=0},this.init=function(s,d){this.set_adjusted_ptr(0),this.set_type(s),this.set_destructor(d)},this.set_adjusted_ptr=function(s){B[this.ptr+16>>2]=s},this.get_adjusted_ptr=function(){return B[this.ptr+16>>2]},this.get_exception_ptr=function(){var s=lo(this.get_type());if(s)return B[this.excPtr>>2];var d=this.get_adjusted_ptr();return d!==0?d:this.excPtr}}var ac=a=>{throw Me||(Me=a),Me},Zt=a=>{var s=Me;if(!s)return ot(0),0;var d=new Xt(s);d.set_adjusted_ptr(s);var p=d.get_type();if(!p)return ot(0),s;for(var w in a){var x=a[w];if(x===0||x===p)break;var N=d.ptr+16;if(io(x,p,N))return ot(x),s}return ot(p),s},sc=()=>Zt([]),ic=a=>Zt([a]),lc=(a,s)=>Zt([a,s]),cc=()=>{var a=gt.pop();a||ye("no exception to throw");var s=a.excPtr;throw a.get_rethrown()||(gt.push(a),a.set_rethrown(!0),a.set_caught(!1),yt++),Me=s,Me},dc=(a,s,d)=>{var p=new Xt(a);throw p.init(s,d),Me=a,yt++,Me},uc=()=>yt,bt={},er=a=>{for(;a.length;){var s=a.pop(),d=a.pop();d(s)}};function tr(a){return this.fromWireType(O[a>>2])}var Je={},Le={},Ct={},Fn,St=a=>{throw new Fn(a)},_e=(a,s,d)=>{a.forEach(function(V){Ct[V]=s});function p(V){var F=d(V);F.length!==a.length&&St("Mismatched type converter count");for(var _=0;_<a.length;++_)Ne(a[_],F[_])}var w=new Array(s.length),x=[],N=0;s.forEach((V,F)=>{Le.hasOwnProperty(V)?w[F]=Le[V]:(x.push(V),Je.hasOwnProperty(V)||(Je[V]=[]),Je[V].push(()=>{w[F]=Le[V],++N,N===x.length&&p(w)}))}),x.length===0&&p(w)},fc=a=>{var s=bt[a];delete bt[a];var d=s.rawConstructor,p=s.rawDestructor,w=s.fields,x=w.map(N=>N.getterReturnType).concat(w.map(N=>N.setterArgumentType));_e([a],x,N=>{var V={};return w.forEach((F,_)=>{var W=F.fieldName,G=N[_],K=F.getter,X=F.getterContext,se=N[_+w.length],de=F.setter,oe=F.setterContext;V[W]={read:ge=>G.fromWireType(K(X,ge)),write:(ge,j)=>{var J=[];de(oe,ge,se.toWireType(J,j)),er(J)}}}),[{name:s.name,fromWireType:F=>{var _={};for(var W in V)_[W]=V[W].read(F);return p(F),_},toWireType:(F,_)=>{for(var W in V)if(!(W in _))throw new TypeError(`Missing field: "${W}"`);var G=d();for(W in V)V[W].write(G,_[W]);return F!==null&&F.push(p,G),G},argPackAdvance:Te,readValueFromPointer:tr,destructorFunction:p}]})},pc=(a,s,d,p,w)=>{},mc=()=>{for(var a=new Array(256),s=0;s<256;++s)a[s]=String.fromCharCode(s);jn=a},jn,he=a=>{for(var s="",d=a;$[d];)s+=jn[$[d++]];return s},He,ee=a=>{throw new He(a)};function hc(a,s){let d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var p=s.name;if(a||ee(`type "${p}" must have a positive integer typeid pointer`),Le.hasOwnProperty(a)){if(d.ignoreDuplicateRegistrations)return;ee(`Cannot register type '${p}' twice`)}if(Le[a]=s,delete Ct[a],Je.hasOwnProperty(a)){var w=Je[a];delete Je[a],w.forEach(x=>x())}}function Ne(a,s){let d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!("argPackAdvance"in s))throw new TypeError("registerType registeredInstance requires argPackAdvance");return hc(a,s,d)}var Te=8,gc=(a,s,d,p)=>{s=he(s),Ne(a,{name:s,fromWireType:function(w){return!!w},toWireType:function(w,x){return x?d:p},argPackAdvance:Te,readValueFromPointer:function(w){return this.fromWireType($[w])},destructorFunction:null})},yc=a=>({count:a.count,deleteScheduled:a.deleteScheduled,preservePointerOnDelete:a.preservePointerOnDelete,ptr:a.ptr,ptrType:a.ptrType,smartPtr:a.smartPtr,smartPtrType:a.smartPtrType}),rr=a=>{function s(d){return d.$$.ptrType.registeredClass.name}ee(s(a)+" instance already deleted")},nr=!1,Dn=a=>{},bc=a=>{a.smartPtr?a.smartPtrType.rawDestructor(a.smartPtr):a.ptrType.registeredClass.rawDestructor(a.ptr)},Ln=a=>{a.count.value-=1;var s=a.count.value===0;s&&bc(a)},_n=(a,s,d)=>{if(s===d)return a;if(d.baseClass===void 0)return null;var p=_n(a,s,d.baseClass);return p===null?null:d.downcast(p)},zn={},Cc=()=>Object.keys(et).length,Sc=()=>{var a=[];for(var s in et)et.hasOwnProperty(s)&&a.push(et[s]);return a},Xe=[],or=()=>{for(;Xe.length;){var a=Xe.pop();a.$$.deleteScheduled=!1,a.delete()}},Ze,wc=a=>{Ze=a,Xe.length&&Ze&&Ze(or)},kc=()=>{r.getInheritedInstanceCount=Cc,r.getLiveInheritedInstances=Sc,r.flushPendingDeletes=or,r.setDelayFunction=wc},et={},Ac=(a,s)=>{for(s===void 0&&ee("ptr should not be undefined");a.baseClass;)s=a.upcast(s),a=a.baseClass;return s},Ec=(a,s)=>(s=Ac(a,s),et[s]),wt=(a,s)=>{(!s.ptrType||!s.ptr)&&St("makeClassHandle requires ptr and ptrType");var d=!!s.smartPtrType,p=!!s.smartPtr;return d!==p&&St("Both smartPtrType and smartPtr must be specified"),s.count={value:1},tt(Object.create(a,{$$:{value:s,writable:!0}}))};function xc(a){var s=this.getPointee(a);if(!s)return this.destructor(a),null;var d=Ec(this.registeredClass,s);if(d!==void 0){if(d.$$.count.value===0)return d.$$.ptr=s,d.$$.smartPtr=a,d.clone();var p=d.clone();return this.destructor(a),p}function w(){return this.isSmartPointer?wt(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:s,smartPtrType:this,smartPtr:a}):wt(this.registeredClass.instancePrototype,{ptrType:this,ptr:a})}var x=this.registeredClass.getActualType(s),N=zn[x];if(!N)return w.call(this);var V;this.isConst?V=N.constPointerType:V=N.pointerType;var F=_n(s,this.registeredClass,V.registeredClass);return F===null?w.call(this):this.isSmartPointer?wt(V.registeredClass.instancePrototype,{ptrType:V,ptr:F,smartPtrType:this,smartPtr:a}):wt(V.registeredClass.instancePrototype,{ptrType:V,ptr:F})}var tt=a=>typeof FinalizationRegistry>"u"?(tt=s=>s,a):(nr=new FinalizationRegistry(s=>{Ln(s.$$)}),tt=s=>{var d=s.$$,p=!!d.smartPtr;if(p){var w={$$:d};nr.register(s,w,s)}return s},Dn=s=>nr.unregister(s),tt(a)),vc=()=>{Object.assign(kt.prototype,{isAliasOf(a){if(!(this instanceof kt)||!(a instanceof kt))return!1;var s=this.$$.ptrType.registeredClass,d=this.$$.ptr;a.$$=a.$$;for(var p=a.$$.ptrType.registeredClass,w=a.$$.ptr;s.baseClass;)d=s.upcast(d),s=s.baseClass;for(;p.baseClass;)w=p.upcast(w),p=p.baseClass;return s===p&&d===w},clone(){if(this.$$.ptr||rr(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var a=tt(Object.create(Object.getPrototypeOf(this),{$$:{value:yc(this.$$)}}));return a.$$.count.value+=1,a.$$.deleteScheduled=!1,a},delete(){this.$$.ptr||rr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ee("Object already scheduled for deletion"),Dn(this),Ln(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||rr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ee("Object already scheduled for deletion"),Xe.push(this),Xe.length===1&&Ze&&Ze(or),this.$$.deleteScheduled=!0,this}})};function kt(){}var rt=(a,s)=>Object.defineProperty(s,"name",{value:a}),Un=(a,s,d)=>{if(a[s].overloadTable===void 0){var p=a[s];a[s]=function(){return a[s].overloadTable.hasOwnProperty(arguments.length)||ee(`Function '${d}' called with an invalid number of arguments (${arguments.length}) - expects one of (${a[s].overloadTable})!`),a[s].overloadTable[arguments.length].apply(this,arguments)},a[s].overloadTable=[],a[s].overloadTable[p.argCount]=p}},ar=(a,s,d)=>{r.hasOwnProperty(a)?((d===void 0||r[a].overloadTable!==void 0&&r[a].overloadTable[d]!==void 0)&&ee(`Cannot register public name '${a}' twice`),Un(r,a,a),r.hasOwnProperty(d)&&ee(`Cannot register multiple overloads of a function with the same number of arguments (${d})!`),r[a].overloadTable[d]=s):(r[a]=s,d!==void 0&&(r[a].numArguments=d))},Bc=48,Pc=57,Nc=a=>{if(a===void 0)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var s=a.charCodeAt(0);return s>=Bc&&s<=Pc?`_${a}`:a};function Tc(a,s,d,p,w,x,N,V){this.name=a,this.constructor=s,this.instancePrototype=d,this.rawDestructor=p,this.baseClass=w,this.getActualType=x,this.upcast=N,this.downcast=V,this.pureVirtualFunctions=[]}var sr=(a,s,d)=>{for(;s!==d;)s.upcast||ee(`Expected null or instance of ${d.name}, got an instance of ${s.name}`),a=s.upcast(a),s=s.baseClass;return a};function Vc(a,s){if(s===null)return this.isReference&&ee(`null is not a valid ${this.name}`),0;s.$$||ee(`Cannot pass "${ur(s)}" as a ${this.name}`),s.$$.ptr||ee(`Cannot pass deleted object as a pointer of type ${this.name}`);var d=s.$$.ptrType.registeredClass,p=sr(s.$$.ptr,d,this.registeredClass);return p}function Mc(a,s){var d;if(s===null)return this.isReference&&ee(`null is not a valid ${this.name}`),this.isSmartPointer?(d=this.rawConstructor(),a!==null&&a.push(this.rawDestructor,d),d):0;(!s||!s.$$)&&ee(`Cannot pass "${ur(s)}" as a ${this.name}`),s.$$.ptr||ee(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&s.$$.ptrType.isConst&&ee(`Cannot convert argument of type ${s.$$.smartPtrType?s.$$.smartPtrType.name:s.$$.ptrType.name} to parameter type ${this.name}`);var p=s.$$.ptrType.registeredClass;if(d=sr(s.$$.ptr,p,this.registeredClass),this.isSmartPointer)switch(s.$$.smartPtr===void 0&&ee("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:s.$$.smartPtrType===this?d=s.$$.smartPtr:ee(`Cannot convert argument of type ${s.$$.smartPtrType?s.$$.smartPtrType.name:s.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:d=s.$$.smartPtr;break;case 2:if(s.$$.smartPtrType===this)d=s.$$.smartPtr;else{var w=s.clone();d=this.rawShare(d,Ie.toHandle(()=>w.delete())),a!==null&&a.push(this.rawDestructor,d)}break;default:ee("Unsupporting sharing policy")}return d}function Ic(a,s){if(s===null)return this.isReference&&ee(`null is not a valid ${this.name}`),0;s.$$||ee(`Cannot pass "${ur(s)}" as a ${this.name}`),s.$$.ptr||ee(`Cannot pass deleted object as a pointer of type ${this.name}`),s.$$.ptrType.isConst&&ee(`Cannot convert argument of type ${s.$$.ptrType.name} to parameter type ${this.name}`);var d=s.$$.ptrType.registeredClass,p=sr(s.$$.ptr,d,this.registeredClass);return p}function Qn(a){return this.fromWireType(B[a>>2])}var Rc=()=>{Object.assign(At.prototype,{getPointee(a){return this.rawGetPointee&&(a=this.rawGetPointee(a)),a},destructor(a){var s;(s=this.rawDestructor)===null||s===void 0||s.call(this,a)},argPackAdvance:Te,readValueFromPointer:Qn,deleteObject(a){a!==null&&a.delete()},fromWireType:xc})};function At(a,s,d,p,w,x,N,V,F,_,W){this.name=a,this.registeredClass=s,this.isReference=d,this.isConst=p,this.isSmartPointer=w,this.pointeeType=x,this.sharingPolicy=N,this.rawGetPointee=V,this.rawConstructor=F,this.rawShare=_,this.rawDestructor=W,!w&&s.baseClass===void 0?p?(this.toWireType=Vc,this.destructorFunction=null):(this.toWireType=Ic,this.destructorFunction=null):this.toWireType=Mc}var Wn=(a,s,d)=>{r.hasOwnProperty(a)||St("Replacing nonexistant public symbol"),r[a].overloadTable!==void 0&&d!==void 0?r[a].overloadTable[d]=s:(r[a]=s,r[a].argCount=d)},$c=(a,s,d)=>{var p=r["dynCall_"+a];return d&&d.length?p.apply(null,[s].concat(d)):p.call(null,s)},Et=[],qn,ie=a=>{var s=Et[a];return s||(a>=Et.length&&(Et.length=a+1),Et[a]=s=qn.get(a)),s},Oc=(a,s,d)=>{if(a.includes("j"))return $c(a,s,d);var p=ie(s).apply(null,d);return p},Fc=(a,s)=>{var d=[];return function(){return d.length=0,Object.assign(d,arguments),Oc(a,s,d)}},xe=(a,s)=>{a=he(a);function d(){return a.includes("j")?Fc(a,s):ie(s)}var p=d();return typeof p!="function"&&ee(`unknown function pointer with signature ${a}: ${s}`),p},jc=(a,s)=>{var d=rt(s,function(p){this.name=s,this.message=p;var w=new Error(p).stack;w!==void 0&&(this.stack=this.toString()+`
|
|
2
|
+
`+w.replace(/^Error(:[^\n]*)?\n/,""))});return d.prototype=Object.create(a.prototype),d.prototype.constructor=d,d.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},d},Jn,Hn=a=>{var s=oo(a),d=he(s);return Re(s),d},xt=(a,s)=>{var d=[],p={};function w(x){if(!p[x]&&!Le[x]){if(Ct[x]){Ct[x].forEach(w);return}d.push(x),p[x]=!0}}throw s.forEach(w),new Jn(`${a}: `+d.map(Hn).join([", "]))},Dc=(a,s,d,p,w,x,N,V,F,_,W,G,K)=>{W=he(W),x=xe(w,x),V&&(V=xe(N,V)),_&&(_=xe(F,_)),K=xe(G,K);var X=Nc(W);ar(X,function(){xt(`Cannot construct ${W} due to unbound types`,[p])}),_e([a,s,d],p?[p]:[],function(se){se=se[0];var de,oe;p?(de=se.registeredClass,oe=de.instancePrototype):oe=kt.prototype;var ge=rt(W,function(){if(Object.getPrototypeOf(this)!==j)throw new He("Use 'new' to construct "+W);if(J.constructor_body===void 0)throw new He(W+" has no accessible constructor");var po=J.constructor_body[arguments.length];if(po===void 0)throw new He(`Tried to invoke ctor of ${W} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(J.constructor_body).toString()}) parameters instead!`);return po.apply(this,arguments)}),j=Object.create(oe,{constructor:{value:ge}});ge.prototype=j;var J=new Tc(W,ge,j,K,de,x,V,_);if(J.baseClass){var ue,me;(me=(ue=J.baseClass).__derivedClasses)!==null&&me!==void 0||(ue.__derivedClasses=[]),J.baseClass.__derivedClasses.push(J)}var Ye=new At(W,J,!0,!1,!1),Pt=new At(W+"*",J,!1,!1,!1),fo=new At(W+" const*",J,!1,!0,!1);return zn[a]={pointerType:Pt,constPointerType:fo},Wn(X,ge),[Ye,Pt,fo]})},ir=(a,s)=>{for(var d=[],p=0;p<a;p++)d.push(B[s+p*4>>2]);return d};function Lc(a){for(var s=1;s<a.length;++s)if(a[s]!==null&&a[s].destructorFunction===void 0)return!0;return!1}function lr(a,s,d,p,w,x){var N=s.length;N<2&&ee("argTypes array size mismatch! Must at least get return value and 'this' types!");var V=s[1]!==null&&d!==null,F=Lc(s),_=s[0].name!=="void",W=N-2,G=new Array(W),K=[],X=[],se=function(){arguments.length!==W&&ee(`function ${a} called with ${arguments.length} arguments, expected ${W}`),X.length=0;var de;K.length=V?2:1,K[0]=w,V&&(de=s[1].toWireType(X,this),K[1]=de);for(var oe=0;oe<W;++oe)G[oe]=s[oe+2].toWireType(X,arguments[oe]),K.push(G[oe]);var ge=p.apply(null,K);function j(J){if(F)er(X);else for(var ue=V?1:2;ue<s.length;ue++){var me=ue===1?de:G[ue-2];s[ue].destructorFunction!==null&&s[ue].destructorFunction(me)}if(_)return s[0].fromWireType(J)}return j(ge)};return rt(a,se)}var _c=(a,s,d,p,w,x)=>{var N=ir(s,d);w=xe(p,w),_e([],[a],function(V){V=V[0];var F=`constructor ${V.name}`;if(V.registeredClass.constructor_body===void 0&&(V.registeredClass.constructor_body=[]),V.registeredClass.constructor_body[s-1]!==void 0)throw new He(`Cannot register multiple constructors with identical number of parameters (${s-1}) for class '${V.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return V.registeredClass.constructor_body[s-1]=()=>{xt(`Cannot construct ${V.name} due to unbound types`,N)},_e([],N,_=>(_.splice(1,0,null),V.registeredClass.constructor_body[s-1]=lr(F,_,null,w,x),[])),[]})},Yn=a=>{a=a.trim();const s=a.indexOf("(");return s!==-1?a.substr(0,s):a},zc=(a,s,d,p,w,x,N,V,F)=>{var _=ir(d,p);s=he(s),s=Yn(s),x=xe(w,x),_e([],[a],function(W){W=W[0];var G=`${W.name}.${s}`;s.startsWith("@@")&&(s=Symbol[s.substring(2)]),V&&W.registeredClass.pureVirtualFunctions.push(s);function K(){xt(`Cannot call ${G} due to unbound types`,_)}var X=W.registeredClass.instancePrototype,se=X[s];return se===void 0||se.overloadTable===void 0&&se.className!==W.name&&se.argCount===d-2?(K.argCount=d-2,K.className=W.name,X[s]=K):(Un(X,s,G),X[s].overloadTable[d-2]=K),_e([],_,function(de){var oe=lr(G,de,W,x,N);return X[s].overloadTable===void 0?(oe.argCount=d-2,X[s]=oe):X[s].overloadTable[d-2]=oe,[]}),[]})};function Uc(){Object.assign(Gn.prototype,{get(a){return this.allocated[a]},has(a){return this.allocated[a]!==void 0},allocate(a){var s=this.freelist.pop()||this.allocated.length;return this.allocated[s]=a,s},free(a){this.allocated[a]=void 0,this.freelist.push(a)}})}function Gn(){this.allocated=[void 0],this.freelist=[]}var we=new Gn,cr=a=>{a>=we.reserved&&--we.get(a).refcount===0&&we.free(a)},Qc=()=>{for(var a=0,s=we.reserved;s<we.allocated.length;++s)we.allocated[s]!==void 0&&++a;return a},Wc=()=>{we.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),we.reserved=we.allocated.length,r.count_emval_handles=Qc},Ie={toValue:a=>(a||ee("Cannot use deleted val. handle = "+a),we.get(a).value),toHandle:a=>{switch(a){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return we.allocate({refcount:1,value:a})}}},qc=(a,s)=>{s=he(s),Ne(a,{name:s,fromWireType:d=>{var p=Ie.toValue(d);return cr(d),p},toWireType:(d,p)=>Ie.toHandle(p),argPackAdvance:Te,readValueFromPointer:tr,destructorFunction:null})},Jc=(a,s,d)=>{switch(s){case 1:return d?function(p){return this.fromWireType(E[p>>0])}:function(p){return this.fromWireType($[p>>0])};case 2:return d?function(p){return this.fromWireType(M[p>>1])}:function(p){return this.fromWireType(A[p>>1])};case 4:return d?function(p){return this.fromWireType(O[p>>2])}:function(p){return this.fromWireType(B[p>>2])};default:throw new TypeError(`invalid integer width (${s}): ${a}`)}},Hc=(a,s,d,p)=>{s=he(s);function w(){}w.values={},Ne(a,{name:s,constructor:w,fromWireType:function(x){return this.constructor.values[x]},toWireType:(x,N)=>N.value,argPackAdvance:Te,readValueFromPointer:Jc(s,d,p),destructorFunction:null}),ar(s,w)},dr=(a,s)=>{var d=Le[a];return d===void 0&&ee(s+" has unknown type "+Hn(a)),d},Yc=(a,s,d)=>{var p=dr(a,"enum");s=he(s);var w=p.constructor,x=Object.create(p.constructor.prototype,{value:{value:d},constructor:{value:rt(`${p.name}_${s}`,function(){})}});w.values[d]=x,w[s]=x},ur=a=>{if(a===null)return"null";var s=typeof a;return s==="object"||s==="array"||s==="function"?a.toString():""+a},Gc=(a,s)=>{switch(s){case 4:return function(d){return this.fromWireType(P[d>>2])};case 8:return function(d){return this.fromWireType(S[d>>3])};default:throw new TypeError(`invalid float width (${s}): ${a}`)}},Kc=(a,s,d)=>{s=he(s),Ne(a,{name:s,fromWireType:p=>p,toWireType:(p,w)=>w,argPackAdvance:Te,readValueFromPointer:Gc(s,d),destructorFunction:null})},Xc=(a,s,d,p,w,x,N)=>{var V=ir(s,d);a=he(a),a=Yn(a),w=xe(p,w),ar(a,function(){xt(`Cannot call ${a} due to unbound types`,V)},s-1),_e([],V,function(F){var _=[F[0],null].concat(F.slice(1));return Wn(a,lr(a,_,null,w,x),s-1),[]})},Zc=(a,s,d)=>{switch(s){case 1:return d?p=>E[p>>0]:p=>$[p>>0];case 2:return d?p=>M[p>>1]:p=>A[p>>1];case 4:return d?p=>O[p>>2]:p=>B[p>>2];default:throw new TypeError(`invalid integer width (${s}): ${a}`)}},ed=(a,s,d,p,w)=>{s=he(s);var x=W=>W;if(p===0){var N=32-8*d;x=W=>W<<N>>>N}var V=s.includes("unsigned"),F=(W,G)=>{},_;V?_=function(W,G){return F(G,this.name),G>>>0}:_=function(W,G){return F(G,this.name),G},Ne(a,{name:s,fromWireType:x,toWireType:_,argPackAdvance:Te,readValueFromPointer:Zc(s,d,p!==0),destructorFunction:null})},td=(a,s,d)=>{var p=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],w=p[s];function x(N){var V=B[N>>2],F=B[N+4>>2];return new w(E.buffer,F,V)}d=he(d),Ne(a,{name:d,fromWireType:x,argPackAdvance:Te,readValueFromPointer:x},{ignoreDuplicateRegistrations:!0})},Kn=(a,s,d,p)=>{if(!(p>0))return 0;for(var w=d,x=d+p-1,N=0;N<a.length;++N){var V=a.charCodeAt(N);if(V>=55296&&V<=57343){var F=a.charCodeAt(++N);V=65536+((V&1023)<<10)|F&1023}if(V<=127){if(d>=x)break;s[d++]=V}else if(V<=2047){if(d+1>=x)break;s[d++]=192|V>>6,s[d++]=128|V&63}else if(V<=65535){if(d+2>=x)break;s[d++]=224|V>>12,s[d++]=128|V>>6&63,s[d++]=128|V&63}else{if(d+3>=x)break;s[d++]=240|V>>18,s[d++]=128|V>>12&63,s[d++]=128|V>>6&63,s[d++]=128|V&63}}return s[d]=0,d-w},rd=(a,s,d)=>Kn(a,$,s,d),Xn=a=>{for(var s=0,d=0;d<a.length;++d){var p=a.charCodeAt(d);p<=127?s++:p<=2047?s+=2:p>=55296&&p<=57343?(s+=4,++d):s+=3}return s},Zn=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,nd=(a,s,d)=>{for(var p=s+d,w=s;a[w]&&!(w>=p);)++w;if(w-s>16&&a.buffer&&Zn)return Zn.decode(a.subarray(s,w));for(var x="";s<w;){var N=a[s++];if(!(N&128)){x+=String.fromCharCode(N);continue}var V=a[s++]&63;if((N&224)==192){x+=String.fromCharCode((N&31)<<6|V);continue}var F=a[s++]&63;if((N&240)==224?N=(N&15)<<12|V<<6|F:N=(N&7)<<18|V<<12|F<<6|a[s++]&63,N<65536)x+=String.fromCharCode(N);else{var _=N-65536;x+=String.fromCharCode(55296|_>>10,56320|_&1023)}}return x},fr=(a,s)=>a?nd($,a,s):"",od=(a,s)=>{s=he(s);var d=s==="std::string";Ne(a,{name:s,fromWireType(p){var w=B[p>>2],x=p+4,N;if(d)for(var V=x,F=0;F<=w;++F){var _=x+F;if(F==w||$[_]==0){var W=_-V,G=fr(V,W);N===void 0?N=G:(N+="\0",N+=G),V=_+1}}else{for(var K=new Array(w),F=0;F<w;++F)K[F]=String.fromCharCode($[x+F]);N=K.join("")}return Re(p),N},toWireType(p,w){w instanceof ArrayBuffer&&(w=new Uint8Array(w));var x,N=typeof w=="string";N||w instanceof Uint8Array||w instanceof Uint8ClampedArray||w instanceof Int8Array||ee("Cannot pass non-string to std::string"),d&&N?x=Xn(w):x=w.length;var V=hr(4+x+1),F=V+4;if(B[V>>2]=x,d&&N)rd(w,F,x+1);else if(N)for(var _=0;_<x;++_){var W=w.charCodeAt(_);W>255&&(Re(F),ee("String has UTF-16 code units that do not fit in 8 bits")),$[F+_]=W}else for(var _=0;_<x;++_)$[F+_]=w[_];return p!==null&&p.push(Re,V),V},argPackAdvance:Te,readValueFromPointer:Qn,destructorFunction(p){Re(p)}})},eo=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0,ad=(a,s)=>{for(var d=a,p=d>>1,w=p+s/2;!(p>=w)&&A[p];)++p;if(d=p<<1,d-a>32&&eo)return eo.decode($.subarray(a,d));for(var x="",N=0;!(N>=s/2);++N){var V=M[a+N*2>>1];if(V==0)break;x+=String.fromCharCode(V)}return x},sd=(a,s,d)=>{var p;if((p=d)!==null&&p!==void 0||(d=2147483647),d<2)return 0;d-=2;for(var w=s,x=d<a.length*2?d/2:a.length,N=0;N<x;++N){var V=a.charCodeAt(N);M[s>>1]=V,s+=2}return M[s>>1]=0,s-w},id=a=>a.length*2,ld=(a,s)=>{for(var d=0,p="";!(d>=s/4);){var w=O[a+d*4>>2];if(w==0)break;if(++d,w>=65536){var x=w-65536;p+=String.fromCharCode(55296|x>>10,56320|x&1023)}else p+=String.fromCharCode(w)}return p},cd=(a,s,d)=>{var p;if((p=d)!==null&&p!==void 0||(d=2147483647),d<4)return 0;for(var w=s,x=w+d-4,N=0;N<a.length;++N){var V=a.charCodeAt(N);if(V>=55296&&V<=57343){var F=a.charCodeAt(++N);V=65536+((V&1023)<<10)|F&1023}if(O[s>>2]=V,s+=4,s+4>x)break}return O[s>>2]=0,s-w},dd=a=>{for(var s=0,d=0;d<a.length;++d){var p=a.charCodeAt(d);p>=55296&&p<=57343&&++d,s+=4}return s},ud=(a,s,d)=>{d=he(d);var p,w,x,N,V;s===2?(p=ad,w=sd,N=id,x=()=>A,V=1):s===4&&(p=ld,w=cd,N=dd,x=()=>B,V=2),Ne(a,{name:d,fromWireType:F=>{for(var _=B[F>>2],W=x(),G,K=F+4,X=0;X<=_;++X){var se=F+4+X*s;if(X==_||W[se>>V]==0){var de=se-K,oe=p(K,de);G===void 0?G=oe:(G+="\0",G+=oe),K=se+s}}return Re(F),G},toWireType:(F,_)=>{typeof _!="string"&&ee(`Cannot pass non-string to C++ string type ${d}`);var W=N(_),G=hr(4+W+s);return B[G>>2]=W>>V,w(_,G+4,W+s),F!==null&&F.push(Re,G),G},argPackAdvance:Te,readValueFromPointer:tr,destructorFunction(F){Re(F)}})},fd=(a,s,d,p,w,x)=>{bt[a]={name:he(s),rawConstructor:xe(d,p),rawDestructor:xe(w,x),fields:[]}},pd=(a,s,d,p,w,x,N,V,F,_)=>{bt[a].fields.push({fieldName:he(s),getterReturnType:d,getter:xe(p,w),getterContext:x,setterArgumentType:N,setter:xe(V,F),setterContext:_})},md=(a,s)=>{s=he(s),Ne(a,{isVoid:!0,name:s,argPackAdvance:0,fromWireType:()=>{},toWireType:(d,p)=>{}})},pr=[],hd=(a,s,d,p)=>(a=pr[a],s=Ie.toValue(s),a(null,s,d,p)),gd={},yd=a=>{var s=gd[a];return s===void 0?he(a):s},to=()=>{if(typeof globalThis=="object")return globalThis;function a(s){s.$$$embind_global$$$=s;var d=typeof $$$embind_global$$$=="object"&&s.$$$embind_global$$$==s;return d||delete s.$$$embind_global$$$,d}if(typeof $$$embind_global$$$=="object"||(typeof global=="object"&&a(global)?$$$embind_global$$$=global:typeof self=="object"&&a(self)&&($$$embind_global$$$=self),typeof $$$embind_global$$$=="object"))return $$$embind_global$$$;throw Error("unable to get global object.")},bd=a=>a===0?Ie.toHandle(to()):(a=yd(a),Ie.toHandle(to()[a])),Cd=a=>{var s=pr.length;return pr.push(a),s},Sd=(a,s)=>{for(var d=new Array(a),p=0;p<a;++p)d[p]=dr(B[s+p*4>>2],"parameter "+p);return d},wd=Reflect.construct,kd=(a,s,d)=>{var p=[],w=a.toWireType(p,d);return p.length&&(B[s>>2]=Ie.toHandle(p)),w},Ad=(a,s,d)=>{var p=Sd(a,s),w=p.shift();a--;var x=new Array(a),N=(F,_,W,G)=>{for(var K=0,X=0;X<a;++X)x[X]=p[X].readValueFromPointer(G+K),K+=p[X].argPackAdvance;for(var se=d===1?wd(_,x):_.apply(F,x),X=0;X<a;++X){var de,oe;(de=(oe=p[X]).deleteObject)===null||de===void 0||de.call(oe,x[X])}return kd(w,W,se)},V=`methodCaller<(${p.map(F=>F.name).join(", ")}) => ${w.name}>`;return Cd(rt(V,N))},Ed=a=>{a>4&&(we.get(a).refcount+=1)},xd=a=>{var s=Ie.toValue(a);er(s),cr(a)},vd=(a,s)=>{a=dr(a,"_emval_take_value");var d=a.readValueFromPointer(s);return Ie.toHandle(d)},Bd=()=>{ye("")},Pd=(a,s,d)=>$.copyWithin(a,s,s+d),Nd=()=>2147483648,Td=a=>{var s=v.buffer,d=(a-s.byteLength+65535)/65536;try{return v.grow(d),h(),1}catch{}},Vd=a=>{var s=$.length;a>>>=0;var d=Nd();if(a>d)return!1;for(var p=(F,_)=>F+(_-F%_)%_,w=1;w<=4;w*=2){var x=s*(1+.2/w);x=Math.min(x,a+100663296);var N=Math.min(d,p(Math.max(a,x),65536)),V=Td(N);if(V)return!0}return!1},mr={},Md=()=>c||"./this.program",nt=()=>{if(!nt.strings){var a=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",s={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:a,_:Md()};for(var d in mr)mr[d]===void 0?delete s[d]:s[d]=mr[d];var p=[];for(var d in s)p.push(`${d}=${s[d]}`);nt.strings=p}return nt.strings},Id=(a,s)=>{for(var d=0;d<a.length;++d)E[s++>>0]=a.charCodeAt(d);E[s>>0]=0},Rd=(a,s)=>{var d=0;return nt().forEach((p,w)=>{var x=s+d;B[a+w*4>>2]=x,Id(p,x),d+=p.length+1}),0},$d=(a,s)=>{var d=nt();B[a>>2]=d.length;var p=0;return d.forEach(w=>p+=w.length+1),B[s>>2]=p,0},Od=a=>a,vt=a=>a%4===0&&(a%100!==0||a%400===0),Fd=(a,s)=>{for(var d=0,p=0;p<=s;d+=a[p++]);return d},ro=[31,29,31,30,31,30,31,31,30,31,30,31],no=[31,28,31,30,31,30,31,31,30,31,30,31],jd=(a,s)=>{for(var d=new Date(a.getTime());s>0;){var p=vt(d.getFullYear()),w=d.getMonth(),x=(p?ro:no)[w];if(s>x-d.getDate())s-=x-d.getDate()+1,d.setDate(1),w<11?d.setMonth(w+1):(d.setMonth(0),d.setFullYear(d.getFullYear()+1));else return d.setDate(d.getDate()+s),d}return d};function Dd(a,s,d){var p=Xn(a)+1,w=new Array(p);return Kn(a,w,0,w.length),w}var Ld=(a,s)=>{E.set(a,s)},_d=(a,s,d,p)=>{var w=B[p+40>>2],x={tm_sec:O[p>>2],tm_min:O[p+4>>2],tm_hour:O[p+8>>2],tm_mday:O[p+12>>2],tm_mon:O[p+16>>2],tm_year:O[p+20>>2],tm_wday:O[p+24>>2],tm_yday:O[p+28>>2],tm_isdst:O[p+32>>2],tm_gmtoff:O[p+36>>2],tm_zone:w?fr(w):""},N=fr(d),V={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var F in V)N=N.replace(new RegExp(F,"g"),V[F]);var _=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],W=["January","February","March","April","May","June","July","August","September","October","November","December"];function G(j,J,ue){for(var me=typeof j=="number"?j.toString():j||"";me.length<J;)me=ue[0]+me;return me}function K(j,J){return G(j,J,"0")}function X(j,J){function ue(Ye){return Ye<0?-1:Ye>0?1:0}var me;return(me=ue(j.getFullYear()-J.getFullYear()))===0&&(me=ue(j.getMonth()-J.getMonth()))===0&&(me=ue(j.getDate()-J.getDate())),me}function se(j){switch(j.getDay()){case 0:return new Date(j.getFullYear()-1,11,29);case 1:return j;case 2:return new Date(j.getFullYear(),0,3);case 3:return new Date(j.getFullYear(),0,2);case 4:return new Date(j.getFullYear(),0,1);case 5:return new Date(j.getFullYear()-1,11,31);case 6:return new Date(j.getFullYear()-1,11,30)}}function de(j){var J=jd(new Date(j.tm_year+1900,0,1),j.tm_yday),ue=new Date(J.getFullYear(),0,4),me=new Date(J.getFullYear()+1,0,4),Ye=se(ue),Pt=se(me);return X(Ye,J)<=0?X(Pt,J)<=0?J.getFullYear()+1:J.getFullYear():J.getFullYear()-1}var oe={"%a":j=>_[j.tm_wday].substring(0,3),"%A":j=>_[j.tm_wday],"%b":j=>W[j.tm_mon].substring(0,3),"%B":j=>W[j.tm_mon],"%C":j=>{var J=j.tm_year+1900;return K(J/100|0,2)},"%d":j=>K(j.tm_mday,2),"%e":j=>G(j.tm_mday,2," "),"%g":j=>de(j).toString().substring(2),"%G":j=>de(j),"%H":j=>K(j.tm_hour,2),"%I":j=>{var J=j.tm_hour;return J==0?J=12:J>12&&(J-=12),K(J,2)},"%j":j=>K(j.tm_mday+Fd(vt(j.tm_year+1900)?ro:no,j.tm_mon-1),3),"%m":j=>K(j.tm_mon+1,2),"%M":j=>K(j.tm_min,2),"%n":()=>`
|
|
3
|
+
`,"%p":j=>j.tm_hour>=0&&j.tm_hour<12?"AM":"PM","%S":j=>K(j.tm_sec,2),"%t":()=>" ","%u":j=>j.tm_wday||7,"%U":j=>{var J=j.tm_yday+7-j.tm_wday;return K(Math.floor(J/7),2)},"%V":j=>{var J=Math.floor((j.tm_yday+7-(j.tm_wday+6)%7)/7);if((j.tm_wday+371-j.tm_yday-2)%7<=2&&J++,J){if(J==53){var ue=(j.tm_wday+371-j.tm_yday)%7;ue!=4&&(ue!=3||!vt(j.tm_year))&&(J=1)}}else{J=52;var me=(j.tm_wday+7-j.tm_yday-1)%7;(me==4||me==5&&vt(j.tm_year%400-1))&&J++}return K(J,2)},"%w":j=>j.tm_wday,"%W":j=>{var J=j.tm_yday+7-(j.tm_wday+6)%7;return K(Math.floor(J/7),2)},"%y":j=>(j.tm_year+1900).toString().substring(2),"%Y":j=>j.tm_year+1900,"%z":j=>{var J=j.tm_gmtoff,ue=J>=0;return J=Math.abs(J)/60,J=J/60*100+J%60,(ue?"+":"-")+("0000"+J).slice(-4)},"%Z":j=>j.tm_zone,"%%":()=>"%"};N=N.replace(/%%/g,"\0\0");for(var F in oe)N.includes(F)&&(N=N.replace(new RegExp(F,"g"),oe[F](x)));N=N.replace(/\0\0/g,"%");var ge=Dd(N);return ge.length>s?0:(Ld(ge,a),ge.length-1)},zd=(a,s,d,p,w)=>_d(a,s,d,p);Fn=r.InternalError=class extends Error{constructor(a){super(a),this.name="InternalError"}},mc(),He=r.BindingError=class extends Error{constructor(a){super(a),this.name="BindingError"}},vc(),kc(),Rc(),Jn=r.UnboundTypeError=jc(Error,"UnboundTypeError"),Uc(),Wc();var Ud={s:nc,u:oc,b:sc,g:ic,q:lc,J:cc,f:dc,V:uc,d:ac,da:fc,Q:pc,_:gc,ca:Dc,ba:_c,w:zc,Y:qc,x:Hc,h:Yc,L:Kc,M:Xc,t:ed,o:td,K:od,C:ud,A:fd,ea:pd,$:md,R:hd,ha:cr,fa:bd,Z:Ad,N:Ed,O:xd,aa:vd,B:Bd,X:Pd,W:Vd,T:Rd,U:$d,E:au,D:Hd,F:ou,n:su,a:Qd,e:Gd,m:Jd,k:Xd,H:ru,v:eu,G:nu,z:lu,P:du,l:Kd,j:Yd,c:qd,p:Wd,I:tu,r:iu,i:Zd,y:cu,ga:Od,S:zd},fe=rc(),Re=r._free=a=>(Re=r._free=fe.ka)(a),hr=r._malloc=a=>(hr=r._malloc=fe.la)(a),oo=a=>(oo=fe.na)(a),ae=(a,s)=>(ae=fe.oa)(a,s),ot=a=>(ot=fe.pa)(a),le=()=>(le=fe.qa)(),ce=a=>(ce=fe.ra)(a),ao=a=>(ao=fe.sa)(a),so=a=>(so=fe.ta)(a),io=(a,s,d)=>(io=fe.ua)(a,s,d),lo=a=>(lo=fe.va)(a);r.dynCall_viijii=(a,s,d,p,w,x,N)=>(r.dynCall_viijii=fe.wa)(a,s,d,p,w,x,N);var co=r.dynCall_jiiii=(a,s,d,p,w)=>(co=r.dynCall_jiiii=fe.xa)(a,s,d,p,w);r.dynCall_iiiiij=(a,s,d,p,w,x,N)=>(r.dynCall_iiiiij=fe.ya)(a,s,d,p,w,x,N),r.dynCall_iiiiijj=(a,s,d,p,w,x,N,V,F)=>(r.dynCall_iiiiijj=fe.za)(a,s,d,p,w,x,N,V,F),r.dynCall_iiiiiijj=(a,s,d,p,w,x,N,V,F,_)=>(r.dynCall_iiiiiijj=fe.Aa)(a,s,d,p,w,x,N,V,F,_);function Qd(a,s){var d=le();try{return ie(a)(s)}catch(p){if(ce(d),p!==p+0)throw p;ae(1,0)}}function Wd(a,s,d,p){var w=le();try{ie(a)(s,d,p)}catch(x){if(ce(w),x!==x+0)throw x;ae(1,0)}}function qd(a,s,d){var p=le();try{ie(a)(s,d)}catch(w){if(ce(p),w!==w+0)throw w;ae(1,0)}}function Jd(a,s,d,p){var w=le();try{return ie(a)(s,d,p)}catch(x){if(ce(w),x!==x+0)throw x;ae(1,0)}}function Hd(a,s,d,p,w){var x=le();try{return ie(a)(s,d,p,w)}catch(N){if(ce(x),N!==N+0)throw N;ae(1,0)}}function Yd(a,s){var d=le();try{ie(a)(s)}catch(p){if(ce(d),p!==p+0)throw p;ae(1,0)}}function Gd(a,s,d){var p=le();try{return ie(a)(s,d)}catch(w){if(ce(p),w!==w+0)throw w;ae(1,0)}}function Kd(a){var s=le();try{ie(a)()}catch(d){if(ce(s),d!==d+0)throw d;ae(1,0)}}function Xd(a,s,d,p,w){var x=le();try{return ie(a)(s,d,p,w)}catch(N){if(ce(x),N!==N+0)throw N;ae(1,0)}}function Zd(a,s,d,p,w,x,N,V,F,_,W){var G=le();try{ie(a)(s,d,p,w,x,N,V,F,_,W)}catch(K){if(ce(G),K!==K+0)throw K;ae(1,0)}}function eu(a,s,d,p,w,x,N){var V=le();try{return ie(a)(s,d,p,w,x,N)}catch(F){if(ce(V),F!==F+0)throw F;ae(1,0)}}function tu(a,s,d,p,w){var x=le();try{ie(a)(s,d,p,w)}catch(N){if(ce(x),N!==N+0)throw N;ae(1,0)}}function ru(a,s,d,p,w,x){var N=le();try{return ie(a)(s,d,p,w,x)}catch(V){if(ce(N),V!==V+0)throw V;ae(1,0)}}function nu(a,s,d,p,w,x,N,V){var F=le();try{return ie(a)(s,d,p,w,x,N,V)}catch(_){if(ce(F),_!==_+0)throw _;ae(1,0)}}function ou(a,s,d,p){var w=le();try{return ie(a)(s,d,p)}catch(x){if(ce(w),x!==x+0)throw x;ae(1,0)}}function au(a,s,d,p){var w=le();try{return ie(a)(s,d,p)}catch(x){if(ce(w),x!==x+0)throw x;ae(1,0)}}function su(a){var s=le();try{return ie(a)()}catch(d){if(ce(s),d!==d+0)throw d;ae(1,0)}}function iu(a,s,d,p,w,x,N,V){var F=le();try{ie(a)(s,d,p,w,x,N,V)}catch(_){if(ce(F),_!==_+0)throw _;ae(1,0)}}function lu(a,s,d,p,w,x,N,V,F,_,W,G){var K=le();try{return ie(a)(s,d,p,w,x,N,V,F,_,W,G)}catch(X){if(ce(K),X!==X+0)throw X;ae(1,0)}}function cu(a,s,d,p,w,x,N,V,F,_,W,G,K,X,se,de){var oe=le();try{ie(a)(s,d,p,w,x,N,V,F,_,W,G,K,X,se,de)}catch(ge){if(ce(oe),ge!==ge+0)throw ge;ae(1,0)}}function du(a,s,d,p,w){var x=le();try{return co(a,s,d,p,w)}catch(N){if(ce(x),N!==N+0)throw N;ae(1,0)}}var Bt;ne=function a(){Bt||uo(),Bt||(ne=a)};function uo(){if(Z>0||(D(),Z>0))return;function a(){Bt||(Bt=!0,r.calledRun=!0,!k&&(L(),o(r),r.onRuntimeInitialized&&r.onRuntimeInitialized(),Q()))}r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),a()},1)):a()}if(r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();return uo(),n.ready}})();function dl(t){return Wt(qt,t)}async function ul(t,n){return ll(qt,t,n)}async function fl(t,n){return cl(qt,t,n)}var Ke;class Jt extends EventTarget{constructor(n={}){var r;super(),ji(this,Ke,void 0);try{const o=(r=n?.formats)==null?void 0:r.filter(i=>i!=="unknown");if(o?.length===0)throw new TypeError("Hint option provided, but is empty.");o?.forEach(i=>{if(!ct.has(i))throw new TypeError(`Failed to read the 'formats' property from 'BarcodeDetectorOptions': The provided value '${i}' is not a valid enum value of type BarcodeFormat.`)}),Di(this,Ke,o??[]),dl().then(i=>{this.dispatchEvent(new CustomEvent("load",{detail:i}))}).catch(i=>{this.dispatchEvent(new CustomEvent("error",{detail:i}))})}catch(o){throw un(o,"Failed to construct 'BarcodeDetector'")}}static async getSupportedFormats(){return Li.filter(n=>n!=="unknown")}async detect(n){try{const r=await Ji(n);if(r===null)return[];let o;try{cn(r)?o=await ul(r,{tryHarder:!0,formats:Zr(this,Ke).map(i=>ct.get(i))}):o=await fl(r,{tryHarder:!0,formats:Zr(this,Ke).map(i=>ct.get(i))})}catch(i){throw console.error(i),new DOMException("Barcode detection service unavailable.","NotSupportedError")}return o.map(i=>{const{topLeft:{x:l,y:c},topRight:{x:u,y:f},bottomLeft:{x:g,y},bottomRight:{x:m,y:b}}=i.position,C=Math.min(l,u,g,m),v=Math.min(c,f,y,b),k=Math.max(l,u,g,m),E=Math.max(c,f,y,b);return{boundingBox:new DOMRectReadOnly(C,v,k-C,E-v),rawValue:i.text,format:_i(i.format),cornerPoints:[{x:l,y:c},{x:u,y:f},{x:m,y:b},{x:g,y}]}})}catch(r){throw un(r,"Failed to execute 'detect' on 'BarcodeDetector'")}}}Ke=new WeakMap;const Ht=(t,n,r="error")=>{let o,i;const l=new Promise((c,u)=>{o=c,i=u,t.addEventListener(n,o),t.addEventListener(r,i)});return l.finally(()=>{t.removeEventListener(n,o),t.removeEventListener(r,i)}),l},yn=t=>new Promise(n=>setTimeout(n,t));class pl extends Error{constructor(){super("can't process cross-origin image"),this.name="DropImageFetchError"}}class bn extends Error{constructor(){super("this browser has no Stream API support"),this.name="StreamApiNotSupportedError"}}class ml extends Error{constructor(){super("camera access is only permitted in secure context. Use HTTPS or localhost rather than HTTP."),this.name="InsecureContextError"}}class hl extends Error{constructor(){super("Loading camera stream timed out after 6 seconds. If you are on iOS in PWA mode, this is a known issue (see https://github.com/gruhn/vue-qrcode-reader/issues/298)"),this.name="StreamLoadTimeoutError"}}let Cn;function Sn(t){Cn=new Jt({formats:t})}const gl=async(t,{detectHandler:n,locateHandler:r,minDelay:o,formats:i})=>{console.debug("[vue-qrcode-reader] start scanning"),Sn(i);const l=c=>async u=>{if(t.readyState===0)console.debug("[vue-qrcode-reader] stop scanning: video element readyState is 0");else{const{lastScanned:f,contentBefore:g,lastScanHadContent:y}=c;if(u-f<o)window.requestAnimationFrame(l(c));else{const m=await Cn.detect(t),b=m.some(k=>!g.includes(k.rawValue));b&&n(m);const C=m.length>0;C&&r(m),!C&&y&&r(m);const v={lastScanned:u,lastScanHadContent:C,contentBefore:b?m.map(k=>k.rawValue):g};window.requestAnimationFrame(l(v))}}};l({lastScanned:performance.now(),contentBefore:[],lastScanHadContent:!1})(performance.now())},yl=async t=>{if(t.startsWith("http")&&t.includes(location.host)===!1)throw new pl;const n=document.createElement("img");return n.src=t,await Ht(n,"load"),n},wn=async(t,n=["qr_code"])=>await new Jt({formats:n}).detect(t),bl=async(t,n=["qr_code"])=>{const r=new Jt({formats:n}),o=await yl(t);return await r.detect(o)};var kn={},be={};Object.defineProperty(be,"__esModule",{value:!0}),be.compactObject=vn,be.deprecated=Bl;var Cl=be.detectBrowser=Pl;be.disableLog=El,be.disableWarnings=xl,be.extractVersion=dt,be.filterStats=Nl,be.log=vl,be.walkStats=ut,be.wrapPeerConnectionEvent=Al;function Sl(t,n,r){return n=wl(n),n in t?Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r,t}function wl(t){var n=kl(t,"string");return Oe(n)==="symbol"?n:String(n)}function kl(t,n){if(Oe(t)!=="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var o=r.call(t,n);if(Oe(o)!=="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}function Oe(t){"@babel/helpers - typeof";return Oe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Oe(t)}var An=!0,En=!0;function dt(t,n,r){var o=t.match(n);return o&&o.length>=r&&parseInt(o[r],10)}function Al(t,n,r){if(t.RTCPeerConnection){var o=t.RTCPeerConnection.prototype,i=o.addEventListener;o.addEventListener=function(c,u){if(c!==n)return i.apply(this,arguments);var f=function(g){var y=r(g);y&&(u.handleEvent?u.handleEvent(y):u(y))};return this._eventMap=this._eventMap||{},this._eventMap[n]||(this._eventMap[n]=new Map),this._eventMap[n].set(u,f),i.apply(this,[c,f])};var l=o.removeEventListener;o.removeEventListener=function(c,u){if(c!==n||!this._eventMap||!this._eventMap[n])return l.apply(this,arguments);if(!this._eventMap[n].has(u))return l.apply(this,arguments);var f=this._eventMap[n].get(u);return this._eventMap[n].delete(u),this._eventMap[n].size===0&&delete this._eventMap[n],Object.keys(this._eventMap).length===0&&delete this._eventMap,l.apply(this,[c,f])},Object.defineProperty(o,"on"+n,{get:function(){return this["_on"+n]},set:function(c){this["_on"+n]&&(this.removeEventListener(n,this["_on"+n]),delete this["_on"+n]),c&&this.addEventListener(n,this["_on"+n]=c)},enumerable:!0,configurable:!0})}}function El(t){return typeof t!="boolean"?new Error("Argument type: "+Oe(t)+". Please use a boolean."):(An=t,t?"adapter.js logging disabled":"adapter.js logging enabled")}function xl(t){return typeof t!="boolean"?new Error("Argument type: "+Oe(t)+". Please use a boolean."):(En=!t,"adapter.js deprecation warnings "+(t?"disabled":"enabled"))}function vl(){if((typeof window>"u"?"undefined":Oe(window))==="object"){if(An)return;typeof console<"u"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function Bl(t,n){En&&console.warn(t+" is deprecated, please use "+n+" instead.")}function Pl(t){var n={browser:null,version:null};if(typeof t>"u"||!t.navigator||!t.navigator.userAgent)return n.browser="Not a browser.",n;var r=t.navigator;if(r.mozGetUserMedia)n.browser="firefox",n.version=dt(r.userAgent,/Firefox\/(\d+)\./,1);else if(r.webkitGetUserMedia||t.isSecureContext===!1&&t.webkitRTCPeerConnection)n.browser="chrome",n.version=dt(r.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else if(t.RTCPeerConnection&&r.userAgent.match(/AppleWebKit\/(\d+)\./))n.browser="safari",n.version=dt(r.userAgent,/AppleWebKit\/(\d+)\./,1),n.supportsUnifiedPlan=t.RTCRtpTransceiver&&"currentDirection"in t.RTCRtpTransceiver.prototype;else return n.browser="Not a supported browser.",n;return n}function xn(t){return Object.prototype.toString.call(t)==="[object Object]"}function vn(t){return xn(t)?Object.keys(t).reduce(function(n,r){var o=xn(t[r]),i=o?vn(t[r]):t[r],l=o&&!Object.keys(i).length;return i===void 0||l?n:Object.assign(n,Sl({},r,i))},{}):t}function ut(t,n,r){!n||r.has(n.id)||(r.set(n.id,n),Object.keys(n).forEach(function(o){o.endsWith("Id")?ut(t,t.get(n[o]),r):o.endsWith("Ids")&&n[o].forEach(function(i){ut(t,t.get(i),r)})}))}function Nl(t,n,r){var o=r?"outbound-rtp":"inbound-rtp",i=new Map;if(n===null)return i;var l=[];return t.forEach(function(c){c.type==="track"&&c.trackIdentifier===n.id&&l.push(c)}),l.forEach(function(c){t.forEach(function(u){u.type===o&&u.trackId===c.id&&ut(t,u,i)})}),i}Object.defineProperty(kn,"__esModule",{value:!0});var Tl=kn.shimGetUserMedia=Il,Vl=Ml(be);function Bn(t){if(typeof WeakMap!="function")return null;var n=new WeakMap,r=new WeakMap;return(Bn=function(o){return o?r:n})(t)}function Ml(t,n){if(t&&t.__esModule)return t;if(t===null||Fe(t)!=="object"&&typeof t!="function")return{default:t};var r=Bn(n);if(r&&r.has(t))return r.get(t);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in t)if(l!=="default"&&Object.prototype.hasOwnProperty.call(t,l)){var c=i?Object.getOwnPropertyDescriptor(t,l):null;c&&(c.get||c.set)?Object.defineProperty(o,l,c):o[l]=t[l]}return o.default=t,r&&r.set(t,o),o}function Fe(t){"@babel/helpers - typeof";return Fe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Fe(t)}var Pn=Vl.log;function Il(t,n){var r=t&&t.navigator;if(r.mediaDevices){var o=function(f){if(Fe(f)!=="object"||f.mandatory||f.optional)return f;var g={};return Object.keys(f).forEach(function(y){if(!(y==="require"||y==="advanced"||y==="mediaSource")){var m=Fe(f[y])==="object"?f[y]:{ideal:f[y]};m.exact!==void 0&&typeof m.exact=="number"&&(m.min=m.max=m.exact);var b=function(v,k){return v?v+k.charAt(0).toUpperCase()+k.slice(1):k==="deviceId"?"sourceId":k};if(m.ideal!==void 0){g.optional=g.optional||[];var C={};typeof m.ideal=="number"?(C[b("min",y)]=m.ideal,g.optional.push(C),C={},C[b("max",y)]=m.ideal,g.optional.push(C)):(C[b("",y)]=m.ideal,g.optional.push(C))}m.exact!==void 0&&typeof m.exact!="number"?(g.mandatory=g.mandatory||{},g.mandatory[b("",y)]=m.exact):["min","max"].forEach(function(v){m[v]!==void 0&&(g.mandatory=g.mandatory||{},g.mandatory[b(v,y)]=m[v])})}}),f.advanced&&(g.optional=(g.optional||[]).concat(f.advanced)),g},i=function(f,g){if(n.version>=61)return g(f);if(f=JSON.parse(JSON.stringify(f)),f&&Fe(f.audio)==="object"){var y=function(v,k,E){k in v&&!(E in v)&&(v[E]=v[k],delete v[k])};f=JSON.parse(JSON.stringify(f)),y(f.audio,"autoGainControl","googAutoGainControl"),y(f.audio,"noiseSuppression","googNoiseSuppression"),f.audio=o(f.audio)}if(f&&Fe(f.video)==="object"){var m=f.video.facingMode;m=m&&(Fe(m)==="object"?m:{ideal:m});var b=n.version<66;if(m&&(m.exact==="user"||m.exact==="environment"||m.ideal==="user"||m.ideal==="environment")&&!(r.mediaDevices.getSupportedConstraints&&r.mediaDevices.getSupportedConstraints().facingMode&&!b)){delete f.video.facingMode;var C;if(m.exact==="environment"||m.ideal==="environment"?C=["back","rear"]:(m.exact==="user"||m.ideal==="user")&&(C=["front"]),C)return r.mediaDevices.enumerateDevices().then(function(v){v=v.filter(function(E){return E.kind==="videoinput"});var k=v.find(function(E){return C.some(function($){return E.label.toLowerCase().includes($)})});return!k&&v.length&&C.includes("back")&&(k=v[v.length-1]),k&&(f.video.deviceId=m.exact?{exact:k.deviceId}:{ideal:k.deviceId}),f.video=o(f.video),Pn("chrome: "+JSON.stringify(f)),g(f)})}f.video=o(f.video)}return Pn("chrome: "+JSON.stringify(f)),g(f)},l=function(f){return n.version>=64?f:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[f.name]||f.name,message:f.message,constraint:f.constraint||f.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}},c=function(f,g,y){i(f,function(m){r.webkitGetUserMedia(m,g,function(b){y&&y(l(b))})})};if(r.getUserMedia=c.bind(r),r.mediaDevices.getUserMedia){var u=r.mediaDevices.getUserMedia.bind(r.mediaDevices);r.mediaDevices.getUserMedia=function(f){return i(f,function(g){return u(g).then(function(y){if(g.audio&&!y.getAudioTracks().length||g.video&&!y.getVideoTracks().length)throw y.getTracks().forEach(function(m){m.stop()}),new DOMException("","NotFoundError");return y},function(y){return Promise.reject(l(y))})})}}}}var Nn={};Object.defineProperty(Nn,"__esModule",{value:!0});var Rl=Nn.shimGetUserMedia=Fl,$l=Ol(be);function Tn(t){if(typeof WeakMap!="function")return null;var n=new WeakMap,r=new WeakMap;return(Tn=function(o){return o?r:n})(t)}function Ol(t,n){if(t&&t.__esModule)return t;if(t===null||We(t)!=="object"&&typeof t!="function")return{default:t};var r=Tn(n);if(r&&r.has(t))return r.get(t);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in t)if(l!=="default"&&Object.prototype.hasOwnProperty.call(t,l)){var c=i?Object.getOwnPropertyDescriptor(t,l):null;c&&(c.get||c.set)?Object.defineProperty(o,l,c):o[l]=t[l]}return o.default=t,r&&r.set(t,o),o}function We(t){"@babel/helpers - typeof";return We=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},We(t)}function Fl(t,n){var r=t&&t.navigator,o=t&&t.MediaStreamTrack;if(r.getUserMedia=function(f,g,y){$l.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),r.mediaDevices.getUserMedia(f).then(g,y)},!(n.version>55&&"autoGainControl"in r.mediaDevices.getSupportedConstraints())){var i=function(f,g,y){g in f&&!(y in f)&&(f[y]=f[g],delete f[g])},l=r.mediaDevices.getUserMedia.bind(r.mediaDevices);if(r.mediaDevices.getUserMedia=function(f){return We(f)==="object"&&We(f.audio)==="object"&&(f=JSON.parse(JSON.stringify(f)),i(f.audio,"autoGainControl","mozAutoGainControl"),i(f.audio,"noiseSuppression","mozNoiseSuppression")),l(f)},o&&o.prototype.getSettings){var c=o.prototype.getSettings;o.prototype.getSettings=function(){var f=c.apply(this,arguments);return i(f,"mozAutoGainControl","autoGainControl"),i(f,"mozNoiseSuppression","noiseSuppression"),f}}if(o&&o.prototype.applyConstraints){var u=o.prototype.applyConstraints;o.prototype.applyConstraints=function(f){return this.kind==="audio"&&We(f)==="object"&&(f=JSON.parse(JSON.stringify(f)),i(f,"autoGainControl","mozAutoGainControl"),i(f,"noiseSuppression","mozNoiseSuppression")),u.apply(this,[f])}}}}var Be={};Object.defineProperty(Be,"__esModule",{value:!0}),Be.shimAudioContext=Jl,Be.shimCallbacksAPI=zl,Be.shimConstraints=In,Be.shimCreateOfferLegacy=ql;var jl=Be.shimGetUserMedia=Ul;Be.shimLocalStreamsAPI=Ll,Be.shimRTCIceServerUrls=Ql,Be.shimRemoteStreamsAPI=_l,Be.shimTrackEventTransceiver=Wl;var Vn=Dl(be);function Mn(t){if(typeof WeakMap!="function")return null;var n=new WeakMap,r=new WeakMap;return(Mn=function(o){return o?r:n})(t)}function Dl(t,n){if(t&&t.__esModule)return t;if(t===null||je(t)!=="object"&&typeof t!="function")return{default:t};var r=Mn(n);if(r&&r.has(t))return r.get(t);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in t)if(l!=="default"&&Object.prototype.hasOwnProperty.call(t,l)){var c=i?Object.getOwnPropertyDescriptor(t,l):null;c&&(c.get||c.set)?Object.defineProperty(o,l,c):o[l]=t[l]}return o.default=t,r&&r.set(t,o),o}function je(t){"@babel/helpers - typeof";return je=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},je(t)}function Ll(t){if(!(je(t)!=="object"||!t.RTCPeerConnection)){if("getLocalStreams"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in t.RTCPeerConnection.prototype)){var n=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addStream=function(r){var o=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(r)||this._localStreams.push(r),r.getAudioTracks().forEach(function(i){return n.call(o,i,r)}),r.getVideoTracks().forEach(function(i){return n.call(o,i,r)})},t.RTCPeerConnection.prototype.addTrack=function(r){for(var o=this,i=arguments.length,l=new Array(i>1?i-1:0),c=1;c<i;c++)l[c-1]=arguments[c];return l&&l.forEach(function(u){o._localStreams?o._localStreams.includes(u)||o._localStreams.push(u):o._localStreams=[u]}),n.apply(this,arguments)}}"removeStream"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.removeStream=function(r){var o=this;this._localStreams||(this._localStreams=[]);var i=this._localStreams.indexOf(r);if(i!==-1){this._localStreams.splice(i,1);var l=r.getTracks();this.getSenders().forEach(function(c){l.includes(c.track)&&o.removeTrack(c)})}})}}function _l(t){if(!(je(t)!=="object"||!t.RTCPeerConnection)&&("getRemoteStreams"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in t.RTCPeerConnection.prototype))){Object.defineProperty(t.RTCPeerConnection.prototype,"onaddstream",{get:function(){return this._onaddstream},set:function(r){var o=this;this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=r),this.addEventListener("track",this._onaddstreampoly=function(i){i.streams.forEach(function(l){if(o._remoteStreams||(o._remoteStreams=[]),!o._remoteStreams.includes(l)){o._remoteStreams.push(l);var c=new Event("addstream");c.stream=l,o.dispatchEvent(c)}})})}});var n=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){var r=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(o){o.streams.forEach(function(i){if(r._remoteStreams||(r._remoteStreams=[]),!(r._remoteStreams.indexOf(i)>=0)){r._remoteStreams.push(i);var l=new Event("addstream");l.stream=i,r.dispatchEvent(l)}})}),n.apply(r,arguments)}}}function zl(t){if(!(je(t)!=="object"||!t.RTCPeerConnection)){var n=t.RTCPeerConnection.prototype,r=n.createOffer,o=n.createAnswer,i=n.setLocalDescription,l=n.setRemoteDescription,c=n.addIceCandidate;n.createOffer=function(f,g){var y=arguments.length>=2?arguments[2]:arguments[0],m=r.apply(this,[y]);return g?(m.then(f,g),Promise.resolve()):m},n.createAnswer=function(f,g){var y=arguments.length>=2?arguments[2]:arguments[0],m=o.apply(this,[y]);return g?(m.then(f,g),Promise.resolve()):m};var u=function(f,g,y){var m=i.apply(this,[f]);return y?(m.then(g,y),Promise.resolve()):m};n.setLocalDescription=u,u=function(f,g,y){var m=l.apply(this,[f]);return y?(m.then(g,y),Promise.resolve()):m},n.setRemoteDescription=u,u=function(f,g,y){var m=c.apply(this,[f]);return y?(m.then(g,y),Promise.resolve()):m},n.addIceCandidate=u}}function Ul(t){var n=t&&t.navigator;if(n.mediaDevices&&n.mediaDevices.getUserMedia){var r=n.mediaDevices,o=r.getUserMedia.bind(r);n.mediaDevices.getUserMedia=function(i){return o(In(i))}}!n.getUserMedia&&n.mediaDevices&&n.mediaDevices.getUserMedia&&(n.getUserMedia=(function(i,l,c){n.mediaDevices.getUserMedia(i).then(l,c)}).bind(n))}function In(t){return t&&t.video!==void 0?Object.assign({},t,{video:Vn.compactObject(t.video)}):t}function Ql(t){if(t.RTCPeerConnection){var n=t.RTCPeerConnection;t.RTCPeerConnection=function(r,o){if(r&&r.iceServers){for(var i=[],l=0;l<r.iceServers.length;l++){var c=r.iceServers[l];c.urls===void 0&&c.url?(Vn.deprecated("RTCIceServer.url","RTCIceServer.urls"),c=JSON.parse(JSON.stringify(c)),c.urls=c.url,delete c.url,i.push(c)):i.push(r.iceServers[l])}r.iceServers=i}return new n(r,o)},t.RTCPeerConnection.prototype=n.prototype,"generateCertificate"in n&&Object.defineProperty(t.RTCPeerConnection,"generateCertificate",{get:function(){return n.generateCertificate}})}}function Wl(t){je(t)==="object"&&t.RTCTrackEvent&&"receiver"in t.RTCTrackEvent.prototype&&!("transceiver"in t.RTCTrackEvent.prototype)&&Object.defineProperty(t.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function ql(t){var n=t.RTCPeerConnection.prototype.createOffer;t.RTCPeerConnection.prototype.createOffer=function(r){if(r){typeof r.offerToReceiveAudio<"u"&&(r.offerToReceiveAudio=!!r.offerToReceiveAudio);var o=this.getTransceivers().find(function(l){return l.receiver.track.kind==="audio"});r.offerToReceiveAudio===!1&&o?o.direction==="sendrecv"?o.setDirection?o.setDirection("sendonly"):o.direction="sendonly":o.direction==="recvonly"&&(o.setDirection?o.setDirection("inactive"):o.direction="inactive"):r.offerToReceiveAudio===!0&&!o&&this.addTransceiver("audio",{direction:"recvonly"}),typeof r.offerToReceiveVideo<"u"&&(r.offerToReceiveVideo=!!r.offerToReceiveVideo);var i=this.getTransceivers().find(function(l){return l.receiver.track.kind==="video"});r.offerToReceiveVideo===!1&&i?i.direction==="sendrecv"?i.setDirection?i.setDirection("sendonly"):i.direction="sendonly":i.direction==="recvonly"&&(i.setDirection?i.setDirection("inactive"):i.direction="inactive"):r.offerToReceiveVideo===!0&&!i&&this.addTransceiver("video",{direction:"recvonly"})}return n.apply(this,arguments)}}function Jl(t){je(t)!=="object"||t.AudioContext||(t.AudioContext=t.webkitAudioContext)}const Hl=t=>{let n=!1,r;return(...o)=>(n||(r=t(o),n=!0),r)};function Pe(t,n){if(t===!1)throw new Error(n??"assertion failure")}function Rn(t){throw new Error("this code should be unreachable")}const Yl=Hl(()=>{const t=Cl(window);switch(t.browser){case"chrome":Tl(window,t);break;case"firefox":Rl(window,t);break;case"safari":jl(window,t);break;default:throw new bn}});let qe=Promise.resolve({type:"stop",data:{}});async function $n(t,n,r){var o,i,l;if(console.debug("[vue-qrcode-reader] starting camera with constraints: ",JSON.stringify(n)),window.isSecureContext!==!0)throw new ml;if(((o=navigator?.mediaDevices)==null?void 0:o.getUserMedia)===void 0)throw new bn;Yl(),console.debug("[vue-qrcode-reader] calling getUserMedia");const c=await navigator.mediaDevices.getUserMedia({audio:!1,video:n});t.srcObject!==void 0?t.srcObject=c:t.mozSrcObject!==void 0?t.mozSrcObject=c:window.URL.createObjectURL?t.src=window.URL.createObjectURL(c):window.webkitURL?t.src=window.webkitURL.createObjectURL(c):t.src=c.id,t.play(),console.debug("[vue-qrcode-reader] waiting for video element to load"),await Promise.race([Ht(t,"loadeddata"),yn(6e3).then(()=>{throw new hl})]),console.debug("[vue-qrcode-reader] video element loaded"),await yn(500);const[u]=c.getVideoTracks(),f=(l=(i=u?.getCapabilities)==null?void 0:i.call(u))!=null?l:{};let g=!1;return r&&f.torch&&(await u.applyConstraints({advanced:[{torch:!0}]}),g=!0),console.debug("[vue-qrcode-reader] camera ready"),{type:"start",data:{videoEl:t,stream:c,capabilities:f,constraints:n,isTorchOn:g}}}async function Gl(t,{constraints:n,torch:r,restart:o=!1}){qe=qe.then(l=>{if(l.type==="start"){const{data:{videoEl:c,stream:u,constraints:f,isTorchOn:g}}=l;return!o&&t===c&&n===f&&r===g?l:On(c,u,g).then(()=>$n(t,n,r))}else if(l.type==="stop"||l.type==="failed")return $n(t,n,r);Rn()}).catch(l=>(console.debug(`[vue-qrcode-reader] starting camera failed with "${l}"`),{type:"failed",error:l}));const i=await qe;if(i.type==="stop")throw new Error("Something went wrong with the camera task queue (start task).");if(i.type==="failed")throw i.error;if(i.type==="start")return i.data.capabilities;Rn()}async function On(t,n,r){console.debug("[vue-qrcode-reader] stopping camera"),t.src="",t.srcObject=null,t.load(),await Ht(t,"error");for(const o of n.getTracks())r!=null||await o.applyConstraints({advanced:[{torch:!1}]}),n.removeTrack(o),o.stop();return{type:"stop",data:{}}}async function ft(){if(qe=qe.then(t=>{if(t.type==="stop"||t.type==="failed")return t;const{data:{videoEl:n,stream:r,isTorchOn:o}}=t;return On(n,r,o)}),(await qe).type==="start")throw new Error("Something went wrong with the camera task queue (stop task).")}const Kl=e.defineComponent({__name:"QrcodeStream",props:{constraints:{default:()=>({facingMode:"environment"})},formats:{default:()=>["qr_code"]},paused:{type:Boolean,default:!1},torch:{type:Boolean,default:!1},track:{type:Function,default:void 0}},emits:["detect","camera-on","camera-off","error"],setup(t,{emit:n}){const r=t,o=n,i=e.ref(r.constraints),l=e.ref(r.formats);e.watch(()=>r.constraints,(A,O)=>{JSON.stringify(A)!==JSON.stringify(O)&&(i.value=A)},{deep:!0}),e.watch(()=>r.formats,(A,O)=>{JSON.stringify(A)!==JSON.stringify(O)&&(l.value=A)},{deep:!0});const c=e.ref(),u=e.ref(),f=e.ref(),g=e.ref(!1),y=e.ref(!1);e.onMounted(()=>{y.value=!0}),e.onUnmounted(()=>{ft()});const m=e.computed(()=>({torch:r.torch,constraints:i.value,shouldStream:y.value&&!r.paused}));e.watch(m,async A=>{const O=f.value;Pe(O!==void 0,"cameraSettings watcher should never be triggered when component is not mounted. Thus video element should always be defined.");const B=c.value;Pe(B!==void 0,"cameraSettings watcher should never be triggered when component is not mounted. Thus canvas should always be defined.");const P=B.getContext("2d");if(Pe(P!==null,"if cavnas is defined, canvas 2d context should also be non-null"),A.shouldStream){ft(),g.value=!1;try{const S=await Gl(O,A);y.value?(g.value=!0,o("camera-on",S)):await ft()}catch(S){o("error",S)}}else B.width=O.videoWidth,B.height=O.videoHeight,P.drawImage(O,0,0,O.videoWidth,O.videoHeight),ft(),g.value=!1,o("camera-off")},{deep:!0}),e.watch(l,A=>{y.value&&Sn(A)});const b=e.computed(()=>m.value.shouldStream&&g.value);e.watch(b,A=>{if(A){Pe(c.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus pause frame canvas is defined"),C(c.value),Pe(u.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus tracking canvas is defined"),C(u.value);const O=()=>r.track===void 0?500:40;Pe(f.value!==void 0,"shouldScan watcher should only be triggered when component is mounted. Thus video element is defined"),gl(f.value,{detectHandler:B=>o("detect",B),formats:l.value,locateHandler:v,minDelay:O()})}});const C=A=>{const O=A.getContext("2d");Pe(O!==null,"canvas 2d context should always be non-null"),O.clearRect(0,0,A.width,A.height)},v=A=>{const O=u.value;Pe(O!==void 0,"onLocate handler should only be called when component is mounted. Thus tracking canvas is always defined.");const B=f.value;if(Pe(B!==void 0,"onLocate handler should only be called when component is mounted. Thus video element is always defined."),A.length===0||r.track===void 0)C(O);else{const P=B.offsetWidth,S=B.offsetHeight,h=B.videoWidth,T=B.videoHeight,I=Math.max(P/h,S/T),U=h*I,D=T*I,L=U/h,Q=D/T,z=(P-U)/2,re=(S-D)/2,pe=({x:Ce,y:ye})=>({x:Math.floor(Ce*L),y:Math.floor(ye*Q)}),Z=({x:Ce,y:ye})=>({x:Math.floor(Ce+z),y:Math.floor(ye+re)}),ne=A.map(Ce=>{const{boundingBox:ye,cornerPoints:Yt}=Ce,{x:pt,y:De}=Z(pe({x:ye.x,y:ye.y})),{x:mt,y:Gt}=pe({x:ye.width,y:ye.height});return{...Ce,cornerPoints:Yt.map(ht=>Z(pe(ht))),boundingBox:DOMRectReadOnly.fromRect({x:pt,y:De,width:mt,height:Gt})}});O.width=B.offsetWidth,O.height=B.offsetHeight;const Y=O.getContext("2d");Pe(Y!==null,"canvas 2d context should always be non-null"),r.track(ne,Y)}},k={width:"100%",height:"100%",position:"relative","z-index":"0"},E={width:"100%",height:"100%",position:"absolute",top:"0",left:"0"},$={width:"100%",height:"100%","object-fit":"cover"},M=e.computed(()=>b.value?$:{...$,visibility:"hidden",position:"absolute"});return(A,O)=>(e.openBlock(),e.createElementBlock("div",{style:k},[e.createElementVNode("video",{ref_key:"videoRef",ref:f,style:e.normalizeStyle(M.value),autoplay:"",muted:"",playsinline:""},null,4),e.withDirectives(e.createElementVNode("canvas",{id:"qrcode-stream-pause-frame",ref_key:"pauseFrameRef",ref:c,style:$},null,512),[[e.vShow,!b.value]]),e.createElementVNode("canvas",{id:"qrcode-stream-tracking-layer",ref_key:"trackingLayerRef",ref:u,style:E},null,512),e.createElementVNode("div",{style:E},[e.renderSlot(A.$slots,"default")])]))}}),Xl=e.defineComponent({__name:"QrcodeCapture",props:{formats:{default:()=>["qr_code"]}},emits:["detect"],setup(t,{emit:n}){const r=t,o=n,i=l=>{if(!(!(l.target instanceof HTMLInputElement)||!l.target.files))for(const c of Array.from(l.target.files))wn(c,r.formats).then(u=>{o("detect",u)})};return(l,c)=>(e.openBlock(),e.createElementBlock("input",{onChange:i,type:"file",name:"image",accept:"image/*",capture:"environment",multiple:""},null,32))}}),Zl=e.defineComponent({__name:"QrcodeDropZone",props:{formats:{default:()=>["qr_code"]}},emits:["detect","dragover","error"],setup(t,{emit:n}){const r=t,o=n,i=async u=>{try{const f=await u;o("detect",f)}catch(f){o("error",f)}},l=u=>{o("dragover",u)},c=({dataTransfer:u})=>{if(!u)return;l(!1);const f=[...Array.from(u.files)],g=u.getData("text/uri-list");f.forEach(y=>{i(wn(y,r.formats))}),g!==""&&i(bl(g,r.formats))};return(u,f)=>(e.openBlock(),e.createElementBlock("div",{onDrop:e.withModifiers(c,["prevent","stop"]),onDragenter:f[0]||(f[0]=e.withModifiers(g=>l(!0),["prevent","stop"])),onDragleave:f[1]||(f[1]=e.withModifiers(g=>l(!1),["prevent","stop"])),onDragover:f[2]||(f[2]=e.withModifiers(()=>{},["prevent","stop"]))},[e.renderSlot(u.$slots,"default")],32))}}),ec=e.defineComponent({name:"SunnyQrcodeReader",inheritAttrs:!1,__name:"SunnyQrcodeReader",props:{mode:{default:"stream"},paused:{type:Boolean,default:!1},constraints:{},torch:{type:Boolean,default:!1},formats:{default:()=>["qr_code"]},track:{type:[Function,Boolean]}},emits:["detect","error","camera-on","camera-off"],setup(t,{emit:n}){const r=t,o=n,i=e.computed(()=>r.mode==="stream"),l=e.computed(()=>r.mode==="capture"),c=e.computed(()=>r.mode==="drop-zone");function u(m){o("detect",m)}function f(m){o("error",m)}function g(m){o("camera-on",m)}function y(){o("camera-off")}return(m,b)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"sunny-qrcode-reader"},m.$attrs),[i.value?(e.openBlock(),e.createBlock(e.unref(Kl),{key:0,paused:t.paused,constraints:t.constraints,torch:t.torch,formats:t.formats,track:t.track,onDetect:u,onError:f,onCameraOn:g,onCameraOff:y},e.createSlots({default:e.withCtx(()=>[e.renderSlot(m.$slots,"default")]),_:2},[m.$slots.loading?{name:"loading",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"loading")]),key:"0"}:void 0]),1032,["paused","constraints","torch","formats","track"])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createBlock(e.unref(Xl),{key:1,formats:t.formats,onDetect:u,onError:f},null,8,["formats"])):e.createCommentVNode("",!0),c.value?(e.openBlock(),e.createBlock(e.unref(Zl),{key:2,formats:t.formats,onDetect:u,onError:f},e.createSlots({_:2},[m.$slots["drop-zone"]?{name:"default",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"drop-zone")]),key:"0"}:void 0]),1032,["formats"])):e.createCommentVNode("",!0)],16))}});Object.defineProperty(q,"patterns",{enumerable:!0,get:()=>H.patterns}),Object.defineProperty(q,"startProgress",{enumerable:!0,get:()=>H.startProgress}),Object.defineProperty(q,"stopProgress",{enumerable:!0,get:()=>H.stopProgress}),q.z=Co,q.DEFAULT_FORM_COMMON_CONFIG=Se,q.EditRender=Vs,q.ErrorBoundary=Va,q.FormApi=Tr,q.Modal=at,q.ModalTypes=ya,q.SunnyBatchSelect=us,q.SunnyBusinessSearch=Qt,q.SunnyCustomizeSelect=Ii,q.SunnyExportModal=Gr,q.SunnyForm=Lr,q.SunnyIcon=zt,q.SunnyImportModal=Kr,q.SunnyLoading=Oa,q.SunnyQrcodeReader=ec,q.SunnyResourceTree=zs,q.SunnyScrollbar=za,q.SunnySearchInputTag=Pr,q.SunnySearchModal=Qr,q.SunnySearchPlan=Yr,q.SunnySelect=Br,q.SunnySimpleUpload=vr,q.SunnySpinner=Da,q.SunnyUpload=as,q.Validators=Ms,q.getBusinessConfig=qr,q.registerBusinessConfig=ri,q.setupSunnyForm=Wa,q.useExportModal=Ri,q.useImportModal=Fi,q.useSunnyEditGrid=Ts,q.useSunnyForm=Dr,q.useSunnyModal=ga,q.useSunnyQueryGrid=Ds,q.useSunnyResourceTree=zr,q.useSunnySearchPlan=Hr,Object.defineProperty(q,Symbol.toStringTag,{value:"Module"})}));
|