@jt-home/mfe-components 1.0.11 → 1.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2574 -1909
- package/dist/style.css +1 -1
- package/dist/types/components/globalInfo/controller/controllerRequests.d.ts +1 -0
- package/dist/types/components/globalInfo/model/fieldUtils.d.ts +4 -2
- package/dist/types/components/globalInfo/model/types.d.ts +11 -2
- package/dist/types/components/globalInfo/renderers/GlobalInfoFieldControl.vue.d.ts +3 -3
- package/dist/types/components/globalInfo/renderers/optionPreload.d.ts +6 -3
- package/package.json +20 -15
- package/readme.md +16 -3
package/dist/index.cjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
require('./style.css');
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),D=require("element-plus/es"),be=require("element-plus"),Ge=require("./JtAttachmentPreview/index.cjs"),Re=2,jt=3;function zt(o){return o.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function tt(o){if(!o.startsWith("on")||o.length<=Re)return!1;const t=o.charCodeAt(Re);return t<97||t>122}function xt(o){if(o.startsWith("on-"))return o.slice(jt);const[t,n]=o.slice(Re).split(":"),r=zt(t);return n?`${r}:${n}`:r}function ot(o,t=new Set){return Object.fromEntries(Object.entries(o).filter(([n,r])=>!t.has(n)&&tt(n)&&typeof r=="function").map(([n,r])=>[xt(n),r]))}function nt(o,t=new Set){return Object.fromEntries(Object.entries(o).filter(([n])=>!t.has(n)&&!tt(n)))}const At=e.defineComponent({name:"JtButton",__name:"index",props:{size:{},disabled:{type:Boolean},type:{},icon:{},nativeType:{},loading:{type:Boolean},loadingIcon:{},plain:{type:Boolean},text:{type:Boolean},link:{type:Boolean},bg:{type:Boolean},autofocus:{type:Boolean},round:{type:Boolean},circle:{type:Boolean},dashed:{type:Boolean},color:{},dark:{type:Boolean},autoInsertSpace:{type:Boolean},tag:{}},setup(o){const t=o,n=e.useAttrs(),r=e.computed(()=>{const{icon:l,...i}=t;return{...nt(n),...i}}),a=e.computed(()=>ot(n));return(l,i)=>{const s=D.ElIcon,p=D.ElButton;return e.openBlock(),e.createBlock(p,e.mergeProps({class:"jt-button"},r.value,e.toHandlers(a.value)),{default:e.withCtx(()=>[l.$slots.icon?(e.openBlock(),e.createBlock(s,{key:0,class:"jt-button__icon"},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"icon",{},void 0,!0)]),_:3})):t.icon?(e.openBlock(),e.createBlock(s,{key:1,class:"jt-button__icon"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon)))]),_:1})):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},void 0,!0)]),_:3},16)}}}),Y=(o,t)=>{const n=o.__vccOpts||o;for(const[r,a]of t)n[r]=a;return n},he=Y(At,[["__scopeId","data-v-a8344276"]]),qt={options:()=>[],placeholder:"请选择",clearable:!0,persistent:!0};function Ke(o){return Object.fromEntries(Object.entries(o).filter(([,t])=>t!==void 0))}function Kt(o){const t=Ke(o);return t.props&&(t.props=Ke(t.props)),t}const rt=e.defineComponent({name:"JtCascader",__name:"index",props:e.mergeDefaults({size:{},placeholder:{},disabled:{type:Boolean},clearable:{type:Boolean},clearIcon:{},filterable:{type:Boolean},filterMethod:{type:Function},separator:{},showAllLevels:{type:Boolean},collapseTags:{type:Boolean},maxCollapseTags:{},collapseTagsTooltip:{type:Boolean},maxCollapseTagsTooltipHeight:{},debounce:{},beforeFilter:{type:Function},placement:{},fallbackPlacements:{},popperClass:{},popperStyle:{type:[Boolean,null,String,Object,Array]},teleported:{type:Boolean},effect:{},tagType:{},tagEffect:{},validateEvent:{type:Boolean},persistent:{type:Boolean},showCheckedStrategy:{},checkOnClickNode:{type:Boolean},showPrefix:{type:Boolean},fitInputWidth:{type:[Boolean,Number]},modelValue:{},props:{},virtualScroll:{type:Boolean},itemSize:{},height:{},emptyValues:{},valueOnClear:{type:[String,Number,Boolean,Function,null]},options:{}},qt),emits:be.cascaderEmits,setup(o,{emit:t}){const n=o,r=e.computed(()=>Kt(n)),a=e.ref(n.modelValue);e.watch(()=>n.modelValue,I=>{a.value=I},{deep:!0});const l=t;function i(I,...P){l(I,...P)}function s(I){a.value=I,i("update:modelValue",I)}function p(I){i("change",I)}function g(I){i("focus",I)}function T(I){i("blur",I)}function f(){i("clear")}function y(I){i("visibleChange",I)}function m(I){i("expandChange",I)}function k(I){i("removeTag",I)}return(I,P)=>{const V=D.ElCascader;return e.openBlock(),e.createBlock(V,e.mergeProps({class:"jt-cascader"},r.value,{"model-value":a.value,"onUpdate:modelValue":s,onChange:p,onFocus:g,onBlur:T,onClear:f,onVisibleChange:y,onExpandChange:m,onRemoveTag:k}),null,16,["model-value"])}}}),Jt=e.defineComponent({name:"JtDatePicker",__name:"index",props:{type:{default:"date"},showNow:{type:Boolean},showConfirm:{type:Boolean},showFooter:{type:Boolean},showWeekNumber:{type:Boolean},ariaLabel:{},emptyValues:{},valueOnClear:{},disabledDate:{},cellClassName:{},shortcuts:{},arrowControl:{type:Boolean},tabindex:{},validateEvent:{type:Boolean},unlinkPanels:{type:Boolean},singlePanel:{type:Boolean},placement:{},fallbackPlacements:{},disabledHours:{},disabledMinutes:{},disabledSeconds:{},automaticDropdown:{type:Boolean},id:{},name:{},popperClass:{},popperStyle:{},format:{},valueFormat:{default:"YYYY-MM-DD"},dateFormat:{},timeFormat:{},clearable:{type:Boolean,default:!0},clearIcon:{},editable:{type:Boolean},saveOnBlur:{type:Boolean},prefixIcon:{},size:{},readonly:{type:Boolean},disabled:{type:Boolean},placeholder:{default:"请选择日期"},popperOptions:{},modelValue:{},rangeSeparator:{},startPlaceholder:{},endPlaceholder:{},defaultValue:{},defaultTime:{},isRange:{type:Boolean}},setup(o){const t=o,n=e.computed(()=>({...t,startPlaceholder:t.startPlaceholder??(r(t.type)?"开始日期":void 0),endPlaceholder:t.endPlaceholder??(r(t.type)?"结束日期":void 0)}));function r(a){return a?.includes("range")??!1}return(a,l)=>{const i=D.ElDatePicker;return e.openBlock(),e.createBlock(i,e.mergeProps({class:"jt-date-picker"},n.value,{"onUpdate:modelValue":l[0]||(l[0]=s=>a.$emit("update:modelValue",s))}),null,16)}}}),at=Y(Jt,[["__scopeId","data-v-7aa4706e"]]),Ht=e.defineComponent({name:"JtInput",__name:"index",props:{id:{},size:{},disabled:{type:Boolean},modelValue:{},modelModifiers:{},maxlength:{},minlength:{},type:{},resize:{},autosize:{type:[Object,Boolean]},autocomplete:{},formatter:{},parser:{},placeholder:{default:"请输入"},form:{},readonly:{type:Boolean},clearable:{type:Boolean,default:!0},clearIcon:{},showPassword:{type:Boolean},showWordLimit:{type:Boolean},wordLimitPosition:{},suffixIcon:{},prefixIcon:{},containerRole:{},tabindex:{},validateEvent:{type:Boolean},inputStyle:{type:[Boolean,null,String,Object,Array]},autofocus:{type:Boolean},rows:{},ariaLabel:{},inputmode:{},name:{},countGraphemes:{}},emits:{...be.inputEmits,enter:()=>!0},setup(o,{emit:t}){const n=o,r=t,a=e.computed(()=>Object.fromEntries(Object.keys(be.inputEmits).map(l=>[l,(...i)=>r(l,...i)])));return(l,i)=>{const s=D.ElInput;return e.openBlock(),e.createBlock(s,e.mergeProps({class:"jt-input"},n,e.toHandlers(a.value),{onKeyup:i[0]||(i[0]=e.withKeys(p=>r("enter"),["enter"]))}),null,16)}}}),Ce=Y(Ht,[["__scopeId","data-v-031428a1"]]),Ut=e.defineComponent({name:"JtSelect",__name:"index",props:{options:{},ariaLabel:{},emptyValues:{},valueOnClear:{},name:{},id:{},modelValue:{},autocomplete:{},automaticDropdown:{type:Boolean},size:{},effect:{},disabled:{type:Boolean},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},allowCreate:{type:Boolean},loading:{type:Boolean},popperClass:{},popperStyle:{},popperOptions:{},remote:{type:Boolean},debounce:{},loadingText:{},noMatchText:{},noDataText:{},remoteMethod:{},filterMethod:{},multiple:{type:Boolean},multipleLimit:{},placeholder:{default:"请选择"},defaultFirstOption:{type:Boolean},reserveKeyword:{type:Boolean},valueKey:{},collapseTags:{type:Boolean},collapseTagsTooltip:{type:Boolean},tagTooltip:{},maxCollapseTags:{},teleported:{type:Boolean},persistent:{type:Boolean},clearIcon:{},fitInputWidth:{type:Boolean},suffixIcon:{},tagType:{},tagEffect:{},validateEvent:{type:Boolean},remoteShowSuffix:{type:Boolean},showArrow:{type:Boolean},offset:{},placement:{},fallbackPlacements:{},tabindex:{},appendTo:{},props:{}},emits:be.selectEmits,setup(o,{emit:t}){const n=o,r=e.computed(()=>{const{options:i,...s}=n;return s}),a=t,l=e.computed(()=>Object.fromEntries(Object.keys(be.selectEmits).map(i=>[i,(...s)=>a(i,...s)])));return(i,s)=>{const p=D.ElOption,g=D.ElSelect;return e.openBlock(),e.createBlock(g,e.mergeProps({class:"jt-select"},r.value,e.toHandlers(l.value)),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.options??[],T=>(e.openBlock(),e.createBlock(p,e.mergeProps({key:T.value,ref_for:!0},T),null,16))),128))]),_:1},16)}}}),lt=Y(Ut,[["__scopeId","data-v-c67cfa84"]]),Wt={class:"jt-form-items"},Me=4,Zt=e.defineComponent({name:"JTFormItems",__name:"JtFormItems",props:{configs:{},formData:{},span:{}},setup(o){const t=o,n={input:Ce,select:lt,cascader:rt,"date-picker":at},r={"remote-select":"select",date:"date-picker",daterange:"date-picker","date-range":"date-picker",dateRange:"date-picker"},a=new Set(["prop","label","itemType","span","options","rules","formItemProps","showSlot","show"]),l=Object.keys(n),i=new Map,s=e.computed(()=>t.configs.filter(u=>u.show!==!1)),p=u=>{const{itemType:v}=u;if(!v)return Ce;if(typeof v!="string")return v;const _=r[v]??v;return l.includes(_)?n[_]:(console.error(`[JtFormItems] 不支持的 itemType: "${v}",支持的类型: ${l.join(", ")}`),Ce)},g=u=>{const v=nt(u,a);return u.itemType==="select"||u.itemType==="remote-select"||u.itemType==="cascader"?{...v,options:u.options}:O(u.itemType)?{...v,type:"daterange"}:v},T=u=>ot(u,a),f=u=>({rules:u.rules,...u.formItemProps}),y=(u,v)=>{t.formData[u]=v};function m(u){return v=>{if(v){i.set(u,v);return}i.delete(u)}}function k(u,v){e.nextTick(()=>{i.get(u)?.validate(v).catch(()=>{})})}const I=u=>Math.min(Math.max(Math.trunc(u||1),1),4),P=e.computed(()=>{const v=s.value.reduce((_,S)=>_+I(t.span||S.span),0)%Me;return v===0?{gridColumn:`1 / span ${Me}`}:{gridColumn:`${v+1} / span ${Me-v}`}}),V=u=>({gridColumn:`span ${I(t.span||u.span)}`});function O(u){return u==="daterange"||u==="date-range"||u==="dateRange"}return(u,v)=>{const _=D.ElFormItem;return e.openBlock(),e.createElementBlock("div",Wt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,S=>(e.openBlock(),e.createBlock(_,e.mergeProps({key:S.prop,ref_for:!0,ref:m(S.prop),class:"jt-form-items__item",style:V(S),label:S.label,prop:S.prop},f(S)),{default:e.withCtx(()=>[S.showSlot?e.renderSlot(u.$slots,S.prop,{key:0},void 0,!0):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(p(S)),e.mergeProps({key:1,"model-value":u.formData[S.prop],ref_for:!0},g(S),e.toHandlers(T(S)),{"onUpdate:modelValue":E=>y(S.prop,E),onChange:()=>k(S.prop,"change"),onBlur:()=>k(S.prop,"blur")}),null,16,["model-value","onUpdate:modelValue","onChange","onBlur"]))]),_:2},1040,["style","label","prop"]))),128)),u.$slots.actions?(e.openBlock(),e.createBlock(_,{key:0,class:"jt-form-items__actions",style:e.normalizeStyle(P.value)},{default:e.withCtx(()=>[e.renderSlot(u.$slots,"actions",{},void 0,!0)]),_:3},8,["style"])):e.createCommentVNode("",!0)])}}}),st=Y(Zt,[["__scopeId","data-v-cb82fcfc"]]);function Yt(){const o=e.ref(!1);function t(){o.value=!0}function n(){o.value=!1}return{searchDisabled:o,searchLoading:t,searchDone:n}}const Qt="data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='0.5'%20y='-0.5'%20width='11'%20height='11'%20rx='5.5'%20transform='matrix(1%200%200%20-1%201%2012)'%20stroke='%23999999'/%3e%3cpath%20d='M10%208.16064L7%205.16064L4%208.16064'%20stroke='%23999999'/%3e%3c/svg%3e",Xt="data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2.375%207.00017C2.375%207.27631%202.59886%207.50017%202.875%207.50017C3.15114%207.50017%203.375%207.27631%203.375%207.00017H2.875H2.375ZM2.875%207.00017H3.375C3.375%204.46334%205.41801%202.41406%207.93713%202.41406V1.91406V1.41406C4.86127%201.41406%202.375%203.91551%202.375%207.00017H2.875ZM7.93713%201.91406V2.41406C10.4563%202.41406%2012.4993%204.46334%2012.4993%207.00017H12.9993H13.4993C13.4993%203.91551%2011.013%201.41406%207.93713%201.41406V1.91406ZM12.9993%207.00017H12.4993C12.4993%209.537%2010.4563%2011.5863%207.93713%2011.5863V12.0863V12.5863C11.013%2012.5863%2013.4993%2010.0848%2013.4993%207.00017H12.9993ZM7.93713%2012.0863V11.5863C6.68975%2011.5863%205.55663%2011.0806%204.72892%2010.2635L4.37765%2010.6193L4.02638%2010.9752C5.0317%2011.9676%206.41366%2012.5863%207.93713%2012.5863V12.0863Z'%20fill='%23999999'/%3e%3cpath%20d='M4.75131%206.0102L2.88631%207.88403L1%205.99414'%20stroke='%23999999'%20stroke-miterlimit='10'/%3e%3c/svg%3e",eo="data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.60938%2012.1099C9.64694%2012.1099%2012.1094%209.64743%2012.1094%206.60986C12.1094%203.5723%209.64694%201.10986%206.60938%201.10986C3.57181%201.10986%201.10938%203.5723%201.10938%206.60986C1.10938%209.64743%203.57181%2012.1099%206.60938%2012.1099Z'%20stroke='white'%20stroke-miterlimit='10'/%3e%3cpath%20d='M12.4993%2012.5002L10.2832%2010.3301'%20stroke='white'%20stroke-miterlimit='10'/%3e%3c/svg%3e",to={class:"jt-filter-bar__btns"},oo=["src"],no=["src"],ro=["src"],ao=e.defineComponent({name:"JtFilterBar",__name:"JtFilterBar",props:{columns:{},option:{default:()=>({})},modelValue:{}},emits:["update:modelValue","search","reset"],setup(o,{expose:t,emit:n}){const r=o,a=n,l=e.ref(),i=e.useSlots(),s=e.ref({}),{searchDisabled:p,searchLoading:g,searchDone:T}=Yt(),f=e.computed(()=>r.option),y=e.ref(f.value.searchCollapsed??!1),m=e.computed(()=>r.columns.filter(B=>B.search===!0)),k=e.computed(()=>Math.max(1,f.value.searchSpan??4)),I=e.computed(()=>Math.max(1,f.value.searchCollapsedRows??1)),P=e.computed(()=>k.value),V=e.computed(()=>Math.max(1,P.value*I.value)),O=e.computed(()=>k.value),u=e.computed(()=>w.value?"264px":"174px"),v=e.computed(()=>Q(f.value.searchLabelWidth??84)),_=e.computed(()=>f.value.searchLabelPosition??"top"),S=e.computed(()=>ae(f.value.searchGutter,14)),E=e.computed(()=>ae(f.value.searchRowGap,14)),C=e.computed(()=>pe(f.value.searchPadding??"18px 4px 0")),w=e.computed(()=>f.value.searchCollapse===!1?!1:j(m.value)>V.value),z=e.computed(()=>{if(!w.value||!y.value)return m.value;let B=0;return m.value.filter(A=>{const W=J(A);return B+W>V.value?!1:(B+=W,!0)})}),te=e.computed(()=>z.value.filter(B=>!!i[`${B.prop}-search`])),K=e.computed(()=>{const[B]=z.value;return!!B&&z.value.length===1&&J(B)<k.value}),ne=e.computed(()=>{const[B]=z.value;return`${Math.min(k.value,B?J(B)+1:1)}`}),fe=e.computed(()=>z.value.map(B=>$(B)));e.watch(()=>f.value.searchCollapsed,B=>{typeof B=="boolean"&&(y.value=B)}),e.watch(()=>r.modelValue,B=>{s.value={...B}},{deep:!0,immediate:!0});function b(B,A){if(p.value)return;const W={...s.value,[B]:A};s.value=W,a("update:modelValue",W)}function $(B){const A=B.searchProps??{};return{...A,prop:B.prop,label:B.searchLabel??B.label,span:J(B),itemType:B.searchType??"input",showSlot:!!i[`${B.prop}-search`],options:A.options??B.searchOptions??B.dicData,placeholder:A.placeholder??B.searchPlaceholder,valueFormat:A.valueFormat??B.searchValueFormat,disabled:p.value||A.disabled===!0,formItemProps:{required:B.searchRequired,class:["jt-filter-bar__item",{"is-required":B.searchRequired}]},onEnter:(...W)=>{F(A.onEnter,...W),G()},"onUpdate:modelValue":W=>{F(A["onUpdate:modelValue"],W),b(B.prop,W)}}}function F(B,...A){if(Array.isArray(B)){B.forEach(W=>F(W,...A));return}typeof B=="function"&&B(...A)}async function G(){if(!p.value){if(l.value)try{await l.value.validate()}catch{return}a("search")}}function L(){p.value||a("reset")}function U(){y.value=!y.value}function J(B){return Math.min(k.value,Math.max(1,B.searchSpan??1))}function j(B){return B.reduce((A,W)=>A+J(W),0)}function Q(B){return typeof B=="number"?`${B}px`:B}function ae(B,A){return typeof B=="number"?B:A}function pe(B){return typeof B=="number"?`${B}px`:B}return t({formRef:l,searchDisabled:p,searchLoading:g,searchDone:T}),(B,A)=>{const W=D.ElForm;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["jt-filter-bar",[`is-label-${_.value}`,{"is-single-filter":K.value}]]),style:e.normalizeStyle({"--jt-filter-columns":k.value,"--jt-filter-field-columns":O.value,"--jt-filter-btns-width":u.value,"--jt-filter-actions-start":ne.value,"--jt-filter-label-width":v.value,"--jt-filter-column-gap":`${S.value}px`,"--jt-filter-row-gap":`${E.value}px`,"--jt-filter-padding":C.value})},[e.createVNode(W,{ref_key:"formRef",ref:l,class:"jt-filter-bar__form",model:s.value,"label-position":_.value,"label-width":v.value,disabled:e.unref(p),onSubmit:A[0]||(A[0]=e.withModifiers(()=>{},["prevent"]))},{default:e.withCtx(()=>[e.createVNode(e.unref(st),{configs:fe.value,"form-data":s.value},e.createSlots({actions:e.withCtx(()=>[e.createElementVNode("div",to,[e.renderSlot(B.$slots,"search-menu",{search:G,reset:L,disabled:e.unref(p),collapsed:y.value,toggleCollapse:U},()=>[w.value?(e.openBlock(),e.createBlock(e.unref(he),{key:0,class:"jt-filter-bar__btn-collapse",onClick:U},{icon:e.withCtx(()=>[e.createElementVNode("img",{class:e.normalizeClass(["jt-filter-bar__icon-arrow",{"is-collapsed":y.value}]),src:e.unref(Qt),alt:""},null,10,oo)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(y.value?"展 开":"收 起"),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(he),{class:"jt-filter-bar__btn-reset",disabled:e.unref(p),onClick:L},{icon:e.withCtx(()=>[e.createElementVNode("img",{src:e.unref(Xt),alt:""},null,8,no)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(f.value.resetBtnText??"重 置"),1)]),_:1},8,["disabled"]),e.createVNode(e.unref(he),{class:"jt-filter-bar__btn-query",type:"primary",disabled:e.unref(p),onClick:G},{icon:e.withCtx(()=>[e.createElementVNode("img",{src:e.unref(eo),alt:""},null,8,ro)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(f.value.searchBtnText??"查 询"),1)]),_:1},8,["disabled"])],!0)])]),_:2},[e.renderList(te.value,de=>({name:de.prop,fn:e.withCtx(()=>[e.renderSlot(B.$slots,`${de.prop}-search`,{value:s.value[de.prop],column:de,setValue:$e=>b(de.prop,$e),search:G,reset:L,disabled:e.unref(p)},void 0,!0)])}))]),1032,["configs","form-data"])]),_:3},8,["model","label-position","label-width","disabled"])],6)}}}),it=Y(ao,[["__scopeId","data-v-1f6fdc4e"]]),lo={key:1},so={key:2},io={key:3},co=e.defineComponent({name:"JtTable",__name:"JtTable",props:{data:{},columns:{},option:{},tableEvents:{}},setup(o,{expose:t}){const n=o,r=e.useSlots(),a=e.ref(),l=e.computed(()=>n.option??{}),i=e.computed(()=>n.columns.filter(m=>!m.hide));function s(m){return!!r[`${m}-header`]}function p(m){return!!r[`${m}-data`]}function g(m){return{width:m.width,minWidth:m.minWidth,align:m.align,fixed:m.fixed,sortable:m.sortable,showOverflowTooltip:m.showOverflowTooltip,...m.columnOptions}}function T(m){return!f(m.columnOptions?.type)}function f(m){return m==="selection"||m==="index"||m==="expand"}function y(m,k){return m.find(I=>I.value===k)?.label??String(k??"")}return t({tableRef:a}),(m,k)=>{const I=D.ElTableColumn,P=D.ElTable;return e.openBlock(),e.createBlock(P,e.mergeProps({ref_key:"tableRef",ref:a,data:m.data,"row-key":l.value.rowKey??"id",height:l.value.height,"max-height":l.value.maxHeight,"empty-text":l.value.emptyText,class:"jt-table"},l.value.tableProps,e.toHandlers(m.tableEvents)),{default:e.withCtx(()=>[l.value.selection?(e.openBlock(),e.createBlock(I,{key:0,type:"selection",width:"55",align:"center"})):e.createCommentVNode("",!0),l.value.index?(e.openBlock(),e.createBlock(I,{key:1,type:"index",label:l.value.indexLabel??"序号",width:"60",align:"center"},null,8,["label"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,V=>(e.openBlock(),e.createBlock(I,e.mergeProps({key:V.prop,prop:V.prop,label:V.label,formatter:!p(V.prop)&&!V.dicData?V.formatter:void 0,ref_for:!0},g(V)),e.createSlots({_:2},[s(V.prop)?{name:"header",fn:e.withCtx(O=>[e.renderSlot(m.$slots,`${V.prop}-header`,e.mergeProps({ref_for:!0},O),void 0,!0)]),key:"0"}:void 0,T(V)?{name:"default",fn:e.withCtx(O=>[p(V.prop)?e.renderSlot(m.$slots,`${V.prop}-data`,e.mergeProps({key:0,ref_for:!0},O),void 0,!0):V.dicData?(e.openBlock(),e.createElementBlock("span",lo,e.toDisplayString(y(V.dicData,O.row[V.prop])),1)):V.formatter?(e.openBlock(),e.createElementBlock("span",so,e.toDisplayString(V.formatter(O.row,O.column,O.row[V.prop],O.$index)),1)):(e.openBlock(),e.createElementBlock("span",io,e.toDisplayString(O.row[V.prop]),1))]),key:"1"}:void 0]),1040,["prop","label","formatter"]))),128)),l.value.menu?(e.openBlock(),e.createBlock(I,{key:2,label:l.value.menuLabel??"操作",width:l.value.menuWidth,"min-width":l.value.menuMinWidth,align:l.value.menuAlign??"center",fixed:l.value.menuFixed},{default:e.withCtx(V=>[e.renderSlot(m.$slots,"menu",e.normalizeProps(e.guardReactiveProps(V)),void 0,!0)]),_:3},8,["label","width","min-width","align","fixed"])):e.createCommentVNode("",!0)]),_:3},16,["data","row-key","height","max-height","empty-text"])}}}),ct=Y(co,[["__scopeId","data-v-513fa12d"]]),uo={class:"jt-pagination"},po={class:"jt-pagination__count"},fo=e.defineComponent({name:"JtPagination",__name:"JtPagination",props:{currentPage:{},pageSize:{},total:{},option:{}},emits:["update:currentPage","update:pageSize","current-change","page-change","size-change"],setup(o,{emit:t}){const n=o,r=e.computed(()=>n.option??{}),a=t;function l(i){a("current-change",i),a("page-change",i)}return(i,s)=>{const p=D.ElPagination;return e.openBlock(),e.createElementBlock("div",uo,[e.createVNode(p,{"current-page":i.currentPage,"page-size":i.pageSize,"page-sizes":r.value.pageSizes??[10,20,50,100],total:i.total,layout:r.value.paginationLayout??"sizes, prev, pager, next, jumper","onUpdate:currentPage":s[0]||(s[0]=g=>i.$emit("update:currentPage",g)),"onUpdate:pageSize":s[1]||(s[1]=g=>i.$emit("update:pageSize",g)),onCurrentChange:l,onSizeChange:s[2]||(s[2]=g=>i.$emit("size-change",g))},null,8,["current-page","page-size","page-sizes","total","layout"]),e.createElementVNode("span",po,"共"+e.toDisplayString(i.total)+"条记录",1)])}}}),ut=Y(fo,[["__scopeId","data-v-746af6aa"]]),mo={class:"jt-crud-table"},go={key:1,class:"jt-crud-table__toolbar"},vo=e.defineComponent({name:"JtCrudTable",__name:"JtCrudTable",props:e.mergeModels({columns:{},option:{default:()=>({})},data:{},total:{default:0},tableEvents:{}},{currentPage:{default:1},currentPageModifiers:{},pageSize:{default:20},pageSizeModifiers:{},searchModel:{default:()=>({})},searchModelModifiers:{}}),emits:e.mergeModels(["search","reset","page-change","size-change"],["update:currentPage","update:pageSize","update:searchModel"]),setup(o,{expose:t,emit:n}){const r=o,a=n,l=e.useModel(o,"currentPage"),i=e.useModel(o,"pageSize"),s=e.useModel(o,"searchModel"),p=e.useSlots(),g=e.ref(),T=e.ref(),f=e.computed(()=>r.option),y=e.computed(()=>f.value.searchShow!==!1),m=e.computed(()=>f.value.paginationShow!==!1),k=e.computed(()=>r.columns.filter(S=>S.search&&!!p[`${S.prop}-search`])),I=e.computed(()=>r.columns.filter(S=>!S.hide&&!!p[`${S.prop}-header`])),P=e.computed(()=>r.columns.filter(S=>!S.hide&&!!p[`${S.prop}-data`]));function V(){const S={};return r.columns.forEach(E=>{E.search&&(S[E.prop]=void 0)}),S}function O(){a("search",{...s.value})}function u(){s.value=V(),a("reset")}function v(){T.value?.searchLoading()}function _(){T.value?.searchDone()}return t({tableRef:e.computed(()=>g.value?.tableRef),filterBarRef:T,searchLoading:v,searchDone:_}),(S,E)=>{const C=D.ElLoadingDirective;return e.openBlock(),e.createElementBlock("div",mo,[e.renderSlot(S.$slots,"header",{},void 0,!0),y.value?(e.openBlock(),e.createBlock(it,{key:0,ref_key:"filterBarRef",ref:T,modelValue:s.value,"onUpdate:modelValue":E[0]||(E[0]=w=>s.value=w),columns:S.columns,option:f.value,onSearch:O,onReset:u},e.createSlots({_:2},[e.renderList(k.value,w=>({name:`${w.prop}-search`,fn:e.withCtx(z=>[e.renderSlot(S.$slots,`${w.prop}-search`,e.normalizeProps(e.guardReactiveProps(z)),void 0,!0)])}))]),1032,["modelValue","columns","option"])):e.createCommentVNode("",!0),e.unref(p).toolbar?(e.openBlock(),e.createElementBlock("div",go,[e.renderSlot(S.$slots,"toolbar",{},void 0,!0)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(ct,{ref_key:"jtTableRef",ref:g,data:S.data,columns:S.columns,option:f.value,"table-events":S.tableEvents},e.createSlots({_:2},[e.renderList(I.value,w=>({name:`${w.prop}-header`,fn:e.withCtx(z=>[e.renderSlot(S.$slots,`${w.prop}-header`,e.normalizeProps(e.guardReactiveProps(z)),void 0,!0)])})),e.renderList(P.value,w=>({name:`${w.prop}-data`,fn:e.withCtx(z=>[e.renderSlot(S.$slots,`${w.prop}-data`,e.normalizeProps(e.guardReactiveProps(z)),void 0,!0)])})),f.value.menu?{name:"menu",fn:e.withCtx(w=>[e.renderSlot(S.$slots,"menu",e.normalizeProps(e.guardReactiveProps(w)),void 0,!0)]),key:"0"}:void 0]),1032,["data","columns","option","table-events"])),[[C,f.value.loading]]),m.value?(e.openBlock(),e.createBlock(ut,{key:2,"current-page":l.value,"onUpdate:currentPage":E[1]||(E[1]=w=>l.value=w),"page-size":i.value,"onUpdate:pageSize":E[2]||(E[2]=w=>i.value=w),total:S.total,option:f.value,onPageChange:E[3]||(E[3]=w=>S.$emit("page-change",w)),onSizeChange:E[4]||(E[4]=w=>S.$emit("size-change",w))},null,8,["current-page","page-size","total","option"])):e.createCommentVNode("",!0)])}}}),ho=Y(vo,[["__scopeId","data-v-ad466273"]]),yo={class:"jt-page-header__title"},bo={key:0},So={key:0,class:"jt-page-header__operates"},ko=e.defineComponent({name:"JtPageHeader",__name:"index",props:{type:{default:"section"},title:{},operates:{default:()=>[]}},emits:["operate-click"],setup(o,{emit:t}){const n=o,r=t,a=e.useSlots(),l=e.computed(()=>n.operates.length>0||!!a.operates);function i(s,p){s.onClick?.(s,p),r("operate-click",s,p)}return(s,p)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["jt-page-header",`jt-page-header--${s.type}`]},s.$attrs),[e.createElementVNode("div",yo,[e.renderSlot(s.$slots,"title",{},()=>[s.title?(e.openBlock(),e.createElementBlock("span",bo,e.toDisplayString(s.title),1)):e.createCommentVNode("",!0)],!0)]),l.value?(e.openBlock(),e.createElementBlock("div",So,[e.renderSlot(s.$slots,"operates",{operates:s.operates},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.operates,g=>(e.openBlock(),e.createBlock(e.unref(he),e.mergeProps({key:g.key??g.label,ref_for:!0},g.buttonProps,{type:g.type,disabled:g.disabled,loading:g.loading,plain:g.plain,text:g.text,link:g.link,icon:g.icon,onClick:T=>i(g,T)}),{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(g.label),1)]),_:2},1040,["type","disabled","loading","plain","text","link","icon","onClick"]))),128))],!0)])):e.createCommentVNode("",!0)],16))}}),wo=Y(ko,[["__scopeId","data-v-9e6bb356"]]);function dt(o=null){return{scheme:null,node:null,topNodes:[],treeNodes:[],activeNode:null,activeSection:null,sections:[],sectionMap:{},raw:o}}function Le(o){const t=bt(o),n=yt(t),r=Po(t).flatMap(a=>ht(a,n));return{...dt(o),scheme:n,topNodes:r,treeNodes:r}}function De(o,t,n){return o.map(r=>r.key===t||r.tagId===t||r.id===t?{...r,children:n,loaded:!0}:{...r,children:De(r.children,t,n)})}function pt(o,t={},n=null){const r=bt(o),a=yt(r,t),l=Co(r,t,n),i=Object.fromEntries(l.map(s=>[s.key,s]));return{scheme:a,node:n,topNodes:[],treeNodes:[],activeNode:n,activeSection:l[0]??null,sections:l,sectionMap:i,raw:o}}function ft(o){return o.multRow||o.htmlDisplay==="T"?"table":"form"}function mt(o,t={}){const n=o.renderType==="table"?o.rows.map(Oe):[Oe(o.model)],r=x(o.operationInfo),a=x(r.editInfoSet),l=x(a.params),i=x(r.queryInfoSet),s=x(i.params);return{...t,infSchmId:t.infSchmId??q(o.raw.infSchmId),emplid:t.emplid??q(o.raw.emplid),tagId:R(o.tagId||l.tagId||s.tagId||t.tagId||o.requestTagId),infSetId:t.infSetId??o.infSetId,setId:t.setId??o.setId,infSetValues:n,section:o}}function Io(o){const t=o;return!!(t&&typeof t=="object"&&typeof t.key=="string"&&typeof t.tagId=="string")}function gt(o){const t=St(o);return(Array.isArray(t)?t:Se(x(t),["options","list","records","data"])).map(r=>{const a=x(r),l=a.fieldvalue??a.fieldValue;return{id:a.id,code:a.code??l??a.value??a.id,label:R(a.label??a.name??a.descr??a.descrshort??a.text??l??a.value??a.code),name:q(a.name),value:a.value??l??a.code??a.id??a.label??a.name,raw:r}})}function Co(o,t,n){const r=Se(o,["sections","sets","list"]);return r.length>0?r.map(a=>Je(a,t,n,r.length===1)):o.infSetMark||o.infSetFields||o.fields?[Je(o,t,n,!0)]:[]}function Je(o,t,n,r){const a=x(o),l=Bo(a.infSetMark??a),i=_o(a.infSetFields??a.fields??[]),s=Vo(a.infSetValues??a.rows??a.data,i),p=s[0]?Oe(s[0]):vt(i),g=x(a.tag),T=R(a.tagId??a.infTagId??g.tagId??g.infTagId??l.raw.tagId??l.raw.infTagId),f=R(t.tagId??n?.tagId),y=R(n?.key),m=r?t.infSetId??n?.infSetId:void 0,k=r?t.setId:void 0,I=r?n?.code:void 0,P=l.setId||R(a.setId),V=R(a.infSetId)||P||R(m),O=P||R(k??V),u=l.code||R(a.code??I??O),v=O||u||V||T,_={key:v,id:v,setId:O,code:u,tagId:T,requestTagId:f||void 0,ownerNodeKey:y||void 0,infSetId:V,title:l.name||R(a.name??n?.tagName??v),renderType:ft(l),mark:l,fields:i,model:p,rows:s,operationInfo:Ve(t.operationInfo??a.operationInfo),raw:a};return _.renderType==="form"&&s.length===0&&(_.rows=[{...p,__rowKey:`${v}-0`}]),_}function Bo(o){const t=x(o),n=R(t.htmlDisplay||"F");return{name:R(t.name??t.title),parentName:q(t.parentName),value:q(t.value),type:q(t.type),code:R(t.code),setId:R(t.setId??t.id??t.key),htmlDisplay:n,multRow:oe(t.multRow),isRequired:oe(t.isRequired),raw:t}}function _o(o){return(Array.isArray(o)?o:[]).map((n,r)=>Eo(n,r))}function Eo(o,t){const n=x(o),r=R(n.code??n.fieldCode??n.prop??n.key??`field_${t}`),a=R(n.label??n.name??n.tagName??r);return{id:R(n.id??n.key??n.prop??r),key:R(n.key??n.prop??r),code:r,label:a,value:n.value??n.defaultValue??"",type:Mo(n),fieldType:q(n.fieldType),frontInputType:q(n.frontInputType),renderType:Fo(n),required:oe(n.required??n.isRequired),readonly:oe(n.readonly??n.disabled),visible:n.visible===void 0?oe(n.visibled??!0):oe(n.visible),htmlDisplay:oe(n.htmlDisplay),multRow:oe(n.multRow),isRequired:oe(n.isRequired),disabled:n.disabled===void 0?void 0:oe(n.disabled),span:Ct(n.span??n.colSpan),width:Ue(n.width),minWidth:Ue(n.minWidth),placeholder:q(n.placeholder),options:gt(n.options),interface:kt(n.interface??n.interfaceField),cascadeClearFields:He(n.cascadeClearFields),cascadeDependFields:He(n.cascadeDependFields),props:Ro(n),formItemProps:wt(n.formItemProps),raw:n}}function Vo(o,t){if(Array.isArray(o)&&o.some(a=>{const l=x(a);return t.some(i=>l[i.code]!==void 0||l[i.key]!==void 0)}))return o.map((a,l)=>({...x(a),__rowKey:R(x(a).__rowKey??x(a).key??l)}));const n=vt(t);return Object.keys(n).length?[{...n,__rowKey:"0"}]:[]}function vt(o){return o.reduce((t,n)=>(t[n.code||n.key]=n.value,t),{})}function ht(o,t,n=""){const r=x(o),a=Se(r,["children","list","tags"]).flatMap(i=>ht(i,t,R(r.tagId??r.id??r.key))),l=$o(r.infSetList);return a.length===0&&l.length>0?l.map((i,s)=>To(r,i,t,n,s)):[No(r,t,n,a)]}function No(o,t,n,r){const a=R(o.tagId??o.id??o.key),l=R(o.tagName??o.name??o.label??a);return{key:R(o.key??a),id:a,tagId:a,tagName:l,label:l,tagLevel:q(o.tagLevel??o.level)??null,level:It(o.tagLevel??o.level),parentTagId:q(o.parentTagId??o.parentId??n),parentId:q(o.parentTagId??o.parentId??n)??null,infSchmId:q(o.infSchmId??t?.infSchmId),schemeId:R(o.infSchmId??t?.infSchmId),infSetId:q(o.infSetId??o.setId),setId:q(o.setId),code:q(o.code),children:r,infSetList:[],operationInfo:Ve(o.operationInfo),loaded:r.length>0,raw:o}}function To(o,t,n,r,a){const l=R(o.tagId??o.id??o.key),i=R(o.tagName??o.name??o.label??l),s=t.infSetId||R(t.setId),p=t.setId||s,g=s||`${l}-${a}`;return{key:g,id:g,tagId:l,tagName:i,label:i,tagLevel:q(o.tagLevel??o.level)??null,level:It(o.tagLevel??o.level),parentTagId:q(o.parentTagId??o.parentId??r),parentId:q(o.parentTagId??o.parentId??r)??null,infSchmId:q(o.infSchmId??n?.infSchmId),schemeId:R(o.infSchmId??n?.infSchmId),infSetId:s,setId:p,code:q(o.code??s),children:[],infSetList:[t],operationInfo:Ve(o.operationInfo),loaded:!0,raw:{...o,infSetId:s,setId:p,infSetList:[t.raw]}}}function yt(o,t={}){const n=x(o.globalInfoSchmMark??o.scheme??o),r=R(n.infSchmId??t.infSchmId),a=R(n.emplid??t.emplid);return!r&&!a&&Object.keys(n).length===0?null:{infSchmId:r,emplid:a,id:r,mark:R(n.globalInfoSchmMark??o.globalInfoSchmMark),config:Array.isArray(o.globalInfoSchmConfig)?"":R(n.globalInfoSchmConfig??o.globalInfoSchmConfig),raw:n}}function Po(o){if(Array.isArray(o.globalInfoSchmConfig))return o.globalInfoSchmConfig;const t=x(o.globalInfoSchmConfig),n=Se(t,["children","tree","list","tags"]);return n.length?n:Se(o,["children","tree","list","tags","records"])}function $o(o){return Array.isArray(o)?o.map(t=>{const n=x(t);return{infSetId:R(n.infSetId??n.setId??n.id),setId:q(n.setId),operationInfo:Ve(n.operationInfo),raw:n}}):[]}function bt(o){return x(St(o))}function St(o){const t=x(o);return t.data??t.result??o}function Se(o,t){for(const n of t){const r=o[n];if(Array.isArray(r))return r}return[]}function Oe(o){const t={...o};return delete t.__rowKey,delete t.fields,t}function kt(o){const t=x(o);if(!(!t.method&&!t.url&&!t.params))return{...t,method:q(t.method),url:q(t.url),params:wt(t.params)}}function Ve(o){const t=x(o);if(Object.keys(t).length!==0)return Object.fromEntries(Object.entries(t).map(([n,r])=>[n,kt(r)??r]))}function He(o){if(!Array.isArray(o))return;const t=o.map(n=>R(n)).filter(Boolean);return t.length?t:void 0}function Fo(o){if(oe(o.htmlDisplay))return"html";if(oe(o.multRow))return"multi-row";const t=R(o.renderType).toLowerCase();return t==="code"||t==="empty"?t:"text"}function Mo(o){const t=R(o.fieldType??o.type??o.frontInputType??o.renderType).toLowerCase();return t.includes("date")?"date":t.includes("select")||t.includes("enum")||t.includes("radio")||t.includes("checkbox")?"select":t.includes("number")||t.includes("int")?"number":t.includes("bool")||t.includes("switch")?"switch":t.includes("file")||t.includes("upload")||t.includes("attachment")?"file":t.includes("textarea")||t.includes("text_area")?"textarea":"text"}function wt(o){const t=x(o);return Object.keys(t).length?t:void 0}function Ro(o){const t={...x(o.props)};return o.multiple!==void 0&&(t.multiple=oe(o.multiple)),Object.keys(t).length?t:void 0}function Ue(o){return typeof o=="string"||typeof o=="number"?o:void 0}function x(o){return o&&typeof o=="object"&&!Array.isArray(o)?o:{}}function R(o){return o==null?"":String(o).trim()}function q(o){return R(o)||void 0}function It(o){const t=Ct(o);return t===void 0?null:t}function Ct(o){if(o==null||o==="")return;const t=Number(o);return Number.isFinite(t)?t:void 0}function oe(o){return typeof o=="string"?["true","1","y","yes","t","是"].includes(o.toLowerCase()):!!o}const ue=o=>o.key||o.code,re=o=>o.key||o.setId,Lo=o=>String(o??"").trim(),we=o=>Array.from(new Set(o.map(Lo).filter(Boolean))),ge=o=>!!(o&&typeof o=="object"&&"children"in o),ke=o=>we([o?.key,o?.id,o?.setId,o?.infSetId,o?.tagId,o?.code,...(o?.infSetList??[]).map(t=>t.infSetId),...(o?.infSetList??[]).map(t=>t.setId)]),Oo=o=>we([o.key,o.id,o.setId,o.infSetId,o.tagId,o.code]);function Bt(o,t,n){const r=Oo(o),a=we([n,...ke(t)]);return a.length===0?!1:a.some(l=>r.includes(l))}function Go(o,t,n){return we([n,...ke(t)]).length===0?o:o.filter(a=>Bt(a,t,n))}function Do(o,t,n={}){const r=Object.keys(n).length>0?n:o.model,a=typeof t=="string"?t:ue(t),l=typeof t=="string"?o.fields.find(s=>ue(s)===a||s.code===a):t,i=(l?.cascadeDependFields??[]).some(s=>{const p=r[s];return p==null||p===""});return{fieldKey:a,currentField:l,sourceModel:r,sourceRow:o.renderType==="table"?r:void 0,missingDependField:i}}function jo(o){return!!(o&&(o.cascadeDependFields??[]).length===0&&(o.options??[]).length>0)}function zo(o){return gt(o)}const le=o=>o&&typeof o=="object"&&!Array.isArray(o)?o:{},Be=o=>{const t=le(o);return!!(t.url||t.method||t.params)};function xo(o){const t=le(o.operationInfo).openTag;return Be(t)?t:void 0}function Ao(o,t,n){const r=le(o?.operationInfo).queryInfoSet;if(Be(r))return r;const a=t?.infSetList.find(i=>i.infSetId===n),l=le(a?.operationInfo).queryInfoSet;return Be(l)?l:void 0}function qo(o){const t=le(o.operationInfo).editInfoSet;return Be(t)?t:void 0}async function Ko(o){const t=o.params===void 0?void 0:le(o.params);return!o.formatter||o.requestSource!=="inner"?t:o.formatter({operation:o.operation,interfaceOperation:o.field?.interface,type:o.type,requestSource:o.requestSource,tagId:o.tagId,model:{...le(o.section?.model),...le(o.model)},row:o.row,section:o.section,field:o.field,node:o.node,viewModel:o.viewModel,sections:o.sections,activeNode:o.activeNode,activeSection:o.activeSection,params:t})}async function Jo(o){if(!o.service.requestOperation)throw new Error("[GlobalInfo] service.requestOperation is required for operationInfo");const t=o.operation.params===void 0?void 0:le(o.operation.params),n=o.context?.params===void 0?t:le(o.context.params),r=await Ko({formatter:o.formatter,params:n,operation:o.operation,type:o.context?.type,requestSource:o.context?.requestSource,tagId:o.context?.tagId,section:o.context?.section,field:o.context?.field,model:o.context?.model,row:o.context?.row,node:o.context?.node,viewModel:o.viewModel,sections:o.sections,activeNode:o.activeNode,activeSection:o.activeSection});return o.service.requestOperation({...o.operation,params:r},o.context?{...o.context,params:r}:o.context)}function ye(o={}){return{loading:!1,saving:!1,error:null,loaded:!1,editing:!1,...o}}function Ho(o){const t={...o.currentMap},n={...o.currentAliasMap},r=[...o.currentOrder],a={...o.currentStatusMap},l=Go(o.nextViewModel.sections,o.node,o.targetKey),i=we([o.targetKey,...ke(o.node)]).length>0,s=l.find(p=>Bt(p,o.node,o.targetKey))??(i?null:o.nextViewModel.activeSection??l[0]??o.activeSection??null);return l.forEach(p=>{const g=re(p);t[g]=p,r.includes(g)||r.push(g),a[g]=ye({...a[g],loaded:!0,loading:!1,error:null,editing:o.editingSectionKeys.includes(g)})}),o.targetKey&&s?n[o.targetKey]=re(s):o.targetKey&&(n[o.targetKey]=""),o.targetKey&&(a[o.targetKey]=ye({...a[o.targetKey],loaded:!0,loading:!1,error:null,editing:!!(s&&o.editingSectionKeys.includes(re(s)))})),{sectionMap:t,sectionAliasMap:n,sectionOrder:r,sectionStatusMap:a,matchedSection:s,targetSections:l}}const ve=o=>new Error(`[GlobalInfo] ${o}`),_t=o=>{const t=e.ref(!1),n=e.ref(!1),r=e.ref(!1),a=e.shallowRef(null),l=e.shallowRef([]),i=e.shallowRef(null),s=e.shallowRef(null),p=e.shallowRef(null),g=e.shallowRef({}),T=e.shallowRef({}),f=e.ref([]),y=e.shallowRef({}),m=e.ref([]),k=e.computed(()=>{const c=f.value.map(h=>g.value[h]).filter(h=>!!h),d=Object.entries(g.value).filter(([h])=>!f.value.includes(h)).map(([,h])=>h);return[...c,...d]}),I=e.computed(()=>({loading:t.value,detailLoading:n.value,saving:r.value,editingSectionKeys:m.value,sectionMap:g.value,sectionStatusMap:Object.fromEntries(Object.entries(y.value).map(([c,d])=>[c,{...d,editing:m.value.includes(T.value[c]??c)}])),error:a.value})),P=()=>({adaptScene:o.adaptScene,emplid:o.emplid}),V=c=>({...P(),infSchmId:c.infSchmId,tagId:c.tagId,tagLevel:c.tagLevel,parentTagId:c.parentTagId}),O=(c=s.value,d=p.value)=>({...P(),infSchmId:c?.infSchmId,tagId:c?.tagId,infSetId:d?.infSetId??c?.infSetId,setId:d?.setId??c?.setId}),u=async(c,d)=>Jo({service:o.service,formatter:o.formatOperationParams,operation:c,context:d,viewModel:i.value,sections:k.value,activeNode:s.value,activeSection:p.value}),v=(c,d)=>{if(!d)return c[0]??null;for(const h of c){if(ke(h).includes(d))return h;const N=v(h.children,d);if(N)return N}return null},_=(c=p.value)=>{if(c)return typeof c=="string"?c:ge(c)?C(c):re(c)},S=(c=p.value)=>{const d=_(c);if(!d)return null;const h=T.value[d]??d;return g.value[h]??null},E=(c=p.value)=>{const d=_(c);if(d)return T.value[d]??d},C=(c=p.value)=>{if(c)return typeof c=="string"?c:ge(c)?c.setId??c.infSetId??c.key:re(c)},w=(c=p.value)=>{if(ge(c))return c;if(typeof c=="string"){const d=v(l.value,c);if(d)return d;const h=S(c);return h?.ownerNodeKey?v(l.value,h.ownerNodeKey)??s.value:h||s.value&&ke(s.value).includes(c)?s.value:null}return c?.ownerNodeKey?v(l.value,c.ownerNodeKey)??s.value:s.value},z=(c=p.value)=>!c||ge(c)?null:S(c),te=(c=p.value)=>{const d=C(c);if(!d)return ye();const h=T.value[d]??d;return ye({...y.value[d],...y.value[h],editing:m.value.includes(h)})},K=(c,d)=>{const h=C(c);h&&(y.value={...y.value,[h]:ye({...y.value[h],...d,editing:m.value.includes(h)})})},ne=(c=i.value?.raw??null,d=s.value)=>{const h=k.value,N=p.value&&h.find(M=>re(M)===re(p.value))?p.value:null;i.value={scheme:i.value?.scheme??null,node:d,topNodes:l.value,treeNodes:l.value,activeNode:d,activeSection:N,sections:h,sectionMap:g.value,raw:c},p.value=N},fe=(c,d=s.value,h)=>{const N=Ho({currentMap:g.value,currentAliasMap:T.value,currentOrder:f.value,currentStatusMap:y.value,editingSectionKeys:m.value,nextViewModel:c,node:d,targetKey:h,activeSection:p.value});return g.value=N.sectionMap,T.value=N.sectionAliasMap,f.value=N.sectionOrder,y.value=N.sectionStatusMap,i.value={...c,scheme:c.scheme??i.value?.scheme??null,topNodes:l.value,treeNodes:l.value,activeNode:d,activeSection:N.matchedSection,sections:N.targetSections,sectionMap:g.value},p.value=N.matchedSection,N.matchedSection},b=(c,d)=>{const h=E(c),N=h?g.value[h]:null;if(!h||!N)return;const M=d(N);g.value={...g.value,[h]:M},p.value=re(p.value??M)===h?M:p.value,ne()},$=async(c=p.value??s.value)=>{const d=z(c),h=w(c)??s.value,N=C(c);if(!h)return null;if(!o.service.requestOperation)throw ve("service.requestOperation is required");n.value=!0,a.value=null,K(N??h,{loading:!0,error:null});try{const M=d?[{infSetId:d.infSetId,setId:d.setId,operationInfo:d.operationInfo,raw:d.raw}]:h.infSetList;if(M.length===0)throw ve("node.infSetList is required");const Z=await Promise.all(M.map(async H=>{const X=Ao(d,h,H.infSetId),se={...O(h,d),infSetId:H.infSetId,setId:H.setId,operationInfo:H.operationInfo};if(X){const Fe=await u(X,{type:"queryInfoSet",requestSource:"inner",tagId:d?.requestTagId??d?.tagId??h.tagId,node:h,section:d,params:se});return pt(Fe,se,h)}throw ve("infoSet.operationInfo.queryInfoSet is required")})),ee={...Z[0],sections:Z.flatMap(H=>H.sections),sectionMap:Object.fromEntries(Z.flatMap(H=>H.sections).map(H=>[H.key,H]))};return fe(ee,h,N)}catch(M){throw a.value=M,K(N??h,{loading:!1,error:M}),M}finally{n.value=!1,K(N??h,{loading:!1})}},F=(c=p.value)=>$(c),G=(c=p.value)=>{if(!c)return null;if(!ge(c)&&typeof c!="string")return S(c);const d=C(c);return d?g.value[T.value[d]??d]??null:null},L=async(c=s.value)=>c?(await $(c),i.value):(i.value=null,p.value=null,g.value={},T.value={},f.value=[],y.value={},null),U=async c=>{const d=xo(c);if(!d)return c.children;const h=V(c),N=await u(d,{type:"openTag",requestSource:"sidebar",tagId:c.tagId,node:c,params:h});return Le(N).treeNodes},J=async c=>{if(c.loaded)return c.children;const d=await U(c);return d.length>0&&(l.value=De(l.value,c.key,d)),d},j=async c=>{const d=typeof c=="string"?v(l.value,c):c;return d?(s.value=d,p.value=null,m.value=[],await J(d),ne(i.value?.raw,d),d):null},Q=async()=>{const c=o.service.templateTree;if(!c)throw ve("service.templateTree is required");t.value=!0,a.value=null;try{const d=await c(P()),h=Le(d),N=await Promise.all(h.treeNodes.map(async Z=>{const ee=await U(Z);return{...Z,children:ee,loaded:ee.length>0||Z.loaded}}));l.value=N,p.value=null,g.value={},T.value={},f.value=[],y.value={},m.value=[];const M=v(N,o.initialActiveNodeKey)??v(N);return s.value=M,i.value={...h,treeNodes:N,activeNode:M,sectionMap:g.value,sections:k.value},l.value}catch(d){throw a.value=d,d}finally{t.value=!1}},ae=async()=>{const c=_();await F(p.value??s.value);const d=k.value.find(h=>re(h)===c);return d&&(p.value=d),ne(),i.value},pe=(c=p.value)=>{const d=E(c);return!!(d&&m.value.includes(d))},B=(c=p.value)=>{const d=E(c);!d||pe(d)||(m.value=[...m.value,d],K(d,{editing:!0}))},A=(c=p.value)=>{const d=E(c);d&&(m.value=m.value.filter(h=>h!==d),K(d,{editing:!1}))},W=(c,d,h)=>{const N=typeof d=="string"?d:ue(d);b(c,M=>{const ee=(typeof d=="string"?M.fields.find(X=>ue(X)===N||X.code===N):d)?.cascadeClearFields??[],H={...M.model,[N]:h};return ee.forEach(X=>{H[X]=""}),{...M,model:H,rows:M.renderType==="form"?[{...M.rows[0],...H}]:M.rows,fields:M.fields.map(X=>{const se=ue(X);return se===N||X.code===N?{...X,value:h}:ee.includes(se)||ee.includes(X.code)?{...X,value:""}:X})}})},de=async(c,d,h={})=>{const N=S(c);if(!N)return[];const{fieldKey:M,currentField:Z,sourceModel:ee,sourceRow:H,missingDependField:X}=Do(N,d,h),se=Z?.interface;if(!Z||!se)return Z?.options??[];if(jo(Z))return Z.options??[];if(X)return b(N,me=>({...me,fields:me.fields.map(ie=>ue(ie)===M||ie.code===M?{...ie,options:[]}:ie)})),[];const Fe=await u({...se},{type:"fieldOptions",requestSource:"inner",tagId:N.requestTagId??N.tagId,node:w(N),section:N,field:Z,params:le(se.params),model:ee,row:H}),qe=zo(Fe);return b(N,me=>({...me,fields:me.fields.map(ie=>ue(ie)===M||ie.code===M?{...ie,options:qe}:ie)})),qe},$e=(c,d)=>{if(Array.isArray(d)){Ie(c,d);return}b(c,h=>({...h,model:d,rows:h.renderType==="form"?[{...h.rows[0],...d}]:h.rows,fields:h.fields.map(N=>({...N,value:d[ue(N)]}))}))},Ie=(c,d)=>{b(c,h=>({...h,rows:d,data:d}))},Dt={loadTree:Q,selectNode:j,loadDetail:L,reloadActiveSection:ae,loadSection:$,reloadSection:F,getSection:G,getSectionStatus:te,startEdit:B,cancelEdit:A,updateField:W,loadFieldOptions:de,updateModel:$e,updateTableRows:Ie,saveRow:(c,d={},h=-1)=>{const M=[...S(c)?.rows??[]];M.splice(h>=0?h:M.length,h>=0?1:0,d),Ie(c,M)},deleteRow:(c,d)=>{const h=S(c),N=typeof d=="string"?Number(d):d,M=(h?.rows??[]).filter((Z,ee)=>ee!==N);Ie(c,M)},saveSection:async(c=p.value)=>{const d=_(c),h=S(c);if(!h)return null;const N=qo(h);if(!N)throw ve("section.operationInfo.editInfoSet is required");r.value=!0,a.value=null,d&&d!==re(h)&&K(d,{saving:!0,error:null}),K(h,{saving:!0,error:null});try{const{tagId:M,...Z}=O(s.value,h),ee=mt(h,Z),H=await u(N,{type:"editInfoSet",requestSource:"inner",tagId:h.requestTagId??h.tagId,node:s.value,section:h,params:ee,model:h.model});return A(h),await F(h),H}catch(M){throw a.value=M,d&&d!==re(h)&&K(d,{saving:!1,error:M}),K(h,{saving:!1,error:M}),M}finally{r.value=!1,d&&d!==re(h)&&K(d,{saving:!1}),K(h,{saving:!1})}},isEditing:pe};return e.watch(()=>o.emplid,()=>{(o.autoLoad??!0)&&Q()}),e.onMounted(()=>{(o.autoLoad??!0)&&Q()}),{viewModel:i,nodes:l,sections:k,sectionMap:g,sectionStatusMap:y,activeNode:s,activeSection:p,state:I,actions:Dt}},Uo=e.defineComponent({name:"GlobalInfoProvider",__name:"GlobalInfoProvider",props:{service:{},adaptScene:{},emplid:{},autoLoad:{type:Boolean,default:!0},initialActiveNodeKey:{},renderConfig:{},formatOperationParams:{}},setup(o){const t=o,n=_t(t),{viewModel:r,nodes:a,sections:l,activeNode:i,activeSection:s,state:p,actions:g}=n;return(T,f)=>e.renderSlot(T.$slots,"default",e.normalizeProps(e.guardReactiveProps({viewModel:e.unref(r),nodes:e.unref(a),sections:e.unref(l),activeNode:e.unref(i),activeSection:e.unref(s),state:e.unref(p),actions:e.unref(g),renderConfig:t.renderConfig})))}}),Wo="data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M0.437665%2012C0.316763%2011.9845%200.205604%2011.9251%200.125029%2011.8329C0.0444551%2011.7407%200%2011.622%200%2011.499C0%2011.3761%200.0444551%2011.2574%200.125029%2011.1652C0.205604%2011.0729%200.316763%2011.0135%200.437665%2010.998H11.5623C11.6832%2011.0135%2011.7944%2011.0729%2011.875%2011.1652C11.9555%2011.2574%2012%2011.3761%2012%2011.499C12%2011.622%2011.9555%2011.7407%2011.875%2011.8329C11.7944%2011.9251%2011.6832%2011.9845%2011.5623%2012H0.437665ZM9.59963%200.233088L10.72%201.36329C10.868%201.51347%2010.9511%201.71663%2010.9511%201.92839C10.9511%202.14015%2010.868%202.34331%2010.72%202.49349L3.61614%209.6354C3.54189%209.70969%203.45384%209.76846%203.35702%209.80835C3.26021%209.84824%203.15654%209.86846%203.05196%209.86785H1.57397C1.4686%209.86785%201.36754%209.82562%201.29303%209.75046C1.21852%209.6753%201.17666%209.57336%201.17666%209.46707V7.93609C1.17606%207.8306%201.1961%207.72602%201.23564%207.62836C1.27519%207.5307%201.33345%207.44188%201.4071%207.36698L8.47921%200.233088C8.62809%200.0837965%208.82949%200%209.03942%200C9.24935%200%209.45074%200.0837965%209.59963%200.233088ZM2.16993%208.01624V8.8659H3.01223L9.88569%201.9324L9.04339%201.07473L2.16993%208.01624Z'%20fill='%23E60000'/%3e%3c/svg%3e";function je(o){return Ye(o.type||o.fieldType||o.frontInputType)||Ye(o.renderType)||"text"}function ze(o){return Qe(o.type||o.fieldType||o.frontInputType)||Qe(o.renderType)||"text"}function ce(o){if(o==null)return!0;if(typeof o=="string")return o.trim()==="";if(Array.isArray(o))return o.length===0||o.every(t=>ce(t));if(o instanceof Date)return Number.isNaN(o.getTime());if(typeof File<"u"&&o instanceof File)return o.name.trim()==="";if(typeof o=="object"){const t=Object.entries(o).filter(([n])=>!n.startsWith("__"));return t.length===0||t.every(([,n])=>ce(n))}return!1}function Et(o){if(o instanceof Error)return!0;if(!o||typeof o!="object")return!1;const t=o;return typeof t.message=="string"&&(typeof t.stack=="string"||t.name==="Error")}function Vt(o,t,n="-"){const r=ze(o);return r==="empty"||ce(t)?n:Et(t)?(console.error("[globalInfo] field value render failed",t),n):r==="select"?on(o,t,n):r==="switch"?Nt(t)?"是":"否":r==="file"?nn(t,n):r==="multi-row"?rn(t,n):String(t)}function Ne(o,t){return Array.isArray(t)?t:Pe(o)?typeof t=="string"?t.split(",").map(n=>n.trim()).filter(Boolean):ce(t)?[]:[t]:[t]}function Zo(o,t){return Pe(o)?Ne(o,t):t}function Yo(o,t){return Pe(o)?Array.isArray(t)?t.map(n=>String(n??"").trim()).filter(Boolean).join(","):t??"":t}function Nt(o){if(typeof o=="boolean")return o;if(typeof o=="number")return o!==0;const t=String(o??"").trim().toLowerCase();return["true","1","y","yes","t","是"].includes(t)}function Te(o,t,n,r={}){const a=Qo(r);return o.filter(l=>l.visible?!Xo(l,t,n,a,r.rows):!1)}function We(o){return Tt(o).some(n=>["序号","index","idx","seq","seqno","serial","order","rownum","row_no"].includes(n))}function Ze(o){return Tt(o).includes("seqno")}function Ye(o){const t=String(o??"").toLowerCase();return t==="upload"||t==="attachment"?"file":t==="radio"||t==="checkbox"?"select":t==="text"||t==="textarea"||t==="select"||t==="date"||t==="number"||t==="switch"||t==="file"||t==="html"||t==="code"||t==="multi-row"||t==="empty"?t:""}function Qe(o){const t=String(o??"").toLowerCase();return t==="upload"||t==="attachment"?"file":t==="radio"||t==="checkbox"?"select":t==="select"||t==="switch"||t==="file"||t==="html"||t==="code"||t==="multi-row"||t==="empty"?t:t==="textarea"||t==="date"||t==="number"||t==="text"?"text":""}function Qo(o){return o.rows?.length?o.rows:[o.values??{}]}function Xo(o,t,n,r,a){const l=n?.hiddenRule;return l?r.some(i=>{try{const s=i[o.code];return l({field:o,section:t,values:i,allValues:i,value:s,currentValue:s,rows:a})}catch(s){return console.error("[globalInfo] hidden rule failed",s),!1}}):!1}function Tt(o){return en([o.id,o.key,o.code,o.name,o.label,o.prop])}function en(o){return Array.from(new Set(o.map(t=>tn(t)).filter(Boolean)))}function tn(o){return String(o??"").trim().toLowerCase()}function on(o,t,n){const r=Pe(o);if(Array.isArray(t)||r){const a=Ne(o,t).map(i=>Xe(o,i)||String(i??"").trim()).filter(Boolean),l=r?",":"、";return a.length>0?a.join(l):n}return Xe(o,t)||String(t).trim()||n}function Pe(o){return!!o.props?.multiple&&(je(o)==="select"||ze(o)==="select")}function Xe(o,t){return o.options?.find(r=>r.value===t||String(r.value)===String(t))?.label??""}function nn(o,t){if(Array.isArray(o)){const n=o.map(r=>et(r)).filter(Boolean);return n.length>0?n.join("、"):t}return et(o)||t}function et(o){if(typeof File<"u"&&o instanceof File)return o.name;if(o&&typeof o=="object"){const t=o;return String(t.name??t.fileName??t.filename??t.url??"").trim()}return String(o??"").trim()}function rn(o,t){return Array.isArray(o)?o.map(r=>Et(r)?(console.error("[globalInfo] multi-row field item render failed",r),""):ce(r)?"":r&&typeof r=="object"?JSON.stringify(r):String(r).trim()).filter(Boolean).join(`
|
|
3
|
-
`)||t:String(o).trim()||t}const an=["disabled","accept","multiple"],ln={key:0,class:"global-info-field-control__file-text"},sn={key:1,class:"global-info-field-control__file-upload"},cn=e.defineComponent({name:"GlobalInfoFieldControl",__name:"GlobalInfoFieldControl",props:{field:{},modelValue:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change","loadOptions"],setup(o,{emit:t}){const n=o,r=t,a=["textarea","html","code","multi-row"],l=e.computed(()=>je(n.field)),i=e.computed(()=>n.disabled||n.field.disabled||n.field.readonly),s=e.computed(()=>n.modelValue===void 0||n.modelValue===null?"":String(n.modelValue)),p=e.computed(()=>{if(n.modelValue===void 0||n.modelValue===null||n.modelValue==="")return;const v=typeof n.modelValue=="number"?n.modelValue:Number(n.modelValue);return Number.isFinite(v)?v:void 0}),g=e.computed(()=>Zo(n.field,n.modelValue)),T=e.computed(()=>{const v=n.field.props?.activeValue??n.field.props?.["active-value"],_=n.field.props?.inactiveValue??n.field.props?.["inactive-value"];return v!==void 0||_!==void 0?n.modelValue??_??!1:Nt(n.modelValue)}),f=e.computed(()=>l.value==="code"?5:3),y=e.computed(()=>l.value==="file"&&!ce(n.modelValue)),m=e.computed(()=>Vt(n.field,n.modelValue,"请选择文件")),k=e.computed(()=>n.field.placeholder?n.field.placeholder:l.value==="select"?"请选择":l.value==="date"?"请选择日期":l.value==="file"?"请选择文件":"请输入");function I(v){r("update:modelValue",V(v))}function P(v){r("change",V(v))}function V(v){return l.value==="select"?Yo(n.field,v):v}function O(v){v&&r("loadOptions")}function u(v){const _=v.target,S=Array.from(_.files??[]),E=n.field.props?.multiple?S:S[0]??null;I(E),P(E)}return(v,_)=>{const S=D.ElOption,E=D.ElSelect,C=D.ElDatePicker,w=D.ElInputNumber,z=D.ElSwitch,te=D.ElInput;return l.value==="select"?(e.openBlock(),e.createBlock(E,e.mergeProps({key:0,class:"global-info-field-control"},v.field.props,{"model-value":g.value,placeholder:k.value,disabled:i.value,clearable:"",onVisibleChange:O,"onUpdate:modelValue":I,onChange:P}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.field.options||[],K=>(e.openBlock(),e.createBlock(S,{key:String(K.value),label:K.label,value:K.value},null,8,["label","value"]))),128))]),_:1},16,["model-value","placeholder","disabled"])):l.value==="date"?(e.openBlock(),e.createBlock(C,e.mergeProps({key:1,class:"global-info-field-control"},v.field.props,{"model-value":v.modelValue,placeholder:k.value,disabled:i.value,type:"date","value-format":"YYYY-MM-DD","onUpdate:modelValue":I,onChange:P}),null,16,["model-value","placeholder","disabled"])):l.value==="number"?(e.openBlock(),e.createBlock(w,e.mergeProps({key:2,class:"global-info-field-control"},v.field.props,{"model-value":p.value,placeholder:k.value,disabled:i.value,"controls-position":"right","onUpdate:modelValue":I,onChange:P}),null,16,["model-value","placeholder","disabled"])):l.value==="switch"?(e.openBlock(),e.createBlock(z,e.mergeProps({key:3,class:"global-info-field-control global-info-field-control--switch"},v.field.props,{"model-value":T.value,disabled:i.value,"onUpdate:modelValue":I,onChange:P}),null,16,["model-value","disabled"])):l.value==="file"?(e.openBlock(),e.createElementBlock("label",{key:4,class:e.normalizeClass(["global-info-field-control global-info-field-control--file",{"is-disabled":i.value,"is-empty":!y.value,"is-filled":y.value}])},[e.createElementVNode("input",{class:"global-info-field-control__file-input",type:"file",disabled:i.value,accept:String(v.field.props?.accept??""),multiple:!!v.field.props?.multiple,onChange:u},null,40,an),y.value?(e.openBlock(),e.createElementBlock("span",ln,e.toDisplayString(m.value),1)):(e.openBlock(),e.createElementBlock("span",sn,"上 传"))],2)):l.value==="empty"?(e.openBlock(),e.createBlock(te,{key:5,class:"global-info-field-control","model-value":"",disabled:"",placeholder:"-"})):(e.openBlock(),e.createBlock(te,e.mergeProps({key:6,class:["global-info-field-control",{"global-info-field-control--code":l.value==="code"}]},v.field.props,{"model-value":s.value,placeholder:k.value,disabled:i.value,type:a.includes(l.value)?"textarea":"text",rows:a.includes(l.value)?f.value:void 0,"onUpdate:modelValue":I,onChange:P}),null,16,["class","model-value","placeholder","disabled","type","rows"]))}}}),xe=Y(cn,[["__scopeId","data-v-cc5c8aa9"]]),un=["innerHTML"],dn={key:1,class:"global-info-field-value global-info-field-value--code"},pn=e.defineComponent({name:"GlobalInfoFieldValue",__name:"GlobalInfoFieldValue",props:{field:{},value:{},emptyText:{default:"-"}},setup(o){const t=o,n=e.computed(()=>ze(t.field)),r=e.computed(()=>n.value==="empty"||ce(t.value)),a=e.computed(()=>Vt(t.field,t.value,t.emptyText));return(l,i)=>n.value==="html"&&!r.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"global-info-field-value global-info-field-value--html",innerHTML:a.value},null,8,un)):n.value==="code"&&!r.value?(e.openBlock(),e.createElementBlock("pre",dn,e.toDisplayString(a.value),1)):(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass(["global-info-field-value",{"global-info-field-value--multi-row":n.value==="multi-row","global-info-field-value--file":n.value==="file"&&!r.value}])},e.toDisplayString(a.value),3))}}),Ae=Y(pn,[["__scopeId","data-v-08b37e58"]]);function _e(o){return je(o)==="select"&&!!o.interface}function Ee(o,t,n={},r=""){const a=t.key||t.id||t.code,l=(t.cascadeDependFields??[]).map(i=>`${i}:${String(n[i]??"")}`).join("|");return[o,r,a,l].join("::")}function Pt(o,t,n){return Array.isArray(o.options)&&o.options.length>0?t===n?!0:!t&&(o.cascadeDependFields??[]).length===0:!1}const fn={class:"global-info-form-renderer__label"},mn={key:0,class:"global-info-form-renderer__required"},gn=e.defineComponent({name:"GlobalInfoFormRenderer",__name:"GlobalInfoFormRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},model:{},onUpdateModel:{type:Function},renderConfig:{}},setup(o){const t=o,n=e.useSlots(),r=e.computed(()=>t.model??t.section.model),a=new Map,l=e.computed(()=>Te(t.section.fields,t.section,t.renderConfig,{values:r.value}));function i(u,v){const _={...r.value,[u.code]:v};(u.cascadeClearFields??[]).forEach(S=>{_[S]=""}),t.onUpdateModel?.(_),t.onUpdateModel||t.actions.updateField(t.section,u,v),s(u,v,_)}function s(u,v,_){const S=t.renderConfig?.onFieldBusinessChange;if(S)try{const E=p(u,v),C={field:u,value:v,section:t.section,model:_,values:_,node:t.node,activeNode:t.node,sections:g(),sectionValues:T(t.section,_),actions:t.actions,selectedOption:E[0],selectedOptions:E};Promise.resolve(S(C)).catch(w=>{console.error("[GlobalInfoFormRenderer] field business change failed",w)})}catch(E){console.error("[GlobalInfoFormRenderer] field business change failed",E)}}function p(u,v){const _=Ne(u,v);return(u.options??[]).filter(S=>_.some(E=>S.value===E||String(S.value)===String(E)))}function g(){return Object.values(t.state.sectionMap)}function T(u,v){const S=g().flatMap(E=>{const C=E.key===u.key?v:E.renderType==="table"?E.rows:E.model;return[E.key,E.id,E.setId,E.infSetId,E.code].filter(Boolean).map(w=>[String(w),C])});return Object.fromEntries(S)}async function f(u){try{await t.actions.loadFieldOptions(t.section,u,r.value)}catch(v){console.error("[GlobalInfoFormRenderer] load field options failed",v)}}async function y(){for(const u of l.value){const v=r.value[u.code];if(!V(u,v))continue;const _=Ee(t.section.key,u,r.value),S=P(u),E=a.get(S);if(Pt(u,E,_)){a.set(S,_);continue}E!==_&&(a.set(S,_),await f(u))}}e.watch(()=>t.section.key,()=>{a.clear()}),e.watch(()=>t.editing,()=>{y()},{immediate:!0}),e.watch(()=>l.value.filter(u=>_e(u)).map(u=>Ee(t.section.key,u,r.value)).join("||"),()=>{y()});function m(u){const v=r.value[u.code];return{field:u,section:t.section,sectionView:t.section,node:t.node,editing:t.editing,modelValue:v,value:v,state:t.state,actions:t.actions,updateModelValue:_=>i(u,_)}}function k(u){const v=String(u.id||u.key||u.code||"").trim(),_=v?`field-${v}`:"";if(_&&n[_])return _;const S=_.toLowerCase();return S!==_&&n[S]?S:""}function I(u){return u.span?Math.min(Math.max(u.span,1),24):6}function P(u){return u.key||u.id||u.code}function V(u,v){return _e(u)?t.editing?!0:!ce(v):!1}function O(u){return u.required||u.isRequired}return(u,v)=>{const _=D.ElFormItem,S=D.ElCol,E=D.ElRow,C=D.ElForm;return e.openBlock(),e.createBlock(C,{class:"global-info-form-renderer",model:r.value,"label-position":"top"},{default:e.withCtx(()=>[e.createVNode(E,{gutter:24},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,w=>(e.openBlock(),e.createBlock(S,{key:P(w),span:I(w)},{default:e.withCtx(()=>[e.createVNode(_,e.mergeProps({prop:w.code,ref_for:!0},w.formItemProps),{label:e.withCtx(()=>[e.createElementVNode("span",fn,[O(w)?(e.openBlock(),e.createElementBlock("span",mn,"*")):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(w.label),1)])]),default:e.withCtx(()=>[k(w)?e.renderSlot(u.$slots,k(w),e.mergeProps({key:0,ref_for:!0},m(w)),void 0,!0):u.editing&&!w.readonly?(e.openBlock(),e.createBlock(xe,{key:1,field:w,"model-value":r.value[w.code],section:u.section,onLoadOptions:()=>f(w),"onUpdate:modelValue":z=>i(w,z)},null,8,["field","model-value","section","onLoadOptions","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(Ae,{key:2,field:w,value:r.value[w.code],section:u.section},null,8,["field","value","section"]))]),_:2},1040,["prop"])]),_:2},1032,["span"]))),128))]),_:3})]),_:3},8,["model"])}}}),$t=Y(gn,[["__scopeId","data-v-b049423d"]]),Ft=e.defineComponent({name:"GlobalInfoDeleteConfirm",__name:"GlobalInfoDeleteConfirm",props:{title:{default:"确认删除吗?"},confirmText:{default:"确认"},cancelText:{default:"取消"}},emits:["confirm","cancel"],setup(o){return(t,n)=>{const r=D.ElPopconfirm;return e.openBlock(),e.createBlock(r,{title:t.title,"confirm-button-text":t.confirmText,"cancel-button-text":t.cancelText,width:"240","popper-class":"global-info-delete-confirm",onConfirm:n[0]||(n[0]=a=>t.$emit("confirm")),onCancel:n[1]||(n[1]=a=>t.$emit("cancel"))},{reference:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},8,["title","confirm-button-text","cancel-button-text"])}}}),vn={class:"global-info-table-renderer__table-scroll"},hn={class:"global-info-table-renderer__header"},yn={key:0,class:"global-info-table-renderer__required"},bn=e.defineComponent({name:"GlobalInfoTableRenderer",__name:"GlobalInfoTableRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},showAdd:{type:Boolean,default:!0},showDelete:{type:Boolean,default:!0},renderConfig:{}},setup(o){const t=o,n=e.useSlots(),r=e.computed(()=>t.section.fields.some(b=>Ze(b))),a=e.computed(()=>r.value),l=e.computed(()=>t.renderConfig?.sequenceLabel??"序号"),i=e.computed(()=>t.renderConfig?.sequenceWidth??56),s=e.computed(()=>{const b=t.renderConfig?.sequenceStart;return typeof b=="number"&&Number.isFinite(b)?b:1}),p=e.computed(()=>{const b=Te(t.section.fields,t.section,t.renderConfig,{rows:t.section.rows,values:t.section.model});return a.value?b.filter($=>!z($)):b}),g=new Map;function T(b){t.actions.deleteRow(t.section,b)}function f(b,$,F,G){const L=t.section.rows.slice(),U=F.cascadeClearFields??[],J={...b,__rowKey:ne(b),[F.code]:G};U.forEach(j=>{J[j]=""}),L[$]={...J},t.actions.updateTableRows(t.section,L),y(F,G,J,$,L)}function y(b,$,F,G,L){const U=t.renderConfig?.onFieldBusinessChange;if(U)try{const J=m(b,$),j={...t.section.model,...F},Q={field:b,value:$,section:t.section,model:j,values:j,row:F,rowIndex:G,rows:L,node:t.node,activeNode:t.node,sections:k(),sectionValues:I(t.section,L),actions:t.actions,selectedOption:J[0],selectedOptions:J};Promise.resolve(U(Q)).catch(ae=>{console.error("[GlobalInfoTableRenderer] field business change failed",ae)})}catch(J){console.error("[GlobalInfoTableRenderer] field business change failed",J)}}function m(b,$){const F=Ne(b,$);return(b.options??[]).filter(G=>F.some(L=>G.value===L||String(G.value)===String(L)))}function k(){return Object.values(t.state.sectionMap)}function I(b,$){const G=k().flatMap(L=>{const U=L.key===b.key?$:L.renderType==="table"?L.rows:L.model;return[L.key,L.id,L.setId,L.infSetId,L.code].filter(Boolean).map(J=>[String(J),U])});return Object.fromEntries(G)}async function P(b,$){try{await t.actions.loadFieldOptions(t.section,b,$)}catch(F){console.error("[GlobalInfoTableRenderer] load field options failed",F)}}async function V(){for(const b of t.section.rows){const $=ne(b);for(const F of p.value){const G=b[F.code];if(!_(F,G))continue;const L=Ee(t.section.key,F,b,$),U=`${$}:${C(F)}`,J=g.get(U);if(Pt(F,J,L)){g.set(U,L);continue}J!==L&&(g.set(U,L),await P(F,b))}}}function O(b,$,F){const G=$[b.code];return{field:b,section:t.section,sectionView:t.section,node:t.node,row:$,rowIndex:F,editing:t.editing,modelValue:G,value:G,state:t.state,actions:t.actions,updateModelValue:L=>f($,F,b,L)}}function u(b){const $=String(b.id||b.key||b.code||"").trim(),F=$?`field-${$}`:"";if(F&&n[F])return F;const G=F.toLowerCase();return G!==F&&n[G]?G:""}function v(b){return!b.readonly&&!b.disabled}function _(b,$){return _e(b)?t.editing?!0:!ce($):!1}function S(b){return b.width??(We(b)?56:void 0)}function E(b){if(!b.width)return b.minWidth??(We(b)?56:void 0)}function C(b){return b.key||b.id||b.code}function w(b){return s.value+b}function z(b){return Ze(b)}let te=0;const K=new WeakMap;function ne(b){const $=b.__rowKey??b.key??b.id??b.setId??b.infSetId;if($!=null&&$!=="")return String($);const F=b,G=K.get(F);if(G)return G;te+=1;const L=`local-${te}`;return K.set(F,L),L}function fe(b){return b.required||b.isRequired}return e.watch(()=>t.section.key,()=>{g.clear()}),e.watch(()=>t.editing,()=>{V()},{immediate:!0}),e.watch(()=>t.section.rows.flatMap(b=>p.value.filter($=>_e($)).map($=>Ee(t.section.key,$,b,ne(b)))).join("||"),()=>{V()}),(b,$)=>{const F=D.ElTableColumn,G=e.resolveComponent("Delete"),L=D.ElIcon,U=D.ElButton,J=D.ElTable;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["global-info-table-renderer",{"global-info-table-renderer--editing":b.editing}])},[e.createElementVNode("div",vn,[e.createVNode(J,{class:"global-info-table-renderer__table",data:b.section.rows,fit:!0,"table-layout":"auto","row-key":ne},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createBlock(F,{key:0,type:"index",label:l.value,width:i.value,index:w},null,8,["label","width"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,j=>(e.openBlock(),e.createBlock(F,{key:C(j),prop:j.code,label:j.label,width:S(j),"min-width":E(j)},{header:e.withCtx(()=>[e.createElementVNode("span",hn,[fe(j)?(e.openBlock(),e.createElementBlock("span",yn,"*")):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(j.label),1)])]),default:e.withCtx(({row:Q,$index:ae})=>[u(j)?e.renderSlot(b.$slots,u(j),e.mergeProps({key:0,ref_for:!0},O(j,Q,ae)),void 0,!0):b.editing&&v(j)?(e.openBlock(),e.createBlock(xe,{key:1,field:j,"model-value":Q[j.code],section:b.section,row:Q,"row-index":ae,onLoadOptions:()=>P(j,Q),"onUpdate:modelValue":pe=>f(Q,ae,j,pe)},null,8,["field","model-value","section","row","row-index","onLoadOptions","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(Ae,{key:2,field:j,value:Q[j.code],section:b.section,row:Q,"row-index":ae},null,8,["field","value","section","row","row-index"]))]),_:2},1032,["prop","label","width","min-width"]))),128)),b.editing?(e.openBlock(),e.createBlock(F,{key:1,label:"操作",width:"104",fixed:"right"},{default:e.withCtx(({$index:j})=>[b.showDelete?(e.openBlock(),e.createBlock(Ft,{key:0,onConfirm:Q=>T(j)},{default:e.withCtx(()=>[e.createVNode(U,{class:"global-info-table-renderer__delete",link:"",type:"danger"},{default:e.withCtx(()=>[e.createVNode(L,{class:"global-info-table-renderer__delete-icon"},{default:e.withCtx(()=>[e.createVNode(G)]),_:1}),$[0]||($[0]=e.createTextVNode(" 删除 "))]),_:1})]),_:2},1032,["onConfirm"])):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0)]),_:3},8,["data"])])],2)}}}),Mt=Y(bn,[["__scopeId","data-v-5a2ec852"]]),Rt=e.defineComponent({name:"GlobalInfoAutoRenderer",__name:"GlobalInfoAutoRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},renderConfig:{}},setup(o){return(t,n)=>t.section.renderType==="table"?(e.openBlock(),e.createBlock(Mt,{key:0,section:t.section,node:t.node,editing:t.editing,state:t.state,actions:t.actions,"render-config":t.renderConfig},null,8,["section","node","editing","state","actions","render-config"])):(e.openBlock(),e.createBlock($t,{key:1,section:t.section,node:t.node,editing:t.editing,state:t.state,actions:t.actions,"render-config":t.renderConfig},null,8,["section","node","editing","state","actions","render-config"]))}}),Lt=e.defineComponent({name:"GlobalInfoSectionOutlet",__name:"GlobalInfoSectionOutlet",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},renderConfig:{}},setup(o){const t=o,n=e.useSlots(),r=e.computed(()=>Te(t.section.fields,t.section,t.renderConfig,{values:t.section.model,rows:t.section.renderType==="table"?t.section.rows:void 0})),a=e.computed(()=>t.editing??t.actions.isEditing(t.section)),l=e.computed(()=>t.section.renderType==="table"&&t.section.rows.length===0||r.value.length===0),i=e.computed(()=>{const g=s(t.section.id||t.section.key),T=p(t.section.renderType);return[g,T,"default"].find(f=>!!(f&&n[f]))??""});function s(g){const T=String(g??"").trim();return T?`section-${T}`:""}function p(g){return g==="form"||g==="table"?g:""}return(g,T)=>i.value?e.renderSlot(g.$slots,i.value,{key:0,section:g.section,sectionView:g.section,node:g.node,editing:a.value,isEmpty:l.value,empty:l.value,fields:r.value,renderConfig:g.renderConfig,state:g.state,actions:g.actions}):(e.openBlock(),e.createBlock(Rt,{key:1,section:g.section,node:g.node,editing:a.value,state:g.state,actions:g.actions,"render-config":g.renderConfig},null,8,["section","node","editing","state","actions","render-config"]))}}),Sn=e.defineComponent({name:"GlobalInfoSlotErrorBoundary",props:{boundaryKey:{type:[String,Number],default:""},label:{type:String,default:""}},emits:{error:o=>!0},setup(o,{emit:t,slots:n}){const r=e.ref(!1);e.watch(()=>o.boundaryKey,()=>{r.value=!1}),e.onErrorCaptured(l=>(a(l),!1));function a(l){r.value=!0,console.error(`[GlobalInfoSlotErrorBoundary] ${o.label||"section"} slot render failed`,l),t("error",l)}return()=>{if(r.value)return n.fallback?.()??null;try{return n.default?.()??null}catch(l){return a(l),n.fallback?.()??null}}}}),kn={class:"global-info-section-block"},wn={key:0,class:"global-info-section-block__header"},In={class:"global-info-section-block__title-wrap"},Cn={class:"global-info-section-block__title"},Bn={key:0,class:"global-info-section-block__actions"},_n=["src"],En={class:"global-info-section-block__body"},Vn=e.defineComponent({name:"GlobalInfoSectionBlock",__name:"GlobalInfoSectionBlock",props:{node:{},state:{},actions:{},hideHeader:{type:Boolean},renderConfig:{},onEdit:{type:Function},onCancel:{type:Function},onSave:{type:Function}},setup(o){const t=o,n=e.useSlots(),r=e.ref(!1),a=e.ref(null),l=e.ref(null),i=e.computed(()=>!!t.hideHeader),s=e.computed(()=>t.actions.getSectionStatus(t.node)),p=e.computed(()=>t.actions.getSection(t.node)??l.value),g=e.computed(()=>{const C=p.value;return C?Te(C.fields,C,t.renderConfig,{values:C.model,rows:C.renderType==="table"?C.rows:void 0}):[]}),T=e.computed(()=>p.value?.title||t.node.tagName||t.node.label||"-"),f=e.computed(()=>!!(p.value&&t.actions.isEditing(p.value))),y=e.computed(()=>p.value?.renderType==="table"),m=e.computed(()=>r.value||s.value.loading),k=e.computed(()=>V(a.value||s.value.error)),I=e.computed(()=>{const C=p.value;return C?C.renderType==="table"&&C.rows.length===0||g.value.length===0:!0}),P=e.computed(()=>({node:t.node,section:p.value,sectionView:p.value,fields:g.value,renderConfig:t.renderConfig,title:T.value,editing:f.value,loading:m.value,error:a.value||s.value.error,errorMessage:k.value,isEmpty:I.value,empty:I.value,sectionStatus:s.value,state:t.state,actions:t.actions,reload:E,handleEdit:O,handleCancel:u,handleAddTableRow:v,handleSave:_}));function V(C){return C?C instanceof Error?C.message:String(C):""}async function O(){const C=p.value;C&&(await t.onEdit?.(C,t.node),t.onEdit||t.actions.startEdit(C))}async function u(){const C=p.value;C&&(await t.onCancel?.(C,t.node),t.onCancel||t.actions.cancelEdit(C))}function v(){const C=p.value;if(!C)return;const w=C.fields.reduce((z,te)=>(z[te.code]=te.value??"",z),{__rowKey:`new-${Date.now()}`});t.actions.saveRow(C,w,-1)}async function _(){const C=p.value;if(C)try{if(t.onSave){await t.onSave(C,t.node);return}await t.actions.saveSection(C)}catch(w){a.value=w,console.error("[GlobalInfoSectionBlock] save section failed",w)}}function S(C){a.value=C}async function E(){r.value=!0,a.value=null,l.value=null;try{l.value=await t.actions.loadSection(t.node)}catch(C){a.value=C,console.error("[GlobalInfoSectionBlock] load section failed",C)}finally{r.value=!1}}return e.onMounted(()=>{E()}),e.watch(()=>t.node.key,()=>{E()}),(C,w)=>{const z=D.ElButton;return e.openBlock(),e.createElementBlock("section",kn,[i.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("header",wn,[e.renderSlot(C.$slots,"header",e.normalizeProps(e.guardReactiveProps(P.value)),()=>[e.createElementVNode("div",In,[w[0]||(w[0]=e.createElementVNode("span",{class:"global-info-section-block__marker"},null,-1)),e.createElementVNode("h3",Cn,e.toDisplayString(T.value),1)]),e.renderSlot(C.$slots,"actions",e.normalizeProps(e.guardReactiveProps(P.value)),()=>[p.value?(e.openBlock(),e.createElementBlock("div",Bn,[f.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createVNode(z,{class:"global-info-section-block__cancel",disabled:s.value.saving,onClick:u},{default:e.withCtx(()=>w[2]||(w[2]=[e.createTextVNode(" 取消 ")])),_:1},8,["disabled"]),y.value?(e.openBlock(),e.createBlock(z,{key:0,class:"global-info-section-block__add",disabled:s.value.saving,onClick:v},{default:e.withCtx(()=>w[3]||(w[3]=[e.createTextVNode(" 新增 ")])),_:1},8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(z,{class:"global-info-section-block__confirm",loading:s.value.saving,onClick:_},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.value?"确认":"保存"),1)]),_:1},8,["loading"])],64)):(e.openBlock(),e.createBlock(z,{key:0,class:"global-info-section-block__edit",disabled:s.value.saving||m.value,onClick:O},{default:e.withCtx(()=>[e.createElementVNode("img",{class:"global-info-section-block__edit-icon",src:e.unref(Wo),alt:""},null,8,_n),w[1]||(w[1]=e.createElementVNode("span",null,"编辑",-1))]),_:1},8,["disabled"]))])):e.createCommentVNode("",!0)],!0)],!0)])),e.createElementVNode("div",En,[m.value?e.renderSlot(C.$slots,"loading",e.normalizeProps(e.mergeProps({key:0},P.value)),()=>[w[4]||(w[4]=e.createElementVNode("div",{class:"global-info-section-block__status"},"加载中...",-1))],!0):!p.value||I.value?e.renderSlot(C.$slots,"empty",e.normalizeProps(e.mergeProps({key:1},P.value)),()=>[w[5]||(w[5]=e.createElementVNode("div",{class:"global-info-section-block__status"},"暂无数据",-1))],!0):(e.openBlock(),e.createBlock(Sn,{key:2,"boundary-key":C.node.key,label:T.value,onError:S},{fallback:e.withCtx(()=>[e.renderSlot(C.$slots,"empty",e.normalizeProps(e.guardReactiveProps(P.value)),()=>[w[6]||(w[6]=e.createElementVNode("div",{class:"global-info-section-block__status"},"暂无数据",-1))],!0)]),default:e.withCtx(()=>[e.createVNode(Lt,{section:p.value,node:C.node,editing:f.value,state:C.state,actions:C.actions,"render-config":C.renderConfig},e.createSlots({_:2},[e.renderList(e.unref(n),(te,K)=>({name:K,fn:e.withCtx(ne=>[e.renderSlot(C.$slots,K,e.normalizeProps(e.guardReactiveProps({...P.value,...ne})),void 0,!0)])}))]),1032,["section","node","editing","state","actions","render-config"])]),_:3},8,["boundary-key","label"]))])])}}}),Ot=Y(Vn,[["__scopeId","data-v-6c47a274"]]),Nn={class:"global-info-group"},Tn={class:"global-info-group__header"},Pn={class:"global-info-group__title"},$n={class:"global-info-group__body"},Fn=["id"],Mn=e.defineComponent({name:"GlobalInfoGroup",__name:"GlobalInfoGroup",props:{group:{},children:{},state:{},actions:{},index:{},renderConfig:{}},setup(o){const t=o,n=e.useSlots(),r=e.computed(()=>t.group.tagName||t.group.label||"-"),a=e.computed(()=>t.children.length<=1);function l(f,y){const m=t.actions.getSection(f);return{node:f,group:t.group,sectionNode:f,section:m,sectionView:m,state:t.state,actions:t.actions,renderConfig:t.renderConfig,index:y,editing:!!(m&&t.actions.isEditing(m)),sectionStatus:t.actions.getSectionStatus(f),isSelfSection:g(f,0)===g(t.group,0),handleEdit:()=>t.actions.startEdit(f),handleCancel:()=>t.actions.cancelEdit(f),handleSave:()=>t.actions.saveSection(f.key)}}function i(f){return s("section",p(f))}function s(f,y){if(!y)return"";const m=`${f}-${y}`;if(n[m])return m;const k=m.toLowerCase();return k!==m&&n[k]?k:""}function p(f){return String(f.id||f.infSetId||f.tagId||f.key||f.code||"").trim()}function g(f,y){return f.key||f.id||f.infSetId||f.tagId||`${y}`}function T(f){return`global-info-section-${g(f,0)}`}return(f,y)=>(e.openBlock(),e.createElementBlock("section",Nn,[e.renderSlot(f.$slots,"header",{group:f.group,children:f.children,state:f.state,actions:f.actions,renderConfig:f.renderConfig,title:r.value,index:f.index,isEmpty:f.children.length===0},()=>[e.createElementVNode("header",Tn,[y[0]||(y[0]=e.createElementVNode("span",{class:"global-info-group__marker"},null,-1)),e.createElementVNode("h2",Pn,e.toDisplayString(r.value),1)])],!0),e.createElementVNode("div",$n,[e.unref(n).default?e.renderSlot(f.$slots,"default",{key:0,group:f.group,children:f.children,state:f.state,actions:f.actions,renderConfig:f.renderConfig,index:f.index,isEmpty:f.children.length===0},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.children,(m,k)=>(e.openBlock(),e.createElementBlock("div",{id:T(m),key:g(m,k),class:"global-info-group__section"},[i(m)?e.renderSlot(f.$slots,i(m),e.mergeProps({key:0,ref_for:!0},l(m,k)),void 0,!0):e.unref(n).section?e.renderSlot(f.$slots,"section",e.mergeProps({key:1,ref_for:!0},l(m,k)),void 0,!0):(e.openBlock(),e.createBlock(Ot,{key:2,node:m,state:f.state,actions:f.actions,"hide-header":a.value,"render-config":f.renderConfig},e.createSlots({_:2},[e.renderList(e.unref(n),(I,P)=>({name:P,fn:e.withCtx(V=>[e.renderSlot(f.$slots,P,e.mergeProps({ref_for:!0},V),void 0,!0)])}))]),1032,["node","state","actions","hide-header","render-config"]))],8,Fn))),128)),f.children.length===0?e.renderSlot(f.$slots,"empty",{key:0,node:null,group:f.group,sectionNode:null,state:f.state,actions:f.actions,index:-1,renderConfig:f.renderConfig},()=>[y[1]||(y[1]=e.createElementVNode("div",{class:"global-info-group__empty"},"暂无数据",-1))],!0):e.createCommentVNode("",!0)],64))])]))}}),Gt=Y(Mn,[["__scopeId","data-v-c90b8de0"]]),Rn={class:"global-info-sections"},Ln=e.defineComponent({name:"GlobalInfoSections",__name:"GlobalInfoSections",props:{nodes:{},state:{},actions:{},renderConfig:{}},setup(o){const t=o,n=e.useSlots(),r=e.computed(()=>{const y=t.nodes.filter(u=>a(u).length>0),m=t.nodes.filter(u=>a(u).length===0),k=m.filter(u=>l(u)),I=m.filter(u=>!l(u)),P=y.map(u=>({group:u,children:a(u)})),V=k.map(u=>({group:u,children:[u]}));if(P.length===0)return k.length>0?V:f(I);const O=f(I);return[...P,...V,...O]});function a(y){return y.children??[]}function l(y){return!String(y.parentId||y.parentTagId||"").trim()}function i(y){return s("group",p(y))}function s(y,m){if(!m)return"";const k=`${y}-${m}`;if(n[k])return k;const I=k.toLowerCase();return I!==k&&n[I]?I:""}function p(y){return String(y.id||y.tagId||y.key||y.code||"").trim()}function g(y,m){return y.key||y.id||y.tagId||`${m}`}function T(y){const m=y[0],k=m?.raw??{},I=String(k.parentTagName||k.parentName||k.parentLabel||m?.parentId||"信息");return{...m,key:`${m?.parentId||m?.parentTagId||m?.key||"global-info"}-group`,id:String(m?.parentId||m?.parentTagId||m?.id||"global-info-group"),tagId:String(m?.parentTagId||m?.parentId||m?.tagId||"global-info-group"),tagName:I,label:I,children:y}}function f(y){const m=new Map;return y.forEach(k=>{const I=String(k.parentId||k.parentTagId||"global-info-flat"),P=m.get(I)??[];P.push(k),m.set(I,P)}),Array.from(m.values()).map(k=>({group:T(k),children:k}))}return(y,m)=>(e.openBlock(),e.createElementBlock("div",Rn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(k,I)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g(k.group,I)},[i(k.group)?e.renderSlot(y.$slots,i(k.group),{key:0,group:k.group,children:k.children,state:y.state,actions:y.actions,renderConfig:y.renderConfig,index:I,isEmpty:k.children.length===0},void 0,!0):e.unref(n).group?e.renderSlot(y.$slots,"group",{key:1,group:k.group,children:k.children,state:y.state,actions:y.actions,renderConfig:y.renderConfig,index:I,isEmpty:k.children.length===0},void 0,!0):(e.openBlock(),e.createBlock(Gt,{key:2,group:k.group,children:k.children,state:y.state,actions:y.actions,"render-config":y.renderConfig,index:I},e.createSlots({_:2},[e.renderList(e.unref(n),(P,V)=>({name:V,fn:e.withCtx(O=>[e.renderSlot(y.$slots,V,e.mergeProps({ref_for:!0},O),void 0,!0)])}))]),1032,["group","children","state","actions","render-config","index"]))],64))),128))]))}}),On=Y(Ln,[["__scopeId","data-v-c0d12f5e"]]);exports.JtAttachmentPreview=Ge.JtAttachmentPreview;exports.JtAttachmentPreviewByParams=Ge.JtAttachmentPreviewByParams;exports.setupJtAttachmentPreview=Ge.setupJtAttachmentPreview;exports.GlobalInfoAutoRenderer=Rt;exports.GlobalInfoDeleteConfirm=Ft;exports.GlobalInfoFieldControl=xe;exports.GlobalInfoFieldValue=Ae;exports.GlobalInfoFormRenderer=$t;exports.GlobalInfoGroup=Gt;exports.GlobalInfoProvider=Uo;exports.GlobalInfoSectionBlock=Ot;exports.GlobalInfoSectionOutlet=Lt;exports.GlobalInfoSections=On;exports.GlobalInfoTableRenderer=Mt;exports.JtButton=he;exports.JtCascader=rt;exports.JtCrudTable=ho;exports.JtDatePicker=at;exports.JtFilterBar=it;exports.JtFormItems=st;exports.JtInput=Ce;exports.JtPageHeader=wo;exports.JtPagination=ut;exports.JtSelect=lt;exports.JtTable=ct;exports.buildGlobalInfoUpdatePayload=mt;exports.createEmptyGlobalInfoViewModel=dt;exports.isGlobalInfoNode=Io;exports.mergeGlobalInfoChildren=De;exports.normalizeGlobalInfoDetail=pt;exports.normalizeGlobalInfoTree=Le;exports.resolveGlobalInfoRenderType=ft;exports.useGlobalInfoController=_t;
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),J=require("element-plus/es"),Be=require("element-plus"),Je=require("./JtAttachmentPreview/index.cjs"),qe=2,an=3;function ln(n){return n.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function pt(n){if(!n.startsWith("on")||n.length<=qe)return!1;const t=n.charCodeAt(qe);return t<97||t>122}function sn(n){if(n.startsWith("on-"))return n.slice(an);const[t,o]=n.slice(qe).split(":"),r=ln(t);return o?`${r}:${o}`:r}function mt(n,t=new Set){return Object.fromEntries(Object.entries(n).filter(([o,r])=>!t.has(o)&&pt(o)&&typeof r=="function").map(([o,r])=>[sn(o),r]))}function ht(n,t=new Set){return Object.fromEntries(Object.entries(n).filter(([o])=>!t.has(o)&&!pt(o)))}const cn=e.defineComponent({name:"JtButton",__name:"index",props:{size:{},disabled:{type:Boolean},type:{},icon:{},nativeType:{},loading:{type:Boolean},loadingIcon:{},plain:{type:Boolean},text:{type:Boolean},link:{type:Boolean},bg:{type:Boolean},autofocus:{type:Boolean},round:{type:Boolean},circle:{type:Boolean},dashed:{type:Boolean},color:{},dark:{type:Boolean},autoInsertSpace:{type:Boolean},tag:{}},setup(n){const t=n,o=e.useAttrs(),r=e.computed(()=>{const{icon:l,...c}=t;return{...ht(o),...c}}),a=e.computed(()=>mt(o));return(l,c)=>{const i=J.ElIcon,u=J.ElButton;return e.openBlock(),e.createBlock(u,e.mergeProps({class:"jt-button"},r.value,e.toHandlers(a.value)),{default:e.withCtx(()=>[l.$slots.icon?(e.openBlock(),e.createBlock(i,{key:0,class:"jt-button__icon"},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"icon",{},void 0,!0)]),_:3})):t.icon?(e.openBlock(),e.createBlock(i,{key:1,class:"jt-button__icon"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon)))]),_:1})):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},void 0,!0)]),_:3},16)}}}),le=(n,t)=>{const o=n.__vccOpts||n;for(const[r,a]of t)o[r]=a;return o},Ce=le(cn,[["__scopeId","data-v-a8344276"]]),un={options:()=>[],placeholder:"请选择",clearable:!0,persistent:!0};function ot(n){return Object.fromEntries(Object.entries(n).filter(([,t])=>t!==void 0))}function dn(n){const t=ot(n);return t.props&&(t.props=ot(t.props)),t}const vt=e.defineComponent({name:"JtCascader",__name:"index",props:e.mergeDefaults({size:{},placeholder:{},disabled:{type:Boolean},clearable:{type:Boolean},clearIcon:{},filterable:{type:Boolean},filterMethod:{type:Function},separator:{},showAllLevels:{type:Boolean},collapseTags:{type:Boolean},maxCollapseTags:{},collapseTagsTooltip:{type:Boolean},maxCollapseTagsTooltipHeight:{},debounce:{},beforeFilter:{type:Function},placement:{},fallbackPlacements:{},popperClass:{},popperStyle:{type:[Boolean,null,String,Object,Array]},teleported:{type:Boolean},effect:{},tagType:{},tagEffect:{},validateEvent:{type:Boolean},persistent:{type:Boolean},showCheckedStrategy:{},checkOnClickNode:{type:Boolean},showPrefix:{type:Boolean},fitInputWidth:{type:[Boolean,Number]},modelValue:{},props:{},virtualScroll:{type:Boolean},itemSize:{},height:{},emptyValues:{},valueOnClear:{type:[String,Number,Boolean,Function,null]},options:{}},un),emits:Be.cascaderEmits,setup(n,{emit:t}){const o=n,r=e.computed(()=>dn(o)),a=e.ref(o.modelValue);e.watch(()=>o.modelValue,m=>{a.value=m},{deep:!0});const l=t;function c(m,...w){l(m,...w)}function i(m){a.value=m,c("update:modelValue",m)}function u(m){c("change",m)}function p(m){c("focus",m)}function O(m){c("blur",m)}function h(){c("clear")}function b(m){c("visibleChange",m)}function d(m){c("expandChange",m)}function B(m){c("removeTag",m)}return(m,w)=>{const _=J.ElCascader;return e.openBlock(),e.createBlock(_,e.mergeProps({class:"jt-cascader"},r.value,{"model-value":a.value,"onUpdate:modelValue":i,onChange:u,onFocus:p,onBlur:O,onClear:h,onVisibleChange:b,onExpandChange:d,onRemoveTag:B}),null,16,["model-value"])}}}),fn=e.defineComponent({name:"JtDatePicker",__name:"index",props:{type:{default:"date"},showNow:{type:Boolean},showConfirm:{type:Boolean},showFooter:{type:Boolean},showWeekNumber:{type:Boolean},ariaLabel:{},emptyValues:{},valueOnClear:{},disabledDate:{},cellClassName:{},shortcuts:{},arrowControl:{type:Boolean},tabindex:{},validateEvent:{type:Boolean},unlinkPanels:{type:Boolean},singlePanel:{type:Boolean},placement:{},fallbackPlacements:{},disabledHours:{},disabledMinutes:{},disabledSeconds:{},automaticDropdown:{type:Boolean},id:{},name:{},popperClass:{},popperStyle:{},format:{},valueFormat:{default:"YYYY-MM-DD"},dateFormat:{},timeFormat:{},clearable:{type:Boolean,default:!0},clearIcon:{},editable:{type:Boolean},saveOnBlur:{type:Boolean},prefixIcon:{},size:{},readonly:{type:Boolean},disabled:{type:Boolean},placeholder:{default:"请选择日期"},popperOptions:{},modelValue:{},rangeSeparator:{},startPlaceholder:{},endPlaceholder:{},defaultValue:{},defaultTime:{},isRange:{type:Boolean}},setup(n){const t=n,o=e.computed(()=>({...t,startPlaceholder:t.startPlaceholder??(r(t.type)?"开始日期":void 0),endPlaceholder:t.endPlaceholder??(r(t.type)?"结束日期":void 0)}));function r(a){return a?.includes("range")??!1}return(a,l)=>{const c=J.ElDatePicker;return e.openBlock(),e.createBlock(c,e.mergeProps({class:"jt-date-picker"},o.value,{"onUpdate:modelValue":l[0]||(l[0]=i=>a.$emit("update:modelValue",i))}),null,16)}}}),gt=le(fn,[["__scopeId","data-v-7aa4706e"]]),pn=e.defineComponent({name:"JtInput",__name:"index",props:{id:{},size:{},disabled:{type:Boolean},modelValue:{},modelModifiers:{},maxlength:{},minlength:{},type:{},resize:{},autosize:{type:[Object,Boolean]},autocomplete:{},formatter:{},parser:{},placeholder:{default:"请输入"},form:{},readonly:{type:Boolean},clearable:{type:Boolean,default:!0},clearIcon:{},showPassword:{type:Boolean},showWordLimit:{type:Boolean},wordLimitPosition:{},suffixIcon:{},prefixIcon:{},containerRole:{},tabindex:{},validateEvent:{type:Boolean},inputStyle:{type:[Boolean,null,String,Object,Array]},autofocus:{type:Boolean},rows:{},ariaLabel:{},inputmode:{},name:{},countGraphemes:{}},emits:{...Be.inputEmits,enter:()=>!0},setup(n,{emit:t}){const o=n,r=t,a=e.computed(()=>Object.fromEntries(Object.keys(Be.inputEmits).map(l=>[l,(...c)=>r(l,...c)])));return(l,c)=>{const i=J.ElInput;return e.openBlock(),e.createBlock(i,e.mergeProps({class:"jt-input"},o,e.toHandlers(a.value),{onKeyup:c[0]||(c[0]=e.withKeys(u=>r("enter"),["enter"]))}),null,16)}}}),De=le(pn,[["__scopeId","data-v-031428a1"]]),mn=e.defineComponent({name:"JtSelect",__name:"index",props:{options:{},ariaLabel:{},emptyValues:{},valueOnClear:{},name:{},id:{},modelValue:{},autocomplete:{},automaticDropdown:{type:Boolean},size:{},effect:{},disabled:{type:Boolean},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},allowCreate:{type:Boolean},loading:{type:Boolean},popperClass:{},popperStyle:{},popperOptions:{},remote:{type:Boolean},debounce:{},loadingText:{},noMatchText:{},noDataText:{},remoteMethod:{},filterMethod:{},multiple:{type:Boolean},multipleLimit:{},placeholder:{default:"请选择"},defaultFirstOption:{type:Boolean},reserveKeyword:{type:Boolean},valueKey:{},collapseTags:{type:Boolean},collapseTagsTooltip:{type:Boolean},tagTooltip:{},maxCollapseTags:{},teleported:{type:Boolean},persistent:{type:Boolean},clearIcon:{},fitInputWidth:{type:Boolean},suffixIcon:{},tagType:{},tagEffect:{},validateEvent:{type:Boolean},remoteShowSuffix:{type:Boolean},showArrow:{type:Boolean},offset:{},placement:{},fallbackPlacements:{},tabindex:{},appendTo:{},props:{}},emits:Be.selectEmits,setup(n,{emit:t}){const o=n,r=e.computed(()=>{const{options:c,...i}=o;return i}),a=t,l=e.computed(()=>Object.fromEntries(Object.keys(Be.selectEmits).map(c=>[c,(...i)=>a(c,...i)])));return(c,i)=>{const u=J.ElOption,p=J.ElSelect;return e.openBlock(),e.createBlock(p,e.mergeProps({class:"jt-select"},r.value,e.toHandlers(l.value)),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.options??[],O=>(e.openBlock(),e.createBlock(u,e.mergeProps({key:O.value,ref_for:!0},O),null,16))),128))]),_:1},16)}}}),yt=le(mn,[["__scopeId","data-v-c67cfa84"]]),hn={class:"jt-form-items"},Ge=4,vn=e.defineComponent({name:"JTFormItems",__name:"JtFormItems",props:{configs:{},formData:{},span:{}},setup(n){const t=n,o={input:De,select:yt,cascader:vt,"date-picker":gt},r={"remote-select":"select",date:"date-picker",daterange:"date-picker","date-range":"date-picker",dateRange:"date-picker"},a=new Set(["prop","label","itemType","span","options","rules","formItemProps","showSlot","show"]),l=Object.keys(o),c=new Map,i=e.computed(()=>t.configs.filter(S=>S.show!==!1)),u=S=>{const{itemType:f}=S;if(!f)return De;if(typeof f!="string")return f;const T=r[f]??f;return l.includes(T)?o[T]:(console.error(`[JtFormItems] 不支持的 itemType: "${f}",支持的类型: ${l.join(", ")}`),De)},p=S=>{const f=ht(S,a);return S.itemType==="select"||S.itemType==="remote-select"||S.itemType==="cascader"?{...f,options:S.options}:F(S.itemType)?{...f,type:"daterange"}:f},O=S=>mt(S,a),h=S=>({rules:S.rules,...S.formItemProps}),b=(S,f)=>{t.formData[S]=f};function d(S){return f=>{if(f){c.set(S,f);return}c.delete(S)}}function B(S,f){e.nextTick(()=>{c.get(S)?.validate(f).catch(()=>{})})}const m=S=>Math.min(Math.max(Math.trunc(S||1),1),4),w=e.computed(()=>{const f=i.value.reduce((T,I)=>T+m(t.span||I.span),0)%Ge;return f===0?{gridColumn:`1 / span ${Ge}`}:{gridColumn:`${f+1} / span ${Ge-f}`}}),_=S=>({gridColumn:`span ${m(t.span||S.span)}`});function F(S){return S==="daterange"||S==="date-range"||S==="dateRange"}return(S,f)=>{const T=J.ElFormItem;return e.openBlock(),e.createElementBlock("div",hn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,I=>(e.openBlock(),e.createBlock(T,e.mergeProps({key:I.prop,ref_for:!0,ref:d(I.prop),class:"jt-form-items__item",style:_(I),label:I.label,prop:I.prop},h(I)),{default:e.withCtx(()=>[I.showSlot?e.renderSlot(S.$slots,I.prop,{key:0},void 0,!0):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u(I)),e.mergeProps({key:1,"model-value":S.formData[I.prop],ref_for:!0},p(I),e.toHandlers(O(I)),{"onUpdate:modelValue":$=>b(I.prop,$),onChange:()=>B(I.prop,"change"),onBlur:()=>B(I.prop,"blur")}),null,16,["model-value","onUpdate:modelValue","onChange","onBlur"]))]),_:2},1040,["style","label","prop"]))),128)),S.$slots.actions?(e.openBlock(),e.createBlock(T,{key:0,class:"jt-form-items__actions",style:e.normalizeStyle(w.value)},{default:e.withCtx(()=>[e.renderSlot(S.$slots,"actions",{},void 0,!0)]),_:3},8,["style"])):e.createCommentVNode("",!0)])}}}),bt=le(vn,[["__scopeId","data-v-cb82fcfc"]]);function gn(){const n=e.ref(!1);function t(){n.value=!0}function o(){n.value=!1}return{searchDisabled:n,searchLoading:t,searchDone:o}}const yn="data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='0.5'%20y='-0.5'%20width='11'%20height='11'%20rx='5.5'%20transform='matrix(1%200%200%20-1%201%2012)'%20stroke='%23999999'/%3e%3cpath%20d='M10%208.16064L7%205.16064L4%208.16064'%20stroke='%23999999'/%3e%3c/svg%3e",bn="data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2.375%207.00017C2.375%207.27631%202.59886%207.50017%202.875%207.50017C3.15114%207.50017%203.375%207.27631%203.375%207.00017H2.875H2.375ZM2.875%207.00017H3.375C3.375%204.46334%205.41801%202.41406%207.93713%202.41406V1.91406V1.41406C4.86127%201.41406%202.375%203.91551%202.375%207.00017H2.875ZM7.93713%201.91406V2.41406C10.4563%202.41406%2012.4993%204.46334%2012.4993%207.00017H12.9993H13.4993C13.4993%203.91551%2011.013%201.41406%207.93713%201.41406V1.91406ZM12.9993%207.00017H12.4993C12.4993%209.537%2010.4563%2011.5863%207.93713%2011.5863V12.0863V12.5863C11.013%2012.5863%2013.4993%2010.0848%2013.4993%207.00017H12.9993ZM7.93713%2012.0863V11.5863C6.68975%2011.5863%205.55663%2011.0806%204.72892%2010.2635L4.37765%2010.6193L4.02638%2010.9752C5.0317%2011.9676%206.41366%2012.5863%207.93713%2012.5863V12.0863Z'%20fill='%23999999'/%3e%3cpath%20d='M4.75131%206.0102L2.88631%207.88403L1%205.99414'%20stroke='%23999999'%20stroke-miterlimit='10'/%3e%3c/svg%3e",Sn="data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.60938%2012.1099C9.64694%2012.1099%2012.1094%209.64743%2012.1094%206.60986C12.1094%203.5723%209.64694%201.10986%206.60938%201.10986C3.57181%201.10986%201.10938%203.5723%201.10938%206.60986C1.10938%209.64743%203.57181%2012.1099%206.60938%2012.1099Z'%20stroke='white'%20stroke-miterlimit='10'/%3e%3cpath%20d='M12.4993%2012.5002L10.2832%2010.3301'%20stroke='white'%20stroke-miterlimit='10'/%3e%3c/svg%3e",wn={class:"jt-filter-bar__btns"},kn=["src"],In=["src"],Cn=["src"],_n=e.defineComponent({name:"JtFilterBar",__name:"JtFilterBar",props:{columns:{},option:{default:()=>({})},modelValue:{}},emits:["update:modelValue","search","reset"],setup(n,{expose:t,emit:o}){const r=n,a=o,l=e.ref(),c=e.useSlots(),i=e.ref({}),{searchDisabled:u,searchLoading:p,searchDone:O}=gn(),h=e.computed(()=>r.option),b=e.ref(h.value.searchCollapsed??!1),d=e.computed(()=>r.columns.filter(L=>L.search===!0)),B=e.computed(()=>Math.max(1,h.value.searchSpan??4)),m=e.computed(()=>Math.max(1,h.value.searchCollapsedRows??1)),w=e.computed(()=>B.value),_=e.computed(()=>Math.max(1,w.value*m.value)),F=e.computed(()=>B.value),S=e.computed(()=>E.value?"264px":"174px"),f=e.computed(()=>j(h.value.searchLabelWidth??84)),T=e.computed(()=>h.value.searchLabelPosition??"top"),I=e.computed(()=>H(h.value.searchGutter,14)),$=e.computed(()=>H(h.value.searchRowGap,14)),k=e.computed(()=>Z(h.value.searchPadding??"18px 4px 0")),E=e.computed(()=>h.value.searchCollapse===!1?!1:G(d.value)>_.value),N=e.computed(()=>{if(!E.value||!b.value)return d.value;let L=0;return d.value.filter(U=>{const Q=R(U);return L+Q>_.value?!1:(L+=Q,!0)})}),z=e.computed(()=>N.value.filter(L=>!!c[`${L.prop}-search`])),Y=e.computed(()=>{const[L]=N.value;return!!L&&N.value.length===1&&R(L)<B.value}),W=e.computed(()=>{const[L]=N.value;return`${Math.min(B.value,L?R(L)+1:1)}`}),x=e.computed(()=>N.value.map(L=>s(L)));e.watch(()=>h.value.searchCollapsed,L=>{typeof L=="boolean"&&(b.value=L)}),e.watch(()=>r.modelValue,L=>{i.value={...L}},{deep:!0,immediate:!0});function V(L,U){if(u.value)return;const Q={...i.value,[L]:U};i.value=Q,a("update:modelValue",Q)}function s(L){const U=L.searchProps??{};return{...U,prop:L.prop,label:L.searchLabel??L.label,span:R(L),itemType:L.searchType??"input",showSlot:!!c[`${L.prop}-search`],options:U.options??L.searchOptions??L.dicData,placeholder:U.placeholder??L.searchPlaceholder,valueFormat:U.valueFormat??L.searchValueFormat,disabled:u.value||U.disabled===!0,formItemProps:{required:L.searchRequired,class:["jt-filter-bar__item",{"is-required":L.searchRequired}]},onEnter:(...Q)=>{C(U.onEnter,...Q),y()},"onUpdate:modelValue":Q=>{C(U["onUpdate:modelValue"],Q),V(L.prop,Q)}}}function C(L,...U){if(Array.isArray(L)){L.forEach(Q=>C(Q,...U));return}typeof L=="function"&&L(...U)}async function y(){if(!u.value){if(l.value)try{await l.value.validate()}catch{return}a("search")}}function P(){u.value||a("reset")}function D(){b.value=!b.value}function R(L){return Math.min(B.value,Math.max(1,L.searchSpan??1))}function G(L){return L.reduce((U,Q)=>U+R(Q),0)}function j(L){return typeof L=="number"?`${L}px`:L}function H(L,U){return typeof L=="number"?L:U}function Z(L){return typeof L=="number"?`${L}px`:L}return t({formRef:l,searchDisabled:u,searchLoading:p,searchDone:O}),(L,U)=>{const Q=J.ElForm;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["jt-filter-bar",[`is-label-${T.value}`,{"is-single-filter":Y.value}]]),style:e.normalizeStyle({"--jt-filter-columns":B.value,"--jt-filter-field-columns":F.value,"--jt-filter-btns-width":S.value,"--jt-filter-actions-start":W.value,"--jt-filter-label-width":f.value,"--jt-filter-column-gap":`${I.value}px`,"--jt-filter-row-gap":`${$.value}px`,"--jt-filter-padding":k.value})},[e.createVNode(Q,{ref_key:"formRef",ref:l,class:"jt-filter-bar__form",model:i.value,"label-position":T.value,"label-width":f.value,disabled:e.unref(u),onSubmit:U[0]||(U[0]=e.withModifiers(()=>{},["prevent"]))},{default:e.withCtx(()=>[e.createVNode(e.unref(bt),{configs:x.value,"form-data":i.value},e.createSlots({actions:e.withCtx(()=>[e.createElementVNode("div",wn,[e.renderSlot(L.$slots,"search-menu",{search:y,reset:P,disabled:e.unref(u),collapsed:b.value,toggleCollapse:D},()=>[E.value?(e.openBlock(),e.createBlock(e.unref(Ce),{key:0,class:"jt-filter-bar__btn-collapse",onClick:D},{icon:e.withCtx(()=>[e.createElementVNode("img",{class:e.normalizeClass(["jt-filter-bar__icon-arrow",{"is-collapsed":b.value}]),src:e.unref(yn),alt:""},null,10,kn)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(b.value?"展 开":"收 起"),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(Ce),{class:"jt-filter-bar__btn-reset",disabled:e.unref(u),onClick:P},{icon:e.withCtx(()=>[e.createElementVNode("img",{src:e.unref(bn),alt:""},null,8,In)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(h.value.resetBtnText??"重 置"),1)]),_:1},8,["disabled"]),e.createVNode(e.unref(Ce),{class:"jt-filter-bar__btn-query",type:"primary",disabled:e.unref(u),onClick:y},{icon:e.withCtx(()=>[e.createElementVNode("img",{src:e.unref(Sn),alt:""},null,8,Cn)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(h.value.searchBtnText??"查 询"),1)]),_:1},8,["disabled"])],!0)])]),_:2},[e.renderList(z.value,oe=>({name:oe.prop,fn:e.withCtx(()=>[e.renderSlot(L.$slots,`${oe.prop}-search`,{value:i.value[oe.prop],column:oe,setValue:ne=>V(oe.prop,ne),search:y,reset:P,disabled:e.unref(u)},void 0,!0)])}))]),1032,["configs","form-data"])]),_:3},8,["model","label-position","label-width","disabled"])],6)}}}),St=le(_n,[["__scopeId","data-v-1f6fdc4e"]]),Bn={key:1},$n={key:2},Mn={key:3},Tn=e.defineComponent({name:"JtTable",__name:"JtTable",props:{data:{},columns:{},option:{},tableEvents:{}},setup(n,{expose:t}){const o=n,r=e.useSlots(),a=e.ref(),l=e.computed(()=>o.option??{}),c=e.computed(()=>o.columns.filter(d=>!d.hide));function i(d){return!!r[`${d}-header`]}function u(d){return!!r[`${d}-data`]}function p(d){return{width:d.width,minWidth:d.minWidth,align:d.align,fixed:d.fixed,sortable:d.sortable,showOverflowTooltip:d.showOverflowTooltip,...d.columnOptions}}function O(d){return!h(d.columnOptions?.type)}function h(d){return d==="selection"||d==="index"||d==="expand"}function b(d,B){return d.find(m=>m.value===B)?.label??String(B??"")}return t({tableRef:a}),(d,B)=>{const m=J.ElTableColumn,w=J.ElTable;return e.openBlock(),e.createBlock(w,e.mergeProps({ref_key:"tableRef",ref:a,data:d.data,"row-key":l.value.rowKey??"id",height:l.value.height,"max-height":l.value.maxHeight,"empty-text":l.value.emptyText,class:"jt-table"},l.value.tableProps,e.toHandlers(d.tableEvents)),{default:e.withCtx(()=>[l.value.selection?(e.openBlock(),e.createBlock(m,{key:0,type:"selection",width:"55",align:"center"})):e.createCommentVNode("",!0),l.value.index?(e.openBlock(),e.createBlock(m,{key:1,type:"index",label:l.value.indexLabel??"序号",width:"60",align:"center"},null,8,["label"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,_=>(e.openBlock(),e.createBlock(m,e.mergeProps({key:_.prop,prop:_.prop,label:_.label,formatter:!u(_.prop)&&!_.dicData?_.formatter:void 0,ref_for:!0},p(_)),e.createSlots({_:2},[i(_.prop)?{name:"header",fn:e.withCtx(F=>[e.renderSlot(d.$slots,`${_.prop}-header`,e.mergeProps({ref_for:!0},F),void 0,!0)]),key:"0"}:void 0,O(_)?{name:"default",fn:e.withCtx(F=>[u(_.prop)?e.renderSlot(d.$slots,`${_.prop}-data`,e.mergeProps({key:0,ref_for:!0},F),void 0,!0):_.dicData?(e.openBlock(),e.createElementBlock("span",Bn,e.toDisplayString(b(_.dicData,F.row[_.prop])),1)):_.formatter?(e.openBlock(),e.createElementBlock("span",$n,e.toDisplayString(_.formatter(F.row,F.column,F.row[_.prop],F.$index)),1)):(e.openBlock(),e.createElementBlock("span",Mn,e.toDisplayString(F.row[_.prop]),1))]),key:"1"}:void 0]),1040,["prop","label","formatter"]))),128)),l.value.menu?(e.openBlock(),e.createBlock(m,{key:2,label:l.value.menuLabel??"操作",width:l.value.menuWidth,"min-width":l.value.menuMinWidth,align:l.value.menuAlign??"center",fixed:l.value.menuFixed},{default:e.withCtx(_=>[e.renderSlot(d.$slots,"menu",e.normalizeProps(e.guardReactiveProps(_)),void 0,!0)]),_:3},8,["label","width","min-width","align","fixed"])):e.createCommentVNode("",!0)]),_:3},16,["data","row-key","height","max-height","empty-text"])}}}),wt=le(Tn,[["__scopeId","data-v-513fa12d"]]),En={class:"jt-pagination"},Vn={class:"jt-pagination__count"},Dn=e.defineComponent({name:"JtPagination",__name:"JtPagination",props:{currentPage:{},pageSize:{},total:{},option:{}},emits:["update:currentPage","update:pageSize","current-change","page-change","size-change"],setup(n,{emit:t}){const o=n,r=e.computed(()=>o.option??{}),a=t;function l(c){a("current-change",c),a("page-change",c)}return(c,i)=>{const u=J.ElPagination;return e.openBlock(),e.createElementBlock("div",En,[e.createVNode(u,{"current-page":c.currentPage,"page-size":c.pageSize,"page-sizes":r.value.pageSizes??[10,20,50,100],total:c.total,layout:r.value.paginationLayout??"sizes, prev, pager, next, jumper","onUpdate:currentPage":i[0]||(i[0]=p=>c.$emit("update:currentPage",p)),"onUpdate:pageSize":i[1]||(i[1]=p=>c.$emit("update:pageSize",p)),onCurrentChange:l,onSizeChange:i[2]||(i[2]=p=>c.$emit("size-change",p))},null,8,["current-page","page-size","page-sizes","total","layout"]),e.createElementVNode("span",Vn,"共"+e.toDisplayString(c.total)+"条记录",1)])}}}),kt=le(Dn,[["__scopeId","data-v-c6e8a4b5"]]),Fn={class:"jt-crud-table"},Nn={key:1,class:"jt-crud-table__toolbar"},Pn=e.defineComponent({name:"JtCrudTable",__name:"JtCrudTable",props:e.mergeModels({columns:{},option:{default:()=>({})},data:{},total:{default:0},tableEvents:{}},{currentPage:{default:1},currentPageModifiers:{},pageSize:{default:20},pageSizeModifiers:{},searchModel:{default:()=>({})},searchModelModifiers:{}}),emits:e.mergeModels(["search","reset","page-change","size-change"],["update:currentPage","update:pageSize","update:searchModel"]),setup(n,{expose:t,emit:o}){const r=n,a=o,l=e.useModel(n,"currentPage"),c=e.useModel(n,"pageSize"),i=e.useModel(n,"searchModel"),u=e.useSlots(),p=e.ref(),O=e.ref(),h=e.computed(()=>r.option),b=e.computed(()=>h.value.searchShow!==!1),d=e.computed(()=>h.value.paginationShow!==!1),B=e.computed(()=>r.columns.filter(I=>I.search&&!!u[`${I.prop}-search`])),m=e.computed(()=>r.columns.filter(I=>!I.hide&&!!u[`${I.prop}-header`])),w=e.computed(()=>r.columns.filter(I=>!I.hide&&!!u[`${I.prop}-data`]));function _(){const I={};return r.columns.forEach($=>{$.search&&(I[$.prop]=void 0)}),I}function F(){a("search",{...i.value})}function S(){i.value=_(),a("reset")}function f(){O.value?.searchLoading()}function T(){O.value?.searchDone()}return t({tableRef:e.computed(()=>p.value?.tableRef),filterBarRef:O,searchLoading:f,searchDone:T}),(I,$)=>{const k=J.ElLoadingDirective;return e.openBlock(),e.createElementBlock("div",Fn,[e.renderSlot(I.$slots,"header",{},void 0,!0),b.value?(e.openBlock(),e.createBlock(St,{key:0,ref_key:"filterBarRef",ref:O,modelValue:i.value,"onUpdate:modelValue":$[0]||($[0]=E=>i.value=E),columns:I.columns,option:h.value,onSearch:F,onReset:S},e.createSlots({_:2},[e.renderList(B.value,E=>({name:`${E.prop}-search`,fn:e.withCtx(N=>[e.renderSlot(I.$slots,`${E.prop}-search`,e.normalizeProps(e.guardReactiveProps(N)),void 0,!0)])}))]),1032,["modelValue","columns","option"])):e.createCommentVNode("",!0),e.unref(u).toolbar?(e.openBlock(),e.createElementBlock("div",Nn,[e.renderSlot(I.$slots,"toolbar",{},void 0,!0)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(wt,{ref_key:"jtTableRef",ref:p,data:I.data,columns:I.columns,option:h.value,"table-events":I.tableEvents},e.createSlots({_:2},[e.renderList(m.value,E=>({name:`${E.prop}-header`,fn:e.withCtx(N=>[e.renderSlot(I.$slots,`${E.prop}-header`,e.normalizeProps(e.guardReactiveProps(N)),void 0,!0)])})),e.renderList(w.value,E=>({name:`${E.prop}-data`,fn:e.withCtx(N=>[e.renderSlot(I.$slots,`${E.prop}-data`,e.normalizeProps(e.guardReactiveProps(N)),void 0,!0)])})),h.value.menu?{name:"menu",fn:e.withCtx(E=>[e.renderSlot(I.$slots,"menu",e.normalizeProps(e.guardReactiveProps(E)),void 0,!0)]),key:"0"}:void 0]),1032,["data","columns","option","table-events"])),[[k,h.value.loading]]),d.value?(e.openBlock(),e.createBlock(kt,{key:2,"current-page":l.value,"onUpdate:currentPage":$[1]||($[1]=E=>l.value=E),"page-size":c.value,"onUpdate:pageSize":$[2]||($[2]=E=>c.value=E),total:I.total,option:h.value,onPageChange:$[3]||($[3]=E=>I.$emit("page-change",E)),onSizeChange:$[4]||($[4]=E=>I.$emit("size-change",E))},null,8,["current-page","page-size","total","option"])):e.createCommentVNode("",!0)])}}}),On=le(Pn,[["__scopeId","data-v-ad466273"]]),Ln={class:"jt-page-header__title"},xn={key:0},Rn={key:0,class:"jt-page-header__operates"},zn=e.defineComponent({name:"JtPageHeader",__name:"index",props:{type:{default:"section"},title:{},operates:{default:()=>[]}},emits:["operate-click"],setup(n,{emit:t}){const o=n,r=t,a=e.useSlots(),l=e.computed(()=>o.operates.length>0||!!a.operates);function c(i,u){i.onClick?.(i,u),r("operate-click",i,u)}return(i,u)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["jt-page-header",`jt-page-header--${i.type}`]},i.$attrs),[e.createElementVNode("div",Ln,[e.renderSlot(i.$slots,"title",{},()=>[i.title?(e.openBlock(),e.createElementBlock("span",xn,e.toDisplayString(i.title),1)):e.createCommentVNode("",!0)],!0)]),l.value?(e.openBlock(),e.createElementBlock("div",Rn,[e.renderSlot(i.$slots,"operates",{operates:i.operates},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.operates,p=>(e.openBlock(),e.createBlock(e.unref(Ce),e.mergeProps({key:p.key??p.label,ref_for:!0},p.buttonProps,{type:p.type,disabled:p.disabled,loading:p.loading,plain:p.plain,text:p.text,link:p.link,icon:p.icon,onClick:O=>c(p,O)}),{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(p.label),1)]),_:2},1040,["type","disabled","loading","plain","text","link","icon","onClick"]))),128))],!0)])):e.createCommentVNode("",!0)],16))}}),jn=le(zn,[["__scopeId","data-v-9e6bb356"]]),Ke=/\$\{([^}]+)\}/g;function Te(n){if(!n)return[];const t=new Set;return(n.cascadeDependFields??[]).forEach(o=>{const r=String(o??"").trim();r&&t.add(r)}),An(n.interface).forEach(o=>t.add(o)),[...t]}function An(n){if(!n||typeof n!="object")return[];const t=n.params;if(!t||typeof t!="object"||Array.isArray(t))return[];const o=new Set;return Ye(t,o),[...o]}function Ye(n,t){if(typeof n=="string"){Ke.lastIndex=0;let o=Ke.exec(n);for(;o!==null;){const r=String(o[1]??"").trim();r&&t.add(r),o=Ke.exec(n)}return}if(Array.isArray(n)){n.forEach(o=>Ye(o,t));return}!n||typeof n!="object"||Object.values(n).forEach(o=>Ye(o,t))}function Ee(n){return lt(n.type||n.fieldType||n.frontInputType)||lt(n.renderType)||"text"}function We(n){return st(n.type||n.fieldType||n.frontInputType)||st(n.renderType)||"text"}function fe(n){if(n==null)return!0;if(typeof n=="string")return n.trim()==="";if(Array.isArray(n))return n.length===0||n.every(t=>fe(t));if(n instanceof Date)return Number.isNaN(n.getTime());if(typeof File<"u"&&n instanceof File)return n.name.trim()==="";if(typeof n=="object"){const t=Object.entries(n).filter(([o])=>!o.startsWith("__"));return t.length===0||t.every(([,o])=>fe(o))}return!1}function It(n){if(n instanceof Error)return!0;if(!n||typeof n!="object")return!1;const t=n;return typeof t.message=="string"&&(typeof t.stack=="string"||t.name==="Error")}function Ct(n,t,o="-"){const r=We(n);return r==="empty"||fe(t)?o:It(t)?(console.error("[globalInfo] field value render failed",t),o):r==="select"?Jn(n,t,o):r==="switch"?_t(t)?"是":"否":r==="file"?Wn(t,o):r==="multi-row"?Zn(t,o):String(t)}function Pe(n,t){return Array.isArray(t)?t:Le(n)?typeof t=="string"?t.split(",").map(o=>o.trim()).filter(Boolean):fe(t)?[]:[t]:[t]}function Gn(n,t){return Le(n)?Pe(n,t):t}function Kn(n,t){return!Le(n)||!Array.isArray(t)?fe(t)?"":t:t.map(o=>String(o??"").trim()).filter(Boolean).join(",")}function _t(n){if(typeof n=="boolean")return n;if(typeof n=="number")return n!==0;const t=String(n??"").trim().toLowerCase();return["true","1","y","yes","t","是"].includes(t)}function Oe(n,t,o,r={}){const a=qn(r);return n.filter(l=>l.visible?!Yn(l,t,o,a,r.rows):!1)}function rt(n){return Bt(n).some(o=>["序号","index","idx","seq","seqno","serial","order","rownum","row_no"].includes(o))}function at(n){return Bt(n).includes("seqno")}function lt(n){const t=String(n??"").toLowerCase();return t==="upload"||t==="attachment"?"file":t==="radio"||t==="checkbox"?"select":t==="text"||t==="textarea"||t==="select"||t==="select_remote"||t==="date"||t==="number"||t==="switch"||t==="file"||t==="html"||t==="code"||t==="multi-row"||t==="empty"?t:""}function st(n){const t=String(n??"").toLowerCase();return t==="upload"||t==="attachment"?"file":t==="radio"||t==="checkbox"||t==="select_remote"?"select":t==="select"||t==="switch"||t==="file"||t==="html"||t==="code"||t==="multi-row"||t==="empty"?t:t==="textarea"||t==="date"||t==="number"||t==="text"?"text":""}function qn(n){return n.rows?.length?n.rows:[n.values??{}]}function Yn(n,t,o,r,a){const l=o?.hiddenRule;return l?r.some(c=>{try{const i=c[n.code];return l({field:n,section:t,values:c,allValues:c,value:i,currentValue:i,rows:a})}catch(i){return console.error("[globalInfo] hidden rule failed",i),!1}}):!1}function Bt(n){return Hn([n.id,n.key,n.code,n.name,n.label,n.prop])}function Hn(n){return Array.from(new Set(n.map(t=>Un(t)).filter(Boolean)))}function Un(n){return String(n??"").trim().toLowerCase()}function Jn(n,t,o){const r=Le(n);if(Array.isArray(t)||r){const a=Pe(n,t).map(c=>it(n,c)||String(c??"").trim()).filter(Boolean),l=r?",":"、";return a.length>0?a.join(l):o}return it(n,t)||String(t).trim()||o}function Le(n){return!!n.props?.multiple&&(Ee(n)==="select"||We(n)==="select")}function it(n,t){return n.options?.find(r=>r.value===t||String(r.value)===String(t))?.label??""}function Wn(n,t){if(Array.isArray(n)){const o=n.map(r=>ct(r)).filter(Boolean);return o.length>0?o.join("、"):t}return ct(n)||t}function ct(n){if(typeof File<"u"&&n instanceof File)return n.name;if(n&&typeof n=="object"){const t=n;return String(t.name??t.fileName??t.filename??t.url??"").trim()}return String(n??"").trim()}function Zn(n,t){return Array.isArray(n)?n.map(r=>It(r)?(console.error("[globalInfo] multi-row field item render failed",r),""):fe(r)?"":r&&typeof r=="object"?JSON.stringify(r):String(r).trim()).filter(Boolean).join(`
|
|
3
|
+
`)||t:String(n).trim()||t}function $t(n=null){return{scheme:null,node:null,topNodes:[],treeNodes:[],activeNode:null,activeSection:null,sections:[],sectionMap:{},raw:n}}function He(n){const t=Pt(n),o=Nt(t),r=lo(t).flatMap(a=>Ft(a,o));return{...$t(n),scheme:o,topNodes:r,treeNodes:r}}function Ze(n,t,o){return n.map(r=>r.key===t||r.tagId===t||r.id===t?{...r,children:o,loaded:!0}:{...r,children:Ze(r.children,t,o)})}function Mt(n,t={},o=null){const r=Pt(n),a=Nt(r,t),l=Xn(r,t,o),c=Object.fromEntries(l.map(i=>[i.key,i]));return{scheme:a,node:o,topNodes:[],treeNodes:[],activeNode:o,activeSection:l[0]??null,sections:l,sectionMap:c,raw:n}}function Tt(n){return n.multRow||n.htmlDisplay==="T"?"table":"form"}function Et(n,t={}){const o=n.renderType==="table"?n.rows.map(Ue):[Ue(n.model)],r=X(n.operationInfo),a=X(r.editInfoSet),l=X(a.params),c=X(r.queryInfoSet),i=X(c.params);return{...t,infSchmId:t.infSchmId??te(n.raw.infSchmId),emplid:t.emplid??te(n.raw.emplid),tagId:q(n.tagId||l.tagId||i.tagId||t.tagId||n.requestTagId),infSetId:t.infSetId??n.infSetId,setId:t.setId??n.setId,infSetValues:o,section:n}}function Qn(n){const t=n;return!!(t&&typeof t=="object"&&typeof t.key=="string"&&typeof t.tagId=="string")}function Vt(n){const t=Ot(n);return(Array.isArray(t)?t:$e(X(t),["options","list","records","data"])).map(r=>{const a=X(r),l=a.fieldvalue??a.fieldValue;return{id:a.id,code:a.code??l??a.value??a.id,label:q(a.label??a.name??a.descr??a.descrshort??a.text??l??a.value??a.code),name:te(a.name),value:a.value??l??a.code??a.id??a.label??a.name,raw:r}})}function Xn(n,t,o){const r=$e(n,["sections","sets","list"]);return r.length>0?r.map(a=>ut(a,t,o,r.length===1)):n.infSetMark||n.infSetFields||n.fields?[ut(n,t,o,!0)]:[]}function ut(n,t,o,r){const a=X(n),l=eo(a.infSetMark??a),c=to(a.infSetFields??a.fields??[]),i=oo(a.infSetValues??a.rows??a.data,c),u=i[0]?Ue(i[0]):Dt(c),p=X(a.tag),O=q(a.tagId??a.infTagId??p.tagId??p.infTagId??l.raw.tagId??l.raw.infTagId),h=q(t.tagId??o?.tagId),b=q(o?.key),d=r?t.infSetId??o?.infSetId:void 0,B=r?t.setId:void 0,m=r?o?.code:void 0,w=l.setId||q(a.setId),_=q(a.infSetId)||w||q(d),F=w||q(B??_),S=l.code||q(a.code??m??F),f=F||S||_||O,T={key:f,id:f,setId:F,code:S,tagId:O,requestTagId:h||void 0,ownerNodeKey:b||void 0,infSetId:_,title:l.name||q(a.name??o?.tagName??f),renderType:Tt(l),mark:l,fields:c,model:u,rows:i,operationInfo:xe(t.operationInfo??a.operationInfo),raw:a};return T.renderType==="form"&&i.length===0&&(T.rows=[{...u,__rowKey:`${f}-0`}]),T}function eo(n){const t=X(n),o=q(t.htmlDisplay||"F");return{name:q(t.name??t.title),parentName:te(t.parentName),value:te(t.value),type:te(t.type),code:q(t.code),setId:q(t.setId??t.id??t.key),htmlDisplay:o,multRow:ce(t.multRow),isRequired:ce(t.isRequired),raw:t}}function to(n){return(Array.isArray(n)?n:[]).map((o,r)=>no(o,r))}function no(n,t){const o=X(n),r=q(o.code??o.fieldCode??o.prop??o.key??`field_${t}`),a=q(o.label??o.name??o.tagName??r),l=Lt(o.interface??o.interfaceField),c=dt(o.cascadeDependFields);return{id:q(o.id??o.key??o.prop??r),key:q(o.key??o.prop??r),code:r,label:a,value:o.value??o.defaultValue??"",type:co(o),fieldType:te(o.fieldType),frontInputType:te(o.frontInputType),renderType:io(o),required:ce(o.required??o.isRequired),readonly:ce(o.readonly??o.disabled),visible:o.visible===void 0?ce(o.visibled??!0):ce(o.visible),htmlDisplay:ce(o.htmlDisplay),multRow:ce(o.multRow),isRequired:ce(o.isRequired),disabled:o.disabled===void 0?void 0:ce(o.disabled),span:zt(o.span??o.colSpan),width:ft(o.width),minWidth:ft(o.minWidth),placeholder:te(o.placeholder),options:Vt(o.options),interface:l,cascadeClearFields:dt(o.cascadeClearFields),cascadeDependFields:Te({cascadeDependFields:c,interface:l}),props:uo(o),formItemProps:xt(o.formItemProps),raw:o}}function oo(n,t){if(Array.isArray(n)&&n.some(a=>{const l=X(a);return t.some(c=>l[c.code]!==void 0||l[c.key]!==void 0)}))return n.map((a,l)=>({...X(a),__rowKey:q(X(a).__rowKey??X(a).key??l)}));const o=Dt(t);return Object.keys(o).length?[{...o,__rowKey:"0"}]:[]}function Dt(n){return n.reduce((t,o)=>(t[o.code||o.key]=o.value,t),{})}function Ft(n,t,o=""){const r=X(n),a=$e(r,["children","list","tags"]).flatMap(c=>Ft(c,t,q(r.tagId??r.id??r.key))),l=so(r.infSetList);return a.length===0&&l.length>0?l.map((c,i)=>ao(r,c,t,o,i)):[ro(r,t,o,a)]}function ro(n,t,o,r){const a=q(n.tagId??n.id??n.key),l=q(n.tagName??n.name??n.label??a);return{key:q(n.key??a),id:a,tagId:a,tagName:l,label:l,tagLevel:te(n.tagLevel??n.level)??null,level:Rt(n.tagLevel??n.level),parentTagId:te(n.parentTagId??n.parentId??o),parentId:te(n.parentTagId??n.parentId??o)??null,infSchmId:te(n.infSchmId??t?.infSchmId),schemeId:q(n.infSchmId??t?.infSchmId),infSetId:te(n.infSetId??n.setId),setId:te(n.setId),code:te(n.code),children:r,infSetList:[],operationInfo:xe(n.operationInfo),loaded:r.length>0,raw:n}}function ao(n,t,o,r,a){const l=q(n.tagId??n.id??n.key),c=q(n.tagName??n.name??n.label??l),i=t.infSetId||q(t.setId),u=t.setId||i,p=i||`${l}-${a}`;return{key:p,id:p,tagId:l,tagName:c,label:c,tagLevel:te(n.tagLevel??n.level)??null,level:Rt(n.tagLevel??n.level),parentTagId:te(n.parentTagId??n.parentId??r),parentId:te(n.parentTagId??n.parentId??r)??null,infSchmId:te(n.infSchmId??o?.infSchmId),schemeId:q(n.infSchmId??o?.infSchmId),infSetId:i,setId:u,code:te(n.code??i),children:[],infSetList:[t],operationInfo:xe(n.operationInfo),loaded:!0,raw:{...n,infSetId:i,setId:u,infSetList:[t.raw]}}}function Nt(n,t={}){const o=X(n.globalInfoSchmMark??n.scheme??n),r=q(o.infSchmId??t.infSchmId),a=q(o.emplid??t.emplid);return!r&&!a&&Object.keys(o).length===0?null:{infSchmId:r,emplid:a,id:r,mark:q(o.globalInfoSchmMark??n.globalInfoSchmMark),config:Array.isArray(n.globalInfoSchmConfig)?"":q(o.globalInfoSchmConfig??n.globalInfoSchmConfig),raw:o}}function lo(n){if(Array.isArray(n.globalInfoSchmConfig))return n.globalInfoSchmConfig;const t=X(n.globalInfoSchmConfig),o=$e(t,["children","tree","list","tags"]);return o.length?o:$e(n,["children","tree","list","tags","records"])}function so(n){return Array.isArray(n)?n.map(t=>{const o=X(t);return{infSetId:q(o.infSetId??o.setId??o.id),setId:te(o.setId),operationInfo:xe(o.operationInfo),raw:o}}):[]}function Pt(n){return X(Ot(n))}function Ot(n){const t=X(n);return t.data??t.result??n}function $e(n,t){for(const o of t){const r=n[o];if(Array.isArray(r))return r}return[]}function Ue(n){const t={...n};return delete t.__rowKey,delete t.fields,t}function Lt(n){const t=X(n);if(!(!t.method&&!t.url&&!t.params))return{...t,method:te(t.method),url:te(t.url),params:xt(t.params)}}function xe(n){const t=X(n);if(Object.keys(t).length!==0)return Object.fromEntries(Object.entries(t).map(([o,r])=>[o,Lt(r)??r]))}function dt(n){if(!Array.isArray(n))return;const t=n.map(o=>q(o)).filter(Boolean);return t.length?t:void 0}function io(n){if(ce(n.htmlDisplay))return"html";if(ce(n.multRow))return"multi-row";const t=q(n.renderType).toLowerCase();return t==="code"||t==="empty"?t:"text"}function co(n){const t=q(n.fieldType??n.type??n.frontInputType??n.renderType).toLowerCase();return t==="dtpicker"||t.includes("date")?"date":t==="select_remote"?"select_remote":t.includes("select")||t.includes("enum")||t.includes("radio")||t.includes("checkbox")?"select":t.includes("number")||t.includes("int")?"number":t.includes("bool")||t.includes("switch")?"switch":t.includes("file")||t.includes("upload")||t.includes("attachment")?"file":t.includes("textarea")||t.includes("text_area")?"textarea":"text"}function xt(n){const t=X(n);return Object.keys(t).length?t:void 0}function uo(n){const t={...X(n.props)};return n.multiple!==void 0&&(t.multiple=ce(n.multiple)),Object.keys(t).length?t:void 0}function ft(n){return typeof n=="string"||typeof n=="number"?n:void 0}function X(n){return n&&typeof n=="object"&&!Array.isArray(n)?n:{}}function q(n){return n==null?"":String(n).trim()}function te(n){return q(n)||void 0}function Rt(n){const t=zt(n);return t===void 0?null:t}function zt(n){if(n==null||n==="")return;const t=Number(n);return Number.isFinite(t)?t:void 0}function ce(n){return typeof n=="string"?["true","1","y","yes","t","是"].includes(n.toLowerCase()):!!n}const ve=n=>n.key||n.code,ue=n=>n.key||n.setId,fo=n=>String(n??"").trim(),Ve=n=>Array.from(new Set(n.map(fo).filter(Boolean))),ke=n=>!!(n&&typeof n=="object"&&"children"in n),Me=n=>Ve([n?.key,n?.id,n?.setId,n?.infSetId,n?.tagId,n?.code,...(n?.infSetList??[]).map(t=>t.infSetId),...(n?.infSetList??[]).map(t=>t.setId)]),po=n=>Ve([n.key,n.id,n.setId,n.infSetId,n.tagId,n.code]);function jt(n,t,o){const r=po(n),a=Ve([o,...Me(t)]);return a.length===0?!1:a.some(l=>r.includes(l))}function mo(n,t,o){return Ve([o,...Me(t)]).length===0?n:n.filter(a=>jt(a,t,o))}function ho(n,t,o={}){const r=Object.keys(o).length>0?o:n.model,a=typeof t=="string"?t:ve(t),l=typeof t=="string"?n.fields.find(u=>ve(u)===a||u.code===a):t,i=Te(l).some(u=>{if(u==="searchText"&&Object.prototype.hasOwnProperty.call(r,u)||u!=="searchText"&&!go(n,u))return!1;const p=r[u];return p==null||p===""});return{fieldKey:a,currentField:l,sourceModel:r,sourceRow:n.renderType==="table"?r:void 0,missingDependField:i}}function vo(n){return!!(n&&n.type!=="select_remote"&&Te(n).length===0&&(n.options??[]).length>0)}function go(n,t){return n.fields.some(o=>o.code===t||o.key===t||o.id===t||ve(o)===t)}function yo(n){return Vt(n)}const de=n=>n&&typeof n=="object"&&!Array.isArray(n)?n:{},Fe=n=>{const t=de(n);return!!(t.url||t.method||t.params)};function bo(n){const t=de(n.operationInfo).openTag;return Fe(t)?t:void 0}function So(n,t,o){const r=de(n?.operationInfo).queryInfoSet;if(Fe(r))return r;const a=t?.infSetList.find(c=>c.infSetId===o),l=de(a?.operationInfo).queryInfoSet;return Fe(l)?l:void 0}function wo(n){const t=de(n.operationInfo).editInfoSet;return Fe(t)?t:void 0}async function ko(n){const t=n.params===void 0?void 0:de(n.params);return!n.formatter||n.requestSource!=="inner"?t:n.formatter({operation:n.operation,interfaceOperation:n.field?.interface,type:n.type,requestSource:n.requestSource,tagId:n.tagId,model:{...de(n.section?.model),...de(n.model)},row:n.row,section:n.section,field:n.field,node:n.node,viewModel:n.viewModel,sections:n.sections,activeNode:n.activeNode,activeSection:n.activeSection,searchText:n.searchText,params:t})}async function Io(n){if(!n.service.requestOperation)throw new Error("[GlobalInfo] service.requestOperation is required for operationInfo");const t=n.operation.params===void 0?void 0:de(n.operation.params),o=n.context?.params===void 0?t:de(n.context.params),r=await ko({formatter:n.formatter,params:o,operation:n.operation,type:n.context?.type,requestSource:n.context?.requestSource,tagId:n.context?.tagId,section:n.context?.section,field:n.context?.field,model:n.context?.model,row:n.context?.row,node:n.context?.node,viewModel:n.viewModel,sections:n.sections,activeNode:n.activeNode,activeSection:n.activeSection,searchText:n.context?.searchText});return n.service.requestOperation({...n.operation,params:r},n.context?{...n.context,params:r}:n.context)}function _e(n={}){return{loading:!1,saving:!1,error:null,loaded:!1,editing:!1,...n}}function Co(n){const t={...n.currentMap},o={...n.currentAliasMap},r=[...n.currentOrder],a={...n.currentStatusMap},l=mo(n.nextViewModel.sections,n.node,n.targetKey),c=Ve([n.targetKey,...Me(n.node)]).length>0,i=l.find(u=>jt(u,n.node,n.targetKey))??(c?null:n.nextViewModel.activeSection??l[0]??n.activeSection??null);return l.forEach(u=>{const p=ue(u);t[p]=u,r.includes(p)||r.push(p),a[p]=_e({...a[p],loaded:!0,loading:!1,error:null,editing:n.editingSectionKeys.includes(p)})}),n.targetKey&&i?o[n.targetKey]=ue(i):n.targetKey&&(o[n.targetKey]=""),n.targetKey&&(a[n.targetKey]=_e({...a[n.targetKey],loaded:!0,loading:!1,error:null,editing:!!(i&&n.editingSectionKeys.includes(ue(i)))})),{sectionMap:t,sectionAliasMap:o,sectionOrder:r,sectionStatusMap:a,matchedSection:i,targetSections:l}}const Ie=n=>new Error(`[GlobalInfo] ${n}`),At=n=>{const t=e.ref(!1),o=e.ref(!1),r=e.ref(!1),a=e.shallowRef(null),l=e.shallowRef([]),c=e.shallowRef(null),i=e.shallowRef(null),u=e.shallowRef(null),p=e.shallowRef({}),O=e.shallowRef({}),h=e.ref([]),b=e.shallowRef({}),d=e.ref([]),B=e.computed(()=>{const v=h.value.map(M=>p.value[M]).filter(M=>!!M),g=Object.entries(p.value).filter(([M])=>!h.value.includes(M)).map(([,M])=>M);return[...v,...g]}),m=e.computed(()=>({loading:t.value,detailLoading:o.value,saving:r.value,editingSectionKeys:d.value,sectionMap:p.value,sectionStatusMap:Object.fromEntries(Object.entries(b.value).map(([v,g])=>[v,{...g,editing:d.value.includes(O.value[v]??v)}])),error:a.value})),w=()=>({adaptScene:n.adaptScene,emplid:n.emplid}),_=v=>({...w(),infSchmId:v.infSchmId,tagId:v.tagId,tagLevel:v.tagLevel,parentTagId:v.parentTagId}),F=(v=i.value,g=u.value)=>({...w(),infSchmId:v?.infSchmId,tagId:v?.tagId,infSetId:g?.infSetId??v?.infSetId,setId:g?.setId??v?.setId}),S=async(v,g)=>Io({service:n.service,formatter:n.formatOperationParams,operation:v,context:g,viewModel:c.value,sections:B.value,activeNode:i.value,activeSection:u.value}),f=(v,g)=>{if(!g)return v[0]??null;for(const M of v){if(Me(M).includes(g))return M;const A=f(M.children,g);if(A)return A}return null},T=(v=u.value)=>{if(v)return typeof v=="string"?v:ke(v)?k(v):ue(v)},I=(v=u.value)=>{const g=T(v);if(!g)return null;const M=O.value[g]??g;return p.value[M]??null},$=(v=u.value)=>{const g=T(v);if(g)return O.value[g]??g},k=(v=u.value)=>{if(v)return typeof v=="string"?v:ke(v)?v.setId??v.infSetId??v.key:ue(v)},E=(v=u.value)=>{if(ke(v))return v;if(typeof v=="string"){const g=f(l.value,v);if(g)return g;const M=I(v);return M?.ownerNodeKey?f(l.value,M.ownerNodeKey)??i.value:M||i.value&&Me(i.value).includes(v)?i.value:null}return v?.ownerNodeKey?f(l.value,v.ownerNodeKey)??i.value:i.value},N=(v=u.value)=>!v||ke(v)?null:I(v),z=(v=u.value)=>{const g=k(v);if(!g)return _e();const M=O.value[g]??g;return _e({...b.value[g],...b.value[M],editing:d.value.includes(M)})},Y=(v,g)=>{const M=k(v);M&&(b.value={...b.value,[M]:_e({...b.value[M],...g,editing:d.value.includes(M)})})},W=(v=c.value?.raw??null,g=i.value)=>{const M=B.value,A=u.value&&M.find(K=>ue(K)===ue(u.value))?u.value:null;c.value={scheme:c.value?.scheme??null,node:g,topNodes:l.value,treeNodes:l.value,activeNode:g,activeSection:A,sections:M,sectionMap:p.value,raw:v},u.value=A},x=(v,g=i.value,M)=>{const A=Co({currentMap:p.value,currentAliasMap:O.value,currentOrder:h.value,currentStatusMap:b.value,editingSectionKeys:d.value,nextViewModel:v,node:g,targetKey:M,activeSection:u.value});return p.value=A.sectionMap,O.value=A.sectionAliasMap,h.value=A.sectionOrder,b.value=A.sectionStatusMap,c.value={...v,scheme:v.scheme??c.value?.scheme??null,topNodes:l.value,treeNodes:l.value,activeNode:g,activeSection:A.matchedSection,sections:A.targetSections,sectionMap:p.value},u.value=A.matchedSection,A.matchedSection},V=(v,g)=>{const M=$(v),A=M?p.value[M]:null;if(!M||!A)return;const K=g(A);p.value={...p.value,[M]:K},u.value=ue(u.value??K)===M?K:u.value,W()},s=async(v=u.value??i.value)=>{const g=N(v),M=E(v)??i.value,A=k(v);if(!M)return null;if(!n.service.requestOperation)throw Ie("service.requestOperation is required");o.value=!0,a.value=null,Y(A??M,{loading:!0,error:null});try{const K=g?[{infSetId:g.infSetId,setId:g.setId,operationInfo:g.operationInfo,raw:g.raw}]:M.infSetList;if(K.length===0)throw Ie("node.infSetList is required");const ie=await Promise.all(K.map(async ee=>{const se=So(g,M,ee.infSetId),ge={...F(M,g),infSetId:ee.infSetId,setId:ee.setId,operationInfo:ee.operationInfo};if(se){const je=await S(se,{type:"queryInfoSet",requestSource:"inner",tagId:g?.requestTagId??g?.tagId??M.tagId,node:M,section:g,params:ge});return Mt(je,ge,M)}throw Ie("infoSet.operationInfo.queryInfoSet is required")})),ae={...ie[0],sections:ie.flatMap(ee=>ee.sections),sectionMap:Object.fromEntries(ie.flatMap(ee=>ee.sections).map(ee=>[ee.key,ee]))};return x(ae,M,A)}catch(K){throw a.value=K,Y(A??M,{loading:!1,error:K}),K}finally{o.value=!1,Y(A??M,{loading:!1})}},C=(v=u.value)=>s(v),y=(v=u.value)=>{if(!v)return null;if(!ke(v)&&typeof v!="string")return I(v);const g=k(v);return g?p.value[O.value[g]??g]??null:null},P=async(v=i.value)=>v?(await s(v),c.value):(c.value=null,u.value=null,p.value={},O.value={},h.value=[],b.value={},null),D=async v=>{const g=bo(v);if(!g)return v.children;const M=_(v),A=await S(g,{type:"openTag",requestSource:"sidebar",tagId:v.tagId,node:v,params:M});return He(A).treeNodes},R=async v=>{if(v.loaded)return v.children;const g=await D(v);return g.length>0&&(l.value=Ze(l.value,v.key,g)),g},G=async v=>{const g=typeof v=="string"?f(l.value,v):v;return g?(i.value=g,u.value=null,d.value=[],await R(g),W(c.value?.raw,g),g):null},j=async()=>{const v=n.service.templateTree;if(!v)throw Ie("service.templateTree is required");t.value=!0,a.value=null;try{const g=await v(w()),M=He(g),A=await Promise.all(M.treeNodes.map(async ie=>{const ae=await D(ie);return{...ie,children:ae,loaded:ae.length>0||ie.loaded}}));l.value=A,u.value=null,p.value={},O.value={},h.value=[],b.value={},d.value=[];const K=f(A,n.initialActiveNodeKey)??f(A);return i.value=K,c.value={...M,treeNodes:A,activeNode:K,sectionMap:p.value,sections:B.value},l.value}catch(g){throw a.value=g,g}finally{t.value=!1}},H=async()=>{const v=T();await C(u.value??i.value);const g=B.value.find(M=>ue(M)===v);return g&&(u.value=g),W(),c.value},Z=(v=u.value)=>{const g=$(v);return!!(g&&d.value.includes(g))},L=(v=u.value)=>{const g=$(v);!g||Z(g)||(d.value=[...d.value,g],Y(g,{editing:!0}))},U=(v=u.value)=>{const g=$(v);g&&(d.value=d.value.filter(M=>M!==g),Y(g,{editing:!1}))},Q=(v,g,M)=>{const A=typeof g=="string"?g:ve(g);V(v,K=>{const ae=(typeof g=="string"?K.fields.find(se=>ve(se)===A||se.code===A):g)?.cascadeClearFields??[],ee={...K.model,[A]:M};return ae.forEach(se=>{ee[se]=""}),{...K,model:ee,rows:K.renderType==="form"?[{...K.rows[0],...ee}]:K.rows,fields:K.fields.map(se=>{const ge=ve(se);return ge===A||se.code===A?{...se,value:M}:ae.includes(ge)||ae.includes(se.code)?{...se,value:""}:se})}})},oe=async(v,g,M={},A={})=>{const K=I(v);if(!K)return[];const ie={...M,...A.searchText!==void 0?{searchText:A.searchText}:{}},{fieldKey:ae,currentField:ee,sourceModel:se,sourceRow:ge,missingDependField:je}=ho(K,g,ie),Ae=ee?.interface;if(!ee||!Ae)return ee?.options??[];if(vo(ee))return ee.options??[];if(je)return V(K,we=>({...we,fields:we.fields.map(he=>ve(he)===ae||he.code===ae?{...he,options:[]}:he)})),[];const rn=await S({...Ae},{type:"fieldOptions",requestSource:"inner",tagId:K.requestTagId??K.tagId,node:E(K),section:K,field:ee,params:de(Ae.params),model:se,row:ge,searchText:A.searchText}),nt=yo(rn);return V(K,we=>({...we,fields:we.fields.map(he=>ve(he)===ae||he.code===ae?{...he,options:nt}:he)})),nt},ne=(v,g)=>{if(Array.isArray(g)){re(v,g);return}V(v,M=>({...M,model:g,rows:M.renderType==="form"?[{...M.rows[0],...g}]:M.rows,fields:M.fields.map(A=>({...A,value:g[ve(A)]}))}))},re=(v,g)=>{V(v,M=>({...M,rows:g,data:g}))},ye={loadTree:j,selectNode:G,loadDetail:P,reloadActiveSection:H,loadSection:s,reloadSection:C,getSection:y,getSectionStatus:z,startEdit:L,cancelEdit:U,updateField:Q,loadFieldOptions:oe,updateModel:ne,updateTableRows:re,saveRow:(v,g={},M=-1)=>{const K=[...I(v)?.rows??[]];K.splice(M>=0?M:K.length,M>=0?1:0,g),re(v,K)},deleteRow:(v,g)=>{const M=I(v),A=typeof g=="string"?Number(g):g,K=(M?.rows??[]).filter((ie,ae)=>ae!==A);re(v,K)},saveSection:async(v=u.value)=>{const g=T(v),M=I(v);if(!M)return null;const A=wo(M);if(!A)throw Ie("section.operationInfo.editInfoSet is required");r.value=!0,a.value=null,g&&g!==ue(M)&&Y(g,{saving:!0,error:null}),Y(M,{saving:!0,error:null});try{const{tagId:K,...ie}=F(i.value,M),ae=Et(M,ie),ee=await S(A,{type:"editInfoSet",requestSource:"inner",tagId:M.requestTagId??M.tagId,node:i.value,section:M,params:ae,model:M.model});return U(M),await C(M),ee}catch(K){throw a.value=K,g&&g!==ue(M)&&Y(g,{saving:!1,error:K}),Y(M,{saving:!1,error:K}),K}finally{r.value=!1,g&&g!==ue(M)&&Y(g,{saving:!1}),Y(M,{saving:!1})}},isEditing:Z};return e.watch(()=>n.emplid,()=>{(n.autoLoad??!0)&&j()}),e.onMounted(()=>{(n.autoLoad??!0)&&j()}),{viewModel:c,nodes:l,sections:B,sectionMap:p,sectionStatusMap:b,activeNode:i,activeSection:u,state:m,actions:ye}},_o=e.defineComponent({name:"GlobalInfoProvider",__name:"GlobalInfoProvider",props:{service:{},adaptScene:{},emplid:{},autoLoad:{type:Boolean,default:!0},initialActiveNodeKey:{},renderConfig:{},formatOperationParams:{}},setup(n){const t=n,o=At(t),{viewModel:r,nodes:a,sections:l,activeNode:c,activeSection:i,state:u,actions:p}=o;return(O,h)=>e.renderSlot(O.$slots,"default",e.normalizeProps(e.guardReactiveProps({viewModel:e.unref(r),nodes:e.unref(a),sections:e.unref(l),activeNode:e.unref(c),activeSection:e.unref(i),state:e.unref(u),actions:e.unref(p),renderConfig:t.renderConfig})))}});function Gt(n,t){t=t||(()=>"default-use-queue-sync");const o=new Map;async function r(...a){const l=t(...a),c=Symbol("single");return o.set(l,c),new Promise((i,u)=>{n(...a).then(p=>{o.get(l)===c&&i(p)}).catch(p=>{o.get(l)===c&&u(p)})})}return r.bind(n)}var Re=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ze(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Kt={exports:{}};(function(n,t){(function(o,r){n.exports=r()})(Re,function(){var o=1e3,r=6e4,a=36e5,l="millisecond",c="second",i="minute",u="hour",p="day",O="week",h="month",b="quarter",d="year",B="date",m="Invalid Date",w=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,_=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,F={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(x){var V=["th","st","nd","rd"],s=x%100;return"["+x+(V[(s-20)%10]||V[s]||V[0])+"]"}},S=function(x,V,s){var C=String(x);return!C||C.length>=V?x:""+Array(V+1-C.length).join(s)+x},f={s:S,z:function(x){var V=-x.utcOffset(),s=Math.abs(V),C=Math.floor(s/60),y=s%60;return(V<=0?"+":"-")+S(C,2,"0")+":"+S(y,2,"0")},m:function x(V,s){if(V.date()<s.date())return-x(s,V);var C=12*(s.year()-V.year())+(s.month()-V.month()),y=V.clone().add(C,h),P=s-y<0,D=V.clone().add(C+(P?-1:1),h);return+(-(C+(s-y)/(P?y-D:D-y))||0)},a:function(x){return x<0?Math.ceil(x)||0:Math.floor(x)},p:function(x){return{M:h,y:d,w:O,d:p,D:B,h:u,m:i,s:c,ms:l,Q:b}[x]||String(x||"").toLowerCase().replace(/s$/,"")},u:function(x){return x===void 0}},T="en",I={};I[T]=F;var $="$isDayjsObject",k=function(x){return x instanceof Y||!(!x||!x[$])},E=function x(V,s,C){var y;if(!V)return T;if(typeof V=="string"){var P=V.toLowerCase();I[P]&&(y=P),s&&(I[P]=s,y=P);var D=V.split("-");if(!y&&D.length>1)return x(D[0])}else{var R=V.name;I[R]=V,y=R}return!C&&y&&(T=y),y||!C&&T},N=function(x,V){if(k(x))return x.clone();var s=typeof V=="object"?V:{};return s.date=x,s.args=arguments,new Y(s)},z=f;z.l=E,z.i=k,z.w=function(x,V){return N(x,{locale:V.$L,utc:V.$u,x:V.$x,$offset:V.$offset})};var Y=function(){function x(s){this.$L=E(s.locale,null,!0),this.parse(s),this.$x=this.$x||s.x||{},this[$]=!0}var V=x.prototype;return V.parse=function(s){this.$d=function(C){var y=C.date,P=C.utc;if(y===null)return new Date(NaN);if(z.u(y))return new Date;if(y instanceof Date)return new Date(y);if(typeof y=="string"&&!/Z$/i.test(y)){var D=y.match(w);if(D){var R=D[2]-1||0,G=(D[7]||"0").substring(0,3);return P?new Date(Date.UTC(D[1],R,D[3]||1,D[4]||0,D[5]||0,D[6]||0,G)):new Date(D[1],R,D[3]||1,D[4]||0,D[5]||0,D[6]||0,G)}}return new Date(y)}(s),this.init()},V.init=function(){var s=this.$d;this.$y=s.getFullYear(),this.$M=s.getMonth(),this.$D=s.getDate(),this.$W=s.getDay(),this.$H=s.getHours(),this.$m=s.getMinutes(),this.$s=s.getSeconds(),this.$ms=s.getMilliseconds()},V.$utils=function(){return z},V.isValid=function(){return this.$d.toString()!==m},V.isSame=function(s,C){var y=N(s);return this.startOf(C)<=y&&y<=this.endOf(C)},V.isAfter=function(s,C){return N(s)<this.startOf(C)},V.isBefore=function(s,C){return this.endOf(C)<N(s)},V.$g=function(s,C,y){return z.u(s)?this[C]:this.set(y,s)},V.unix=function(){return Math.floor(this.valueOf()/1e3)},V.valueOf=function(){return this.$d.getTime()},V.startOf=function(s,C){var y=this,P=!!z.u(C)||C,D=z.p(s),R=function(oe,ne){var re=z.w(y.$u?Date.UTC(y.$y,ne,oe):new Date(y.$y,ne,oe),y);return P?re:re.endOf(p)},G=function(oe,ne){return z.w(y.toDate()[oe].apply(y.toDate("s"),(P?[0,0,0,0]:[23,59,59,999]).slice(ne)),y)},j=this.$W,H=this.$M,Z=this.$D,L="set"+(this.$u?"UTC":"");switch(D){case d:return P?R(1,0):R(31,11);case h:return P?R(1,H):R(0,H+1);case O:var U=this.$locale().weekStart||0,Q=(j<U?j+7:j)-U;return R(P?Z-Q:Z+(6-Q),H);case p:case B:return G(L+"Hours",0);case u:return G(L+"Minutes",1);case i:return G(L+"Seconds",2);case c:return G(L+"Milliseconds",3);default:return this.clone()}},V.endOf=function(s){return this.startOf(s,!1)},V.$set=function(s,C){var y,P=z.p(s),D="set"+(this.$u?"UTC":""),R=(y={},y[p]=D+"Date",y[B]=D+"Date",y[h]=D+"Month",y[d]=D+"FullYear",y[u]=D+"Hours",y[i]=D+"Minutes",y[c]=D+"Seconds",y[l]=D+"Milliseconds",y)[P],G=P===p?this.$D+(C-this.$W):C;if(P===h||P===d){var j=this.clone().set(B,1);j.$d[R](G),j.init(),this.$d=j.set(B,Math.min(this.$D,j.daysInMonth())).$d}else R&&this.$d[R](G);return this.init(),this},V.set=function(s,C){return this.clone().$set(s,C)},V.get=function(s){return this[z.p(s)]()},V.add=function(s,C){var y,P=this;s=Number(s);var D=z.p(C),R=function(H){var Z=N(P);return z.w(Z.date(Z.date()+Math.round(H*s)),P)};if(D===h)return this.set(h,this.$M+s);if(D===d)return this.set(d,this.$y+s);if(D===p)return R(1);if(D===O)return R(7);var G=(y={},y[i]=r,y[u]=a,y[c]=o,y)[D]||1,j=this.$d.getTime()+s*G;return z.w(j,this)},V.subtract=function(s,C){return this.add(-1*s,C)},V.format=function(s){var C=this,y=this.$locale();if(!this.isValid())return y.invalidDate||m;var P=s||"YYYY-MM-DDTHH:mm:ssZ",D=z.z(this),R=this.$H,G=this.$m,j=this.$M,H=y.weekdays,Z=y.months,L=y.meridiem,U=function(ne,re,pe,me){return ne&&(ne[re]||ne(C,P))||pe[re].slice(0,me)},Q=function(ne){return z.s(R%12||12,ne,"0")},oe=L||function(ne,re,pe){var me=ne<12?"AM":"PM";return pe?me.toLowerCase():me};return P.replace(_,function(ne,re){return re||function(pe){switch(pe){case"YY":return String(C.$y).slice(-2);case"YYYY":return z.s(C.$y,4,"0");case"M":return j+1;case"MM":return z.s(j+1,2,"0");case"MMM":return U(y.monthsShort,j,Z,3);case"MMMM":return U(Z,j);case"D":return C.$D;case"DD":return z.s(C.$D,2,"0");case"d":return String(C.$W);case"dd":return U(y.weekdaysMin,C.$W,H,2);case"ddd":return U(y.weekdaysShort,C.$W,H,3);case"dddd":return H[C.$W];case"H":return String(R);case"HH":return z.s(R,2,"0");case"h":return Q(1);case"hh":return Q(2);case"a":return oe(R,G,!0);case"A":return oe(R,G,!1);case"m":return String(G);case"mm":return z.s(G,2,"0");case"s":return String(C.$s);case"ss":return z.s(C.$s,2,"0");case"SSS":return z.s(C.$ms,3,"0");case"Z":return D}return null}(ne)||D.replace(":","")})},V.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},V.diff=function(s,C,y){var P,D=this,R=z.p(C),G=N(s),j=(G.utcOffset()-this.utcOffset())*r,H=this-G,Z=function(){return z.m(D,G)};switch(R){case d:P=Z()/12;break;case h:P=Z();break;case b:P=Z()/3;break;case O:P=(H-j)/6048e5;break;case p:P=(H-j)/864e5;break;case u:P=H/a;break;case i:P=H/r;break;case c:P=H/o;break;default:P=H}return y?P:z.a(P)},V.daysInMonth=function(){return this.endOf(h).$D},V.$locale=function(){return I[this.$L]},V.locale=function(s,C){if(!s)return this.$L;var y=this.clone(),P=E(s,C,!0);return P&&(y.$L=P),y},V.clone=function(){return z.w(this.$d,this)},V.toDate=function(){return new Date(this.valueOf())},V.toJSON=function(){return this.isValid()?this.toISOString():null},V.toISOString=function(){return this.$d.toISOString()},V.toString=function(){return this.$d.toUTCString()},x}(),W=Y.prototype;return N.prototype=W,[["$ms",l],["$s",c],["$m",i],["$H",u],["$W",p],["$M",h],["$y",d],["$D",B]].forEach(function(x){W[x[1]]=function(V){return this.$g(V,x[0],x[1])}}),N.extend=function(x,V){return x.$i||(x(V,Y,N),x.$i=!0),N},N.locale=E,N.isDayjs=k,N.unix=function(x){return N(1e3*x)},N.en=I[T],N.Ls=I,N.p={},N})})(Kt);var Bo=Kt.exports;const Qe=ze(Bo);var qt={exports:{}};(function(n,t){(function(o,r){n.exports=r()})(Re,function(){var o={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},r=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,a=/\d/,l=/\d\d/,c=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,u={},p=function(w){return(w=+w)+(w>68?1900:2e3)},O=function(w){return function(_){this[w]=+_}},h=[/[+-]\d\d:?(\d\d)?|Z/,function(w){(this.zone||(this.zone={})).offset=function(_){if(!_||_==="Z")return 0;var F=_.match(/([+-]|\d\d)/g),S=60*F[1]+(+F[2]||0);return S===0?0:F[0]==="+"?-S:S}(w)}],b=function(w){var _=u[w];return _&&(_.indexOf?_:_.s.concat(_.f))},d=function(w,_){var F,S=u.meridiem;if(S){for(var f=1;f<=24;f+=1)if(w.indexOf(S(f,0,_))>-1){F=f>12;break}}else F=w===(_?"pm":"PM");return F},B={A:[i,function(w){this.afternoon=d(w,!1)}],a:[i,function(w){this.afternoon=d(w,!0)}],Q:[a,function(w){this.month=3*(w-1)+1}],S:[a,function(w){this.milliseconds=100*+w}],SS:[l,function(w){this.milliseconds=10*+w}],SSS:[/\d{3}/,function(w){this.milliseconds=+w}],s:[c,O("seconds")],ss:[c,O("seconds")],m:[c,O("minutes")],mm:[c,O("minutes")],H:[c,O("hours")],h:[c,O("hours")],HH:[c,O("hours")],hh:[c,O("hours")],D:[c,O("day")],DD:[l,O("day")],Do:[i,function(w){var _=u.ordinal,F=w.match(/\d+/);if(this.day=F[0],_)for(var S=1;S<=31;S+=1)_(S).replace(/\[|\]/g,"")===w&&(this.day=S)}],w:[c,O("week")],ww:[l,O("week")],M:[c,O("month")],MM:[l,O("month")],MMM:[i,function(w){var _=b("months"),F=(b("monthsShort")||_.map(function(S){return S.slice(0,3)})).indexOf(w)+1;if(F<1)throw new Error;this.month=F%12||F}],MMMM:[i,function(w){var _=b("months").indexOf(w)+1;if(_<1)throw new Error;this.month=_%12||_}],Y:[/[+-]?\d+/,O("year")],YY:[l,function(w){this.year=p(w)}],YYYY:[/\d{4}/,O("year")],Z:h,ZZ:h};function m(w){var _,F;_=w,F=u&&u.formats;for(var S=(w=_.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(N,z,Y){var W=Y&&Y.toUpperCase();return z||F[Y]||o[Y]||F[W].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(x,V,s){return V||s.slice(1)})})).match(r),f=S.length,T=0;T<f;T+=1){var I=S[T],$=B[I],k=$&&$[0],E=$&&$[1];S[T]=E?{regex:k,parser:E}:I.replace(/^\[|\]$/g,"")}return function(N){for(var z={},Y=0,W=0;Y<f;Y+=1){var x=S[Y];if(typeof x=="string")W+=x.length;else{var V=x.regex,s=x.parser,C=N.slice(W),y=V.exec(C)[0];s.call(z,y),N=N.replace(y,"")}}return function(P){var D=P.afternoon;if(D!==void 0){var R=P.hours;D?R<12&&(P.hours+=12):R===12&&(P.hours=0),delete P.afternoon}}(z),z}}return function(w,_,F){F.p.customParseFormat=!0,w&&w.parseTwoDigitYear&&(p=w.parseTwoDigitYear);var S=_.prototype,f=S.parse;S.parse=function(T){var I=T.date,$=T.utc,k=T.args;this.$u=$;var E=k[1];if(typeof E=="string"){var N=k[2]===!0,z=k[3]===!0,Y=N||z,W=k[2];z&&(W=k[2]),u=this.$locale(),!N&&W&&(u=F.Ls[W]),this.$d=function(C,y,P,D){try{if(["x","X"].indexOf(y)>-1)return new Date((y==="X"?1e3:1)*C);var R=m(y)(C),G=R.year,j=R.month,H=R.day,Z=R.hours,L=R.minutes,U=R.seconds,Q=R.milliseconds,oe=R.zone,ne=R.week,re=new Date,pe=H||(G||j?1:re.getDate()),me=G||re.getFullYear(),Se=0;G&&!j||(Se=j>0?j-1:re.getMonth());var ye,v=Z||0,g=L||0,M=U||0,A=Q||0;return oe?new Date(Date.UTC(me,Se,pe,v,g,M,A+60*oe.offset*1e3)):P?new Date(Date.UTC(me,Se,pe,v,g,M,A)):(ye=new Date(me,Se,pe,v,g,M,A),ne&&(ye=D(ye).week(ne).toDate()),ye)}catch{return new Date("")}}(I,E,$,F),this.init(),W&&W!==!0&&(this.$L=this.locale(W).$L),Y&&I!=this.format(E)&&(this.$d=new Date("")),u={}}else if(E instanceof Array)for(var x=E.length,V=1;V<=x;V+=1){k[1]=E[V-1];var s=F.apply(this,k);if(s.isValid()){this.$d=s.$d,this.$L=s.$L,this.init();break}V===x&&(this.$d=new Date(""))}else f.call(this,T)}}})})(qt);var $o=qt.exports;const Mo=ze($o);var Yt={exports:{}};(function(n,t){(function(o,r){n.exports=r()})(Re,function(){var o={year:0,month:1,day:2,hour:3,minute:4,second:5},r={};return function(a,l,c){var i,u=function(b,d,B){B===void 0&&(B={});var m=new Date(b),w=function(_,F){F===void 0&&(F={});var S=F.timeZoneName||"short",f=_+"|"+S,T=r[f];return T||(T=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:_,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:S}),r[f]=T),T}(d,B);return w.formatToParts(m)},p=function(b,d){for(var B=u(b,d),m=[],w=0;w<B.length;w+=1){var _=B[w],F=_.type,S=_.value,f=o[F];f>=0&&(m[f]=parseInt(S,10))}var T=m[3],I=T===24?0:T,$=m[0]+"-"+m[1]+"-"+m[2]+" "+I+":"+m[4]+":"+m[5]+":000",k=+b;return(c.utc($).valueOf()-(k-=k%1e3))/6e4},O=l.prototype;O.tz=function(b,d){b===void 0&&(b=i);var B,m=this.utcOffset(),w=this.toDate(),_=w.toLocaleString("en-US",{timeZone:b}),F=Math.round((w-new Date(_))/1e3/60),S=15*-Math.round(w.getTimezoneOffset()/15)-F;if(!Number(S))B=this.utcOffset(0,d);else if(B=c(_,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(S,!0),d){var f=B.utcOffset();B=B.add(m-f,"minute")}return B.$x.$timezone=b,B},O.offsetName=function(b){var d=this.$x.$timezone||c.tz.guess(),B=u(this.valueOf(),d,{timeZoneName:b}).find(function(m){return m.type.toLowerCase()==="timezonename"});return B&&B.value};var h=O.startOf;O.startOf=function(b,d){if(!this.$x||!this.$x.$timezone)return h.call(this,b,d);var B=c(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return h.call(B,b,d).tz(this.$x.$timezone,!0)},c.tz=function(b,d,B){var m=B&&d,w=B||d||i,_=p(+c(),w);if(typeof b!="string")return c(b).tz(w);var F=function(I,$,k){var E=I-60*$*1e3,N=p(E,k);if($===N)return[E,$];var z=p(E-=60*(N-$)*1e3,k);return N===z?[E,N]:[I-60*Math.min(N,z)*1e3,Math.max(N,z)]}(c.utc(b,m).valueOf(),_,w),S=F[0],f=F[1],T=c(S).utcOffset(f);return T.$x.$timezone=w,T},c.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},c.tz.setDefault=function(b){i=b}}})})(Yt);var To=Yt.exports;const Eo=ze(To);var Ht={exports:{}};(function(n,t){(function(o,r){n.exports=r()})(Re,function(){var o="minute",r=/[+-]\d\d(?::?\d\d)?/g,a=/([+-]|\d\d)/g;return function(l,c,i){var u=c.prototype;i.utc=function(m){var w={date:m,utc:!0,args:arguments};return new c(w)},u.utc=function(m){var w=i(this.toDate(),{locale:this.$L,utc:!0});return m?w.add(this.utcOffset(),o):w},u.local=function(){return i(this.toDate(),{locale:this.$L,utc:!1})};var p=u.parse;u.parse=function(m){m.utc&&(this.$u=!0),this.$utils().u(m.$offset)||(this.$offset=m.$offset),p.call(this,m)};var O=u.init;u.init=function(){if(this.$u){var m=this.$d;this.$y=m.getUTCFullYear(),this.$M=m.getUTCMonth(),this.$D=m.getUTCDate(),this.$W=m.getUTCDay(),this.$H=m.getUTCHours(),this.$m=m.getUTCMinutes(),this.$s=m.getUTCSeconds(),this.$ms=m.getUTCMilliseconds()}else O.call(this)};var h=u.utcOffset;u.utcOffset=function(m,w){var _=this.$utils().u;if(_(m))return this.$u?0:_(this.$offset)?h.call(this):this.$offset;if(typeof m=="string"&&(m=function(T){T===void 0&&(T="");var I=T.match(r);if(!I)return null;var $=(""+I[0]).match(a)||["-",0,0],k=$[0],E=60*+$[1]+ +$[2];return E===0?0:k==="+"?E:-E}(m),m===null))return this;var F=Math.abs(m)<=16?60*m:m;if(F===0)return this.utc(w);var S=this.clone();if(w)return S.$offset=F,S.$u=!1,S;var f=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();return(S=this.local().add(F+f,o)).$offset=F,S.$x.$localOffset=f,S};var b=u.format;u.format=function(m){var w=m||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return b.call(this,w)},u.valueOf=function(){var m=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*m},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var d=u.toDate;u.toDate=function(m){return m==="s"&&this.$offset?i(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():d.call(this)};var B=u.diff;u.diff=function(m,w,_){if(m&&this.$u===m.$u)return B.call(this,m,w,_);var F=this.local(),S=i(m).local();return B.call(F,S,w,_)}}})})(Ht);var Vo=Ht.exports;const Do=ze(Vo);Qe.extend(Do);Qe.extend(Eo);Qe.extend(Mo);const Fo=["disabled","accept","multiple"],No={key:0,class:"global-info-field-control__file-text"},Po={key:1,class:"global-info-field-control__file-upload"},Oo=e.defineComponent({name:"GlobalInfoFieldControl",__name:"GlobalInfoFieldControl",props:{field:{},modelValue:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change","loadOptions"],setup(n,{emit:t}){const o=n,r=t,a=["textarea","html","code","multi-row"],l=e.computed(()=>Ee(o.field)),c=e.computed(()=>l.value==="select_remote"),i=e.computed(()=>o.disabled||o.field.disabled||o.field.readonly),u=e.computed(()=>o.modelValue===void 0||o.modelValue===null?"":String(o.modelValue)),p=e.computed(()=>{if(o.modelValue===void 0||o.modelValue===null||o.modelValue==="")return;const $=typeof o.modelValue=="number"?o.modelValue:Number(o.modelValue);return Number.isFinite($)?$:void 0}),O=e.computed(()=>Gn(o.field,o.modelValue)),h=e.computed(()=>{const $=o.field.props?.activeValue??o.field.props?.["active-value"],k=o.field.props?.inactiveValue??o.field.props?.["inactive-value"];return $!==void 0||k!==void 0?o.modelValue??k??!1:_t(o.modelValue)}),b=e.computed(()=>l.value==="code"?5:3),d=e.computed(()=>l.value==="file"&&!fe(o.modelValue)),B=e.computed(()=>Ct(o.field,o.modelValue,"请选择文件")),m=e.computed(()=>o.field.placeholder?o.field.placeholder:l.value==="select_remote"?"请输入关键词":l.value==="select"?"请选择":l.value==="date"?"请选择日期":l.value==="file"?"请选择文件":"请输入");let w;function _($){r("update:modelValue",S($))}function F($){r("change",S($))}function S($){return l.value==="select"||l.value==="select_remote"?Kn(o.field,$):$}function f($){$&&r("loadOptions",c.value?{searchText:""}:void 0)}function T($){c.value&&(w&&clearTimeout(w),w=setTimeout(()=>{r("loadOptions",{searchText:$})},300))}e.onBeforeUnmount(()=>{w&&clearTimeout(w)});function I($){const k=$.target,E=Array.from(k.files??[]),N=o.field.props?.multiple?E:E[0]??null;_(N),F(N)}return($,k)=>{const E=J.ElOption,N=J.ElSelect,z=J.ElDatePicker,Y=J.ElInputNumber,W=J.ElSwitch,x=J.ElInput;return l.value==="select"||l.value==="select_remote"?(e.openBlock(),e.createBlock(N,e.mergeProps({key:0,class:"global-info-field-control"},$.field.props,{"model-value":O.value,placeholder:m.value,disabled:i.value,filterable:c.value||!!$.field.props?.filterable,remote:c.value||!!$.field.props?.remote,"remote-method":c.value?T:$.field.props?.remoteMethod,clearable:"",onVisibleChange:f,"onUpdate:modelValue":_,onChange:F}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.field.options||[],V=>(e.openBlock(),e.createBlock(E,{key:String(V.value),label:V.label,value:V.value},null,8,["label","value"]))),128))]),_:1},16,["model-value","placeholder","disabled","filterable","remote","remote-method"])):l.value==="date"?(e.openBlock(),e.createBlock(z,e.mergeProps({key:1,class:"global-info-field-control"},$.field.props,{"model-value":$.modelValue,placeholder:m.value,disabled:i.value,type:"date","value-format":"YYYY-MM-DD","onUpdate:modelValue":_,onChange:F}),null,16,["model-value","placeholder","disabled"])):l.value==="number"?(e.openBlock(),e.createBlock(Y,e.mergeProps({key:2,class:"global-info-field-control"},$.field.props,{"model-value":p.value,placeholder:m.value,disabled:i.value,"controls-position":"right","onUpdate:modelValue":_,onChange:F}),null,16,["model-value","placeholder","disabled"])):l.value==="switch"?(e.openBlock(),e.createBlock(W,e.mergeProps({key:3,class:"global-info-field-control global-info-field-control--switch"},$.field.props,{"model-value":h.value,disabled:i.value,"onUpdate:modelValue":_,onChange:F}),null,16,["model-value","disabled"])):l.value==="file"?(e.openBlock(),e.createElementBlock("label",{key:4,class:e.normalizeClass(["global-info-field-control global-info-field-control--file",{"is-disabled":i.value,"is-empty":!d.value,"is-filled":d.value}])},[e.createElementVNode("input",{class:"global-info-field-control__file-input",type:"file",disabled:i.value,accept:String($.field.props?.accept??""),multiple:!!$.field.props?.multiple,onChange:I},null,40,Fo),d.value?(e.openBlock(),e.createElementBlock("span",No,e.toDisplayString(B.value),1)):(e.openBlock(),e.createElementBlock("span",Po,"上 传"))],2)):l.value==="empty"?(e.openBlock(),e.createBlock(x,{key:5,class:"global-info-field-control","model-value":"",disabled:"",placeholder:"-"})):(e.openBlock(),e.createBlock(x,e.mergeProps({key:6,class:["global-info-field-control",{"global-info-field-control--code":l.value==="code"}]},$.field.props,{"model-value":u.value,placeholder:m.value,disabled:i.value,type:a.includes(l.value)?"textarea":"text",rows:a.includes(l.value)?b.value:void 0,"onUpdate:modelValue":_,onChange:F}),null,16,["class","model-value","placeholder","disabled","type","rows"]))}}}),Xe=le(Oo,[["__scopeId","data-v-88c12ee8"]]),Lo=["innerHTML"],xo={key:1,class:"global-info-field-value global-info-field-value--code"},Ro=e.defineComponent({name:"GlobalInfoFieldValue",__name:"GlobalInfoFieldValue",props:{field:{},value:{},emptyText:{default:"-"}},setup(n){const t=n,o=e.computed(()=>We(t.field)),r=e.computed(()=>o.value==="empty"||fe(t.value)),a=e.computed(()=>Ct(t.field,t.value,t.emptyText));return(l,c)=>o.value==="html"&&!r.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"global-info-field-value global-info-field-value--html",innerHTML:a.value},null,8,Lo)):o.value==="code"&&!r.value?(e.openBlock(),e.createElementBlock("pre",xo,e.toDisplayString(a.value),1)):(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass(["global-info-field-value",{"global-info-field-value--multi-row":o.value==="multi-row","global-info-field-value--file":o.value==="file"&&!r.value}])},e.toDisplayString(a.value),3))}}),et=le(Ro,[["__scopeId","data-v-08b37e58"]]);function tt(n){const t=Ee(n);return(t==="select"||t==="select_remote")&&!!n.interface}function be(n,t,o={},r=""){const a=t.key||t.id||t.code,c=Te(t).map(i=>`${i}:${String(o[i]??"")}`).join("|");return[n,r,a,c].join("::")}function Ne(n,t,o){return Array.isArray(n.options)&&n.options.length>0?t===o?!0:!t&&Te(n).length===0:!1}function Ut(n={}){return Object.prototype.hasOwnProperty.call(n,"searchText")}function Jt(n,t,o){const r=Ee(n);return tt(n)?o?!0:!fe(t):!1}function Wt(n,t){return Ee(n)!=="select_remote"?{}:{searchText:t==null?"":String(t)}}const zo={class:"global-info-form-renderer__label"},jo={key:0,class:"global-info-form-renderer__required"},Ao=e.defineComponent({name:"GlobalInfoFormRenderer",__name:"GlobalInfoFormRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},model:{},onUpdateModel:{type:Function},renderConfig:{}},setup(n){const t=n,o=e.useSlots(),r=e.computed(()=>t.model??t.section.model),a=new Map,l=e.computed(()=>Oe(t.section.fields,t.section,t.renderConfig,{values:r.value})),c=Gt(async(f,T,I)=>t.actions.loadFieldOptions(t.section,f,T,I),f=>`${t.section.key}:${_(f)}`);function i(f,T){const I={...r.value,[f.code]:T};(f.cascadeClearFields??[]).forEach($=>{I[$]=""}),t.onUpdateModel?.(I),t.onUpdateModel||t.actions.updateField(t.section,f,T),u(f,T,I)}function u(f,T,I){const $=t.renderConfig?.onFieldBusinessChange;if($)try{const k=p(f,T),E={field:f,value:T,section:t.section,model:I,values:I,node:t.node,activeNode:t.node,sections:O(),sectionValues:h(t.section,I),actions:t.actions,selectedOption:k[0],selectedOptions:k};Promise.resolve($(E)).catch(N=>{console.error("[GlobalInfoFormRenderer] field business change failed",N)})}catch(k){console.error("[GlobalInfoFormRenderer] field business change failed",k)}}function p(f,T){const I=Pe(f,T);return(f.options??[]).filter($=>I.some(k=>$.value===k||String($.value)===String(k)))}function O(){return Object.values(t.state.sectionMap)}function h(f,T){const $=O().flatMap(k=>{const E=k.key===f.key?T:k.renderType==="table"?k.rows:k.model;return[k.key,k.id,k.setId,k.infSetId,k.code].filter(Boolean).map(N=>[String(N),E])});return Object.fromEntries($)}async function b(f,T={}){const I=r.value,$=_(f),k=be(t.section.key,f,I),E=a.get($);if(!Ut(T)&&Ne(f,E,k)){a.set($,k);return}try{if(T.searchText!==void 0){await c(f,I,T);return}await t.actions.loadFieldOptions(t.section,f,I,T)}catch(z){console.error("[GlobalInfoFormRenderer] load field options failed",z)}}async function d(){for(const f of l.value){const T=r.value[f.code];if(!F(f,T))continue;const I=be(t.section.key,f,r.value),$=_(f),k=a.get($);if(Ne(f,k,I)){a.set($,I);continue}k!==I&&(a.set($,I),await b(f,Wt(f,T)))}}e.watch(()=>t.section.key,()=>{a.clear()}),e.watch(()=>t.editing,()=>{d()},{immediate:!0}),e.watch(()=>l.value.filter(f=>tt(f)).map(f=>be(t.section.key,f,r.value)).join("||"),()=>{d()});function B(f){const T=r.value[f.code];return{field:f,section:t.section,sectionView:t.section,node:t.node,editing:t.editing,modelValue:T,value:T,state:t.state,actions:t.actions,updateModelValue:I=>i(f,I)}}function m(f){const T=String(f.id||f.key||f.code||"").trim(),I=T?`field-${T}`:"";if(I&&o[I])return I;const $=I.toLowerCase();return $!==I&&o[$]?$:""}function w(f){return f.span?Math.min(Math.max(f.span,1),24):6}function _(f){return f.key||f.id||f.code}function F(f,T){return Jt(f,T,t.editing)}function S(f){return f.required||f.isRequired}return(f,T)=>{const I=J.ElFormItem,$=J.ElCol,k=J.ElRow,E=J.ElForm;return e.openBlock(),e.createBlock(E,{class:"global-info-form-renderer",model:r.value,"label-position":"top"},{default:e.withCtx(()=>[e.createVNode(k,{gutter:24},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,N=>(e.openBlock(),e.createBlock($,{key:_(N),span:w(N)},{default:e.withCtx(()=>[e.createVNode(I,e.mergeProps({prop:N.code,ref_for:!0},N.formItemProps),{label:e.withCtx(()=>[e.createElementVNode("span",zo,[S(N)?(e.openBlock(),e.createElementBlock("span",jo,"*")):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(N.label),1)])]),default:e.withCtx(()=>[m(N)?e.renderSlot(f.$slots,m(N),e.mergeProps({key:0,ref_for:!0},B(N)),void 0,!0):f.editing&&!N.readonly?(e.openBlock(),e.createBlock(Xe,{key:1,field:N,"model-value":r.value[N.code],section:f.section,onLoadOptions:z=>b(N,z),"onUpdate:modelValue":z=>i(N,z)},null,8,["field","model-value","section","onLoadOptions","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(et,{key:2,field:N,value:r.value[N.code],section:f.section},null,8,["field","value","section"]))]),_:2},1040,["prop"])]),_:2},1032,["span"]))),128))]),_:3})]),_:3},8,["model"])}}}),Zt=le(Ao,[["__scopeId","data-v-b8fd23a4"]]),Qt=e.defineComponent({name:"GlobalInfoDeleteConfirm",__name:"GlobalInfoDeleteConfirm",props:{title:{default:"确认删除吗?"},confirmText:{default:"确认"},cancelText:{default:"取消"}},emits:["confirm","cancel"],setup(n){return(t,o)=>{const r=J.ElPopconfirm;return e.openBlock(),e.createBlock(r,{title:t.title,"confirm-button-text":t.confirmText,"cancel-button-text":t.cancelText,width:"240","popper-class":"global-info-delete-confirm",onConfirm:o[0]||(o[0]=a=>t.$emit("confirm")),onCancel:o[1]||(o[1]=a=>t.$emit("cancel"))},{reference:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},8,["title","confirm-button-text","cancel-button-text"])}}}),Go={class:"global-info-table-renderer__table-scroll"},Ko={class:"global-info-table-renderer__header"},qo={key:0,class:"global-info-table-renderer__required"},Yo=e.defineComponent({name:"GlobalInfoTableRenderer",__name:"GlobalInfoTableRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},showAdd:{type:Boolean,default:!0},showDelete:{type:Boolean,default:!0},renderConfig:{}},setup(n){const t=n,o=e.useSlots(),r=e.computed(()=>t.section.fields.some(s=>at(s))),a=e.computed(()=>r.value),l=e.computed(()=>t.renderConfig?.sequenceLabel??"序号"),c=e.computed(()=>t.renderConfig?.sequenceWidth??56),i=e.computed(()=>{const s=t.renderConfig?.sequenceStart;return typeof s=="number"&&Number.isFinite(s)?s:1}),u=e.computed(()=>{const s=Oe(t.section.fields,t.section,t.renderConfig,{rows:t.section.rows,values:t.section.model});return a.value?s.filter(C=>!z(C)):s}),p=new Map,O=Gt(async(s,C,y)=>t.actions.loadFieldOptions(t.section,s,C,y),(s,C)=>`${t.section.key}:${x(C)}:${E(s)}`);function h(s){t.actions.deleteRow(t.section,s)}function b(s,C,y,P){const D=t.section.rows.slice(),R=y.cascadeClearFields??[],G={...s,__rowKey:x(s),[y.code]:P};R.forEach(j=>{G[j]=""}),D[C]={...G},t.actions.updateTableRows(t.section,D),d(y,P,G,C,D)}function d(s,C,y,P,D){const R=t.renderConfig?.onFieldBusinessChange;if(R)try{const G=B(s,C),j={...t.section.model,...y},H={field:s,value:C,section:t.section,model:j,values:j,row:y,rowIndex:P,rows:D,node:t.node,activeNode:t.node,sections:m(),sectionValues:w(t.section,D),actions:t.actions,selectedOption:G[0],selectedOptions:G};Promise.resolve(R(H)).catch(Z=>{console.error("[GlobalInfoTableRenderer] field business change failed",Z)})}catch(G){console.error("[GlobalInfoTableRenderer] field business change failed",G)}}function B(s,C){const y=Pe(s,C);return(s.options??[]).filter(P=>y.some(D=>P.value===D||String(P.value)===String(D)))}function m(){return Object.values(t.state.sectionMap)}function w(s,C){const P=m().flatMap(D=>{const R=D.key===s.key?C:D.renderType==="table"?D.rows:D.model;return[D.key,D.id,D.setId,D.infSetId,D.code].filter(Boolean).map(G=>[String(G),R])});return Object.fromEntries(P)}async function _(s,C,y={}){const P=x(C),D=`${P}:${E(s)}`,R=be(t.section.key,s,C,P),G=p.get(D);if(!Ut(y)&&Ne(s,G,R)){p.set(D,R);return}try{if(y.searchText!==void 0){await O(s,C,y);return}await t.actions.loadFieldOptions(t.section,s,C,y)}catch(H){console.error("[GlobalInfoTableRenderer] load field options failed",H)}}async function F(){for(const s of t.section.rows){const C=x(s);for(const y of u.value){const P=s[y.code];if(!I(y,P))continue;const D=be(t.section.key,y,s,C),R=`${C}:${E(y)}`,G=p.get(R);if(Ne(y,G,D)){p.set(R,D);continue}G!==D&&(p.set(R,D),await _(y,s,Wt(y,P)))}}}function S(s,C,y){const P=C[s.code];return{field:s,section:t.section,sectionView:t.section,node:t.node,row:C,rowIndex:y,editing:t.editing,modelValue:P,value:P,state:t.state,actions:t.actions,updateModelValue:D=>b(C,y,s,D)}}function f(s){const C=String(s.id||s.key||s.code||"").trim(),y=C?`field-${C}`:"";if(y&&o[y])return y;const P=y.toLowerCase();return P!==y&&o[P]?P:""}function T(s){return!s.readonly&&!s.disabled}function I(s,C){return Jt(s,C,t.editing)}function $(s){return s.width??(rt(s)?56:void 0)}function k(s){if(!s.width)return s.minWidth??(rt(s)?56:void 0)}function E(s){return s.key||s.id||s.code}function N(s){return i.value+s}function z(s){return at(s)}let Y=0;const W=new WeakMap;function x(s){const C=s.__rowKey??s.key??s.id??s.setId??s.infSetId;if(C!=null&&C!=="")return String(C);const y=s,P=W.get(y);if(P)return P;Y+=1;const D=`local-${Y}`;return W.set(y,D),D}function V(s){return s.required||s.isRequired}return e.watch(()=>t.section.key,()=>{p.clear()}),e.watch(()=>t.editing,()=>{F()},{immediate:!0}),e.watch(()=>t.section.rows.flatMap(s=>u.value.filter(C=>tt(C)).map(C=>be(t.section.key,C,s,x(s)))).join("||"),()=>{F()}),(s,C)=>{const y=J.ElTableColumn,P=e.resolveComponent("Delete"),D=J.ElIcon,R=J.ElButton,G=J.ElTable;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["global-info-table-renderer",{"global-info-table-renderer--editing":s.editing}])},[e.createElementVNode("div",Go,[e.createVNode(G,{class:"global-info-table-renderer__table",data:s.section.rows,fit:!0,"table-layout":"auto","row-key":x},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createBlock(y,{key:0,type:"index",label:l.value,width:c.value,index:N},null,8,["label","width"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,j=>(e.openBlock(),e.createBlock(y,{key:E(j),prop:j.code,label:j.label,width:$(j),"min-width":k(j)},{header:e.withCtx(()=>[e.createElementVNode("span",Ko,[V(j)?(e.openBlock(),e.createElementBlock("span",qo,"*")):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(j.label),1)])]),default:e.withCtx(({row:H,$index:Z})=>[f(j)?e.renderSlot(s.$slots,f(j),e.mergeProps({key:0,ref_for:!0},S(j,H,Z)),void 0,!0):s.editing&&T(j)?(e.openBlock(),e.createBlock(Xe,{key:1,field:j,"model-value":H[j.code],section:s.section,row:H,"row-index":Z,onLoadOptions:L=>_(j,H,L),"onUpdate:modelValue":L=>b(H,Z,j,L)},null,8,["field","model-value","section","row","row-index","onLoadOptions","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(et,{key:2,field:j,value:H[j.code],section:s.section,row:H,"row-index":Z},null,8,["field","value","section","row","row-index"]))]),_:2},1032,["prop","label","width","min-width"]))),128)),s.editing?(e.openBlock(),e.createBlock(y,{key:1,label:"操作",width:"104",fixed:"right"},{default:e.withCtx(({$index:j})=>[s.showDelete?(e.openBlock(),e.createBlock(Qt,{key:0,onConfirm:H=>h(j)},{default:e.withCtx(()=>[e.createVNode(R,{class:"global-info-table-renderer__delete",link:"",type:"danger"},{default:e.withCtx(()=>[e.createVNode(D,{class:"global-info-table-renderer__delete-icon"},{default:e.withCtx(()=>[e.createVNode(P)]),_:1}),C[0]||(C[0]=e.createTextVNode(" 删除 "))]),_:1})]),_:2},1032,["onConfirm"])):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0)]),_:3},8,["data"])])],2)}}}),Xt=le(Yo,[["__scopeId","data-v-822eeb56"]]),en=e.defineComponent({name:"GlobalInfoAutoRenderer",__name:"GlobalInfoAutoRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},renderConfig:{}},setup(n){return(t,o)=>t.section.renderType==="table"?(e.openBlock(),e.createBlock(Xt,{key:0,section:t.section,node:t.node,editing:t.editing,state:t.state,actions:t.actions,"render-config":t.renderConfig},null,8,["section","node","editing","state","actions","render-config"])):(e.openBlock(),e.createBlock(Zt,{key:1,section:t.section,node:t.node,editing:t.editing,state:t.state,actions:t.actions,"render-config":t.renderConfig},null,8,["section","node","editing","state","actions","render-config"]))}}),tn=e.defineComponent({name:"GlobalInfoSectionOutlet",__name:"GlobalInfoSectionOutlet",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},renderConfig:{}},setup(n){const t=n,o=e.useSlots(),r=e.computed(()=>Oe(t.section.fields,t.section,t.renderConfig,{values:t.section.model,rows:t.section.renderType==="table"?t.section.rows:void 0})),a=e.computed(()=>t.editing??t.actions.isEditing(t.section)),l=e.computed(()=>t.section.renderType==="table"&&t.section.rows.length===0||r.value.length===0),c=e.computed(()=>{const p=i(t.section.id||t.section.key),O=u(t.section.renderType);return[p,O,"default"].find(h=>!!(h&&o[h]))??""});function i(p){const O=String(p??"").trim();return O?`section-${O}`:""}function u(p){return p==="form"||p==="table"?p:""}return(p,O)=>c.value?e.renderSlot(p.$slots,c.value,{key:0,section:p.section,sectionView:p.section,node:p.node,editing:a.value,isEmpty:l.value,empty:l.value,fields:r.value,renderConfig:p.renderConfig,state:p.state,actions:p.actions}):(e.openBlock(),e.createBlock(en,{key:1,section:p.section,node:p.node,editing:a.value,state:p.state,actions:p.actions,"render-config":p.renderConfig},null,8,["section","node","editing","state","actions","render-config"]))}}),Ho=e.defineComponent({name:"GlobalInfoSlotErrorBoundary",props:{boundaryKey:{type:[String,Number],default:""},label:{type:String,default:""}},emits:{error:n=>!0},setup(n,{emit:t,slots:o}){const r=e.ref(!1);e.watch(()=>n.boundaryKey,()=>{r.value=!1}),e.onErrorCaptured(l=>(a(l),!1));function a(l){r.value=!0,console.error(`[GlobalInfoSlotErrorBoundary] ${n.label||"section"} slot render failed`,l),t("error",l)}return()=>{if(r.value)return o.fallback?.()??null;try{return o.default?.()??null}catch(l){return a(l),o.fallback?.()??null}}}}),Uo={class:"global-info-section-block"},Jo={key:0,class:"global-info-section-block__header"},Wo={class:"global-info-section-block__title-wrap"},Zo={class:"global-info-section-block__title"},Qo={key:0,class:"global-info-section-block__actions"},Xo={class:"global-info-section-block__body"},er=e.defineComponent({name:"GlobalInfoSectionBlock",__name:"GlobalInfoSectionBlock",props:{node:{},state:{},actions:{},hideHeader:{type:Boolean},renderConfig:{},onEdit:{type:Function},onCancel:{type:Function},onSave:{type:Function}},setup(n){const t=n,o=e.useSlots(),r=e.ref(!1),a=e.ref(null),l=e.ref(null),c=e.computed(()=>!!t.hideHeader),i=e.computed(()=>t.actions.getSectionStatus(t.node)),u=e.computed(()=>t.actions.getSection(t.node)??l.value),p=e.computed(()=>{const k=u.value;return k?Oe(k.fields,k,t.renderConfig,{values:k.model,rows:k.renderType==="table"?k.rows:void 0}):[]}),O=e.computed(()=>u.value?.title||t.node.tagName||t.node.label||"-"),h=e.computed(()=>!!(u.value&&t.actions.isEditing(u.value))),b=e.computed(()=>u.value?.renderType==="table"),d=e.computed(()=>r.value||i.value.loading),B=e.computed(()=>_(a.value||i.value.error)),m=e.computed(()=>{const k=u.value;return k?k.renderType==="table"&&k.rows.length===0||p.value.length===0:!0}),w=e.computed(()=>({node:t.node,section:u.value,sectionView:u.value,fields:p.value,renderConfig:t.renderConfig,title:O.value,editing:h.value,loading:d.value,error:a.value||i.value.error,errorMessage:B.value,isEmpty:m.value,empty:m.value,sectionStatus:i.value,state:t.state,actions:t.actions,reload:$,handleEdit:F,handleCancel:S,handleAddTableRow:f,handleSave:T}));function _(k){return k?k instanceof Error?k.message:String(k):""}async function F(){const k=u.value;k&&(await t.onEdit?.(k,t.node),t.onEdit||t.actions.startEdit(k))}async function S(){const k=u.value;k&&(await t.onCancel?.(k,t.node),t.onCancel||t.actions.cancelEdit(k))}function f(){const k=u.value;if(!k)return;const E=k.fields.reduce((N,z)=>(N[z.code]=z.value??"",N),{__rowKey:`new-${Date.now()}`});t.actions.saveRow(k,E,-1)}async function T(){const k=u.value;if(k)try{if(t.onSave){await t.onSave(k,t.node);return}await t.actions.saveSection(k)}catch(E){a.value=E,console.error("[GlobalInfoSectionBlock] save section failed",E)}}function I(k){a.value=k}async function $(){r.value=!0,a.value=null,l.value=null;try{l.value=await t.actions.loadSection(t.node)}catch(k){a.value=k,console.error("[GlobalInfoSectionBlock] load section failed",k)}finally{r.value=!1}}return e.onMounted(()=>{$()}),e.watch(()=>t.node.key,()=>{$()}),(k,E)=>{const N=J.ElButton;return e.openBlock(),e.createElementBlock("section",Uo,[c.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("header",Jo,[e.renderSlot(k.$slots,"header",e.normalizeProps(e.guardReactiveProps(w.value)),()=>[e.createElementVNode("div",Wo,[E[0]||(E[0]=e.createElementVNode("span",{class:"global-info-section-block__marker"},null,-1)),e.createElementVNode("h3",Zo,e.toDisplayString(O.value),1)]),e.renderSlot(k.$slots,"actions",e.normalizeProps(e.guardReactiveProps(w.value)),()=>[u.value?(e.openBlock(),e.createElementBlock("div",Qo,[h.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createVNode(N,{class:"global-info-section-block__cancel",disabled:i.value.saving,onClick:S},{default:e.withCtx(()=>E[2]||(E[2]=[e.createTextVNode(" 取消 ")])),_:1},8,["disabled"]),b.value?(e.openBlock(),e.createBlock(N,{key:0,class:"global-info-section-block__add",disabled:i.value.saving,onClick:f},{default:e.withCtx(()=>E[3]||(E[3]=[e.createTextVNode(" 新增 ")])),_:1},8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(N,{class:"global-info-section-block__confirm",loading:i.value.saving,onClick:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b.value?"确认":"保存"),1)]),_:1},8,["loading"])],64)):(e.openBlock(),e.createBlock(N,{key:0,class:"global-info-section-block__edit",disabled:i.value.saving||d.value,onClick:F},{default:e.withCtx(()=>E[1]||(E[1]=[e.createElementVNode("svg",{class:"global-info-section-block__edit-icon",viewBox:"0 0 12 12","aria-hidden":"true",focusable:"false"},[e.createElementVNode("path",{d:"M0.437665 12C0.316763 11.9845 0.205604 11.9251 0.125029 11.8329C0.0444551 11.7407 0 11.622 0 11.499C0 11.3761 0.0444551 11.2574 0.125029 11.1652C0.205604 11.0729 0.316763 11.0135 0.437665 10.998H11.5623C11.6832 11.0135 11.7944 11.0729 11.875 11.1652C11.9555 11.2574 12 11.3761 12 11.499C12 11.622 11.9555 11.7407 11.875 11.8329C11.7944 11.9251 11.6832 11.9845 11.5623 12H0.437665ZM9.59963 0.233088L10.72 1.36329C10.868 1.51347 10.9511 1.71663 10.9511 1.92839C10.9511 2.14015 10.868 2.34331 10.72 2.49349L3.61614 9.6354C3.54189 9.70969 3.45384 9.76846 3.35702 9.80835C3.26021 9.84824 3.15654 9.86846 3.05196 9.86785H1.57397C1.4686 9.86785 1.36754 9.82562 1.29303 9.75046C1.21852 9.6753 1.17666 9.57336 1.17666 9.46707V7.93609C1.17606 7.8306 1.1961 7.72602 1.23564 7.62836C1.27519 7.5307 1.33345 7.44188 1.4071 7.36698L8.47921 0.233088C8.62809 0.0837965 8.82949 0 9.03942 0C9.24935 0 9.45074 0.0837965 9.59963 0.233088ZM2.16993 8.01624V8.8659H3.01223L9.88569 1.9324L9.04339 1.07473L2.16993 8.01624Z",fill:"currentColor"})],-1),e.createElementVNode("span",null,"编辑",-1)])),_:1},8,["disabled"]))])):e.createCommentVNode("",!0)],!0)],!0)])),e.createElementVNode("div",Xo,[d.value?e.renderSlot(k.$slots,"loading",e.normalizeProps(e.mergeProps({key:0},w.value)),()=>[E[4]||(E[4]=e.createElementVNode("div",{class:"global-info-section-block__status"},"加载中...",-1))],!0):!u.value||m.value?e.renderSlot(k.$slots,"empty",e.normalizeProps(e.mergeProps({key:1},w.value)),()=>[E[5]||(E[5]=e.createElementVNode("div",{class:"global-info-section-block__status"},"暂无数据",-1))],!0):(e.openBlock(),e.createBlock(Ho,{key:2,"boundary-key":k.node.key,label:O.value,onError:I},{fallback:e.withCtx(()=>[e.renderSlot(k.$slots,"empty",e.normalizeProps(e.guardReactiveProps(w.value)),()=>[E[6]||(E[6]=e.createElementVNode("div",{class:"global-info-section-block__status"},"暂无数据",-1))],!0)]),default:e.withCtx(()=>[e.createVNode(tn,{section:u.value,node:k.node,editing:h.value,state:k.state,actions:k.actions,"render-config":k.renderConfig},e.createSlots({_:2},[e.renderList(e.unref(o),(z,Y)=>({name:Y,fn:e.withCtx(W=>[e.renderSlot(k.$slots,Y,e.normalizeProps(e.guardReactiveProps({...w.value,...W})),void 0,!0)])}))]),1032,["section","node","editing","state","actions","render-config"])]),_:3},8,["boundary-key","label"]))])])}}}),nn=le(er,[["__scopeId","data-v-77980d16"]]),tr={class:"global-info-group"},nr={class:"global-info-group__header"},or={class:"global-info-group__title"},rr={class:"global-info-group__body"},ar=["id"],lr=e.defineComponent({name:"GlobalInfoGroup",__name:"GlobalInfoGroup",props:{group:{},children:{},state:{},actions:{},index:{},renderConfig:{}},setup(n){const t=n,o=e.useSlots(),r=e.computed(()=>t.group.tagName||t.group.label||"-"),a=e.computed(()=>t.children.length<=1);function l(h,b){const d=t.actions.getSection(h);return{node:h,group:t.group,sectionNode:h,section:d,sectionView:d,state:t.state,actions:t.actions,renderConfig:t.renderConfig,index:b,editing:!!(d&&t.actions.isEditing(d)),sectionStatus:t.actions.getSectionStatus(h),isSelfSection:p(h,0)===p(t.group,0),handleEdit:()=>t.actions.startEdit(h),handleCancel:()=>t.actions.cancelEdit(h),handleSave:()=>t.actions.saveSection(h.key)}}function c(h){return i("section",u(h))}function i(h,b){if(!b)return"";const d=`${h}-${b}`;if(o[d])return d;const B=d.toLowerCase();return B!==d&&o[B]?B:""}function u(h){return String(h.id||h.infSetId||h.tagId||h.key||h.code||"").trim()}function p(h,b){return h.key||h.id||h.infSetId||h.tagId||`${b}`}function O(h){return`global-info-section-${p(h,0)}`}return(h,b)=>(e.openBlock(),e.createElementBlock("section",tr,[e.renderSlot(h.$slots,"header",{group:h.group,children:h.children,state:h.state,actions:h.actions,renderConfig:h.renderConfig,title:r.value,index:h.index,isEmpty:h.children.length===0},()=>[e.createElementVNode("header",nr,[b[0]||(b[0]=e.createElementVNode("span",{class:"global-info-group__marker"},null,-1)),e.createElementVNode("h2",or,e.toDisplayString(r.value),1)])],!0),e.createElementVNode("div",rr,[e.unref(o).default?e.renderSlot(h.$slots,"default",{key:0,group:h.group,children:h.children,state:h.state,actions:h.actions,renderConfig:h.renderConfig,index:h.index,isEmpty:h.children.length===0},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.children,(d,B)=>(e.openBlock(),e.createElementBlock("div",{id:O(d),key:p(d,B),class:"global-info-group__section"},[c(d)?e.renderSlot(h.$slots,c(d),e.mergeProps({key:0,ref_for:!0},l(d,B)),void 0,!0):e.unref(o).section?e.renderSlot(h.$slots,"section",e.mergeProps({key:1,ref_for:!0},l(d,B)),void 0,!0):(e.openBlock(),e.createBlock(nn,{key:2,node:d,state:h.state,actions:h.actions,"hide-header":a.value,"render-config":h.renderConfig},e.createSlots({_:2},[e.renderList(e.unref(o),(m,w)=>({name:w,fn:e.withCtx(_=>[e.renderSlot(h.$slots,w,e.mergeProps({ref_for:!0},_),void 0,!0)])}))]),1032,["node","state","actions","hide-header","render-config"]))],8,ar))),128)),h.children.length===0?e.renderSlot(h.$slots,"empty",{key:0,node:null,group:h.group,sectionNode:null,state:h.state,actions:h.actions,index:-1,renderConfig:h.renderConfig},()=>[b[1]||(b[1]=e.createElementVNode("div",{class:"global-info-group__empty"},"暂无数据",-1))],!0):e.createCommentVNode("",!0)],64))])]))}}),on=le(lr,[["__scopeId","data-v-c90b8de0"]]),sr={class:"global-info-sections"},ir=e.defineComponent({name:"GlobalInfoSections",__name:"GlobalInfoSections",props:{nodes:{},state:{},actions:{},renderConfig:{}},setup(n){const t=n,o=e.useSlots(),r=e.computed(()=>{const b=t.nodes.filter(S=>a(S).length>0),d=t.nodes.filter(S=>a(S).length===0),B=d.filter(S=>l(S)),m=d.filter(S=>!l(S)),w=b.map(S=>({group:S,children:a(S)})),_=B.map(S=>({group:S,children:[S]}));if(w.length===0)return B.length>0?_:h(m);const F=h(m);return[...w,..._,...F]});function a(b){return b.children??[]}function l(b){return!String(b.parentId||b.parentTagId||"").trim()}function c(b){return i("group",u(b))}function i(b,d){if(!d)return"";const B=`${b}-${d}`;if(o[B])return B;const m=B.toLowerCase();return m!==B&&o[m]?m:""}function u(b){return String(b.id||b.tagId||b.key||b.code||"").trim()}function p(b,d){return b.key||b.id||b.tagId||`${d}`}function O(b){const d=b[0],B=d?.raw??{},m=String(B.parentTagName||B.parentName||B.parentLabel||d?.parentId||"信息");return{...d,key:`${d?.parentId||d?.parentTagId||d?.key||"global-info"}-group`,id:String(d?.parentId||d?.parentTagId||d?.id||"global-info-group"),tagId:String(d?.parentTagId||d?.parentId||d?.tagId||"global-info-group"),tagName:m,label:m,children:b}}function h(b){const d=new Map;return b.forEach(B=>{const m=String(B.parentId||B.parentTagId||"global-info-flat"),w=d.get(m)??[];w.push(B),d.set(m,w)}),Array.from(d.values()).map(B=>({group:O(B),children:B}))}return(b,d)=>(e.openBlock(),e.createElementBlock("div",sr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(B,m)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:p(B.group,m)},[c(B.group)?e.renderSlot(b.$slots,c(B.group),{key:0,group:B.group,children:B.children,state:b.state,actions:b.actions,renderConfig:b.renderConfig,index:m,isEmpty:B.children.length===0},void 0,!0):e.unref(o).group?e.renderSlot(b.$slots,"group",{key:1,group:B.group,children:B.children,state:b.state,actions:b.actions,renderConfig:b.renderConfig,index:m,isEmpty:B.children.length===0},void 0,!0):(e.openBlock(),e.createBlock(on,{key:2,group:B.group,children:B.children,state:b.state,actions:b.actions,"render-config":b.renderConfig,index:m},e.createSlots({_:2},[e.renderList(e.unref(o),(w,_)=>({name:_,fn:e.withCtx(F=>[e.renderSlot(b.$slots,_,e.mergeProps({ref_for:!0},F),void 0,!0)])}))]),1032,["group","children","state","actions","render-config","index"]))],64))),128))]))}}),cr=le(ir,[["__scopeId","data-v-c0d12f5e"]]);exports.JtAttachmentPreview=Je.JtAttachmentPreview;exports.JtAttachmentPreviewByParams=Je.JtAttachmentPreviewByParams;exports.setupJtAttachmentPreview=Je.setupJtAttachmentPreview;exports.GlobalInfoAutoRenderer=en;exports.GlobalInfoDeleteConfirm=Qt;exports.GlobalInfoFieldControl=Xe;exports.GlobalInfoFieldValue=et;exports.GlobalInfoFormRenderer=Zt;exports.GlobalInfoGroup=on;exports.GlobalInfoProvider=_o;exports.GlobalInfoSectionBlock=nn;exports.GlobalInfoSectionOutlet=tn;exports.GlobalInfoSections=cr;exports.GlobalInfoTableRenderer=Xt;exports.JtButton=Ce;exports.JtCascader=vt;exports.JtCrudTable=On;exports.JtDatePicker=gt;exports.JtFilterBar=St;exports.JtFormItems=bt;exports.JtInput=De;exports.JtPageHeader=jn;exports.JtPagination=kt;exports.JtSelect=yt;exports.JtTable=wt;exports.buildGlobalInfoUpdatePayload=Et;exports.createEmptyGlobalInfoViewModel=$t;exports.isGlobalInfoNode=Qn;exports.mergeGlobalInfoChildren=Ze;exports.normalizeGlobalInfoDetail=Mt;exports.normalizeGlobalInfoTree=He;exports.resolveGlobalInfoRenderType=Tt;exports.useGlobalInfoController=At;
|