@jt-home/mfe-components 1.0.10 → 1.0.12
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/JtAttachmentPreview/style.css +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2114 -1620
- package/dist/style.css +1 -1
- package/dist/types/components/form/item/JtCascader/cascaderProps.d.ts +11 -0
- package/dist/types/components/form/item/JtCascader/index.vue.d.ts +4 -6
- package/dist/types/components/form/item/JtSelect/index.vue.d.ts +4 -4
- package/dist/types/components/globalInfo/components/GlobalInfoGroup.vue.d.ts +8 -1
- package/dist/types/components/globalInfo/components/GlobalInfoProvider.vue.d.ts +2 -8
- package/dist/types/components/globalInfo/components/GlobalInfoSectionBlock.vue.d.ts +8 -1
- package/dist/types/components/globalInfo/components/GlobalInfoSectionOutlet.vue.d.ts +3 -1
- package/dist/types/components/globalInfo/components/GlobalInfoSections.vue.d.ts +5 -1
- package/dist/types/components/globalInfo/controller/controllerFieldOptions.d.ts +11 -0
- package/dist/types/components/globalInfo/controller/controllerIdentity.d.ts +10 -0
- package/dist/types/components/globalInfo/controller/controllerRequests.d.ts +37 -0
- package/dist/types/components/globalInfo/controller/controllerSectionStore.d.ts +21 -0
- package/dist/types/components/globalInfo/controller/controllerStatus.d.ts +2 -0
- package/dist/types/components/globalInfo/controller/useGlobalInfoController.d.ts +2 -1
- package/dist/types/components/globalInfo/index.d.ts +1 -1
- package/dist/types/components/globalInfo/model/fieldUtils.d.ts +14 -2
- package/dist/types/components/globalInfo/model/types.d.ts +135 -3
- package/dist/types/components/globalInfo/renderers/GlobalInfoAutoRenderer.vue.d.ts +2 -1
- package/dist/types/components/globalInfo/renderers/GlobalInfoFormRenderer.vue.d.ts +2 -1
- package/dist/types/components/globalInfo/renderers/GlobalInfoTableRenderer.vue.d.ts +4 -3
- package/dist/types/components/globalInfo/renderers/optionPreload.d.ts +4 -0
- package/dist/types/components/index.d.ts +1 -1
- package/dist/types/components/table/JtCrudTable.vue.d.ts +12 -12
- package/dist/types/components/table/JtFilterBar.vue.d.ts +2 -2
- package/dist/types/main.d.ts +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
.jt-attachment-preview-service-lock{overflow:hidden}.jt-attachment-preview-service{--jt-attachment-preview-service-image-fit: contain;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:5vh 5vw;background:rgba(0,0,0,.5);color:#333}.jt-attachment-preview-service__modal{display:flex;flex-direction:column;width:90vw;height:90vh;overflow:hidden;border-radius:
|
|
1
|
+
.jt-attachment-preview-service-lock{overflow:hidden}.jt-attachment-preview-service{--jt-attachment-preview-service-image-fit: contain;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:5vh 5vw;background:rgba(0,0,0,.5);color:#333}.jt-attachment-preview-service__modal{display:flex;flex-direction:column;width:90vw;height:90vh;overflow:hidden;border-radius:0.375rem;background:#f7f7f7;box-shadow:0 0.125rem 0.5rem rgba(31,35,41,.08)}.jt-attachment-preview-service__header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;height:3.125rem;border-bottom:0.0625rem solid #f5f5f5;background:#fff}.jt-attachment-preview-service__filename{position:relative;min-width:0;max-width:calc(90vw - 11.875rem);padding-left:1.8125rem;overflow:hidden;color:#333;font-size:1rem;font-weight:500;line-height:3.125rem;text-overflow:ellipsis;white-space:nowrap;color:#333}.jt-attachment-preview-service__filename::before{content:"";position:absolute;left:1.25rem;top:50%;width:0.1875rem;height:0.625rem;border-radius:0.0625rem;background:#e60000;transform:translateY(-50%)}.jt-attachment-preview-service__header-actions{display:flex;align-items:center;flex-shrink:0;height:100%}.jt-attachment-preview-service__top-download,.jt-attachment-preview-service__close{display:inline-flex;align-items:center;justify-content:center;height:100%;border:0;background:#fff;color:rgba(0,0,0,.6);text-decoration:none;cursor:pointer}.jt-attachment-preview-service__top-download{gap:0.25rem;min-width:4.5rem;height:2.25rem;padding:0 0.75rem;font-size:1rem;line-height:1;vertical-align:top}.jt-attachment-preview-service__close{width:2.625rem;padding:0;font-size:1.375rem;font-weight:400;line-height:1}.jt-attachment-preview-service__top-download:hover,.jt-attachment-preview-service__close:hover{background:#f9f9f9;color:#333}.jt-attachment-preview-service__download-icon{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.125rem;height:1.125rem;font-size:1.125rem;line-height:1;transform:translateY(0.0625rem)}.jt-attachment-preview-service__download-icon svg{display:block}.jt-attachment-preview-service__download-text{display:inline-flex;align-items:center;height:1.125rem;line-height:1}.jt-attachment-preview-service__body{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:0;overflow:hidden;background:#f7f7f7}.jt-attachment-preview-service__media,.jt-attachment-preview-service__iframe{display:block;width:100%;height:100%;border:0}.jt-attachment-preview-service__image-viewer{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}.jt-attachment-preview-service__image{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:var(--jt-attachment-preview-service-image-fit);transform-origin:center center;transition:transform .16s ease;user-select:none;will-change:transform;-webkit-user-drag:none}.jt-attachment-preview-service__image--draggable{cursor:grab;touch-action:none}.jt-attachment-preview-service__image--dragging{cursor:grabbing;transition:none}.jt-attachment-preview-service__image-toolbar{position:absolute;left:50%;bottom:1.125rem;z-index:2;display:inline-flex;align-items:center;gap:0.375rem;height:2.25rem;padding:0 0.5rem;border-radius:0.25rem;background:rgba(0,0,0,.66);color:#fff;box-shadow:0 0.125rem 0.5rem rgba(31,35,41,.12);transform:translateX(-50%)}.jt-attachment-preview-service__image-tool{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:0;border-radius:0.25rem;background:rgba(0,0,0,0);color:#fff;font-size:1rem;line-height:1;cursor:pointer}.jt-attachment-preview-service__image-tool:hover{background:hsla(0,0%,100%,.16)}.jt-attachment-preview-service__image-scale{min-width:2.625rem;color:#fff;font-size:0.75rem;line-height:1;text-align:center}.jt-attachment-preview-service__audio{width:min(32.5rem,100% - 2rem)}.jt-attachment-preview-service__pdf-viewer{position:relative;width:100%;height:100%;overflow:hidden;background:#f7f7f7}.jt-attachment-preview-service__pdf-layout{display:flex;width:100%;height:100%;min-height:0}.jt-attachment-preview-service__pdf-layout--hidden{visibility:hidden}.jt-attachment-preview-service__pdf-outline{flex:0 0 13.75rem;width:13.75rem;height:100%;overflow:hidden;border-right:0.0625rem solid #f5f5f5;background:#fff}.jt-attachment-preview-service__pdf-outline-title{height:2.25rem;padding:0 0.75rem;border-bottom:0.0625rem solid #f5f5f5;color:#333;font-size:0.8125rem;font-weight:500;line-height:2.25rem}.jt-attachment-preview-service__pdf-outline-list{height:calc(100% - 2.25rem);overflow:auto;padding:0.5rem 0}.jt-attachment-preview-service__pdf-outline-item{display:block;width:100%;height:2rem;padding-right:0.625rem;border:0;background:rgba(0,0,0,0);color:rgba(0,0,0,.6);font-size:0.75rem;line-height:2rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;cursor:pointer}.jt-attachment-preview-service__pdf-outline-item:hover{background:#f9f9f9;color:#e60000}.jt-attachment-preview-service__pdf-outline-item:disabled{color:rgba(0,0,0,.5);cursor:not-allowed}.jt-attachment-preview-service__pdf-pages{display:flex;flex:1;flex-direction:column;align-items:center;gap:1rem;min-width:0;min-height:100%;overflow:auto;padding:1.25rem}.jt-attachment-preview-service__pdf-page{display:block;max-width:100%;background:#fff;box-shadow:0 0.125rem 0.625rem rgba(31,35,41,.14)}.jt-attachment-preview-service__pdf-state{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.625rem;padding:1rem;color:#333;font-size:0.75rem;text-align:center}.jt-attachment-preview-service__pdf-error{max-width:min(32.5rem,90vw - 3rem);color:rgba(0,0,0,.6);font-size:0.6875rem;line-height:1.5}.jt-attachment-preview-service__detecting{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#333;text-align:center}.jt-attachment-preview-service__detecting-spinner{width:1.75rem;height:1.75rem;margin-bottom:0.875rem;border:0.125rem solid #d9d9d9;border-top-color:#e60000;border-radius:50%;animation:jt-attachment-preview-service-spin .8s linear infinite}.jt-attachment-preview-service__detecting-title{font-size:0.75rem;font-weight:500}.jt-attachment-preview-service__detecting-desc{margin-top:0.375rem;color:rgba(0,0,0,.6);font-size:0.625rem}@keyframes jt-attachment-preview-service-spin{to{transform:rotate(360deg)}}.jt-attachment-preview-service__pdf-fallback-tip{position:absolute;left:50%;bottom:1rem;z-index:2;display:flex;align-items:center;gap:0.625rem;max-width:calc(100% - 2rem);padding:0.5rem 0.75rem;border-radius:0.25rem;background:rgba(0,0,0,.72);color:#fff;font-size:0.75rem;transform:translateX(-50%)}.jt-attachment-preview-service__fallback-download{border:0;background:rgba(0,0,0,0);flex-shrink:0;color:#fff;font-size:0.75rem;text-decoration:underline;cursor:pointer}.jt-attachment-preview-service__empty,.jt-attachment-preview-service__unsupported{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:1rem;text-align:center}.jt-attachment-preview-service__empty{color:rgba(0,0,0,.6);font-size:0.875rem}.jt-attachment-preview-service__file-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:auto;max-width:calc(90vw - 3rem);min-height:0}.jt-attachment-preview-service__preview-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-height:0}.jt-attachment-preview-service__preview-fallback-icon{display:block;width:4.5rem;height:4.5rem;object-fit:contain}.jt-attachment-preview-service__file-icon{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.75rem;padding:0 0.375rem;border-radius:0.25rem;background:#2563eb;color:#fff;font-size:1.25rem;font-weight:600;line-height:1}.jt-attachment-preview-service__unsupported-text{margin-top:0.75rem;color:#333;font-size:1rem;color:#333;font-weight:500}.jt-attachment-preview-service__file-name{max-width:min(22.5rem,90vw - 3rem);margin-top:0.375rem;overflow:hidden;color:#666;font-size:0.75rem;text-overflow:ellipsis;white-space:nowrap}.jt-attachment-preview-service__primary-download{display:inline-flex;align-items:center;justify-content:center;gap:0.25rem;min-width:2.125rem;height:1.375rem;margin-top:0.875rem;padding:0 0.625rem;border:0;border-radius:0.25rem;background:#e60000;color:#fff;font-size:0.75rem;text-decoration:none;cursor:pointer}.jt-attachment-preview-service__primary-download:hover{background:#e51e1b}
|
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"),G=require("element-plus/es"),Pe=require("./JtAttachmentPreview/index.cjs"),ue=require("element-plus"),Ee=2,Ft=3;function Mt(o){return o.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function qe(o){if(!o.startsWith("on")||o.length<=Ee)return!1;const t=o.charCodeAt(Ee);return t<97||t>122}function Rt(o){if(o.startsWith("on-"))return o.slice(Ft);const[t,n]=o.slice(Ee).split(":"),l=Mt(t);return n?`${l}:${n}`:l}function Ke(o,t=new Set){return Object.fromEntries(Object.entries(o).filter(([n,l])=>!t.has(n)&&qe(n)&&typeof l=="function").map(([n,l])=>[Rt(n),l]))}function He(o,t=new Set){return Object.fromEntries(Object.entries(o).filter(([n])=>!t.has(n)&&!qe(n)))}const Lt=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(),l=e.computed(()=>{const{icon:s,...g}=t;return{...He(n),...g}}),a=e.computed(()=>Ke(n));return(s,g)=>{const f=G.ElIcon,u=G.ElButton;return e.openBlock(),e.createBlock(u,e.mergeProps({class:"jt-button"},l.value,e.toHandlers(a.value)),{default:e.withCtx(()=>[s.$slots.icon?(e.openBlock(),e.createBlock(f,{key:0,class:"jt-button__icon"},{default:e.withCtx(()=>[e.renderSlot(s.$slots,"icon",{},void 0,!0)]),_:3})):t.icon?(e.openBlock(),e.createBlock(f,{key:1,class:"jt-button__icon"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon)))]),_:1})):e.createCommentVNode("",!0),e.renderSlot(s.$slots,"default",{},void 0,!0)]),_:3},16)}}}),J=(o,t)=>{const n=o.__vccOpts||o;for(const[l,a]of t)n[l]=a;return n},ve=J(Lt,[["__scopeId","data-v-a8344276"]]),Gt=e.defineComponent({name:"JtCascader",__name:"index",props:{size:{},placeholder:{default:"请选择"},disabled:{type:Boolean},clearable:{type:Boolean,default:!0},clearIcon:{},filterable:{type:Boolean},filterMethod:{},separator:{},showAllLevels:{type:Boolean},collapseTags:{type:Boolean},maxCollapseTags:{},collapseTagsTooltip:{type:Boolean},maxCollapseTagsTooltipHeight:{},debounce:{},beforeFilter:{},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:{default:()=>[]}},emits:ue.cascaderEmits,setup(o,{emit:t}){const n=o,l=t,a=e.computed(()=>Object.fromEntries(Object.keys(ue.cascaderEmits).map(s=>[s,(...g)=>l(s,...g)])));return(s,g)=>{const f=G.ElCascader;return e.openBlock(),e.createBlock(f,e.mergeProps({class:"jt-cascader"},n,e.toHandlers(a.value)),null,16)}}}),Ue=J(Gt,[["__scopeId","data-v-4c43f27e"]]),Dt=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??(l(t.type)?"开始日期":void 0),endPlaceholder:t.endPlaceholder??(l(t.type)?"结束日期":void 0)}));function l(a){return a?.includes("range")??!1}return(a,s)=>{const g=G.ElDatePicker;return e.openBlock(),e.createBlock(g,e.mergeProps({class:"jt-date-picker"},n.value,{"onUpdate:modelValue":s[0]||(s[0]=f=>a.$emit("update:modelValue",f))}),null,16)}}}),We=J(Dt,[["__scopeId","data-v-7aa4706e"]]),zt=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:{...ue.inputEmits,enter:()=>!0},setup(o,{emit:t}){const n=o,l=t,a=e.computed(()=>Object.fromEntries(Object.keys(ue.inputEmits).map(s=>[s,(...g)=>l(s,...g)])));return(s,g)=>{const f=G.ElInput;return e.openBlock(),e.createBlock(f,e.mergeProps({class:"jt-input"},n,e.toHandlers(a.value),{onKeyup:g[0]||(g[0]=e.withKeys(u=>l("enter"),["enter"]))}),null,16)}}}),Se=J(zt,[["__scopeId","data-v-031428a1"]]),jt=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:ue.selectEmits,setup(o,{emit:t}){const n=o,l=e.computed(()=>{const{options:g,...f}=n;return f}),a=t,s=e.computed(()=>Object.fromEntries(Object.keys(ue.selectEmits).map(g=>[g,(...f)=>a(g,...f)])));return(g,f)=>{const u=G.ElOption,b=G.ElSelect;return e.openBlock(),e.createBlock(b,e.mergeProps({class:"jt-select"},l.value,e.toHandlers(s.value)),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.options??[],V=>(e.openBlock(),e.createBlock(u,e.mergeProps({key:V.value,ref_for:!0},V),null,16))),128))]),_:1},16)}}}),Ye=J(jt,[["__scopeId","data-v-c67cfa84"]]),xt={class:"jt-form-items"},Ce=4,At=e.defineComponent({name:"JTFormItems",__name:"JtFormItems",props:{configs:{},formData:{},span:{}},setup(o){const t=o,n={input:Se,select:Ye,cascader:Ue,"date-picker":We},l={"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"]),s=Object.keys(n),g=new Map,f=e.computed(()=>t.configs.filter(h=>h.show!==!1)),u=h=>{const{itemType:S}=h;if(!S)return Se;if(typeof S!="string")return S;const P=l[S]??S;return s.includes(P)?n[P]:(console.error(`[JtFormItems] 不支持的 itemType: "${S}",支持的类型: ${s.join(", ")}`),Se)},b=h=>{const S=He(h,a);return h.itemType==="select"||h.itemType==="remote-select"||h.itemType==="cascader"?{...S,options:h.options}:c(h.itemType)?{...S,type:"daterange"}:S},V=h=>Ke(h,a),v=h=>({rules:h.rules,...h.formItemProps}),p=(h,S)=>{t.formData[h]=S};function d(h){return S=>{if(S){g.set(h,S);return}g.delete(h)}}function y(h,S){e.nextTick(()=>{g.get(h)?.validate(S).catch(()=>{})})}const I=h=>Math.min(Math.max(Math.trunc(h||1),1),4),F=e.computed(()=>{const S=f.value.reduce((P,w)=>P+I(t.span||w.span),0)%Ce;return S===0?{gridColumn:`1 / span ${Ce}`}:{gridColumn:`${S+1} / span ${Ce-S}`}}),E=h=>({gridColumn:`span ${I(t.span||h.span)}`});function c(h){return h==="daterange"||h==="date-range"||h==="dateRange"}return(h,S)=>{const P=G.ElFormItem;return e.openBlock(),e.createElementBlock("div",xt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,w=>(e.openBlock(),e.createBlock(P,e.mergeProps({key:w.prop,ref_for:!0,ref:d(w.prop),class:"jt-form-items__item",style:E(w),label:w.label,prop:w.prop},v(w)),{default:e.withCtx(()=>[w.showSlot?e.renderSlot(h.$slots,w.prop,{key:0},void 0,!0):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u(w)),e.mergeProps({key:1,"model-value":h.formData[w.prop],ref_for:!0},b(w),e.toHandlers(V(w)),{"onUpdate:modelValue":k=>p(w.prop,k),onChange:()=>y(w.prop,"change"),onBlur:()=>y(w.prop,"blur")}),null,16,["model-value","onUpdate:modelValue","onChange","onBlur"]))]),_:2},1040,["style","label","prop"]))),128)),h.$slots.actions?(e.openBlock(),e.createBlock(P,{key:0,class:"jt-form-items__actions",style:e.normalizeStyle(F.value)},{default:e.withCtx(()=>[e.renderSlot(h.$slots,"actions",{},void 0,!0)]),_:3},8,["style"])):e.createCommentVNode("",!0)])}}}),Ze=J(At,[["__scopeId","data-v-d7aa2097"]]);function Ot(){const o=e.ref(!1);function t(){o.value=!0}function n(){o.value=!1}return{searchDisabled:o,searchLoading:t,searchDone:n}}const Jt="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",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%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",Kt="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",Ht={class:"jt-filter-bar__btns"},Ut=["src"],Wt=["src"],Yt=["src"],Zt=e.defineComponent({name:"JtFilterBar",__name:"JtFilterBar",props:{columns:{},option:{default:()=>({})},modelValue:{}},emits:["update:modelValue","search","reset"],setup(o,{expose:t,emit:n}){const l=o,a=n,s=e.ref(),g=e.useSlots(),f=e.ref({}),{searchDisabled:u,searchLoading:b,searchDone:V}=Ot(),v=e.computed(()=>l.option),p=e.ref(v.value.searchCollapsed??!1),d=e.computed(()=>l.columns.filter(B=>B.search===!0)),y=e.computed(()=>Math.max(1,v.value.searchSpan??4)),I=e.computed(()=>Math.max(1,v.value.searchCollapsedRows??1)),F=e.computed(()=>Math.max(1,y.value-1)),E=e.computed(()=>Math.max(1,F.value*I.value)),c=e.computed(()=>ne(v.value.searchLabelWidth??84)),h=e.computed(()=>v.value.searchLabelPosition??"top"),S=e.computed(()=>se(v.value.searchGutter,14)),P=e.computed(()=>se(v.value.searchRowGap,14)),w=e.computed(()=>pe(v.value.searchPadding??"18px 4px 0")),k=e.computed(()=>v.value.searchCollapse===!1?!1:Ie(d.value)>E.value),N=e.computed(()=>{if(!k.value||!p.value)return d.value;let B=0;return d.value.filter(z=>{const A=oe(z);return B+A>E.value?!1:(B+=A,!0)})}),_=e.computed(()=>N.value.filter(B=>!!g[`${B.prop}-search`])),R=e.computed(()=>N.value.map(B=>Z(B)));e.watch(()=>v.value.searchCollapsed,B=>{typeof B=="boolean"&&(p.value=B)}),e.watch(()=>l.modelValue,B=>{f.value={...B}},{deep:!0,immediate:!0});function K(B,z){if(u.value)return;const A={...f.value,[B]:z};f.value=A,a("update:modelValue",A)}function Z(B){const z=B.searchProps??{};return{...z,prop:B.prop,label:B.searchLabel??B.label,span:oe(B),itemType:B.searchType??"input",showSlot:!!g[`${B.prop}-search`],options:z.options??B.searchOptions??B.dicData,placeholder:z.placeholder??B.searchPlaceholder,valueFormat:z.valueFormat??B.searchValueFormat,disabled:u.value||z.disabled===!0,formItemProps:{required:B.searchRequired,class:["jt-filter-bar__item",{"is-required":B.searchRequired}]},onEnter:(...A)=>{ae(z.onEnter,...A),re()},"onUpdate:modelValue":A=>{ae(z["onUpdate:modelValue"],A),K(B.prop,A)}}}function ae(B,...z){if(Array.isArray(B)){B.forEach(A=>ae(A,...z));return}typeof B=="function"&&B(...z)}async function re(){if(!u.value){if(s.value)try{await s.value.validate()}catch{return}a("search")}}function de(){u.value||a("reset")}function H(){p.value=!p.value}function oe(B){return Math.min(y.value,Math.max(1,B.searchSpan??1))}function Ie(B){return B.reduce((z,A)=>z+oe(A),0)}function ne(B){return typeof B=="number"?`${B}px`:B}function se(B,z){return typeof B=="number"?B:z}function pe(B){return typeof B=="number"?`${B}px`:B}return t({formRef:s,searchDisabled:u,searchLoading:b,searchDone:V}),(B,z)=>{const A=G.ElForm;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["jt-filter-bar",`is-label-${h.value}`]),style:e.normalizeStyle({"--jt-filter-columns":y.value,"--jt-filter-label-width":c.value,"--jt-filter-column-gap":`${S.value}px`,"--jt-filter-row-gap":`${P.value}px`,"--jt-filter-padding":w.value})},[e.createVNode(A,{ref_key:"formRef",ref:s,class:"jt-filter-bar__form",model:f.value,"label-position":h.value,"label-width":c.value,disabled:e.unref(u),onSubmit:z[0]||(z[0]=e.withModifiers(()=>{},["prevent"]))},{default:e.withCtx(()=>[e.createVNode(e.unref(Ze),{configs:R.value,"form-data":f.value},e.createSlots({actions:e.withCtx(()=>[e.createElementVNode("div",Ht,[e.renderSlot(B.$slots,"search-menu",{search:re,reset:de,disabled:e.unref(u),collapsed:p.value,toggleCollapse:H},()=>[k.value?(e.openBlock(),e.createBlock(e.unref(ve),{key:0,class:"jt-filter-bar__btn-collapse",onClick:H},{icon:e.withCtx(()=>[e.createElementVNode("img",{class:e.normalizeClass(["jt-filter-bar__icon-arrow",{"is-collapsed":p.value}]),src:e.unref(Jt),alt:""},null,10,Ut)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(p.value?"展 开":"收 起"),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(ve),{class:"jt-filter-bar__btn-reset",disabled:e.unref(u),onClick:de},{icon:e.withCtx(()=>[e.createElementVNode("img",{src:e.unref(qt),alt:""},null,8,Wt)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(v.value.resetBtnText??"重 置"),1)]),_:1},8,["disabled"]),e.createVNode(e.unref(ve),{class:"jt-filter-bar__btn-query",type:"primary",disabled:e.unref(u),onClick:re},{icon:e.withCtx(()=>[e.createElementVNode("img",{src:e.unref(Kt),alt:""},null,8,Yt)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(v.value.searchBtnText??"查 询"),1)]),_:1},8,["disabled"])],!0)])]),_:2},[e.renderList(_.value,le=>({name:le.prop,fn:e.withCtx(()=>[e.renderSlot(B.$slots,`${le.prop}-search`,{value:f.value[le.prop],column:le,setValue:_e=>K(le.prop,_e),search:re,reset:de,disabled:e.unref(u)},void 0,!0)])}))]),1032,["configs","form-data"])]),_:3},8,["model","label-position","label-width","disabled"])],6)}}}),Qe=J(Zt,[["__scopeId","data-v-a6a4f467"]]),Qt={key:1},Xt={key:2},eo={key:3},to=e.defineComponent({name:"JtTable",__name:"JtTable",props:{data:{},columns:{},option:{},tableEvents:{}},setup(o,{expose:t}){const n=o,l=e.useSlots(),a=e.ref(),s=e.computed(()=>n.option??{}),g=e.computed(()=>n.columns.filter(d=>!d.hide));function f(d){return!!l[`${d}-header`]}function u(d){return!!l[`${d}-data`]}function b(d){return{width:d.width,minWidth:d.minWidth,align:d.align,fixed:d.fixed,sortable:d.sortable,showOverflowTooltip:d.showOverflowTooltip,...d.columnOptions}}function V(d){return!v(d.columnOptions?.type)}function v(d){return d==="selection"||d==="index"||d==="expand"}function p(d,y){return d.find(I=>I.value===y)?.label??String(y??"")}return t({tableRef:a}),(d,y)=>{const I=G.ElTableColumn,F=G.ElTable;return e.openBlock(),e.createBlock(F,e.mergeProps({ref_key:"tableRef",ref:a,data:d.data,"row-key":s.value.rowKey??"id",height:s.value.height,"max-height":s.value.maxHeight,"empty-text":s.value.emptyText,class:"jt-table"},s.value.tableProps,e.toHandlers(d.tableEvents)),{default:e.withCtx(()=>[s.value.selection?(e.openBlock(),e.createBlock(I,{key:0,type:"selection",width:"55",align:"center"})):e.createCommentVNode("",!0),s.value.index?(e.openBlock(),e.createBlock(I,{key:1,type:"index",label:s.value.indexLabel??"序号",width:"60",align:"center"},null,8,["label"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,E=>(e.openBlock(),e.createBlock(I,e.mergeProps({key:E.prop,prop:E.prop,label:E.label,formatter:!u(E.prop)&&!E.dicData?E.formatter:void 0,ref_for:!0},b(E)),e.createSlots({_:2},[f(E.prop)?{name:"header",fn:e.withCtx(c=>[e.renderSlot(d.$slots,`${E.prop}-header`,e.mergeProps({ref_for:!0},c),void 0,!0)]),key:"0"}:void 0,V(E)?{name:"default",fn:e.withCtx(c=>[u(E.prop)?e.renderSlot(d.$slots,`${E.prop}-data`,e.mergeProps({key:0,ref_for:!0},c),void 0,!0):E.dicData?(e.openBlock(),e.createElementBlock("span",Qt,e.toDisplayString(p(E.dicData,c.row[E.prop])),1)):E.formatter?(e.openBlock(),e.createElementBlock("span",Xt,e.toDisplayString(E.formatter(c.row,c.column,c.row[E.prop],c.$index)),1)):(e.openBlock(),e.createElementBlock("span",eo,e.toDisplayString(c.row[E.prop]),1))]),key:"1"}:void 0]),1040,["prop","label","formatter"]))),128)),s.value.menu?(e.openBlock(),e.createBlock(I,{key:2,label:s.value.menuLabel??"操作",width:s.value.menuWidth,"min-width":s.value.menuMinWidth,align:s.value.menuAlign??"center",fixed:s.value.menuFixed},{default:e.withCtx(E=>[e.renderSlot(d.$slots,"menu",e.normalizeProps(e.guardReactiveProps(E)),void 0,!0)]),_:3},8,["label","width","min-width","align","fixed"])):e.createCommentVNode("",!0)]),_:3},16,["data","row-key","height","max-height","empty-text"])}}}),Xe=J(to,[["__scopeId","data-v-513fa12d"]]),oo={class:"jt-pagination"},no={class:"jt-pagination__count"},lo=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,l=e.computed(()=>n.option??{}),a=t;function s(g){a("current-change",g),a("page-change",g)}return(g,f)=>{const u=G.ElPagination;return e.openBlock(),e.createElementBlock("div",oo,[e.createVNode(u,{"current-page":g.currentPage,"page-size":g.pageSize,"page-sizes":l.value.pageSizes??[10,20,50,100],total:g.total,layout:l.value.paginationLayout??"sizes, prev, pager, next, jumper","onUpdate:currentPage":f[0]||(f[0]=b=>g.$emit("update:currentPage",b)),"onUpdate:pageSize":f[1]||(f[1]=b=>g.$emit("update:pageSize",b)),onCurrentChange:s,onSizeChange:f[2]||(f[2]=b=>g.$emit("size-change",b))},null,8,["current-page","page-size","page-sizes","total","layout"]),e.createElementVNode("span",no,"共"+e.toDisplayString(g.total)+"条记录",1)])}}}),et=J(lo,[["__scopeId","data-v-746af6aa"]]),ao={class:"jt-crud-table"},ro={key:1,class:"jt-crud-table__toolbar"},so=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 l=o,a=n,s=e.useModel(o,"currentPage"),g=e.useModel(o,"pageSize"),f=e.useModel(o,"searchModel"),u=e.useSlots(),b=e.ref(),V=e.ref(),v=e.computed(()=>l.option),p=e.computed(()=>v.value.searchShow!==!1),d=e.computed(()=>v.value.paginationShow!==!1),y=e.computed(()=>l.columns.filter(w=>w.search&&!!u[`${w.prop}-search`])),I=e.computed(()=>l.columns.filter(w=>!w.hide&&!!u[`${w.prop}-header`])),F=e.computed(()=>l.columns.filter(w=>!w.hide&&!!u[`${w.prop}-data`]));function E(){const w={};return l.columns.forEach(k=>{k.search&&(w[k.prop]=void 0)}),w}function c(){a("search",{...f.value})}function h(){f.value=E(),a("reset")}function S(){V.value?.searchLoading()}function P(){V.value?.searchDone()}return t({tableRef:e.computed(()=>b.value?.tableRef),filterBarRef:V,searchLoading:S,searchDone:P}),(w,k)=>{const N=G.ElLoadingDirective;return e.openBlock(),e.createElementBlock("div",ao,[e.renderSlot(w.$slots,"header",{},void 0,!0),p.value?(e.openBlock(),e.createBlock(Qe,{key:0,ref_key:"filterBarRef",ref:V,modelValue:f.value,"onUpdate:modelValue":k[0]||(k[0]=_=>f.value=_),columns:w.columns,option:v.value,onSearch:c,onReset:h},e.createSlots({_:2},[e.renderList(y.value,_=>({name:`${_.prop}-search`,fn:e.withCtx(R=>[e.renderSlot(w.$slots,`${_.prop}-search`,e.normalizeProps(e.guardReactiveProps(R)),void 0,!0)])}))]),1032,["modelValue","columns","option"])):e.createCommentVNode("",!0),e.unref(u).toolbar?(e.openBlock(),e.createElementBlock("div",ro,[e.renderSlot(w.$slots,"toolbar",{},void 0,!0)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(Xe,{ref_key:"jtTableRef",ref:b,data:w.data,columns:w.columns,option:v.value,"table-events":w.tableEvents},e.createSlots({_:2},[e.renderList(I.value,_=>({name:`${_.prop}-header`,fn:e.withCtx(R=>[e.renderSlot(w.$slots,`${_.prop}-header`,e.normalizeProps(e.guardReactiveProps(R)),void 0,!0)])})),e.renderList(F.value,_=>({name:`${_.prop}-data`,fn:e.withCtx(R=>[e.renderSlot(w.$slots,`${_.prop}-data`,e.normalizeProps(e.guardReactiveProps(R)),void 0,!0)])})),v.value.menu?{name:"menu",fn:e.withCtx(_=>[e.renderSlot(w.$slots,"menu",e.normalizeProps(e.guardReactiveProps(_)),void 0,!0)]),key:"0"}:void 0]),1032,["data","columns","option","table-events"])),[[N,v.value.loading]]),d.value?(e.openBlock(),e.createBlock(et,{key:2,"current-page":s.value,"onUpdate:currentPage":k[1]||(k[1]=_=>s.value=_),"page-size":g.value,"onUpdate:pageSize":k[2]||(k[2]=_=>g.value=_),total:w.total,option:v.value,onPageChange:k[3]||(k[3]=_=>w.$emit("page-change",_)),onSizeChange:k[4]||(k[4]=_=>w.$emit("size-change",_))},null,8,["current-page","page-size","total","option"])):e.createCommentVNode("",!0)])}}}),io=J(so,[["__scopeId","data-v-ad466273"]]),co={class:"jt-page-header__title"},uo={key:0},po={key:0,class:"jt-page-header__operates"},fo=e.defineComponent({name:"JtPageHeader",__name:"index",props:{type:{default:"section"},title:{},operates:{default:()=>[]}},emits:["operate-click"],setup(o,{emit:t}){const n=o,l=t,a=e.useSlots(),s=e.computed(()=>n.operates.length>0||!!a.operates);function g(f,u){f.onClick?.(f,u),l("operate-click",f,u)}return(f,u)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["jt-page-header",`jt-page-header--${f.type}`]},f.$attrs),[e.createElementVNode("div",co,[e.renderSlot(f.$slots,"title",{},()=>[f.title?(e.openBlock(),e.createElementBlock("span",uo,e.toDisplayString(f.title),1)):e.createCommentVNode("",!0)],!0)]),s.value?(e.openBlock(),e.createElementBlock("div",po,[e.renderSlot(f.$slots,"operates",{operates:f.operates},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.operates,b=>(e.openBlock(),e.createBlock(e.unref(ve),e.mergeProps({key:b.key??b.label,ref_for:!0},b.buttonProps,{type:b.type,disabled:b.disabled,loading:b.loading,plain:b.plain,text:b.text,link:b.link,icon:b.icon,onClick:V=>g(b,V)}),{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(b.label),1)]),_:2},1040,["type","disabled","loading","plain","text","link","icon","onClick"]))),128))],!0)])):e.createCommentVNode("",!0)],16))}}),mo=J(fo,[["__scopeId","data-v-9e6bb356"]]);function tt(o=null){return{scheme:null,node:null,topNodes:[],treeNodes:[],activeNode:null,activeSection:null,sections:[],sectionMap:{},raw:o}}function Ve(o){const t=ct(o),n=it(t),l=Io(t).flatMap(a=>st(a,n));return{...tt(o),scheme:n,topNodes:l,treeNodes:l}}function Te(o,t,n){return o.map(l=>l.key===t||l.tagId===t||l.id===t?{...l,children:n,loaded:!0}:{...l,children:Te(l.children,t,n)})}function ot(o,t={},n=null){const l=ct(o),a=it(l,t),s=go(l,t,n),g=Object.fromEntries(s.map(f=>[f.key,f]));return{scheme:a,node:n,topNodes:[],treeNodes:[],activeNode:n,activeSection:s[0]??null,sections:s,sectionMap:g,raw:o}}function nt(o){return o.multRow||o.htmlDisplay==="T"?"table":"form"}function lt(o,t={}){return{...t,infSchmId:t.infSchmId??j(o.raw.infSchmId),emplid:t.emplid??j(o.raw.emplid),tagId:t.tagId??o.requestTagId??o.tagId,infSetId:t.infSetId??o.infSetId,setId:t.setId??o.setId,infSetFields:o.renderType==="table"?o.rows.map($e):[$e(o.model)],section:o}}function vo(o){const t=o;return!!(t&&typeof t=="object"&&typeof t.key=="string"&&typeof t.tagId=="string")}function at(o){const t=ut(o);return(Array.isArray(t)?t:he(O(t),["options","list","records","data"])).map(l=>{const a=O(l);return{id:a.id,code:a.code,label:T(a.label??a.name??a.descr??a.text??a.value??a.code),name:j(a.name),value:a.value??a.code??a.id??a.label??a.name,raw:l}})}function go(o,t,n){const l=he(o,["sections","sets","list"]);return l.length>0?l.map(a=>De(a,t,n,l.length===1)):o.infSetMark||o.infSetFields||o.fields?[De(o,t,n,!0)]:[]}function De(o,t,n,l){const a=O(o),s=ho(a.infSetMark??a),g=yo(a.infSetFields??a.fields??[]),f=ko(a.infSetValues??a.rows??a.data,g),u=f[0]?$e(f[0]):rt(g),b=O(a.tag),V=T(a.tagId??a.infTagId??b.tagId),v=T(t.tagId??n?.tagId),p=T(n?.key),d=l?t.infSetId??n?.infSetId:void 0,y=l?t.setId:void 0,I=l?n?.code:void 0,F=s.setId||T(a.setId),E=T(a.infSetId)||F||T(d),c=F||T(y??E),h=s.code||T(a.code??I??c),S=c||h||E||V,P={key:S,id:S,setId:c,code:h,tagId:V,requestTagId:v||void 0,ownerNodeKey:p||void 0,infSetId:E,title:s.name||T(a.name??n?.tagName??S),renderType:nt(s),mark:s,fields:g,model:u,rows:f,operationInfo:we(t.operationInfo??a.operationInfo),raw:a};return P.renderType==="form"&&f.length===0&&(P.rows=[{...u,__rowKey:`${S}-0`}]),P}function ho(o){const t=O(o),n=T(t.htmlDisplay||"F");return{name:T(t.name??t.title),parentName:j(t.parentName),value:j(t.value),type:j(t.type),code:T(t.code),setId:T(t.setId??t.id??t.key),htmlDisplay:n,multRow:Y(t.multRow),isRequired:Y(t.isRequired),raw:t}}function yo(o){return(Array.isArray(o)?o:[]).map((n,l)=>bo(n,l))}function bo(o,t){const n=O(o),l=T(n.code??n.fieldCode??n.prop??n.key??`field_${t}`),a=T(n.label??n.name??n.tagName??l);return{id:T(n.id??n.key??n.prop??l),key:T(n.key??n.prop??l),code:l,label:a,value:n.value??n.defaultValue??"",type:Co(n),fieldType:j(n.fieldType),renderType:Bo(n),required:Y(n.required??n.isRequired),readonly:Y(n.readonly??n.disabled),visible:n.visible===void 0?Y(n.visibled??!0):Y(n.visible),htmlDisplay:Y(n.htmlDisplay),multRow:Y(n.multRow),isRequired:Y(n.isRequired),disabled:n.disabled===void 0?void 0:Y(n.disabled),span:ft(n.span??n.colSpan),width:je(n.width),minWidth:je(n.minWidth),placeholder:j(n.placeholder),options:at(n.options),interface:dt(n.interface),cascadeClearFields:ze(n.cascadeClearFields),cascadeDependFields:ze(n.cascadeDependFields),props:Ne(n.props),formItemProps:Ne(n.formItemProps),raw:n}}function ko(o,t){if(Array.isArray(o)&&o.some(a=>{const s=O(a);return t.some(g=>s[g.code]!==void 0||s[g.key]!==void 0)}))return o.map((a,s)=>({...O(a),__rowKey:T(O(a).__rowKey??O(a).key??s)}));const n=rt(t);return Object.keys(n).length?[{...n,__rowKey:"0"}]:[]}function rt(o){return o.reduce((t,n)=>(t[n.code||n.key]=n.value,t),{})}function st(o,t,n=""){const l=O(o),a=he(l,["children","list","tags"]).flatMap(g=>st(g,t,T(l.tagId??l.id??l.key))),s=_o(l.infSetList);return a.length===0&&s.length>0?s.map((g,f)=>wo(l,g,t,n,f)):[So(l,t,n,a)]}function So(o,t,n,l){const a=T(o.tagId??o.id??o.key),s=T(o.tagName??o.name??o.label??a);return{key:T(o.key??a),id:a,tagId:a,tagName:s,label:s,tagLevel:j(o.tagLevel??o.level)??null,level:pt(o.tagLevel??o.level),parentTagId:j(o.parentTagId??o.parentId??n),parentId:j(o.parentTagId??o.parentId??n)??null,infSchmId:j(o.infSchmId??t?.infSchmId),schemeId:T(o.infSchmId??t?.infSchmId),infSetId:j(o.infSetId??o.setId),setId:j(o.setId),code:j(o.code),children:l,infSetList:[],operationInfo:we(o.operationInfo),loaded:l.length>0,raw:o}}function wo(o,t,n,l,a){const s=T(o.tagId??o.id??o.key),g=T(o.tagName??o.name??o.label??s),f=t.infSetId||T(t.setId),u=t.setId||f,b=f||`${s}-${a}`;return{key:b,id:b,tagId:s,tagName:g,label:g,tagLevel:j(o.tagLevel??o.level)??null,level:pt(o.tagLevel??o.level),parentTagId:j(o.parentTagId??o.parentId??l),parentId:j(o.parentTagId??o.parentId??l)??null,infSchmId:j(o.infSchmId??n?.infSchmId),schemeId:T(o.infSchmId??n?.infSchmId),infSetId:f,setId:u,code:j(o.code??f),children:[],infSetList:[t],operationInfo:we(o.operationInfo),loaded:!0,raw:{...o,infSetId:f,setId:u,infSetList:[t.raw]}}}function it(o,t={}){const n=O(o.globalInfoSchmMark??o.scheme??o),l=T(n.infSchmId??t.infSchmId),a=T(n.emplid??t.emplid);return!l&&!a&&Object.keys(n).length===0?null:{infSchmId:l,emplid:a,id:l,mark:T(n.globalInfoSchmMark??o.globalInfoSchmMark),config:Array.isArray(o.globalInfoSchmConfig)?"":T(n.globalInfoSchmConfig??o.globalInfoSchmConfig),raw:n}}function Io(o){if(Array.isArray(o.globalInfoSchmConfig))return o.globalInfoSchmConfig;const t=O(o.globalInfoSchmConfig),n=he(t,["children","tree","list","tags"]);return n.length?n:he(o,["children","tree","list","tags","records"])}function _o(o){return Array.isArray(o)?o.map(t=>{const n=O(t);return{infSetId:T(n.infSetId??n.setId??n.id),setId:j(n.setId),operationInfo:we(n.operationInfo),raw:n}}):[]}function ct(o){return O(ut(o))}function ut(o){const t=O(o);return t.data??t.result??o}function he(o,t){for(const n of t){const l=o[n];if(Array.isArray(l))return l}return[]}function $e(o){const t={...o};return delete t.__rowKey,delete t.fields,t}function dt(o){const t=O(o);if(!(!t.method&&!t.url&&!t.params))return{...t,method:j(t.method),url:j(t.url),params:Ne(t.params)}}function we(o){const t=O(o);if(Object.keys(t).length!==0)return Object.fromEntries(Object.entries(t).map(([n,l])=>[n,dt(l)??l]))}function ze(o){if(!Array.isArray(o))return;const t=o.map(n=>T(n)).filter(Boolean);return t.length?t:void 0}function Bo(o){if(Y(o.htmlDisplay))return"html";if(Y(o.multRow))return"multi-row";const t=T(o.renderType).toLowerCase();return t==="code"||t==="empty"?t:"text"}function Co(o){const t=T(o.fieldType??o.type??o.renderType).toLowerCase();return t.includes("date")?"date":t.includes("select")||t.includes("enum")?"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 Ne(o){const t=O(o);return Object.keys(t).length?t:void 0}function je(o){return typeof o=="string"||typeof o=="number"?o:void 0}function O(o){return o&&typeof o=="object"&&!Array.isArray(o)?o:{}}function T(o){return o==null?"":String(o).trim()}function j(o){return T(o)||void 0}function pt(o){const t=ft(o);return t===void 0?null:t}function ft(o){if(o==null||o==="")return;const t=Number(o);return Number.isFinite(t)?t:void 0}function Y(o){return typeof o=="string"?["true","1","y","yes","t","是"].includes(o.toLowerCase()):!!o}const te=o=>o.key||o.code,W=o=>o.key||o.setId,ie=o=>new Error(`[GlobalInfo] ${o}`),ce=o=>o&&typeof o=="object"&&!Array.isArray(o)?o:{},ke=o=>{const t=ce(o);return!!(t.url||t.method||t.params)},Eo=o=>String(o??"").trim(),ye=o=>Array.from(new Set(o.map(Eo).filter(Boolean))),ge=o=>ye([o?.key,o?.id,o?.setId,o?.infSetId,o?.tagId,o?.code,...(o?.infSetList??[]).map(t=>t.infSetId),...(o?.infSetList??[]).map(t=>t.setId)]),Vo=o=>ye([o.key,o.id,o.setId,o.infSetId,o.tagId,o.code]),fe=(o={})=>({loading:!1,saving:!1,error:null,loaded:!1,editing:!1,...o}),me=o=>!!(o&&typeof o=="object"&&"children"in o),mt=(o,t,n)=>{const l=Vo(o),a=ye([n,...ge(t)]);return a.length===0?!1:a.some(s=>l.includes(s))},$o=(o,t,n)=>ye([n,...ge(t)]).length===0?o:o.filter(a=>mt(a,t,n)),vt=o=>{const t=e.ref(!1),n=e.ref(!1),l=e.ref(!1),a=e.shallowRef(null),s=e.shallowRef([]),g=e.shallowRef(null),f=e.shallowRef(null),u=e.shallowRef(null),b=e.shallowRef({}),V=e.shallowRef({}),v=e.ref([]),p=e.shallowRef({}),d=e.ref([]),y=e.computed(()=>{const i=v.value.map(m=>b.value[m]).filter(m=>!!m),r=Object.entries(b.value).filter(([m])=>!v.value.includes(m)).map(([,m])=>m);return[...i,...r]}),I=e.computed(()=>({loading:t.value,detailLoading:n.value,saving:l.value,editingSectionKeys:d.value,sectionMap:b.value,sectionStatusMap:Object.fromEntries(Object.entries(p.value).map(([i,r])=>[i,{...r,editing:d.value.includes(V.value[i]??i)}])),error:a.value})),F=()=>({adaptScene:o.adaptScene,emplid:o.emplid}),E=i=>({...F(),infSchmId:i.infSchmId,tagId:i.tagId,tagLevel:i.tagLevel,parentTagId:i.parentTagId}),c=(i=f.value,r=u.value)=>({...F(),infSchmId:i?.infSchmId,tagId:i?.tagId,infSetId:r?.infSetId??i?.infSetId,setId:r?.setId??i?.setId}),h=async(i,r)=>{if(!o.service.requestOperation)throw ie("service.requestOperation is required for operationInfo");return o.service.requestOperation(i,r)},S=(i,r={},m)=>{const C=ce(i.params),$=m?.cascadeDependFields??[];let L=0;return Object.fromEntries(Object.entries(C).map(([M,D])=>{if(D!=="")return[M,D];if(r[M]!==void 0)return[M,r[M]];const x=$[L];return L+=1,[M,x?r[x]??"":D]}))},P=i=>{const m=ce(i.operationInfo).openTag;return ke(m)?m:void 0},w=(i,r,m)=>{const C=ce(i?.operationInfo).queryInfoSet;if(ke(C))return C;const $=r?.infSetList.find(M=>M.infSetId===m),L=ce($?.operationInfo).queryInfoSet;return ke(L)?L:void 0},k=i=>{const r=ce(i.operationInfo).editInfoSet;return ke(r)?r:void 0},N=(i,r)=>{if(!r)return i[0]??null;for(const m of i){if(ge(m).includes(r))return m;const C=N(m.children,r);if(C)return C}return null},_=(i=u.value)=>{if(i)return typeof i=="string"?i:me(i)?Z(i):W(i)},R=(i=u.value)=>{const r=_(i);if(!r)return null;const m=V.value[r]??r;return b.value[m]??null},K=(i=u.value)=>{const r=_(i);if(r)return V.value[r]??r},Z=(i=u.value)=>{if(i)return typeof i=="string"?i:me(i)?i.setId??i.infSetId??i.key:W(i)},ae=(i=u.value)=>{if(me(i))return i;if(typeof i=="string"){const r=N(s.value,i);if(r)return r;const m=R(i);return m?.ownerNodeKey?N(s.value,m.ownerNodeKey)??f.value:m||f.value&&ge(f.value).includes(i)?f.value:null}return i?.ownerNodeKey?N(s.value,i.ownerNodeKey)??f.value:f.value},re=(i=u.value)=>!i||me(i)?null:R(i),de=(i=u.value)=>{const r=Z(i);if(!r)return fe();const m=V.value[r]??r;return fe({...p.value[r],...p.value[m],editing:d.value.includes(m)})},H=(i,r)=>{const m=Z(i);m&&(p.value={...p.value,[m]:fe({...p.value[m],...r,editing:d.value.includes(m)})})},oe=(i=g.value?.raw??null,r=f.value)=>{const m=y.value,C=u.value&&m.find($=>W($)===W(u.value))?u.value:null;g.value={scheme:g.value?.scheme??null,node:r,topNodes:s.value,treeNodes:s.value,activeNode:r,activeSection:C,sections:m,sectionMap:b.value,raw:i},u.value=C},Ie=(i,r=f.value,m)=>{const C={...b.value},$={...V.value},L=[...v.value],M={...p.value},D=$o(i.sections,r,m),x=ye([m,...ge(r)]).length>0,q=D.find(ee=>mt(ee,r,m))??(x?null:i.activeSection??D[0]??u.value??null);return D.forEach(ee=>{const X=W(ee);C[X]=ee,L.includes(X)||L.push(X),M[X]=fe({...M[X],loaded:!0,loading:!1,error:null,editing:d.value.includes(X)})}),m&&q?$[m]=W(q):m&&($[m]=""),m&&(M[m]=fe({...M[m],loaded:!0,loading:!1,error:null,editing:!!(q&&d.value.includes(W(q)))})),b.value=C,V.value=$,v.value=L,p.value=M,g.value={...i,scheme:i.scheme??g.value?.scheme??null,topNodes:s.value,treeNodes:s.value,activeNode:r,activeSection:q,sections:D,sectionMap:b.value},u.value=q,q},ne=(i,r)=>{const m=K(i),C=m?b.value[m]:null;if(!m||!C)return;const $=r(C);b.value={...b.value,[m]:$},u.value=W(u.value??$)===m?$:u.value,oe()},se=async(i=u.value??f.value)=>{const r=re(i),m=ae(i)??f.value,C=Z(i);if(!m)return null;if(!o.service.requestOperation)throw ie("service.requestOperation is required");n.value=!0,a.value=null,H(C??m,{loading:!0,error:null});try{const $=r?[{infSetId:r.infSetId,setId:r.setId,operationInfo:r.operationInfo,raw:r.raw}]:m.infSetList;if($.length===0)throw ie("node.infSetList is required");const L=await Promise.all($.map(async D=>{const x=w(r,m,D.infSetId),q={...c(m,r),infSetId:D.infSetId,setId:D.setId,operationInfo:D.operationInfo};if(x){const ee=await h(x,{type:"queryInfoSet",node:m,section:r,params:q});return ot(ee,q,m)}throw ie("infoSet.operationInfo.queryInfoSet is required")})),M={...L[0],sections:L.flatMap(D=>D.sections),sectionMap:Object.fromEntries(L.flatMap(D=>D.sections).map(D=>[D.key,D]))};return Ie(M,m,C)}catch($){throw a.value=$,H(C??m,{loading:!1,error:$}),$}finally{n.value=!1,H(C??m,{loading:!1})}},pe=(i=u.value)=>se(i),B=(i=u.value)=>{if(!i)return null;if(!me(i)&&typeof i!="string")return R(i);const r=Z(i);return r?b.value[V.value[r]??r]??null:null},z=async(i=f.value)=>i?(await se(i),g.value):(g.value=null,u.value=null,b.value={},V.value={},v.value=[],p.value={},null),A=async i=>{const r=P(i);if(!r)return i.children;const m=E(i),C=await h(r,{type:"openTag",node:i,params:m});return Ve(C).treeNodes},le=async i=>{if(i.loaded)return i.children;const r=await A(i);return r.length>0&&(s.value=Te(s.value,i.key,r)),r},_e=async i=>{const r=typeof i=="string"?N(s.value,i):i;return r?(f.value=r,u.value=null,d.value=[],await le(r),oe(g.value?.raw,r),r):null},Be=async()=>{const i=o.service.templateTree;if(!i)throw ie("service.templateTree is required");t.value=!0,a.value=null;try{const r=await i(F()),m=Ve(r),C=await Promise.all(m.treeNodes.map(async L=>{const M=await A(L);return{...L,children:M,loaded:M.length>0||L.loaded}}));s.value=C,u.value=null,b.value={},V.value={},v.value=[],p.value={},d.value=[];const $=N(C,o.initialActiveNodeKey)??N(C);return f.value=$,g.value={...m,treeNodes:C,activeNode:$,sectionMap:b.value,sections:y.value},s.value}catch(r){throw a.value=r,r}finally{t.value=!1}},Et=async()=>{const i=_();await pe(u.value??f.value);const r=y.value.find(m=>W(m)===i);return r&&(u.value=r),oe(),g.value},Le=(i=u.value)=>{const r=K(i);return!!(r&&d.value.includes(r))},Vt=(i=u.value)=>{const r=K(i);!r||Le(r)||(d.value=[...d.value,r],H(r,{editing:!0}))},Ge=(i=u.value)=>{const r=K(i);r&&(d.value=d.value.filter(m=>m!==r),H(r,{editing:!1}))},$t=(i,r,m)=>{const C=typeof r=="string"?r:te(r);ne(i,$=>{const M=(typeof r=="string"?$.fields.find(x=>te(x)===C||x.code===C):r)?.cascadeClearFields??[],D={...$.model,[C]:m};return M.forEach(x=>{D[x]=""}),{...$,model:D,rows:$.renderType==="form"?[{...$.rows[0],...D}]:$.rows,fields:$.fields.map(x=>{const q=te(x);return q===C||x.code===C?{...x,value:m}:M.includes(q)||M.includes(x.code)?{...x,value:""}:x})}})},Nt=async(i,r,m={})=>{const C=R(i);if(!C)return[];const $=Object.keys(m).length>0?m:C.model,L=typeof r=="string"?r:te(r),M=typeof r=="string"?C.fields.find(Q=>te(Q)===L||Q.code===L):r,D=M?.interface;if(!M||!D)return M?.options??[];if((M.cascadeDependFields??[]).some(Q=>{const U=$[Q];return U==null||U===""}))return ne(C,Q=>({...Q,fields:Q.fields.map(U=>te(U)===L||U.code===L?{...U,options:[]}:U)})),[];const q=S(D,$,M),ee=await h({...D,params:q},{type:"fieldOptions",node:ae(C),section:C,field:M,params:q}),X=at(ee);return ne(C,Q=>({...Q,fields:Q.fields.map(U=>te(U)===L||U.code===L?{...U,options:X}:U)})),X},Pt=(i,r)=>{if(Array.isArray(r)){be(i,r);return}ne(i,m=>({...m,model:r,rows:m.renderType==="form"?[{...m.rows[0],...r}]:m.rows,fields:m.fields.map(C=>({...C,value:r[te(C)]}))}))},be=(i,r)=>{ne(i,m=>({...m,rows:r,data:r}))},Tt={loadTree:Be,selectNode:_e,loadDetail:z,reloadActiveSection:Et,loadSection:se,reloadSection:pe,getSection:B,getSectionStatus:de,startEdit:Vt,cancelEdit:Ge,updateField:$t,loadFieldOptions:Nt,updateModel:Pt,updateTableRows:be,saveRow:(i,r={},m=-1)=>{const $=[...R(i)?.rows??[]];$.splice(m>=0?m:$.length,m>=0?1:0,r),be(i,$)},deleteRow:(i,r)=>{const m=R(i),C=typeof r=="string"?Number(r):r,$=(m?.rows??[]).filter((L,M)=>M!==C);be(i,$)},saveSection:async(i=u.value)=>{const r=_(i),m=R(i);if(!m)return null;const C=k(m);if(!C)throw ie("section.operationInfo.editInfoSet is required");l.value=!0,a.value=null,r&&r!==W(m)&&H(r,{saving:!0,error:null}),H(m,{saving:!0,error:null});try{const $=c(f.value,m),L=lt(m,$),M=await h({...C,params:{...S(C,m.model),...L}},{type:"editInfoSet",node:f.value,section:m,params:L});return Ge(m),await pe(m),M}catch($){throw a.value=$,r&&r!==W(m)&&H(r,{saving:!1,error:$}),H(m,{saving:!1,error:$}),$}finally{l.value=!1,r&&r!==W(m)&&H(r,{saving:!1}),H(m,{saving:!1})}},isEditing:Le};return e.watch(()=>o.emplid,()=>{(o.autoLoad??!0)&&Be()}),e.onMounted(()=>{(o.autoLoad??!0)&&Be()}),{viewModel:g,nodes:s,sections:y,sectionMap:b,sectionStatusMap:p,activeNode:f,activeSection:u,state:I,actions:Tt}},No=e.defineComponent({name:"GlobalInfoProvider",__name:"GlobalInfoProvider",props:{service:{},adaptScene:{},emplid:{},autoLoad:{type:Boolean,default:!0},initialActiveNodeKey:{}},setup(o){const n=vt(o),{viewModel:l,nodes:a,sections:s,activeNode:g,activeSection:f,state:u,actions:b}=n;return(V,v)=>e.renderSlot(V.$slots,"default",e.normalizeProps(e.guardReactiveProps({viewModel:e.unref(l),nodes:e.unref(a),sections:e.unref(s),activeNode:e.unref(g),activeSection:e.unref(f),state:e.unref(u),actions:e.unref(b)})))}});function Po(o){return xe(o.type||o.fieldType)||xe(o.renderType)||"text"}function gt(o){return Ae(o.type||o.fieldType)||Ae(o.renderType)||"text"}function Fe(o){return o==null||o===""||Array.isArray(o)&&o.length===0}function ht(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 yt(o,t,n="-"){const l=gt(o);return l==="empty"||Fe(t)?n:ht(t)?(console.error("[globalInfo] field value render failed",t),n):l==="select"?To(o,t,n):l==="switch"?bt(t)?"是":"否":l==="file"?Fo(t,n):l==="multi-row"?Mo(t):String(t)}function bt(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 xe(o){const t=String(o??"").toLowerCase();return t==="upload"||t==="attachment"?"file":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 Ae(o){const t=String(o??"").toLowerCase();return t==="upload"||t==="attachment"?"file":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 To(o,t,n){if(Array.isArray(t)){const l=t.map(a=>Oe(o,a)||String(a??"").trim()).filter(Boolean);return l.length>0?l.join("、"):n}return Oe(o,t)||String(t)}function Oe(o,t){return o.options?.find(l=>l.value===t||String(l.value)===String(t))?.label??""}function Fo(o,t){if(Array.isArray(o)){const n=o.map(l=>Je(l)).filter(Boolean);return n.length>0?n.join("、"):t}return Je(o)||t}function Je(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 Mo(o){return Array.isArray(o)?o.map(t=>ht(t)?(console.error("[globalInfo] multi-row field item render failed",t),""):t&&typeof t=="object"?JSON.stringify(t):String(t)).filter(Boolean).join(`
|
|
3
|
-
`):String(o)}const Ro=["disabled","accept","multiple"],Lo={key:0,class:"global-info-field-control__file-text"},Go={key:1,class:"global-info-field-control__file-upload"},Do=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,l=t,a=["textarea","html","code","multi-row"],s=e.computed(()=>Po(n.field)),g=e.computed(()=>n.disabled||n.field.disabled||n.field.readonly),f=e.computed(()=>n.modelValue===void 0||n.modelValue===null?"":String(n.modelValue)),u=e.computed(()=>{if(n.modelValue===void 0||n.modelValue===null||n.modelValue==="")return;const c=typeof n.modelValue=="number"?n.modelValue:Number(n.modelValue);return Number.isFinite(c)?c:void 0}),b=e.computed(()=>{const c=n.field.props?.activeValue??n.field.props?.["active-value"],h=n.field.props?.inactiveValue??n.field.props?.["inactive-value"];return c!==void 0||h!==void 0?n.modelValue??h??!1:bt(n.modelValue)}),V=e.computed(()=>s.value==="code"?5:3),v=e.computed(()=>s.value==="file"&&!Fe(n.modelValue)),p=e.computed(()=>yt(n.field,n.modelValue,"请选择文件")),d=e.computed(()=>n.field.placeholder?n.field.placeholder:s.value==="select"?"请选择":s.value==="date"?"请选择日期":s.value==="file"?"请选择文件":"请输入");function y(c){l("update:modelValue",c)}function I(c){l("change",c)}function F(c){c&&l("loadOptions")}function E(c){const h=c.target,S=Array.from(h.files??[]),P=n.field.props?.multiple?S:S[0]??null;y(P),I(P)}return(c,h)=>{const S=G.ElOption,P=G.ElSelect,w=G.ElDatePicker,k=G.ElInputNumber,N=G.ElSwitch,_=G.ElInput;return s.value==="select"?(e.openBlock(),e.createBlock(P,e.mergeProps({key:0,class:"global-info-field-control"},c.field.props,{"model-value":c.modelValue,placeholder:d.value,disabled:g.value,clearable:"",onVisibleChange:F,"onUpdate:modelValue":y,onChange:I}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.field.options||[],R=>(e.openBlock(),e.createBlock(S,{key:String(R.value),label:R.label,value:R.value},null,8,["label","value"]))),128))]),_:1},16,["model-value","placeholder","disabled"])):s.value==="date"?(e.openBlock(),e.createBlock(w,e.mergeProps({key:1,class:"global-info-field-control"},c.field.props,{"model-value":c.modelValue,placeholder:d.value,disabled:g.value,type:"date","value-format":"YYYY-MM-DD","onUpdate:modelValue":y,onChange:I}),null,16,["model-value","placeholder","disabled"])):s.value==="number"?(e.openBlock(),e.createBlock(k,e.mergeProps({key:2,class:"global-info-field-control"},c.field.props,{"model-value":u.value,placeholder:d.value,disabled:g.value,"controls-position":"right","onUpdate:modelValue":y,onChange:I}),null,16,["model-value","placeholder","disabled"])):s.value==="switch"?(e.openBlock(),e.createBlock(N,e.mergeProps({key:3,class:"global-info-field-control global-info-field-control--switch"},c.field.props,{"model-value":b.value,disabled:g.value,"onUpdate:modelValue":y,onChange:I}),null,16,["model-value","disabled"])):s.value==="file"?(e.openBlock(),e.createElementBlock("label",{key:4,class:e.normalizeClass(["global-info-field-control global-info-field-control--file",{"is-disabled":g.value,"is-empty":!v.value,"is-filled":v.value}])},[e.createElementVNode("input",{class:"global-info-field-control__file-input",type:"file",disabled:g.value,accept:String(c.field.props?.accept??""),multiple:!!c.field.props?.multiple,onChange:E},null,40,Ro),v.value?(e.openBlock(),e.createElementBlock("span",Lo,e.toDisplayString(p.value),1)):(e.openBlock(),e.createElementBlock("span",Go,"上 传"))],2)):s.value==="empty"?(e.openBlock(),e.createBlock(_,{key:5,class:"global-info-field-control","model-value":"",disabled:"",placeholder:"-"})):(e.openBlock(),e.createBlock(_,e.mergeProps({key:6,class:["global-info-field-control",{"global-info-field-control--code":s.value==="code"}]},c.field.props,{"model-value":f.value,placeholder:d.value,disabled:g.value,type:a.includes(s.value)?"textarea":"text",rows:a.includes(s.value)?V.value:void 0,"onUpdate:modelValue":y,onChange:I}),null,16,["class","model-value","placeholder","disabled","type","rows"]))}}}),Me=J(Do,[["__scopeId","data-v-7f04d1b2"]]),zo=["innerHTML"],jo={key:1,class:"global-info-field-value global-info-field-value--code"},xo=e.defineComponent({name:"GlobalInfoFieldValue",__name:"GlobalInfoFieldValue",props:{field:{},value:{},emptyText:{default:"-"}},setup(o){const t=o,n=e.computed(()=>gt(t.field)),l=e.computed(()=>n.value==="empty"||Fe(t.value)),a=e.computed(()=>yt(t.field,t.value,t.emptyText));return(s,g)=>n.value==="html"&&!l.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"global-info-field-value global-info-field-value--html",innerHTML:a.value},null,8,zo)):n.value==="code"&&!l.value?(e.openBlock(),e.createElementBlock("pre",jo,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"&&!l.value}])},e.toDisplayString(a.value),3))}}),Re=J(xo,[["__scopeId","data-v-08b37e58"]]),Ao={class:"global-info-form-renderer__label"},Oo={key:0,class:"global-info-form-renderer__required"},Jo=e.defineComponent({name:"GlobalInfoFormRenderer",__name:"GlobalInfoFormRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},model:{},onUpdateModel:{type:Function}},setup(o){const t=o,n=e.useSlots(),l=e.computed(()=>t.section.fields.filter(p=>p.visible)),a=e.computed(()=>t.model??t.section.model);function s(p,d){const y={...a.value,[p.code]:d};(p.cascadeClearFields??[]).forEach(I=>{y[I]=""}),t.onUpdateModel?.(y),t.onUpdateModel||t.actions.updateField(t.section,p,d)}async function g(p){try{await t.actions.loadFieldOptions(t.section,p,a.value)}catch(d){console.error("[GlobalInfoFormRenderer] load field options failed",d)}}function f(p){const d=a.value[p.code];return{field:p,section:t.section,sectionView:t.section,node:t.node,editing:t.editing,modelValue:d,value:d,state:t.state,actions:t.actions,updateModelValue:y=>s(p,y)}}function u(p){const d=String(p.id||p.key||p.code||"").trim(),y=d?`field-${d}`:"";if(y&&n[y])return y;const I=y.toLowerCase();return I!==y&&n[I]?I:""}function b(p){return p.span?Math.min(Math.max(p.span,1),24):6}function V(p){return p.key||p.id||p.code}function v(p){return p.required||p.isRequired}return(p,d)=>{const y=G.ElFormItem,I=G.ElCol,F=G.ElRow,E=G.ElForm;return e.openBlock(),e.createBlock(E,{class:"global-info-form-renderer",model:a.value,"label-position":"top"},{default:e.withCtx(()=>[e.createVNode(F,{gutter:24},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,c=>(e.openBlock(),e.createBlock(I,{key:V(c),span:b(c)},{default:e.withCtx(()=>[e.createVNode(y,e.mergeProps({prop:c.code,ref_for:!0},c.formItemProps),{label:e.withCtx(()=>[e.createElementVNode("span",Ao,[v(c)?(e.openBlock(),e.createElementBlock("span",Oo,"*")):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(c.label),1)])]),default:e.withCtx(()=>[u(c)?e.renderSlot(p.$slots,u(c),e.mergeProps({key:0,ref_for:!0},f(c)),void 0,!0):p.editing&&!c.readonly?(e.openBlock(),e.createBlock(Me,{key:1,field:c,"model-value":a.value[c.code],section:p.section,onLoadOptions:()=>g(c),"onUpdate:modelValue":h=>s(c,h)},null,8,["field","model-value","section","onLoadOptions","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(Re,{key:2,field:c,value:a.value[c.code],section:p.section},null,8,["field","value","section"]))]),_:2},1040,["prop"])]),_:2},1032,["span"]))),128))]),_:3})]),_:3},8,["model"])}}}),kt=J(Jo,[["__scopeId","data-v-3c8d26e1"]]),St=e.defineComponent({name:"GlobalInfoDeleteConfirm",__name:"GlobalInfoDeleteConfirm",props:{title:{default:"确认删除吗?"},confirmText:{default:"确认"},cancelText:{default:"取消"}},emits:["confirm","cancel"],setup(o){return(t,n)=>{const l=G.ElPopconfirm;return e.openBlock(),e.createBlock(l,{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"])}}}),qo={class:"global-info-table-renderer"},Ko={class:"global-info-table-renderer__table-scroll"},Ho={class:"global-info-table-renderer__header"},Uo={key:0,class:"global-info-table-renderer__required"},Wo=e.defineComponent({name:"GlobalInfoTableRenderer",__name:"GlobalInfoTableRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{},showAdd:{type:Boolean,default:!0},showDelete:{type:Boolean,default:!0}},setup(o){const t=o,n=e.useSlots(),l=e.computed(()=>t.section.fields.filter(c=>c.visible));function a(c){t.actions.deleteRow(t.section,c)}function s(c,h,S,P){const w=t.section.rows.slice(),k=S.cascadeClearFields??[],N={...c,__rowKey:F(c),[S.code]:P};k.forEach(_=>{N[_]=""}),w[h]={...N},t.actions.updateTableRows(t.section,w)}async function g(c,h){try{await t.actions.loadFieldOptions(t.section,c,h)}catch(S){console.error("[GlobalInfoTableRenderer] load field options failed",S)}}function f(c,h,S){const P=h[c.code];return{field:c,section:t.section,sectionView:t.section,node:t.node,row:h,rowIndex:S,editing:t.editing,modelValue:P,value:P,state:t.state,actions:t.actions,updateModelValue:w=>s(h,S,c,w)}}function u(c){const h=String(c.id||c.key||c.code||"").trim(),S=h?`field-${h}`:"";if(S&&n[S])return S;const P=S.toLowerCase();return P!==S&&n[P]?P:""}function b(c){return!c.readonly&&!c.disabled}function V(c){return c.width??(d(c)?56:void 0)}function v(c){if(!c.width)return c.minWidth??(d(c)?56:void 0)}function p(c){return c.key||c.id||c.code}function d(c){return[c.label,c.name,c.code,c.key,c.id].map(S=>String(S??"").trim().toLowerCase()).some(S=>["序号","index","idx","seq","serial","order","rownum","row_no"].includes(S))}let y=0;const I=new WeakMap;function F(c){const h=c.__rowKey??c.key??c.id??c.setId??c.infSetId;if(h!=null&&h!=="")return String(h);const S=c,P=I.get(S);if(P)return P;y+=1;const w=`local-${y}`;return I.set(S,w),w}function E(c){return c.required||c.isRequired}return(c,h)=>{const S=G.ElTableColumn,P=e.resolveComponent("Delete"),w=G.ElIcon,k=G.ElButton,N=G.ElTable;return e.openBlock(),e.createElementBlock("div",qo,[e.createElementVNode("div",Ko,[e.createVNode(N,{class:"global-info-table-renderer__table",data:c.section.rows,"row-key":F},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,_=>(e.openBlock(),e.createBlock(S,{key:p(_),prop:_.code,label:_.label,width:V(_),"min-width":v(_)},{header:e.withCtx(()=>[e.createElementVNode("span",Ho,[E(_)?(e.openBlock(),e.createElementBlock("span",Uo,"*")):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(_.label),1)])]),default:e.withCtx(({row:R,$index:K})=>[u(_)?e.renderSlot(c.$slots,u(_),e.mergeProps({key:0,ref_for:!0},f(_,R,K)),void 0,!0):c.editing&&b(_)?(e.openBlock(),e.createBlock(Me,{key:1,field:_,"model-value":R[_.code],section:c.section,row:R,"row-index":K,onLoadOptions:()=>g(_,R),"onUpdate:modelValue":Z=>s(R,K,_,Z)},null,8,["field","model-value","section","row","row-index","onLoadOptions","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(Re,{key:2,field:_,value:R[_.code],section:c.section,row:R,"row-index":K},null,8,["field","value","section","row","row-index"]))]),_:2},1032,["prop","label","width","min-width"]))),128)),c.editing?(e.openBlock(),e.createBlock(S,{key:0,label:"操作",width:"104",fixed:"right"},{default:e.withCtx(({$index:_})=>[c.showDelete?(e.openBlock(),e.createBlock(St,{key:0,onConfirm:R=>a(_)},{default:e.withCtx(()=>[e.createVNode(k,{class:"global-info-table-renderer__delete",link:"",type:"danger"},{default:e.withCtx(()=>[e.createVNode(w,{class:"global-info-table-renderer__delete-icon"},{default:e.withCtx(()=>[e.createVNode(P)]),_:1}),h[0]||(h[0]=e.createTextVNode(" 删除 "))]),_:1})]),_:2},1032,["onConfirm"])):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0)]),_:3},8,["data"])])])}}}),wt=J(Wo,[["__scopeId","data-v-d05669dd"]]),It=e.defineComponent({name:"GlobalInfoAutoRenderer",__name:"GlobalInfoAutoRenderer",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{}},setup(o){return(t,n)=>t.section.renderType==="table"?(e.openBlock(),e.createBlock(wt,{key:0,section:t.section,node:t.node,editing:t.editing,state:t.state,actions:t.actions},null,8,["section","node","editing","state","actions"])):(e.openBlock(),e.createBlock(kt,{key:1,section:t.section,node:t.node,editing:t.editing,state:t.state,actions:t.actions},null,8,["section","node","editing","state","actions"]))}}),_t=e.defineComponent({name:"GlobalInfoSectionOutlet",__name:"GlobalInfoSectionOutlet",props:{section:{},node:{},editing:{type:Boolean},state:{},actions:{}},setup(o){const t=o,n=e.useSlots(),l=e.computed(()=>t.editing??t.actions.isEditing(t.section)),a=e.computed(()=>t.section.renderType==="table"?t.section.rows.length===0:t.section.fields.length===0),s=e.computed(()=>{const u=g(t.section.id||t.section.key),b=f(t.section.renderType);return[u,b,"default"].find(V=>!!(V&&n[V]))??""});function g(u){const b=String(u??"").trim();return b?`section-${b}`:""}function f(u){return u==="form"||u==="table"?u:""}return(u,b)=>s.value?e.renderSlot(u.$slots,s.value,{key:0,section:u.section,sectionView:u.section,node:u.node,editing:l.value,isEmpty:a.value,empty:a.value,fields:u.section.fields,state:u.state,actions:u.actions}):(e.openBlock(),e.createBlock(It,{key:1,section:u.section,node:u.node,editing:l.value,state:u.state,actions:u.actions},null,8,["section","node","editing","state","actions"]))}}),Yo=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 l=e.ref(!1);e.watch(()=>o.boundaryKey,()=>{l.value=!1}),e.onErrorCaptured(s=>(a(s),!1));function a(s){l.value=!0,console.error(`[GlobalInfoSlotErrorBoundary] ${o.label||"section"} slot render failed`,s),t("error",s)}return()=>{if(l.value)return n.fallback?.()??null;try{return n.default?.()??null}catch(s){return a(s),n.fallback?.()??null}}}}),Zo={class:"global-info-section-block"},Qo={key:0,class:"global-info-section-block__header"},Xo={class:"global-info-section-block__title-wrap"},en={class:"global-info-section-block__title"},tn={key:0,class:"global-info-section-block__actions"},on={class:"global-info-section-block__body"},nn=e.defineComponent({name:"GlobalInfoSectionBlock",__name:"GlobalInfoSectionBlock",props:{node:{},state:{},actions:{},hideHeader:{type:Boolean},onEdit:{type:Function},onCancel:{type:Function},onSave:{type:Function}},setup(o){const t=o,n=e.useSlots(),l=e.ref(!1),a=e.ref(null),s=e.ref(null),g=e.computed(()=>!!t.hideHeader),f=e.computed(()=>t.actions.getSectionStatus(t.node)),u=e.computed(()=>t.actions.getSection(t.node)??s.value),b=e.computed(()=>u.value?.title||t.node.tagName||t.node.label||"-"),V=e.computed(()=>!!(u.value&&t.actions.isEditing(u.value))),v=e.computed(()=>u.value?.renderType==="table"),p=e.computed(()=>l.value||f.value.loading),d=e.computed(()=>F(a.value||f.value.error)),y=e.computed(()=>{const k=u.value;return k?k.renderType==="table"?k.rows.length===0:k.fields.length===0:!0}),I=e.computed(()=>({node:t.node,section:u.value,sectionView:u.value,fields:u.value?.fields??[],title:b.value,editing:V.value,loading:p.value,error:a.value||f.value.error,errorMessage:d.value,isEmpty:y.value,empty:y.value,sectionStatus:f.value,state:t.state,actions:t.actions,reload:w,handleEdit:E,handleCancel:c,handleAddTableRow:h,handleSave:S}));function F(k){return k?k instanceof Error?k.message:String(k):""}async function E(){const k=u.value;k&&(await t.onEdit?.(k,t.node),t.onEdit||t.actions.startEdit(k))}async function c(){const k=u.value;k&&(await t.onCancel?.(k,t.node),t.onCancel||t.actions.cancelEdit(k))}function h(){const k=u.value;if(!k)return;const N=k.fields.reduce((_,R)=>(_[R.code]=R.value??"",_),{__rowKey:`new-${Date.now()}`});t.actions.saveRow(k,N,-1)}async function S(){const k=u.value;if(k)try{if(t.onSave){await t.onSave(k,t.node);return}await t.actions.saveSection(k)}catch(N){a.value=N,console.error("[GlobalInfoSectionBlock] save section failed",N)}}function P(k){a.value=k}async function w(){l.value=!0,a.value=null,s.value=null;try{s.value=await t.actions.loadSection(t.node)}catch(k){a.value=k,console.error("[GlobalInfoSectionBlock] load section failed",k)}finally{l.value=!1}}return e.onMounted(()=>{w()}),e.watch(()=>t.node.key,()=>{w()}),(k,N)=>{const _=G.ElButton;return e.openBlock(),e.createElementBlock("section",Zo,[g.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("header",Qo,[e.renderSlot(k.$slots,"header",e.normalizeProps(e.guardReactiveProps(I.value)),()=>[e.createElementVNode("div",Xo,[N[0]||(N[0]=e.createElementVNode("span",{class:"global-info-section-block__marker"},null,-1)),e.createElementVNode("h3",en,e.toDisplayString(b.value),1)]),e.renderSlot(k.$slots,"actions",e.normalizeProps(e.guardReactiveProps(I.value)),()=>[u.value?(e.openBlock(),e.createElementBlock("div",tn,[V.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createVNode(_,{class:"global-info-section-block__cancel",link:"",disabled:f.value.saving,onClick:c},{default:e.withCtx(()=>N[2]||(N[2]=[e.createTextVNode(" 取消 ")])),_:1},8,["disabled"]),v.value?(e.openBlock(),e.createBlock(_,{key:0,class:"global-info-section-block__add",link:"",disabled:f.value.saving,onClick:h},{default:e.withCtx(()=>N[3]||(N[3]=[e.createTextVNode(" 新增 ")])),_:1},8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(_,{class:"global-info-section-block__confirm",link:"",type:"primary",loading:f.value.saving,onClick:S},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.value?"确认":"保存"),1)]),_:1},8,["loading"])],64)):(e.openBlock(),e.createBlock(_,{key:0,class:"global-info-section-block__edit",link:"",type:"primary",disabled:f.value.saving||p.value,onClick:E},{default:e.withCtx(()=>N[1]||(N[1]=[e.createTextVNode(" 编辑 ")])),_:1},8,["disabled"]))])):e.createCommentVNode("",!0)],!0)],!0)])),e.createElementVNode("div",on,[p.value?e.renderSlot(k.$slots,"loading",e.normalizeProps(e.mergeProps({key:0},I.value)),()=>[N[4]||(N[4]=e.createElementVNode("div",{class:"global-info-section-block__status"},"加载中...",-1))],!0):!u.value||y.value||d.value?e.renderSlot(k.$slots,"empty",e.normalizeProps(e.mergeProps({key:1},I.value)),()=>[N[5]||(N[5]=e.createElementVNode("div",{class:"global-info-section-block__status"},"暂无数据",-1))],!0):(e.openBlock(),e.createBlock(Yo,{key:2,"boundary-key":k.node.key,label:b.value,onError:P},{fallback:e.withCtx(()=>[e.renderSlot(k.$slots,"empty",e.normalizeProps(e.guardReactiveProps(I.value)),()=>[N[6]||(N[6]=e.createElementVNode("div",{class:"global-info-section-block__status"},"暂无数据",-1))],!0)]),default:e.withCtx(()=>[e.createVNode(_t,{section:u.value,node:k.node,editing:V.value,state:k.state,actions:k.actions},e.createSlots({_:2},[e.renderList(e.unref(n),(R,K)=>({name:K,fn:e.withCtx(Z=>[e.renderSlot(k.$slots,K,e.normalizeProps(e.guardReactiveProps({...I.value,...Z})),void 0,!0)])}))]),1032,["section","node","editing","state","actions"])]),_:3},8,["boundary-key","label"]))])])}}}),Bt=J(nn,[["__scopeId","data-v-07953e28"]]),ln={class:"global-info-group"},an={class:"global-info-group__header"},rn={class:"global-info-group__title"},sn={class:"global-info-group__body"},cn=["id"],un=e.defineComponent({name:"GlobalInfoGroup",__name:"GlobalInfoGroup",props:{group:{},children:{},state:{},actions:{},index:{}},setup(o){const t=o,n=e.useSlots(),l=e.computed(()=>t.group.tagName||t.group.label||"-"),a=e.computed(()=>t.children.length<=1);function s(v,p){const d=t.actions.getSection(v);return{node:v,group:t.group,sectionNode:v,section:d,sectionView:d,state:t.state,actions:t.actions,index:p,editing:!!(d&&t.actions.isEditing(d)),sectionStatus:t.actions.getSectionStatus(v),isSelfSection:b(v,0)===b(t.group,0),handleEdit:()=>t.actions.startEdit(v),handleCancel:()=>t.actions.cancelEdit(v),handleSave:()=>t.actions.saveSection(v.key)}}function g(v){return f("section",u(v))}function f(v,p){if(!p)return"";const d=`${v}-${p}`;if(n[d])return d;const y=d.toLowerCase();return y!==d&&n[y]?y:""}function u(v){return String(v.id||v.infSetId||v.tagId||v.key||v.code||"").trim()}function b(v,p){return v.key||v.id||v.infSetId||v.tagId||`${p}`}function V(v){return`global-info-section-${b(v,0)}`}return(v,p)=>(e.openBlock(),e.createElementBlock("section",ln,[e.renderSlot(v.$slots,"header",{group:v.group,children:v.children,state:v.state,actions:v.actions,title:l.value,index:v.index,isEmpty:v.children.length===0},()=>[e.createElementVNode("header",an,[p[0]||(p[0]=e.createElementVNode("span",{class:"global-info-group__marker"},null,-1)),e.createElementVNode("h2",rn,e.toDisplayString(l.value),1)])],!0),e.createElementVNode("div",sn,[e.unref(n).default?e.renderSlot(v.$slots,"default",{key:0,group:v.group,children:v.children,state:v.state,actions:v.actions,index:v.index,isEmpty:v.children.length===0},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.children,(d,y)=>(e.openBlock(),e.createElementBlock("div",{id:V(d),key:b(d,y),class:"global-info-group__section"},[g(d)?e.renderSlot(v.$slots,g(d),e.mergeProps({key:0,ref_for:!0},s(d,y)),void 0,!0):e.unref(n).section?e.renderSlot(v.$slots,"section",e.mergeProps({key:1,ref_for:!0},s(d,y)),void 0,!0):(e.openBlock(),e.createBlock(Bt,{key:2,node:d,state:v.state,actions:v.actions,"hide-header":a.value},e.createSlots({_:2},[e.renderList(e.unref(n),(I,F)=>({name:F,fn:e.withCtx(E=>[e.renderSlot(v.$slots,F,e.mergeProps({ref_for:!0},E),void 0,!0)])}))]),1032,["node","state","actions","hide-header"]))],8,cn))),128)),v.children.length===0?e.renderSlot(v.$slots,"empty",{key:0,node:null,group:v.group,sectionNode:null,state:v.state,actions:v.actions,index:-1},()=>[p[1]||(p[1]=e.createElementVNode("div",{class:"global-info-group__empty"},"暂无数据",-1))],!0):e.createCommentVNode("",!0)],64))])]))}}),Ct=J(un,[["__scopeId","data-v-7bca662c"]]),dn={class:"global-info-sections"},pn=e.defineComponent({name:"GlobalInfoSections",__name:"GlobalInfoSections",props:{nodes:{},state:{},actions:{}},setup(o){const t=o,n=e.useSlots(),l=e.computed(()=>{const p=t.nodes.filter(h=>a(h).length>0),d=t.nodes.filter(h=>a(h).length===0),y=d.filter(h=>s(h)),I=d.filter(h=>!s(h)),F=p.map(h=>({group:h,children:a(h)})),E=y.map(h=>({group:h,children:[h]}));if(F.length===0)return y.length>0?E:v(I);const c=v(I);return[...F,...E,...c]});function a(p){return p.children??[]}function s(p){return!String(p.parentId||p.parentTagId||"").trim()}function g(p){return f("group",u(p))}function f(p,d){if(!d)return"";const y=`${p}-${d}`;if(n[y])return y;const I=y.toLowerCase();return I!==y&&n[I]?I:""}function u(p){return String(p.id||p.tagId||p.key||p.code||"").trim()}function b(p,d){return p.key||p.id||p.tagId||`${d}`}function V(p){const d=p[0],y=d?.raw??{},I=String(y.parentTagName||y.parentName||y.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:I,label:I,children:p}}function v(p){const d=new Map;return p.forEach(y=>{const I=String(y.parentId||y.parentTagId||"global-info-flat"),F=d.get(I)??[];F.push(y),d.set(I,F)}),Array.from(d.values()).map(y=>({group:V(y),children:y}))}return(p,d)=>(e.openBlock(),e.createElementBlock("div",dn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(y,I)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:b(y.group,I)},[g(y.group)?e.renderSlot(p.$slots,g(y.group),{key:0,group:y.group,children:y.children,state:p.state,actions:p.actions,index:I,isEmpty:y.children.length===0},void 0,!0):e.unref(n).group?e.renderSlot(p.$slots,"group",{key:1,group:y.group,children:y.children,state:p.state,actions:p.actions,index:I,isEmpty:y.children.length===0},void 0,!0):(e.openBlock(),e.createBlock(Ct,{key:2,group:y.group,children:y.children,state:p.state,actions:p.actions,index:I},e.createSlots({_:2},[e.renderList(e.unref(n),(F,E)=>({name:E,fn:e.withCtx(c=>[e.renderSlot(p.$slots,E,e.mergeProps({ref_for:!0},c),void 0,!0)])}))]),1032,["group","children","state","actions","index"]))],64))),128))]))}}),fn=J(pn,[["__scopeId","data-v-33354916"]]);exports.JtAttachmentPreview=Pe.JtAttachmentPreview;exports.JtAttachmentPreviewByParams=Pe.JtAttachmentPreviewByParams;exports.setupJtAttachmentPreview=Pe.setupJtAttachmentPreview;exports.GlobalInfoAutoRenderer=It;exports.GlobalInfoDeleteConfirm=St;exports.GlobalInfoFieldControl=Me;exports.GlobalInfoFieldValue=Re;exports.GlobalInfoFormRenderer=kt;exports.GlobalInfoGroup=Ct;exports.GlobalInfoProvider=No;exports.GlobalInfoSectionBlock=Bt;exports.GlobalInfoSectionOutlet=_t;exports.GlobalInfoSections=fn;exports.GlobalInfoTableRenderer=wt;exports.JtButton=ve;exports.JtCascader=Ue;exports.JtCrudTable=io;exports.JtDatePicker=We;exports.JtFilterBar=Qe;exports.JtFormItems=Ze;exports.JtInput=Se;exports.JtPageHeader=mo;exports.JtPagination=et;exports.JtSelect=Ye;exports.JtTable=Xe;exports.buildGlobalInfoUpdatePayload=lt;exports.createEmptyGlobalInfoViewModel=tt;exports.isGlobalInfoNode=vo;exports.mergeGlobalInfoChildren=Te;exports.normalizeGlobalInfoDetail=ot;exports.normalizeGlobalInfoTree=Ve;exports.resolveGlobalInfoRenderType=nt;exports.useGlobalInfoController=vt;
|
|
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})))}});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"?tn(o,t,n):r==="switch"?Nt(t)?"是":"否":r==="file"?on(t,n):r==="multi-row"?nn(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 Wo(o,t){return Pe(o)?Ne(o,t):t}function Zo(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=Yo(r);return o.filter(l=>l.visible?!Qo(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 Yo(o){return o.rows?.length?o.rows:[o.values??{}]}function Qo(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 Xo([o.id,o.key,o.code,o.name,o.label,o.prop])}function Xo(o){return Array.from(new Set(o.map(t=>en(t)).filter(Boolean)))}function en(o){return String(o??"").trim().toLowerCase()}function tn(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 on(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 nn(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 rn=["disabled","accept","multiple"],an={key:0,class:"global-info-field-control__file-text"},ln={key:1,class:"global-info-field-control__file-upload"},sn=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(()=>Wo(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"?Zo(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,rn),y.value?(e.openBlock(),e.createElementBlock("span",an,e.toDisplayString(m.value),1)):(e.openBlock(),e.createElementBlock("span",ln,"上 传"))],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(sn,[["__scopeId","data-v-cc5c8aa9"]]),cn=["innerHTML"],un={key:1,class:"global-info-field-value global-info-field-value--code"},dn=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,cn)):n.value==="code"&&!r.value?(e.openBlock(),e.createElementBlock("pre",un,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(dn,[["__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 pn={class:"global-info-form-renderer__label"},fn={key:0,class:"global-info-form-renderer__required"},mn=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",pn,[O(w)?(e.openBlock(),e.createElementBlock("span",fn,"*")):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(mn,[["__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"])}}}),gn={class:"global-info-table-renderer__table-scroll"},vn={class:"global-info-table-renderer__header"},hn={key:0,class:"global-info-table-renderer__required"},yn=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",gn,[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",vn,[fe(j)?(e.openBlock(),e.createElementBlock("span",hn,"*")):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(yn,[["__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"]))}}),bn=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}}}}),Sn={class:"global-info-section-block"},kn={key:0,class:"global-info-section-block__header"},wn={class:"global-info-section-block__title-wrap"},In={class:"global-info-section-block__title"},Cn={key:0,class:"global-info-section-block__actions"},Bn={class:"global-info-section-block__body"},_n=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",Sn,[i.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("header",kn,[e.renderSlot(C.$slots,"header",e.normalizeProps(e.guardReactiveProps(P.value)),()=>[e.createElementVNode("div",wn,[w[0]||(w[0]=e.createElementVNode("span",{class:"global-info-section-block__marker"},null,-1)),e.createElementVNode("h3",In,e.toDisplayString(T.value),1)]),e.renderSlot(C.$slots,"actions",e.normalizeProps(e.guardReactiveProps(P.value)),()=>[p.value?(e.openBlock(),e.createElementBlock("div",Cn,[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(()=>w[1]||(w[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",Bn,[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(bn,{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(_n,[["__scopeId","data-v-77980d16"]]),En={class:"global-info-group"},Vn={class:"global-info-group__header"},Nn={class:"global-info-group__title"},Tn={class:"global-info-group__body"},Pn=["id"],$n=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",En,[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",Vn,[y[0]||(y[0]=e.createElementVNode("span",{class:"global-info-group__marker"},null,-1)),e.createElementVNode("h2",Nn,e.toDisplayString(r.value),1)])],!0),e.createElementVNode("div",Tn,[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,Pn))),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($n,[["__scopeId","data-v-c90b8de0"]]),Fn={class:"global-info-sections"},Mn=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",Fn,[(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))]))}}),Rn=Y(Mn,[["__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=Rn;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;
|