@farris/ui-vue 1.6.0-beta.3 → 1.6.0-beta.4
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/components/discussion-editor/index.esm.js +2 -2
- package/components/discussion-editor/index.umd.cjs +2 -2
- package/components/drawer/index.esm.js +2 -2
- package/components/drawer/index.umd.cjs +2 -2
- package/components/events-editor/index.esm.js +6 -3
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/language-textbox/index.esm.js +84 -77
- package/components/language-textbox/index.umd.cjs +1 -1
- package/components/locale/index.esm.js +2 -2
- package/components/locale/index.umd.cjs +2 -2
- package/components/lookup/index.esm.js +2 -2
- package/components/lookup/index.umd.cjs +1 -1
- package/designer/data-grid/index.esm.js +3 -1
- package/designer/data-grid/index.umd.cjs +1 -1
- package/designer/drawer/index.esm.js +2 -2
- package/designer/drawer/index.umd.cjs +2 -2
- package/designer/farris-designer.all.esm.js +2 -2
- package/designer/farris-designer.all.umd.cjs +1 -1
- package/farris.all.esm.js +6074 -4584
- package/farris.all.umd.cjs +15 -15
- package/package.json +1 -1
- package/types/calendar/src/components/header/header.component.d.ts +2 -2
- package/types/chs.d.ts +494 -0
- package/types/cht.d.ts +490 -0
- package/types/en.d.ts +494 -0
- package/types/filter-bar/index.d.ts +3 -3
- package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.component.d.ts +1 -1
- package/types/filter-bar/src/designer/filter-bar.design.component.d.ts +2 -2
- package/types/filter-bar/src/filter-bar.component.d.ts +1 -1
- package/types/index.d.ts +1479 -1
- package/types/order/src/designer/order.design.component.d.ts +3 -3
- package/types/order/src/order.component.d.ts +3 -3
- package/types/schema-selector/src/schema-selector.component.d.ts +1 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<div style="color: black; ">${e.elementConfig.propertyName}</div>
|
|
4
4
|
<div style="color: gray; ">ID:${e.elementConfig.propertyID}</div>
|
|
5
5
|
${u}
|
|
6
|
-
</div>`,placement:"left"});return()=>t.createVNode("div",{class:r.value},[e.elementConfig.propertyName&&t.withDirectives(t.createVNode("label",{class:`col-form-label ${o.value}-${a.value}`},[t.createVNode("span",{class:"farris-label-text"},[i.value])]),[[t.resolveDirective("tooltip"),d]]),t.createVNode(On,{id:a.value,showLabel:!1,editor:e.elementConfig.editor,modelValue:l.value,onChange:s,editorParams:e.elementConfig.editorParams},null)])}}),Qs=t.defineComponent({name:"FPropertyPanelItemList",props:Ys,emits:["valueChanged","submitModal","triggerRefreshPanel"],setup(e,n){const o=t.ref(e.category);function a(p){if(!p.hideCascadeTitle)return t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("input",{title:"summary",type:"input",class:"form-control form-control-sm",value:p.cascadeSummary,readonly:!0},null)])}function i(p,m){m.isExpand=!m.isExpand}function l(p){return t.createVNode("div",{class:"landscape"},[t.createVNode("button",{title:"expand-button",class:["btn f-btn-collapse-expand f-btn-mx px-1",{"f-state-expand":p.isExpand}],onClick:m=>i(m,p)},[t.createVNode("span",null,null)])])}function r(p){return t.createVNode("div",{class:`f-section-formgroup-legend ${o.value.categoryId}-${p.propertyID}`},[t.createVNode("div",{class:"f-header px-0 my-0 col-form-label",style:"font-size: inherit;"},[t.createVNode("div",{class:"wrap"},[t.createVNode("span",{class:["f-icon mr-1",{"f-icon-arrow-60-right":!p.isExpand,"f-icon-arrow-60-down":p.isExpand}]},null),t.createVNode("span",{class:"farris-label-text"},[p.propertyName])])])])}function s(p){return`${e.categoryKey}_${p.propertyID}`}function u(p,m){p.categoryId=o.value.categoryId,o.value.enableCascade&&(p.propertyPath=o.value.parentPropertyID),o.value.setPropertyRelates&&o.value.setPropertyRelates(p,e.propertyData,m),n.emit("valueChanged",{changeObject:p})}function d(){n.emit("triggerRefreshPanel")}function f(p){return t.createVNode("div",{class:"px-2 mb-2"},[t.createVNode(Js,{key:s(p),elementConfig:p,category:o.value,onPropertyChange:u,onTriggerRefreshPanel:d},null)])}function c(p){var m;return t.createVNode("div",{class:"propertyCascadeItem farris-panel px-2 mb-2"},[t.createVNode("div",{class:["farris-panel-item card",{hidden:!p.isExpand}]},[t.createVNode("div",{class:"card-header",onClick:g=>i(g,p)},[t.createVNode("div",{class:"panel-item-title"},[t.createVNode("div",{class:"form-group farris-form-group line-item"},[r(p),a(p),l(p)])])]),t.createVNode("div",{class:["card-body",{hidden:!p.isExpand}]},[(m=p.cascadeConfig)==null?void 0:m.map(g=>f(g))])])])}t.watch(()=>e.category,()=>{o.value=e.category});function h(p){return p.propertyType==="cascade"?c:f}return()=>t.createVNode(t.Fragment,null,[o.value.properties.map(p=>h(p)(p))])}}),Ks=t.defineComponent({name:"FPropertyPanel",props:Gs,emits:["propertyChanged"],setup(e,n){const o=t.ref(e.width),a=t.ref(e.isWidePanel),i=t.ref(e.enableSearch),l=t.ref(e.mode),r=t.ref(e.isPersitOpenState),s=t.ref(e.isShowPanel),u=t.ref(),d=t.ref(),f=t.ref(e.showCloseBtn),c=t.ref(e.selectedTabId),h=t.ref(!0),p=t.ref(e.isWhiteTheme);let m=[],g=[];const y=t.ref(""),v=t.ref(),b=t.ref(),w=t.inject("SchemaService");let C=[],x=null,T="";const S=t.ref(),V=t.ref(0),N=t.computed(()=>m.map(de=>!de.hide).length===1),k=t.inject("designerContext");function I(){g=[],S.value&&S.value.categoryList&&Array.isArray(S.value.categoryList)&&S.value.categoryList.length>0&&S.value.categoryList.forEach(he=>{if(he.properties&&Array.isArray(he.properties)&&he.properties.length>0){const ee=he.properties.map(fe=>(fe.category=he,fe.propertyType==="cascade"&&fe.cascadeConfig&&fe.cascadeConfig.map(Ee=>{Ee.category=he,Ee.cascadeParent=fe,g=g.concat(Ee)}),fe));g=g.concat(ee)}})}function E(de){let he=de.offsetTop,ee=de.offsetParent;for(;ee!==null;)he+=ee.offsetTop,ee=ee.offsetParent;return he}function _(de,he){de&&he&&Object.keys(he).length>0&&Object.keys(he).forEach(ee=>{var Ee;const fe=he[ee];(Ee=de.style)==null||Ee.setProperty(ee,fe)})}function M(){return g.filter(he=>{if(typeof he.visible=="function"&&!he.visible()||typeof he.visible=="boolean"&&!he.visible)return!1;const ee=he.propertyID.toLowerCase(),fe=he.propertyName.toLowerCase();return!!(ee&&ee.includes(y.value.toLowerCase())||fe&&fe.includes(y.value.toLowerCase()))})}function F(de,he,ee){if(de===0){const fe=E(he),He=E(ee)-fe-5;he==null||he.scroll({top:He,behavior:"smooth"})}}function P(de){C&&C.length>0&&(C.forEach(ee=>{ee.style.cssText=""}),C=[]);const he=b.value;if(!y.value)v.value&&he&&(he.scrollTop=0);else if(I(),g&&g.length>0){const ee=M();ee&&ee.length>0&&setTimeout(()=>{let fe=null,Ee=-1,He=!1;ee.forEach((De,ue)=>{const Pe=De.propertyType==="cascade"?`.${De.category.categoryId}-${De.propertyID} .farris-label-text`:`.property-item .${De.category.categoryId}-${De.propertyID}.col-form-label`,ze=document.querySelector(Pe);ze&&(De.category.status!=="open"&&(De.category.status="open",He=Ee<0),De.cascadeParent&&(De.cascadeParent.isExpand=!0),Ee<0&&(fe=ze,Ee=ue),_(ze,{color:"#5B89FE"}),C.push(ze))}),Ee>-1&&(He?t.nextTick(()=>{F(Ee,he,fe)}):F(Ee,he,fe))},50)}}function B(de){P()}const $=Fe.debounce(B,200);function j(de){const{value:he}=de.target;$(he)}function D(de){B(y.value)}function O(){r.value||(h.value=!1),n.emit("closePropertyPanel")}function L(de){y.value="",P()}function z(de){!de.status||de.status==="open"?de.status="closed":de.status="open"}function G(){var de,he;if(m=[],!u.value||u.value.length===0){m=[{tabId:"default",tabName:"属性",categoryList:[]}],S.value=null;return}if((de=u==null?void 0:u.value)==null||de.forEach(ee=>{if(ee.tabId){const fe=m.find(Ee=>Ee.tabId===ee.tabId);fe?(fe.categoryList.push(ee),fe.hide&&(fe.hide=ee.hide||ee.properties.length===0)):m.push({tabId:ee.tabId,tabName:ee.tabName,categoryList:[ee],hide:ee.hide||ee.properties.length===0})}else{const fe=m.find(Ee=>Ee.tabId==="default");fe?fe.categoryList.push(ee):m.push({tabId:"default",tabName:"属性",categoryList:[ee]})}}),c.value){const ee=m==null?void 0:m.find(fe=>fe.tabId===c.value&&!fe.hide);S.value=ee||m[0]}else S.value=m[0];c.value=(he=S.value)==null?void 0:he.tabId}t.watch(()=>[e.schema,e.isShowPanel],()=>{d.value=e.schema,!e.schema||!e.schema.type?u.value=[]:(u.value=bo(d.value,w,x,T),k.filterPropertyEntity&&(u.value=k.filterPropertyEntity(u.value,d.value))),G(),L(y.value),V.value++}),t.onMounted(()=>{G()});function J(de,he,ee=!0){(!d.value||he)&&(d.value=he||e.schema),u.value=bo(d.value,w,x,T,de),k.filterPropertyEntity&&(u.value=k.filterPropertyEntity(u.value,d.value)),G(),i.value&&L(y.value),ee&&V.value++}function te(de,he){x=de,T=he}function W(){l.value=l.value==="panel"?"sidebar":"panel",l.value==="panel"?(setTimeout(()=>{B()},100),o.value="300px"):o.value="41px"}function q(){if(f.value)return t.createVNode("div",{class:"title-actions"},[t.createVNode("div",{class:"monaco-toolbar"},[t.createVNode("div",{class:"monaco-action-bar animated"},[t.createVNode("ul",{class:"actions-container",role:"toolbar"},[t.createVNode("li",{class:"action-item",onClick:O},[t.createVNode("span",{class:"f-icon f-icon-close"},null)])])])])])}function R(){u.value=bo(d.value,w,x,T),k.filterPropertyEntity&&(u.value=k.filterPropertyEntity(u.value,d.value)),G()}function H(){var de;if(i.value&&((de=S.value)==null?void 0:de.tabId)!=="commands")return t.createVNode("div",{class:"search"},[t.createVNode("div",{class:"input-group f-state-editable border-left-0 border-right-0"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left pt-3 pb-3 textbox",type:"text",placeholder:"输入属性名称或编号快速定位",autocomplete:"off",onKeyup:he=>j(he),"onUpdate:modelValue":he=>y.value=he},null),[[t.vModelText,y.value]]),t.createVNode("div",{class:"input-group-append",style:"margin-left: 0px; background:none;"},[t.createVNode("span",{class:"input-group-text input-group-clear",style:[{display:y.value&&y.value.length>0?"":"none"}],onClick:he=>L()},[t.createVNode("i",{class:"f-icon modal_close"},null)]),t.createVNode("span",{class:"input-group-text input-group-clear",onClick:he=>D()},[t.createVNode("i",{class:"f-icon f-icon-search"},null)])])])])}function A(de){return`${e.propertyName}_${de.categoryId}`}function U(de){n.emit("propertyChanged",{...de,designerItem:x})}function K(){var de,he;if(S.value)return t.createVNode("div",{class:"panel-body",ref:b},[t.createVNode("ul",{class:["property-grid",{"wide-panel":a.value}]},[(he=(de=S.value)==null?void 0:de.categoryList)==null?void 0:he.map(ee=>!ee.hide&&t.createVNode("li",{key:A(ee),"data-category-id":ee==null?void 0:ee.categoryId},[!ee.hideTitle&&t.createVNode("span",{class:"group-label",onClick:()=>z(ee)},[t.createVNode("span",{class:["f-icon mr-2",{"f-legend-show":ee.status==="closed"},{"f-legend-collapse":ee.status==="open"||ee.status===void 0}]},null),ee.categoryName]),t.createVNode("div",{hidden:ee.status==="closed"},[t.createVNode(Qs,{key:`${ee==null?void 0:ee.categoryId}-${V.value}`,category:ee,propertyData:d.value,onTriggerRefreshPanel:R,onValueChanged:U},null)])]))])])}function Q(){if(l.value==="sidebar")return t.createVNode("div",{class:"side-panel h-100",onClick:W},[t.createVNode("i",{class:"f-icon f-icon-engineering w-100 icon"},null),t.createVNode("span",null,[t.createTextVNode("属性")])])}function oe(){return{display:h.value?"block":"none",width:o.value}}function X(){return t.createVNode("div",{class:"switcher"},[t.createVNode("i",{class:"f-icon f-icon-exhale-discount",style:[{transform:l.value==="sidebar"?"none":"rotate(180deg)"}],onClick:W},null)])}function ne(de){S.value&&S.value.tabId===de.tabId||(S.value=de,c.value=S.value.tabId,y.value="")}function ie(){return m.map(de=>t.createVNode("div",{class:["title-label",{active:S.value&&S.value.tabId===de.tabId},{"d-none":de.hide}],onClick:()=>ne(de)},[t.createVNode("span",null,[de.tabName])]))}t.onMounted(()=>{B(y.value)}),t.onBeforeMount(()=>{r.value&&(h.value=s.value),G(),B(y.value)});function we(){V.value++}function le(){R()}return n.expose({updatePropertyConfig:J,updateDesignerItem:te,reloadPropertyPanel:we,refreshPanel:le}),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{ref:v,class:["property-panel",{"white-theme":p.value}],style:oe()},[t.createVNode("div",{class:"propertyPanel panel flex-column",hidden:l.value!=="panel"},[t.createVNode("div",{class:["title d-flex",{"p-right":f.value},{only:N.value}]},[ie(),q()]),H(),K()]),X(),Q()])])}}),ln=class ln{static getEditorTypesByMDataType(n,o=!1,a=""){if(o)return[{key:ce["language-textbox"].type,value:ce["language-textbox"].name}];let i=ln.fieldControlTypeMapping[n];if(a==="data-grid-column"&&(i!=null&&i.length)){const l=[ce["check-group"].type,ce["radio-group"].type];i=i.filter(r=>!l.includes(r.key))}return i}static getAllInputTypes(){const n=[];for(const o in ln.fieldControlTypeMapping)ln.fieldControlTypeMapping[o].forEach(a=>{n.find(i=>i.key===a.key&&i.value===a.value)||n.push({key:a.key,value:a.value})});return n}static mappingDomPropAndSchemaProp(n,o){var l;const a=(l=n.editor)==null?void 0:l.type,i=[];return(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&o&&o.categoryId&&o.categoryId.indexOf("gridFieldEditor")<0&&i.push({domField:"title",schemaField:"name"}),i.push({domField:"label",schemaField:"name"}),i.push({domField:"editor.required",schemaField:"require"}),i.push({domField:"editor.readonly",schemaField:"readonly"}),(a===ce["input-group"].type||a===ce.textarea.type||a===ce["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),a===ce["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&i.push({domField:"formatter.precision",schemaField:"type.precision"}),(a===ce["combo-list"].type||a===ce["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&i.push({domField:"formatter.data",schemaField:"type.enumValues"}),a===ce["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),a===ce["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),a===ce.lookup.type&&(i.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),i.push({domField:"editor.valueField",schemaField:"editor.valueField"}),i.push({domField:"editor.textField",schemaField:"editor.textField"}),i.push({domField:"editor.displayType",schemaField:"editor.displayType"}),i.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),i.push({domField:"editor.helpId",schemaField:"editor.helpId"})),i.push({domField:"path",schemaField:"bindingPath"}),i.push({domField:"binding.path",schemaField:"bindingField"}),i.push({domField:"binding.fullPath",schemaField:"path"}),(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};se(ln,"fieldControlTypeMapping",{String:[{key:ce["input-group"].type,value:ce["input-group"].name},{key:ce.lookup.type,value:ce.lookup.name},{key:ce["date-picker"].type,value:ce["date-picker"].name},{key:ce.switch.type,value:ce.switch.name},{key:ce["check-box"].type,value:ce["check-box"].name},{key:ce["check-group"].type,value:ce["check-group"].name},{key:ce["radio-group"].type,value:ce["radio-group"].name},{key:ce["combo-list"].type,value:ce["combo-list"].name},{key:ce.textarea.type,value:ce.textarea.name},{key:ce["time-picker"].type,value:ce["time-picker"].name}],Text:[{key:ce.textarea.type,value:ce.textarea.name},{key:ce.lookup.type,value:ce.lookup.name}],Decimal:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name}],Integer:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name}],Number:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name},{key:ce.switch.type,value:ce.switch.name},{key:ce["check-box"].type,value:ce["check-box"].name}],BigNumber:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name}],Date:[{key:ce["date-picker"].type,value:ce["date-picker"].name}],DateTime:[{key:ce["date-picker"].type,value:ce["date-picker"].name}],Boolean:[{key:ce.switch.type,value:ce.switch.name},{key:ce["check-box"].type,value:ce["check-box"].name}],Enum:[{key:ce["combo-list"].type,value:ce["combo-list"].name},{key:ce["radio-group"].type,value:ce["radio-group"].name}],Object:[{key:ce.lookup.type,value:ce.lookup.name},{key:ce["combo-list"].type,value:ce["combo-list"].name},{key:ce["radio-group"].type,value:ce["radio-group"].name}]});let xo=ln;Ye({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Ci,wo,void 0);const Zs={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"response-form-layout-setting",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"response-form-layout-setting"},initialState:{description:"",type:"object"}},required:["id","type"]},ec={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};rt.createPropsResolver(ec,Zs,Ms,Ds);const tc={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function To(){return new DOMException("The request is not allowed","NotAllowedError")}async function nc(e){if(!navigator.clipboard)throw To();return navigator.clipboard.writeText(e)}async function oc(e){const n=document.createElement("span");n.textContent=e,n.style.whiteSpace="pre",n.style.webkitUserSelect="auto",n.style.userSelect="all",document.body.appendChild(n);const o=window.getSelection(),a=window.document.createRange();o==null||o.removeAllRanges(),a.selectNode(n),o==null||o.addRange(a);let i=!1;try{i=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(n)}if(!i)throw To()}async function ac(e){try{await nc(e)}catch(n){try{await oc(e)}catch(o){throw o||n||To()}}}function ic(){async function e(n){await ac(n)}return{onCopy:e}}function rc(e,n,o,a){const i=t.ref(14),l=t.ref(140),r=t.ref(""),s=t.ref(a.value.length),u=t.computed(()=>a.value),d=t.computed(()=>({"font-size":`${i.value}px`,height:"100%"}));function f(c){if(c.currentTarget){const h=c.currentTarget.value||"";s.value=h.length}}return()=>t.createVNode(t.Fragment,null,[t.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:l.value,onInput:c=>f(c)},[u.value]),t.createVNode("span",{class:"textarea-wordcount",title:r.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+l.value])])}function lc(e,n,o,a){const i=rc(e,n,o,a),l=new Map([["text-area",i]]);function r(s){return l.get(s)||null}return{getEditorRender:r}}function sc(){const e=t.ref(!1),n=t.ref("复制成功");return{feedbackStyle:t.computed(()=>{const a={position:"absolute",left:"50%",top:"50%",width:"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease"};return a.opacity=e.value?"0.8":"0",a.display=e.value?"":"none",a}),feedbackMessage:n,toShowFeedback:e}}function cc(e,n){const o=n.getEditorRender(e.promptEditorType);return()=>o&&o()}function uc(e,n){function o(p){if(p==null)return 0;let m=0;for(let g=0;g<p.length;g++){const y=p.charCodeAt(g);y>=0&&y<=128?m++:m=m+2}return m}function a(p,m){if(p!==""&&p!==void 0&&p!==null){p=""+p;const g=p.length;let y="",v=0;for(let b=0;b<g;b++){const w=p.charAt(b);if(v++,encodeURI(w).length>4&&v++,y=y.concat(w),v>=m)return y=y.concat("..."),y}if(v<m)return p}return""}const i=t.computed(()=>!!e.value&&!!e.value.date),l=t.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),r=t.computed(()=>!!e.value&&!!e.value.detail),s=t.computed(()=>e.value?o(e.value.detail)>160:!1),u=t.ref(!1),d=t.computed(()=>u.value?n.exception.collapse:n.exception.expand),f=t.computed(()=>{const p=n.exception.detail+" : "+(e.value&&e.value.detail)||"";return u.value?p:a(p,160)}),c=t.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function h(){u.value=!u.value}return()=>t.createVNode("div",{class:"toast-msg-detail"},[i.value&&t.createVNode("div",null,[l.value]),r.value&&t.createVNode("div",{class:"exception_wrap"},[t.createVNode("div",{class:"exception_error_msg"},[t.createVNode("div",{innerHTML:f.value},null),s.value&&t.createVNode("span",{style:c.value,onClick:h},[d.value])])])])}function dc(e){return()=>t.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function fc(e,n,o,a,i){const l=t.ref(e.exceptionInfo),r=t.computed(()=>{const m=n.value==="question"?"warning":n.value,g={"f-icon":!0},y=`f-icon-${m}`;return g[y]=!0,g}),s=t.computed(()=>o.value||l.value&&l.value.message),u=t.computed(()=>a.value),d=t.computed(()=>!!a.value),f=t.computed(()=>!!l.value);function c(){return f.value?uc(l,i):d.value?dc(u):()=>null}const h=c(),p=t.computed(()=>i.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:r.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[t.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),h()])])}function pc(e,n,o,a){const{onCopy:i}=n,{toShowFeedback:l}=o,r=t.ref(a.exception.copySuccess||"复制成功"),s=t.ref(a.exception.copy||"复制详细信息"),u=t.ref(e.exceptionInfo||{date:"",message:"",detail:""}),d=t.computed(()=>u.value&&u.value.detail||"");function f(c){i(d.value).catch(h=>{r.value=a.exception.copyFailed||"复制失败"}).finally(()=>{l.value=!0,setTimeout(()=>{l.value=!1},700)})}return()=>t.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[t.createVNode("span",{onClick:f,style:"cursor: pointer;"},[s.value])])}function mc(e,n,o,a,i){const l=t.ref(e.type),r=t.ref(e.buttons),s=t.ref(e.exceptionInfo),u=t.ref(i.ok||e.okButtonText),d=t.ref(i.cancel||e.cancelButtonText),f=t.ref(e.showCancelButton),c=t.ref(e.showOkButton),h=t.computed(()=>!!(r.value&&r.value.length)),p=t.computed(()=>s.value&&s.value.date&&s.value.message&&s.value.detail),m=t.computed(()=>!(r.value&&r.value.length)&&(c.value||f.value)),g=pc(e,o,a,i);u.value==="关闭"?u.value=i.close:u.value==="知道了"&&(u.value=i.exception.roger);function y(b){l.value==="question"&&n.emit("reject"),n.emit("close")}function v(b){l.value==="question"&&n.emit("accept"),n.emit("close")}return()=>t.createVNode("div",{class:"modal-footer"},[p.value&&g(),m.value&&f.value&&t.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:y},[d.value]),m.value&&c.value&&t.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:v},[u.value]),h.value&&r.value.length&&r.value.map(b=>t.createVNode("button",{type:"button",onClick:b.handle,class:b.class},[b.iconClass&&t.createVNode("span",{class:b.iconClass},null),b.text]))])}function hc(e){const{t:n,locale:o}=Ge.useI18n();function a(i,l,r){return l===r?n(i):l}return{yes:a("messageBox.yes")||"是",no:a("messageBox.no")||"否",close:a("messageBox.close")||"关闭",ok:a("messageBox.ok",e.okButtonText,"确定")||"确定",cancel:a("messageBox.cancel",e.cancelButtonText,"取消")||"取消",title:a("messageBox.title")||"系统提示",errorTitle:a("messageBox.errorTitle")||"错误提示",exception:{expand:a("messageBox.exception.expand")||"展开",collapse:a("messageBox.exception.collapse")||"收起",happend:a("messageBox.exception.happend")||"发生时间",detail:a("messageBox.exception.detail")||"详细信息",copy:a("messageBox.exception.copy")||"复制详细信息",copySuccess:a("messageBox.exception.copySuccess")||"复制成功",copyFailed:a("messageBox.exception.copyFailed")||"复制失败",roger:a("messageBox.exception.roger")||"知道了"},locale:o.value}}const Dn=t.defineComponent({name:"FMessageBox",props:tc,emits:["accept","reject","close"],setup(e,n){const o=hc(e),a=t.ref(e.type),i=t.ref(e.title),l=t.ref(e.detail),r=t.computed(()=>{const v={"modal-tips":!0,"d-flex":!0,"flex-row":!0},b=`messager-type-${a.value}`;return v[b]=!0,v}),s=t.computed(()=>{const v={cursor:"default"};return a.value==="prompt"?v.padding="0.5rem 0.5rem 1rem 1.5rem":a.value==="error"&&(v.padding="0.5rem 1.5rem 1rem 1.5rem"),v}),u=ic(),d=lc(e,a,i,l),f=sc(),{feedbackStyle:c,feedbackMessage:h}=f;function p(){return t.createVNode("div",{style:c.value},[h.value])}function m(){switch(a.value){case"prompt":return cc(e,d);default:return fc(e,a,i,l,o)}}const g=m(),y=mc(e,n,u,f,o);return()=>t.createVNode("div",{class:"farris-messager"},[!e.exceptionInfo&&t.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),t.createVNode("section",{class:r.value,style:s.value},[g()]),y(),p()])}}),gc={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前回调",type:"object",default:null}},required:["id","type"]},yc=new Map([["appearance",rt.resolveAppearance]]);function vc(e,n,o){return n}function bc(){function e(n,o){const a={};return a.beforeClose=i=>o.call("beforeClose",[i,n]),a}return{resolve:e}}const Ni={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60},host:{type:Object,default:"body"}},Cc=rt.createPropsResolver(Ni,gc,yc,vc),wc=bc();class Ke{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const a=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const i=parseInt(a[4],10),l=parseInt(a[5],10);return{x:i,y:l}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new Ke(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new Ke(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let a=0;a<n.changedTouches.length;a++)if(n.changedTouches[a].target===o)return new Ke(n.changedTouches[a].clientX,n.changedTouches[a].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new Ke(0,0);if(window){const a=window.getComputedStyle(n);if(a){const i=parseInt(a.getPropertyValue("left"),10),l=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(i)?0:i,o.y=isNaN(l)?0:l}return o}return null}static copy(n){return new Ke(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class $t{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new $t(0,0);if(window){const a=window.getComputedStyle(n);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(n){return new $t(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function Sc(e,n){const o=t.ref(),a=t.ref(),i=t.ref(),l=t.ref(),r=t.ref(),s=t.ref(),u=t.ref(),d=t.ref(),f=t.ref(),c=t.ref(),h=t.ref(),p=t.ref(e.resizeable),m=t.ref(),g=t.ref(e.draggable),y=t.ref(!1);function v(){const $=a.value||document.body,j=window.getComputedStyle($);if(!j||!o.value)return;const D=Ke.getTransformInfo(o.value),O={};u.value&&(O.deltaL=o.value.offsetLeft-u.value.x,O.deltaT=o.value.offsetTop-u.value.y);const L=j.getPropertyValue("position");O.width=$.clientWidth,O.height=$.clientHeight,O.pr=parseInt(j.getPropertyValue("padding-right"),10),O.pb=parseInt(j.getPropertyValue("padding-bottom"),10),O.position=j.getPropertyValue("position"),L==="static"&&($.style.position="relative"),O.translateX=D.x,O.translateY=D.y,c.value=O}function b($){if(o.value){l.value=$t.getCurrent(o.value),r.value=Ke.getCurrent(o.value),s.value=l.value?$t.copy(l.value):null,u.value=r.value?Ke.copy(r.value):null,v();const j=$.target.getAttribute("type")||"";d.value={n:!!j.match(/n/),s:!!j.match(/s/),w:!!j.match(/w/),e:!!j.match(/e/)}}}function w(){var $,j,D,O;if(o.value){const L=o.value;d.value&&((d.value.n||d.value.s)&&(($=s.value)!=null&&$.height)&&(L.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((j=s.value)!=null&&j.width)&&(L.style.width=s.value.width+"px"),u.value&&((D=u.value)!=null&&D.x&&(L.style.left=u.value.x+"px"),(O=u.value)!=null&&O.y&&(L.style.top=u.value.y+"px")))}}function C(){const $=e.minHeight?e.minHeight:1,j=e.minWidth?e.minWidth:1;s.value&&u.value&&d.value&&l.value&&(s.value.height<$&&(s.value.height=$,d.value.n&&r.value&&(u.value.y=r.value.y+(l.value.height-$))),s.value.width<j&&(s.value.width=j,d.value.w&&r.value&&(u.value.x=r.value.x+(l.value.width-j))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,r.value&&d.value.n&&(u.value.y=r.value.y+(l.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,d.value.w&&r.value&&(u.value.x=r.value.x+(l.value.width-e.maxWidth))))}function x(){if(a.value){const $=c.value;if(u.value&&s.value&&d.value&&l.value){const j=$.width-$.pr-$.deltaL-$.translateX-u.value.x,D=$.height-$.pb-$.deltaT-$.translateY-u.value.y;d.value.n&&u.value.y+$.translateY<0&&r.value&&(u.value.y=-$.translateY,s.value.height=l.value.height+r.value.y+$.translateY),d.value.w&&u.value.x+$.translateX<0&&r.value&&(u.value.x=-$.translateX,s.value.width=l.value.width+r.value.x+$.translateX),s.value.width>j&&(s.value.width=j),s.value.height>D&&(s.value.height=D)}}}function T($){if(!i.value||!l.value||!r.value||!d.value)return;$.subtract(i.value);const j=$.x,D=$.y;d.value.n?(u.value.y=r.value.y+D,s.value.height=l.value.height-D):d.value.s&&(s.value.height=l.value.height+D),d.value.e?s.value.width=l.value.width+j:d.value.w&&(s.value.width=l.value.width-j,u.value.x=r.value.x+j),x(),C(),w()}function S($){if(!f.value)return;const j=Ke.fromEvent($);j&&T(j)}function V(){if(o.value){const{width:$,height:j,x:D,y:O}=o.value.getBoundingClientRect(),L=Ke.getTransformInfo(o.value);return{size:{width:$,height:j},position:{x:D-L.x,y:O-L.y}}}return null}function N($){if(o.value){const j=V();h.value=j}i.value=void 0,l.value=null,r.value=null,s.value=null,u.value=null,d.value=null,f.value=null,document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",N)}function k(){document.addEventListener("mousemove",S),document.addEventListener("mouseup",N)}function I($){$ instanceof MouseEvent&&$.button===2||g.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),i.value=Ke.fromEvent($),f.value=$.target,b($),k())}function E($){return o.value=$,p.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:j=>I(j)},null)])}function _($=!0){document.body.click();const j=a.value||document.body,D=$t.getCurrent(j),O=o.value;$&&O&&(m.value=V(),m.value.transform=O.style.transform),D&&O&&(s.value=D,s.value.height-=14,s.value.width-=14,O.style.height=s.value.height+"px",O.style.width=s.value.width+"px",O.style.left="7px",O.style.top="7px",O.style.transform="",h.value={size:s.value,position:{x:0,y:0}},g.value=!1,y.value=!0)}function M(){var $,j;if(document.body.click(),m.value){const D={width:m.value.size.width||0,height:m.value.size.height||0},O={x:(window.innerWidth-D.width)/2,y:(window.innerHeight-D.height)/2};($=s.value)==null||$.set(D),(j=u.value)==null||j.set(O);const L=o.value;L.style.height=D.height+"px",L.style.width=D.width+"px",L.style.left=`${O.x}px`,L.style.top=`${O.y}px`,L.style.transform="",h.value={size:D,position:O},g.value=e.draggable,y.value=!1}}function F(){if(o.value){const $=$t.getCurrent(o.value);if($){const{width:j,height:D}=$;o.value.style.left=`${(window.innerWidth-j)/2}px`,o.value.style.top=`${(window.innerHeight-D)/2}px`,o.value.style.transform=""}}}function P(){const $=()=>{y.value?_(!1):F(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const B=P();return{renderResizeBar:E,boundingElement:a,resizedEventParam:h,maximize:_,restore:M,allowDrag:g,isMaximized:y,unWindowResizeHandle:B,moveToCenter:F}}function xc(e,n,o){const a=t.ref(),i=t.ref(e.draggable),l=t.ref(e.lockAxis),r=t.ref(),s=t.ref(),u=t.ref(!1),d=t.ref(new Ke(0,0)),f=t.ref(new Ke(0,0)),c=t.ref(new Ke(0,0)),h=t.ref(new Ke(0,0));t.watch(()=>o.value,S=>{r.value.style.cursor=S?"move":"default"});function p(S,V){if(V.tagName==="BUTTON")return!1;if(V===S)return!0;for(const N in V.children)if(Object.prototype.hasOwnProperty.call(V.children,N)&&p(S,V.children[N]))return!0;return!1}function m(){var k,I;let S=c.value.x+f.value.x,V=c.value.y+f.value.y;l.value==="x"?(S=((k=d.value)==null?void 0:k.x)||0,c.value.x=0):l.value==="y"&&(V=((I=d.value)==null?void 0:I.y)||0,c.value.y=0);const N=`translate3d(${Math.round(S)}px, ${Math.round(V)}px, 0px)`;a.value&&(a.value.style.transform=N),h.value.x=S,h.value.y=V}function g(){if(!s.value||!a.value)return null;const S=s.value.getBoundingClientRect(),V=a.value.getBoundingClientRect(),N={top:S.top<V.top,right:S.right>V.right,bottom:S.bottom>V.bottom,left:S.left<V.left};return N.top||(c.value.y-=V.top-S.top),N.bottom||(c.value.y-=V.bottom-S.bottom),N.right||(c.value.x-=V.right-S.right),N.left||(c.value.x-=V.left-S.left),m(),N}function y(S){S&&(d.value&&S.subtract(d.value),c.value.set(S),m(),g())}function v(S){u.value&&i.value&&(S.stopPropagation(),S.preventDefault(),y(Ke.fromEvent(S,r.value)))}function b(){var S;u.value&&(u.value=!1,f.value.add(c.value),c.value.reset(),(S=a.value)==null||S.classList.remove("ng-dragging"),n.emit("stopMove"),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",b))}function w(){!u.value&&r.value&&(u.value=!0,r.value.classList.add("ng-dragging"),document.addEventListener("mousemove",v),document.addEventListener("mouseup",b))}function C(){if(a.value){const S=Ke.getTransformInfo(a.value);f.value.set(S);return}f.value.reset()}function x(S){if(!o.value||S instanceof MouseEvent&&S.button===2)return;const V=S.target||S.srcElement;r.value!==void 0&&V&&!p(V,r.value)||i.value!==!1&&(document.body.click(),S.stopPropagation(),S.preventDefault(),d.value=Ke.fromEvent(S,a.value),C(),w())}function T(S,V,N){if(i.value&&V){if(S)r.value=S;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)r.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const k=V.querySelector(e.dragHandle);k&&(r.value=k)}}a.value=V,s.value=N,r.value?(r.value.classList.add("ng-draggable"),r.value.addEventListener("mousedown",x)):i.value=!1}}return{registerDraggle:T,resetTranslate:C}}function Ii(e,n){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&n({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function Tc(e,n){const o=t.ref(e.enableEsc);let a=null;return o.value?(a=Ii("Escape",i=>{n.emit("esc",{event:i.event,type:"esc"})}),{remove:a}):null}function Vc(e,n){const o=t.ref(e.enableEnter);let a=null;return o.value?(a=Ii("Enter",i=>{n.emit("enter",{event:i.event,type:"enter"})}),{remove:a}):null}const Lt=t.defineComponent({name:"FModal",props:Ni,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(e,n){const o=t.ref(e.width||300),a=t.ref(e.height||200),i=t.ref(e.modelValue),l=t.ref(""),r=t.ref(e.class),s=t.ref(e.fitContent),u=t.ref(e.showHeader),d=t.ref(""),f=t.ref(e.showCloseButton),c=t.ref(e.showMaxButton),h=t.ref(!1),p=t.ref(e.dialogType),m=t.ref(e.src),g=t.ref(""),y=t.ref(e.showButtons),v=t.ref(e.title),b=t.ref(e.containment||null),w=t.ref(),{t:C}=Ge.useI18n();v.value==="错误提示"&&(v.value=C("messageBox.errorTitle"));const x=t.ref(!1);function T(ue,Pe){const ze=Pe?"accept":"cancel";Promise.resolve().then(()=>{var Re;return(Re=e.beforeClose)==null?void 0:Re.call(e,{closeType:ze})}).then(Re=>{Re&&(i.value=!1,n.emit("update:modelValue",!1),Pe!=null&&n.emit(Pe?"accept":"cancel"),n.emit("closed",ue))})}const S=[{name:"cancel",text:C("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:ue=>{T(ue,!1)}},{name:"accept",text:C("messageBox.ok")||"确定",class:"btn btn-primary",handle:ue=>{T(ue,!0)}}],V=t.ref(e.buttons&&e.buttons.length?e.buttons:S),N=t.computed(()=>!!d.value),k=t.computed(()=>!!y.value&&!!V.value),I=t.ref(),E=t.ref(),_=t.ref(!1),{renderResizeBar:M,maximize:F,restore:P,boundingElement:B,resizedEventParam:$,allowDrag:j,unWindowResizeHandle:D,moveToCenter:O}=Sc(e),{registerDraggle:L}=xc(e,n,j);function z(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function G(){const ue=document.querySelectorAll(".farris-modal").length;(!ue||ue-1<=0)&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}t.watch(()=>e.title,(ue,Pe)=>{ue!==Pe&&(v.value=ue)}),t.watch(()=>e.modelValue,(ue,Pe)=>{ue!==Pe&&(i.value=ue,i.value&&e.draggable&&t.nextTick(()=>{E.value&&!b.value&&(b.value=E.value.parentElement,B.value=b.value,L(I.value,E.value,B.value),O())}),ue||(b.value&&(b.value=null),G())),i.value&&(x.value=z())}),t.watch(()=>e.showHeader,(ue,Pe)=>{ue!==Pe&&(u.value=ue)}),t.watch(()=>e.showButtons,(ue,Pe)=>{ue!==Pe&&(y.value=ue)}),t.watch(()=>$.value,(ue,Pe)=>{const ze=ue||{},Re=Pe||{};JSON.stringify(ze)!==JSON.stringify(Re)&&n.emit("resize",{newSize:ue,oldSize:Pe,isMaximized:_.value})});const J=t.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),te=t.computed(()=>{var ze;const ue={modal:!0,"farris-modal":!0,fade:!0};ue["f-modal-fitContent"]=!!s.value,ue.show=!!J.value;const Pe=(ze=e.maskClass)==null?void 0:ze.split(" ");return Pe==null||Pe.reduce((Re,mt)=>(Re[mt]=!0,Re),ue),ue}),W=t.computed(()=>{var ze;const ue={"modal-dialog":!0},Pe=(ze=r.value)==null?void 0:ze.split(" ");return Pe==null||Pe.reduce((Re,mt)=>(Re[mt]=!0,Re),ue),ue}),q=t.computed(()=>{const ue={position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${a.value}px`};return e.mask||(ue.pointerEvents="auto"),ue}),R=t.computed(()=>{const ue={display:"block"};return e.mask||(ue.pointerEvents="none",ue.backgroundColor="transparent"),x.value&&(ue.backgroundColor="transparent"),ue}),H=t.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),A=t.computed(()=>{const ue={display:u.value?"":"none"};return ue["pointer-events"]=j.value?"auto":"none",ue}),U=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:_.value})),K=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function Q(){return{height:`${e.footerHeight||60}px`}}const oe=t.computed(()=>{const ue={textAlgin:g.value},Pe=Q();return Object.assign(ue,Pe)});function X(ue){if(ue==null||ue.stopPropagation(),_.value){_.value=!1,P();return}F(),_.value=!0}async function ne(ue,Pe){ue.handle&&await ue.handle(Pe,ue)&&n.emit("closed",Pe)}function ie(ue){ue.width&&(o.value=ue.width),ue.height&&(a.value=ue.height),ue.buttons&&(V.value=ue.buttons),ue.title&&(v.value=ue.title)}let we=null,le=null;t.onBeforeMount(()=>{x.value=z()}),t.onMounted(()=>{E.value&&!b.value&&(b.value=E.value.parentElement,B.value=b.value,L(I.value,E.value,B.value)),J.value&&document.body.classList.add("modal-open"),we=Tc(e,n),le=Vc(e,n)}),t.onUnmounted(()=>{D&&D(),we&&we.remove(),le&&le.remove()}),n.expose({modalElementRef:E,updateModalOptions:ie,close:T,maxDialog:X,isMaximized:_});function de(){return t.createVNode("ul",null,[h.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&t.createVNode("li",{onClick:X,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:U.value},null)]),f.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:ue=>T(ue,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function he(){return t.createVNode("div",{class:"modal-footer",style:oe.value},[V.value&&V.value.map(ue=>{const Pe=t.ref(ue.disabled);return t.createVNode("button",{name:ue.name,type:"button",disabled:Pe.value,class:ue.class+(ue.iconClass?" btn-icontext":""),onClick:ze=>{ne(ue,ze)}},[!!ue.iconClass&&t.createVNode("i",{class:ue.iconClass},null),ue.text])})])}function ee(){return t.createVNode("div",{ref:I,class:"modal-header",style:A.value},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[N.value&&t.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[v.value])]),t.createVNode("div",{class:"actions"},[de()])])}function fe(){return n.slots.footerTemplate?n.slots.footerTemplate():k.value&&he()}function Ee(ue){if(ue.stopPropagation(),e.allowClickMaskToClose){if(ue.target!==w.value)return;T(ue,!1)}}function He(){var ue,Pe;return t.createVNode("div",{id:l.value,class:W.value,style:q.value,ref:E},[t.createVNode("div",{class:H.value},[u.value&&ee(),t.createVNode("div",{class:K.value},[(Pe=(ue=n.slots).default)==null?void 0:Pe.call(ue),p.value==="iframe"&&t.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:m.value},null)]),fe()]),!s.value&&E.value&&!_.value&&M(E.value)])}function De(ue){return ue||"body"}return()=>t.createVNode(t.Teleport,{to:De(e.host)},{default:()=>[J.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>[t.createVNode("div",{ref:w,class:te.value,style:R.value,onClick:Ee},[He()])]})]})}});function Fi(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Nc(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(a,i){t.onUnmounted(()=>{document.body.removeChild(n)});const l=t.ref(),r=t.ref(e.class||""),s=t.ref(!!e.showButtons),u=t.ref(!!e.showHeader),d=t.ref(e.showCloseButton==null?!0:e.showCloseButton),f=t.ref(!0),c=t.ref(e.title||""),h=e.acceptCallback||(()=>{}),p=e.rejectCallback||(()=>{}),m=e.closedCallback||(w=>{}),g=e.resizeHandle||(w=>{}),y=e.stopMoveHandle||(w=>{}),v=Fi(e),b=w=>{f.value=!1,o.unmount(),m(w)};return t.onMounted(()=>{}),i.expose({modalRef:l}),()=>t.createVNode(Lt,{ref:l,class:r.value,modelValue:f.value,"onUpdate:modelValue":w=>f.value=w,title:c.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:h,onCancel:p,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:b,onResize:g,onStopMove:y},{default:()=>[v&&v(o)]})}});return document.body.appendChild(n),o.use(Dt.LocaleService.i18n),o.mount(n),o}class ki{constructor(n){se(this,"appContext",null);se(this,"modalRef",t.ref());se(this,"activeModalIndex",t.ref(0));se(this,"modalRefs",{});se(this,"isUseEscCloseModal",t.ref(!1));se(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(n,o){const{width:a,height:i}={width:window.innerWidth,height:window.innerHeight};return a<n&&(n=a-14),i<o&&(o=i-14),{width:n,height:o}}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Nc(o)}close(n){var o,a;n?(a=n.value)==null||a.close():(o=this.getCurrentModal())==null||o.close()}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const a=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),i=t.ref(!0),l=a.value.acceptCallback||(()=>{}),r=a.value.rejectCallback||(()=>{}),s=a.value.closedCallback||((x,T)=>{}),u=a.value.resizeHandle||(x=>{}),d=n.stopMoveHandle||(x=>{});let f;const c=Fi(a.value),h=x=>{var S;i.value=!1;const T=(S=x==null?void 0:x.target)==null?void 0:S.classList.contains("modal_close");s(x,this.isUseEscCloseModal.value?"esc":T?"icon":"button")},p=x=>{h(x),f&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),f=null,this.modalRef.value=null,this.modalRefs){const T=Object.keys(this.modalRefs).map(S=>Number(S));T.length>0?this.activeModalIndex.value=Math.max(...T):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},m=x=>{var T;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((T=this.activeModalInstance.value)==null||T.close(x==null?void 0:x.event))},{width:g,height:y}=a.value,v=this.adaptToWindow(g||500,y||320);Object.assign(a.value,v);const b=()=>t.createVNode(Lt,t.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":x=>i.value=x},a.value,{onAccept:l,onCancel:r,onClosed:p,onResize:u,onEsc:m,onStopMove:d}),{default:()=>[c&&c(this.app)]});return f=(x=>{const T=t.h(b,x);return T.appContext=this.appContext,t.render(T,o),T})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:x=>{a.value={...a.value,...x},f&&t.render(t.cloneVNode(f,{...a}),o)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}const Ic=[{label:"beforeClose",name:"关闭前回调事件"},{label:"onAccept",name:"确定事件"},{label:"onCancel",name:"取消事件"}];class Fc extends Et{constructor(o,a){super(o,a);se(this,"numberEditor",{type:"number-spinner",useThousands:!1})}getPropertyConfig(o){const a=this.getEventPropConfig(o);return this.propertyConfig.categories.dialog=this.getDialogPropertyConfig(o),this.propertyConfig.categories.eventsEditor=a,this.propertyConfig}getDialogPropertyConfig(o){return{description:"窗口尺寸配置",title:"窗口",parentPropertyID:"dialog",properties:{title:{description:"标题",title:"标题",type:"string",visible:!0},width:{description:"窗口宽度,最小值:300px,最大值:3000px",title:"宽度",type:"number",editor:{...this.numberEditor,min:300,max:3e3}},height:{description:"窗口高度,最小值:200px,最大值:2000px",title:"高度",type:"number",editor:{...this.numberEditor,min:200,max:2e3}},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:!0},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:!1},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:!0},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:!0}}}}getEventPropConfig(o){const a=this,i=Ic,l=a.eventsEditorUtils.formProperties(o,a.viewModelId,i),r={};return r[a.viewModelId]={type:"events-editor",editor:{initialData:l,viewSourceHandle:s=>{a.eventsEditorUtils.jumpToMethod(s)}}},{title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete o[a.viewModelId],d&&a.eventsEditorUtils.saveRelatedParameters(o,a.viewModelId,d.events,d),i.forEach(f=>{u[f.label]=o[f.label]})}}}}const Vo=Symbol("FModalService");Lt.install=e=>{e.component(Lt.name,Lt);const n=new ki(e);e.provide(Vo,n),e.provide("FModalService",n)},Lt.register=(e,n,o,a)=>{e.modal=Lt,n.modal=Cc,a.modal={callbackResolver:wc}};const St=class St{static show(n){const o=t.reactive({...n}),a=!1,i=o.type==="error"||o.type==="prompt",l=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",r=o.acceptCallback||(()=>{}),s=o.rejectCallback||(()=>{});let u=null,d=new ki(St.app);const f=()=>{u&&(u==null||u.destroy(),d=null)};return u=d==null?void 0:d.open({class:"modal-message modal-message-type-info",title:l,showButtons:a,showHeader:i,width:o.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>t.createVNode(Dn,t.mergeProps(o,{onAccept:r,onReject:s,onClose:f}),null)}),d==null?void 0:d.getCurrentModal()}static info(n,o){const a=t.reactive({type:"info",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});St.show(a)}static warning(n,o){const a=t.reactive({type:"warning",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});St.show(a)}static success(n,o){const a=t.reactive({type:"success",title:n,detail:o,okButtonText:"关闭",showCancelButton:!1});St.show(a)}static error(n,o,a){const i=t.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:a,message:n,detail:o}});St.show(i)}static prompt(n,o){const a=t.reactive({type:"prompt",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消"});St.show(a)}static question(n,o,a,i){const l=t.reactive({type:"question",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:a,rejectCallback:i});St.show(l)}};se(St,"app",null);let jn=St;Dn.install=e=>{e.component(Dn.name,Dn),jn.app=e,e.provide("FMessageBoxService",jn)};var yn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(yn||{});function kc(){const{t:e}=Ge.useI18n();return{conditionListLocale:{add:e("condition.add"),create:e("condition.create"),reset:e("condition.reset"),and:e("condition.and"),or:e("condition.or")}}}function Pc(){const{t:e}=Ge.useI18n();return{operatorsLocale:{equal:e("operators.equal"),notEqual:e("operators.notEqual"),greater:e("operators.greater"),greaterOrEqual:e("operators.greaterOrEqual"),lessOrEqual:e("operators.lessOrEqual"),less:e("operators.less"),contains:e("operators.contains"),startWith:e("operators.startWith"),endWith:e("operators.endWith")}}}var gt=(e=>(e.Equal="0",e.NotEqual="1",e.Greater="2",e.GreaterOrEqual="3",e.Less="4",e.LessOrEqual="5",e.Like="6",e.LikeStartWith="7",e.LikeEndWith="8",e.In="9",e.NotIn="10",e))(gt||{});function Ec(){const{operatorsLocale:e}=Pc();return[{value:"0",name:e.equal},{value:"1",name:e.equal},{value:"2",name:e.equal},{value:"3",name:e.equal},{value:"4",name:e.less},{value:"5",name:e.lessOrEqual},{value:"6",name:e.contains},{value:"7",name:e.startWith},{value:"8",name:e.endWith}]}const Mc={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function _c(e,n,o){const{fieldMap:a}=o;function i(l){const r=a.get(l.fieldCode);if(!r)return[];const s=r.editor.type,u=new Set(Mc[s]);return Ec().filter(f=>u.has(f.value))}return{getCompareOperators:i}}function Pi(){const e=t.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),n=new Map,o=new Map;let a=0;function i(){return{id:"",fieldCode:"",fieldName:"",compareType:gt.Equal,valueType:yn.Value,value:new _n,relation:0,conditionId:Date.now()}}function l(N,k){return{relation:N,items:[],children:[],path:[],groupId:++a,level:k}}function r(){const N=Object.assign({},e.value);o.forEach((k,I)=>{k.groupId===N.groupId&&o.set(I,N)}),n.forEach((k,I)=>{k.groupId===N.groupId&&n.set(I,N)}),e.value=N}function s(N){const k=new Map;let I=0;return N.forEach((E,_)=>{var M,F;if(I+=((M=E.lBracket)==null?void 0:M.length)||0,k.set(_,I),I-=((F=E.rBracket)==null?void 0:F.length)||0,I<0)throw new Error("The right bracket is out of range.")}),k}function u(N,k,I,E,_){for(let M=0;M<k;M++){const F=N+(M+1),P=l(_,F);I.children.push(P),o.set(P.groupId,I),I=I.children[I.children.length-1],E.push(I)}return I}function d(N,k,I,E,_){for(let B=k;B<=0;B++)E.pop();const M=E[E.length-1];if(!M)throw new Error("The group path is out of range");const F=N+k,P=l(_,F);return M.children.push(P),o.set(P.groupId,M),I=M.children[M.children.length-1],E.push(I),I}function f(N,k,I,E){I.pop();const _=I[I.length-1],M=l(E,N);return _.children.push(M),o.set(M.groupId,_),k=_.children[_.children.length-1],I.push(k),k}function c(N,k,I,E,_,M){let F=N[N.length-1];if(!F)throw new Error("The group path is out of range");const P=k.get(E)||0,B=k.get(I)||0;if(I<0||I===E)return N[N.length-1];const $=P-B,j=_&&_.relation!==void 0?_.relation:1;return F=$>0?u(B,$,F,N,j):F,F=$<0?d(B,$,F,N,j):F,F=$===0&&B>0&&P>0&&_&&M&&!!_.rBracket&&!!M.lBracket?f(B,F,N,j):F,F}function h(N){const I={relation:N.length&&N[0].relation!==void 0?N[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},E=[I],_=s(N);return N.forEach((M,F)=>{const P=F-1,B=N[P],$=c(E,_,P,F,B,M);$.items.push(M),n.set(M.conditionId,$)}),e.value=I,I}function p(){const N=i();n.set(N.conditionId,e.value),e.value.items.push(N)}function m(N){if(!N)return;const k=n.get(N.conditionId);if(k){const I=k.items.findIndex(_=>_.conditionId===N.conditionId)+1,E=i();n.set(E.conditionId,k),k.items.splice(I,0,E),r()}}function g(N,k,I,E){N.reduce((_,M)=>{const F=M.conditionId!==void 0,P=M.groupId!==void 0;if(F){const B=M;I.push(B),_.items.set(B.conditionId,B)}if(P){const B=M;E.push(B),_.groups.set(B.groupId,B)}return _},k)}function y(N,k,I,E,_){N&&(N.items=k.length?N.items.filter(M=>!I.has(M.conditionId)):N.items,N.children=E.length?N.children.filter(M=>!_.has(M.groupId)):N.children)}function v(N,k,I){k.forEach(E=>{N.items.push(E),n.set(E.conditionId,N)}),I.forEach(E=>{N.children.push(E),o.set(E.groupId,N)})}function b(N){const k=N[0],I=k.conditionId!==void 0?n.get(k.conditionId):o.get(k.groupId),E={items:new Map,groups:new Map},_=[],M=[];if(I){g(N,E,_,M),y(I,_,E.items,M,E.groups);const F=l(I.relation,I.level+1);v(F,_,M),I.children.push(F),o.set(F.groupId,I),r()}}function w(N){const k=[...N.items],I=[...N.children],E=o.get(N.groupId);E&&(E.children=E.children.filter(_=>_.groupId!==N.groupId),o.delete(N.groupId),k.forEach(_=>{E.items.push(_),n.set(_.conditionId,E)}),I.forEach(_=>{E.children.push(_),o.set(_.groupId,E)}),r())}function C(N){N.relation=N.relation===1?2:1,r()}let x;function T(N){const{relation:k}=N;return(N.children&&N.children.length?N.children.map((E,_,M)=>{const F=x(E);return F[0].lBracket=(F[0].lBracket||"")+"(",F[F.length-1].rBracket=(F[F.length-1].rBracket||"")+")",F[F.length-1].relation=_<M.length-1?k:0,F}):[]).flat()}x=(N=e.value)=>{const{relation:k}=N,I=N.items.map((_,M,F)=>(_.lBracket=M===0?"(":"",_.rBracket=M===F.length-1?")":"",_.relation=M<F.length-1?k||1:0,_)),E=T(N);return[...I,...E]};function S(N){const k=N||e.value;if(k.children.length&&k.children.forEach(I=>{S(I)}),k.level===0&&!k.items.length&&k.children.length===1){const I=k.children[0];e.value.relation=I.relation,w(I)}else k.items.length===0&&k.children.length<=1&&w(k)}function V(N){const k=n.get(N.conditionId);k&&(k.items=k.items.filter(I=>I.conditionId!==N.conditionId),n.delete(N.conditionId),S(),r())}return{addCondition:p,changeGroupRelation:C,conditionGroupMap:n,getConditions:x,group:b,groupParentMap:o,insertConditionTo:m,loadConditionGroup:h,refresh:r,removeCondition:V,rootGroup:e,unGroup:w}}function Oc(e,n,o){const a=t.ref(new Set),i=t.ref(new Set),{conditionGroupMap:l,groupParentMap:r}=o;let s,u;function d(v){let b=s.level<=v.level?s:v,w=s.level>v.level?s:v;const C=[];for(;w&&b&&w!==b;)w.level>b.level?(C.push(w),w=r.get(w.groupId)):w.level===b.level&&(b=r.get(b.groupId),b&&C.unshift(b));return C}function f(v){i.value.add(v.groupId),v.items.forEach(b=>a.value.add(b.conditionId)),v.children.forEach(b=>f(b))}function c(v){const{conditionId:b}=v;a.value.add(b),s=a.value.size===0?l.get(b):s;const w=l.get(v.conditionId);d(w).forEach(x=>f(x))}const h=t.computed(()=>a.value.size===0&&i.value.size===1),p=function(v){i.value.delete(v.groupId),v.items.forEach(w=>u(w)),v.children.forEach(w=>!h.value&&p(w));const b=r.get(v.groupId);b&&i.value.has(b.groupId)&&p(b)};u=function(v){const{conditionId:b}=v;if(a.value.has(b)&&a.value.delete(b),i.value.size>0){const w=l.get(b);w&&i.value.has(w.groupId)&&p(w)}};function m(v){const{conditionId:b}=v;a.value.size===0&&(s=l.get(b)),a.value.has(b)?u(v):c(v)}function g(){const v=[];return s&&(s.items.filter(b=>a.value.has(b.conditionId)).forEach(b=>v.push(b)),s.children.filter(b=>i.value.has(b.groupId)).forEach(b=>v.push(b))),v}function y(){a.value.clear(),i.value.clear()}return{clear:y,getSelectedGroupItem:g,selectedItems:a,toggleSelect:m}}const No=t.defineComponent({name:"FConditionList",props:ri,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,n){const o=t.ref(e.key),a=t.ref(e.conditions),i=vi(e),{convertToSingleControl:l,fields:r,fieldMap:s,loadFieldConfigs:u}=i,d=Pi(),{addCondition:f,changeGroupRelation:c,getConditions:h,group:p,insertConditionTo:m,loadConditionGroup:g,refresh:y,removeCondition:v,rootGroup:b,unGroup:w}=d,{createConditionValue:C}=yi(),x=Oc(e,n,d),{selectedItems:T,toggleSelect:S}=x,{getCompareOperators:V}=_c(e,n,i),{conditionListLocale:N}=kc();u(!1),r.value=l(r.value),g(a.value);function k(z){var J;const G=((J=s.get(z.fieldCode))==null?void 0:J.editor)||{type:"text"};z.value=C(G.type,void 0),n.emit("labelCodeChange",z)}function I(z,G){n.emit("compareTypeChange",G)}function E(){}n.expose({getConditions:h});function _(z,G){n.emit("valueChange",z,G)}function M(z){return t.createVNode("div",{class:"condition-list-item-type mr-3"},[t.createVNode(Xt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:r.value,modelValue:z.fieldCode,"onUpdate:modelValue":G=>z.fieldCode=G,onChange:G=>k(z)},null)])}function F(z){return t.createVNode("div",{class:"condition-list-item-compare mr-3"},[t.createVNode(Xt,{"value-field":"value","text-field":"name","id-field":"id",data:V(z),modelValue:z.compareType,"onUpdate:modelValue":G=>z.compareType=G,onChange:G=>I(G,z)},null)])}function P(z){var G;return t.createVNode("div",{class:"condition-list-item-control mr-3"},[t.createVNode(On,{editor:(G=s.get(z.fieldCode))==null?void 0:G.editor,showLabel:!1,modelValue:z.value.value,"onUpdate:modelValue":J=>z.value.value=J,onChange:J=>{_(J,z)}},null)])}function B(z){return[t.createVNode("div",{class:"condition-list-item-extend"},[t.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>m(z)},null),t.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>v(z)},null)]),t.createVNode("div",{class:"custom-control custom-checkbox"},[t.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:T.value.has(z.conditionId)},null),t.createVNode("label",{class:"custom-control-label",onClick:()=>S(z)},null)])]}function $(z){return z.items.map(G=>t.createVNode("div",{class:"condition-list-item",key:G.conditionId},[M(G),F(G),P(G),B(G)]))}function j(z){return t.createVNode("div",{class:"condition-list-relation"},[t.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>w(z)},null),t.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>c(z)},[z.relation===1?N.and:N.or])])}function D(z){return t.createVNode("div",{class:"condition-list-content"},[t.createVNode("div",{class:"condition-list-content-group"},[$(z),z.children&&z.children.map(G=>D(G))]),j(z)])}function O(){p(x.getSelectedGroupItem()),x.clear()}function L(){return t.createVNode("div",{class:"condition-list-bottom"},[t.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:f},[t.createVNode("span",{class:"f-icon f-icon-filter-add"},null),t.createVNode("span",{class:"ml-1"},[N.add])]),t.createVNode("div",{class:"add-condition-btn mb-1",onClick:O},[t.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),t.createVNode("span",{class:"ml-1"},[N.create])]),t.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:E},[N.reset])])}return()=>t.createVNode("div",{class:"condition-list",key:o.value},[t.createVNode("div",{class:"condition-list-body"},[D(b.value)]),L()])}});No.install=e=>{e.component(bi.name,bi).component(No.name,No)};const Bc=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Dc={equal:(e,n,o)=>e&&e[n]===o,notEqual:(e,n,o)=>e&&e[n]!==o,contain:(e,n,o)=>e?(e[n]||"").indexOf(o)>-1:!1,startWidth:(e,n,o)=>e?(e[n]||"").startsWith(o):!1,endWidth:(e,n,o)=>e?(e[n]||"").endsWith(o):!1},jc={equal:(e,n,o)=>e&&e[n]===o,in:(e,n,o)=>{if(e){const a=e[n];return o.indexOf(a)>-1}return!1},notEqual:(e,n,o)=>e&&e[n]!==o},$c={equal:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()===a}return!1},notEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()!==a}return!1},greaterThan:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>a}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>=a}return!1},lessThan:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<a}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<=a}return!1}},Lc={equal:(e,n,o)=>e?String(o).split(",").includes(String(e[n])):!1,in:(e,n,o)=>{if(e){const a=e[n];return o.indexOf(a)>-1}return!1},notEqual:(e,n,o)=>e?String(o).split(",").findIndex(i=>i===String(e[n]))===-1:!1},Rc={equal:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):a===i}return!1},notEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?!0:a!==i}return!1},greaterThan:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i>a}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i>=a}return!1},lessThan:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i<a}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i<=a}return!1}},Ac=new Map([["boolean",jc],["datetime",$c],["enum",Lc],["number",Rc],["text",Dc]]);function Ei(){const e=t.ref([]),n=new Map,{loadConditionGroup:o}=Pi();function a(y,v){switch(y){case"check-box":return new li({value:v});case"combo-list":return new ci({value:v});case"combo-lookup":return new si({value:v});case"input-group":return new _n({value:v});case"date-picker":return new hn({value:v});case"date-range":return new gn({value:v});case"datetime-picker":return new gi({value:v});case"datetime-range":return new gn({value:v});case"lookup":return new ui({value:v});case"month-picker":return new di({value:v});case"month-range":return new fi({value:v});case"number-range":return new pi({value:v});case"number-spinner":return new mi({value:v});case"radio-group":return new hi({value:v});default:return new _n({value:v})}}const i=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),l=new Map([["boolean",gt.In],["date",gt.Equal],["datetime",gt.Equal],["number",gt.Equal],["string",gt.Equal],["text",gt.Equal],["enum",gt.In],["reference",gt.Equal]]);function r(y){var b;const v=y.dataType||"string";return((b=y.editor)==null?void 0:b.type)||i.get(v)||"text"}function s(y){var k,I,E,_,M;const v=`field_filter_${y.field}`,b=Date.now(),w=y.field,C=((k=y.column)==null?void 0:k.title)||"",x=((I=y.column)==null?void 0:I.dataType)||"string",T=l.get(x)||gt.Equal,S=((_=(E=y.column)==null?void 0:E.editor)==null?void 0:_.type)||i.get(x)||"text",V=a(S,(M=y.column)==null?void 0:M.filter),N=S==="lookup"||S==="combo-lookup"?yn.SmartHelp:S==="combo-list"?yn.Enum:yn.Value;n.set(v,{id:v,fieldCode:w,fieldName:C,compareType:T,valueType:N,value:V,conditionId:b}),e.value=Array.from(n.values())}function u(y){const v=`field_filter_${y.field}`;n.delete(v),e.value=Array.from(n.values())}function d(y){n.delete(y),e.value=Array.from(n.values())}function f(){n.clear(),e.value=[]}function c(y){const{valueType:v}=y.value,b=y.compareType||"0",w=Bc[Number(b)];return Ac.get(v)[w]}function h(y){const v=y.relation===2?0:1,b=y.items.map(C=>{const x=c(C);return S=>x(S,C.fieldCode,C.value.getValue())}),w=y.children&&y.children.length?y.children.map(C=>h(C)):[];return{relation:v,filterFunctions:b,children:w}}function p(){const y=o(e.value);return h(y)}function m(y,v){const b=v.filterFunctions.map(C=>C(y)),w=v.children.map(C=>m(y,C));return v.relation===1?b.every(C=>C)&&w.every(C=>C):b.includes(!0)||w.includes(!0)}function g(y){const v=p();return m(y,v)}return{addColumnFilter:s,apply:g,clearCondition:f,conditions:e,getFilterEditorType:r,removeColumnFilter:u,removeCondition:d}}function Mi(e){t.ref(e.selection.showCheckbox||!1);const n=t.computed(()=>{var r;return((r=e.hierarchy)==null?void 0:r.collapseField)||"__fv_collapse__"}),o=t.computed(()=>{var r;return((r=e.hierarchy)==null?void 0:r.hasChildrenField)||"__fv_hasChildren__"}),a=t.computed(()=>{var r;return((r=e.hierarchy)==null?void 0:r.parentIdField)||"parent"}),i=t.computed(()=>e.hierarchy&&e.selection.showCheckbox),l=t.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:n,hasChildrenField:o,parentIdField:a,shouldShowCheckBox:i,shouldShowIcon:l}}function zc(e,n,o,a,i,l,r,s,u){var Bt;const{dataView:d,visibleDataItems:f}=n,{getVisualData:c,maxVisibleRowIndex:h,minVisibleRowIndex:p}=i,m=t.computed(()=>a.value.primaryColumnsWidth),g=t.computed(()=>a.value.leftColumnsWidth),y=t.computed(()=>a.value.rightColumnsWidth),v=((Bt=e.rowOption)==null?void 0:Bt.height)||28,b=t.ref(0),w=t.ref(0);let C=0,x=l.value-1;const T=t.ref(0),S=t.ref(0),V=t.ref(0),N=t.ref(e.virtualized),k=24,I=1.5;let E=null;function _(){const me=f.value;if(me.length<=0)return 0;const Se=h.value<me.length?me[h.value]:me[me.length-1];return Se.__fv_data_position__>me.length*v?me.length*v:(Se.__fv_data_position__||0)+(Se.__fv_data_height__||0)+Math.max(me.length-1-h.value,0)*v}const M=t.computed(()=>{const me=_();f.value;let Se=S.value/Math.max(me,S.value),ke=Math.floor(Se*S.value);for(;S.value>0&&ke<k;)Se*=I,ke=Math.floor(Se*S.value);return ke}),F=t.computed(()=>Math.floor(V.value/Math.max(m.value,V.value)*T.value)),P=0,B=0,$=t.computed(()=>T.value-(g.value+m.value+y.value+s.value));function j(me){const ke=Math.floor(me/v)+1,Ue=f.value;return Ue.length>ke?Ue[ke].__fv_visible_index__-1:0}function D(me,Se,ke){let Ue=me,Xe=Se;const at=Se-me+1;if(at<r+l.value+r){const dt=r+l.value+r-at,It=Se+dt<=ke,vt=0+dt<=me;if(It)Xe+=dt,x=Xe;else if(vt)Ue-=dt,C=Ue;else{const re=ke-Se,Y=dt-re;Xe=Math.min(Se+re,ke),Ue=Math.max(me-Y,0)}}return{actualStart:Ue,actualEnd:Xe}}function O(me){var re,Y;const Se=f.value;if(!Se.length){o.value=[];return}const ke=(re=e.pagination)!=null&&re.enable?0:Math.max(C-r,0),Ue=Se[Se.length-1].__fv_visible_index__,Xe=(Y=e.pagination)!=null&&Y.enable?Se.length-1:Math.min(x+r,Ue),{actualStart:at,actualEnd:dt}=D(ke,Xe,Ue),It=Se[at-1],vt=c(at,dt,It,me);vt.length&&(o.value=[...vt])}const L=t.computed(()=>_()>S.value),z=t.computed(()=>Math.floor(m.value)>V.value);function G(me,Se){let ke=me;const Ue=ke>P,Xe=L.value;Xe&&ke<S.value-Se&&(ke=S.value-Se),(!Xe||Ue)&&(ke=P),b.value!==ke&&(b.value=ke)}function J(){N.value&&(C=j(Math.abs(b.value)),x=C+l.value-1,(C<p.value||x>h.value-r/2)&&O())}function te(me){let Se=b.value+me;Se>P&&(Se=P);const ke=_();G(Se,ke),J()}function W(me){if(!z.value){w.value=0;return}let Se=w.value+me;Se>B&&(Se=B),Se<$.value&&(Se=$.value),w.value!==Se&&(w.value=Se)}function q(){Math.abs(w.value)+V.value>m.value&&(w.value=Math.min(V.value-m.value,0))}function R(){b.value=0,C=0,x=l.value-1,O()}function H(){const me=_();G(b.value,me)}t.watch([V,m],()=>{W(0)}),t.watch(S,(me,Se)=>{me!==Se&&me>=d.value.length*v&&te(0)});function A(me){let{deltaX:Se}=me,ke=-1*me.deltaY;return typeof Se>"u"&&(Se=-1*me.wheelDeltaX/6),typeof ke>"u"&&(ke=me.wheelDeltaY/6),me.deltaMode&&me.deltaMode===1&&(Se*=10,ke*=10),me.shiftKey?{deltaY:-ke,deltaX:-Se}:{deltaX:Se,deltaY:ke}}function U(me){if(e.disabled||!L.value||me.target.tagName==="TEXTAREA")return;me.preventDefault(),me.stopPropagation();const{deltaX:Se,deltaY:ke}=A(me);te(ke),W(Se)}const K=t.computed(()=>({height:`${d.value.length*v}px`,width:`${g.value}px`,transform:`translateY(${b.value}px)`})),Q=t.computed(()=>({transform:`translateY(${b.value}px)`})),oe=t.computed(()=>({height:`${(e.autoHeight?f.value:d.value).length*v}px`,width:`${m.value}px`,transform:`translate(${w.value}px, ${b.value}px)`})),X=t.computed(()=>({transform:`translate(${w.value}px, ${b.value}px)`})),ne=t.computed(()=>({height:`${d.value.length*v}px`,width:`${y.value}px`,transform:`translateY(${b.value}px)`})),ie=t.computed(()=>({transform:`translateY(${b.value}px)`})),we=t.computed(()=>({height:`${d.value.length*v}px`,width:`${s.value}px`,transform:`translateY(${b.value}px)`})),le=t.computed(()=>({width:`${g.value}px`})),de=t.computed(()=>({transform:`translateX(${w.value}px)`})),he=t.computed(()=>({width:`${y.value}px`})),ee=t.computed(()=>{const me=_();return G(b.value,me),b.value/(S.value-me)*(S.value-M.value)}),fe=t.computed(()=>({width:"8px",height:`${M.value}px`,top:`${ee.value}px`,backgroundColor:"#cccccc !important"})),Ee=t.computed(()=>w.value/$.value*(T.value-F.value)),He=t.computed(()=>({height:"8px",width:`${F.value}px`,left:`${Ee.value}px`,backgroundColor:"#cccccc !important"})),De=t.ref(!1),ue=t.ref(-1),Pe=t.ref(-1),ze=t.ref();function Re(me){if(De.value&&Pe.value!==-1){const Se=Pe.value-me.pageX,ke=T.value-F.value;if(Math.abs(Se)<=ke){const Ue=Se/(V.value-F.value)*(m.value-V.value);W(Ue),Pe.value=me.pageX}}}function mt(me){if(De.value&&ue.value!==-1){const Se=ue.value-me.pageY,ke=_(),Ue=ke-M.value;if(Math.abs(Se)<=Ue){const Xe=Se/(S.value-M.value)*(ke-S.value);te(Xe),ue.value=me.pageY}}}function xt(me){De.value=!1,ue.value=-1,Pe.value=-1,document.removeEventListener("mouseup",xt),E&&(document.removeEventListener("mousemove",E),E=null),document.body.style.userSelect="",ze.value&&(ze.value.style.opacity=null)}function Wt(me,Se,ke){var at;De.value=!0;const Ue=(at=me.target)==null?void 0:at.parentElement;Ue&&(Ue.style.opacity="1",ze.value=Ue);const Xe=ke==="horizontal"?Re:Fe.throttle(mt,50);E||(E=Xe),ke==="vertical"&&(ue.value=me.pageY),ke==="horizontal"&&(Pe.value=me.pageX),Se.value&&(Se.value,document.addEventListener("mousemove",E),document.addEventListener("mouseup",xt),document.body.style.userSelect="none")}function Ot(me){const Se=d.value.length*v-S.value;let ke=me*v;ke>=Se&&(ke=Se),te(-ke-b.value)}function Nt(){Ot(d.value.length)}function qt(me){te(me-b.value)}return{dataGridWidth:T,fitHorizontalScroll:q,gridDataStyle:oe,gridHeaderColumnsStyle:de,gridMergedDataStyle:X,gridSideStyle:we,horizontalScrollThumbStyle:He,leftFixedGridDataStyle:K,leftFixedGridHeaderColumnsStyle:le,leftFixedGridMergedDataStyle:Q,offsetX:w,offsetY:b,onMouseDownScrollThumb:Wt,onWheel:U,reCalculateVisualDataRows:O,resetScroll:R,rightFixedGridDataStyle:ne,rightFixedGridHeaderColumnsStyle:he,rightFixedGridMergedDataStyle:ie,shouldShowHorizontalScrollbar:z,shouldShowVirticalScrollbar:L,updateVirticalScroll:H,updateVisibleRowsOnLatestVisibleScope:J,verticalScrollThumbStyle:fe,viewPortWidth:V,viewPortHeight:S,scrollToBottom:Nt,scrollToRowByIndex:Ot,scrollTo:qt}}function Hc(e,n,o,a,i,l,r,s){const u=t.ref(a.value-1+i),d=t.ref(0),{renderDataRow:f}=l,c=r?r.renderGroupRow:f,h=s?s.renderSummaryRow:f;function p(y){let v=f;return y.__fv_data_grid_group_row__&&(v=c),y.__fv_data_grid_group_summary__&&(v=h),v}function m(y,v,b,w){const{dataView:C,visibleDataItems:x}=o,T=[],S=e.virtualized?x.value:C.value;if(S.length>0){const V=w?Date.now().toString():"";let N=y,k=0;const I=v-y+1;for(;T.length<I&&N<S.length;){const E=S[N],_=S[N-1]||b,M=T[k-1],F=_?(_.__fv_data_position__||0)+(_.__fv_data_height__||0):0,B=p(E)(E,_,M,N,F,n.value);B.refreshKey=V,B.visible&&(T.push(B),k++),N++}}return d.value=T.length>0?T[0].raw.__fv_visible_index__:0,u.value=T.length>0?T[T.length-1].raw.__fv_visible_index__:0,T}function g(y,v,b){const w=v.groupField||"",{groupValue:C}=v;o[y](w,C);const{dataView:x}=o,T=b[0].index,S=Math.min(T+a.value+i+1,x.value.length-1);return m(T,S)}return{getVisualData:m,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:g}}function _i(e){var l;const{isUndefined:n}=Ie.useCommonUtils(),o=((l=e.rowOption)==null?void 0:l.height)||28;function a(r,s){const u=r.pre;if(u){let d=u.__fv_data_position__,f=u.__fv_data_height__;(n(d)||e.virtualized&&e.hierarchy&&u.__fv_visible_index__*o!==d)&&(d=u.__fv_visible_index__*o),n(f)&&(f=o);const c=r.visible?d+f:u.__fv_data_position__;r.top=c,s.__fv_data_position__=c}else r.top=0,s.__fv_data_position__=0}function i(r,s,u){if(r&&!s.ref){s.ref=r;const d=s.parent;s.cellHeight!==r.offsetHeight&&(s.cellHeight=r.offsetHeight),s.cellHeight&&s.cellHeight>(d.height||0)&&(d.height=s.cellHeight,u.__fv_data_height__=d.height),a(d,u)}!r&&s.ref&&(s.ref=r)}return{updateRowPosition:a,updateVisualInfomation:i}}function Wc(){function e(n,o){var r,s;if(!o.data||!o.data.length)return"";const a=Object.prototype.hasOwnProperty.call(o,"valueField")&&o.valueField||"value",i=Object.prototype.hasOwnProperty.call(o,"textField")&&o.textField||"name";if(n!=null&&n.includes(",")){const u=n.split(",");if(!o.data.filter(h=>u.includes(h[a])).length)return"";const f=(r=o.data)==null?void 0:r.reduce((h,p)=>(h[p[a]]=p,h),{});return u.map(h=>{var p;return(p=f[h])==null?void 0:p[i]}).join(",")||n}const l=(s=o.data)==null?void 0:s.find(u=>u[a]===n);return(l==null?void 0:l[i])||n||""}return{renderEnumColumn:e}}function qc(){function e(n,o){return n?o==null?void 0:o.trueText:o==null?void 0:o.falseText}return{renderText:e}}function Uc(){const{formatTo:e}=Ie.useDateFormat();function n(a,i){if(a){let l="yyyy-MM-dd";if(typeof i=="string"?l=i:typeof i=="object"&&(l=i.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof i=="object"&&i.dateRange){const r=i.dateRangeDatesDelimiter||"~";let[s,u]=a.split(r);return s=e(s,l),u=e(u,l),s+r+u}return e(a,l)}return a}function o(a,i){const l=i.dateFormat||"yyyy-MM-dd";return e(a,l)}return{renderDateColumn:o,renderDateTimeColumn:n}}function Gc(){const{formatTo:e}=Ie.useNumberFormat();function n(o,a){const i={precision:a.precision,prefix:a.prefix||"",suffix:a.suffix||"",decimalSeparator:a.decimal||".",groupSeparator:a.thousand||""};return e(o,i)||o}return{renderNumberColumn:n}}function Yc(){function e(n,o){if(n){const a={};return o!=null&&o.width&&(a.width=`${o.width}px`),o!=null&&o.height&&(a.height=`${o.height}px`),t.createVNode("img",{src:n,style:a},null)}return n}return{renderImageColumn:e}}function Xc(){const{locale:e}=Ge.useI18n();function n(o,a){return(o==null?void 0:o[e.value||"zh-CHS"])||""}return{renderMultilingualColumn:n}}function Jc(){const{renderText:e}=qc(),{renderEnumColumn:n}=Wc(),{renderNumberColumn:o}=Gc(),{renderDateColumn:a,renderDateTimeColumn:i}=Uc(),{renderImageColumn:l}=Yc(),{renderMultilingualColumn:r}=Xc();function s(f){return typeof f=="boolean"?f.toString():f}function u(f,c,h){return c.customFormat?c.customFormat(f,h.raw):s(f)}function d(f,c,h){const{column:p}=f,m=Ie.resolveField(c.raw,p.field),g=h.options||h;return h.type===Ct.NONE?s(m):h.type===Ct.CUSTOM?u(m,h,c):h.type===Ct.ENUM?n(m,g):h.type===Ct.NUMBER?o(m,g):h.type===Ct.BOOLEAN?e(m,g):h.type===Ct.DATE?a(m,g):h.type===Ct.DATE_TIME?i(m,h):h.type===Ct.IMAGE?l(m,g):h.type===Ct.MULTI_LINGUAL?r(m,g):s(m)}return{renderFormatColumn:d}}function Oi(e,n,o){var v;const{isUndefined:a}=Ie.useCommonUtils(),i=t.ref(e.mergeCell);(v=t.ref(e.rowOption).value)!=null&&v.wrapContent;const{updateVisualInfomation:r}=o,{renderCommandColumn:s}=xs(e),{renderFormatColumn:u}=Jc();function d(b,w,C,x,T,S=1){const V={colSpan:S,rowSpan:1,index:C,field:b,data:Ie.resolveField(x,b),editingData:Ie.resolveField(x,b),parent:T,mode:w,align:"left",valign:"start",showEllipsis:!0,getEditor:N=>N.data,setRef:N=>r(N,V,x),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return V}function f(b,w,C){return b.getEditor=x=>n.getEditor(x,w,x.parent),b.setRef=x=>r(x,b,C),b.update=x=>{x!==void 0&&(b.editingData=x)},b.accept=()=>{Ie.setFieldValue(b.editingData,C,w.field),b.data=Ie.resolveField(C,w.field)},b.cancel=()=>{b.editingData=b.data},b.updateData=x=>{Ie.setFieldValue(Ie.resolveField(x,w.field),C,w.field),b.data=Ie.resolveField(C,w.field),b.editingData=Ie.resolveField(C,w.field)},b}function c(b,w){w.dataType==="commands"?b.formatter=(C,x)=>w.formatter?w.formatter(b,x):s(b,x):w.formatter&&(b.formatter=(C,x)=>typeof w.formatter=="function"?w.formatter(C,x):u(b,x,w.formatter))}function h(b,w,C){const x=w&&w.data[C];if(x&&x.data===b.data){const S=x&&x.spannedBy||x;S.rowSpan++,S.spanned=S.spanned||[],S.spanned.push(b),b.colSpan=0,b.rowSpan=0,b.spannedBy=S}}function p(b,w,C){i.value&&h(b,w,C.field)}function m(b,w){w.showEllipsis!==void 0&&(b.showEllipsis=w.showEllipsis),b.showTips=a(w.showTips)?!0:w.showTips,b.column=w,b.align=w.align||"left",b.valign=w.valign||"middle",b.mode=e.editable?Qe.editable:Qe.readonly}function g(b,w,C,x){m(b,w),f(b,w,x),c(b,w),p(b,C,w)}function y(b,w,C,x,T){const S=e.editable?Qe.editable:Qe.readonly,V=d(b.field,S,w,C,x);return g(V,b,T,C),V}return{createCellByColumn:y,createCellByField:d,updateCellByColumn:g}}function Bi(e,n,o,a,i,l,r){var w,C;const s=t.ref(e.rowOption),u=((w=s.value)==null?void 0:w.height)||28,d=((C=s.value)==null?void 0:C.wrapContent)||!1,{idField:f}=i,{collapseField:c}=a,{updateRowPosition:h}=l,{createCellByColumn:p}=r,m=(x,T,S,V)=>{Ie.setFieldValue(Ie.resolveField(x,V),T,V),S.data[V].data=Ie.resolveField(T,V),S.data[V].editingData=Ie.resolveField(T,V)};function g(x,T,S,V,N,k){var z,G,J;const{__fv_data_grid_group_field__:I,__fv_data_grid_group_value__:E,__fv_data_index__:_}=S,M=S.__fv_data_grid_group_layer__||(S.__fv_parents__?(z=S.__fv_parents__)==null?void 0:z.size:0)||0,F=typeof S.parent=="number"?Number(S.parent):-1,P=S.__fv_data_grid_group_collapse__||S[c.value],B=S.__fv_visible__===void 0?!0:S.__fv_visible__,$=S.__fv_checked__,j=S.__fv_indeterminate__,D=S.__fv_disabled__||S[((G=e.rowOption)==null?void 0:G.disabledField)||"disabled"],O=e.hierarchy&&n.isVisibleInTree(S),L={collapse:P,data:{},dataIndex:_,groupField:I,groupValue:E,layer:M,index:T,parentIndex:F,pre:V,top:k,type:x,raw:S,checked:$,disabled:D,indeterminate:j,setRef:te=>{L.ref=te},visible:B&&O||B&&!e.hierarchy,status:bt.initial,updateCell:(te,W)=>{m(te,S,L,W),n.updateSummary()},updateCells:(te,W)=>{W.forEach(q=>{m(te,S,L,q)})}};return V||(S.__fv_data_position__=0),d||(L.height=u,S.__fv_data_height__=L.height,h(L,S)),(J=s.value)!=null&&J.customRowStatus&&(s.value.customRowStatus(L),S.__fv_disabled__=L.disabled),L}function y(x,T,S,V,N,k){const I=g(jt.data,N,T,S,V,k);return x.forEach((E,_)=>{I.data[E.field]=p(E,_,T,I,V)}),I}function v(x,T,S,V,N){return Object.assign(x,{index:T,dataIndex:S,top:V,pre:N})}function b(x,T,S,V,N,k){const I=x.__fv_data_index__,E=x[f.value],_=o.getEditingSnapshot(E);return _===null?y(k,x,T,S,V,N):v(_,V,I,N,T)}return{createEmptyRow:g,createNewRowFromDataItem:y,renderDataRow:b}}function Qc(e,n,o,a){const i=t.ref(e.summary),{idField:l}=n,{createCellByField:r}=o,{createEmptyRow:s}=a,u=t.computed(()=>{const h=i.value;return(h==null?void 0:h.groupFields)||[]}),d=t.computed(()=>{const h=i.value;return h&&h.enable&&h.groupFields&&h.groupFields.length>0});function f(h,p,m,g){if(d.value){const y=h.data[p];let v=y.colSpan;const b=u.value.reduce((w,C)=>(w.set(C,!0),w),new Map);g.reduce((w,C,x)=>{if(b.has(C.field)){const T=r(C.field,Qe.readonly,x,m,h);h.data[C.field]=T,v-1>x&&(v=x)}return w},h),y.colSpan=v}}function c(h,p,m,g,y,v,b){const w=h.__fv_data_grid_group_field__,C=s(jt.group,g,h,p,m,y);return C.data[l.value]=r(l.value,Qe.readonly,-1,h,C,0),C.data[w]=r(w,Qe.readonly,1,h,C,v.length),f(C,w,h,v),C}return{renderGroupRow:c}}function Kc(e,n,o,a){const{idField:i}=n,{createCellByField:l}=o,{createEmptyRow:r}=a;function s(u,d,f,c,h,p,m){const g=u.__fv_data_grid_group_field__,y=r(jt.summary,c,u,d,f,h);return y.data[i.value]=l(i.value,Qe.readonly,-1,u,y),y.data[g]=l(g,Qe.readonly,1,u,y,p.length),y}return{renderSummaryRow:s}}function Di(e,n,o,a,i){var D;const{idField:l}=o,r=t.ref(e.editable),s=t.ref(e.editOption),u=t.ref(((D=e.rowOption)==null?void 0:D.wrapContent)||!1),{onClickRow:d,onClickRowExcludeDblclick:f}=a,c=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let h,p,m,g,y;function v(O){return p&&p.raw[l.value]===O?p:null}const b=t.reactive({});function w(O,L,z={}){O.mode=Qe.editing,h=O,p=L,m=Ie.resolveField(L==null?void 0:L.raw,O.field),g=z;for(const G in b)delete b[G]}function C(O){O.accept(),O.mode=Qe.editable,h=null;const L={};p&&(Object.keys(p).forEach(z=>{L[z]=p==null?void 0:p[z]}),p=null),n.emit("endEditCell",{cell:O,row:L,newValue:Ie.resolveField(L==null?void 0:L.raw,O.field),oldValue:m,column:g,editor:b})}function x(O){const L=Promise.resolve(!0);return O?L.then(()=>Fe.isUndefined(e.beforeEndEditCell)?!0:typeof e.beforeEndEditCell=="function"?e.beforeEndEditCell({cell:O,row:p,newValue:O.editingData,oldValue:m}):()=>!0).then(z=>(z&&(C(O),p&&(p=null)),z)):L}function T(O){if(y&&y!==O.target){y=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const z=O.target;if(!(z!=null&&z.closest(".popover"))){if(O instanceof MouseEvent||O.key!=="Enter"){const G=z.closest(".fv-grid-cell");if(h&&h.ref&&h.ref===G)return}x(h).then(G=>{G&&document.body.removeEventListener("click",T,!0)})}}function S(O,L,z){return Promise.resolve().then(()=>{var J;const G=(J=z.editor)==null?void 0:J.readonly;return!Fe.isUndefined(e.beforeEditCell)&&typeof e.beforeEditCell=="function"?e.beforeEditCell({row:O,cell:L,rawData:O.raw,column:z}):!G}).then(G=>{G&&(w(L,O,z),document.body.removeEventListener("click",T,!0),document.body.addEventListener("click",T,!0))})}function V(O,L,z,G={}){O.stopPropagation(),f(O,z),r.value&&s.value.editMode==="cell"&&L.mode===Qe.editable&&x(h).then(()=>{h||S(z,L,G)})}function N(O,L,z,G={}){O.stopPropagation(),d(O,z),r.value&&s.value.editMode==="cell"&&L.mode===Qe.editable&&x(h).then(()=>{h||S(z,L,G)})}function k(O){O.stopPropagation(),y=O.target}function I(O){O.stopPropagation(),y&&(y=null)}function E(O){Object.values(O.data).filter(L=>L.mode===Qe.editable&&L.field!=="__commands__").forEach(L=>{L.mode=Qe.editing}),O.status=bt.editing,p=O}function _(O,L){Object.values(O.data).filter(z=>z.mode===Qe.editing).forEach(z=>{L?z.accept():z.cancel(),z.mode=Qe.editable}),O.status=bt.initial,p===O&&(p=null)}function M(O){r.value&&s.value.editMode==="row"&&p!==O&&(p&&_(p,!1),E(O))}function F(O){_(O,!0),O.status=bt.initial}function P(O){_(O,!1),O.status=bt.initial}function B(O,L,z){const G=L.dataType,J=L.editor||{type:c.get(G)||"input-group"};return!u.value&&J.type==="text"&&(J.type="input-group"),J?(J.type==="input-group"&&(J.textAlign=L.align!=="center"&&L.align!=="right"?"left":L.align,J.updateOn="change"),J.type==="number-spinner"&&(J.updateOn="change"),J.type==="textarea"&&(J.lineBreak="alt enter"),J.context={rowData:z.raw,column:L,cell:O,editor:b},J.readonly=!1,t.createVNode(dn.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:J,modelValue:O.editingData,"onUpdate:modelValue":te=>O.editingData=te,id:L.id,onMousedown:te=>k(te),onMouseup:te=>I(te)},null)):O.data}function $(){x(h)}t.watch(()=>e.editable,()=>{r.value=e.editable}),t.watch(()=>{var O;return(O=e.editOption)==null?void 0:O.editMode},O=>{s.value.editMode=O});function j(){h=null,p=null,g=null,y=null,document.body.removeEventListener("click",T,!0)}return{clear:j,onClickOutOfCell:T,onClickCell:N,onClickCellByKeyboard:V,onEditingRow:M,acceptEditingRow:F,cancelEditingRow:P,getEditingSnapshot:v,getEditor:B,endEditCell:$,onMousedownCell:k,onMouseupCell:I}}function ji(e){const n=t.ref(e.idField);function o(a){if(a&&a.length){const i=a[0];Object.keys(i).includes(n.value)||(n.value="__fv_indetify__")}}return{idField:n,reviseIdentifyField:o}}function $i(e,n,o,a){const{idField:i}=a,{currentSelectedDataId:l,multiSelectOnClickRow:r,multiSelectOnClickRowWithShift:s,selectItem:u,selectedValues:d,toggleSelectItem:f,updateSelectAllStatus:c,enableSelectRow:h,multiSelectMode:p,isSingleSelect:m}=o,g=t.ref(0),y=t.ref(-1);function v(M){l.value=M}function b(M){return h.value&&(s.value?d.value.includes(M.raw[i.value]):M.raw[i.value]===l.value)}function w(M,F){var $;const P=F??M.dataIndex,B={"fv-grid-row":M.type===jt.data,"fv-grid-group-row":M.type===jt.group,"fv-grid-summary-row":M.type===jt.summary,"fv-grid-row-hover":P===y.value,"fv-grid-row-selected":b(M),"fv-grid-row-odd":P%2>0,"fv-grid-row-even":P%2===0,"fv-grid-disabled":M.disabled};if(($=e.rowOption)!=null&&$.customRowStyle){const j=e.rowOption.customRowStyle(M.raw)||{};return Object.assign({},B,j)}return B}function C(M){var P;const F={"fv-grid-cell":!0};if((P=e.rowOption)!=null&&P.customCellStyle){const B=e.rowOption.customCellStyle(M)||{};return Object.assign({},F,B)}return F}function x(M){var P;const F={"fv-grid-hierarchy-cell":!0};if((P=e.rowOption)!=null&&P.customCellStyle){const B=e.rowOption.customCellStyle(M)||{};return Object.assign({},F,B)}return F}function T(M,F){var $,j;if(s.value&&!M.shiftKey||m.value){($=e.selection)!=null&&$.keepSelectingOnClick?u(F):f(F,(j=e.selection)==null?void 0:j.keepSelectingOnClick),c();return}if(s.value&&M.shiftKey||r.value){f(F),c();return}v(F.raw[i.value])}function S(M,F){F.disabled||(T(M,F),n.emit("clickRow",F.index,F.raw))}function V(M){g.value+=1,setTimeout(()=>{g.value===1&&n.emit("clickRow",M.index,M.raw),g.value=0},250),g.value>1&&(n.emit("doubleClickRow",M.index,M.raw),g.value=0)}function N(M,F){F.disabled||(T(M,F),V(F))}function k(M){M.disabled||V(M)}function I(M,F){}function E(M,F){}function _(M,F){var $;const P=F??M.dataIndex,B={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":P===y.value,"fv-grid-sidebar-row-selected":b(M),"fv-grid-sidebar-row-odd":P%2>0,"fv-grid-sidebar-row-even":P%2===0,"d-flex":!0,"align-items-center":!0};if(($=e.rowOption)!=null&&$.customRowStyle){const j=e.rowOption.customRowStyle(M.raw)||{};return Object.assign({},B,j)}return B}return{activeRowById:v,clickRowItem:k,gridCellClass:C,gridHierarchyCellClass:x,gridRowClass:w,onClickRow:N,onClickRowExcludeDblclick:S,onMouseoverRow:I,sidebarRowClass:_,onMouseoutRow:E}}function Li(e,n,o,a,i){const{idField:l}=o,{dataView:r,getSelectionItems:s}=n,u=t.ref(""),d=t.computed(()=>e.selection.enableSelectRow),f=t.ref(e.selection.multiSelect??!1),c=t.ref(e.selection.multiSelectMode||"DependOnCheck"),h=t.ref(e.selection.showCheckbox),p=t.ref(e.selection.showSelectAll),m=t.ref(e.selectionValues||[]),g=t.ref(!!m.value.length&&a.value.length===m.value.length),y=t.ref(!!m.value.length&&a.value.length!==m.value.length);t.watch(()=>e.selection.showSelectAll,(X,ne)=>{X!==ne&&(p.value=X)});function v(){const X=r.value.every(ie=>m.value.includes(ie[l.value])),ne=r.value.every(ie=>!m.value.includes(ie[l.value]));X&&(g.value=!0,y.value=!1),ne&&(g.value=!1,y.value=!1),!X&&!ne&&(g.value=!1,y.value=!0)}function b(){return s(m.value)}function w(){const X=a.value.reduce((ie,we)=>(ie.set(we.raw[l.value],we),ie),new Map);return m.value.map(ie=>X.get(ie)).filter(ie=>!!ie)}function C(X){var ie;const ne=X.raw.__fv_children_index__;if(ne&&ne.length){const we=ne.map(le=>r.value[le]);(ie=m.value)!=null&&ie.length&&we.some(de=>!m.value.includes(de[l.value]))&&(X.indeterminate=!0,X.raw.__fv_indeterminate__=!0)}}const x=t.computed(()=>d.value&&f.value),T=t.computed(()=>d.value&&!f.value&&!h.value),S=t.computed(()=>!!e.hierarchy),V=t.computed(()=>{const X=h.value&&c.value==="DependOnCheck";return x.value&&X}),N=t.computed(()=>x.value&&!h.value),k=t.computed(()=>x.value&&h.value&&c.value==="OnCheckAndClick");t.computed(()=>k.value);function I(){const X=s(m.value);i.emit("selectionChange",X)}function E(X){i.emit("unSelectItem",X)}function _(X){i.emit("selectItem",X)}function M(){const X=a.value.filter(ie=>ie.indeterminate).map(ie=>ie.raw[l.value]);a.value.forEach(ie=>{ie.checked=!1,ie.indeterminate=!1,ie.raw.__fv_checked__=!1,ie.raw.__fv_indeterminate__=!1}),w().forEach(ie=>{ie.checked=!0,ie.raw.__fv_checked__=!0}),X.forEach(ie=>{const we=a.value.find(le=>le.raw[l.value]===ie);C(we)})}t.watch(()=>a.value,()=>{M()}),t.watch(()=>e.selectionValues,X=>{m.value=X,M()},{immediate:!0}),t.watch(()=>e.selection,X=>{f.value=!!X.multiSelect,c.value=X.multiSelectMode||"DependOnCheck",h.value=!!X.showCheckbox});const F=t.computed(()=>!f.value);function P(X){return X.raw[l.value]}function B(X){return m.value.findIndex(ie=>ie===P(X))}function $(){w().forEach(ie=>{ie.checked=!1}),s(m.value).forEach(ie=>{ie.__fv_checked__=!1}),m.value=[],u.value="",v()}function j(X){const ne=X;ne.__fv_checked__=!0,ne.__fv_indeterminate__=!1;const ie=new Set(m.value);ie.add(ne[l.value]),m.value=Array.from(ie.values())}function D(X){const ne=X;ne.__fv_checked__=!1,ne.__fv_indeterminate__=!1,m.value=m.value.filter(ie=>ie!==ne[l.value])}function O(X){const ne=X.raw;ne.__fv_checked__=!0,ne.__fv_indeterminate__=!1;const ie=new Set(m.value);ie.add(ne[l.value]),m.value=Array.from(ie.values()),X.checked=!0,X.indeterminate=!1}function L(X){const ne=X.raw;ne.__fv_checked__=!1,ne.__fv_indeterminate__=!1,m.value=m.value.filter(ie=>ie!==ne[l.value]),X.checked=!1,X.indeterminate=!1}function z(X){O(X),u.value=X.raw[l.value]}function G(X){L(X),u.value=""}function J(X){X.__fv_checked__=!1,X.__fv_indeterminate__=!0,m.value=m.value.filter(ne=>ne!==X[l.value])}function te(X){const ne=X.raw;ne.__fv_checked__=!1,ne.__fv_indeterminate__=!0,m.value=m.value.filter(ie=>ie!==ne[l.value]),X.checked=!1,X.indeterminate=!0}function W(X){F.value&&$(),X.checked?L(X):O(X),I()}function q(X,ne=!0){const ie=X.checked;F.value&&$(),ne?X.checked?G(X):z(X):ie?G(X):z(X),I(),X.checked?_(X):E(X)}function R(X){X.raw[l.value]!==u.value&&($(),z(X),I())}function H(X){const ne=a.value.find(ie=>ie.raw[l.value]===X);if(ne)R(ne);else{const ie=r.value.find(we=>we[l.value]===X);ie&&j(ie)}}function A(X){const ne=a.value.filter(le=>X.includes(le.raw[l.value])),ie=ne.map(le=>le.raw[l.value]),we=r.value.filter(le=>{const de=le[l.value];return!ie.includes(de)&&X.includes(de)});(ne.length||we.length)&&T.value&&(u.value=X[0]),ne.forEach(le=>{z(le)}),we.forEach(le=>{j(le)}),I()}function U(X){for(const ne of X){if(!m.value.includes(ne))continue;const ie=a.value.find(we=>we.raw[l.value]===ne);if(ie)G(ie);else{const we=r.value.find(le=>le[l.value]===ne);we&&D(we)}}m.value=m.value.filter(ne=>!X.includes(ne))}function K(){a.value.forEach(X=>{O(X)}),I()}function Q(){a.value.forEach(X=>{L(X)}),I()}function oe(){return a.value.find(X=>X.raw[l.value]===u.value)}return{clearSelection:$,currentSelectedDataId:u,enableMultiSelect:f,enableSelectRow:d,findIndexInSelectedItems:B,getSelectedItems:b,getSelectionRow:oe,indeterminate:te,indeterminateDataItem:J,isSelectingHirarchyItem:S,multiSelectMode:c,multiSelectOnClickRow:k,multiSelectOnClickRowWithShift:N,multiSelectOnlyOnCheck:V,select:z,selectAll:K,selectedValues:m,selectDataItem:j,selectItem:R,selectItemById:H,selectItemByIds:A,showCheckBox:h,showSelectAll:p,toggleSelectItem:q,toggleSelectItemWithoutRow:W,unSelect:G,unSelectAll:Q,unSelectDataItem:D,unSelectItemByIds:U,updateSelectAllStatus:v,selectAllStatus:g,indeterminateStatus:y,isSingleSelect:T}}function Zc(e,n){var v,b;const{t:o}=Ge.useI18n(),a=String(Date.now()),i=50,{showCheckBox:l,showSelectAll:r}=n,s=t.ref(((v=e.rowNumber)==null?void 0:v.enable)??!1),u=t.computed(()=>e.hierarchy&&l.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:l.value),d=t.ref(s.value?((b=e.rowNumber)==null?void 0:b.width)??32:0),f=t.ref(u.value?i:0),c=t.computed(()=>{var w,C;return s.value?((w=e.rowNumber)==null?void 0:w.heading)==="序号"?o("datagrid.lineNumberTitle"):(C=e.rowNumber)==null?void 0:C.heading:""}),h=t.computed(()=>(u.value&&!e.hierarchy?Number(f.value):0)+(s.value?Number(d.value):0));t.watch(()=>e.rowNumber,w=>{w&&w.enable!==void 0&&(s.value=w.enable),w&&w.width!==void 0&&(d.value=w.width)});function p(w){return{top:`${w.top}px`,width:`${h.value}px`,height:`${w.height||""}px`}}const m=t.computed(()=>({width:`${h.value}px`}));function g(w){return`${a}_${w.type}_r_${w.index}_${w.refreshKey||""}`}function y(w){return`${a}_${w.type}_r_${w.index}_${w.refreshKey||""}`}return{showRowNumer:s,showSidebarCheckBox:u,sidebarCellPosition:p,sidebarCornerCellStyle:m,sidebarTitle:c,sidebarWidth:h,rowKey:y,cellKey:g}}const eu={ascend:(e,n)=>e===n?0:e===!1?-1:1,decend:(e,n)=>e===n?0:e===!0?-1:1},tu={ascend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),a=new Date(new Date(n).toLocaleDateString()).valueOf();return o===a?0:o<a?-1:1},decend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),a=new Date(new Date(n).toLocaleDateString()).valueOf();return o===a?0:o<a?1:-1}},nu={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1},ou={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1};function au(e){const n=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),o=new Map([["boolean-sorter",eu],["datetime-sorter",tu],["numeric-sorter",nu],["text-sorter",ou]]);function a(r){const s=(r==null?void 0:r.dataType)||"string",u=n.get(s)||"text-sorter";return o.get(u)||(r==null?void 0:r.sorter)}function i(r){return a(r.column)}function l(r,s){const u=i(r),d=(r.status&ot.sortable)===ot.sortable&&(r.status&ot.sorted)===ot.sorted,f=(r.status&ot.ascending)===ot.ascending,c=(r.status&ot.descending)===ot.descending;if(d&&u){const h=f?u.ascend:c?u.decend:void 0;h?s.addSorter(r.field,{field:r.field,compare:h}):s.removeSorter(r.field)}else s.removeSorter(r.field)}return{getSorterByColumn:a,updateSorter:l}}function iu(e,n,o,a,i,l,r,s,u,d,f,c,h,p,m,g,y){const{calculateCellPositionInRow:v}=l,{columnContext:b,hasLeftFixedColumn:w,hasRightFixedColumn:C}=r,{gridDataStyle:x,leftFixedGridDataStyle:T,rightFixedGridDataStyle:S}=p,{renderDataRow:V}=ws(e,n,b,y,s,u,d,f,c,h,p),N=[V];function k(F,P){const B=v(F);return y.value.filter($=>$.visible!==!1).map(($,j)=>N[$.type]($,B,P,j))}function I(){return t.createVNode("div",{ref:a,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:T.value},[k(b.value.leftColumns.filter(F=>F.visible),"left")])])}function E(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:x.value},[k(b.value.primaryColumns.filter(F=>F.visible),"primary")])])}function _(){return t.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:S.value},[k(b.value.rightColumns.filter(F=>F.visible),"right")])])}function M(){const F=[];return w.value&&F.push(I()),F.push(E()),C.value&&F.push(_()),F}return{renderDataArea:M}}const en=t.defineComponent({name:"FTreeGrid",props:Co,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","unSelectItem","selectItem"],setup(e,n){var sn,cn;const a=((sn=e.rowOption)==null?void 0:sn.height)||28,i=t.ref(20),l=t.ref(e.columns),r=Me.useIdentify(e),{idField:s}=r,u=t.ref(),d=t.ref(),f=t.ref(),c=t.ref(),h=t.ref(),p=t.ref([]),m=t.ref(!1),g=t.ref(((cn=e.rowOption)==null?void 0:cn.wrapContent)||!1),y=Me.useGroupData(e,r),v=Me.useFilter(),b=Me.useHierarchy(e),{collapseField:w}=b,{showLoading:C,renderLoading:x}=Me.useLoading(e,u),T=Me.useDataView(e,new Map,v,b,r),{dataView:S}=T,V=Me.useSelection(e,T,r,p,n),N=Me.useSelectHierarchyItem(e,p,T,r,V,n),k=t.computed(()=>e.disabled),I=t.computed(()=>e.virtualized?Math.min(T.dataView.value.length,i.value):T.dataView.value.length),{containerStyleObject:E}=Me.useDataViewContainerStyle(e),_=Me.useCommandColumn(e),{applyCommands:M}=_;M(l);const F=Me.useColumn(e),P=Me.useSort(e),{applyColumnSorter:B,columnContext:$,updateColumnRenderContext:j}=F;B(T,P);const D=Me.useGroupColumn(e,$),O=Me.useRow(e,n,V,r),L=Me.useEdit(e,n,r,O,p),z=Me.useVisualDataBound(e),G=Me.useVisualDataCell(e,L,z),J=Me.useVisualDataRow(e,T,L,b,r,z,G),te=Me.useVisualData(e,l,T,I,0,J),{getVisualData:W}=te,q=Me.useCellPosition(e,$),R=Me.useSidebar(e,V),{sidebarWidth:H}=R,A=Me.useVirtualScroll(e,T,p,$,te,I,0,H),{onWheel:U,dataGridWidth:K,viewPortHeight:Q,viewPortWidth:oe,resetScroll:X,updateVisibleRowsOnLatestVisibleScope:ne}=A,ie=Me.useFitColumn(e,$,d,oe,D),{calculateColumnsSize:we}=ie,le=Me.useFilterHistory(),de=Me.useColumnFilter(d,h,T,le,A),he=Me.useDragColumn(e,n,F,T,D,y,A),ee=t.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-grid-horizontal-bordered":e.showHorizontalLines,"fv-datagrid-strip":e.showStripe})),fe=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":m.value,"fv-grid-wrap-content":g.value})),{renderDataArea:Ee}=iu(e,n,f,c,h,q,F,T,L,b,O,V,N,A,te,z,p),{renderGridHeader:He,renderGridColumnResizeOverlay:De,shouldShowHeader:ue}=Me.getColumnHeader(e,n,d,c,h,F,T,he,de,v,le,ie,D,V,R,P,A,oe,p),{renderDataGridSidebar:Pe}=Me.getSidebar(e,O,V,R,A),{renderDisableMask:ze}=Me.getDisableMask(),{renderHorizontalScrollbar:Re}=Me.getHorizontalScrollbar(e,d,A),{renderVerticalScrollbar:mt}=Me.getVerticalScrollbar(e,d,A);function xt(){var Ve,je,st;if(d.value&&d.value.clientHeight>0&&((Ve=d.value)==null?void 0:Ve.clientWidth)>0){const ct=Math.ceil(d.value.clientHeight/a);ct>i.value&&(i.value=ct,ne()),Q.value=((je=f.value)==null?void 0:je.clientHeight)||0,K.value=((st=d.value)==null?void 0:st.clientWidth)||0,we()}}t.onMounted(()=>{d.value&&(i.value=Math.max(Math.ceil(d.value.clientHeight/a),i.value),p.value=W(0,I.value+0-1),Wo.useResizeObserver(d.value,xt),we(),t.nextTick(()=>{d.value&&(K.value=d.value.clientWidth),f.value&&(oe.value=f.value.clientWidth,Q.value=f.value.clientHeight)})),C.value&&x()}),t.onUnmounted(()=>{}),t.watch(oe,()=>{d.value&&we()});function Wt(Ve){T.collapseTo(Ve),T.reOrderVisibleIndex(),X()}function Ot(Ve){T.expandTo(Ve),T.reOrderVisibleIndex(),X()}function Nt(){const Ve=V.getSelectionRow();return Ve?Ve.dataIndex-1:-1}function qt(){const Ve=Nt();T.insertNewDataItem(Ve),p.value=W(0,I.value+0-1)}function Bt(){const Ve=Nt();T.insertNewChildDataItem(Ve),p.value=W(0,I.value+0-1)}function me(Ve,je){const st=p.value.find(ft=>ft.raw[s.value]===je),ct=st?st.dataIndex-1:-1;T.insertNewChildDataItems(Ve,ct)}function Se(){const Ve=Nt(),je=N.getNextSelectableHierarchyItemId(Ve);T.removeHierarchyDataItem(Ve),p.value=W(0,I.value+0-1),je&&V.selectItemById(je)}function ke(Ve){L.onEditingRow(Ve)}function Ue(Ve){L.acceptEditingRow(Ve)}function Xe(Ve){L.cancelEditingRow(Ve)}function at(Ve){Ve&&(l.value=Ve,M(l),j(l.value),B(T,P),we())}t.watch(()=>e.columns,Ve=>{at(Ve)});function dt(Ve,je){Ve&&(T.load(Ve),T.reOrderVisibleIndex(),je!=null&&je.keepScrollPosition?A.scrollTo(A.offsetY.value):X())}function It(Ve){V.selectItemById(Ve)}function vt(Ve){const je=p.value.find(st=>st.raw[r.idField.value]===Ve);je&&O.clickRowItem(je)}function re(Ve){O.activeRowById(Ve)}function Y(Ve){V.selectItemByIds(Ve)}function ae(){return V.getSelectedItems()}function pe(){V.clearSelection()}const Ce=t.computed(()=>!p.value||!p.value.length),{renderEmpty:_e}=Me.getEmpty(n);function Oe(){return V.getSelectionRow()}function Be(Ve){V.unSelectItemByIds(Ve)}function Ae(){return V.currentSelectedDataId.value}function Le(Ve,je,st){const ct=S.value.find(ft=>ft[s.value]===Ve);if(ct){if(Object.keys(ct).forEach(tt=>{Object.prototype.hasOwnProperty.call(je,tt)&&(ct[tt]=je[tt])}),st){const{collapseField:tt,disabledField:Ut,checkedField:Gt,visibleField:Yt}=st;tt&&!Fe.isUndefined(je[tt])&&(ct.__fv_collapse__=je[tt]),Gt&&!Fe.isUndefined(je[Gt])&&(ct.__fv_checked__=je[Gt]),Ut&&!Fe.isUndefined(je[Ut])&&(ct.__fv_disabled__=je[Ut]),Yt&&!Fe.isUndefined(je[Yt])&&(ct.__fv_visible__=je[Yt])}const ft=p.value.find(tt=>tt.raw[s.value]===Ve),nl=p.value.findIndex(tt=>tt.raw[s.value]===Ve);if(ft){if(ft.raw=ct,Object.keys(ft.data).forEach(tt=>{ft.data[tt].updateData(ct)}),st){const{collapseField:tt,disabledField:Ut,checkedField:Gt,visibleField:Yt}=st;tt&&!Fe.isUndefined(je[tt])&&(ft.collapse=je[tt]),Gt&&!Fe.isUndefined(je[Gt])&&(ft.checked=je[Gt]),Ut&&!Fe.isUndefined(je[Ut])&&(ft.disabled=je[Ut]),Yt&&!Fe.isUndefined(je[Yt])&&(ft.visible=je[Yt])}p.value=[...p.value.slice(0,nl),ft,...p.value.slice(nl+1)]}}}function We(Ve){return Object.prototype.hasOwnProperty.call(Ve,"raw")?T.hasRealChildren(Ve.raw):T.hasRealChildren(Ve)}function $e(Ve){const je=T.dataView.value.find(st=>st[s.value]===Ve);return je?je[w.value]:""}function Je(){return w.value}n.expose({activeRowById:re,addNewDataItem:qt,addNewChildDataItem:Bt,addChildrenToNode:me,collapseTo:Wt,expandTo:Ot,removeDataItem:Se,editDataItem:ke,acceptDataItem:Ue,cancelDataItem:Xe,updateColumns:at,updateDataSource:dt,selectItemById:It,selectItemByIds:Y,getSelectedItems:ae,clearSelection:pe,getSelectionRow:Oe,clickRowItemById:vt,unSelectItemByIds:Be,getCurrentRowId:Ae,reassignRowData:Le,hasChildren:We,getCollapseField:Je,getCollapseStatusById:$e});const it=t.computed(()=>{const Ve={};return A.shouldShowHorizontalScrollbar.value&&(Ve.paddingBottom="10px"),A.shouldShowVirticalScrollbar.value&&(Ve.paddingRight="10px"),Ve}),nt=t.computed(()=>({...E.value,borderRadius:"5px"}));return()=>t.createVNode("div",{ref:u,class:ee.value,style:nt.value,onWheel:U},[d.value&&ue.value&&He(),t.createVNode("div",{ref:d,class:fe.value,onMouseover:()=>m.value=!0,onMouseleave:()=>m.value=!1,style:it.value},[d.value&&Pe(p),d.value&&Ee(),d.value&&Ce.value&&_e(),d.value&&Re(),d.value&&mt()]),De(),k.value&&ze()])}}),ru={id:{type:String,default:""},componentId:{type:String,default:""},type:{type:String,default:""},canDelete:{type:Boolean,default:!0},canMove:{type:Boolean,default:!0},canSelectParent:{type:Boolean,default:!0},customButtons:{type:Array,default:[]},customClass:{type:String,default:""},customStyle:{type:String,default:""},modelValue:{type:Object},ignore:{type:Boolean,default:!1}},lu={id:{type:String}},su=t.defineComponent({name:"FDesignerPlaceholder",props:lu,emits:[],setup(e){const n=t.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=t.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>t.createVNode("div",{class:n.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[t.createTextVNode("拖拽组件到这里")])}});function cu(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const vn=t.defineComponent({name:"FDesignerItem",props:ru,emits:["selectionChange","dragEnd"],setup(e,n){const o=t.ref(`${e.modelValue.id}-component`),a=t.ref(e.canMove),i=t.ref(e.canDelete),l=t.ref(!1),r=t.ref(e.modelValue),s=t.ref(e.componentId||""),u=t.ref(""),d=t.ref(""),f=t.ref(e.customClass),c=t.ref(),h=t.inject("canvas-dragula"),p=t.ref(),m=t.inject("design-item-context");function g(D){D&&Object.assign(r.value,D)}const y={designerItemElementRef:c,componentInstance:p,schema:r.value,parent:m,setupContext:n,updateContextSchema:g};t.provide("design-item-context",y);const v=t.inject("useFormSchema"),b=t.inject("designer-host-service"),w=t.inject("external-container-id"),C=t.computed(()=>{var z;const D=e.modelValue.appearance&&e.modelValue.appearance.class||"",O=((z=p.value)==null?void 0:z.getCustomButtons)&&p.value.getCustomButtons();let L={"farris-component":!0,"flex-fill":r.value.id==="root-component","position-relative":a.value&&i.value||(O==null?void 0:O.length),"farris-nested":l.value,"can-move":a.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return L[`farris-component-${r.value.type}`]=!0,L=Ie.getCustomClass(L,D),L=Ie.getCustomClass(L,d.value),L=Ie.getCustomClass(L,f.value),L}),x=t.computed(()=>{const D={},O=e.modelValue.appearance&&e.modelValue.appearance.style||"";return O&&O.split(";").reduce((L,z)=>{const[G,J]=z.split(":");return L[G]=J,L},D),u.value&&u.value.split(";").reduce((L,z)=>{const[G,J]=z.split(":");return G&&(L[G]=J),L},D),D});function T(D,O){var G,J,te;if(D&&(D.preventDefault(),D.stopPropagation()),(G=b==null?void 0:b.designerContext)!=null&&G.checkCanDeleteControl&&!b.designerContext.checkCanDeleteControl(O))return;if(p.value.triggerBelongedComponentToDeleteWhenDeleted){const W=p.value.getBelongedComponentInstance(p);if(W&&W.parent){const q=t.ref(W==null?void 0:W.parent),R=q.value.contents.findIndex(H=>H.id===W.schema.id);(te=(J=q.value)==null?void 0:J.contents)==null||te.splice(R,1),lt.value++}return}p.value.onRemoveComponent(b);let L=m,z=W=>W.id===O.id;if(O.type==="component"&&(L=m==null?void 0:m.parent,z=W=>W.component===O.id),L&&L.schema.contents){const W=L.schema.contents.findIndex(z);L.schema.contents.splice(W,1),lt.value++,n.emit("selectionChange")}}function S(D){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:O=>{T(O,D)}},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function V(){return a.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function N(){var O;const D=((O=p.value)==null?void 0:O.getCustomButtons)&&p.value.getCustomButtons();return D&&!!D.length&&D.map(L=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${L.class||""}`,title:L.title,ref:L.id,onClick:z=>L.onClick&&L.onClick(z)},[t.createVNode("i",{class:L.icon},null)]))}function k(D){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[S(D),V(),N()])])}function I(D,O,L,z){n.emit("selectionChange",D,O,L,z)}function E(){n.emit("dragEnd")}function _(D){let O;const L=D.type,z=xe[L],G=Te[L],J=G?G(D):{};J.customClass=e.ignore?J.customClass:"",J.componentId=s.value,J.id=D.id;const te=D.contents&&D.contents.length===0;return D.contents&&!!D.contents.length&&z?t.createVNode(z,t.mergeProps({ref:p},J),cu(O=D.contents.map(q=>t.createVNode(vn,{key:q.id,modelValue:q,"onUpdate:modelValue":R=>q=R,componentId:s.value,onSelectionChange:I,onDragEnd:E},null)))?O:{default:()=>[O]}):z?te?t.createVNode(z,t.mergeProps({ref:p},J),{default:()=>[t.createVNode(su,null,null)]}):t.createVNode(z,t.mergeProps({ref:p},J),null):t.createVNode("div",null,null)}function M(){const D=v.externalFormSchema.get(w);if(D!=null&&D.content)return D==null?void 0:D.content}function F(D){if(D.type==="component-ref"){const z=(w?M():v==null?void 0:v.getFormSchema()).module.components.find(J=>J.id===D.component),G=t.ref(z);if(z)return t.createVNode(vn,{key:z.id,modelValue:G.value,"onUpdate:modelValue":J=>G.value=J,componentId:z.id,onSelectionChange:I,onDragEnd:E},null)}}t.watch([()=>e.modelValue,()=>e.componentId],([D,O])=>{r.value=D,o.value=`${D.id}-component`,O&&(s.value=O),t.triggerRef(c)},{deep:!0});function P(D){window.scrollContainerList||(window.scrollContainerList=new Set);const O=D.getAttribute("id");O&&window.scrollContainerList.add(O)}function B(D){const O=D==null?void 0:D.target;P(O),mn(O)}function $(){var D,O;if(c.value){(O=(D=r.value)==null?void 0:D.contents)!=null&&O.length&&c.value.addEventListener("scroll",B);const L=c.value.querySelector(".drag-container");L&&L.addEventListener("scroll",B)}}t.onMounted(()=>{if(c.value&&p.value&&p.value.schema){const D=c.value.querySelector(`[data-dragref='${p.value.schema.id}-container']`);h&&D&&h.attachComponents(D,r.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,i.value=p.value.canDelete!==void 0?p.value.canDelete:i.value,a.value=p.value.canMove!==void 0?p.value.canMove:a.value,u.value=p.value.styles||"",d.value=p.value.designerClass||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=y),p.value.belongedComponentId=s.value,p.value.setComponentBasicInfoMap(b)}$(),lt.value++}),t.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",B)});function j(D){D&&(D.preventDefault(),D.stopPropagation());let O=y.designerItemElementRef;const L=c.value;if(L){const z=document.getElementsByClassName("dgComponentFocused");z&&z.length===1&&z[0]===c.value||(Array.from(z).forEach(J=>J.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(J=>J.classList.remove("dgComponentSelected")),L.classList.add("dgComponentFocused"),n.emit("selectionChange",r.value.type,r.value,s.value,p.value),p.value.getDraggableDesignItemElement&&(O=p.value.getDraggableDesignItemElement(y),O&&O.value&&O.value.classList.add("dgComponentSelected")))}Fn(O==null?void 0:O.value)}return()=>{const D=w?`${w}-`:"";return r.value.type==="component-ref"?F(r.value):t.createVNode("div",{id:`${D}${r.value.id}-design-item`,ref:c,class:C.value,style:x.value,onClick:j},[k(r.value),_(r.value)])}}});function uu(e,n,o,a,i="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:r,hasRightFixedColumn:s}=o,{gridHeaderColumnsStyle:u,leftFixedGridHeaderColumnsStyle:d,rightFixedGridHeaderColumnsStyle:f}=a,c=l.value.defaultColumnWidth,h=32,p=new Map([[0,0]]);function m(k,I){const E=p.get(I)||0,_={height:`${k.depth*h}px`,left:`${k.left}px`,top:`${(k.layer-1)*h}px`,width:`${k.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(_["line-height"]=`${k.depth*h}px`),p.set(I+1,E+(k.actualWidth||c)),_}const g=t.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),y=t.computed(()=>({height:`${l.value.headerDepth*h}px`})),v=function(k){return n.showSetting&&!!k.showSetting};function b(){return t.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[t.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function w(k,I,E,_){var M;(M=e==null?void 0:e.setupContext)==null||M.emit("selectionChange",k,I,E,_)}function C(k){var E,_;return"w-100 d-flex align-items-center justify-content-"+(((E=k.column)==null?void 0:E.halign)==="center"?"center":((_=k.column)==null?void 0:_.halign)==="right"?"end pr-2":"start pl-2")}function x(k,I,E){var M;const _=t.ref(k.column);return t.createVNode("div",{class:"fv-grid-header-cell",style:m(k,E)},[t.createVNode(vn,{modelValue:_.value,"onUpdate:modelValue":F=>_.value=F,customClass:C(k),canAdd:!1,canDelete:!1,canMove:!1,key:(M=_.value)==null?void 0:M.id,type:i,componentId:n.componentId,onSelectionChange:w},null),v(k)&&b(),k.resizable&&t.createVNode("span",{class:"fv-column-resize-bar"},null)])}function T(k){return k.map((I,E)=>{const _=[];if(_.push(x(I,k,E)),I.children&&I.children.length){const M=T(I.children);_.push(...M)}return _})}function S(){return t.createVNode("div",{class:"fv-grid-header-left-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:d.value},[T(l.value.leftHeaderColumns)])])}function V(){return t.createVNode("div",{class:"fv-grid-header-right-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[T(l.value.rightHeaderColumns)])])}function N(){return t.createVNode("div",{class:g.value,style:y.value},[r.value&&S(),t.createVNode("div",{class:"fv-grid-header-primary"},[t.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[T(l.value.primaryHeaderColumns)])]),s.value&&V()])}return{renderGridHeader:N}}class du extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getEventPropConfig(n),this.propertyConfig}getBasicPropConfig(n){var r,s,u;const o=(u=(s=(r=this.formSchemaUtils.getFormSchema())==null?void 0:r.module)==null?void 0:s.entity[0])==null?void 0:u.entities[0],a=this.assembleSchemaEntityToTree(o,0),i=this,l=super.getBasicPropConfig(n);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...l.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:a,editable:!1},readonly:!0}},setPropertyRelates(d,f){switch(d&&d.propertyID){case"dataSource":{const c=i.formSchemaUtils.getViewModelById(i.viewModelId);if(c){const h=a.find(p=>p.label===d.propertyValue);c.bindTo=h.bindTo}i.designViewModelUtils.assembleDesignViewModel();break}}}}}getAppearanceProperties(n){var o,a;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:n,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸",visible:!1},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(i,l){switch(i&&i.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"fields":n.fields=i.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",parentPropertyID:"pagination",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0,editor:{readonly:!0}},showIndex:{visible:((o=n.pagination)==null?void 0:o.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=n.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"onSelectionChange",name:"行切换事件"},{label:"onClickRow",name:"行点击事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),l=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=r.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u)),n.remoteSort=!!n.columnSorted}}}assembleSchemaEntityToTree(n,o,a,i="",l=[]){const r=i?`${i}/${n.label}`:"/";return l.push({id:n.id,name:n.name,label:n.label,layer:o,parent:a&&a.id,bindTo:r.replace("//","/")}),n.type.entities&&n.type.entities.length&&n.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,n,r,l)),l}}function fu(e,n){const o=e.schema,a=t.ref(!0),i=t.ref(!0);function l(c){return c&&c.sourceType==="control"?c.componentCategory==="input":!1}function r(){return!1}function s(){return!1}function u(){return!0}function d(c){return new du(c,n).getPropertyConfig(o)}function f(){var c,h,p,m;if(e&&n){const g=(c=e==null?void 0:e.componentInstance)==null?void 0:c.value.belongedComponentId;let y="",v="";const{formSchemaUtils:b}=n;if(g){const C=b.getRootViewModelId(),x=b.getComponentByViewModelId(C),T=b.selectNode(x,S=>S.contents&&S.contents.find(V=>V.component===g));(T==null?void 0:T.type)===((h=ce["tab-page"])==null?void 0:h.type)&&((p=T==null?void 0:T.contents)!=null&&p.length)&&(y=T.title||""),(T==null?void 0:T.type)===((m=ce.section)==null?void 0:m.type)&&(T==null?void 0:T.showHeader)!==!1&&(y=T.mainTitle||""),y=y?`${y} > `:"",v=y?T.id:""}const w=ce["tree-grid"].name;n==null||n.formSchemaUtils.getControlBasicInfoMap().set(e.schema.id,{componentTitle:w,parentPathName:`${y}${w}`,reliedComponentId:v})}}return{canAccepts:l,checkCanDeleteComponent:r,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:a,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:d,setComponentBasicInfoMap:f}}function pu(e,n,o,a,i){const{getGridHeaderCells:l}=i,r=120,s=50,u=t.computed(()=>{var S;return((S=e.rowNumber)==null?void 0:S.enable)||!1}),d=t.computed(()=>{var S,V;return((S=e.selection)==null?void 0:S.multiSelect)||((V=e.selection)==null?void 0:V.showCheckbox)||!1}),f=t.computed(()=>{var S;return 0+(u.value?((S=e.rowNumber)==null?void 0:S.width)||32:0)+(d.value?s:0)}),c=t.computed(()=>{var S;return(S=e.columnOption)==null?void 0:S.fitColumns}),h=t.computed(()=>{var S;return c.value&&((S=e.columnOption)==null?void 0:S.fitMode)||"none"});function p(S,V,N){const k=parseInt(S.width,10)/100;return N*k}function m(S,V,N){return typeof S.width=="string"?p(S,V,N):S.width||r}function g(S,V){const N=[],k=[];let I=0;S.value.primaryColumns.forEach(M=>{typeof M.width=="string"?k.push(M):(M.width=M.width||r,I+=M.width,N.push(M))});const E=V*(N.length/S.value.primaryColumns.length);N.forEach(M=>{const F=E*(M.width/I);M.actualWidth=F,S.value.primaryColumnsWidth+=M.actualWidth});const _=V-E;k.forEach(M=>{const F=p(M,S.value,_);M.actualWidth=F,S.value.primaryColumnsWidth+=M.actualWidth})}function y(S,V){const N=[],k=[],I=new WeakMap;let E=0,_=0;if(S.value.primaryColumns.forEach(F=>{if(typeof F.width=="string"){const P=p(F,S.value,V);I.set(F,P),E+=P,k.push(F)}else F.width=F.width||r,_+=F.width,N.push(F)}),V-E>_){const F=V-E;k.forEach(P=>{P.actualWidth=I.get(P)||r,S.value.primaryColumnsWidth+=P.actualWidth}),N.forEach(P=>{P.actualWidth=F*(P.width/_),S.value.primaryColumnsWidth+=P.actualWidth})}else g(S,V)}function v(S,V){S.value.primaryColumns.forEach(N=>{N.actualWidth=m(N,S.value,V),S.value.primaryColumnsWidth+=N.actualWidth})}const b={expand:y,none:v,percentage:g};function w(S){S.value.leftHeaderColumns=Array.from(l(S.value.leftColumns).values()),S.value.primaryHeaderColumns=Array.from(l(S.value.primaryColumns).values()),S.value.rightHeaderColumns=Array.from(l(S.value.rightColumns).values())}function C(S){S.value.leftColumnsWidth=0,S.value.primaryColumnsWidth=0,S.value.rightColumnsWidth=0,S.value.leftColumns.forEach(V=>{S.value.leftColumnsWidth+=V.actualWidth||0}),S.value.primaryColumns.forEach(V=>{S.value.primaryColumnsWidth+=V.actualWidth||0}),S.value.rightColumns.forEach(V=>{S.value.rightColumnsWidth+=V.actualWidth||0}),S.value=Object.assign({},S.value)}function x(S,V,N){var P;let k=0;const I=S.value.primaryColumns,E=S.value.rightColumns;S.value.rightColumns.forEach(B=>{B.actualWidth=m(B,S.value,V),k+=B.actualWidth});const _=N-k,M=b[h.value];if(M&&M(S,_),S.value.primaryColumnsWidth+k<=N)return S.value.primaryColumns=[...I,...E],S.value.primaryColumnsWidth+=k,S.value.rightColumns=[],S.value.rightColumnsWidth=0,!0;const F=new Map;return F.set("primary",[]),F.set("right",[]),S.value.primaryColumns.reduce((B,$)=>{var j,D;return $.fixed==="right"?(j=B.get("right"))==null||j.push($):(D=B.get("primary"))==null||D.push($),B},F),(P=F.get("right"))!=null&&P.length&&(S.value.primaryColumns=[...F.get("primary")||[]],S.value.rightColumns=[...F.get("right")||[]]),S.value.primaryColumnsWidth=0,S.value.rightColumnsWidth=0,!1}function T(){if(o.value){n.value.leftColumnsWidth=0,n.value.primaryColumnsWidth=0,n.value.rightColumnsWidth=0;const S=o.value.clientWidth-f.value;n.value.leftColumns.forEach(N=>{N.actualWidth=m(N,n.value,S),n.value.leftColumnsWidth+=N.actualWidth});const V=S-n.value.leftColumnsWidth;if(x(n,S,V))a.value=V;else{n.value.rightColumns.forEach(I=>{I.actualWidth=m(I,n.value,S),n.value.rightColumnsWidth+=I.actualWidth});const N=S-n.value.leftColumnsWidth-n.value.rightColumnsWidth,k=b[h.value];k&&k(n,N),a.value=N}w(n),n.value=Object.assign({},n.value)}}return t.watch(()=>{var S;return(S=e.columnOption)==null?void 0:S.fitColumns},(S,V)=>{S!==V&&S&&T()}),t.watch(h,(S,V)=>{S!==V&&c.value&&T()}),{calculateColumnHeaders:w,calculateColumnsSize:T,calculateColumnsWidth:C}}const mu="";function hu(e){const o={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},a=t.ref(o);function i(){a.value={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]}}const l=t.ref(e.summary),r=t.computed(()=>{const w=l.value;return(w==null?void 0:w.groupFields)||[]});function s(){a.value.rightColumns.forEach(x=>{x.showSetting=!1}),a.value.primaryColumns.forEach(x=>{x.showSetting=!1});const w=a.value.rightColumns,C=a.value.primaryColumns;w.length>0?w[w.length-1].showSetting=!0:C.length>0&&(C[C.length-1].showSetting=!0)}function u(w){i();const C=new Map;return r.value&&r.value.reduce((x,T)=>(x.set(T,!0),x),C),w.reduce((x,T)=>(T.filter=T.filter||mu,T.fixed==="left"?(a.value.leftColumns.push(T),a.value.leftColumnsMap.set(T.field,T),a.value.leftColumnsWidth+=T.actualWidth):T.fixed==="right"?(a.value.rightColumns.push(T),a.value.rightColumnsMap.set(T.field,T),a.value.rightColumnsWidth+=T.actualWidth):(a.value.primaryColumns.push(T),a.value.primaryColumnsMap.set(T.field,T),a.value.primaryColumnsWidth+=T.actualWidth),C.has(T.field)&&a.value.summaryColumns.push(T),x),a),s(),a}u(e.columns);const d=t.computed(()=>a.value.leftColumns.length>0),f=t.computed(()=>a.value.rightColumns.length>0);function c(w,C){return C.sortable&&C.sort&&C.sort!=="none"&&w.push(C),w}function h(w,C){return w.sortOrder=w.sortOrder||0,C.sortOrder=C.sortOrder||0,w.sortOrder===C.sortOrder?0:w.sortOrder<C.sortOrder?-1:1}function p(w,C){return w.sortOrder=w.sortOrder||0,C.sortOrder=C.sortOrder||0,w.sortOrder===C.sortOrder?0:w.sortOrder<C.sortOrder?1:-1}function m(w,C){return C.filterable&&w.push(C),w}function g(){const w=[];return a.value.leftColumns.reduce(m,w),a.value.primaryColumns.reduce(m,w),a.value.rightColumns.reduce(m,w),w}function y(){const w=[];a.value.leftColumns.reduce(c,w),a.value.primaryColumns.reduce(c,w),a.value.rightColumns.reduce(c,w);const C=Math.max(...w.map(x=>x.sortOrder||0));return w.sort(p).map(x=>{const T=x.sortOrder||C+1;return x.sortOrder=T,x}).sort(h).map((x,T)=>{const S=T+1;return x.sortOrder=S,x})}function v(w,C,x){const T=w.map(S=>{const V=x.getSorterByColumn(S),N=S.sort==="asc",k=S.sort==="desc",I=N?V.ascend:k?V.decend:void 0;return{field:S.field,compare:I}});C.setSorters(T)}function b(w,C){const x=y();v(x,w,C)}return{applyColumnSorter:b,collectionFilterableColumns:g,applySortableColumns:v,collectionSortableColumns:y,columnContext:a,hasLeftFixedColumn:d,hasRightFixedColumn:f,updateColumnRenderContext:u,updateColumnSettingIcon:s}}function gu(e,n,o,a,i,l,r,s){const u=t.ref(a.value-1+i),d=t.ref(0),{renderDataRow:f}=l,c=f,h=f;function p(y){let v=f;return y.__fv_data_grid_group_row__&&(v=c),y.__fv_data_grid_group_summary__&&(v=h),v}function m(y,v,b,w){const{dataView:C}=o,x=[];if(C.value.length>0){const T=w?Date.now().toString():"";let S=y,V=0;const N=v-y+1;for(;x.length<N&&S<C.value.length;){const k=C.value[S],I=C.value[S-1]||b,E=x[V-1],_=I?(I.__fv_data_position__||0)+(I.__fv_data_height__||0):0,F=p(k)(k,I,E,S,_,n.value,x);F.refreshKey=T,x.push(F),V++,S++}}return d.value=x.length>0?x[0].index:0,u.value=x.length>0?x[x.length-1].index:0,x}function g(y,v,b){const w=v.groupField||"",{groupValue:C}=v;o[y](w,C);const{dataView:x}=o,T=b[0].index,S=Math.min(T+a.value+i+1,x.value.length-1);return m(T,S)}return{getVisualData:m,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:g}}const yu=t.defineComponent({name:"FTreeGridDesign",props:ni,emits:[],setup(e,n){var ie,we;const o=t.ref(),a=0,i=((ie=e.rowOption)==null?void 0:ie.height)||28,l=t.ref(20),r=t.ref(e.columns),s=ji(e),u=t.ref(),d=t.ref(),f=t.ref([]),c=t.ref(!1),h=t.ref(((we=e.rowOption)==null?void 0:we.wrapContent)||!1),p=t.inject("designer-host-service"),m=t.inject("design-item-context"),g=fu(m,p),y=Pt(o,m,g);y.value.designerClass="f-utils-fill-flex-column";const v=Ei(),b=Mi(e),w=ii(e,new Map,v,b,s),C=Li(e,w,s,f,n),x=t.computed(()=>w.dataView.value.length),{containerStyleObject:T}=Ts(e),S=Vs(e),{applyCommands:V}=S;V(r);const N=hu(e),{applyColumnSorter:k,columnContext:I,updateColumnRenderContext:E}=N,_=au(),M=Ns(e,I),F=$i(e,n,C,s),P=Di(e,n,s,F),B=_i(e),$=Oi(e,P,B),j=Bi(e,w,P,b,s,B,$),D=gu(e,r,w,x,a,j),{getVisualData:O}=D,L=Zc(e,C),{sidebarWidth:z}=L;f.value=O(0,x.value+a-1);const G=zc(e,w,f,I,D,x,a,z),{onWheel:J,dataGridWidth:te,viewPortHeight:W,viewPortWidth:q,updateVisibleRowsOnLatestVisibleScope:R}=G,H=pu(e,I,u,q,M),{calculateColumnsSize:A}=H,U=t.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),K=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":c.value,"fv-grid-wrap-content":h.value})),{renderGridHeader:Q}=uu(m,e,N,G,"tree-grid-column"),{renderHorizontalScrollbar:oe}=Ss(e,u,G);function X(){var de,he;const le=Math.ceil(u.value.clientHeight/i);le>l.value&&(l.value=le,R()),W.value=((de=d.value)==null?void 0:de.clientHeight)||0,te.value=((he=u.value)==null?void 0:he.clientWidth)||0,A()}t.onMounted(()=>{o.value.componentInstance=y,u.value&&(l.value=Math.max(Math.ceil(u.value.clientHeight/i),l.value),f.value=O(0,x.value+a-1),Wo.useResizeObserver(u.value,X),A(),t.nextTick(()=>{u.value&&(te.value=u.value.clientWidth),d.value&&(q.value=d.value.clientWidth,W.value=d.value.clientHeight)}))});function ne(le){le&&(r.value=le,V(r),E(r.value),k(w,_),A())}return t.watch(()=>e.columns,le=>{ne(le)}),t.watch(q,()=>{u.value&&A()}),n.expose(y.value),()=>t.createVNode("div",{ref:o,class:U.value,style:T.value,onWheel:J,dragref:`${m.schema.id}-container`},[u.value&&Q(),t.createVNode("div",{ref:u,class:K.value,onMouseover:()=>{c.value=!0},onMouseleave:()=>{c.value=!1}},[oe()])])}});en.register=(e,n,o,a)=>{e["tree-grid"]=en,n["tree-grid"]=ds,a["tree-grid"]={bindingResolver:ps,selectionItemResolver:fs,updateColumnsResolver:hs}},en.registerDesigner=(e,n,o)=>{e["tree-grid"]=yu,n["tree-grid"]=ms},Ie.withInstall(en);function Ri(e){const{designerHostService:n}=e,o=new Map,a=t.ref(),i=t.ref(),l=t.ref([{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"displayedTypeName",title:"字段类型"}]),r={enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!0},s=t.ref(!1),u=t.ref(e.componentType);function d(g){const y=[];return g.forEach(v=>{let b=[];v.type&&v.type.fields&&v.type.fields.length>0&&(b=d(v.type.fields));const w=Fe.cloneDeep(v),C=v.multiLanguage?"多语言":v.type.displayName,x=b.length?!1:!o.has(v.id);x&&(s.value=!0),y.push({data:Object.assign({displayedTypeName:C,selectable:x},w),children:b})}),y}function f(g){switch(g){case"data-grid":case"tree-grid":return"data-grid";case"response-form":return"form";default:return g}}function c(g){if(o.clear(),!g)return;let y=f(u.value);["frame","table","form"].includes(y)&&(y="form");const{formSchemaUtils:v,schemaService:b}=n;v.getFormSchema().module.viewmodels.forEach(w=>{if(!w.fields||w.fields.length===0)return;let x=v.getComponentByViewModelId(w.id).componentType;["frame","table","form"].includes(x)&&(x="form");const T=b.getTableInfoByViewModelId(w.id);x!==y||!T||T.id!==g.id||w.fields.forEach(S=>{o.set(S.id,!0)})})}function h(g){c(g);const{fields:y}=g.type;s.value=!1,a.value=d(y),i.value&&i.value.updateDataSource(a.value)}const p={customRowStatus:g=>(g.disabled=!g.raw.selectable,g)};function m(){const g=i.value.getSelectedItems();if(!g.length){const y=new Zt;y.globalConfig={position:"top-center"},y.warning({message:"请先选择显示字段"});return}return g.map(y=>y.data)}return{fieldTreeGridRef:i,resolveFieldDataSource:h,occupiedFieldMap:o,fieldDataSource:a,fieldTreeRowOption:p,fieldColumns:l,fieldSelectionOption:r,checkAndGetSelectedFields:m,hasSelectableField:s,currentComponentType:u}}function vu(e){const{designerHostService:n}=e,o=new Map,a=t.ref(),i=t.ref(),l=t.ref([{field:"name",title:"实体名称"}]),r=t.ref(),s=t.ref(!1);function u(m){const g=Ri(e);return g.resolveFieldDataSource(m),g.hasSelectableField.value?(r.value=r.value||m,!0):!1}function d(m){return!(e.bindingEntityId&&e.bindingEntityId!==m.id||!u(m))}function f(m,g=""){var C;if(!m)return;const y=Fe.cloneDeep(m),v=g?`${g}/${y.label}`:"/";o.set(y.label,v.replace("//","/"));const b=d(y),w={data:Object.assign({selectable:b},y),children:[]};if(y.type.entities&&y.type.entities.length){const x=y.type.entities.map(T=>f(T,v));w.children=w.children.concat(x)}return e.bindingEntityId===m.id&&(r.value=m),((C=r.value)==null?void 0:C.id)===m.id&&!g&&(s.value=!0),w}function c(){var v;const{formSchemaUtils:m}=n,g=(v=m.getFormSchema().module.entity[0])==null?void 0:v.entities[0];o.clear();const y=f(g);i.value=[y]}function h(){const m=a.value.getSelectedItems();if(!m.length){const g=new Zt;g.globalConfig={position:"top-center"},g.warning({message:"请先选择实体"});return}return m[0].data}return{entityTreeGridRef:a,entityDataSource:i,resolveEntityDataSource:c,entityBindToMap:o,checkAndGetSelectedEntity:h,entityColumns:l,entityTreeRowOption:{customRowStatus:m=>(m.disabled=!m.raw.selectable,m)},initialSelectedEntity:r,isMainEntityInitialSelected:s}}const bu=new Map([["appearance",ht]]);function Cu(e,n,o){return n}const wu={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Su={title:"step",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Ai={direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}};Ye(Ai,wu,bu,Cu,Su);const xu=t.defineComponent({name:"FStep",props:Ai,emits:["click"],setup(e,n){const o=t.ref(e.direction),a=t.ref(e.fill),i=t.ref(e.height),l=t.ref(e.steps),r=t.ref(e.activeIndex),s=t.computed(()=>({"f-progress-step-list":o.value==="horizontal","f-progress-step-list-block":o.value==="vertical","f-progress-step-horizontal-fill":o.value==="horizontal"&&a.value,"f-progress-step-vertical-fill":o.value==="vertical"&&a.value})),u=t.computed(()=>({height:o.value==="vertical"?`${i.value}px`:""}));function d(C,x){const T={step:!0,active:x===r.value,clickable:e.clickable,current:x===r.value,finish:x<r.value};return C.status&&(T[C.status]=!0),Ie.getCustomClass(T,C.class||"")}function f(C,x){if(!e.clickable)return;const T={step:C,stepIndex:x};n.emit("click",T)}function c(C,x){const T={"f-progressstep-row":!0,"step-active":x===r.value,"step-current":x===r.value,"step-finish":x<r.value};return C.status&&(T["step-"+C.status]=!0),T}function h(C,x){const T={"step-icon":!0,"step-success":x,"f-icon":x,"f-icon-check":x};return Ie.getCustomClass(T,C.icon||"")}function p(C,x){const T=[];return C.icon?T.push(t.createVNode("span",{class:h(C,!1)},null)):x>=r.value?T.push(t.createVNode("span",{class:"step-icon"},[x+1])):T.push(t.createVNode("span",{class:h(C,!0)},null)),T}function m(C,x){return{"step-name":!0,"step-name-success":x<r.value}}function g(C,x){return t.createVNode("div",{class:"f-progress-step-title"},[t.createVNode("p",{class:m(C,x)},[C.title])])}function y(C,x){return{"f-progress-step-line":!0,"f-progress-step-line-success":x===r.value}}function v(C,x){return x!==l.value.length-1}const b=t.computed(()=>({triangle:!0,"":o.value==="vertical"}));function w(){return l.value.map((C,x)=>t.createVNode("li",{class:d(C,x),onClick:T=>f(C,x)},[t.createVNode("div",{class:c(C,x)},[t.createVNode("div",{class:"f-progress-step-content"},[p(C,x),g(C,x)]),v(C,x)&&t.createVNode("div",{class:y(C,x)},[t.createVNode("span",{class:b.value},null)])])]))}return t.watch(()=>e.activeIndex,()=>{e.activeIndex>-1&&e.activeIndex<=l.value.length&&(r.value=e.activeIndex,w())}),()=>t.createVNode("div",{class:"f-progress-step"},[t.createVNode("ul",{class:s.value,style:u.value},[w()])])}}),Tu=t.defineComponent({name:"FEntityBindingSelector",props:kl,emits:["submit","cancel"],setup(e,n){const o=vu(e),{entityColumns:a,entityTreeGridRef:i,entityDataSource:l,checkAndGetSelectedEntity:r,resolveEntityDataSource:s,entityTreeRowOption:u,initialSelectedEntity:d,isMainEntityInitialSelected:f}=o,c=Ri(e),{fieldColumns:h,resolveFieldDataSource:p,fieldDataSource:m,fieldTreeGridRef:g,fieldTreeRowOption:y,fieldSelectionOption:v,checkAndGetSelectedFields:b,currentComponentType:w}=c,C=new Zt;C.globalConfig={position:"top-center"};const x=[{name:"卡片面板",value:"response-form"},{name:"表格",value:"data-grid"}],T=t.ref(),S=t.ref(""),V=t.ref([{id:"selectComponentType",title:"选择组件类型"},{id:"selectEntity",title:"选择实体"},{id:"selectFields",title:"选择显示字段"}]),N=t.ref(0),k=t.ref(""),I=t.computed(()=>L=>({"f-utils-fill":!0,border:L!=="selectComponentType","mx-3":!0,"my-2":!0,"position-relative":!0,"d-none":V.value[N.value].id!==L}));function E(){e.bindingEntityId&&(d!=null&&d.value)&&(S.value=d.value.name),e.componentType||(T.value=f.value?"response-form":"data-grid")}function _(){const L=r();L&&(p(L),g.value.updateDataSource(m.value))}t.onBeforeMount(()=>{e.steps&&(V.value=V.value.filter(L=>e.steps.includes(L.id))),k.value=V.value[0].id,s(),E()}),t.onMounted(()=>{var L,z;i&&((L=d.value)!=null&&L.id)&&i.value.selectItemById((z=d.value)==null?void 0:z.id),V.value.length===1&&V.value[0].id==="selectFields"&&_()});function M(L){var z;(z=g==null?void 0:g.value)!=null&&z.clearSelection&&g.value.clearSelection()}function F(){return t.createVNode(en,{key:1,ref:i,fit:!0,data:l.value,idField:"id",columns:a.value,rowNumber:{enable:!1},"row-option":u,columnOption:{fitColumns:!0}},null)}function P(){return t.createVNode(en,{key:2,ref:g,hierarchy:{cascadeOption:{autoCheckChildren:!0,autoCheckParent:!0}},fit:!0,data:m.value,idField:"id",columns:h.value,rowNumber:{enable:!1},columnOption:{fitColumns:!0},"row-option":y,selection:v},null)}function B(){const L={editable:!1,type:"combo-list",data:x,idField:"value",valueField:"value",textField:"name"},z={type:"input-group",enableClear:!1};return t.createVNode("div",null,[t.createVNode("div",{class:"f-utils-fill"},[t.createVNode("div",{class:"f-section py-0"},[t.createVNode("div",{class:"f-section-header"},[t.createVNode("div",{class:"f-title"},[t.createVNode("h4",{class:"f-title-text"},[t.createTextVNode("组件信息")])])]),t.createVNode("div",{class:"f-section-content"},[t.createVNode("div",{class:"f-form-layout farris-form farris-form-controls-inline"},[t.createVNode(On,{label:"组件类型",customClass:"col-12",modelValue:T.value,"onUpdate:modelValue":G=>T.value=G,required:"true",editor:L,onChange:M},null),t.createVNode(On,{label:"组件标题",customClass:"col-12",modelValue:S.value,"onUpdate:modelValue":G=>S.value=G,required:"true",editor:z},null)])])])])])}function $(){N.value--,k.value=V.value[N.value].id}function j(){var L;switch(k.value){case"selectEntity":{_();break}case"selectComponentType":{if(!T.value){C.warning("请先选择组件类型");return}if(!((L=S.value)!=null&&L.trim())){C.warning("请先填写组件标题");return}w.value=T.value,p(d.value),g.value.updateDataSource(m.value);break}}N.value++,k.value=V.value[N.value].id}function D(){n.emit("cancel")}function O(){var G;const L=r(),z=b();if(L&&z){const J={bindingType:"entity"};J.bindingEntity=L,J.bindTo=o.entityBindToMap.get(((G=J.bindingEntity)==null?void 0:G.label)||""),J.bindingEntityFields=z,J.entityTitle=S.value,n.emit("submit",{bindingContext:J,componentType:T.value})}}return()=>{var L;return t.createVNode("div",{class:"h-100 d-flex flex-column"},[((L=V.value)==null?void 0:L.length)>1?t.createVNode(xu,{steps:V,activeIndex:N,style:"align-self:center"},null):"",t.createVNode("div",{class:I.value("selectEntity"),style:"border-radius:10px;"},[F()]),t.createVNode("div",{class:I.value("selectComponentType"),style:"border-radius:10px;"},[B()]),t.createVNode("div",{class:I.value("selectFields"),style:"border-radius:10px;"},[P()]),t.createVNode("div",{class:"modal-footer"},[t.createVNode("button",{class:"btn btn-secondary",onClick:D},[t.createTextVNode("取消")]),N.value!==0?t.createVNode("button",{class:"btn btn-secondary",onClick:$},[t.createTextVNode("上一步")]):"",N.value!==V.value.length-1?t.createVNode("button",{class:"btn btn-primary",onClick:j},[t.createTextVNode("下一步")]):"",N.value===V.value.length-1?t.createVNode("button",{class:"btn btn-primary",onClick:O},[t.createTextVNode("确定")]):""])])}}});function zi(e){let n,o;function a(C,x,T){var V;const S={componentType:C.getAttribute("data-controltype")||"",componentFeature:C.getAttribute("data-feature")||"",componentCategory:C.getAttribute("data-category")||"",label:C.getAttribute("data-controlTypeName")||"",sourceType:C.getAttribute("data-sourceType")||"move",parentComponentInstance:T.componentInstance.value,sourceElement:C,sourceContainer:x,targetContainer:T,bindingSourceContext:null,bindingTargetId:C.getAttribute("data-fieldId")||""};return C.componentInstance&&(S.componentType=(V=C.componentInstance.value.schema)==null?void 0:V.type),S}function i(C){var S,V;const{bindingContext:x,componentType:T}=C;o.bindingSourceContext=x,T&&(o.componentType=T),(S=n==null?void 0:n.modalRef)!=null&&S.value.close&&((V=n==null?void 0:n.modalRef)==null||V.value.close())}function l(){var C,x;o.bindingSourceContext=void 0,(C=n==null?void 0:n.modalRef)!=null&&C.value.close&&((x=n==null?void 0:n.modalRef)==null||x.value.close())}function r(){const{componentType:C,bindingTargetId:x}=o;let T=[];return C&&(T=["selectEntity","selectFields"]),x&&(T=["selectComponentType","selectFields"]),()=>t.createVNode(t.Fragment,null,[t.createVNode(Tu,{componentType:C,bindingEntityId:x,steps:T,designerHostService:e,onSubmit:i,onCancel:l},{default:()=>[t.createTextVNode(" ")]}),t.createTextVNode(" ")])}function s(){return new Promise((C,x)=>{n=e.modalService.open({title:"选择绑定",width:800,height:600,fitContent:!1,showButtons:!1,render:r(),enableEsc:!1,rejectCallback:()=>{o.bindingSourceContext=void 0},closedCallback:()=>{C(o)},draggable:!0})})}function u(){var C,x;o.bindingSourceContext=void 0,(C=n==null?void 0:n.modalRef)!=null&&C.value.close&&((x=n==null?void 0:n.modalRef)==null||x.value.close())}function d(C){let x="",T="";return ce["field-set"]&&C.schema.type===ce["field-set"].type&&(x=C.schema.id,T=C.schema.title),{groupId:x,groupName:T}}function f(C){var k,I;if(!C||!C.selectedData||!C.bindingType)return;const{selectedData:x,bindingType:T}=C,{groupId:S,groupName:V}=d(o.parentComponentInstance),N={bindingType:"field"};if(T==="Form"){const E=x;N.entityFieldNode=E,N.designViewModelField=Fe.merge({},E,{groupId:S,groupName:V}),o.bindingSourceContext=N}else{const E=x;N.variableFieldNode=Fe.merge({},E,{groupId:S,groupName:V}),o.bindingSourceContext=N}(k=n==null?void 0:n.modalRef)!=null&&k.value.close&&((I=n==null?void 0:n.modalRef)==null||I.value.close())}function c(){var C,x;o.bindingSourceContext=null,(C=n==null?void 0:n.modalRef)!=null&&C.value.close&&((x=n==null?void 0:n.modalRef)==null||x.value.close())}function h(){const{parentComponentInstance:C}=o,T={viewModelId:e.formSchemaUtils.getViewModelIdByComponentId(C==null?void 0:C.belongedComponentId),designerHostService:e,disableOccupiedFields:!0,componentSchema:{editor:{type:o.componentType}}},S={enable:!1};return()=>t.createVNode(t.Fragment,null,[t.createVNode(ra.FBindingSelectorContainer,{editorParams:T,showCustomFooter:!0,bindingType:S,onSubmit:f,onCancel:u,onSkip:c},{default:()=>[t.createTextVNode(" ")]}),t.createTextVNode(" ")])}function p(){return new Promise((C,x)=>{n=e.modalService.open({title:"选择绑定",width:800,height:600,fitContent:!1,showButtons:!1,render:h(),enableEsc:!1,rejectCallback:()=>{o.bindingSourceContext=void 0},closedCallback:()=>{C(o)},draggable:!0})})}function m(){const{formSchemaUtils:C}=e,x=o.parentComponentInstance.belongedComponentId,T=new Set,S=C.getFormSchema().module,V=S.components.find(I=>I.id===x),N=C.getViewModelById(V.viewModel);let k=V.componentType;return(k==="frame"||k==="table")&&(k="form"),S.viewmodels.forEach(I=>{if(!I.fields||I.fields.length===0)return;const E=S.components.find(M=>M.viewModel===I.id);let{componentType:_}=E;(_==="frame"||_==="table")&&(_="form"),!(_!==k||I.bindTo!==N.bindTo)&&I.fields.forEach(M=>{T.add(M.id)})}),T}function g(){const{bindingTargetId:C,parentComponentInstance:x}=o;if(!C){o.bindingSourceContext=void 0;return}if(m().has(C)){const S=new pn.FNotifyService;S.globalConfig={position:"top-center"},S.warning("表单已经包含此字段,请勿重复添加"),o.bindingSourceContext=void 0;return}else{const S={bindingType:"field"},V=e.formSchemaUtils.getComponentById(x.belongedComponentId),N=e.schemaService.getFieldByIDAndVMID(C,V.viewModel),k=Fe.merge({},N.schemaField);S.entityFieldNode=k;const{groupId:I,groupName:E}=d(o.parentComponentInstance);S.designViewModelField=Fe.merge({},k,{groupId:I,groupName:E}),o.bindingSourceContext=S}}function y(){return o.bindingTargetId?g():p()}function v(){const{parentComponentInstance:C}=o,x=C.addNewChildComponentSchema(o,e);o.componentSchema=x}async function b(){const{componentCategory:C}=o;switch(C){case"input":{await y();break}case"dataCollection":{await s();break}}}async function w(C,x,T){return o=a(C,x,T),await b(),o.bindingSourceContext===void 0?null:(v(),o)}return{getComponentResolveContext:a,resolveComponentCreationContextByDrop:w}}function Vu(e,n){let o;function a(p,m,g){if(p.contains(m)||m.classList.contains("no-drop"))return!1;const y=!0;if(p.componentInstance&&p.componentInstance.value.getDragScopeElement){const v=p.componentInstance.value.getDragScopeElement();if(v&&!v.contains(m))return!1}if(m.componentInstance&&m.componentInstance.value.canAccepts){const b=zi(e).getComponentResolveContext(p,g,m);return m.componentInstance.value.canAccepts(b)}return y}function i(p,m){const g=m.getBoundingClientRect(),y=p.getBoundingClientRect(),v=y.top>=g.top,b=y.top<g.bottom;return v&&b}function l(p,m){const g=p.querySelector(".dgComponentSelected");if(!(!g||m===0)&&i(g,p)){const y=g.querySelector(".component-btn-group");if(y){const v=y.querySelector("div");if(v&&v.style.top){const b=Number.parseFloat(v.style.top);v.style.top=b-m+"px"}}}}function r(p,m,g){let y=-1;if(!m)return-1;if(p.componentInstance.value.contents)if(g&&g.componentInstance){if(g.getAttribute("data-noattach"))y=Number(g.getAttribute("data-position"));else{const v=g.componentInstance.value.schema;let b={id:v.id};v.type==="component"&&(b={component:v.id}),y=Fe.findIndex(p.componentInstance.value.contents,b),y=y===-1?0:y}y!==-1&&p.componentInstance.value.contents.splice(y,0,m)}else p.componentInstance.value.contents.push(m);return y}function s(p,m,g,y){zi(e).resolveComponentCreationContextByDrop(p,g,m).then(b=>{if(!b)return;const w=b.componentSchema;w&&(n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(w),r(m,w,y))}),m.contains(p)&&m.removeChild(p)}function u(p,m,g,y){let v,b=-1;if(p.componentInstance&&p.componentInstance.value.triggerBelongedComponentToMoveWhenMoved){const x=p.componentInstance.value.getBelongedComponentInstance(p.componentInstance);x&&(p=t.ref(x.elementRef).value.parentElement,g=p.parentElement)}const w=p.componentInstance&&p.componentInstance.value.schema;let C={id:w&&w.id};w.type==="component"&&(C={component:w&&w.id}),b=Fe.findIndex(g.componentInstance.value.contents,C),b!==-1&&g.componentInstance.value.contents&&(v=g.componentInstance.value.contents.splice(b,1),v=v[0]),r(m,v,y),g.componentInstance&&g.componentInstance.value.onChildElementMovedOut&&g.componentInstance.value.onChildElementMovedOut(p),m.componentInstance&&m.componentInstance.value.onAcceptMovedChildElement&&m.componentInstance.value.onAcceptMovedChildElement(p,g)}function d(p,m,g,y){if(!m||p.contains(m))return;switch(p.getAttribute("data-sourceType")){case"control":case"field":case"entity":{s(p,m,g,y);break}default:g.componentInstance.value.contents?u(p,m,g,y):m.contains(p)&&m.removeChild(p)}lt.value++}function f(p){o&&o.destroy(),Kt&&(o=Kt([],{mirrorContainer:p,direction:"mixed",revertOnSpill:!0,moves(m,g,y){let v=!0;return m.classList.contains("no-drag")&&(v=!1),m.componentInstance&&(v=!!y.getAttribute("data-dragging-icon")),v},copy(m){return m.classList.contains("drag-copy")},getMirrorText(m){return m.componentInstance&&m.componentInstance.value.getDraggingDisplayText?m.componentInstance.value.getDraggingDisplayText():m.innerText||"控件"},accepts(m,g,y){const v=a(m,g,y),b=p.lastElementChild;return v?b.className=b.className.replace("undroppable",""):b.className.includes("undroppable")||(b.className+=" undroppable"),v}}).on("over",(m,g)=>{g.className+=" drag-over"}).on("out",(m,g)=>{g.className=g.className.replace("drag-over","").replace(" ","")}).on("drop",(m,g,y,v)=>{d(m,g,y,v)}).on("dragend",(m,g)=>{l(p,g)}))}function c(p,m){if(!p)return;if(m.noDragDrop)return p;const g=p.querySelector(`[data-dragref='${m.id}-container']`)||p;o&&g&&o.containers.push(g)}function h(){return o}return{attachComponents:c,initializeDragula:f,getDragulaInstance:h}}const Hi=t.defineComponent({name:"FDesignerCanvas",props:$a,emits:["init","selectionChange","canvasChanged","dragEnd"],setup(e,n){const o=t.ref(),a=t.ref(),i=t.ref(),l=t.ref(),r=t.ref(),s=t.ref(),u=t.ref(e.componentId),{canvasMode:d}=e;let f,c;const h=t.inject("designerContext"),p={eventsEditorUtils:t.inject("eventsEditorUtils"),formSchemaUtils:t.inject("useFormSchema"),formMetadataConverter:t.inject("formMetadataConverter"),designViewModelUtils:t.inject("designViewModelUtils"),controlCreatorUtils:t.inject("controlCreatorUtils"),metadataService:t.inject("Meatdata_Http_Service_Token"),schemaService:t.inject("schemaService"),useFormCommand:t.inject("useFormCommand"),modalService:t.inject(Vo),formStateMachineUtils:t.inject("useFormStateMachine"),messagerService:t.inject("FMessageBoxService"),designerContext:h};qa(h),Ya(h),t.provide("designer-host-service",p);const m=Vu(p,h);e.components?Us(e.components):qs(),t.provide("canvas-dragula",m),t.provide("design-item-context",{designerItemElementRef:r,componentInstance:s,schema:a.value,parent:void 0});const g=t.computed(()=>({"d-flex":!0,"flex-fill":!0,"flex-column":!0})),y=t.computed(()=>({editorPanel:!0,"d-flex":!0,"flex-fill":!0,"flex-column":!0,[d]:!0}));t.watch([()=>e.modelValue,()=>e.componentId],([x,T])=>{o.value=x,u.value=T}),t.watch(lt,()=>{mn(i.value),n.emit("canvasChanged")},{flush:"post"});function v(){f=new ResizeObserver(()=>{c&&clearTimeout(c),c=setTimeout(()=>{mn(l.value)})}),f.observe(l.value)}function b(x,T,S,V){n.emit("selectionChange",x,T,S,V)}function w(){n.emit("dragEnd")}function C(){l.value.addEventListener("scroll",x=>{mn(l.value)})}return t.onMounted(()=>{i.value&&m.initializeDragula(i.value),o.value=e.modelValue,n.emit("init",m),v(),C()}),t.onUnmounted(()=>{f&&(f.unobserve(i.value),f.disconnect(),f=null)}),n.expose({refreshCanvas:Ti,changeCanvas:Sl,designerCanvasElementRef:i,designerCanvasContainerElementRef:l,designerHostService:p}),()=>t.createVNode("div",{class:"editorDiv flex-fill h-100",ref:l},[t.createVNode("div",{class:y.value},[t.createVNode("div",{ref:i,class:g.value},[o.value&&t.createVNode(vn,{key:xi.value,modelValue:o.value,"onUpdate:modelValue":x=>o.value=x,onSelectionChange:b,componentId:u.value,onDragEnd:w},null)])])])}}),Nu={id:{type:String,default:""},componentId:{type:String,default:""},canAdd:{type:Boolean,default:!1},canDelete:{type:Boolean,default:!1},canMove:{type:Boolean,default:!1},contentKey:{type:String,default:"contents"},childLabel:{type:String,default:""},childType:{type:String,default:""},modelValue:{type:Object}};function Wi(e,n,o){var N;const a=o&&o.getStyles&&o.getStyles()||"",i=t.ref();let l;function r(){return o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function s(){return!1}function u(){return o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function d(){return o&&o.checkCanAddComponent?o.checkCanAddComponent():!0}function f(){return!0}function c(k){if(!k||!k.value)return null;const I=t.ref(k==null?void 0:k.value.parent),E=c(I);return E||null}function h(k=n){var M;const{componentInstance:I,designerItemElementRef:E}=k;if(!I||!I.value)return null;const{getCustomButtons:_}=I.value;return I.value.canMove||I.value.canAdd||I.value.canDelete||_&&((M=_())!=null&&M.length)?E:h(k.parent)}function p(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function m(k){return!!o&&o.canAccepts(k)}function g(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function y(){}function v(k,I){!k||!I||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(k,I)}function b(k){const{componentType:I}=k,E=t.inject("designer-host-service");let _=rt.getSchemaByTypeForDesigner(I,k,E);o&&o.onResolveNewComponentSchema&&(_=o.onResolveNewComponentSchema(k,_));const M=I.toLowerCase().replace(/-/g,"_");return _&&!_.id&&_.type===I&&(_.id=`${M}_${Math.random().toString().slice(2,6)}`),_}function w(k){}function C(...k){return o&&o.getPropsConfig?o.getPropsConfig(...k):[]}function x(){}function T(k){var E;if(!(n!=null&&n.schema))return;if(o!=null&&o.setComponentBasicInfoMap){o.setComponentBasicInfoMap();return}let I="";if(o!=null&&o.getComponentTitle)I=o.getComponentTitle();else{const{text:_,title:M,label:F,mainTitle:P,name:B,type:$}=n.schema;I=_||M||F||P||B||((E=ce[$])==null?void 0:E.name)}I&&(!l&&k&&(l=k.formSchemaUtils),l.getControlBasicInfoMap().set(n.schema.id,{componentTitle:I,parentPathName:I}))}function S(k){var M;const{changeObject:I}=k,{propertyID:E,propertyValue:_}=I;["text","title","label","name","mainTitle"].includes((M=k==null?void 0:k.changeObject)==null?void 0:M.propertyID)&&E&&_&&T()}function V(k){if(S(k),o&&o.onPropertyChanged)return o.onPropertyChanged(k)}return i.value={canMove:r(),canSelectParent:s(),canAdd:d(),canDelete:u(),canNested:!f(),contents:[],elementRef:e,parent:(N=n.parent)==null?void 0:N.componentInstance,schema:n.schema,styles:a,canAccepts:m,getBelongedComponentInstance:c,getDraggableDesignItemElement:h,getDraggingDisplayText:g,getPropConfig:C,getDragScopeElement:y,onAcceptMovedChildElement:v,onChildElementMovedOut:w,addNewChildComponentSchema:b,onRemoveComponent:x,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1),onPropertyChanged:V,getCustomButtons:p,setComponentBasicInfoMap:T},i}const Io=t.defineComponent({name:"FDesignerInnerItem",props:Nu,emits:["selectionChange","addComponent","removeComponent","clickButton"],setup(e,n){const o=t.ref(e.canMove),a=t.ref(e.canAdd),i=t.ref(e.canDelete),l=t.ref(!1),r=t.ref(e.contentKey),s=t.ref(e.childType),u=t.ref(e.childLabel),d=t.ref(e.modelValue),f=t.ref(""),c=t.ref(),h=t.inject("canvas-dragula"),p=t.ref(),m=t.inject("design-item-context"),g={designerItemElementRef:c,componentInstance:p,schema:d.value,parent:m,setupContext:n};t.provide("design-item-context",g);const y=t.inject("designer-host-service"),v=t.computed(()=>{var B;const F=((B=p.value)==null?void 0:B.getCustomButtons)&&p.value.getCustomButtons();return{"farris-component":!0,"flex-fill":e.id==="root-component","position-relative":o.value||i.value||(F==null?void 0:F.length),"farris-nested":l.value,"can-move":o.value,"d-none":c.value&&c.value.classList.contains("d-none")}}),b=t.computed(()=>{const F={};return f.value&&f.value.split(";").reduce((P,B)=>{const[$,j]=B.split(":");return $&&(P[$]=j),P},F),F});function w(F,P){if(m&&m.schema[r.value]){const B=m.schema[r.value].findIndex($=>$.id===P.id);if(B>-1){const $=m.schema[r.value].length,j=m.schema[r.value][B%$];m.designerItemElementRef.value.querySelector(`#${j.id}-design-item`),m.schema[r.value].splice(B,1),lt.value++,n.emit("removeComponent"),n.emit("selectionChange")}}}function C(F){if(p.value.addNewChildComponentSchema){const P={componentType:s.value,label:u.value,parentComponentInstance:p.value,targetPosition:-1},B=p.value.addNewChildComponentSchema(P);d.value[r.value].push(B),n.emit("addComponent")}}function x(){return a.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增",ref:"removeComponent",onClick:F=>{C()}},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function T(F){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:t.withModifiers(P=>w(P,F),["stop"])},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function S(){return o.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function V(){var P;const F=((P=p.value)==null?void 0:P.getCustomButtons)&&p.value.getCustomButtons();return F&&!!F.length&&F.map(B=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${B.class||""} ${B.text?"settings-button-extend":""}`,title:B.title,ref:B.id,onClick:$=>B.onClick&&B.onClick($)},[t.createVNode("i",{class:"f-icon "+B.icon},null),B.text&&t.createVNode("span",{class:"icon-text"},[B.text])]))}function N(F){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[x(),S(),T(F),V()])])}t.watch(()=>e.modelValue,F=>{d.value=F,g.schema=F});function k(F){window.scrollContainerList||(window.scrollContainerList=new Set);const P=F.getAttribute("id");P&&window.scrollContainerList.add(P)}function I(F){const P=F.target;k(P),mn(P)}function E(){var F,P;(P=(F=d.value)==null?void 0:F.contents)!=null&&P.length&&c.value&&c.value.addEventListener("scroll",I)}function _(){const F=c.value,P=t.ref(F.children[1]);return Wi(P,g).value}t.onMounted(()=>{if(c.value){const F=c.value.querySelector(`[data-dragref='${d.value.id}-container']`);p.value=F&&F.componentInstance?F.componentInstance.value:_(),h&&F&&h.attachComponents(F,d.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,a.value=p.value.canAdd!==void 0?p.value.canAdd:a.value,i.value=p.value.canDelete!==void 0?p.value.canDelete:i.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,f.value=p.value.styles||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=g),p.value.setComponentBasicInfoMap(y)}E(),lt.value++}),t.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",I)});function M(F){F&&(F.preventDefault(),F.stopPropagation());let P=g.designerItemElementRef;const B=c.value;if(B){const $=document.getElementsByClassName("dgComponentFocused");$&&$.length===1&&$[0]===c.value&&c.value.classList.contains("dgComponentSelected")||(Array.from($).forEach(D=>D.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(D=>D.classList.remove("dgComponentSelected")),B.classList.add("dgComponentFocused"),n.emit("selectionChange",d.value.type,d.value,e.componentId,p.value),p.value.getDraggableDesignItemElement&&(P=p.value.getDraggableDesignItemElement(g),P&&P.value&&P.value.classList.add("dgComponentSelected")))}Fn(P==null?void 0:P.value)}return()=>t.createVNode("div",{id:`${e.id}-design-item`,ref:c,class:v.value,style:b.value,onClick:M},[N(d.value),n.slots.default&&n.slots.default()])}}),Iu={data:{type:Object,default:[]},selectable:{type:Boolean,default:!1},autoCheckChildren:{type:Boolean,default:!0},cascade:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},newDataItem:{type:Object,default:{}},lineColor:{type:String,default:"#9399a0"},cellHeight:{type:Number,default:28}};var tn=(e=>(e.Frame="frame",e.dataGrid="data-grid",e.listView="list-view",e.form="form",e.attachmentPanel="attachment-panel",e))(tn||{});function Fu(e,n){const o=t.ref(""),a=t.ref("");function i(c){var m;let h="controlIcon fd-i-Family ",p="";switch(c==null?void 0:c.type){case"form-group":{p=c.editor&&c.editor.type?`fd_pc-${c.editor.type}`:"";break}default:{const g=((m=ce[c.type])==null?void 0:m.icon)||c.type;h+=`fd_pc-${g}`}}return h+=p,h}function l(c,h){var g;let p=c.id;const m=h==null?void 0:h.contents;if((h==null?void 0:h.type)==="splitter"&&m&&m.length===2){const y=h.direction!=="column";c.id===((g=m[0])==null?void 0:g.id)?p=y?"左侧区域":"上方区域":p=y?"右侧区域":"下方区域"}return p}function r(c){if(c.isLikeCardContainer)return"区块";const h=c.appearance&&c.appearance.class||"",p=h.split(" ");return c.id==="page-header"&&h&&h==="f-page-header"?"页头":p.includes("f-page-header-base")?"页头容器":p.includes("f-page-header-extend")?"页头扩展容器":p.includes("f-title")?"标题容器":p.includes("f-page")?"根容器":p.includes("f-page-main")?"内容区域":p.includes("f-scrollspy-content")&&c.isScrollspyContainer?"滚动监听容器":p.includes("f-grid-is-sub")?"表格容器":p.includes("f-filter-container")?"筛选条容器":"容器"}function s(c){const{componentType:h}=c;switch(h){case tn.Frame:return"根组件";case tn.dataGrid:return(e==null?void 0:e.formSchemaUtils.selectNode(c,m=>m.type===(ce["tree-grid"]&&ce["tree-grid"].type)))?"树表格组件":"表格组件";case tn.attachmentPanel:return"附件组件";case tn.listView:return"列表视图组件";case tn.form:return"卡片组件";default:return"组件"}}function u(c,h){const p=c.name||c.text||c.label||c.title||c.mainTitle;if(c.type!=="component"&&p&&typeof p=="string")return p.trim();switch(c.type){case"content-container":return r(c);case"splitter-pane":return l(c,h);case"component":return s(c);default:return ce[c.type]&&ce[c.type].name||c.id}}function d(c){const h=c.length?c[0]:null;if(!h)return;a.value="",o.value=h.originalId;const p=h?`${h.originalId}-design-item`:"",m=document.getElementById(p);m&&m.click(),n.emit("selectionChanged",h)}function f(c){if(!c)return;const h=`${c}-design-item`,p=document.getElementById(h);p&&p.click()}return{getIcon:i,getTitle:u,onChanged:d,currentSelectedNodeId:o,currentSelectedOutsideNodeId:a,triggerOutsideClick:f}}function ku(e,n){const{getIcon:o,getTitle:a}=n;function i(f,c,h,p,m){var y;const g=(y=e.data.module)==null?void 0:y.components.find(v=>v.id===f.component);g&&l([g],c,h,p,m)}function l(f,c,h,p,m){return f.forEach(g=>{if(g.type==="component-ref"){i(g,c,h,p,m);return}const y={originalId:g.id,layer:h,originalParent:p==null?void 0:p.id,componentId:m,name:a(g,p),type:g.type,controlIcon:o(g),rawSchema:g};c.push(Fe.cloneDeep(y)),(g.contents||g.buttons)&&l(g.contents||g.buttons,c,h+1,g,m)}),c}function r(f){const c=[],h=f.find(y=>y.layer===0);f=f.filter(y=>y.layer!==0),c.push(h);let p=h.originalId,m=0,g=1e3;for(;f.length!==0||g===0;){const y=f.find(v=>v.originalParent===p);y?(c.push(y),p=y.originalId,f=f.filter(v=>v.originalId!==p),m=0):(m-=1,p=c.slice(m)[0].originalId),g-=1}return c}function s(f){return f.forEach((c,h)=>{c.id=(h+1).toString()}),f.forEach(c=>{var h;c.parent=((h=f.find(p=>p.originalId===c.originalParent))==null?void 0:h.id)||""}),f.forEach(c=>{c.hasChildren=f.findIndex(h=>h.parent===c.id)>0}),f}function u(f){const c={originalId:e.data.module.id,layer:0,originalParent:null,name:"页面",type:"module",controlIcon:"controlIcon fd-i-Family fd_pc-module",rawSchema:e.data.module},h=[];return f.forEach(p=>{p[0].originalParent=c.originalId,h.push(...p)}),h.unshift(c),h}function d(){const f=e.data.module?t.ref(e.data.module.components):t.ref([e.data]);if(!f.value)return;const c=[];f.value.forEach(g=>{if(g){const y=[];y.push(g);const w=l(y,[],1,null,g.id);c.push(w)}});const h=u(c),p=r(h);return s(p)}return{getData:d}}const Pu=t.defineComponent({name:"FDesignerOutline",props:Iu,emits:["outputValue","currentEvent","selectionChanged"],setup(e,n){const o=t.ref(),a=t.ref(e.selectable),i=t.ref(e.autoCheckChildren),l=t.ref(e.cascade),r=t.ref(e.showTreeNodeIcons),s=t.ref(e.showLines),u=t.ref(e.newDataItem),d=t.ref(e.lineColor),f=t.ref(e.cellHeight),c=t.ref([{field:"name",title:"",dataType:"string"}]),h=t.inject("designer-host-service"),p=Fu(h,n),{onChanged:m,currentSelectedNodeId:g,currentSelectedOutsideNodeId:y,triggerOutsideClick:v}=p,{getData:b}=ku(e,p);let w=b();function C(){if(w=b(),o.value&&o.value.updateDataSource){if(o.value.updateDataSource(w),y.value&&o.value.clearSelection){o.value.clearSelection(),v(y.value);return}g&&o.value.clearSelection&&(o.value.clearSelection(),x({id:g.value}))}}function x(T){if(!T&&o.value&&o.value.clearSelection&&o.value.clearSelection(),T&&o.value&&o.value.selectItem){const S=w.find(V=>V.originalId===T.id);S?(o.value.selectItemById(S.id),g&&(g.value=S.originalId),o.value.activeRowById(S.id),y.value=""):g&&(g.value="",y.value=T.id)}}return n.expose({selectControlTreeNode:x,refreshControlTree:C}),t.onMounted(()=>{w.length&&o.value&&x({id:w[0].originalId})}),()=>t.createVNode("div",{class:"designer-control-tree"},[t.createVNode(Jt.FTreeView,{ref:o,data:w,columns:c.value,selectable:a.value,columnOption:{fitColumns:!0,fitMode:"expand"},autoCheckChildren:i.value,cascade:l.value,showTreeNodeIcons:r.value,showLines:s.value,newDataItem:u.value,lineColor:d.value,cellHeight:f.value,fit:!0,iconField:"controlIcon",onSelectionChange:m},null)])}}),Eu={id:{type:String,default:""},dragula:{type:Object},toolboxItems:{type:Array,default:[]}},Mu=t.defineComponent({name:"FDesignerToolbox",props:Eu,emits:[],setup(e){const n=t.ref(e.toolboxItems),o=t.ref(e.dragula);function a(h,p){p.isHide=!p.isHide}function i(h){return{"f-icon":!0,"f-icon-arrow-60-down":!h.isHide,"f-icon-arrow-e":h.isHide}}function l(h){return t.createVNode("div",{class:"card-header",onClick:p=>a(p,h)},[t.createVNode("div",{class:"panel-item-title"},[t.createVNode("div",{class:"f-section-formgroup-legend"},[t.createVNode("div",{class:"f-header px-2 col-form-label"},[t.createVNode("div",{class:"f-toolbar mr-2"},[t.createVNode("span",{class:i(h)},null)]),t.createVNode("div",{class:"f-title f-utils-fill d-flex justify-content-between"},[t.createVNode("span",null,[h.name])])])])])])}function r(h){return{"d-none":h.dependentParent||h.hideInControlBox,controlPanel:!0,"drag-copy":!0,"no-drag":h.disable,updating:h.updating}}function s(h){const p={farrisControlIcon:!0,"fd-i-Family":!0},m=`fd_pc-${h.icon||h.type}`;return p[m]=!0,p}function u(h,p){return t.createVNode("div",{class:r(h),"data-sourceType":"control","data-controlType":h.type,"data-controlTypeName":h.name,"data-category":h.category,"data-feature":h.feature?JSON.stringify(h.feature):"","data-fieldType":h.fieldType,"data-templateId":h.id,"data-templateCategory":h.templateCategory,hidden:p.isHide},[t.createVNode("div",null,[t.createVNode("div",{class:s(h)},null),t.createVNode("div",{class:"controlName"},[h.name])])])}function d(h){return t.createVNode("div",{class:"card-body px-2 py-0 border-0 controlCategory no-drop"},[h.items.map(p=>u(p,h))])}function f(h){return!h.hideInControlBox&&t.createVNode("div",{class:"farris-panel-item card border-0"},[l(h),d(h)])}function c(h){if(!h)return;const p=document.getElementsByClassName("controlCategory");p&&(h.containers=h.containers.filter(m=>!m.className.includes("controlCategory")),Array.from(p).forEach(m=>{h.containers.push(m)}))}return t.watch(()=>e.dragula,h=>{var p,m;o.value=h,(p=o.value)!=null&&p.getDragulaInstance&&c((m=o.value)==null?void 0:m.getDragulaInstance())}),()=>t.createVNode("div",{class:"controlBox f-utils-fill-flex-column"},[t.createVNode("div",{class:"farris-panel f-utils-fill-flex-column",style:"overflow:auto;"},[n.value.map(h=>f(h))])])}}),_u={modelValue:{type:Object,default:{}}};function Ou(){const a={aroundDirection:"none",left:2,right:2,top:2,bottom:2,x:0,y:0};function i(){const P=document.createElementNS("http://www.w3.org/2000/svg","path");return P.setAttribute("fill","none"),P.setAttribute("stroke","#4d53e8"),P.setAttribute("stroke-width","2"),P.setAttribute("class",""),P}function l(){const P=document.createElementNS("http://www.w3.org/2000/svg","path");return P.setAttribute("fill","none"),P.setAttribute("stroke","#4d53e8"),P.setAttribute("stroke-width","2"),P.setAttribute("stroke-linecap","round"),P}function r(){const P=document.createElementNS("http://www.w3.org/2000/svg","path");return P.setAttribute("fill","none"),P.setAttribute("stroke","#4d53e8"),P.setAttribute("stroke-width","2"),P.setAttribute("stroke-linecap","round"),P}function s(P,B,$,j){const D=O=>{O.key==="Delete"&&(P.indexOf("^"),document.removeEventListener("keydown",D),B.remove())};$.addEventListener("mouseenter",()=>{$.setAttribute("stroke","#37d0ff"),j.setAttribute("stroke","#37d0ff"),$.setAttribute("stroke-width","3"),document.addEventListener("keydown",D)}),$.addEventListener("mouseleave",()=>{$.setAttribute("stroke","#4d53e8"),$.setAttribute("stroke-width","2"),j.setAttribute("stroke","#4d53e8"),document.removeEventListener("keydown",D)})}function u(P){let B=document.getElementById(P);if(B==null){const $=document.createElementNS("http://www.w3.org/2000/svg","svg"),j=i();$.appendChild(j);const D=l();$.appendChild(D);const O=r();$.appendChild(O);const L=r();$.appendChild(L),B=document.createElement("div"),B.id=P,B.style.position="absolute",B.appendChild($),s(P,B,j,D);const z=document.getElementById("svg-container");return z&&z.appendChild(B),B}return B}function d(P,B,$,j,D){const O={x:0,y:0};return P==="west"&&(B==="north_west"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="west"&&(O.x=0-j/2,O.y=0)),B==="north_east"&&($==="north"&&(O.x=-100,O.y=0-D/2),$==="east"&&(O.x=-100,O.y=0-D/2)),B==="south_east"&&($==="south"&&(O.x=-100,O.y=0+D/2),$==="east"&&(O.x=-100,O.y=0+D/2)),B==="south_west"&&($==="south"&&(O.x=0,O.y=0+D/2),$==="west"&&(O.x=0-j/2,O.y=0))),P==="east"&&(B==="north_west"&&($==="north"&&(O.x=-100,O.y=0-D/2),$==="west"&&(O.x=100,O.y=0-D/2)),B==="north_east"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_east"&&($==="south"&&(O.x=0,O.y=0+D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_west"&&($==="south"&&(O.x=100,O.y=0+D/2),$==="west"&&(O.x=100,O.y=0+D/2))),P==="north"&&(B==="north_west"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="west"&&(O.x=0-j/2,O.y=0)),B==="north_east"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_east"&&($==="south"&&(O.x=0+j/2,O.y=-100),$==="east"&&(O.x=0+j/2,O.y=-100)),B==="south_west"&&($==="south"&&(O.x=0-j/2,O.y=-100),$==="west"&&(O.x=0-j/2,O.y=-100))),P==="south"&&(B==="north_west"&&($==="north"&&(O.x=0-j/2,O.y=100),$==="west"&&(O.x=0-j/2,O.y=100)),B==="north_east"&&($==="north"&&(O.x=0+j/2,O.y=100),$==="east"&&(O.x=0+j/2,O.y=100)),B==="south_east"&&($==="south"&&(O.x=0,O.y=0+D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_west"&&($==="south"&&(O.x=0,O.y=D/2),$==="west"&&(O.x=0-j/2,O.y=0))),O}function f(P,B,$,j){const D={x:0,y:0};return P==="south"&&(B==="west"&&(D.x=-100,D.y=0-j/2),B==="east"&&(D.x=100,D.y=-100),B==="south"&&(D.x=0-$/2,D.y=100),(B==="north"||B==="center")&&(D.x=0,D.y=0-j/2)),P==="north"&&(B==="west"&&(D.x=-100,D.y=100),B==="east"&&(D.x=100,D.y=100),B==="north"&&(D.x=0-$/2,D.y=-100),(B==="south"||B==="center")&&(D.x=0,D.y=j/2)),P==="east"&&(B==="north"&&(D.y=-100,D.x=-100),B==="south"&&(D.y=100,D.x=-100),B==="east"&&(D.x=100,D.y=100),(B==="west"||B==="center")&&(D.x=0-$/2,D.y=0)),P==="west"&&(B==="north"&&(D.y=-100,D.x=100),B==="south"&&(D.y=100,D.x=100),B==="west"&&(D.x=-100,D.y=j/2),(B==="east"||B==="center")&&(D.x=$/2,D.y=0)),D}function c(P,B,$,j,D,O,L){const z=L==="south"||L==="east"?"portrait":"landscape",G=D,J=z==="landscape"?"east":"north",te=L==="center"?z==="landscape"?"west":"south":L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H;U<0&&(B+=Math.abs(U));const K=new Map([["default",0+q],["portrait",0+q],["landscape",0+q]]),Q=new Map([["default",B+R],["portrait",B+R],["landscape",B+R]]);q<0&&(P+=Math.abs(q)),A>0&&(P+=A);const oe=new Map([["default",P+A],["portrait",P+A],["landscape",P+A]]),X=new Map([["default",0+U],["portrait",0+U],["landscape",0+U]]),ne=j.left>a.left,ie=j.bottom>a.bottom,we=ne?0:ie?P/2:K.get(z),le=ie?B+j.bottom:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}function h(P,B,$,j,D,O,L){const z=L==="south"||L==="west"?"portrait":"landscape",G=D,J=z==="landscape"?"west":"north",te=L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H;U<0&&(B+=Math.abs(U)),q>0&&(P+=q),A<0&&(P+=Math.abs(A));const K=new Map([["default",P+q],["portrait",P+q],["landscape",P+q]]),Q=new Map([["default",B+R],["portrait",B+R],["landscape",B+R]]),oe=new Map([["default",0+A],["portrait",0+A],["landscape",0+A]]),X=new Map([["default",0+U],["portrait",0+U],["landscape",0+U]]),ne=j.right>a.right,ie=j.bottom>a.bottom,we=ne?P+j.right:ie?P/2:K.get(z),le=ie?B+j.bottom:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}function p(P,B,$,j,D,O,L){const z=L==="north"||L==="east"?"portrait":"landscape",G=D,J=z==="landscape"?"east":"south",te=L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H,K=new Map([["default",0+q],["portrait",0+q],["landscape",0+q]]),Q=new Map([["default",0+R],["portrait",0+R],["landscape",0+R]]);q<0&&(P+=Math.abs(q)),R<0&&(B+=Math.abs(R)),A>0&&(P+=A),U>0&&(B+=U);const oe=new Map([["default",P+A],["portrait",P+A],["landscape",P+A]]),X=new Map([["default",B+U],["portrait",B+U],["landscape",B+U]]),ne=j.left>a.left,ie=j.top>a.top,we=ne?0:ie?P/2:K.get(z),le=ie?0:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}function m(P,B,$,j,D,O,L){const z=L==="north"||L==="west"?"portrait":"landscape",G=D,J=z==="landscape"?"west":"south",te=L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H;A<0&&(P+=Math.abs(A));const K=new Map([["default",P+q],["portrait",P+q],["landscape",P+q]]),Q=new Map([["default",0+R],["portrait",0+R],["landscape",0+R]]);R<0&&(B+=Math.abs(R)),U>0&&(B+=U);const oe=new Map([["default",0+A],["portrait",0+A],["landscape",0+A]]),X=new Map([["default",B+U],["portrait",B+U],["landscape",B+U]]),ne=j.right>a.right,ie=j.top>a.top,we=ne?P+j.right:ie?P/2:K.get(z),le=ie?0:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}const g=new Map([["north_east",c],["north_west",h],["south_east",p],["south_west",m]]),y=new Map([["east",["north_west","south_west"]],["west",["north_east","south_east"]],["north",["south_west","south_east"]],["south",["north_west","north_east"]],["center",[]]]);function v(P,B){return P==="north_west"?{aroundDirection:"north_west",left:B.left,right:100,top:B.top,bottom:B.top}:P==="south_west"?{aroundDirection:"south_west",left:B.left,right:100,top:B.top,bottom:B.bottom}:B}function b(P,B){return P==="north_east"?{left:100,right:B.right,top:B.top,bottom:B.top}:P==="south_east"?{left:100,right:B.right,top:B.top,bottom:B.bottom}:B}function w(P,B){return P==="south_west"?{left:B.left,right:B.right,top:100,bottom:B.top}:P==="south_east"?{left:B.left,right:B.right,top:100,bottom:B.bottom}:B}function C(P,B){return P==="north_west"?{left:B.left,right:B.right,top:B.top,bottom:100}:P==="north_east"?{left:B.left,right:B.right,top:B.top,bottom:100}:B}function x(P,B){return B}const T=new Map([["east",v],["west",b],["north",w],["south",C],["center",x]]);function S(P,B,$,j){const D=B.x-P.x,O=B.y-P.y,L=D>=0?"east":"west",z=O>=0?"south":"north",G=`${z}_${L}`,te=(y.get($)||[]).includes(G),W=T.get($),q=te?W(G,a):a,R=Math.abs(D),H=Math.abs(O),A=g.get(`${z}_${L}`),[U,K,Q]=A(R,H,te,q,$,G,j),oe=L==="west"?Q.x<0?Math.abs(Q.x):0:Q.x>0?Q.x:0,X=q.left+q.right+R+oe,ne=z==="north"?Q.y<0?Math.abs(Q.y):0:Q.y>0?Q.y:0,ie=q.top+q.bottom+H+ne,we=L==="east"?P.x-q.left:P.x+q.right-X,le=z==="south"?P.y-q.top:P.y+q.bottom-ie,de=L==="east"?q.left:X-q.right,he=z==="north"?ie-q.bottom:q.top,ee=L==="west"?Q.x<0?Math.abs(Q.x):0:Q.x<0?X:X-Q.x,fe=z==="north"?Q.y<0?Math.abs(Q.y):0:Q.y<0?ie:ie-Q.y;return{width:X,height:ie,left:we,top:le,startPoinInBoundray:{x:de,y:he},firstControlPoint:U,secondControlPoint:K,endPoinInBoundray:{x:ee,y:fe}}}function V(P,B,$,j,D){P.style.position="absolute",P.style.alignItems="center",P.style.left=`${B}px`,P.style.top=`${$}px`,P.style.width=j+"px",P.style.height=D+"px"}function N(P,B,$,j,D,O,L){const z=P.childNodes[0];z.setAttribute("width",String(B)),z.setAttribute("height",String($)),P.appendChild(z);const G=z.childNodes[0],J=`${j.x} ${j.y}`,te=`${D.x} ${D.y}`,W=`${O.x} ${O.y}`,q=`${L.x} ${L.y}`,R="M ".concat(J).concat(" C ").concat(te).concat(","+W+",").concat(q);G.setAttribute("d",R),G.setAttribute("fill","none"),G.setAttribute("stroke","#4d53e8"),G.setAttribute("stroke-width","2"),G.setAttribute("class","")}function k(P,B,$,j,D){const{width:O,height:L,left:z,top:G,startPoinInBoundray:J,firstControlPoint:te,secondControlPoint:W,endPoinInBoundray:q}=S(B,$,j,D);V(P,z,G,O,L),N(P,O,L,J,te,W,q)}function I(P,B,$,j,D){const O=u(P);k(O,B,$,j,D)}function E(P){return Number(P.replace("px",""))}function _(P){if(P!==null){const B=P.parentNode,$=E(B.style.left),j=E(B.style.top);return{x:$+P.offsetLeft+P.offsetWidth/2,y:j+P.offsetTop+P.offsetHeight/2}}return{x:0,y:0}}function M(P,B){const $=document.getElementById(P),j=document.getElementById(B),D=_($),O=_(j),L=D.x+2,z=D.y,G=O.x-2,J=O.y;return{startPoint:{x:L,y:z},endPoint:{x:G,y:J}}}function F(P,B,$,j){const{startPoint:D,endPoint:O}=M(P,B);I(`${P}_${B}`,D,O,$,j)}return{connect:F,drawing:I}}function Bu(e){const n=t.ref(),o=t.ref(0),a=t.ref(0),i=t.ref({x:0,y:0}),l=t.ref(),{drawing:r}=e;function s(v){return Number(v.replace("px",""))}function u(v){return(v&&v.className&&v.className.split?v.className.split(" "):[]).includes("f-flow-ancher")}function d(v){switch((v?v.className.split(" "):[]).find(C=>C.startsWith("circle-"))||""){case"circle-left":return"west";case"circle-right":return"east";case"circle-top":return"north";case"circle-bottom":return"south";default:return"center"}}function f(v,b,w){const C=w.getBoundingClientRect();o.value=C.left,a.value=C.top,i.value={x:v,y:b},n.value=d(w)}function c(v){var V;const b=v.clientX-o.value,w=v.clientY-a.value,C=i.value.x+b,x=i.value.y+w,T=v.target,S=T&&typeof T.className=="string"&&u(T)?d(T):"center";r(`${(V=l.value)==null?void 0:V.id}_curve_to`,{x:i.value.x,y:i.value.y},{x:C,y:x},n.value,S)}function h(v){const b=document.getElementById(v);b&&b.remove()}function p(){document.addEventListener("mousemove",c)}function m(){document.removeEventListener("mousemove",c)}function g(v){l.value=void 0,m()}function y(v,b){l.value=document.getElementById(v);const w=l.value.offsetParent,C=l.value.getBoundingClientRect(),x=w.getBoundingClientRect(),T=s(w.style.left)+(C.left-x.left),S=s(w.style.top)+(C.top-x.top),V=T+C.width/2,N=S+C.height/2;f(V,N,l.value),p()}return{drawFrom:y,eraseDrawingLine:h,finishToDraw:g,getAncherPointPosition:d,isAncherPoint:u}}const Du={id:{type:String,default:""},type:{type:String,default:""},modelValue:{type:Object},x:{type:Number,default:0},y:{type:Number,default:0},connection:{type:Array,default:[]}},ju=t.defineComponent({name:"FFlowNodeItem",props:Du,emits:[],setup(e,n){const o=t.ref(e.id),a=t.ref(e.modelValue),i=t.ref(),l=t.inject("use-drawing-bezier-composition"),{drawFrom:r,eraseDrawingLine:s,finishToDraw:u,getAncherPointPosition:d,isAncherPoint:f}=l,c=t.inject("use-bezier-curve-composition"),{connect:h}=c,p=t.inject("use-connections-composition"),{addConnection:m,getConnectionsOfNode:g}=p;new Map(e.connection);const y=t.computed(()=>({left:`${e.x}px`,top:`${e.y}px`}));function v(x,T){if(f(x)&&f(T)){const S=d(x),V=d(T);h(x.id,T.id,S,V);const N=x.id,k=T.id,I=N.split(/(-left-point|-right-point|-top-point|-bottom-point)/,1)[0],E=k.split(/(-left-point|-right-point|-top-point|-bottom-point)/,1)[0];m(I,N,E,k)}}function b(x){var T;document.removeEventListener("mouseup",b),u(x),s(`${(T=i.value)==null?void 0:T.id}_curve_to`),v(i.value,x.target)}function w(x,T){i.value=document.getElementById(x),r(x,T),document.addEventListener("mouseup",b),T.stopPropagation()}t.watch([()=>e.x,()=>e.y],()=>{const x=g(o.value);x.length&&x.forEach(T=>{const S=document.getElementById(T.from),V=document.getElementById(T.to);S&&V&&v(S,V)})});const C=t.computed(()=>({"node-content":!0}));return()=>t.createVNode("div",{id:o.value,class:"br-node",style:y.value},[t.createVNode("div",{id:`${o.value}-left-point`,class:"f-flow-ancher circle-left",onMousedown:x=>w(`${o.value}-left-point`,x)},null),t.createVNode("div",{id:`${o.value}-top-point`,class:"f-flow-ancher circle-top",onMousedown:x=>w(`${o.value}-top-point`,x)},null),t.createVNode("div",{id:`${o.value}-content`,class:C.value,style:"min-width:200px;min-height:200px;"},[a.value&&t.createVNode(Hi,{modelValue:a.value,"onUpdate:modelValue":x=>a.value=x},null)]),t.createVNode("div",{id:`${o.value}-right-point`,class:"f-flow-ancher circle-right",onMousedown:x=>w(`${o.value}-right-point`,x)},null),t.createVNode("div",{id:`${o.value}-bottom-point`,class:"f-flow-ancher circle-bottom",onMousedown:x=>w(`${o.value}-bottom-point`,x)},null)])}});function $u(e){const n=new Map,o=new Map;function a(r,s){const u=o.get(r)||[];u.filter(f=>s.from===f.from&&s.to===f.to).length>0||(u.push(s),o.set(r,u))}function i(r,s,u,d){const f=new Set(n.get(s)||[]);f.add(d),n.set(s,[...f]);const c={from:s,to:d,type:"Curve"};a(r,c),a(u,c)}function l(r){return o.get(r)||[]}return{addConnection:i,getConnectionsOfNode:l}}const Lu=t.defineComponent({name:"FFlowCanvas",props:_u,emits:[],setup(e,n){const o=t.ref(),a=Ou(),i=Bu(a),l=$u();t.provide("use-bezier-curve-composition",a),t.provide("use-connections-composition",l),t.provide("use-drawing-bezier-composition",i);const r=t.computed(()=>({transition:"transform 0.2s","background-color":"#F2F3F5",height:"100%",width:"100%",position:"relative"}));t.onMounted(()=>{o.value=e.modelValue});const s=t.ref(),u=t.ref(),d=t.ref(),f=t.ref(),c=t.ref();function h(g){const y=g.clientX-f.value,v=g.clientY-c.value;s.value&&s.value.position&&(s.value.position.x=u.value+y,s.value.position.y=d.value+v)}function p(){document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",p),s.value=void 0,f.value=void 0,c.value=void 0}function m(g,y){s.value=g,u.value=g.position.x,d.value=g.position.y,f.value=y.clientX,c.value=y.clientY,document.addEventListener("mousemove",h),document.addEventListener("mouseup",p)}return()=>t.createVNode("div",{class:"f-flow-canvas editorDiv flex-fill h-100"},[t.createVNode("div",{id:"svg-container",class:"f-struct-wrapper flex-fill",style:r.value},[o.value&&o.value.contents.map(g=>t.createVNode(ju,{modelValue:g.content[0],"onUpdate:modelValue":y=>g.content[0]=y,id:g.id,x:g.position.x,y:g.position.y,onMousedown:y=>m(g,y)},null))])])}});function qi(e){return typeof e=="string"&&e.startsWith("{")&&e.endsWith("}")?(e=e.replace(/'/g,'"'),{mappingFields:JSON.parse(e)}):{mappingFields:e}}const Ru=new Map([["appearance",rt.resolveAppearance],["mappingFields",(e,n,o)=>{if(n)return qi(n);const{mappingFields:a}=o;return qi(a)}],["uri",(e,n,o)=>{var a;return n?{uri:n}:{uri:(a=o==null?void 0:o.dataSource)==null?void 0:a.uri}}],["idField",(e,n,o)=>{var a;return n?{idField:n}:{idField:(a=o==null?void 0:o.dataSource)==null?void 0:a.idField}}]]),Au={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/lookup.schema.json",title:"lookup",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"lookup"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:"帮助"},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},textField:{description:"帮助显示文本字段",type:"string",default:""},mappingFields:{description:"帮助字段映射",type:"object",default:{}},uri:{type:"string",default:""},dataSource:{type:"object",default:null},displayType:{type:"string",default:"list"},"onUpdate:dataMapping":{type:"object",default:null},onClear:{type:"object",default:null},context:{type:"object",default:null},enableToSelect:{type:"boolean",default:!0},idValue:{type:"string",default:""},multiSelect:{type:"boolean",default:!1},separator:{type:"string",default:","},fitColumns:{type:"boolean",default:!0},enableFavorite:{type:"boolean",default:!1},enableUserData:{type:"boolean",default:!1},showSelections:{type:"boolean",default:!0},treeToList:{type:"boolean",default:!1},navTreeToList:{type:"boolean",default:!1},showNavigation:{type:"boolean",default:!0},dictPicking:{type:"object",default:null},dictPicked:{type:"object",default:null},enableSearchBar:{type:"boolean",default:!0},searchAnyField:{type:"boolean",default:!0},dialog:{type:"object",default:null},idField:{type:"string",default:"id"},pagination:{type:"object",default:null},allowFreeInput:{type:"boolean",default:!1},loadTreeDataType:{type:"string",default:"default"},onlySelectLeaf:{type:"boolean",default:!1},enableFullTree:{type:"boolean",default:!0},beforeLoadData:{type:"object",default:null},beforeSelectData:{type:"object",default:null},enableCascade:{type:"boolean",default:!1},showCascadeControl:{type:"boolean",default:!0},cascadeItems:{type:"object",default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:"string",default:"both"},expandLevel:{type:"number",default:0},enableClear:{type:"boolean",default:!0},openType:{type:"string",default:"Modal"},enableTitle:{type:"boolean",default:!1},showIncludeChildNodes:{type:"boolean",default:!0},includeChildNodesValue:{type:"boolean",default:!0}},required:["type"],ignore:["id","appearance","binding","visible"],events:{dictPicking:"帮助前事件",dictPicked:"帮助后事件",beforeSelectData:"数据选择确认前事件",beforeLoadData:"数据加载前事件",clear:"清空事件"}};function zu(e,n,o){return n}var Ui=(e=>(e.Both="both",e.Up="up",e.Down="down",e.Disable="disable",e))(Ui||{});const Fo=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Gi="";var ut=(e=>(e.List="LIST",e.Tree="TREELIST",e.ListList="NAVLIST",e.TreeList="NAVTREELIST",e.ListTree="NAVLISTTREE",e))(ut||{}),Mt=(e=>(e.default="default",e.all="all",e.async="async",e))(Mt||{});const bn="__lookup_active_tab__";var Ze=(e=>(e.dataList="datalist",e.favorite="favorite",e))(Ze||{});const Yi={showPageInfo:!0,enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1},Xi=Symbol("f_lookup-http-service_token");var Ji=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.Greater=2]="Greater",e[e.GreaterOrEqual=3]="GreaterOrEqual",e[e.Less=4]="Less",e[e.LessOrEqual=5]="LessOrEqual",e[e.Like=6]="Like",e[e.LikeStartWith=7]="LikeStartWith",e[e.LikeEndWith=8]="LikeEndWith",e[e.NotLike=9]="NotLike",e[e.NotLikeStartWith=10]="NotLikeStartWith",e[e.NotLikeEndWith=11]="NotLikeEndWith",e[e.Is=12]="Is",e[e.IsNot=13]="IsNot",e[e.In=14]="In",e[e.NotIn=15]="NotIn",e))(Ji||{}),ko=(e=>(e[e.Empty=0]="Empty",e[e.And=1]="And",e[e.Or=2]="Or",e))(ko||{});const Hu={showCloseButton:!0,showMaxButton:!0,draggable:!0,resizeable:!0,enableEsc:!0,rememberSize:!0};function Wu(){function e(n,o){const a={};return a.dictPicking=i=>o.call("dictPicking",[i,n]),a.beforeLoadData=i=>o.call("beforeLoadData",[i,n]),a.beforeSelectData=i=>o.call("beforeSelectData",[i,n]),a.dictPicked=i=>o.call("dictPicked",[i,n]),a}return{resolve:e}}const $n={id:{type:String,require:!0},uri:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!1},mappingFields:{type:Object,default:null},fitColumns:{type:Boolean,default:!0},columns:{type:Array,default:[]},idField:{type:String,default:"id"},textField:{type:String,defalut:"name"},data:{type:Array,default:[]},displayType:{type:String,default:ut.List},dialog:{type:Object,default:{title:""}},multiSelect:{type:Boolean,default:!1},showSelections:{type:Boolean,default:!0},separator:{type:String,default:","},pagination:{type:Object,default:Yi},enableClear:{type:Boolean,default:!0},inputType:{type:String,default:"text"},idValue:{type:String,default:""},dictPicking:{type:Function,default:null},dictPicked:{type:Function,default:null},beforeSelectData:{type:Function,default:null},beforeLoadData:{type:Function,default:null},enableSearchBar:{type:Boolean,default:!0},searchFields:{type:Array,default:[]},searchAnyField:{type:Boolean,default:!0},navigation:{type:Object,default:null},textChangeType:{type:String,default:"any"},showNavigation:{type:Boolean,default:!0},showIncludeChildNodes:{type:Boolean,default:!0},includeChildNodesValue:{type:Boolean,default:!0},enableMultiFieldSearch:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},navTreeToList:{type:Boolean,default:!1},loadTreeDataType:{type:String,default:Mt.default},enableToSelect:{type:Boolean,default:!0},customData:{type:Object,default:null},modelValue:{type:String,default:""},enableUserData:{type:Boolean,default:!1},userDataKey:{type:String,default:""},onReady:{type:Function,default:null},context:{type:Object,default:{}},placeholder:{type:String,default:""},loader:{type:Function,default:null},allowFreeInput:{type:Boolean,default:!1},onlySelectLeaf:{type:Boolean,default:!1},enableFullTree:{type:Boolean,default:!0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!0},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:String,default:"both"},expandLevel:{type:Number,default:0},openType:{type:String,default:"Modal"},enableTitle:{type:Boolean,default:!1}},Qi=rt.createPropsResolver($n,Au,Ru,zu),qu=Wu();function Ln(e){let n=[10,20,30,50,100];return e&&(typeof e=="string"&&(n=e.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(e)&&(n=e)),n.map(o=>({value:parseInt(o,10)})).sort((o,a)=>o.value-a.value)}const qe={convertFrom:(e,n)=>n==="multiSelect"||n==="enableTitle"?!!e.editor[n]:n==="separator"?e.editor[n]||",":n==="onlySelectLeaf"?e.editor[n]==null?!1:e.editor[n]:n==="loadTreeDataType"?e.editor[n]||"default":n==="placeholder"?e.editor.placeholder||"请选择":e.editor[n],convertTo:(e,n,o)=>{e.editor[n]=o,n==="multiSelect"&&!o&&(e.editor.enableCascade=!1),n==="openType"&&o==="Popup"&&(e.editor.showSelections=!1,e.editor.enableCascade=!1)}};function Uu(e){let n="form_group_"+Date.now();return e&&(n=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+n}function Gu(e,n){const{enablePager:o,pageSize:a,pageList:i}=n;e.pagination=e.pagination||{},Object.assign(e.pagination,{enable:o,sizeLimits:Ln(i).map(l=>l.value),size:a,showLimits:!0,showGoto:!1,mode:"server"})}const Ki={convertFrom:(e,n)=>{var o;return(o=e.editor[n])==null?void 0:o.displayName},convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0],{name:i,id:l,metadataContent:r,code:s}=a;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=`${i}(${s})`,e.editor.helpId=l;const{displayType:u,idField:d,textField:f}=r;e.editor.displayType=u,e.editor.dataSource.idField=d,e.editor.textField=f,e.editor.dataSource.type="ViewObject";const{pageInfo:c}=r.dataSource;Gu(e.editor,c);const{treeInfo:h}=u.toUpperCase()==="NAVTREELIST"?r.navigation:r.dataSource;if(h){const{onlySelectLeaf:p,loadDataType:m}=h;e.editor.loadTreeDataType="default",e.editor.onlySelectLeaf=p??!1}e.editor.dataSource.uri||(e.editor.dataSource.uri=Uu(e.id))}}},Yu={convertFrom:(e,n)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0];e.editor.dataSource.idField=a==null?void 0:a.bindingPath}}},Xu={convertFrom:(e,n)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0];e.editor.textField=a==null?void 0:a.bindingPath}}},Ju={convertFrom:(e,n)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,n,o)=>{e.editor.displayType=o}},Tt={convertFrom:(e,n)=>{var i;const o=e.editor.dialog||{};if(n==="title")return o[n]||Gi;if(e.editor.openType==="Modal"){if(n==="width")return(i=e.editor.displayType)!=null&&i.toUpperCase().startsWith("NAV")?o[n]||960:o[n]||590;if(n==="height")return o[n]||620;if(n==="navigatorWidth")return o[n]||320}else{if(n==="width")return o[n]||460;if(n==="height")return o[n]||380}if(n==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(n))return o[n]==null?!0:o[n]},convertTo:(e,n,o)=>{e.editor.dialog=e.editor.dialog||{},e.editor.dialog[n]=o}},Po={convertFrom:(e,n)=>{const o=e.editor.pagination||{};if(n==="enable"||n==="showLimits")return o[n]==null?!1:o[n];if(n==="sizeLimits"){const a=o[n];return Ln(a)}if(n==="size")return o[n]||20},convertTo:(e,n,o)=>{var a,i;if(e.editor.pagination=e.editor.pagination||{},n==="sizeLimits"){const l=o.map(s=>s.value);e.editor.pagination[n]=l;const r=((i=(a=e.editor)==null?void 0:a.pagination)==null?void 0:i.size)??20;l.includes(r)||(e.editor.pagination.size=l[0]);return}e.editor.pagination[n]=o}},Qu=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Ku=[{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Zi=Symbol("schema_repository_token");class er extends eo.InputBaseProperty{constructor(){super(...arguments);se(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});se(this,"numberEditor",{type:"number-spinner",useThousands:!1});se(this,"readonlyEditor",{...this.comboListEditor,editable:!0});se(this,"visibleEditor",{...this.comboListEditor,editable:!1});se(this,"requiredEditor",{...this.comboListEditor,editable:!1});se(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(o,a){const i=["validate"];return o.type==="form-group"&&i.push("dataPicking"),new eo.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(o,"Field",i)}getPropertyConfig(o,a,i="Card"){var y;const l=(y=o.binding)!=null&&y.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(o,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(o,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(o,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(o,["Const","Variable"],"allowFreeInput");const r=this.getBasicProperties(o,a,i),s=this.getBehaviorConfig(o),u=this.getAppearanceProperties(o,a),d=this.getLookupConfig(o),f=this.getEventPropConfig(o),c=this.getDialogPropertyConfig(o),h=this.getPageConfig(o.editor),p=this.getTreePropConfig(o.editor),m=this.getExpressionConfig(o,"Field"),g={basic:r,appearance:u,behavior:s,lookup:d,treeConfig:p,dialog:c,pager:h,expressions:m};return o.type==="form-group"&&(g.eventsEditor=f),{type:"object",categories:g}}getGridFieldEdtiorPropConfig(o){return this.getPropertyConfig(o,null,"Grid").categories}flattenTreeNodes(o){return o.reduce((a,i)=>{var l;return a.push(i),(l=i.children)!=null&&l.length&&a.push(...this.flattenTreeNodes(i.children)),a},[])}isSimpleStringField(){var s;const o=((s=this.designViewModelField)==null?void 0:s.path)||"";if(!o||!o.includes("."))return!0;const a=o.split("."),i=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(i!=null&&i.length))return!1;const l=i.find(u=>u.data.code===a[0]);if(!l)return!1;const r=[l,...this.flattenTreeNodes(l.children)];return!a.reduce((u,d,f)=>[...u,f?`${u[f-1]}.${d}`:d],[]).some(u=>{var d,f,c;return((c=(f=(d=r.find(h=>h.data.path===u))==null?void 0:d.data)==null?void 0:f.type)==null?void 0:c.$type)==="EntityType"})}getBehaviorConfig(o){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(a,i)=>{this.afterMutilEditorChanged(i,a)}}}changeBindingField(o,a){super.changeBindingField(o,a),o.editor.multiSelect=!1}getDisplayType(o){return o.displayType?o.displayType.toUpperCase():""}mapFieldsDisplayFormatter(o){return o&&o.length?o.map(a=>`${a.name}[${a.bindingPath}]`).join(","):""}getLookupConfig(o){const a=o.editor,i=()=>{const l=this.formSchemaUtils.getFormSchema().module.entity[0].id,r=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:a,formBasicInfo:r,viewModelId:l,dataSourceId:a.helpId}};return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(l,r)=>{if(l)switch(l.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(r,l);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:qe},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:qe,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:qe,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(a.multiSelect&&a.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:qe,editor:this.freeInputEditor,visible:!1},enableClear:{title:"启用清除按钮",type:"boolean",$converter:qe},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},displayFormatter:l=>l&&l.length?l.map(r=>`${r.name}(${r.code})`).join(","):"",viewOptions:this.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(l,r)=>`${l==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Zi,validateFunction:async l=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(l,o),onSubmitModal:l=>{if(l){delete a.mappingFields;const r=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(r.relativePath,l[0].data).then(s=>JSON.parse(s==null?void 0:s.metadata.content))}}},$converter:Ki},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:qe,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:fn.FieldSelectorRepositoryToken,beforeOpen:async({repository:l,notifyService:r})=>{var h;if(!(a==null?void 0:a.helpId))return r==null||r.warning({message:"请先配置数据源!"}),!1;const u=i(),f=new eo.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let c={};if(l){const p=await l.getData(u),m=await l.getLookupConditions(u);c={fieldList:p,conditionList:m}}return(h=f.variables)!=null&&h.forms&&(f.variables.forms.items=f.variables.forms.items.filter(p=>p.category==="remote")),{...c,...f}},onSubmitModal:async({loadingService:l,repository:r,conditions:s,originalConditions:u,FMessageBoxService:d})=>{if(r)try{const f=i(),c=await r.getLookupConditions(f)||[];return JSON.stringify(c)!==JSON.stringify(u.value)?(l==null||l.clearAll(),d.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{s.value=c,u.value=JSON.parse(JSON.stringify(s.value))},()=>{}),!1):(JSON.stringify(s.value)===JSON.stringify(u.value)||await r.saveFilterCondition(s.value,f,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return d==null||d.error("保存失败",""),!1}finally{l==null||l.clearAll()}}},visible:!!a.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ju,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!0,editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:fn.FieldSelectorRepositoryToken},$converter:Yu},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Xu,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:fn.FieldSelectorRepositoryToken}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:qe,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(l,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:fn.FieldSelectorRepositoryToken,displayFormatter:this.mapFieldsDisplayFormatter},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const l=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),r=this.schemaService.getPrimaryField();return r?l.filter(s=>s.data.bindingPath!==r):l},formatter:(l,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,displayFormatter:this.mapFieldsDisplayFormatter}}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:qe,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:qe,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:qe,title:"显示已选记录",type:"boolean",visible:!!a.multiSelect&&a.openType!=="Popup"},separator:{description:"多选分隔符",$converter:qe,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!a.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:qe,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:qe,title:"允许查询所有列",type:"boolean",visible:a.openType!=="Popup"&&a.enableSearchBar==null?!0:!!a.enableSearchBar},enableFavorite:{description:"启用收藏夹",$converter:qe,title:"启用收藏夹",type:"boolean",visible:a.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:qe,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:a.openType!=="Popup"}}}}showNavigatiorWidth(o){return this.getDisplayType(o).startsWith("NAV")&&o.openType!=="Popup"?o.showNavigation===void 0?!0:!!o.showNavigation:!1}getDialogPropertyConfig(o){var a,i,l,r;return{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",properties:{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",$converter:qe,refreshPanelAfterChanged:!0,editor:{...this.comboListEditor,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0},title:{description:"帮助标题",title:"标题",type:"string",$converter:Tt,visible:o.editor.openType!=="Popup"},width:{description:"窗口宽度,最小值:300px,最大值:3000px",title:"宽度",type:"number",refreshPanelAfterChanged:!0,$converter:Tt,editor:{...this.numberEditor,min:this.showNavigatiorWidth(o.editor)?520:300,max:9999}},height:{description:"窗口高度,最小值:200px,最大值:2000px",title:"高度",type:"number",$converter:Tt,editor:{...this.numberEditor,min:200,max:9999}},showNavigation:{description:"显示导航栏",$converter:qe,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:this.getDisplayType(o.editor).includes("NAV")&&o.editor.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",$converter:Tt,visible:this.showNavigatiorWidth(o.editor)&&o.editor.openType!=="Popup",editor:{...this.numberEditor,min:200,max:(((i=(a=o.editor)==null?void 0:a.dialog)==null?void 0:i.width)??960)-200}},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",$converter:Tt,refreshPanelAfterChanged:!0,visible:o.editor.openType!=="Popup"},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",$converter:Tt,visible:!!o.editor.enableUserData&&(((r=(l=o.editor)==null?void 0:l.dialog)==null?void 0:r.resizeable)??!0)&&o.editor.openType!=="Popup"},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",$converter:Tt,visible:o.editor.openType!=="Popup"},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",$converter:Tt,visible:o.editor.openType!=="Popup"},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",$converter:Tt,visible:o.editor.openType!=="Popup"}}}}showPagerProperty(o,a){const i=this.getDisplayType(o)!=="TREELIST"||o.treeToList;return a&&i?o.pagination&&o.pagination[a]:i}getPageConfig(o){var i,l,r,s;const a=!((i=o.pagination)!=null&&i.enable);return{hide:this.getDisplayType(o)==="TREELIST"||!o.helpId||a,description:"分页配置",title:"分页",parentPropertyID:"pagination",properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:!0,$converter:Po,visible:this.showPagerProperty(o)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",$converter:Po,refreshPanelAfterChanged:!0,visible:this.showPagerProperty(o,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{...this.numberEditor,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Ln((l=o.pagination)==null?void 0:l.sizeLimits),beforeSubmit:({notifyService:u,data:d})=>!d||!d.length?(u==null||u.warning({message:"每页显示条数不能为空!"}),!1):new Set(d.map(c=>parseInt(c.value,10))).size===d.length?!0:(u==null||u.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:this.showPagerProperty(o),$converter:Po,editor:{...this.comboListEditor,data:Ln((r=o.pagination)==null?void 0:r.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(s=o.pagination)==null?void 0:s.size}}}}}showLoadType(o){const a=this.getDisplayType(o);return(a==="TREELIST"||a==="NAVTREELIST")&&!o.treeToList&&!o.navTreeToList}isTree(o){return this.getDisplayType(o)==="TREELIST"&&!o.treeToList}getTreePropConfig(o){return{hide:this.getDisplayType(o)!=="TREELIST"&&this.getDisplayType(o)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:qe,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(o)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:qe,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(o)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:qe,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(o)},enableFullTree:{description:"启用构造完整树",$converter:qe,title:"构造完整树",type:"boolean",visible:this.showLoadType(o)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:qe,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(o)},enableCascade:{description:"启用级联选择",$converter:qe,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(o)&&!!o.multiSelect&&o.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:qe,title:"显示级联状态",type:"boolean",visible:!1},cascadeValue:{description:"缺省级联选择模式",$converter:qe,title:"缺省级联选择模式",type:"string",visible:!!o.enableCascade&&this.isTree(o),editor:{...this.comboListEditor,data:Fo,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:qe,title:"默认展开层级",type:"number",visible:this.showLoadType(o),editor:{...this.numberEditor,min:-1,max:99}}}}}getEventPropConfig(o){const a=this;let i=Qu;o.editor.openType==="Popup"&&(i=i.filter(s=>s.label!=="beforeSelectData"));const l=a.eventsEditorUtils.formProperties(o,a.viewModelId,i);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete u[a.viewModelId],d&&a.eventsEditorUtils.saveRelatedParameters(u,a.viewModelId,d.events,d);const f=a.designViewModelUtils.getDgViewModel(a.viewModelId);f&&a.designViewModelField&&f.changeField(a.designViewModelField.id,{valueChanging:u.fieldValueChanging,valueChanged:u.fieldValueChanged})}}}async checkSameBESource(o,a){var i,l,r,s,u;if(o&&((i=a==null?void 0:a.editor)!=null&&i.helpId)&&!a.isRtcControl){if(o.data.id===a.editor.helpId)return!0;const d=await this.metadataService.getPickMetadata("",o.data).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:a.editor.helpId}).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),c=(l=d==null?void 0:d.dataSource)==null?void 0:l.sourceType,h=(r=f.dataSource)==null?void 0:r.sourceType,p=(s=d==null?void 0:d.dataSource)==null?void 0:s.sourceId,m=(u=f==null?void 0:f.dataSource)==null?void 0:u.sourceId;if(c==="BE"&&h==="BE"&&p!==m)return new pn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}function Zu(e,n){function o(a,i){const l=e.schema;return new er(a,n).getPropertyConfig(l,i)}return{getPropsConfig:o}}const ed=t.defineComponent({name:"FLookupDesign",props:$n,emits:[],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=t.inject("designer-host-service"),l=Zu(a,i),r=Zn.useDesignerComponent(o,a,l),s='<i class="f-icon f-icon-lookup"></i>',u='<i class="f-icon f-icon-arrow-chevron-down"></i>',d=t.computed(()=>e.openType==="Popup"?"Popup":"Modal"),f=t.computed(()=>d.value==="Popup"?u:s);return t.onMounted(()=>{o.value.componentInstance=r}),n.expose(r.value),()=>t.createVNode("div",{class:"f-lookup-design",ref:o},[t.createVNode(to,{ref:o,buttonContent:f.value,readonly:!0,editable:!1,placeholder:e.placeholder},null)])}});function Rt(e,n){const{lookupOptions:o}=n;function a(g){return{...Yi,...g}}function i(){return{enableSelectRow:!0,multiSelect:o.multiSelect,showCheckbox:o.multiSelect,multiSelectMode:"OnCheckAndClick"}}function l(){return{fitColumns:e.fitColumns,fitMode:"percentage",resizeColumn:!0}}function r(){const{displayType:g}=n.lookupOptions;return typeof g=="string"&&g in ut?!1:g.toLowerCase().startsWith("nav")}function s(){const{displayType:g,treeToList:y}=n.lookupOptions;return(g.toLowerCase()===ut.Tree.toLowerCase()||g.toLowerCase()===ut.ListTree.toLowerCase())&&!y}function u(){const{displayType:g,navTreeToList:y}=n.lookupOptions;return g.toLowerCase()===ut.TreeList.toLowerCase()&&!y}function d(){const{displayType:g,navTreeToList:y}=n.lookupOptions,v=g.toLowerCase();return v===ut.ListList.toLowerCase()||v===ut.ListTree.toLowerCase()||y}function f(){var v;return o.dialog?{width:((v=o.dialog)==null?void 0:v.navigatorWidth)||320,minWidth:200}:{width:320,minWidth:200}}function c(g){const{loadTreeDataType:y}=o;return y===Mt.all||y==="default"&&(g==null?void 0:g.loadDataType)==="all"}function h(g){return(g==null?void 0:g.layerType)==="pathcode"}function p(){return o.enableCascade&&o.multiSelect}function m(){return e.openType==="Popup"}return{checkPaination:a,checkMultiSelect:i,checkColumnOptions:l,isDoubleList:r,getNavigationSize:f,isTreeList:s,navIsTreeList:u,navIsList:d,isLoadAll:c,isPathCodeTree:h,isEnableCascadeCheck:p,isDropdownMode:m}}function tr(e,n,o){var l;const a=t.ref(e.searchFields||[]),i=t.ref(((l=e.navigation)==null?void 0:l.searchFields)||[]);return t.watch(()=>n==null?void 0:n.searchFields,r=>{a.value=r}),t.watch(()=>o==null?void 0:o.searchFields,r=>{i.value=r}),{searchFieldItems:a,navSearchFieldItems:i}}function td(e){const n=t.reactive({}),o=t.reactive({}),a=t.reactive({}),i=t.reactive({}),l=t.reactive({}),r=t.ref([]),s=t.ref(),u=t.reactive({}),d=t.ref(!1),f=["displayType","treeToList","navTreeToList","showSelections","showNavigation","multiSelect","mappingFields","loader","idField","textField","userDataKey","dialog","expandLevel","treeInfo","navTreeInfo","onlySelectLeaf","loadTreeDataType","uri","enableFullTree","cascadeValue","showCascadeControl","enableCascade"];function c(){f.forEach(h=>{u[h]=e[h]})}return c(),{pageInfoState:n,lookupState:o,navigationState:a,queryState:i,searchState:l,selectionState:r,unSelectDataId:s,lookupOptions:u,searchValueChanged:d}}const Cn=t.ref(),Vt="F_LOOKUP_HTTP_COMPOSITION_TOKEN";function nd(e,n){const o=t.inject("FLoadingService"),a=t.inject(Xi),i=td(e),{pageInfoState:l,lookupState:r,navigationState:s,lookupOptions:u,searchValueChanged:d}=i,{searchFieldItems:f,navSearchFieldItems:c}=tr(e,r,s),h=t.ref(e.idValue),p=t.ref(!1),m=()=>{var D;const j=(D=u.displayType)==null?void 0:D.toUpperCase();return j===ut.Tree||j===ut.TreeList},g=(j,D=!1)=>{if(j){const{layerType:O,dataField:L,parentField:z,pathField:G,layerField:J,isDetailField:te,loadDataType:W}=j,q={layerType:O,dataField:L,parentField:z,pathField:G,layerField:J,isDetailField:te,loadDataType:W},{onlySelectLeaf:R,loadTreeDataType:H}=u;q.onlySelectLeaf=R,q.loadDataType=H,D?u.navTreeInfo=Object.assign(u.navTreeInfo||{},q):u.treeInfo=Object.assign(u.treeInfo||{},q)}};function y(j,D){if(D==null||!D.trim())return[];const O=Array.from(new Set(D.trim().split(" ").filter(G=>G.trim())));if(!j||!O.length)return[];const L=(j||[]).map((G,J)=>{const te=O.map((W,q)=>({filterField:G.value,value:W,lbracket:"",rbracket:"",relation:ko.And,compare:Ji.Like}));return te.length&&(te.length>1&&(te[0].lbracket="(",te[te.length-1].rbracket=")"),te[te.length-1].relation=ko.Or),te}).filter(G=>G.length);let z=[];return L&&L.length&&(z=Fe.flatten(L),z.length>1&&(z[0].lbracket+="(",z[z.length-1].rbracket+=")"),z[z.length-1].relation=0),z}function v(){let{expandLevel:j}=u;return j&&!Fe.isNaN(j)&&(j=j<-1?-1:j),j}function b(j,D){const O={};O.category=D;let L=null,z=null;if(j!=null&&j.search){const{field:G,value:J,isNavigation:te,type:W}=j.search,q=W||"like";if(J&&(O.searchValue=J.trim()),O.searchField=G?G.trim():"*",O.searchType=q,te&&(O.category="navsearch"),!e.enableMultiFieldSearch&&O.searchField==="*"){const R=te?c.value:f.value,H=y(R,J);H&&H.length&&(te?L=H:z=H),J===""&&O.category==="search"&&!z&&!L&&(O.category="all")}}return m()&&(O.layerNum=v()),{searchParam:O,navSearchConditions:L,searchConditions:z}}function w(j){var O,L;if(j==="fav")return{pageIndex:1,pageSize:500};let D="default";return j==="navsearch"&&(D="navigation"),{pageIndex:((O=l[D])==null?void 0:O.index)||1,pageSize:((L=l[D])==null?void 0:L.size)||20}}function C(j){const D={},O=(j==null?void 0:j.action)||"all",{searchParam:L,navSearchConditions:z,searchConditions:G}=b(j,O);G&&(D.searchConditions=G),z&&(D.navSearchConditions=z),D.enableFullTree=e.enableFullTree,D.searchValue=JSON.stringify(L);const{pageIndex:J,pageSize:te}=w(O);return D.pageIndex=J,D.pageSize=te,D.treeToList=e.treeToList,D.navTreeToList=e.navTreeToList,u.loadTreeDataType===Mt.default?D.loadTreeDataType="default":D.loadTreeDataType=u.loadTreeDataType===Mt.all?"loadall":"layerload",j!=null&&j.relationFilter&&(D.relationFilter=[...j.relationFilter]),j!=null&&j.navNodePathCode&&(D.navPathCode=j.navNodePathCode),j.selectedInfo&&(D.selectedInfo=j.selectedInfo),D.customData=t.toRaw(Cn.value),D}function x(j){return j==null?void 0:j.map(D=>(D.resizable=!0,D))}function T(j,D){return j.map(O=>{const L=D==null?void 0:D.find(z=>z.field.toLowerCase()===O.value.toLowerCase());return L&&(O.label=L.title),O})}function S(j){j.columns&&(j.columns=x(j.columns),j.searchFields&&(j.searchFields=T(j.searchFields,j.columns))),j.navigation&&j.navigation.columns&&(j.navigation.columns=x(j.navigation.columns),j.navigation.searchFields&&(j.navigation.searchFields=T(j.navigation.searchFields,j.navigation.columns)))}function V(){return u.loader||a&&a.getData.bind(a)}function N(j){const D=V();return D?D(u.uri,j).then(O=>(S(O),d.value=!1,O)):new Promise((O,L)=>{O({columns:[...e.columns],items:[...e.data],searchFields:[...e.searchFields],navigation:{...e.navigation}})})}function k(j){const D=v();return D===-1?!0:D===0?!1:j<=D}function I(j,D=!1,O="layer"){j.forEach(L=>{var z;L.collapse=D?!1:u.loadTreeDataType==="all"?!k(Ie.resolveField(L.data,O)):!(L.expanded??!0),L.hasChildren=!L.leaf,(z=L.children)!=null&&z.length&&I(L.children,D,O)})}async function E(j,D){var z;const O=C(j),L=o==null?void 0:o.show();try{let G=await N(O);if(u.displayType!==G.displayType&&j.action!=="navsearch"&&(u.displayType=G.displayType),m()){const{items:J,treeInfo:te}=G.navigation||G;if(u.loadDataType===Mt.default&&(u.loadTreeDataType=(te==null?void 0:te.loadDataType)||Mt.all),J!=null&&J.length&&te){const{dataField:W,layerField:q}=te;I(J,!1,`${W}.${q}`)}}e.beforeLoadData&&(G=await e.beforeLoadData({data:G})),D(G)}finally{(z=L==null?void 0:L.value)==null||z.close()}}function _(j){p.value=j}function M(j,D){if(!D)return"";const{dataField:O,pathField:L}=D;return L?O?j[O][L]:Ie.resolveField(j,L):""}function F(j){const D=[];return(j.selectable||j.selectable===void 0)&&D.push(j),j.children&&j.children.length&&j.children.forEach(O=>{D.push(...F(O))}),D}function P(j,D=!1){var G;if(!(j!=null&&j.length))return j;const O=D?(G=u.navigation)==null?void 0:G.treeInfo:u.treeInfo,{dataField:L,layerField:z}=O||{};return L&&z&&I(j,!0,`${L}.${z}`),j}function B(){try{const j=h.value;return j!==""&&j!=null?j:""}catch(j){return console.error("Error in getIdValues:",j),""}}function $(){let j=B()||[];return Array.isArray(j)||(j=(""+j).split(e.separator)),{selectedIds:j,selected:!0}}return{includeChilds:p,updateIncludeChilds:_,idValues:h,getData:N,loadData:E,updateSearchFieldTitle:T,getPathCode:M,getChildNodes:F,lookupStates:i,httpService:a,lookupRequest:V,expandAllNodes:P,getIdQueryParams:$,setTreeInfo:g,getFieldValue:Ie.resolveField}}function nr(e,n){t.watch(()=>e.pagination,a=>{n.default=a}),t.watch(()=>{var a;return(a=e.navigation)==null?void 0:a.pagination},a=>{n.navigation=a});function o(a,i=!1){a&&(i?n.navigation={...n.navigation,...a}:n.default={...n.default,...a})}return{updatePageInfo:o}}const Rn="F_LOOKUP_USER_DATA_SERVICE";function od(e,n){const o=t.inject("FLoadingService",null),{lookupStates:a,lookupRequest:i,httpService:l}=n,{lookupOptions:r}=a,s=t.computed(()=>{const m=r.userDataKey||e.id;return m?Ie.encrypt(m):""}),u=t.reactive({key:s.value,data:{}});function d(){return l?l.getSettings(u.key).then(m=>(m&&m.textValue?u.data=JSON.parse(m.textValue):u.data={},e.enableUserData||(u.data.tabIndex=Ze.dataList),m)):Promise.resolve()}function f({width:m,height:g}){var y;u.data.size=((y=u.data)==null?void 0:y.size)||{},u.data.size={width:m,height:g}}function c(m=!1){if((e.enableUserData||m)&&l){const{key:g,data:y}=u,v={configkey1:g,configkey2:"",configkey3:"",textvalue:JSON.stringify(y)};return l==null?void 0:l.updateSettings(g,v)}return Promise.resolve()}function h(m){const g={category:"fav",favoriteIds:m.favoriteIds};return{searchValue:JSON.stringify(g),pageIndex:1,pageSize:500,treeToList:r.treeToList}}function p(){var v;const m=h({favoriteIds:(v=u.data)==null?void 0:v.favorites}),g=o==null?void 0:o.show(),y=i();return y?y(r.uri,m).then(b=>{var w;return(w=g.value)==null||w.close(),u.favoriteItems=b&&b.items||[],b}):Promise.resolve()}return{userDataState:u,setDialogSize:f,saveUserData:c,getFavoriteData:p,getUserData:d}}const nn=Symbol("FARRIS_LOOKUP_LOCALES");function ad(e){const{t:n}=Ge.useI18n();function o(d,f,c){return d===f?n(c):d}const a=o(e.placeholder,"请选择","lookup.placeholder"),i={datalist:n("lookup.datalist")||"数据列表",favorite:n("lookup.favorites")||"收藏夹"},l={ok:n("lookup.okText")||"确定",cancel:n("lookup.cancelText")||"取消",clear:n("lookup.selectedInfo.clear")||"取消已选",addFav:n("lookup.favoriteInfo.addFavTitle")||"收藏",removeFav:n("lookup.favoriteInfo.cancelFavTitle")||"取消收藏",selectionTotal:d=>n("lookup.selectedInfo.total",[d])},r={clearSelections:n("lookup.selectedInfo.confirm")||"您确认要取消所有选中记录吗?",addedFavSuccess:n("lookup.favoriteInfo.addFav")||"已添加到收藏夹。",cancelFavSuccess:n("lookup.favoriteInfo.cancelFav")||"已从收藏夹中移除。",mustChoosAdatarow:n("lookup.mustChoosAdatarow")||"请选择一条数据。",mustWriteSomething:n("lookup.mustWriteSomething")||"请输入关键字后查询。"},s={includechildren:n("lookup.includechildren")||"包含下级",both:n("lookup.cascade.enable")||"同步选择",up:n("lookup.cascade.up")||"包含上级",down:n("lookup.cascade.down")||"包含下级",disable:n("lookup.cascade.disable")||"仅选择自身"};return{searchColumns:{allColumns:n("lookup.allColumns")||"所有列",anyFields:n("lookup.anyFields")||"全部"},placeholder:a,tree:s,messages:r,tabs:i,buttons:l}}function Eo(e,n){const o=t.inject(pn.F_NOTIFY_SERVICE_TOKEN),a=t.inject(Rn),i=t.inject(nn),{userDataState:l}=a;l.data=l.data||{};const r="_favorite_",s=t.ref(!1);function u({id:v,data:b},w="add"){var x,T;if(v==null&&v==="")return;const C=v;l.data.favorites=((x=l.data)==null?void 0:x.favorites)||[],l.favoriteItems=l.favoriteItems||[],w==="add"?(s.value=!1,l.data.favorites=Array.from(new Set([...((T=l.data)==null?void 0:T.favorites)||[],C])),l.favoriteItems=[...l.favoriteItems,b]):(s.value=!0,l.data.favorites=l.data.favorites.filter(S=>S!==C),l.favoriteItems=l.favoriteItems.filter(S=>S[n]!==C)),a==null||a.saveUserData(!0).then(S=>{const V=w==="add"?i.messages.addedFavSuccess:i.messages.cancelFavSuccess;o==null||o.success({message:V,position:"top-center"})})}function d(v){return v?v.raw[n]:""}const f=t.computed(()=>v=>{var w,C;const b=d(v);return(C=(w=l.data)==null?void 0:w.favorites)==null?void 0:C.includes(b)});function c(v,b,w){v.stopPropagation();const C=d(b);u({id:C,data:b.raw},f.value(b)?"remove":"add")}const h=v=>f.value(v)?i.buttons.removeFav:i.buttons.addFav,p=(v,b)=>t.createVNode("button",{type:"button",onClick:w=>{c(w,b)},class:["btn btn-link f-icon f-icon-star-outline p-0",{"f-icon-star":f.value(b)}],style:"color: #ffbd8c;",title:h(b)},null),m=(v,b)=>b.disabled?"":p(v,b),g={field:r,title:"",width:50,fixed:"right",align:"center",formatter:p};function y(v,b,w=!1){const C=Fe.cloneDeep(b);e.enableFavorite&&(g.formatter=w?m:p,C.push(g)),v==null||v.updateColumns(C)}return{favorite:g,removeFavoriteItem:s,setColumns:y}}function Mo(e,n,o,a){const{selectionState:i,unSelectDataId:l,lookupOptions:r}=o,s=t.computed(()=>!(i.value&&i.value.length));a&&t.watch(()=>a.value,(u,d)=>{var f;if(u===Ze.dataList&&u!==d&&!s.value){const c=i.value.map(h=>h[r.idField]);(f=n.value)==null||f.selectItemByIds(c)}}),t.watch(s,(u,d)=>{var f;u&&((f=n.value)==null||f.clearSelection())}),e.showSelections&&r.multiSelect&&t.watch(l,u=>{var d;u&&((d=n.value)==null||d.unSelectItemByIds(u))})}const on=Symbol("LOOKUP_SELECTIONS_MANAGER");function or(e,n){const{selectionState:o,unSelectDataId:a,lookupOptions:i}=n,l=t.computed(()=>i.idField);function r(v){return v[l.value]}function s(){let v=new Map;return o.value&&o.value.length&&(v=new Map(o.value.map(b=>[b[l.value],b]))),v}function u(){o.value=[]}function d(){return o.value||[]}function f(){return o.value.map(v=>v[l.value])}function c(v){if(!v)return;if(!l.value){console.error("idField is required");return}const b=Array.isArray(v)?v:[v],w=s();b.forEach(C=>{w.delete(C)}),o.value=Array.from(w.values()),a.value=b}function h(v){return s().has(v)}function p(v,b=!0){if(!v)return;if(!l.value){console.error("idField is required");return}const w=Array.isArray(v)?v:[v];if(!w.length)return;if(!w.every(T=>l.value in T)){console.error("Some items do not have the specified idField:",l.value);return}const C=w.map(T=>T[l.value]);if(!i.multiSelect){if(C.length&&h(C[0]))return;u()}const x=s();if(b){const T=new Map(w.map(S=>[S[l.value],S]));C.forEach(S=>{x.has(S)||x.set(S,T.get(S))})}else C.forEach(T=>{x.delete(T)});o.value=Array.from(x.values())}function m(v){if(!v||!v.length)return;const b=v.map(w=>w.data);p(b)}function g(v){if(v){const b=v.raw[l.value];c(b)}}function y(v){!v||!v.length||c(v)}return{updateSelections:p,clearSelections:u,getSelectionIds:f,getSelections:d,unSelectionsByIds:c,selectTreeNodes:m,unSelectTreeNode:g,unSelectTreeNodes:y,isSelected:h,getPrimaryKey:r}}function ar(e,n){const{getSelectionIds:o}=or(e,n),{lookupOptions:a}=n;function i(s,u){s==null||s.updateDataSource(u||[])}function l(s){const u=o();if(u&&u.length){if(a.multiSelect){s==null||s.selectItemByIds(u);return}s==null||s.activeRowById(u[0])}}function r(s,u){i(s,u),l(s)}return{loadData:i,selectItemByIds:l,loadAndSelect:r}}function ir(e,n,o){const a=t.inject(bn,t.ref(Ze.dataList)),i=t.inject(Vt),l=t.inject(on),{lookupStates:r,loadData:s,includeChilds:u,getPathCode:d,getChildNodes:f}=i,{lookupState:c,navigationState:h,pageInfoState:p,searchState:m,lookupOptions:g}=r,{checkPaination:y,checkMultiSelect:v,checkColumnOptions:b,navIsTreeList:w,isLoadAll:C,isPathCodeTree:x}=Rt(e,r),{updatePageInfo:T}=nr(e,p),{updateSelections:S,isSelected:V,getPrimaryKey:N}=l,{loadAndSelect:k}=ar(e,r),I=y(e.pagination),E=v(),_=b(),M=t.ref(),F=t.ref([]),{navSelectedItems:P,getNavigationIdField:B,getRelationFilter:$}=o;T(I);const j=t.ref(p.default),{setColumns:D}=Eo(e,g.idField);t.watch(()=>p.default,Q=>{var oe;j.value=Q,(oe=M.value)==null||oe.updatePagination(Q)}),Mo(e,M,i.lookupStates,a);function O(Q,oe,X){const ne={total:oe};if(X){const{pageIndex:ie,pageSize:we,enablePager:le,pageList:de}=X;Object.assign(ne,{index:ie,size:we,enable:le})}else ne.enable=!1;T(ne),k(M.value,Q||[])}const L=t.computed(()=>{var ie;if(!((ie=P.value)!=null&&ie.length)||!w())return null;const Q=P.value,oe={relationFilter:$(Q)};if(!u.value)return oe;const{treeInfo:X}=h,ne={action:"navAllChildren",...oe};return x(X)?Object.assign(ne,{navNodePathCode:d(Q[0].data,X)}):ne}),z=t.watch([()=>c==null?void 0:c.columns,()=>c==null?void 0:c.items,()=>c==null?void 0:c.pageInfo,()=>c==null?void 0:c.total,()=>c==null?void 0:c.selectedData],([Q,oe,X,ne,ie])=>{M.value&&(Q&&D(M.value,Q),ie&&ie.length&&S(ie),oe&&O(oe,ne||0,X))});t.watch(()=>e.idValue,Q=>{F.value=Q.split(e.separator)});function G(Q){if(Q&&Q.length&&!g.multiSelect){const oe=N(Q[0]);if(V(oe))return}S(Q),n.emit("selectionsChanged",{items:Q})}function J(Q){S(Q==null?void 0:Q.raw,!1)}function te(){const Q={search:m.default,action:"list"};e.openType==="Modal"&&L.value&&Object.assign(Q,L.value),s(Q,oe=>{O(oe.items,oe.total||0,oe.pageInfo)})}const W=Fe.throttle(()=>{T({index:1}),te()},200),q=t.watch(()=>P==null?void 0:P.value,Q=>{if(g.uri){W();return}const oe=Q.map(X=>X[B()]);n.emit("navSelectionsChanged",{items:Q,ids:oe})}),R=t.watch(()=>m.default,Q=>{if(g.uri){W();return}n.emit("search",Q)}),H=t.watch(()=>u.value,()=>{if(g.uri&&P.value&&P.value.length){W();return}});function A(){z(),q(),R(),H()}t.watch(()=>g.displayType,Q=>{Q.toLowerCase()==="treelist"&&A()});function U({pageSize:Q,pageIndex:oe}){var ie;let X=oe;((ie=j.value)==null?void 0:ie.size)!==Q&&(X=1);const ne={size:Q,index:X,isNavigation:!1};if(T(ne),g.uri){te();return}n.emit("pageSizeChanged",ne)}function K(){return t.createVNode(In.FDataGrid,{ref:M,class:"lookup-datagrid",pagination:j.value,summary:{enable:!1},columnOption:_,idField:g.idField,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:E,selectionValues:F.value,onSelectionChange:G,onUnSelectItem:J,onChanged:U},null)}return{datagridRef:M,selectionValues:F,renderDataGrid:K,unwatches:A}}const wn=Symbol("LOOKUP_TREEROW_OPTIONS"),rr={cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1},collapseField:"collapse",hasChildrenField:"hasChildren"};function lr(e,n=!1){function o(a){(a.raw.addtional||a.raw.selectable===!1)&&(a.disabled=!0);const i=n?e.navTreeInfo:e.treeInfo;return i!=null&&i.onlySelectLeaf&&(a.disabled=!a.raw.leaf),a}return{customRowStatus:o}}function sr(e,n){const{lookupState:o,lookupOptions:a}=e;function i(y,v,b){return y.reduce((w,C)=>{var x;if(C.parents=[],v){const T=Fe.get(v.data,a.idField);C.parent=v,C.parents=[...b||[],T]}return C.id=Fe.get(C,a.idField),w.push(C),(x=C.children)!=null&&x.length&&w.push(...i(C.children,C,C.parents)),w},[])}function l(y){var v;return(v=o==null?void 0:o.flattenTreeNodes)==null?void 0:v.find(b=>b.id===y)}function r(y){var v;return((v=o==null?void 0:o.flattenTreeNodes)==null?void 0:v.filter(b=>{var w;return(w=b.parents)==null?void 0:w.includes(y)}))??[]}function s(y){var b;if(!y)return[];const v=l(y);return((b=v==null?void 0:v.parents)==null?void 0:b.map(w=>l(w)))??[]}function u(y){var C;if(!y)return[];const v=l(y),b=((C=v==null?void 0:v.parents)==null?void 0:C.map(x=>l(x)))??[],w=r(y);return[...b,...w]}function d(y,v=!0){const b=s(y).filter(C=>{var x;return!((x=C.children)!=null&&x.some(T=>{var S;return(S=e.selectionState.value)==null?void 0:S.some(V=>V[a.idField]===T.id)}))}),w=v?[]:r(y);return b.concat(w)}function f(y,v,b=!0){var C;const w={down:()=>r(y),up:()=>b?s(y):d(y),both:()=>b?u(y):d(y,!1)};return((C=w[v])==null?void 0:C.call(w))??[]}function c(y,v={},b=!1){const{field:w="*",value:C=""}=v,x=!!C,{layerType:T,dataField:S,pathField:V,layerField:N}=b?a.navTreeInfo:a.treeInfo,k=T==="parentId",I={category:b?"navchildren":"children",searchField:w,searchValue:C,searchType:"like"};if(k)I.parentId=y.raw.id;else{const _=y.raw[S];I.parentPath=Fe.get(_,V),I.parentLayer=Fe.get(_,N)}const E={searchValue:"",customData:Cn.value,enableFullTree:a.enableFullTree,loadTreeDataType:a.loadTreeDataType==="all"?"loadall":"layerload"};return x&&(E.enableFullTree=!1,E.loadTreeDataType="layerload",k&&(I.searchValue="",I.searchField="*")),E.searchValue=JSON.stringify(I),E}function h(y,v=!1){const{isEnableCascadeCheck:b}=n,{layerType:w}=v?a.navTreeInfo:a.treeInfo,C=a.loadTreeDataType!=="all"&&w==="pathcode"&&b()&&(a.cascadeValue==="both"||a.cascadeValue==="down");return y?y.data&&!y.leaf&&C:C}function p(y){const{dataField:v,pathField:b}=a.treeInfo,w=y.data[v],C=Fe.get(w,b);return{searchValue:JSON.stringify({category:"allChildren"}),parentsIds:[C],customData:Cn.value}}function m(y,v){let b=y,w=null;for(const C of v){const x=b.find(T=>T.data.id===C);if(!x)return null;w=x,b=x.children||[]}return w}function g(y,v,b){var V;if(!b)return;const w=l(v),C=[...(w==null?void 0:w.parents)??[],v],x=(y??[]).map(N=>({...N,hasChildren:!N.leaf,parents:[...C]})),T=m(o.flattenTreeNodes||[],C);T&&(T.children=[...x],(V=o.flattenTreeNodes)==null||V.push(...x));const{isDropdownMode:S}=n;t.nextTick(()=>{var I;if(b.addChildrenToNode(x,v),S())return;const N=((I=e.selectionState.value)==null?void 0:I.map(E=>E[a.idField]))??[],k=x.filter(E=>N.includes(E.id)).map(E=>E.id);k.length&&b.selectItemByIds(k)})}return{flattenTreeNodes:i,getParents:s,getChildren:r,getParentsAndChildren:u,getTreeNodeWithCascadeValue:f,buildGetChildrenQueryParams:c,needGetAllChildNodes:h,buildGetAllChildrenQueryParams:p,loadChildNodes:g}}function cr(e,n){const o=t.inject(bn,t.ref(Ze.dataList)),a=t.inject(Vt),{lookupStates:i}=a,{lookupState:l,searchState:r,lookupOptions:s}=i,u=t.inject(wn),d=t.inject(on),f=Rt(e,i),{checkMultiSelect:c,checkColumnOptions:h,isEnableCascadeCheck:p}=f,{setColumns:m}=Eo(e,s.idField),{selectTreeNodes:g,unSelectTreeNode:y,unSelectTreeNodes:v,updateSelections:b,getSelectionIds:w}=d,C=c(),x=h(),T=t.ref(),S=t.ref([]),{loadAndSelect:V}=ar(e,i),{loadData:N,expandAllNodes:k,getData:I}=a,{flattenTreeNodes:E,getTreeNodeWithCascadeValue:_,buildGetChildrenQueryParams:M,needGetAllChildNodes:F,buildGetAllChildrenQueryParams:P,loadChildNodes:B}=sr(i,f);function $(R,H=!1){H&&(R=k(R)),l.flattenTreeNodes=E(R||[]),V(T.value,R||[])}Mo(e,T,i,o);const j=t.watch([()=>l==null?void 0:l.columns,()=>l==null?void 0:l.items,()=>l==null?void 0:l.pageInfo,()=>l==null?void 0:l.total,()=>l==null?void 0:l.selectedData],([R,H,A,U,K])=>{T.value&&(K&&K.length&&b(K),R&&m(T.value,R,!0),$(H||[],l.action==="search"))});function D(R,H=!0){const{cascadeValue:A}=s;return p()&&A!==Ui.Disable?_(R,A,H).filter(K=>K.selectable||K.selectable===void 0).map(K=>K.id):[]}function O(R){g(R),n.emit("selectionsChanged",{items:R})}function L(R){y(R);const H=Fe.get(R.raw,s.idField),A=D(H);if(F(R.raw)){const U=P(R.raw);I(U).then(K=>{const oe=(K.items||[]).filter(ne=>!ne.addtional&&(ne.selectable||ne.selectable===void 0));oe&&oe.length&&g(oe);const X=(oe||[]).map(ne=>ne.id);v([H,...A,...X])})}else v([H,...A])}function z(R){const H=Fe.get(R.raw,s.idField),A=D(H);if(A.length&&T.value.selectItemByIds([H,...A]),F(R.raw)){const U=P(R.raw);I(U).then(K=>{const oe=(K.items||[]).filter(X=>!X.addtional&&(X.selectable||X.selectable===void 0));oe&&oe.length&&g(oe)})}}function G(R="list"){N({search:r.default,action:R},H=>{$(H.items,R==="search")})}const J=t.watch(()=>r.default,R=>{if(s.uri){G("search");return}n.emit("search",R)});function te(){j(),J()}t.watch(()=>s.displayType,R=>{R.toLowerCase()!=="treelist"&&te()});function W(R){if(T.value.hasChildren(R))return Promise.resolve();const H=R.raw.id,A=M(R,r.default);return I(A).then(U=>{B((U==null?void 0:U.items)??[],H,T.value)})}function q(){return t.createVNode(Qt.FTreeGrid,{class:"lookup-treegrid",ref:T,fit:!0,data:e.data,idField:s.idField,columns:e.columns,rowNumber:{enable:!1},columnOption:x,selection:C,showBorder:!0,virtualized:!0,displayField:"code",rowOption:u,hierarchy:rr,onSelectionChange:O,onUnSelectItem:L,onSelectItem:z,loadData:W},null)}return{treegridRef:T,selectionTreeValues:S,renderTreeGrid:q,unwatches:te}}const id={fields:{type:Array,default:()=>[]},showAllColumns:{type:Boolean,default:!0},isNavigation:{type:Boolean,default:!1},id:{type:String,default:""}},rd=t.defineComponent({name:"FLookupSearchBar",props:id,emits:["search"],setup(e,n){const o='<i id="'+e.id+'-icon-search" class="f-icon f-icon-search"></i>',a=t.inject(Vt),{queryState:i}=a.lookupStates,l=t.ref(e.fields||[]),r=t.ref(""),s=t.ref(i.value),u=t.ref(e.isNavigation),d=t.ref(),f=t.computed(()=>({field:r.value,value:s.value,isNavigation:u.value}));function c(){if(!l.value.length)return;let y="";e.showAllColumns&&(y="*"),y=l.value[0].value;const v=l.value.find(b=>!!b.isDefault);v&&(y=v.value),r.value=y}t.watch(()=>e.fields,y=>{l.value=y,c()});function h(){n.emit("search",f.value)}const p=Fe.debounce(()=>h(),300);function m(){s.value="",h()}function g(y){y.key==="Enter"&&p()}return t.onMounted(()=>{c(),u.value&&(s.value="")}),()=>t.createVNode("div",{class:"fv-lookup-search-bar d-flex flex-row"},[t.createVNode("div",{style:"width: 160px;"},[t.createVNode(Xt.FComboList,{ref:d,data:l.value,textField:"label",valueField:"value",idField:"value",modelValue:r.value,"onUpdate:modelValue":y=>r.value=y,enableClear:!1},null)]),t.createVNode("div",{class:"f-utils-fill ml-2"},[t.createVNode(Nn.FButtonEdit,{buttonContent:o,maxLength:200,modelValue:s.value,"onUpdate:modelValue":y=>s.value=y,onClickButton:h,enableClear:!0,onClear:m,onKeyup:g,popupOnClick:!0,id:e.id+"-search-bar"},null)])])}});function _o(e,n,o,a){const{lookupState:i,searchState:l,navigationState:r}=o,{searchFieldItems:s,navSearchFieldItems:u}=tr(e,i,r),d=t.ref([]),f=t.ref([]);function c(g,y=!1){let v=g;e.searchAnyField&&(v=[{label:a.searchColumns.allColumns||"所有列",value:"*"}].concat(g)),y?f.value=v:d.value=v}c(s.value),c(u.value,!0),t.watch(()=>s.value,g=>{c(g)}),t.watch(()=>u.value,g=>{c(g,!0)});function h(g){const y={...g};if(n){l.navigation=y;return}l.default=y}const p=t.computed(()=>n?f.value||[]:d.value||[]);function m(){if(e.enableSearchBar&&p.value.length>0)return t.createVNode("div",{class:"p-2"},[t.createVNode(rd,{fields:p.value,id:e.id,showAllColumns:e.searchAnyField,isNavigation:n,onSearch:h},null)])}return{renderSearchBar:m}}function ld(e,n){var te;const o=t.inject(wn),a=t.inject(Vt),i=t.inject(nn),{loadData:l,lookupStates:r,expandAllNodes:s,getFieldValue:u,getData:d}=a,{navigationState:f,pageInfoState:c,searchState:h,lookupOptions:p}=r,{renderSearchBar:m}=_o(e,!0,r,i),g=Rt(e,r),{checkPaination:y,navIsList:v,navIsTreeList:b}=g,{updatePageInfo:w}=nr(e,c),C=t.ref([]),{buildGetChildrenQueryParams:x,loadChildNodes:T}=sr(r,g);if(v()){const W=y((te=e.navigation)==null?void 0:te.pagination);w(W,!0)}const S=t.ref(c.navigation),V={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,keepSelectingOnClick:!1},N={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},k=t.ref(),I=t.ref(),E=t.ref("id");t.watch(()=>c.navigation,W=>{var q;S.value=W,(q=I.value)==null||q.updatePagination(W)});function _(W,q,R){var H,A,U;if(W=W||[],v()){const K={total:q};if(R){const{pageIndex:Q,pageSize:oe,enablePager:X,pageList:ne}=R;Object.assign(K,{index:Q,size:oe,enable:X})}w(K,!0),(H=I.value)==null||H.updateDataSource(W)}else b()&&((A=h.navigation)!=null&&A.value&&(W=s(W,!0)),(U=k.value)==null||U.updateDataSource(W))}function M(W){var q,R;v()?(q=I.value)==null||q.updateColumns(W):b()&&((R=k.value)==null||R.updateColumns(W))}t.watch([()=>f==null?void 0:f.columns,()=>f==null?void 0:f.items,()=>f==null?void 0:f.pageInfo,()=>f==null?void 0:f.total],([W,q,R,H])=>{W&&M(W),_(q,H||0,R)}),t.watch(()=>f==null?void 0:f.idField,W=>{E.value=W||"id"});function F(W){C.value=W}function P(W){C.value=W}function B(){l({search:h.navigation,action:"navsearch"},W=>{_(W.items,W.total||0,W.pageInfo)})}t.watch(()=>h.navigation,W=>{if(p.uri){w({index:1},!0),B();return}n.emit("search",W)});function $({pageSize:W,pageIndex:q}){var A;let R=q;((A=S.value)==null?void 0:A.size)!==W&&(R=1);const H={size:W,index:R};if(w(H,!0),p.uri){B();return}n.emit("pageSizeChanged",H)}function j(W){if(k.value.hasChildren(W))return Promise.resolve();const q=W.raw.id,R=x(W,h.navigation,!0);return d(R).then(H=>{T((H==null?void 0:H.items)??[],q,k.value)})}function D(){return t.createVNode(Qt.FTreeGrid,{ref:k,fit:!0,idField:E.value,rowNumber:{enable:!1},columnOption:N,selection:V,virtualized:!0,showBorder:!0,rowOption:o,hierarchy:rr,onSelectionChange:F,loadData:j},null)}function O(){return t.createVNode(In.FDataGrid,{ref:I,pagination:S.value,summary:{enable:!1},columnOption:N,idField:E.value,rowNumber:{enable:!1},showBorder:!0,fit:!0,virtualized:!0,selection:V,onSelectionChange:P,onChanged:$},null)}function L(){if(b())return D();if(v())return O()}function z(){return t.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[m(),t.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[L()])])}function G(){return E.value}function J(W){return f.relations&&f.relations.length?f.relations.map(R=>{const{groupField:H,helpField:A}=R,U={fieldName:A,fieldValue:""},K=W.map(Q=>u(Q,H));return U.fieldValue=K.join(","),U}):""}return{renderNavigation:z,selectedItems:C,getNavigationIdField:G,getRelationFilter:J}}function sd(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const cd=t.defineComponent({name:"LookupContainer",props:$n,emits:["update:modelValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","changeDialogOptions","clearSearch"],setup(e,n){t.inject(bn,t.ref(Ze.dataList));const o=t.inject(Vt),a=t.inject(nn),{lookupStates:i,getIdQueryParams:l}=o,{lookupState:r,navigationState:s,queryState:u,lookupOptions:d}=i,{renderSearchBar:f}=_o(e,!1,i,a),{isDoubleList:c,getNavigationSize:h,isTreeList:p}=Rt(e,i),{renderNavigation:m,selectedItems:g,getNavigationIdField:y,getRelationFilter:v}=ld(e,n),{renderTreeGrid:b,unwatches:w}=cr(e,n),{renderDataGrid:C,unwatches:x}=ir(e,n,{navSelectedItems:g,getNavigationIdField:y,getRelationFilter:v}),T=t.computed(()=>p()?b:C),S=h();function V(I){var _;const E=(_=d.dialog)==null?void 0:_.title;E&&E!==Gi&&(I=E),n.emit("changeDialogOptions",{title:I})}function N(I,E){r.action=E,p()?x():w(),I.navigation&&(Object.keys(I.navigation).forEach(_=>{var M;s[_]=(M=I.navigation)==null?void 0:M[_]}),I.navigation.treeInfo&&(o==null||o.setTreeInfo(I.navigation.treeInfo,!0)),delete I.navigation),I.treeInfo&&(o==null||o.setTreeInfo(I.treeInfo)),Object.keys(I).forEach(_=>{r[_]=I[_]})}function k(){const I={};e.enableToSelect&&(I.selectedInfo=l(),u.value!=null&&(I.search={field:"*",value:u.value,type:"like"},I.action="search")),o==null||o.loadData(I,E=>{t.nextTick(()=>{N(E,(I==null?void 0:I.action)||""),V(E.title||"")})})}return t.onMounted(()=>{k(),document.body.classList.add("lookup-modal-open")}),t.onUnmounted(()=>{document.body.classList.remove("lookup-modal-open")}),()=>{let I;return t.createVNode(Ft.FLayout,null,{default:()=>[c()&&e.showNavigation&&t.createVNode(Ft.FLayoutPane,{position:"left",width:S==null?void 0:S.width,minWidth:S==null?void 0:S.minWidth},sd(I=m())?I:{default:()=>[I]}),t.createVNode(Ft.FLayoutPane,{position:"center"},{default:()=>[t.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[f(),t.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[T.value()])])]})]})}}}),ud={multiSelect:{type:Boolean,default:!1},idField:{type:String,default:"id"},displayType:{type:String,default:"list"},selectedIds:{type:Array,default:[]},showSelections:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!0}},dd=t.defineComponent({name:"FLookupFavorite",props:ud,setup(e,n){const o=t.inject(wn),{userDataState:a,getFavoriteData:i}=t.inject(Rn),l=t.inject(bn,t.ref(Ze.dataList)),r=t.inject(on),s=t.inject(Vt),{lookupStates:u,expandAllNodes:d}=s,f=t.computed(()=>u.lookupOptions.idField||"id"),c=t.ref(e.selectedIds),{setColumns:h,removeFavoriteItem:p}=Eo(e,f.value),{isTreeList:m}=Rt(e,u),{updateSelections:g,unSelectTreeNode:y,selectTreeNodes:v}=r,b=t.ref(),w=t.ref(),C=t.computed(()=>m()?w.value:b.value);Mo(e,C,u);function x(){return a.data&&a.data.favorites&&a.data.favorites.length}function T(F){C.value.clearSelection(),F&&F.length&&C.value.selectItemByIds(F)}t.watch(()=>e.selectedIds,(F,P)=>{JSON.stringify(F)!==JSON.stringify(P)&&(c.value=F,c.value.length?T(c.value):C.value.clearSelection())});function S(F,P){P&&P.length&&h(C.value,P,m()),F&&(m()&&(F=d(F)),C.value.updateDataSource(F||[])),T(c.value||[])}function V(){i().then(F=>{F?S(F.items||[],F.columns):S([],null)})}t.watch(()=>l.value,(F,P)=>{var B;F===Ze.favorite&&(x()?V():S([],(B=u.lookupState)==null?void 0:B.columns))}),t.watch(()=>p.value,(F,P)=>{l.value===Ze.favorite&&F&&(m()?V():S(a.favoriteItems||[],null),p.value=!1)});const N={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},k={enableSelectRow:!0,multiSelect:e.multiSelect,showCheckbox:e.multiSelect,multiSelectMode:"OnCheckAndClick"};function I(F){m()?v(F):g(F)}function E(F){m()?y(F):g(F==null?void 0:F.raw,!1)}function _(){return t.createVNode(Qt.FTreeGrid,{ref:w,fit:!0,idField:f.value,rowNumber:{enable:!1},columnOption:N,selection:k,showBorder:!0,virtualized:!0,rowOption:o,onSelectionChange:I,onUnSelectItem:E},null)}function M(){return t.createVNode(In.FDataGrid,{ref:b,pagination:{enable:!1},summary:{enable:!1},columnOption:N,idField:f.value,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:k,onSelectionChange:I,onUnSelectItem:E},null)}return()=>m()?_():M()}}),fd={id:{type:String},title:{type:String},height:{type:Number,default:50},draggable:{type:Boolean,default:!0},enableFavorite:{type:Boolean,default:!1},useHttpComposition:{type:Object,default:{}},userDataService:{type:Object,default:{}},useDialog:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},showIncludeChildNodes:{type:Object,default:{show:!0,value:!1}},showCascadeControl:{type:Boolean,default:!1},isMaximized:{type:Boolean,default:!1},locales:{type:Object,default:{}}},pd={idField:{type:String,default:"id"},parentRef:{type:HTMLElement,default:null},popoverOffsetX:{type:Number,default:0}},md=t.defineComponent({props:pd,setup(e,n){const o=t.inject("FMessageBoxService"),a=t.inject(on),i=t.inject(Vt),{lookupState:l,selectionState:r}=i.lookupStates,s=t.inject(nn),{clearSelections:u,unSelectionsByIds:d}=a,f=t.ref(),c=t.computed(()=>f),h=t.ref(),p=t.ref(e.popoverOffsetX||-15);t.watch(()=>e.popoverOffsetX,_=>{p.value=_});const m=t.computed(()=>p.value===-15?10:100),g=t.ref(e.parentRef),y="_remove_selected_";function v(_,M,F){_.stopPropagation();const P=M.raw[e.idField];d(P)}const b={field:y,title:"",width:50,fixed:"right",align:"center",formatter:(_,M)=>t.createVNode("button",{type:"button",onClick:F=>{v(F,M)},class:"btn btn-link f-icon f-icon-x p-0",style:"color: #dd2438;"},null)},w=t.computed(()=>{const _=Fe.cloneDeep((l==null?void 0:l.columns)||[]);if(_.length)return _.push(b),_});t.watch(()=>e.parentRef,_=>{g.value=_});const C={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},x={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,showSelectAll:!1,multiSelectMode:"OnCheckAndClick"},T=t.ref({width:"0px",height:"0px"});let S;function V(){var B,$;const _=((B=g.value)==null?void 0:B.offsetHeight)-100,M=200,F=r.value.length*28+60,P=F>_?_:F<M?M:F;T.value={width:(($=g.value)==null?void 0:$.offsetWidth)-20+"px",height:P+"px"}}t.watch(()=>h.value,_=>{_&&(_.updateColumns(w.value),_.updateDataSource(Fe.cloneDeep(r.value||[])),V())}),t.watch(()=>r.value,_=>{var M;(M=h.value)==null||M.updateDataSource(Fe.cloneDeep(_||[]),{keepScrollTop:!0})}),t.watch(()=>g.value,_=>{S=new ResizeObserver(()=>{g.value&&V()}),S.observe(g.value)});const N=t.computed(()=>(r.value||[]).length>0),k=t.computed(()=>({display:"flex","align-items":"center",opacity:N.value?1:.4,cursor:N.value?"pointer":"not-allowed",pointerEvents:N.value?"auto":"none"}));function I(){const _=s==null?void 0:s.messages.clearSelections;o==null||o.question(_,"",()=>{u()})}t.onMounted(()=>{V()}),t.onUnmounted(()=>{S&&g.value&&S.unobserve(g.value)});function E(){var _;(_=c.value)==null||_.value.hide()}return n.expose({hidePopup:E}),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"d-flex flex-row align-items-center",style:"line-height:24px"},[t.withDirectives(t.createVNode("div",{style:k.value,innerHTML:s.buttons.selectionTotal(r.value.length)},null),[[t.resolveDirective("popover"),c.value,"toggle"]]),N.value&&t.createVNode("button",{class:"btn btn-link btn-sm p-0 pl-2",style:"line-height:24px",onClick:I},[s.buttons.clear])]),t.createVNode(ja,{id:"lookup-selected-popover",customStyles:{filter:"drop-shadow(#c5c5c5 0px 0px 6px)"},offsetX:p.value,arrowOffsetX:m.value,ref:f,placement:"top-left",keepWidthWithReference:!1,fitContent:!0},{default:()=>{var _;return[t.createVNode("div",{style:T.value},[((_=f.value)==null?void 0:_.isShow)&&t.createVNode(In.FDataGrid,{ref:h,pagination:{enable:!1},summary:{enable:!1},columnOption:C,idField:e.idField,rowNumber:{enable:!1},showBorder:!1,virtualized:!0,fit:!0,selection:x},null)])]}})])}}),hd=t.defineComponent({props:{modelValue:{type:Boolean,default:!1},label:{type:String,default:"包含下级"}},emits:["update:modelValue"],setup(e,n){const o=t.ref(e.modelValue);function a(i){i.stopPropagation(),o.value=!o.value,n.emit("update:modelValue",o.value)}return()=>t.createVNode("div",{class:"custom-control custom-checkbox mb-0",onClick:a},[t.withDirectives(t.createVNode("input",{id:"lookup-include-childs-input","onUpdate:modelValue":i=>o.value=i,title:"checkbox-input",type:"checkbox",class:"custom-control-input"},null),[[t.vModelCheckbox,o.value]]),t.createVNode("label",{class:"custom-control-label",style:"padding-left: 1.2rem;"},[e.label])])}}),gd=t.defineComponent({name:"FLookupCascadeSelector",props:["modelValue"],emits:["update:modelValue"],setup(e,n){const o=t.inject(nn),a=t.ref(),i=t.ref(e.modelValue);return t.watch(()=>i.value,(l,r)=>{l!==r&&n.emit("update:modelValue",l)}),Fo.forEach(l=>{l.text=o.tree[l.value]}),()=>t.createVNode("div",{style:"width: 130px",class:"ml-3"},[t.createVNode(Xt.FComboList,{ref:a,data:Fo,textField:"text",valueField:"value",idField:"value",modelValue:i.value,"onUpdate:modelValue":l=>i.value=l,enableClear:!1,minPanelWidth:130,placement:"top-left"},null)])}}),yd=t.defineComponent({name:"FLookupModalContainer",props:fd,emits:["closeModal","maximize"],setup(e,n){const o=t.ref(Ze.dataList);t.provide(bn,o),t.provide(Vt,e.useHttpComposition),t.provide(Rn,e.userDataService),t.provide(on,e.selectionsManager),t.provide(nn,e.locales);const{tabs:a,buttons:i,tree:l}=e.locales,r=t.reactive(e.showIncludeChildNodes),s=t.ref(r.value),{lookupOptions:u}=e.useHttpComposition.lookupStates,d=u.dialog,f=t.computed(()=>u.displayType.toUpperCase()===ut.TreeList),c=lr(u,f.value);t.provide(wn,c);const h=t.ref(e.isMaximized);t.watch(()=>e.isMaximized,(M,F)=>{h.value=M});const p=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:h.value}));t.ref();const m=t.computed(()=>r.show&&o.value===Ze.dataList&&u.displayType&&f.value),g=t.computed(()=>m.value?-99:-15);t.watch(()=>s.value,(M,F)=>{e.useHttpComposition.updateIncludeChilds(M)}),t.watch(()=>e.showIncludeChildNodes,(M,F)=>{r.value=M,e.useHttpComposition.updateIncludeChilds(M.value)});const{userDataState:y}=e.userDataService,{cancelDialog:v,submitDialog:b}=e.useDialog,w=t.ref(),C=t.ref();function x(M){n.emit("maximize",M)}function T(M){n.emit("closeModal",M)}async function S(M){await b()&&T(M)}async function V(M){await v()&&T(M)}function N(M){o.value=M,y.data.tabIndex=M}const k=t.computed(()=>({transform:`translate3d(${o.value===Ze.favorite?84:0}px, 0px, 0px)`})),I=t.computed(()=>M=>({visibility:o.value===M?"visible":"hidden",position:"absolute",top:0,transition:"all 0.3s ease-in",opacity:o.value===M?1:0})),E=t.computed(()=>{const M=e.enableFavorite?"50%":"100%",F=e.enableFavorite?100:80,P=d.showMaxButton||d.showCloseButton?F:0;return{maxWidth:`calc(${M} - ${P}px)`}});function _(M){M.stopPropagation(),document.body.click()}return t.onMounted(()=>{var M;y.data.favorites&&y.data.favorites.length&&(o.value=((M=y.data)==null?void 0:M.tabIndex)||Ze.dataList),m.value&&e.useHttpComposition.updateIncludeChilds(s.value)}),()=>t.createVNode("div",{class:"d-flex flex-column h-100 lookup-modal",ref:w},[t.createVNode("div",{class:"d-flex justify-content-between align-items-center px-3 lookup-modal-header"},[t.createVNode("div",{class:"lookup-modal-header-title",title:e.title,style:E.value},[e.title]),e.enableFavorite&&t.createVNode("div",{class:"d-flex justify-content-center w-100"},[t.createVNode("div",{class:"lookup-modal-header-tabs-container d-flex",onMousedown:_},[t.createVNode("div",{class:"active-tab",style:k.value},null),t.createVNode("div",{class:["tab-item","d-flex",{active:o.value===Ze.dataList}],onClick:()=>N(Ze.dataList)},[a.datalist]),t.createVNode("div",{class:["tab-item","d-flex",{active:o.value===Ze.favorite}],onClick:()=>N(Ze.favorite)},[a.favorite])])]),(d.showMaxButton||d.showCloseButton)&&t.createVNode("div",{class:"d-flex flex-row h-100 justify-content-end align-items-center lookup-modal-header-buttons",onMousedown:M=>M.stopPropagation()},[d.showMaxButton&&t.createVNode("span",{class:p.value,onClick:x,style:"cursor: pointer"},null),d.showCloseButton&&t.createVNode("span",{class:"f-icon modal_close ml-2",onClick:T,style:"cursor: pointer;position: relative;top: 1px;"},null)])]),t.createVNode("div",{class:"f-utils-fill",style:"position: relative;"},[t.createVNode("div",{class:"h-100 d-flex flex-column f-utils-fill w-100",style:I.value(Ze.dataList)},[n.slots.default&&n.slots.default()]),t.createVNode("div",{class:"h-100 d-flex flex-column px-2 f-utils-fill w-100",style:I.value(Ze.favorite)},[n.slots.fav&&n.slots.fav()])]),t.createVNode("div",{class:"modal-footer"},[t.createVNode("div",{class:"f-utils-fill align-items-center d-flex flex-row"},[m.value&&t.createVNode(hd,{modelValue:s.value,"onUpdate:modelValue":M=>s.value=M,label:l.includechildren},null),e.showSelectedList&&t.createVNode(md,{popoverOffsetX:g.value,parentRef:w.value,ref:C,idField:u.idField},null),e.showCascadeControl&&t.createVNode(gd,{modelValue:u.cascadeValue,"onUpdate:modelValue":M=>u.cascadeValue=M},null)]),t.createVNode("button",{id:e.id+"-btncancel",name:"cancel",type:"button",class:"btn btn-secondary",onClick:V},[i.cancel]),t.createVNode("button",{id:e.id+"-btnok",name:"accept",type:"button",class:"btn btn-primary",onClick:S},[i.ok])])])}});function An(e,n){if(e.context){if(!n&&e.context.editor){for(const a in e.context.editor)delete e.context.editor[a];return}const{editor:o}=e.context;o?Object.assign(o,n):e.context.editor=n}}function vd(e,n,o,{dictPicked:a,modelValue:i,buttonEditInstance:l,userDataService:r,useHttp:s,lookupLocales:u}){const d=t.inject(pn.F_NOTIFY_SERVICE_TOKEN,null),f=t.inject("FLoadingService"),c=t.ref(),h=t.ref("accept"),p=t.ref(),{lookupStates:m}=s,{queryState:g,lookupState:y,navigationState:v,pageInfoState:b,searchState:w,selectionState:C,lookupOptions:x}=m,{isDoubleList:T}=Rt(e,m),S=Object.assign({},Hu,x.dialog);x.dialog=S;const V={position:"top-center"},N=()=>{const R=o.value.map(A=>Ie.resolveField(A,x.textField)).join(e.separator),H=o.value.map(A=>A[x.idField]).join(e.separator);i.value=R,s.idValues.value=H,n.emit("update:modelValue",R),n.emit("update:idValue",H)},k=async()=>{const R={items:o.value,mappingFields:x.mappingFields};return n.emit("update:dataMapping",R),An(e,R),await a(R)};async function I(){return N(),await k()}function E(){return h.value="cancel",!0}const _=R=>{Object.keys(R).forEach(H=>{delete R[H]})},M=R=>{R.forEach(H=>{_(H)})};function F(){f==null||f.clearAll(),M([y,v,b,w,g]),C.value=[],p.value=null}async function P(){var H;if(o.value.length===0)return d==null||d.warning({message:u.messages.mustChoosAdatarow,...V}),{shouldUpdate:!1};const R=await((H=e.beforeSelectData)==null?void 0:H.call(e,{items:o.value}));return{shouldUpdate:typeof R=="boolean"?R:(R==null?void 0:R.canSelect)??!0,message:R==null?void 0:R.message}}async function B(R){return typeof R=="object"?{shouldClose:R.closeDialog,message:R.message}:{shouldClose:R,message:""}}async function $(){const{shouldUpdate:R,message:H}=await P();if(!R)return H&&(d==null||d.warning({message:H,...V})),!1;const A=await I(),{shouldClose:U,message:K}=await B(A);return U?(h.value="accept",!0):(K&&(d==null||d.warning({message:K,...V})),!1)}function j(){const R=(S==null?void 0:S.height)||620,H=(S==null?void 0:S.width)||590,A=(S==null?void 0:S.minWidth)||300,U=(S==null?void 0:S.minHeight)||200,K={height:R,width:H,minWidth:A,minHeight:U};return T()&&(K.width=(S==null?void 0:S.width)||960),K}const{width:D,height:O,minHeight:L,minWidth:z}=j(),G=!0,J=G&&((S==null?void 0:S.resizeable)==null?!0:S==null?void 0:S.resizeable);S.rememberSize=S.rememberSize&&J;const te={title:S==null?void 0:S.title,fitContent:!1,showHeader:!1,dragHandle:".lookup-modal-header",height:O,width:D,minWidth:z,minHeight:L,resizeable:J,draggable:G,enableEsc:(S==null?void 0:S.enableEsc)==null?!0:S==null?void 0:S.enableEsc,closedCallback:(R,H)=>{const A={type:h.value,button:R==null?void 0:R.target};if((H==="esc"||H==="icon")&&(A.type="esc"),A.type==="accept"&&(A.items=o.value),(A.type==="cancel"||A.type==="esc")&&(i.value=e.modelValue),r&&e.enableUserData){r.saveUserData().then(()=>{F(),n.emit("dialogClosed",A)});return}F(),n.emit("dialogClosed",A)},showButtons:!1,resizeHandle:R=>{if(S.rememberSize){c.value=R;const{width:H,height:A}=R.newSize.size;!(R.isMaximized??!1)&&r.setDialogSize({width:Math.round(H),height:Math.round(A)})}},enableEnter:!0,onEnter:R=>{R.event.preventDefault(),!R.event.target.closest(".fv-lookup-search-bar")&&$().then(A=>{var U;if(A){const K=(U=l.value)==null?void 0:U.getModal();K&&K.close(R.event,"enter")}})}};async function W(){var R;if(e.enableUserData&&(await r.getUserData(),(R=r==null?void 0:r.userDataState)!=null&&R.data&&S.rememberSize)){const{size:H}=r.userDataState.data;H&&Object.assign(te,H)}}async function q(R){let H=!0;const A=e.dictPicking;if(A&&typeof A=="function"){const U=await A({customData:p,options:x});typeof U=="boolean"&&!U&&(H=!1),typeof U=="object"&&(U.canOpen?U.data&&(p.value=U.data):(H=!1,U.message&&(d==null||d.error({message:U.message,position:"top-center"}))))}return H&&await W(),H}return{modalOptions:te,beforeOpenDialog:q,dialogSize:c,customData:p,updateModelValue:I,cancelDialog:E,submitDialog:$,destroyed:F,setModelAndIdValue:N,runDictPickedAsync:k}}function bd(e){return{dictPicked:async({items:o,mappingFields:a})=>e.dictPicked&&typeof e.dictPicked=="function"?await e.dictPicked({items:o,mappingFields:a})??!0:!0}}function Cd(e,n,o,a){if(!e.editable)return;n.emit("update:modelValue",o),n.emit("update:idValue","");const i={mappingFields:a.mappingFields};An(e,i)}function wd(e,n,o){const a=t.computed(()=>e.textChangeType==="blur"||e.textChangeType==="any"),i=t.computed(()=>e.textChangeType==="enter"||e.textChangeType==="any"),{beforeOpenDialog:l,updateModelValue:r,selectedItems:s,openDialog:u,lookupOptions:d,useHttpComposition:f,isPopuped:c}=o,{updateSearchFieldTitle:h}=f,{lookupState:p,queryState:m,searchValueChanged:g}=f.lookupStates,y=t.ref(!1);function v(V){return Fe.isEmpty(V)&&g.value&&!c.value?(y.value=!0,g.value=!1,!1):(g.value&&(m.value=V),g.value)}function b(V){var k;if(!V||V.length!==1)return;const[N]=V;return(k=N.children)!=null&&k.length?b(N.children):N.data}function w(V,N){var I;if(!N||N.length!==1)return!1;const[k]=N;return V?(I=k.children)!=null&&I.length?b(k.children):k.data:k}async function C(V){const N={search:{field:"*",value:V,type:e.openType==="Modal"?"equal":"like"},action:"search"};g.value&&(document.body.classList.add("lookup-modal-open"),f.loadData(N,async k=>{var I;if(k.searchFields&&k.columns){const E=h(k.searchFields,k.columns);p.searchFields=E}if(g.value=!1,e.openType==="Modal"){const E=w(((I=k.displayType)==null?void 0:I.toLowerCase())==="treelist",k.items);if(E){s.value=[E],r(),m.value="",document.body.classList.remove("lookup-modal-open");return}u()}else p.action=V?"search":"list",p.items=k.items}))}function x(V,N){var I;let k=(I=V.target)==null?void 0:I.value;if(k!==""&&(k=k.trim()),v(k)){if(e.allowFreeInput){Cd(e,n,k,d);return}if(e.openType!=="Modal"&&!c.value){u(),g.value=!1;return}d.uri?C(k):n.emit("textChanged",{value:k,type:N?"blur":"enter"})}}function T(V){a.value&&x(V,!0)}function S(V){V.key==="Enter"&&i.value&&x(V,!1)}return{changeOnBlur:a,changeOnEnter:i,onInputBlur:T,onEnterKeyDown:S,isClear:y}}const Sd={height:{type:Number,default:500},width:{type:Number,default:500},useHttpComposition:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},enableToSelect:{type:Boolean,default:!0},uri:{type:String,default:""},hidePopup:{type:Function,default:null},fitColumns:{type:Boolean,default:!0},openType:{type:String,default:"Popup"},pagination:{type:Object,default:{enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1}},displayType:{type:String,default:ut.List},loadTreeDataType:{type:String,default:Mt.all},expandLevel:{type:Number,default:0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!1},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeStatus:{type:String,default:"both"},enableSearchBar:{type:Boolean,default:!0},searchAnyField:{type:Boolean,default:!0},locales:{type:Object,default:{}}},xd=t.defineComponent({name:"FLookupPopupContainer",props:Sd,emits:["selectItemsChanged"],setup(e,n){const o=e.locales,{lookupStates:a,getIdQueryParams:i}=e.useHttpComposition,{lookupState:l,navigationState:r,queryState:s,lookupOptions:u}=a,{isTreeList:d}=Rt(e,a);_o(e,!1,a,o);const f=t.computed(()=>({width:`${e.width}px`,height:`${e.height}px`,padding:"5px"})),{renderDataGrid:c}=ir(e,n,{}),{renderTreeGrid:h}=cr(e,n),p=t.computed(()=>d()?h:c);function m(){const g={};e.enableToSelect&&(g.selectedInfo=i(),s.value!=null&&(g.search={field:"*",value:s.value,type:"like"},g.action="search"));const y=e.useHttpComposition;y==null||y.loadData(g,v=>{t.nextTick(()=>{l.action=g.action,v.navigation&&(Object.keys(v.navigation).forEach(b=>{var w;r[b]=(w=v.navigation)==null?void 0:w[b]}),v.navigation.treeInfo&&(y==null||y.setTreeInfo(v.navigation.treeInfo,!0)),delete v.navigation),v.treeInfo&&(y==null||y.setTreeInfo(v.treeInfo)),Object.keys(v).forEach(b=>{l[b]=v[b]})})})}return t.onMounted(()=>{m()}),t.onUnmounted(()=>{var g;(g=e.hidePopup)==null||g.call(e)}),()=>t.createVNode("div",{style:f.value,class:"d-flex flex-column"},[p.value()])}});function Td(e,n,o,{useHttpComposition:a,selectionsManager:i,userDataService:l,updateModelValue:r,lookupLocales:s,destroyed:u,setModelAndIdValue:d,runDictPickedAsync:f}){t.provide(Rn,l),t.provide(Vt,a),t.provide(on,i);const{selectionState:c,queryState:h,lookupOptions:p}=a.lookupStates,m=lr(p,!1);t.provide(wn,m);const g=t.computed(()=>{var V;const S=(V=o.value)==null?void 0:V.popoverRef;return S?S.shown:!1});function y(){var S;(S=o.value)==null||S.hidePopup()}e.openType==="Popup"&&t.watch(()=>c.value,S=>{g.value&&e.multiSelect&&d()});const v=()=>{const{width:S,height:V}=e.dialog;return{width:S||460,height:V||380}},b=t.computed(()=>{var S;return(S=o.value)==null?void 0:S.popoverRef});async function w(){p.multiSelect?await f():await r(),g.value&&y(),h.value="",u()}function C(){var S;g.value||(S=o.value)==null||S.showPopup()}function x(){p.multiSelect||y()}function T(){const{width:S,height:V}=v();return t.createVNode(xd,t.mergeProps({width:S,height:V,useHttpComposition:a,locales:s,selectionsManager:i,hidePopup:w,onSelectionsChanged:x},e),null)}return{popoverInstance:b,isPopuped:g,renderPopup:T,showPopup:C}}const an=t.defineComponent({name:"FLookup",props:$n,emits:["update:modelValue","update:idValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","resize","dialogClosed","textChanged","clear","update:dataMapping"],setup(e,n){const o='<i id="'+e.id+'-icon_lookup" class="f-icon f-icon-lookup"></i>',a='<i id="'+e.id+'-icon_dropdown" class="f-icon f-icon-arrow-chevron-down"></i>',i=t.ref(),l=t.ref(e.modelValue),r=t.ref("");Cn.value=e.customData;const s=t.computed(()=>e.openType==="Popup"?"Popup":"Modal"),u=t.computed(()=>s.value==="Popup"?a:o),d=ad(e),f=nd(e),{lookupOptions:c,selectionState:h,searchValueChanged:p}=f.lookupStates,m=od(e,f),g=t.computed(()=>e.showSelections&&c.multiSelect),y=t.computed(()=>e.editable&&(s.value==="Modal"||!c.multiSelect)),v=t.computed(()=>e.showIncludeChildNodes&&e.showNavigation&&!c.navTreeToList),b=or(e,f.lookupStates),{dictPicked:w}=bd(e),{modalOptions:C,beforeOpenDialog:x,dialogSize:T,customData:S,updateModelValue:V,cancelDialog:N,submitDialog:k,destroyed:I,setModelAndIdValue:E,runDictPickedAsync:_}=vd(e,n,h,{dictPicked:w,modelValue:l,buttonEditInstance:i,userDataService:m,useHttp:f,lookupLocales:d}),M=Td(e,n,i,{useHttpComposition:f,selectionsManager:b,userDataService:m,updateModelValue:V,lookupLocales:d,destroyed:I,setModelAndIdValue:E,runDictPickedAsync:_}),{renderPopup:F,showPopup:P,isPopuped:B}=M;function $(){if(e.openType==="Popup"){P();return}i.value&&!i.value.getModal()&&i.value.openDialog()}const{onInputBlur:j,onEnterKeyDown:D,isClear:O}=wd(e,n,{beforeOpenDialog:x,updateModelValue:V,selectedItems:h,openDialog:$,modelValue:l,useHttpComposition:f,lookupOptions:c,usePopupComposition:M,isPopuped:B}),L=t.reactive(C),z=t.inject(Qn.F_MODAL_SERVICE_TOKEN);t.watch(()=>S.value,le=>{Cn.value=le}),t.watch(()=>e.modelValue,le=>{l.value=le});function G(le){f.idValues.value=le,le||(h.value=[]),n.emit("update:idValue",le)}t.watch(()=>e.idValue,le=>{G(le)}),t.onMounted(()=>{}),t.onUnmounted(()=>{An(e)}),t.watch(()=>T.value,le=>{n.emit("resize",le)});async function J(){n.emit("update:modelValue",""),G("");const le={items:null,mappingFields:c.mappingFields};n.emit("clear",le),An(e,le)}t.watch(()=>O.value,le=>{le&&(J(),O.value=!1)});function te(le){n.emit("search",le)}function W(le){n.emit("navSelectionsChanged",le)}function q(le){n.emit("pageIndexChanged",le)}function R(le){n.emit("pageSizeChanged",le)}async function H(le){const de=z==null?void 0:z.getCurrentModal();de&&de.updateModalOptions(le),le.title&&(r.value=le.title)}function A(le){const de=z==null?void 0:z.getCurrentModal();de&&de.close(le)}function U(le){const de=z==null?void 0:z.getCurrentModal();de&&de.maxDialog(le)}const K=t.computed(()=>{const le=z==null?void 0:z.getCurrentModal();return le==null?void 0:le.isMaximized}),Q=t.computed(()=>c.multiSelect&&c.showCascadeControl&&c.enableCascade&&ut.Tree===c.displayType.toUpperCase()&&!c.treeToList),oe=t.computed(()=>h.value&&h.value.length?h.value.map(le=>le[c.idField]):[]);function X(le){for(const de in c)le[de]!==void 0&&(c[de]=le[de])}const ne=Fe.debounce(le=>{j(le)},200);function ie(le){var he;let de=(he=le.target)==null?void 0:he.value;de!==""&&(de=de.trim()),p.value=le.target._value!==de,s.value==="Popup"&&p.value&&ne(le)}function we(){p.value=!1}return n.expose({openDialog:$,updateIdValue:G,mappingFields:c.mappingFields,idField:c.idField,setProps:X,clear:J}),()=>t.createVNode(Nn.FButtonEdit,{ref:i,id:e.id,modelValue:l.value,"onUpdate:modelValue":le=>l.value=le,disable:e.disable,readonly:e.readonly,editable:y.value,inputType:"text",enableClear:e.enableClear,buttonContent:u.value,buttonBehavior:s.value,modalOptions:L,onClear:J,beforeOpen:x,onBlur:j,onKeydown:D,placeholder:d.placeholder,keepWidthWithReference:!1,popupOnClick:!e.editable&&s.value==="Popup",onInput:ie,enableTitle:e.enableTitle,placement:"auto",onBeforeClearValue:we},{default:()=>[s.value==="Modal"&&t.createVNode(yd,{title:r.value||"请选择",enableFavorite:e.enableFavorite,onCloseModal:A,onMaximize:le=>U(le),useHttpComposition:f,userDataService:m,useDialog:{cancelDialog:N,submitDialog:k},showSelectedList:g.value,selectionsManager:b,showIncludeChildNodes:{show:v.value,value:e.includeChildNodesValue},showCascadeControl:Q.value,isMaximized:K.value,locales:d,id:e.id},{default:()=>t.createVNode(cd,t.mergeProps(e,{onSearch:te,onNavSelectionsChanged:W,onPageIndexChanged:q,onPageSizeChanged:R,onChangeDialogOptions:H}),null),fav:()=>e.enableFavorite&&t.createVNode(dd,{idField:c.idField,displayType:c.displayType,selectedIds:oe.value,multiSelect:c.multiSelect,showSelections:g.value,treeToList:c.treeToList},null)}),s.value==="Popup"&&F()]})}});class Vd extends Et{constructor(o,a){super(o,a);se(this,"propertyConfigFilters",{lookup:["dataSource","filterConditions","displayType","idField","multiSelect","showSelections","enableSearchBar","searchAnyField","enableFavorite","enableUserData"],pager:["showLimits","sizeLimits","size"],treeConfig:["cascadeStatus","enableCascade","enableFullTree","expandLevel","loadTreeDataType","navTreeToList","onlySelectLeaf","showCascadeControl","treeToList"],dialog:["title","width","height","showNavigation","navigatorWidth","resizeable","rememberSize","enableEsc","showMaxButton","showCloseButton"]});se(this,"events",Ku)}getPropertyConfig(o){const a=new er("root-component",this.designerHostService),i=a.getLookupConfig(o),l=a.getPageConfig(o.editor),r=a.getTreePropConfig(o.editor),s=a.getDialogPropertyConfig(o),u=this.getEventPropConfig(o),d={type:"object",categories:{lookup:i,treeConfig:r,pager:l,dialog:s}};return this.filterLookupPropertyConfig(d),d.categories.eventsEditor=u,d}filterLookupPropertyConfig(o){Object.keys(o.categories).forEach(a=>{const i=this.propertyConfigFilters[a],l=o.categories[a];Object.keys(l.properties).forEach(r=>{i.includes(r)||delete l.properties[r]})})}getEventPropConfig(o){const a=this,i=a.eventsEditorUtils.formProperties(o,a.viewModelId,this.events),l={};return l[a.viewModelId]={type:"events-editor",editor:{initialData:i,viewSourceHandle:r=>{a.eventsEditorUtils.jumpToMethod(r)}}},{title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=s.editor,d=r.propertyValue;delete u[a.viewModelId],d&&a.eventsEditorUtils.saveRelatedParameters(u,a.viewModelId,d.events,d),a.events.forEach(f=>{s[f.label]=u[f.label]})}}}}an.install=e=>{e.component(an.name,an)},an.register=(e,n,o,a)=>{e.lookup=an,n.lookup=Qi,a.lookup={callbackResolver:qu}},an.registerDesigner=(e,n,o)=>{e.lookup=ed,n.lookup=Qi};var et=(e=>(e.Default="Default",e.Textbox="Textbox",e.Numberbox="Numberbox",e.Combolist="Combolist",e.Select="Select",e.Checkbox="Checkbox",e.Switch="Switch",e.Tags="Tags",e.SortEditor="SortEditor",e.FilterEditor="FilterEditor",e.DataEditor="DataEditor",e.MenuIdSelector="MenuIdSelector",e.AppIdSelector="AppIdSelector",e.ComboLookup="ComboLookup",e.ConfigurationParameterEditor="ConfigurationParameterEditor",e.FieldMappingEditor="FieldMappingEditor",e.Custom="Custom",e))(et||{});const pt=t.reactive({}),Nd={data:{type:Object,default:[]},id:{type:String,default:""},editable:{type:Boolean,default:!0},editorType:{type:String,default:""},editorControlSource:{type:Object,default:{}},label:{type:String,default:""},defaultValue:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},paramData:{type:Object,default:[]},showLabel:{type:Boolean,default:!0},idField:{type:String,default:""},textField:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},fieldData:{type:Array,default:[]},varData:{type:Array,default:[]},formData:{type:Array,default:[]},activeViewModelFieldData:{type:Array,default:[]},showOutline:{type:Boolean,default:!0},editor:{type:Object,default:{type:"Default"}}};function Id(e){function n(i){return e.data.find(r=>r[e.idField||"id"]===i)?i:""}function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"combo-list",componentProps:{data:e.data,editable:e.editable==="true",idField:e.idField||"id",textField:e.textField||"label",enableClear:!0},checkAndProcessBeforeAssign:n}}function a(){}return{createEditorProps:o,onValueChange:a}}function Fd(e){function n(i){return typeof i=="string"&&i!==""?i==="true":i}function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"switch",componentProps:{},convertEventParamValue2EditorValue:n}}function a(){}return{createEditorProps:o,onValueChange:a}}function ur(e){const n=t.computed(()=>e.editor.type===et.Default||e.editorType===et.Default);function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"input-group",componentProps:{}}}function a(){}return{createEditorProps:o,shouldRenderAppendButton:n,onValueChange:a}}function kd(e){const{t:n}=Ge.useI18n(),o=t.computed(()=>e.editor.type===et.Default||e.editorType===et.Default);function a(r){return e.data.find(u=>{const d=u;return d.children?d.children.some(c=>{var h;return((h=c.data)==null?void 0:h.id)===r}):!1})?r:""}function i(){var r;pt[((r=e.editor)==null?void 0:r.type)||e.editorType]={type:"combo-tree",componentProps:{data:e.data,placeholder:n("eventParameter.comboTree.placeholder"),enableSearch:!1,enableClear:!0,editable:!1,readonly:!1,disabled:!1,idField:e.idField||"id",textField:e.textField||"name",mapFields:{id:"selectId"},multiSelect:!1,customRowStatus:s=>(s.raw.children&&s.raw.children.length&&(s.disabled=!0),s)},checkAndProcessBeforeAssign:a}}t.watch(()=>e.data,(r,s)=>{var u,d,f;r!==s&&((d=pt[((u=e.editor)==null?void 0:u.type)||e.editorType])==null?void 0:d.type)==="combo-tree"&&(pt[((f=e.editor)==null?void 0:f.type)||e.editorType].componentProps.data=r)});function l(){}return{createEditorProps:i,shouldRenderAppendButton:o,onValueChange:l}}function Pd(e){function n(i){return i?"":"/api/runtime/sys/v1.0/functions/allfuncs"}function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"menu-lookup",componentProps:{fetchNodeApi:n}}}function a(){}return{createEditorProps:o,onValueChange:a}}function Ed(e){const{t:n}=Ge.useI18n();function o(){var u,d;const r=e.editorControlSource,s=(d=(u=r==null?void 0:r.context)==null?void 0:u.schema)==null?void 0:d.value;if(!s||typeof s!="string")return[];try{const f=JSON.parse(s);return Array.isArray(f)?f.filter(c=>c.id!=="sync"):[]}catch(f){return console.error(`${n("eventParameter.jsonEditor.error")}`,f),[]}}function a(){return Promise.resolve({parameterDescriptors:o(),formContextData:{fieldData:e.fieldData,varData:e.varData,formData:e.formData}})}function i(){var r;pt[((r=e.editor)==null?void 0:r.type)||e.editorType]={type:"json-editor",componentProps:{parameterDescriptors:o(),formContextData:{fieldData:e.fieldData,varData:e.varData,formData:e.formData},beforeOpen:a,dialogTitle:n("eventParameter.jsonEditor.dialogTitle"),keyColumnTitle:n("eventParameter.jsonEditor.keyColumnTitle"),valueColumnTitle:n("eventParameter.jsonEditor.valueColumnTitle"),addButtonText:n("eventParameter.jsonEditor.addButtonText"),keyColumnPlaceholder:n("eventParameter.jsonEditor.keyColumnPlaceholder")}}}function l(){}return{createEditorProps:i,onValueChange:l}}function Md(e){function n(d){d.forEach(f=>{f.sortType==="1"?f.sortType="desc":f.sortType==="0"&&(f.sortType="asc")})}function o(d){d.forEach(f=>{f.sortType==="desc"?f.sortType="1":f.sortType==="asc"&&(f.sortType="0")})}function a(d){if(!d&&typeof d!="string")return[];try{const f=JSON.parse(d);if(Array.isArray(f))return n(f),f}catch{return[]}return[]}function i(d){return typeof d=="string"?d:!Array.isArray(d)||d.length===0?"":(o(d),JSON.stringify(d))}function l(){const d=e.activeViewModelFieldData||[],f=[];return d.forEach(c=>{var h;f.push(Object.assign({},c,{id:c.path,parent:(h=c.parentNode)==null?void 0:h.path}))}),f}function r(){const d=l(),f=a(e.modelValue),c=[],h=[],p={};return Promise.resolve({fieldList:d,conditionList:f,entities:c,variables:h,formContextData:p})}function s(){var d;pt[((d=e.editor)==null?void 0:d.type)||e.editorType]={type:"sort-condition-editor",componentProps:{fields:l(),beforeOpen:r},convertEditorValue2EventParamValue:i}}function u(){}return{createEditorProps:s,onValueChange:u}}function _d(e){function n(s){if(!s&&typeof s!="string")return[];try{const u=JSON.parse(s);if(Array.isArray(u))return u}catch{return[]}return[]}function o(s){return typeof s=="string"?s:!Array.isArray(s)||s.length===0?"":JSON.stringify(s)}function a(){const s=e.activeViewModelFieldData||[],u=[];return s.forEach(d=>{var f;u.push(Object.assign({},d,{id:d.path,parent:(f=d.parentNode)==null?void 0:f.path}))}),u}function i(){const s=a(),u=n(e.modelValue),d=[],f=[],c={fieldData:e.fieldData,varData:e.varData};return Promise.resolve({fieldList:s,conditionList:u,entities:d,variables:f,formContextData:c})}function l(){var s;pt[((s=e.editor)==null?void 0:s.type)||e.editorType]={type:"filter-condition-editor",componentProps:{fields:a(),singleValue:!1,beforeOpen:i},convertEditorValue2EventParamValue:o}}function r(){}return{createEditorProps:l,onValueChange:r}}function Od(e){function n(){var a,i;pt[((a=e.editor)==null?void 0:a.type)||e.editorType]={type:"custom",componentProps:{},render:(i=e.editor)==null?void 0:i.customRender}}function o(){}return{createEditorProps:n,onValueChange:o}}function Bd(e){var m;const n=t.ref(((m=e.editor)==null?void 0:m.type)||e.editorType),o=Id(e),a=Fd(e),i=ur(e),l=kd(e),r=Pd(e),s=Ed(e),u=Md(e),d=_d(e),f=Od(e);function c(){const g=n.value;return g===et.Combolist||g===et.Select?o.createEditorProps():g===et.Checkbox||(g===et.MenuIdSelector?r.createEditorProps():g===et.ConfigurationParameterEditor?s.createEditorProps():g===et.SortEditor?u.createEditorProps():g===et.FilterEditor?d.createEditorProps():g===et.AppIdSelector||(g===et.ComboLookup?l.createEditorProps():g===et.Numberbox||(g===et.Switch?a.createEditorProps():g===et.Custom?f.createEditorProps():i.createEditorProps()))),pt[n.value]}function h(){return"input-group"}function p(){return{}}return{getEditorConfig:c,getEditorType:h,getEditorMap:p}}function Dd(e){const{t:n}=Ge.useI18n(),o=t.reactive([{id:"tabField",title:n("eventParameter.generalEditor.field"),treeConfigs:{id:"tabFieldTree",columns:[{field:"name"}],data:e.fieldData,onSelectNode:()=>{},componentRef:t.ref()},visible:!0},{id:"tabVar",title:n("eventParameter.generalEditor.tabVar"),treeConfigs:{id:"tabVarTree",data:e.varData},visible:!0},{id:"tabForm",title:n("eventParameter.generalEditor.form"),treeConfigs:{id:"tabFormTree",data:e.formData},visible:!0}]);t.watch(()=>e.fieldData,(l,r)=>{l!==r&&(o[0].treeConfigs.data=l)}),t.watch(()=>e.varData,(l,r)=>{l!==r&&(o[1].treeConfigs.data=l)}),t.watch(()=>e.formData,(l,r)=>{l!==r&&(o[2].treeConfigs.data=l)}),t.watch(()=>e.showOutline,()=>{o[2].visible=!!e.showOutline},{immediate:!0});function a(l){l.forEach(r=>{Object.keys(r).forEach(s=>{s.indexOf("__fv")>-1&&delete r[s]})})}function i(){a(o[0].treeConfigs.data),a(o[1].treeConfigs.data),a(o[2].treeConfigs.data)}return{tabs:o,cleanTreeData:i}}function jd(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const wt=t.defineComponent({name:"FEventParameter",props:Nd,emits:["valueChange","onBlur","applicationSelectionChange","componentSelectionChange","parameterChanged","update:modelValue","update:parameterValue","confirm"],setup(e,n){const{isNull:o,isUndefined:a}=Ie.useCommonUtils(),i=t.ref(e.id);ur(e);const l=t.ref(),r=t.ref("tabField"),s=t.ref(),{getEditorConfig:u}=Bd(e);t.watch([()=>e.editor,()=>e.editorType,()=>e.data],()=>{s.value=u()},{immediate:!0});function d(){return!o(e.defaultValue)&&!a(e.defaultValue)&&e.defaultValue!==""&&(o(e.modelValue)||a(e.modelValue)||e.modelValue==="")?e.defaultValue:e.modelValue}function f(F){var P,B;return(P=s.value)!=null&&P.checkAndProcessBeforeAssign?s.value.checkAndProcessBeforeAssign(F):(B=s.value)!=null&&B.convertEventParamValue2EditorValue?s.value.convertEventParamValue2EditorValue(F):F}const c=t.ref(d());c.value=f(c.value);const h=t.ref(c.value);t.watch(()=>e.modelValue,()=>{const F=t.ref(d());c.value=f(F.value)}),t.watch(s,()=>{c.value=f(c.value)}),t.watch(()=>e.data,()=>{c.value=f(c.value)});const p=t.inject(Qn.F_MODAL_SERVICE_TOKEN),m=t.ref([{field:"name",title:"",dataType:"string"}]),g=t.ref({enable:!1}),y=t.ref({customRowStatus:F=>(F.collapse,F.raw.hasChildren&&(F.disabled=!0),F)}),v=t.ref({customRowStatus:F=>(F.layer===0&&(F.disabled=!0),F)}),b=t.computed(()=>{var F,P;return{type:(F=s.value)==null?void 0:F.type,...(P=s.value)==null?void 0:P.componentProps,readonly:e.readonly}}),{tabs:w,cleanTreeData:C}=Dd(e);function x(F){var P;(P=s.value)!=null&&P.convertEditorValue2EventParamValue&&(F=s.value.convertEditorValue2EventParamValue(F)),n.emit("update:modelValue",F),n.emit("valueChange",F)}function T(F,P){const B=P.selectionStart||0,{selectionEnd:$}=P,j=$-B,D=j>0,O=h.value&&h.value.split("")||[];return D?O.splice(B,j,F):O.splice(B,0,F),O.join("")}function S(F,P){if(!F.data)return;const{data:B}=F;let $=F.parentNode,{label:j}=B;for(;$&&$.parentNode;)$.data&&(j=$.data.label+"/"+j),$=$.parentNode;return T(`{DATA~/${j}}`,P)}function V(F,P){const{statePath:B}=F;let $=P.value;if(B){const j=B.split("/");if($=B,j.length===3){const O=`#{${j[1]}}`;j.splice(1,1,O),$=j.join("/")}$=`{UISTATE~${$}}`}return T($,P)}function N(F,P,B){const $=l.value.getTextareaElement();switch(F){case"tabForm":h.value=T(`#{${B.data.id}}`,$);break;case"tabField":h.value=S(B,$);break;case"tabVar":h.value=V(B.data,$);break}n.emit("paramChanged",{tabId:F,index:P,raw:B,value:c.value})}function k(){return w.forEach(F=>{F.treeConfigs.data.forEach(P=>{Object.prototype.hasOwnProperty.call(P,"__fv_visible__")&&delete P.__fv_visible__})}),()=>{let F;return t.createVNode(Ft,{class:"nav-tree-panel"},{default:()=>[t.createVNode(Ft.FLayoutPane,{position:"left",width:300,resizable:!1},{default:()=>[t.createVNode(Sn,{activeId:r.value,"onUpdate:activeId":P=>r.value=P},jd(F=w.map(P=>P.visible&&t.createVNode(Sn.FTabPage,{key:P.id,id:P.id,title:P.title},{default:()=>[P.id==="tabField"&&t.createVNode(Jt,{rowNumber:g,columnOption:{fitColumns:!0,fitMode:"expand"},rowOption:y.value,hierarchy:{collapseField:"collapse"},key:P.treeConfigs.id,data:P.treeConfigs.data,columns:m.value,fit:!0,height:340,onDoubleClickRow:function($,j){N(P.id,$,j)}},null),P.id==="tabVar"&&t.createVNode(Jt,{columnOption:{fitColumns:!0,fitMode:"expand"},rowNumber:g,rowOption:v.value,key:P.treeConfigs.id,data:P.treeConfigs.data,fit:!0,height:340,onDoubleClickRow:function($,j){N(P.id,$,j)}},null),P.id==="tabForm"&&t.createVNode(Jt,{columnOption:{fitColumns:!0,fitMode:"expand"},rowNumber:g,key:P.treeConfigs.id,data:P.treeConfigs.data,columns:m.value,fit:!0,height:340,onDoubleClickRow:function($,j){N(P.id,$,j)}},null)]})))?F:{default:()=>[F]})]}),t.createVNode(Ft.FLayoutPane,{position:"center"},{default:()=>[t.createVNode(ro,{ref:l,modelValue:h.value,"onUpdate:modelValue":P=>h.value=P,rows:10,autoHeight:!0},null)]})]})}}function I(){h.value=c.value;const F=p.open({title:"参数编辑器",width:900,height:500,fitContent:!1,showHeader:!0,showCloseButton:!0,draggable:!0,render:k(),onClosed:()=>{C()},buttons:[{class:"btn btn-secondary",text:"取消",handle:()=>{F.destroy(),C()}},{class:"btn btn-primary",text:"确定",handle:()=>{c.value=h.value,n.emit("update:modelValue",c.value),n.emit("confirm",c.value),F.destroy(),C()}}]})}function E(){return b.value.type==="input-group"?t.createVNode("span",{class:"f-icon f-icon-lookup",onClick:I,style:"margin-top: 2px;margin-right: 5px;color: rgba(0, 0, 0, .25)"},null):t.createVNode(t.Fragment,null,null)}const _=()=>{n.emit("update:modelValue","")},M=()=>l.value.elementRef;return n.expose({getInputRef:M}),()=>{var F,P;return((F=s.value)==null?void 0:F.type)==="custom"&&((P=s.value)!=null&&P.render)?s.value.render():t.createVNode(dn.FDynamicFormGroup,{id:i.value,editor:b.value,modelValue:c.value,"onUpdate:modelValue":B=>c.value=B,showLabel:!1,customClass:"f-event-parameter",onChange:x,onClear:_},{groupTextTemplate:()=>E()})}}});wt.install=e=>{e.component(wt.name,wt)},wt.register=(e,n,o,a)=>{e["event-parameter"]=wt,n["event-parameter"]=wt},wt.registerDesigner=(e,n,o)=>{e["event-parameter"]=wt,n["event-parameter"]=wt};const dr={injectSymbolToken:{type:Symbol},viewOptions:{type:Array,default:[]},viewType:{type:String,default:"Tabs"},editorParams:{type:Object,default:null},showFooter:{type:Boolean,default:!1},validateFunction:{type:Function,default:null}},zn=new Map([["appearance",ht]]);function $d(e,n){const o=Math.random().toString().slice(2,6),a=n.parentComponentInstance,i=e.getSchemaByType("tab-page");i.id=`tab-page-${o}`,i.title="标题",i.toolbar={id:`tab-page-toolbar-${o}`,buttons:[]};const l=e.getSchemaByType("tabs");Object.assign(l,{id:`tabs-${o}`,appearance:{class:"f-component-tabs f-tabs-has-grid"},contents:[i],activeId:i.id});const r=e.getSchemaByType("section");Object.assign(r,{id:`section-${o}`,appearance:{class:"f-section-tabs f-section-in-mainsubcard"},fill:!1,showHeader:!1,contents:[l]});const s=e.getSchemaByType("content-container");Object.assign(s,{id:`container-${o}`,appearance:{class:"f-struct-wrapper"},contents:[r]});const u=a.schema;switch(u&&u.type){case ce["splitter-pane"].type:{r.appearance.class="f-section-tabs f-section-in-main",l.appearance.class="f-component-tabs";break}}const d=a.elementRef,f=window.getComputedStyle(d);return f&&f.display==="flex"&&(s.appearance.class+=" d-block"),s}function fr(e,n,o){if(o.parentComponentInstance)return $d(e,o);{const i=e.getSchemaByType("tab-page");return n.contents=[i],n}}function Ld(e,n,o){return n}const pr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tabs.schema.json",title:"tabs",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a Tabs",type:"string"},type:{description:"The type string of Tabs component",type:"string",default:"tabs"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},autoTitleWidth:{description:"",type:"boolean",default:!1},titleWidth:{description:"",type:"number"},titleLength:{description:"",type:"number",default:7},fill:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},activeId:{description:"",type:"string",default:""}},required:["id","type","contents"],events:{onTabChange:"切换标签页事件",onTabRemove:"移除标签页事件"}},Rd={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-toolbar.schema.json",title:"tab-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Tab Toolbar",type:"string"},type:{description:"The type string of Tab Toolbar",type:"string",default:"tab-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Tab Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Tab Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},Ad=new Map([["buttons","items"],["appearance",ht]]);function Hn(e,n,o){return n}const zd={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-toolbar.schema.json",title:"response-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"response-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Response Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Response Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},Hd={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-toolbar-item.schema.json",title:"response-toolbar-item",description:"A Farris Toolbar Item Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"response-toolbar-item"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"对齐",type:"string",default:"right"},text:{description:"文本",type:"string",default:"按钮"},icon:{description:"图标",type:"string",default:""},disabled:{description:"禁用",type:"boolean",default:!1},visible:{description:"是否可见",type:"boolean",default:!0},onClick:{description:"点击事件",type:"string",default:""},tipsEnable:{description:"",type:"boolean",default:!1},tipsText:{description:"",type:"string",default:""},dropdownClass:{description:"处于下拉菜单时的样式",type:"string",default:""},split:{description:"",type:"boolean",default:!1}},required:["id","type","text"],events:{onClick:"点击事件"}},Wn={id:{type:String,default:""},customClass:{type:String,default:""},alignment:{Type:String,default:"right"},items:{Type:Array,default:[]},visible:{type:Boolean,default:!0}},Wd=Object.assign({},Wn,{componentId:{type:String,default:""}});Ye(Wn,zd,Ad,Hn);const mr={id:{type:String,default:""},item:{type:Object,default:{}},items:{type:Object,default:{}},class:{type:String,default:"btn-secondary"},text:{type:String,default:""},disabled:{type:Boolean,default:!1},icon:{type:String,default:""},componentId:{type:String,default:""},expanded:{type:Boolean,default:!1},alignment:{Type:String,default:"right"},split:{type:Boolean,default:!1},isDP:{type:Boolean,default:!1},isDPItem:{type:Boolean,default:!1}};Ye(mr,Hd,void 0,Hn);const Oo={tabType:{type:String,default:"default"},autoTitleWidth:{type:Boolean,default:!1},titleLength:{type:Number,default:7},position:{type:String,default:"top"},showDropdown:{type:Boolean,default:!0},scrollStep:{type:Number,default:10},autoResize:{type:Boolean,default:!1},width:{type:Number},height:{type:Number},searchBoxVisible:{type:Boolean,default:!0},titleWidth:{type:Number,default:0},customClass:{type:String,default:""},activeId:{type:String},fill:{type:Boolean,default:!1},justifyContent:{type:String,default:"left"},visible:{type:Boolean,default:!0}},qd=Ye(Oo,pr,zn,fr),hr=Object.assign({},Oo,{componentId:{type:String,default:""}}),Ud=Ye(hr,pr,zn,fr),Gd=Qa(),Yd=Ye(Wn,Rd,zn,Hn);function Xd(e,n,o){const a=t.ref([]),i=t.ref(e.activeId||"");let l="";const r=t.ref(!0),s=t.ref([]),u=t.ref(!0),d=t.ref(0),f=t.computed(()=>{const V=a.value.find(k=>k.props.id===i.value);return(V==null?void 0:V.props.toolbarPosition)==="inHead"});function c(V,N=!0){const k=V.findIndex(I=>I.props.show!==!1&&!I.props.disabled);if(s.value=[],k!==-1){if(i.value=V[k].props.id,!N)return;const I=V[k];I&&I.props.toolbar&&I.props.toolbar.buttons&&I.props.toolbar.buttons.length&&(s.value=[...I.props.toolbar.buttons],u.value=I.props.toolbarVisible)}}function h(V){i.value=V;const N=a.value.find(k=>k.props.id===V);s.value=[],N&&N.props.toolbar&&N.props.toolbar.buttons&&N.props.toolbar.buttons.length&&(s.value=[...N.props.toolbar.buttons],u.value=N.props.toolbarVisible),n.emit("update:activeId",V),n.emit("tabChange",{prevId:l,nextId:i.value})}function p(V){let N=-1;if(!i.value){if(N=V.findIndex(k=>i.value===k.props.id&&k.props.show!==!1&&!k.props.disabled),N>-1)return;l=i.value}c(V,!1),h(i.value)}function m(V){let N=!1;if(V){const k=a.value.find(I=>I.props.id===V);N=!k||k.props.show===!1||k.props.disabled===!0}N?p(a.value):(i.value!==V&&(l=i.value,i.value=V),h(i.value))}t.watch(()=>e.activeId,(V,N)=>{V!==N&&m(V)});function g(V){var k;if(e.autoTitleWidth)return;const N=(k=V.value)==null?void 0:k.querySelectorAll(".st-tab-text");if(!(!N||e.tabType==="pill"))for(let I=0;I<N.length;I++){const E=N[I].parentNode;N[I].scrollWidth>E.offsetWidth?N[I].classList.contains("farris-title-text-custom")||N[I].classList.add("farris-title-text-custom"):N[I].classList.remove("farris-title-text-custom")}}const y=V=>{V.preventDefault(),V.stopPropagation()};function v(V,N,k=!1){const I=a.value.findIndex(E=>E.props.id===N);a.value=a.value.filter(E=>E.props.id!==N),i.value===N&&(l=N,i.value="",c(a.value)),y(V),t.nextTick(()=>{d.value++,g(o),k&&(r.value=!0),n.emit("tabRemove",{removeIndex:I,removeId:N,activeId:i.value})})}function b(V,N=!0){i.value===V&&(i.value="",l=V,m("")),t.nextTick(()=>{d.value++,N&&(r.value=!0)})}let w;function C(V){w=V}function x(V){i.value!==V&&(l=i.value,h(V),w&&w())}function T(V){a.value.findIndex(k=>k.props.id===V.props.id)===-1&&a.value.push(V),d.value++}function S(V){a.value.findIndex(k=>k.props.id===V.props.id)!==-1&&(a.value.forEach(k=>{k.props.id===V.props.id&&(k=V)}),V.props.id===i.value&&f.value,t.nextTick(()=>{d.value++,g(o)}))}return{activeId:i,addTab:T,changeTitleStyle:g,removeTab:v,selectTab:x,tabPages:a,updateTab:S,toolbarItems:s,needUpdateNavigationLayout:d,checkActiveIdAndSelect:m,toggleShowTab:b,hasInHeadClass:f,setScrollToSelectedTabFunction:C,toolbarVisible:u}}function Jd(e,n,o,a,i){const{activeId:l,removeTab:r,selectTab:s}=i,u=t.computed(()=>{const b={"st-tab-text":!0,"text-truncate":e.tabType==="pill"&&!e.autoTitleWidth,"farris-title-auto":e.autoTitleWidth};return Ie.getCustomClass(b,n.customTitleClass)}),d=t.computed(()=>({"nav-item":!0,"d-none":n.show!==void 0?!n.show:!1,"f-state-active":n.id===l.value,"f-state-disabled":n.disabled})),f=t.computed(()=>({width:`${n.tabWidth}px`})),c=t.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===l.value,disabled:n.disabled})),h=t.reactive({content:n.title,overflowShown:!0});function p(){return e.tabType!=="pill"&&!e.autoTitleWidth?t.withDirectives(t.createVNode("span",{class:u.value,"data-tabid":n.id},[n.title]),[[t.resolveDirective("tooltip"),h]]):t.createVNode("span",{class:u.value,"data-tabid":n.id,title:n.title},[n.title])}const m=t.ref(n.removeable);function g(){return m.value?t.createVNode("span",{class:"st-drop-close",onClick:b=>r(b,n.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function y(b){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function v(){return o.slots.title?t.createVNode("a",{class:c.value,onClick:y,id:`${n.id}-design-item`},[o.slots.title(o),g()]):n.titleRenderFunction?t.createVNode("a",{class:c.value,onClick:y,id:`${n.id}-design-item`},[n.titleRenderFunction(),g()]):t.createVNode("a",{class:c.value,onClick:y,id:`${n.id}-design-item`},[p(),g()])}return t.createVNode("li",{class:d.value,style:f.value},[v()])}function Qd(e,n,o,a,i){const{shouldShowNavigationButtons:l}=o,{tabPages:r}=i,s=t.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":l.value})),u=t.computed(()=>({width:"100%","justify-content":e.justifyContent})),d=t.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":e.tabType==="fill","nav-pills":e.tabType==="pills","flex-row":e.position==="top"||e.position==="bottom","flex-column":e.position==="left"||e.position==="right"}));return()=>t.createVNode("div",{class:s.value,style:u.value},[t.createVNode("ul",{class:d.value,ref:n},[r.value.map(f=>Jd(e,f.props,f,a,i))])])}function gr(e,n,o,a,i){const l=t.ref(),{shouldShowNavigationButtons:r}=o,{activeId:s,tabPages:u,selectTab:d}=i,f=t.ref(s.value),c=t.computed(()=>u.value.map(g=>({name:g.props.title,value:g.props.id,show:g.props.show,disabled:g.props.disabled}))),h=t.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":r.value})),p=t.computed(()=>({width:"100%",display:"flex","justify-content":e.justifyContent}));t.onMounted(()=>{l.value&&(n.value=l.value.$el)});function m(g){d(g)}return t.watch(()=>s.value,g=>{g!==f.value&&(f.value=g)},{immediate:!0}),()=>t.createVNode("div",{class:h.value,style:p.value},[t.createVNode(no,{items:c.value,modelValue:f.value,"onUpdate:modelValue":g=>f.value=g,onChange:m,ref:l},null)])}function Kd(e,n,o,a){const{t:i}=Ge.useI18n(),l=t.ref(),{activeId:r,removeTab:s,tabPages:u,selectTab:d}=a,{hideDropDown:f,searchTabText:c}=n,h=600;let p=null;const m=t.computed(()=>{var k,I;let N=[];return e.searchBoxVisible?N=(k=u.value)==null?void 0:k.filter(E=>E.props.title.includes(c.value)):N=(I=u.value)==null?void 0:I.slice(),N}),g=t.computed(()=>({"dropdown-menu":!0,"tabs-pt28":e.searchBoxVisible,show:!f.value,"d-none":f.value}));let y;function v(N){y=N}t.watch(f,N=>{if(y.value)if(N)l.value.style.width=null;else{const k=y.value.querySelector(".farris-tabs-header"),I=y.value.clientHeight-k.clientHeight-20,_=k.querySelector(".farris-tabs-title").clientWidth-20;l.value.style.maxWidth=_+"px",l.value.style.maxHeight=I+"px",t.nextTick(()=>{const{width:M}=l.value.getClientRects()[0];l.value.style.width=M?M+"px":null})}});function b(N){return{"dropdown-item":!0,"text-truncate":!0,"px-2":!0,disabled:N.props.disabled,active:N.props.id===r.value,"d-none":N.props.show!==!0}}function w(N){N.preventDefault(),N.stopPropagation()}function C(){p&&clearTimeout(p)}function x(){f.value||(p=setTimeout(()=>{f.value=!0},h))}function T(N,k){N.stopPropagation(),k.disabled||d(k.id),f.value=!0}function S(N,k){N.stopPropagation(),s(N,k,!0)}function V(){return t.createVNode("div",{ref:l,class:g.value,onMouseenter:()=>C(),onMouseleave:()=>x()},[e.searchBoxVisible&&t.createVNode("div",{onClick:N=>w(N),class:"pb-1 tabs-li-absolute"},[t.withDirectives(t.createVNode("input",{type:"text",class:"form-control","onUpdate:modelValue":N=>c.value=N},null),[[t.vModelText,c.value]]),t.createVNode("span",{class:"f-icon f-icon-page-title-query tabs-icon-search"},null)]),m.value.length?t.createVNode("ul",{class:"tab-dropdown-menu--items flex-fill"},[m.value.map(N=>t.createVNode("li",{class:b(N),onClick:k=>T(k,N.props)},[N.props.removeable&&N.props.disabled!==!0&&t.createVNode("span",{class:"float-right st-drop-close",onClick:k=>S(k,N.props.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]),t.createVNode("a",{class:"dropdown-title",title:N.props.title},[N.props.title])]))]):t.createVNode("div",{class:"dropdown-no-data"},[i("tabs.noData")])])}return{renderDropdownMenu:V,setTabsRef:v}}function Zd(e,n,o,a){const{hideDropDown:i}=n,{renderDropdownMenu:l,setTabsRef:r}=Kd(e,n,o,a),s=t.ref(e.showDropdown);function u(){return s.value&&t.createVNode(t.Fragment,null,[t.createVNode("button",{class:"btn dropdown-toggle-split dropdown-toggle",onClick:()=>{i.value=!1}},null),l()])}return{renderMorePagesButtton:u,setTabsRef:r}}function yr(e,n,o,a){const i=t.ref(!1),{selectTab:l,tabPages:r,needUpdateNavigationLayout:s,activeId:u}=a,d=4,f=t.computed(()=>({btn:!0,"sc-nav-btn":!0,"px-1":!0,"sc-nav-lr":!0,"d-none":!i.value})),c=t.computed(()=>({"btn-group":!0,"sc-nav-btn":!0,dropdown:!0,"d-none":!i.value})),h=t.computed(()=>({btn:!0,"sc-nav-rg":!0,"d-none":!i.value}));function p(b,w){if(!n.value)return;const C=n.value.scrollLeft,x=n.value.scrollWidth-n.value.offsetWidth;if(w>0){if(n.value.scrollLeft>=x)return;n.value.scrollLeft=C+e.scrollStep+b}else if(w<0){if(n.value.scrollLeft<=0)return;n.value.scrollLeft=C-e.scrollStep-b}}function m(b=-1){if(!i.value||!n.value)return;b<0&&(b=r.value.findIndex(S=>S.props.id===u.value));const w=e.tabType==="pills"?".f-capsule-item":".nav-item",C=n.value.querySelectorAll(w),{parentElement:x}=n.value,T=C[b];if(T&&x){const S=x.getBoundingClientRect().left,V=x.getBoundingClientRect().right,N=T.getBoundingClientRect().left,k=T.getBoundingClientRect().right;N<S?p(S-N,-1):V<k&&p(k-V,1),e.tabType==="one-page"&&o.scrollTo(b)}}function g(){var C;if(!n.value)return;const b=n.value,w=(C=n.value)==null?void 0:C.parentElement;i.value=w&&b&&w.offsetWidth<b.scrollWidth-d,i.value&&t.nextTick(()=>{m()})}function y(b){b.disabled||l(b.id)}function v(){["default","one-page"].indexOf(e.tabType)>-1&&t.nextTick(()=>{m()})}return t.watch(s,()=>{g()}),{previousButtonClass:f,nextButtonGroupClass:c,nextButtonClass:h,scrollTab:p,selectAndScrollToTab:y,shouldShowNavigationButtons:i,updateNavigationLayout:g,scrollToSelectedTab:v}}function vr(e,n){const{tabPages:o}=n,a=t.ref(""),i=t.ref(!0),l=t.computed(()=>e.searchBoxVisible),r=t.computed(()=>l.value?o.value.filter(u=>u.props.title.includes(a.value)):o.value.slice());return t.watch(i,s=>{s||(a.value="")}),{searchTabText:a,hideDropDown:i,shouldShowSearchBox:l,tabsInDropdownMenu:r}}function br(e,n,o){const a=".farris-tab-page",{tabPages:i}=o;function l(s){const u=n.value;if(u){const d=n.value.querySelectorAll(a);if(d.length>0){const f=d[s],{offsetTop:c}=f,h=c-32>0?c-32:0;u.scrollTop=h}}}function r(s){const u=i.value.findIndex(d=>d.props.id===s);u>-1&&l(u)}return{scrollTo:l,scrollToByPaggId:r}}const At=t.defineComponent({name:"FTabs",props:Oo,emits:["tabChange","tabRemove","update:activeId","Click"],setup(e,n){const{t:o}=Ge.useI18n(),a=t.ref(e.tabType),i=t.shallowRef(),l=t.ref(e.customClass),r=t.shallowRef(),s=t.shallowRef(),u=t.ref(),d=Xd(e,n,r),{activeId:f,changeTitleStyle:c,tabPages:h,addTab:p,updateTab:m,toolbarItems:g,checkActiveIdAndSelect:y,toggleShowTab:v,hasInHeadClass:b,toolbarVisible:w}=d,C=br(e,s,d),x=yr(e,r,C,d),{previousButtonClass:T,nextButtonClass:S,nextButtonGroupClass:V,scrollTab:N,updateNavigationLayout:k,scrollToSelectedTab:I}=x;d.setScrollToSelectedTabFunction(I);const E=vr(e,d),_=Qd(e,r,x,C,d),M=_,F=gr(e,r,x,C,d),P=new Map([["default",_],["one-page",M],["pills",F]]);t.computed(()=>{const oe=h.value.find(X=>X.props.id===f.value);return oe==null?void 0:oe.slots});const B=t.computed(()=>e.fill);t.provide("tabs",{activeId:f,addTab:p,updateTab:m,tabPages:h,tabType:a,shouldFillParentContaner:B,toggleShowTab:v});let $=!1;const j=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":b.value,"farris-tabs-inContent":!b.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),D=t.computed(()=>{const oe={width:b.value&&e.titleWidth?`${e.titleWidth}%`:""};return oe.width&&(oe.flex="unset"),oe}),O=t.computed(()=>{const oe={"farris-tabs":!0,"f-utils-fill-flex-column":B.value,"flex-column":e.position==="top","flex-column-reverse":e.position==="bottom","flex-row":e.position==="left","flex-row-reverse":e.position==="right","one-page":e.tabType==="one-page"};return l.value&&l.value.split(" ").reduce((X,ne)=>(X[ne]=!0,X),oe),oe}),L=new ResizeObserver(oe=>{oe.length&&k()});function z(){u.value&&!$&&(L.observe(u.value),$=!0)}t.watch(()=>e.visible,oe=>{t.nextTick(()=>{h.value.length&&y(e.activeId||h.value[0].props.id),k(),c(r),z()})}),t.watch(()=>e.autoTitleWidth,oe=>{t.nextTick(()=>{k(),c(r)})});const G={leftButton:o("tabs.leftButton"),rightButton:o("tabs.rightButton")};t.onMounted(()=>{e.visible&&(h.value.length&&y(e.activeId||h.value[0].props.id),t.nextTick(()=>{k(),c(r)}),z())});function J(){return t.createVNode("button",{title:G.leftButton,type:"button",class:T.value,onClick:()=>{N(0,-1)}},null)}function te(){return t.createVNode("button",{title:G.rightButton,type:"button",class:S.value,onClick:()=>{N(0,1)}},null)}const{renderMorePagesButtton:W,setTabsRef:q}=Zd(e,E,x,d);q(i);const R=(oe,X)=>{n.emit("Click",oe,X,f.value)};function H(){return g.value.length?t.createVNode("div",{class:"farris-tabs-toolbar"},[t.createVNode(Vn,{class:"f-utils-fill",alignment:b.value?"right":"left",items:g.value,visible:w.value,onClick:R},null)]):null}const A=P.get(e.tabType)||P.get("default");function U(){var oe,X,ne,ie;return t.createVNode("div",{class:j.value},[t.createVNode("div",{class:"farris-tabs-header-pre"},[(X=(oe=n.slots).headerPrefix)==null?void 0:X.call(oe)]),t.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:D.value,ref:u},[J(),A&&A(),t.createVNode("div",{class:V.value},[te(),W()])]),H(),t.createVNode("div",{class:"farris-tabs-header-post"},[(ie=(ne=n.slots).headerSuffix)==null?void 0:ie.call(ne)])])}const K=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":B.value}));function Q(){var oe,X;return t.createVNode("div",{class:K.value,ref:s},[(X=(oe=n.slots).default)==null?void 0:X.call(oe)])}return()=>e.visible?t.createVNode("div",{class:O.value,ref:i},[U(),Q()]):null}});function ef(e,n,o){const a={toolbar:n,toolbarVisible:!0};return n&&n.contents&&n.contents.length&&(n.contents.forEach(i=>{i.title&&(i.text=i.title)}),n.buttons=n.contents,delete n.contents),n&&Object.prototype.hasOwnProperty.call(n,"visible")&&(a.toolbarVisible=n.visible),a}const Cr=new Map([["appearance",ht],["toolbar",ef]]),wr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-page.schema.json",title:"tab-page",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a tab-page Item",type:"string"},type:{description:"The type string of tab-page Item component",type:"string",default:"tab-page"},contents:{description:"",type:"array",default:[]},title:{description:"",type:"string",default:"标题"},disabled:{description:"",type:"boolean",default:!1},removeable:{description:"",type:"boolean",default:!1},show:{description:"",type:"boolean",default:!0},toolbar:{description:"",type:"object"},tabWidth:{description:"",type:"number"},toolbarPosition:{description:"",type:"string",default:"inHead"},customTitleClass:{description:"",type:"string",default:""},onTabChange:{description:"",type:"切换标签页事件",default:""},onTabRemove:{description:"",type:"string",default:"移除标签页事件"},titleHtml:{description:"",type:"string",default:""},titleRenderFunction:{description:"",type:"function",default:null}},required:["id","type","contents"]},Bo={tabWidth:{type:Number},id:{type:String,default:""},customTitleClass:{type:String,default:""},titleOverflow:{type:Boolean,default:!1},title:{type:String,default:""},selected:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},removeable:{type:Boolean,default:!1},show:{type:Boolean,default:!0},toolbar:{type:Object,default:{}},toolbarPosition:{type:String,default:"inHead"},toolbarVisible:{type:Boolean,default:!0},titleRenderFunction:{type:Function}},tf=rt.createPropsResolver(Bo,wr,Cr),Sr=Object.assign({},Bo,{titleHtml:{type:String,default:""}}),nf=rt.createPropsResolver(Sr,wr,Cr);function of(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const qn=t.defineComponent({name:"FTabPage",props:Bo,emits:[],setup(e,n){const o=t.inject("tabs"),a=t.ref(e.show),i={slots:n.slots,props:e},l=t.ref((o==null?void 0:o.tabType.value)||"default");t.onMounted(()=>{const p=o==null?void 0:o.tabPages.value.findIndex(m=>m.props.id===e.id);(!p||p===-1)&&(o==null||o.addTab(i))}),t.onUnmounted(()=>{});const r=t.computed(()=>(e==null?void 0:e.id)===(o==null?void 0:o.activeId.value)),s=t.computed(()=>({display:r.value?"":"none"}));t.watch(()=>e,p=>{o==null||o.updateTab({props:p,slots:n.slots})},{immediate:!0,deep:!0}),t.watch(()=>e.show,p=>{o==null||o.toggleShowTab(e.id)});function u(){var m,g;const p=(g=(m=n.slots).default)==null?void 0:g.call(m);return t.createVNode(io,{"main-title":e.title,class:["farris-tab-page",a.value?"":"f-tab-d-none"]},of(p)?p:{default:()=>[p]})}const d=t.computed(()=>{var m;return{"farris-tab-page":!0,"f-tab-d-none":!a.value,"f-utils-fill-flex-column":r.value&&o&&((m=o.shouldFillParentContaner)==null?void 0:m.value)}});function f(){var m,g;const p=(g=(m=n.slots).default)==null?void 0:g.call(m);return t.createVNode("div",{class:d.value,style:s.value},[p])}const h=new Map([["default",f],["one-page",u]]).get(l.value)||f;return()=>h()}});function af(e,n,o,a,i,l){const{activeId:r,selectTab:s,removeDesignTab:u,selectDesignTab:d,addTabPageToolbar:f,resetPositionForSelectedElement:c}=i,h=t.computed(()=>({"st-tab-text":!0,"farris-title-auto":e.autoTitleWidth})),p=t.computed(()=>{const E={"farris-component":!0,"nav-item":!0,"f-state-active":n.id===r.value};return E[`${n.id}-design-item`]=!0,E}),m=t.computed(()=>{const E={};return n.tabWidth&&n.tabWidth>0&&(E.width=`${n.tabWidth}px`),E}),g=t.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===r.value}));function y(){return t.createVNode("span",{class:h.value,title:n.title},[n.title])}const v=t.ref(n.removeable);function b(){return v.value?t.createVNode("span",{class:"st-drop-close",style:{opacity:.6}},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function w(){return n.titleHtml+b()}function C(E){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function x(E){E&&(E.stopPropagation(),E.preventDefault()),d(E,n.id,l.value)}function T(E){u(E,n.id)}function S(E){f(E,n.id)}t.watch(()=>n.toolbarPosition,()=>{t.nextTick(()=>{c()})}),t.watch(()=>n.tabWidth,()=>{t.nextTick(()=>{c()})});function V(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:E=>T(E)},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function N(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增按钮",ref:"addComponent",onClick:E=>S(E)},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function k(){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[V(),!n.toolbar||!n.toolbar.buttons||!n.toolbar.buttons.length?N():""])])}function I(){return o.slots.title?t.createVNode("a",{class:g.value,onClick:C,id:`${n.id}-design-item`},[o.slots.title(o),b()]):n.titleHtml?t.createVNode("a",{class:g.value,onClick:C,id:`${n.id}-design-item`,innerHTML:w()},null):t.createVNode("a",{class:g.value,onClick:C,id:`${n.id}-design-item`},[y(),b()])}return t.createVNode("li",{onClick:E=>x(E),class:p.value,style:m.value,pageId:`${n.id}-design-item`},[k(),I()])}function rf(e,n,o,a,i,l,r){const{tabPages:s,selectTab:u,emitSelectionChange:d}=i,f=t.computed(()=>({spacer:!0,"f-utils-fill":!0})),c=t.computed(()=>({width:"100%","justify-content":e.justifyContent})),h=t.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":e.tabType==="fill","nav-pills":e.tabType==="pills","flex-row":e.position==="top"||e.position==="bottom","flex-column":e.position==="left"||e.position==="right"})),p=t.computed(()=>({overflow:"auto"})),m=function(g){var v;g&&(g.stopPropagation(),g.preventDefault());const y=En("tab-page");y.id=`tab_page_${Math.random().toString().slice(2,6)}`,y.title="标题",y.toolbar={id:`${y.id}_toolbar`,buttons:[],type:"tab-toolbar"},(v=l.value.schema.contents)==null||v.push(y),u(y.id),t.nextTick(()=>{d(y.id,l.value)})};return()=>t.createVNode("div",{class:f.value,style:c.value},[t.createVNode("ul",{class:h.value,style:p.value,ref:n},[s.value.map(g=>af(e,g.props,g,a,i,l)),t.createVNode("li",{class:"nav-item no-drag add-nav-item"},[t.createVNode("a",{class:"nav-link tabs-text-truncate",title:"添加页签",onClick:g=>m(g)},[t.createVNode("i",{class:"f-icon f-icon-plus",style:"font-size: 20px;margin: 0 auto;line-height: 24px;"},null)])])])])}class lf extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getBehaviorProperties(n),this.getToolbarProperties(n),this.propertyConfig}getBehaviorProperties(n){const o=this.getPropertyEditorParams(n,[],"show"),a=this.getPropertyEditorParams(n,[],"disabled"),i=this;this.propertyConfig.categories.behavior={description:"",title:"行为",properties:{show:{description:"是否可见",type:"boolean",title:"是否可见",editor:o},disabled:{description:"是否禁用",type:"boolean",title:"是否禁用",editor:a},removeable:{description:"是否可移除",type:"boolean",title:"是否可移除"}},setPropertyRelates(l,r){if(l)switch(l.propertyID){case"disabled":case"show":i.afterMutilEditorChanged(n,l);break}}}}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Infomation",title:"基本信息",properties:{id:{description:"标签页项的标识",title:"标识",type:"string",readonly:!0},title:{description:"标签页项的标题",title:"标题",type:"string"}},setPropertyRelates(o,a){if(o)switch(o&&o.propertyID){case"title":{o.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(n){this.propertyConfig.categories.appearance={title:"外观",description:"",properties:{customTitleClass:{title:"标题样式",type:"string",description:"为标签页的标题指定样式"},tabWidth:{description:"为标签页的标题指定宽度",type:"number",title:"标签页的标题宽度(px)",editor:{nullable:!0,min:0,decimals:0}}}}}getToolbarProperties(n){this.propertyConfig.categories.toolbar={title:"工具栏",description:"",properties:{toolbarPosition:{title:"工具栏位置",type:"string",description:"为工具栏指定位置",editor:{type:"combo-list",data:[{id:"inHead",name:"标题区域"},{id:"inContent",name:"内容区域"}]}}}}}}class sf extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n),this.propertyConfig.categories.behavior=this.getBehaviorProperties(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n){return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:""},titleWidth:{description:"标题区域宽度占标签头部区域的横向比例",type:"number",title:"标题区域宽度(%)",editor:{min:0,decimals:0,max:100,nullable:!0}},autoTitleWidth:{description:"是,则标题显示全部字符;否,则标题最多显示20个字符",type:"boolean",title:"标题自适应宽度"},fill:{description:"flex布局下,是否填充满剩余部分",type:"boolean",title:"填充"}}}}getBehaviorProperties(n){const o=this.getCurrentTabPages(n);n.activeId&&typeof n.activeId=="string"&&(o.find(r=>r.id===n.activeId)||(n.activeId=""));const a=this.getPropertyEditorParams(n,["Const","Variable"],"activeId",{constType:"enum",constEnums:o},{newVariableType:"String"}),i=this;return{description:"",title:"行为",properties:{activeId:{title:"默认选中标签页",type:"string",description:"默认选中标签页",defaultValue:o.length>0?o[0].id:"",editor:a}},setPropertyRelates(l,r){if(l)switch(l.propertyID){case"activeId":i.addNewVariableToViewModel(l,i.viewModelId);break}}}}getCurrentTabPages(n){const o=n.contents||[],a=[];return o.forEach(i=>{a.push({name:i.title,id:i.id})}),a}getEventPropConfig(n){const o=[{label:"onTabChange",name:"切换标签页事件"},{label:"onTabRemove",name:"移除标签页事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),l=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=r.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}function cf(e,n){const o=e.schema,a=new So,{canMove:i,canAccept:l,canDelete:r}=a.getTemplateRule(e,n);function s(g){return l}function u(){return r}function d(){return i}function f(){return!i&&!r}function c(g){var b;return(((b=document.querySelector(".dgComponentFocused"))==null?void 0:b.id)===`${o.id}-design-item`?new sf(g,n):new lf(g,n)).getPropertyConfig(o)}function h(){e.designerItemElementRef.value&&t.nextTick(()=>{const g=e.designerItemElementRef.value.querySelector(".dgComponentSelected");g!=null&&g.className.includes("dgComponentSelected")&&g.click()})}function p(g){if(!g)return;const{changeObject:y}=g;y&&y.propertyID==="title"&&h()}function m(){var g;if(e&&n){const{formSchemaUtils:y}=n,v=ce.tabs.name;y.getControlBasicInfoMap().set(e.schema.id,{componentTitle:v,parentPathName:v});const b=e.designerItemElementRef.value.querySelector(".farris-tabs-content");(g=e.schema.contents)==null||g.forEach(w=>{const C=b==null?void 0:b.querySelector(`#${w.id}-design-item`);C&&C.componentInstance&&C.componentInstance.value.setComponentBasicInfoMap()})}}return{canAccepts:s,checkCanDeleteComponent:u,checkCanMoveComponent:d,getPropsConfig:c,hideNestedPaddingInDesginerView:f,onPropertyChanged:p,setComponentBasicInfoMap:m}}function uf(e,n,o,a,i,l){const r=t.ref([]),s=t.ref(e.activeId||""),u=t.ref(!0),d=t.ref(),f=t.ref([]),c=t.ref(!0),h=t.ref(0),p=t.computed(()=>{const A=r.value.find(K=>K.props.id===s.value);return(A==null?void 0:A.props.toolbarPosition)==="inHead"});let m;function g(A){m=A}function y(A,U=!0){const K=A.value&&A.value.length>0?0:-1;if(f.value=[],K!==-1&&(!s.value||typeof s.value=="object")){if(s.value=A.value[K].props.id,!U)return;const Q=A.value[K];Q&&Q.props.toolbar&&Q.props.toolbar.buttons&&Q.props.toolbar.buttons.length&&(f.value=[...Q.props.toolbar.buttons])}}function v(){const A=r.value.find(Q=>Q.props.id===s.value);if(f.value=[],A&&A.props.toolbar){const Q=Object.prototype.hasOwnProperty.call(A.props.toolbar,"contents")?"contents":"buttons";A.props.toolbar[Q]&&A.props.toolbar[Q].length&&(f.value=[...A.props.toolbar[Q]])}const U=a.schema.contents,K=U==null?void 0:U.find(Q=>Q.id===s.value);K!=null&&K.toolbar&&!K.toolbar.type&&(K.toolbar.type="tab-toolbar"),d.value=K==null?void 0:K.toolbar}function b(A){const U=s.value;s.value=A,i.changeSelectedId(""),v(),n.emit("tabChange",{prevId:U,nextId:s.value})}function w(A){let U=-1;!s.value&&(U=A.value.findIndex(K=>s.value===K.props.id),U>-1)||(y(A,!1),b(s.value))}function C(A){let U=!1;U=!r.value.find(Q=>Q.props.id===A),U?(s.value="",w(r)):(s.value=A,b(s.value))}function x(A,U){A.classList.contains(U)||A.classList.add(U)}function T(A,U){A.classList.remove(U)}function S(A){const{parentElement:U}=A;U&&(A.scrollWidth>U.offsetWidth?x(A,"farris-title-text-custom"):T(A,"farris-title-text-custom"))}t.watch(()=>e.activeId,(A,U)=>{A!==U&&C(A)});function V(A){var K;if(e.autoTitleWidth)return;const U=(K=A.value)==null?void 0:K.querySelectorAll(".st-tab-text");U&&U.forEach(Q=>S(Q))}const N=A=>{A.preventDefault(),A.stopPropagation()};function k(A){r.value=r.value.filter(U=>U.props.id!==A),s.value===A&&(s.value="",y(r))}function I(A,U,K=!1){const Q=r.value.findIndex(oe=>oe.props.id===U);k(U),N(A),t.nextTick(()=>{h.value++,V(o),K&&(u.value=!0),n.emit("tabRemove",{removeIndex:Q,removeId:U,activeId:s.value})})}function E(A,U=!0){s.value===A&&(s.value="",y(r)),t.nextTick(()=>{h.value++,U&&(u.value=!0)})}function _(A){b(A)}function M(A){r.value.findIndex(K=>K.props.id===A.props.id)===-1&&r.value.push(A),h.value++}function F(A){r.value.findIndex(K=>K.props.id===A.props.id)!==-1&&(r.value.forEach(K=>{K.props.id===A.props.id&&(K=A)}),A.props.id===s.value&&p.value,t.nextTick(()=>{h.value++,V(o)}))}function P(A){A&&(A.stopPropagation(),A.preventDefault())}function B(A){var Q;const U=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),K=U==null?void 0:U.querySelector(`#${A}-design-item`);(Q=K==null?void 0:K.componentInstance)!=null&&Q.value.onRemoveComponent&&K.componentInstance.value.onRemoveComponent(l)}function $(A){var X,ne;const U=l.formSchemaUtils.getExpressions();if(!U||!U.length)return;const K=a.schema.contents,Q=K==null?void 0:K.find(ie=>ie.id===A);if(!Q||!((ne=(X=Q.toolbar)==null?void 0:X.buttons)!=null&&ne.length))return;const oe=ie=>{ie.forEach(we=>{const le=U.findIndex(de=>de.target===we.id);le>-1&&U.splice(le,1),we.children&&we.children.length&&oe(we.children)})};oe(Q.toolbar.buttons)}function j(A,U){var oe,X;P(A);const K=a.schema.contents,Q=K==null?void 0:K.findIndex(ne=>ne.id===U);!K||Q===-1||Q===void 0||(oe=l==null?void 0:l.designerContext)!=null&&oe.checkCanDeleteControl&&!l.designerContext.checkCanDeleteControl(K[Q])||($(U),B(U),K==null||K.splice(Q,1),k(U),v(),(X=a==null?void 0:a.setupContext)==null||X.emit("selectionChange"),lt.value++)}function D(){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(U=>U.classList.remove("dgComponentFocused"));const A=document.getElementsByClassName("dgComponentSelected");Array.from(A).forEach(U=>U.classList.remove("dgComponentSelected"))}function O(A){A.currentTarget.classList.add("dgComponentFocused","dgComponentSelected")}function L(A,U){var X;const{contents:K=[]}=a.schema,Q=K==null?void 0:K.findIndex(ne=>ne.id===A),oe=K[Q];(X=a==null?void 0:a.setupContext)==null||X.emit("selectionChange",oe.type,oe,e.componentId,U)}function z(A,U){const K=U.getBoundingClientRect(),Q=A.getBoundingClientRect(),oe=Q.left+Q.width<=K.left+K.width,X=Q.left+Q.width>=K.left;return oe&&X}function G(A,U){if(A||(A=m.value.querySelector(".farris-tabs-header").querySelector(".dgComponentSelected")),U||(U=m.value.querySelector(".farris-nav-tabs")),A&&U){const K=A.querySelector(".component-btn-group");z(A,U)?lo(A):K&&(K.style.display="none")}}function J(){o&&o.value&&o.value.addEventListener("scroll",A=>{const U=A.target.querySelector(".dgComponentSelected");G(U,A.target)})}function te(A){if(A&&A.parentElement){let U=A.getBoundingClientRect(),K=A.parentElement.getBoundingClientRect();(U.left<K.left||U.right>K.right)&&(o.value.scrollLeft=0,U=A.getBoundingClientRect(),K=A.parentElement.getBoundingClientRect(),o.value.scrollLeft=U.left-K.left),Fn(A)}}function W(A,U,K){var X,ne,ie;D(),P(A),O(A),L(U,K);const Q=A.currentTarget;te(Q);const oe=(ne=(X=K.schema)==null?void 0:X.contents)==null?void 0:ne.find(we=>we.id===U);if(oe&&(!oe.toolbar||((ie=oe.toolbar.buttons)==null?void 0:ie.length)===0)){const we=A.currentTarget;t.nextTick(()=>{D(),we==null||we.classList.add("dgComponentFocused","dgComponentSelected"),te(we)})}}function q(A){var Q;const U=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),K=U==null?void 0:U.querySelector(`#${A}-design-item`);(Q=K==null?void 0:K.componentInstance)!=null&&Q.value.onRemoveComponent&&K.componentInstance.value.setComponentBasicInfoMap()}function R(A,U){P(A);const K=a.schema.contents,Q=K==null?void 0:K.find(X=>X.id===U);if(!Q)return;(!Q.toolbar||!Q.toolbar.buttons)&&(Q.toolbar={id:`${Q.id}_toolbar`,buttons:[]}),Q.toolbar.id||(Q.toolbar.id=`${Q.id}_toolbar`);const oe=En("tab-toolbar-item");oe.id=`tab_toolbar_item_${Math.random().toString().slice(2,6)}`,Q.toolbar.buttons.push(oe),f.value=[...Q.toolbar.buttons],d.value=Q.toolbar,q(Q.id),t.nextTick(()=>{if(o&&o.value){const X=o.value.querySelector(".f-state-active");X&&te(X)}})}function H(A){}return{activeId:s,addTab:M,changeTitleStyle:V,removeTab:I,selectTab:_,tabPages:r,updateTab:F,toolbarItems:f,removeDesignTab:j,selectDesignTab:W,toolbarSchema:d,changeToolbarItems:v,addTabPageToolbar:R,listenTabNavElementScroll:J,setHorizontalScrollbarPosition:te,needUpdateNavigationLayout:h,checkActiveIdAndSelect:C,toggleShowTab:E,hasInHeadClass:p,emitSelectionChange:L,resetPositionForSelectedElement:G,setTabsRef:g,setScrollToSelectedTabFunction:H,toolbarVisible:c,updateComponentBasicInfoMap:q}}class df extends Et{constructor(o,a,i="response-toolbar"){super(o,a);se(this,"toolbarType","response-toolbar");this.toolbarType=i}getPropertyConfig(o){if(this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.toolbarType!=="tab-toolbar"&&this.getAppearancePropConfig(o),this.toolbarType==="response-toolbar")this.propertyConfig.categories.behavior=this.getBehaviorConfig(o);else{const a=this,i=this.getPropertyEditorParams(o,["Const"],"visible");this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:i}},setPropertyRelates(l,r){l&&a.afterMutilEditorChanged(o,l)}}}return this.propertyConfig}getAppearancePropConfig(o){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}}}}getBehaviorProperties(o){this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{alignment:{title:"对齐方式",description:"在工具栏区域内按钮组的位置",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}}function ff(e,n,o){const a=e.schema;function i(){var g;let m=((g=e.parent)==null?void 0:g.schema.type)||"";["page-header","tabs","section"].findIndex(y=>y===m)===-1&&(m=""),o.toolbarPosition=m}i();function l(m){return!1}function r(m,g){return g.text=m.label,g}function s(){return!1}function u(){return!1}function d(){return!1}function f(){return!0}function c(m){return new df(m,n,a.type).getPropertyConfig(a)}function h(m){var b;m&&(m.stopPropagation(),m.preventDefault());const{schema:g}=e;g.buttons||(g.buttons=[]);let y="";if(g.type)y=g.type+"-item";else{const w=(b=e.parent)==null?void 0:b.schema.type;y=w==="tabs"?"tab-toolbar-item":w==="section"?"section-toolbar-item":"response-toolbar-item"}const v=fo(y);v.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,g.buttons.push(v),o.updateToolbarItems(),o.changeSelectedId("")}function p(){return[{id:"appendItem",title:"新增按钮",text:"",icon:"f-icon f-icon-plus-circle text-white",onClick:m=>h(m)}]}return{canAccepts:l,checkCanAddComponent:d,checkCanDeleteComponent:u,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:f,onResolveNewComponentSchema:r,getPropsConfig:c,getCustomButtons:p}}function pf(e){let n;function o(i,l,r,s){const u=e.schema;if(!(u!=null&&u.buttons))return;let d;if(r){const p=r.getAttribute("id");d=Array.from(l.children).findIndex(m=>m.getAttribute("id")===p)}else d=Array.from(l.children).length;const f=i.getAttribute("id"),c=Array.from(l.children).findIndex(p=>p.getAttribute("id")===f),h=u.buttons[c];c!==d&&c>-1&&d>-1&&(c<d&&(d=d-1),u.buttons.splice(c,1),u.buttons.splice(d,0,h),s(),t.nextTick(()=>{const p=l.querySelector(".dgComponentSelected");p!=null&&p.className.includes("dgComponentSelected")&&(p.classList.remove("dgComponentSelected"),p.classList.remove("dgComponentFocused"),p.click()),lt.value++}))}function a(i,l,r){n&&n.destroy(),!(!Kt||!i||!l)&&(n=Kt([i],{mirrorContainer:l,direction:"horizontal",getMirrorText(s){return s.innerText},moves(s,u,d){let f=!0;return d.classList.contains("dropdown-item")?(f=!1,f):(s.classList.contains("no-drag")&&(f=!1),f)}}).on("drop",(s,u,d,f)=>o(s,u,f,r)))}return{dragulaInstance:n,initDragula:a}}function mf(e,n,o){const{renderToolbarItemDesigner:a,actionHandlers:i}=o;let l;function r(b){l=b}function s(b,w=null){const C=n.value.find(x=>x.id===b.id);if(C.isDP)if(document.body.click(),typeof w=="boolean")C.expanded=w;else{const x=b.expanded;C.expanded=!x}}i.toggleDropdownMenu=s;function u(b){var C;const w={"dropdown-menu":!0};if(b.class){const x=(C=b.menuClass)==null?void 0:C.split(" ");x&&x.length&&x.reduce((T,S)=>(T[S]=!0,T),w)}return w}function d(b){var x;const w={disabled:b.disabled===!1,"dropdown-submenu":!0,"f-rt-dropdown":!0,"text-truncate":!0},C=(x=b.dropdownClass)==null?void 0:x.split(" ");return C&&C.length&&C.reduce((T,S)=>(T[S]=!0,T),w),w}function f(b){const w={disabled:!1,"dropdown-item":!0,"f-rt-btn":!0,"position-relative":!0,"farris-component":!0,"text-truncate":!0},C=(b.class||"").split(" ");return C&&C.length&&C.reduce((x,T)=>(x[T]=!0,x),w),w}let c;const h=new Map;function p(b,w,C){b.stopPropagation();const x=C?C.id:"__top_item__";if(w.children&&w.children.length&&(w.expanded=!w.expanded,w.expanded)){if(h.has(x)&&h.get(x)!==w){const T=h.get(x);T&&(T.expanded=!1,h.delete(x))}h.set(x,w)}}function m(b){var w;return(w=b.children)==null?void 0:w.map((C,x)=>C.children&&C.children.length?t.createVNode("li",{class:d(C),id:C.id},[t.createVNode("span",{class:f(C),onClick:T=>p(T,C,b)},[C.text,t.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right",style:"display: inline-block;float: right;line-height: 1.25rem;"},null)]),c(C,C)]):a(C,x,!0))}function g(b,w,C,x){const{height:V,left:N,top:k}=x[0],{width:I,height:E}=C.getBoundingClientRect(),{marginTop:_,marginBottom:M}=getComputedStyle(C),F=Math.ceil(parseFloat(_))+Math.ceil(parseFloat(M)),P=k+V,B=w==null?void 0:w.getBoundingClientRect();function $(){let L=0,z="left";const G=B?B.right:window.innerWidth,J=B?B.left:0;return L=G-N-10,G-N<I&&N-J>G-N&&(z="right",L=N-J-10),{hposition:z,maxWidth:Math.min(L,300)}}let j=0,D="bottom";if(b==="tabs"||b==="section")j=w.getBoundingClientRect().bottom-P-F-10;else{const L=B?B.bottom:window.innerHeight;j=b==="page-header"?L-P:k,j=j-F-10,D=b==="page-header"?"bottom":"top"}const O=$();return{position:D+"-"+O.hposition,maxWidth:O.maxWidth,maxHeight:j}}function y(b){var S,V,N;const w="300px",C={display:b.expanded===!0?"block":"none",position:"absolute",maxWidth:w,minWidth:"120px"};if(!(l!=null&&l.value))return C;const x=l.value.querySelector("#"+b.id),T=x==null?void 0:x.getClientRects();if(x&&T&&T.length>0){const k=x?x.querySelector("#"+b.id+"_menu"):null;if(!k||b.expanded!==!0)return C;k.style.visibility="hidden",k.style.display="block",k.style.maxHeight="auto",k.style.maxWidth=w;let I;switch(i.toolbarPosition){case"tabs":I=(S=l.value)==null?void 0:S.closest(".farris-tabs");break;case"section":I=(V=l.value)==null?void 0:V.closest(".f-section");break;default:I=(N=l.value)==null?void 0:N.closest(".f-page")}const E=g(i.toolbarPosition,I,k,T),{position:_,maxHeight:M,maxWidth:F}=E;k.style.visibility="visible";const P={left:_.indexOf("left")>-1?0:"unset",right:_.indexOf("left")>-1?"unset":0,bottom:_.indexOf("bottom")>-1?"unset":"100%",top:_.indexOf("bottom")>-1?"!00%":"unset",maxWidth:F?F+"px":"300px",maxHeight:M?M+"px":"auto",overflowY:M?"auto":"unset"};Object.assign(C,P)}return C}i.changeMenuPosition=y,c=function(b,w){return t.createVNode("ul",{class:u(b),style:y(b),id:b.id+"_menu"},[m(b)])};function v(b=""){b&&h.has(b)?h.forEach((w,C)=>{C!==b&&(w.expanded=!1,h.delete(C))}):(h.forEach(w=>{w.expanded=!1}),h.clear())}return{renderDropdownMenu:c,clearAllDropDownMenu:v,setResponseToolbarRef:r}}function xr(){function e(o){const a={"f-icon":!0};if(o.icon){const i=o.icon.trim().split(" ");i&&i.length&&i.reduce((l,r)=>(l[r]=!0,l),a)}return a}function n(o){return!!(o.icon&&o.icon.trim())}return{iconClass:e,shouldShowIcon:n}}class hf extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n,o=!1){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.getAppearanceProperties(n,o),this.getbBehaviorConfig(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n,o=!1){this.propertyConfig.categories.appearance={title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式",visible:!o},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(n.children&&n.children.length>0)}}}}getbBehaviorConfig(n){const o=this.getPropertyEditorParams(n,["Const","Variable","StateMachine","Expression"],"disabled");this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:o}})}getEventPropConfig(n){const o=[{label:"onClick",name:"点击事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),l=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=r.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}class gf extends Et{constructor(o,a,i="response-toolbar-item"){super(o,a);se(this,"toolbarType","response-toolbar-item");this.toolbarType=i}getPropertyConfig(o,a=!1){this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.propertyConfig.categories.basic.setPropertyRelates=l=>{if(l)switch(l&&l.propertyID){case"text":{l.needRefreshControlTree=!0;break}}},this.getAppearanceProperties(o,a);const i=this.getPropertyEditorParams(o,["Const","Variable","StateMachine","Expression"],"disabled");return this.propertyConfig.categories.behavior=this.getBehaviorConfig(o,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:i}}),this.getEventPropConfig(o),this.propertyConfig}getAppearanceProperties(o,a=!1){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"",$converter:"/converter/appearance.converter",parentPropertyID:"appearance",visible:!a},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(o.children&&o.children.length>0)},tipsEnable:{title:"启用提示",type:"boolean",description:"当启用提示时,鼠标滑过按钮会有消息提示框",refreshPanelAfterChanged:!0,visible:this.toolbarType==="response-toolbar-item"},tipsText:{title:"提示消息内容",type:"string",description:"消息提示框内的展示内容",visible:o.tipsEnable===!0}}}}getEventPropConfig(o){const a=[{label:"onClick",name:"点击事件"}],i=this,l=i.eventsEditorUtils.formProperties(o,i.viewModelId,a),r=i.createBaseEventProperty(l);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete o[i.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(o,i.viewModelId,d.events,d))}}}}function Do(e,n){if(!e)return!1;const o=n||[];return(o==null?void 0:o.findIndex(i=>i.id===e))===-1}function Tr(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};return o.some((i,l)=>{if(i.children&&i.children.length>0){const r=i.children.findIndex(s=>s.id===e);return r>-1?(a={parentIndex:l,itemIndex:r},!0):!1}}),a}function Vr(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};const i=o==null?void 0:o.findIndex(l=>l.id===e);return i>-1?{parent:null,item:o[i]}:(o.some((l,r)=>{if(l.children&&l.children.length>0){const s=l.children.findIndex(u=>u.id===e);return s>-1?(a={parentIndex:r,itemIndex:s},!0):!1}}),a.parentIndex<0?{parent:null,item:null}:{parent:o[a.parentIndex],item:o[a.parentIndex].children[a.itemIndex]})}function yf(e,n){const o=n||[],a=o==null?void 0:o.findIndex(i=>i.id===e);return a>-1&&o[a].children&&o[a].children.length>0?o[a].expanded===!0:!1}function vf(e,n,o){function a(E){return!1}function i(){return!1}function l(){return!1}function r(){return!1}function s(){return o.toolbarContext.schema.buttons||[]}function u(E,_=""){setTimeout(()=>{var B,$;const M=(B=e.parent)==null?void 0:B.designerItemElementRef.value;let F;_&&(F=M==null?void 0:M.querySelector("#"+_));const P=($=F||M)==null?void 0:$.querySelector("#"+E);P==null||P.click()},0)}function d(E,_){_.disabled&&_.disabled.expressionId&&(_.disabled.expressionId=`${_.id}_disabled`),_.visible&&_.visible.expressionId&&(_.visible.expressionId=`${_.id}_visible`);const M=n.formSchemaUtils.getExpressions(),F=M.find(B=>B.target===E.id);if(!F||!F.rules||!F.rules.length)return;const P={target:_.id,rules:[],targetType:"Button"};F.rules.forEach(B=>{const $=Object.assign(Fe.cloneDeep(B),{id:`${_.id}_${B.type}`});P.rules.push($)}),M.push(P)}function f(){var F;const E=e.schema,_=Object.assign(Fe.cloneDeep(E),{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null});(F=n==null?void 0:n.designerContext)!=null&&F.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(_);let M=[];return _.children&&_.children.length&&(M=_.children.map(P=>{var $;const B=Fe.cloneDeep(P);return Object.assign(B,{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null}),($=n==null?void 0:n.designerContext)!=null&&$.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(B),d(P,B),B}),_.children=M),d(E,_),_}function c(){const E=e.schema.type||"response-toolbar-item",_=En(E),M=E.toLowerCase().replace("-","_");return _&&!_.id&&_.type===E&&(_.id=`${M}_${Math.random().toString().slice(2,6)}`,_.text="按钮"),_}function h(E){const _=s(),M=_==null?void 0:_.findIndex(P=>P.id===E),F=M===-1?null:_[M];return{index:M,toolbarItem:F}}function p(){const E=e.schema.id,_=s();return Do(E,_)}function m(E){const _=n.formSchemaUtils.getExpressions();if(!_||!_.length)return;const M=F=>{const P=_&&_.findIndex(B=>B.target===F.id);P>-1&&_.splice(P,1)};M(E),E.children&&E.children.length&&E.children.forEach(F=>{M(F)})}function g(E){o.changeSelectedId(E)}function y(E){n.formSchemaUtils.removeCommunicationInComponent(E),E.children&&E.children.length&&E.children.forEach(_=>{n.formSchemaUtils.removeCommunicationInComponent(_)})}function v(){var F,P,B;if((F=n==null?void 0:n.designerContext)!=null&&F.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const E=s(),{parentIndex:_,itemIndex:M}=Tr(e.schema.id,E);_===-1||M===-1||(m(e.schema),y(e.schema),E[_].children.splice(M,1),o.updateToolbarItems(),(P=e.setupContext)==null||P.emit("removeComponent"),(B=e.setupContext)==null||B.emit("selectionChange"),lt.value++)}function b(){var F,P,B;if((F=n==null?void 0:n.designerContext)!=null&&F.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const E=e.schema.id,_=s(),M=_==null?void 0:_.findIndex($=>$.id===E);M!==-1&&(m(_[M]),y(_[M]),_==null||_.splice(M,1),o.updateToolbarItems(),(P=e.setupContext)==null||P.emit("removeComponent"),(B=e.setupContext)==null||B.emit("selectionChange"),lt.value++)}function w(E="Append"){var $;const _=s(),{parentIndex:M,itemIndex:F}=Tr(e.schema.id,_);if(M===-1||F===-1)return;const P=c(),B=E==="Copy"?f():Object.assign({},P);_[M].children.splice(F+1,0,B),o.updateToolbarItems(),g(B.id),($=e.setupContext)==null||$.emit("addComponent")}function C(E,_){const{index:M}=h(_);if(M===-1)return{index:M,schema:null};const F=c(),P=E==="Copy"?f():Object.assign({},F);return{index:M,schema:P}}function x(){var F;const E=e.schema.id,{index:_,schema:M}=C("Copy",E);M&&(s().splice(_+1,0,M),o.updateToolbarItems(),u(M.id),(F=e.setupContext)==null||F.emit("addComponent"))}function T(){var F;const E=e.schema.id,{index:_,schema:M}=C("Append",E);if(M&&e.parent){const B=s()[_].children||[];B.push(M);const $=s();$[_].children=B,o.updateToolbarItems(),g(M.id),(F=e.setupContext)==null||F.emit("addComponent")}}function S(E){let _;switch(e.schema.type){case"tab-toolbar-item":_=new hf(E,n);break;default:_=new gf(E,n,e.schema.type)}return _.getPropertyConfig(e.schema,p())}function V(E){E.stopPropagation(),E.stopImmediatePropagation()}function N(){const E=[{id:"delete",title:"删除",text:"",icon:"f-icon-yxs_delete",onClick:_=>{V(_),p()?v():b()}},{id:"copy",title:"复制",icon:"f-icon-yxs_copy",onClick:_=>{V(_);const{activeElement:M}=document,F=M?M.tagName.toLowerCase():"";F&&F==="input"||F==="textarea"?(M==null||M.blur(),t.nextTick(()=>{p()?w("Copy"):x()})):p()?w("Copy"):x()}}];return E.push(p()?{id:"appendSiblingButton",title:"",text:"新增同级",icon:"f-icon-plus-circle",onClick:_=>{V(_),w()}}:{id:"appendChildButton",title:"",text:"新增子级",icon:"f-icon-plus-circle",onClick:_=>{V(_),T()}}),E}function k(){const{schema:E}=e;m(E)}function I(){var E,_,M,F;if(e&&n){const{formSchemaUtils:P}=n,{schema:B}=e;switch(B.type){case"response-toolbar-item":{P.getControlBasicInfoMap().set(B.id,{componentTitle:B.text,parentPathName:B.text});break}case"tab-toolbar-item":case"section-toolbar-item":{let $;const j=(E=e.parent)==null?void 0:E.parent;(j==null?void 0:j.schema.type)==="tabs"||(j==null?void 0:j.schema.type)==="section"?$=(_=j.componentInstance)==null?void 0:_.value:$=(F=(M=j==null?void 0:j.parent)==null?void 0:M.componentInstance)==null?void 0:F.value,$!=null&&$.setComponentBasicInfoMap&&$.setComponentBasicInfoMap()}}}}return{canAccepts:a,checkCanMoveComponent:i,checkCanDeleteComponent:l,checkCanAddComponent:r,getPropsConfig:S,getCustomButtons:N,onRemoveComponent:k,setComponentBasicInfoMap:I}}const bf=t.defineComponent({name:"FResponseToolbarItemDesign",props:mr,emits:["Click","dropdown","clearAll"],setup(e,n){const o=t.ref(e.alignment),a=xr(),i=t.ref(),l=t.inject("designer-host-service"),r=t.inject("design-item-context"),s=t.inject("toolbar-item-action"),u=vf(r,l,s),d=Zn.useDesignerInnerComponent(i,r,u);t.onMounted(()=>{i.value.componentInstance=d}),n.expose(d.value);function f(){const C={"f-icon":!0},x=e.icon?e.icon.trim():"";return Ie.getCustomClass(C,x)}function c(){return!!(e.icon&&e.icon.trim())}const h=t.computed(()=>{const C={btn:!0,"f-rt-btn":!0,"f-btn-ml":!e.isDP&&(o.value==="right"||o.value==="center"),"f-btn-mr":!e.isDP&&o.value==="left","btn-icontext":!!(e.icon&&e.icon.trim()),disabled:e.disabled===!0,"no-drag":!0,"text-truncate":!0};return Ie.getCustomClass(C,e.class)}),p=t.computed(()=>e.split?{display:"flex","align-items":"center"}:{display:"flex","align-items":"center","border-radius":"6px","padding-right":"0.1rem","border-top-right-radius":"6px","border-bottom-right-radius":"6px"}),m=t.computed(()=>{const C={btn:!0,"dropdown-toggle":!0,"f-btn-mr":o.value==="left","dropdown-toggle-split":!0,"no-drag":!0};return Ie.getCustomClass(C,e.class)}),g=t.computed(()=>{let C={btn:!e.isDPItem,disabled:e.disabled===!0,"dropdown-item":e.isDPItem,"f-rt-btn":!0,"text-truncate":!0,"btn-icontext":!e.isDPItem&&!!(e.icon&&e.icon.trim()),"dropdown-item-icontext":e.isDPItem&&!!(e.icon&&e.icon.trim()),"no-drag":!0};return e.isDPItem||(C=Ie.getCustomClass(C,e.class||"")),e.isDP&&(C=Ie.getCustomClass(C,e.dropdownClass||"")),C});function y(C,x){x&&x.stopPropagation(),n.emit(C,{id:e.id,isDP:e.isDP})}function v(){return{"btn-group":!0,"no-drag":!0,"f-rt-dropdown":!0,"f-btn-ml":o.value==="right"||o.value==="center","f-btn-mr":o.value==="left"}}function b(){return t.createVNode("div",{ref:i,"data-dragref":`${r.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("div",{class:v(),id:e.id},[t.createVNode("div",{class:h.value,style:p.value,onClick:()=>y("clearAll")},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),t.createVNode("span",null,[e.text]),!e.split&&t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down",style:"margin:0 0.5rem 0 0.25rem;",onClick:C=>y("dropdown",C)},null)]),e.split&&t.createVNode("button",{class:m.value,style:"border-radius:0 6px 6px 0;",onClick:C=>y("dropdown",C)},null),s.renderDropdownMenu(e.item,e.item)])])}function w(){return t.createVNode("li",{ref:i,"data-dragref":`${r.schema.id}-container`,id:e.id,class:g.value},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),e.text])}return()=>e.isDP?b():e.isDPItem?w():t.createVNode("div",{ref:i,"data-dragref":`${r.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("button",{type:"button",class:h.value,id:e.id,onClick:()=>y("clearAll")},[c()&&t.createVNode("i",{class:f()},null),e.text])])}});function Cf(e,n,o,a){function i(h,p,m,g){a.changeSelectedId((p==null?void 0:p.id)||""),o&&o.setupContext&&o.setupContext.emit("selectionChange",h,p,m,g)}function l(){}function r(h){const p=h.expanded;a.clearAllDropdown(),a.toggleDropdownMenu(h,!p)}function s(h){a.clearAllDropdown(h.isDP?h.id:"")}function u(h,p=""){const m=e.items||[],g=p||h,y=m.find(v=>v.id===g);return p?y.children.find(v=>v.id===h):y}function d(h,p=!1){if(!p)return;const m=h.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.add("dgComponentSelected"))}function f(h,p=!1){if(!p)return;const m=h.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.remove("dgComponentSelected"))}function c(h,p,m=!1){const g=u(h.id,h.parent),y=t.ref(g);return t.createVNode(Io,{key:g.id,class:["p-0",m?"d-block no-drag":"d-inline-block"],modelValue:y.value,"onUpdate:modelValue":v=>y.value=v,canMove:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",componentId:e.componentId,id:g.id,onSelectionChange:i,onRemoveComponent:l,onMouseenter:v=>d(v,m),onMouseleave:v=>f(v,m)},{default:()=>{var v;return[t.createVNode(bf,{id:g.id,disabled:g.disabled,text:g.text,icon:g.icon,isDP:h.isDP,item:h,split:g.split,isDPItem:h.isDPItem,class:((v=h.appearance)==null?void 0:v.class)||"btn-secondary",alignment:e.alignment||"right",onDropdown:()=>r(h),onClearAll:b=>s(b),componentId:e.componentId},null)]}})}return{renderToolbarItemDesigner:c,actionHandlers:a}}function jo(e,n=!1,o=""){const a=[];return e.reduce((i,l)=>{if(l.children&&l.children.length>0){const r=jo(l.children,!0,l.id);i.push(Object.assign({},l,{children:r,isDPItem:!1,isDP:!0,parent:"",expanded:!1}))}else i.push(Object.assign({},l,{isDPItem:n,isDP:!1,parent:o}));return i},a),a}const Nr=t.defineComponent({name:"FResponseToolbarDesign",props:Wd,emits:["Click"],setup(e,n){const o=t.ref(jo(e.items)),a=t.ref(),i=t.ref(),l=t.ref(),r=t.ref("");let s=0;const u=15,d=t.inject("designer-host-service"),f=t.inject("design-item-context"),c={clearAllDropdown:D=>{},toggleDropdownMenu:D=>{},updateToolbarItems:()=>{},changeSelectedId:D=>{r.value=D},renderDropdownMenu:(D,O)=>{},toolbarContext:f,changeMenuPosition:(D,O,L)=>({}),toolbarPosition:""},h=ff(f,d,c),p=Zn.useDesignerComponent(l,f,h),m=t.inject("toolbar-item-handler"),{initDragula:g,dragulaInstance:y}=pf(f),v=xr(),b=Cf(e,i,f,c),w=mf(v,o,b),{renderToolbarItemDesigner:C}=b,{clearAllDropDownMenu:x,renderDropdownMenu:T,setResponseToolbarRef:S}=w;t.provide("toolbar-item-action",c),c.renderDropdownMenu=T,S(l),m&&(m.changeSelectedId=function(D){r.value=D});function V(){const D=i.value.querySelector(".dgComponentSelected");D&&lo(D)}function N(){if(r.value)if(Do(r.value,o.value)){const{parent:D,item:O}=Vr(r.value,o.value);D&&(c.toggleDropdownMenu(D,!0),setTimeout(()=>{var G;const L=l.value.querySelector("#"+D.id),z=L==null?void 0:L.querySelector("#"+O.id);(((G=z==null?void 0:z.parentElement)==null?void 0:G.className)||"").indexOf("dgComponentFocused")<0&&(z==null||z.click())},0))}else V()}function k(D=""){o.value.filter(O=>O.id!==D&&O.children&&O.children.length>0).forEach(O=>{O.expanded=!1}),x(D)}c.clearAllDropdown=k;function I(){m&&m.updateToolbarItems&&m.updateToolbarItems()}c.updateToolbarItems=I;function E(D){if(D){const O=l.value.querySelector("#"+D.id),L=O.querySelector("#"+D.id+"_menu"),z=c.changeMenuPosition(D,O);Object.keys(z).forEach(G=>{L.style[G]=z[G]})}}function _(){const L=i.value.clientWidth,z=i.value.querySelectorAll(".farris-component>.f-rt-btn");z&&z.forEach(J=>{J.style.maxWidth=L-12+"px"});const G=i.value.querySelectorAll(".farris-component>.f-rt-dropdown");G&&G.forEach(J=>{J.querySelector(".dropdown-toggle-split")?J.querySelector(".f-rt-btn").style.maxWidth=L-38+"px":J.style.maxWidth=L-12+"px"})}const M=new ResizeObserver(D=>{var O;if(D.length){const z=D[0].contentRect.width;if(z===0){s=0;return}if(Math.abs(z-s)>u){if(s=z,Do(r.value,o.value)){const{parent:G,item:J}=Vr(r.value,o.value);E(G)}else if(yf(r.value,o.value)){const G=(O=o.value)==null?void 0:O.find(J=>J.id===r.value);E(G)}else k();_()}}});t.onMounted(()=>{M.observe(l.value),s=l.value.clientWidth,l.value.componentInstance=p,g(i.value,a.value,I)}),t.onUnmounted(()=>{M.disconnect(),y&&y.destroy&&y.destroy()}),n.expose(p.value);const F=t.computed(()=>{const D={"f-toolbar":!0,"f-response-toolbar":!0,"position-relative":!0,"f-response-toolbar-sm":e.buttonSize==="sm","f-response-toolbar-lg":e.buttonSize==="lg"};return Ie.getCustomClass(D,e.customClass)}),P=t.computed(()=>({"text-left":e.alignment==="left","text-right":e.alignment==="right","justify-content-end":e.alignment==="right","justify-content-start":e.alignment==="left","justify-content-center":e.alignment==="center","no-drag":!0,"w-100":!0}));t.watch(()=>e.items,()=>{o.value=jo(e.items),t.nextTick(()=>{N(),_()})},{deep:!0});function B(D){D&&(D.stopPropagation(),D.preventDefault());const{schema:O}=f;O.buttons||(O.buttons=[]);const L=fo("response-toolbar-item");L.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,L.appearance={class:"btn btn-secondary"},O.buttons.push(L)}function $(){return t.createVNode("li",{style:"border-width: 1px;border-style: dashed;display: inline-block;padding: 0 8px;line-height: 24px; border-radius: 3px; cursor: default;color: #B4BCCC;",onClick:B},[t.createVNode("span",{class:"f-icon f-icon-amplification mr-1",style:"font-size: 12px;"},null),t.createVNode("span",{class:"farris-tag-add-text"},[t.createTextVNode("添加按钮")])])}function j(){return o.value.map((D,O)=>C(D,O))}return()=>{var D;return t.createVNode("div",{ref:l,"data-dragref":`${f.schema.id}-container`,class:F.value,id:e.id},[t.createVNode("div",{ref:a,class:P.value,onClick:O=>k(O)},[t.createVNode("div",{ref:i,class:"d-block f-response-content"},[(D=o.value)!=null&&D.length?j():$()])])])}}});function wf(e,n,o,a,i){var h;const{toolbarItems:l,toolbarSchema:r,changeToolbarItems:s,hasInHeadClass:u}=e,d=r.value.id||`${((h=a==null?void 0:a.schema)==null?void 0:h.id)||""}-toolbar`;function f(p,m,g,y){var v;(v=a.setupContext)==null||v.emit("selectionChange",p,m,g,y)}function c(){s()}return t.createVNode("div",{class:"farris-tabs-toolbar",style:"overflow:unset;"},[t.createVNode("div",{class:"farris-tabs-inline-flex w-100",style:"flex:1"},[t.createVNode(Io,{modelValue:r.value,"onUpdate:modelValue":p=>r.value=p,class:"w-100 position-relative",key:d,canAdd:!1,childType:"tab-toolbar-item",childLabel:"按钮",contentKey:"buttons",id:d,onSelectionChange:f,componentId:i,onAddComponent:c},{default:()=>[t.createVNode(Nr,{alignment:u.value?"right":"left",items:l.value,componentId:i},null)]})])])}function Sf(e,n){let o;function a(s){var f;const d=Array.from(s.children).find(c=>c.className.includes("add-nav-item"));d&&!((f=d.className)!=null&&f.includes("d-none"))&&(d.className+=" d-none")}function i(s){var f;const d=Array.from(s.children).find(c=>c.className.includes("add-nav-item"));d&&((f=d.className)!=null&&f.includes(" d-none"))&&(d.className=d.className.replace(" d-none",""))}function l(s,u,d){i(u);const f=e.schema;if(!(f!=null&&f.contents))return;let c;if(d){const g=d.getAttribute("pageId");c=Array.from(u.children).findIndex(y=>y.getAttribute("pageId")===g)}else c=Array.from(u.children).length;const h=s.getAttribute("pageId"),p=Array.from(u.children).findIndex(g=>g.getAttribute("pageId")===h),m=f.contents[p];if(p!==c&&p>-1&&c>-1){if(p<c&&(c=c-1),f.contents.splice(p,1),f.contents.splice(c,0,m),n.value){const g=n.value[p];n.value.splice(p,1),n.value.splice(c,0,g)}t.nextTick(()=>{s.className.includes("dgComponentSelected")&&(s.classList.remove("dgComponentSelected"),s.classList.remove("dgComponentFocused"),s.click()),lt.value++})}}function r(s,u){o&&o.destroy(),!(!Kt||!s||!u)&&(o=Kt([s],{mirrorContainer:u,direction:"horizontal",moves(d){return!d.classList.contains("no-drag")},getMirrorText(d){return d.innerText},accepts(d,f,c,h){return a(f),h&&h.className.includes("nav-item")}}).on("drop",(d,f,c,h)=>l(d,f,h)))}return{dragulaInstance:o,initHeaderDragula:r}}const xf=t.defineComponent({name:"FTabsDesign",props:hr,emits:["tabChange","tabRemove"],setup(e,n){const o=t.ref(),a=t.inject("designer-host-service"),i=t.inject("design-item-context"),l=cf(i,a),r=Pt(o,i,l),s=t.ref(e.tabType),u=t.shallowRef(),d=t.shallowRef(),f={updateToolbarItems:function(){},changeSelectedId:H=>{}},c=uf(e,n,u,i,f,a),{activeId:h,changeTitleStyle:p,tabPages:m,addTab:g,updateTab:y,toolbarItems:v,setTabsRef:b,checkActiveIdAndSelect:w,listenTabNavElementScroll:C,toolbarSchema:x,toggleShowTab:T,hasInHeadClass:S,updateComponentBasicInfoMap:V}=c;b(o);const N=br(e,d,c),k=yr(e,u,N,c),{updateNavigationLayout:I}=k,E=vr(e,c),{hideDropDown:_}=E,M=rf(e,u,k,N,c,r),F=M,P=gr(e,u,k,N,c),B=new Map([["default",M],["one-page",F],["pills",P]]);t.computed(()=>{const H=m.value.find(A=>A.props.id===h.value);return H==null?void 0:H.slots});function $(){const H=r.value.schema.contents||[];return H.length<1?null:H.find(U=>U.id===h.value)}f.updateToolbarItems=function(){var A,U;const H=$();(A=H==null?void 0:H.toolbar)!=null&&A.buttons?v.value=[...(U=H==null?void 0:H.toolbar)==null?void 0:U.buttons]:v.value=[],x.value=H==null?void 0:H.toolbar,H!=null&&H.id&&V(H.id)},t.provide("tabs",{activeId:h,addTab:g,updateTab:y,tabPages:m,tabType:s,toggleShowTab:T}),t.provide("toolbar-item-handler",f);const j=t.computed(()=>e.fill),D=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":S.value,"farris-tabs-inContent":!S.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),O=t.computed(()=>{const H={width:S.value&&e.titleWidth?`${e.titleWidth}%`:""};return H.width&&(H.flex="unset"),H}),L=t.computed(()=>({"farris-tabs":!0,"flex-column":e.position==="top","flex-column-reverse":e.position==="bottom","flex-row":e.position==="left","flex-row-reverse":e.position==="right","one-page":e.tabType==="one-page"})),{initHeaderDragula:z,dragulaInstance:G}=Sf(i,m);t.onMounted(()=>{m.value.length&&w(e.activeId||m.value[0].props.id),t.nextTick(()=>{I()}),p(u),window.addEventListener("click",H=>{var A;_.value||(A=o.value)!=null&&A.contains(H.target)||(_.value=!0)}),window.addEventListener("resize",()=>{I()}),C(),o.value.componentInstance=r,e.tabType==="default"&&z(u.value,u.value)}),t.onUnmounted(()=>{G&&G.destroy&&G.destroy()});function J(){return!!v.value.length&&wf(c,r,l,i,e.componentId)}const te=B.get(e.tabType)||B.get("default");function W(){var H,A,U,K;return t.createVNode("div",{class:D.value},[t.createVNode("div",{class:"farris-tabs-header-pre"},[(A=(H=n.slots).headerPrefix)==null?void 0:A.call(H)]),t.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:O.value},[te&&te()]),J(),t.createVNode("div",{class:"farris-tabs-header-post"},[(K=(U=n.slots).headerSuffix)==null?void 0:K.call(U)])])}const q=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":j.value}));function R(){var H,A,U,K;return t.createVNode("div",{class:q.value,ref:d},[(A=(H=i==null?void 0:i.schema)==null?void 0:H.contents)!=null&&A.length?(K=(U=n.slots).default)==null?void 0:K.call(U):""])}return n.expose(r.value),r.value.updateToolbarItems=f.updateToolbarItems,()=>t.createVNode("div",{class:L.value,ref:o},[W(),R()])}});function Tf(e,n,o){return n?{enableAccordion:o.accordionMode}:{enableAccordion:""}}function Vf(e,n){var o;return{buttons:n.buttons,buttonPosition:n.position,buttonsClass:(o=n.appearance)==null?void 0:o.class,buttonsVisible:n.visible}}const $o=new Map([["appearance",ht],["expanded","expandStatus"],["enableAccordion",Tf],["toolbar",Vf]]);function Nf(e,n){const o=Math.random().toString().slice(2,6),a=n.parentComponentInstance,i=e.getSchemaByType("section");Object.assign(i,{id:`section-${o}`,appearance:{class:"f-section-in-mainsubcard"},mainTitle:n.mainTitle||i.mainTitle||"标题"});const l=e.getSchemaByType("content-container");Object.assign(l,{id:`container-${o}`,appearance:{class:"f-struct-wrapper"},contents:[i]});const r=a.schema;switch(r&&r.type){case ce["splitter-pane"].type:{i.appearance.class="f-section-in-main";break}}const s=a.elementRef,u=window.getComputedStyle(s);return u&&u.display==="flex"&&(l.appearance.class+=" d-block"),l}function Ir(e,n,o){return o.parentComponentInstance?Nf(e,o):n}const Fr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section.schema.json",title:"section",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a Section",type:"string"},type:{description:"The type string of Section component",type:"string",default:"section"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contentClass:{description:"",type:"string",default:""},contents:{description:"",type:"array",default:[]},enableAccordion:{description:"",type:"string",default:""},accordionMode:{description:"",type:"string",default:"default"},enableMaximize:{description:"",type:"boolean",default:!1},expanded:{description:"",type:"boolean",default:!0},fill:{description:"",type:"boolean",default:!1},headerClass:{description:"",type:"string",default:""},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},showHeader:{description:"",type:"string",default:!0},mainTitle:{description:"",type:"string",default:""},subTitle:{description:"",type:"string",default:""},headerContentClass:{description:"",type:"string",default:""},extendClass:{description:"",type:"string",default:""},visible:{description:"",type:"boolean",default:!0},expandStatus:{description:"",type:"boolean",default:!0},toolbar:{description:"",type:"object",properties:{type:{type:"string",default:"section-toolbar"},position:{type:"string",default:"inHead"},buttons:{type:"array",default:[]},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}}},default:null},headerTitleHtml:{description:"",type:"string",default:""},headerTitleRenderFunction:{description:"",type:"function",default:null},headerHtml:{description:"",type:"string",default:""},headerRenderFunction:{description:"",type:"function",default:null},headerContentHtml:{description:"",type:"string",default:""},headerContentRenderFunction:{description:"",type:"function",default:null},toolbarHtml:{description:"",type:"string",default:""},toolbarRenderFunction:{description:"",type:"function",default:null}},required:["id","type","contents"]},If={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section-toolbar.schema.json",title:"section-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Section Toolbar",type:"string"},type:{description:"The type string of Section Toolbar",type:"string",default:"section-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Section Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Section Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},Lo={contentClass:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},enableAccordion:{type:String,default:""},expandStatus:{type:Boolean,default:!0},mainTitle:{type:String,default:""},showHeader:{type:Boolean,default:!0},subTitle:{type:String,default:""},expandLabel:{type:String,default:"展开"},collapseLabel:{type:String,default:"收起"},headerClass:{type:String,default:""},enableMaximize:{type:Boolean,default:!1},headerContentClass:{type:String,default:""},extendClass:{type:String,default:""},buttons:{type:Array,default:[]},buttonPosition:{type:String,default:"inHead"},buttonsClass:{type:String,default:""},buttonsVisible:{type:Boolean,default:!0},fill:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},headerTitleRenderFunction:{type:Function},headerRenderFunction:{type:Function},headerContentRenderFunction:{type:Function},toolbarRenderFunction:{type:Function}};Ye(Lo,Fr,$o,Ir);const Ff=Object.assign({},Lo,{componentId:{type:String,default:""},headerTitleHtml:{type:String,default:""},headerHtml:{type:String,default:""},headerContentHtml:{type:String,default:""},toolbarHtml:{type:String,default:""}});Ye(Wn,If,$o,Hn),Ye(Ff,Fr,$o,Ir);function kf(e,n,o){let a;function i(u=1){const d=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],f=Array.from(document.body.querySelectorAll(d.join(","))).filter(h=>h).map(h=>{const{display:p,zIndex:m}=window.getComputedStyle(h);return p==="none"?0:parseInt(m,10)}).filter(h=>h);let c=Math.max(...f);return c<1040&&(c=1040),c+u}function l(){a=e.value.nextElementSibling;const u=document&&document.querySelector("body");u&&(u.appendChild(e.value),e.value.style.zIndex=i())}function r(){a?n.value.insertBefore(e.value,a):n.value.appendChild(e.value),e.value.style.zIndex=null}function s(){!e||!n.value||(o.value=!o.value,o.value?l():r())}return{onClickMaxMinIcon:s}}function kr(e,n){const o=t.ref(e.buttons),a=t.computed(()=>e.buttonPosition==="inHead"?"right":"left"),i=t.computed(()=>"f-section-toolbar col-6"+(e.buttonPosition==="inHead"?" f-toolbar f-section-header--toolbar":" f-section-content--toolbar")+(e.buttonsClass?" "+e.buttonsClass:"")),l=t.computed(()=>e.buttons&&e.buttons.length>0&&e.buttonPosition==="inHead");function r(d,f){n.emit("click",d,f)}function s(){return l.value&&t.createVNode(Vn,{customClass:i.value,items:o.value,onClick:r,alignment:a.value,visible:e.buttonsVisible},null)}function u(){return t.createVNode("div",{class:i.value},[t.createVNode("div",{class:"w-100",style:"flex:1"},[e.toolbarRenderFunction()])])}return()=>e.toolbarRenderFunction?u():s()}function Pf(e,n,o,a,i,l){const r={collapseLabel:Dt.LocaleService.getRealPropertyValue(e.collapseLabel,"收起","section.collapseLabel"),expandLabel:Dt.LocaleService.getRealPropertyValue(e.expandLabel,"展开","section.expandLabel")},s=t.computed(()=>e.buttonPosition),u=kr(e,n),{onClickMaxMinIcon:d}=kf(a,i,l),f=t.computed(()=>e.enableMaximize),c=t.computed(()=>e.enableAccordion!==""),h=t.computed(()=>{const C={"f-section-header":!0};return n.slots.header&&e.headerClass.split(" ").reduce((T,S)=>(T[S]=!0,T),C),C});function p(C){C.stopPropagation(),e.enableAccordion!==""&&(o.value=!o.value)}function m(){const C=t.computed(()=>({btn:!0,"f-btn-collapse-expand":!0,"f-btn-mx":!0,"f-state-expand":o.value})),x=t.computed(()=>({"f-icon":!0,"f-icon-maximize":!l.value,"f-icon-minimize":l.value}));return t.createVNode("div",{class:"f-max-accordion"},[f.value?t.createVNode("span",{class:x.value,onClick:d},null):"",c.value?t.createVNode("button",{class:C.value,onClick:p},[t.createVNode("span",null,[o.value?r.collapseLabel:r.expandLabel])]):""])}function g(){return t.createVNode("div",{class:"f-title"},[t.createVNode("h4",{class:"f-title-text"},[e.mainTitle]),e.subTitle&&t.createVNode("span",null,[e.subTitle])])}function y(){const C=t.computed(()=>{const x={"f-content":!0};return e.headerContentClass&&e.headerContentClass.split(" ").reduce((S,V)=>(S[V]=!0,S),x),x});return n.slots.headerContent?t.createVNode("div",{class:C.value},[n.slots.headerContent()]):e.headerContentRenderFunction?t.createVNode("div",{class:C.value},[e.headerContentRenderFunction()]):null}function v(){return n.slots.headerTitle?n.slots.headerTitle():e.headerTitleRenderFunction?e.headerTitleRenderFunction():g()}function b(){return t.createVNode("div",{class:h.value},[v(),y(),s.value==="inHead"&&u(),(f.value||c.value)&&m()])}function w(){return n.slots.header?t.createVNode("div",{class:h.value},[n.slots.header()]):e.headerRenderFunction?t.createVNode("div",{class:h.value},[e.headerRenderFunction()]):b()}return()=>e.showHeader&&w()}const Ef=t.defineComponent({name:"FSection",props:Lo,emits:["click"],setup(e,n){const o=t.ref(),a=t.ref(),i=t.ref(e.customClass),l=t.computed(()=>e.enableAccordion),r=t.ref(e.expandStatus),s=t.computed(()=>e.buttonPosition),u=t.ref(!1),d=Pf(e,n,r,o,a,u),f=kr(e,n),c=t.computed(()=>{const y={"f-section":!0,"f-section-accordion":l.value==="default","f-state-collapse":(l.value==="default"||l.value==="custom")&&!r.value,"f-section-custom-accordion":l.value==="custom","f-section-fill":e.fill,"f-section-maximize":u.value};return Ie.getCustomClass(y,i.value)}),h=t.computed(()=>{const y={"f-section-content":!0};return Ie.getCustomClass(y,e.contentClass)}),p=t.computed(()=>{const y={"f-section-extend":!0};return Ie.getCustomClass(y,e.extendClass)});function m(){return n.slots.extend&&t.createVNode("div",{class:p.value},[n.slots.extend()])}function g(){return t.createVNode("div",{class:h.value},[s.value==="inContent"&&f(),n.slots.default&&n.slots.default()])}return t.watch(()=>e.expandStatus,(y,v)=>{y!==v&&(r.value=y)}),t.onMounted(()=>{o.value&&o.value&&(a.value=o.value.parentElement)}),()=>e.visible?t.createVNode("div",{class:c.value,ref:o,style:e.customStyle},[d(),m(),g()]):null}});function Mf(e,n){const o=new So,{canAccept:a}=o.getTemplateRule(e,n);function i(u){if(!Si().basalDragulaRuleForContainer(u,n))return!1;const{schema:f}=e;return f.contents&&f.contents.length>0?!1:a}function l(u){return null}function r(){const{schema:u,parent:d}=e;d!=null&&d.schema.activeId&&u.id===d.schema.activeId&&(d.schema.activeId="")}function s(){var u,d;if(e&&n){const{formSchemaUtils:f}=n,c=f.getControlBasicInfoMap(),{schema:h}=e;c.set(h.id,{componentTitle:h.title,parentPathName:h.title}),(d=(u=h.toolbar)==null?void 0:u.buttons)!=null&&d.length&&h.toolbar.buttons.map(p=>{var m;c.set(p.id,{componentTitle:p.text,parentPathName:`${h.title} > ${p.text}`}),(m=p.children)!=null&&m.length&&p.children.map(g=>{c.set(g.id,{componentTitle:g.text,parentPathName:`${h.title} > ${g.text}`})})})}}return{canAccepts:i,getDraggableDesignItemElement:l,onRemoveComponent:r,setComponentBasicInfoMap:s}}function _f(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const Of=t.defineComponent({name:"FTabPageDesign",props:Sr,emits:[],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=t.inject("designer-host-service"),l=Mf(a,i),r=Pt(o,a,l);r.value.canNested=!1,r.value.canDelete=!1,r.value.canMove=!1,n.expose(r.value);const s=t.inject("tabs"),u=t.ref(!0),d={slots:n.slots,props:e},f=t.ref((s==null?void 0:s.tabType.value)||"default");t.onMounted(()=>{o.value.componentInstance=r;const b=s.tabPages.value.findIndex(w=>w.props.id===e.id);!b||b===-1?s==null||s.addTab(d):b>-1&&(u.value=!1,console.warn(`已经存在id为${e.id}的页签啦`))}),t.onUnmounted(()=>{});const c=t.computed(()=>(e==null?void 0:e.id)===(s==null?void 0:s.activeId.value)),h=t.computed(()=>({display:c.value?"":"none"}));t.watch(()=>e,b=>{s==null||s.updateTab({props:b,slots:n.slots})},{immediate:!0,deep:!0});function p(){var w,C;const b=(C=(w=n.slots).default)==null?void 0:C.call(w);return t.createVNode(Ef,{"main-title":e.title,class:"farris-tab-page"},_f(b)?b:{default:()=>[b]})}const m=t.computed(()=>({"farris-tab-page":!0,"drag-container":!0,"farris-tab-page-active":c.value}));function g(){var w,C;const b=(C=(w=n.slots).default)==null?void 0:C.call(w);return t.createVNode("div",{ref:o,class:m.value,"data-dragref":`${a.schema.id}-container`,style:h.value},[b])}const v=new Map([["default",g],["one-page",p]]).get(f.value)||g;return()=>u.value?v():null}}),Bf=Ye({id:{type:String,default:""},items:{type:Object,default:{}},class:{type:String,default:""},text:{type:String,default:""},disabled:{type:Boolean,default:!1},icon:{type:String,default:""},componentId:{type:String,default:""},expanded:{type:Boolean,default:!1},alignment:{Type:String,default:"right"},split:{type:Boolean,default:!1},isDP:{type:Boolean,default:!1},isDPItem:{type:Boolean,default:!1}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-toolbar-item.schema.json",title:"tab-toolbar-item",description:"A Farris Toolbar Item Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"tab-toolbar-item"},appearance:{description:"",type:"object",properties:{class:{type:"string"}},default:{}},text:{description:"按钮",type:"string",default:"按钮"},icon:{description:"图标",type:"string",default:""},disabled:{description:"禁用",type:"boolean",default:!1},visible:{description:"是否可见",type:"boolean",default:!0},onClick:{description:"点击事件",type:"string",default:""},tipsEnable:{description:"",type:"boolean",default:!1},tipsText:{description:"",type:"string",default:""},dropdownClass:{description:"处于下拉菜单时的样式",type:"string",default:""},split:{description:"",type:"boolean",default:!1}},required:["id","type","text"],events:{onClick:"点击事件"}},zn,Ld);At.install=e=>{e.component(At.name,At),e.component(qn.name,qn)},At.register=(e,n,o,a)=>{e.tabs=At,e["tab-page"]=qn,n.tabs=qd,n["tab-page"]=tf,a.tabs={eventHandlerResolver:Gd}},At.registerDesigner=(e,n,o)=>{e.tabs=xf,e["tab-page"]=Of,n.tabs=Ud,n["tab-page"]=nf,n["tab-toolbar-item"]=Bf,e["tab-toolbar"]=Nr,n["tab-toolbar"]=Yd};const Df=new Map([["appearance",ht]]),jf={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/search-box.schema.json",title:"search-box",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a search-box",type:"string"},type:{description:"The type string of search-box component",type:"string",default:"search-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]};function $f(e,n,o){return n}const Lf={title:"search-box",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Ro={buttonContent:{type:String,default:'<i class="f-icon f-icon-search"></i>'},customClass:{type:String,default:""},modelValue:{type:String,default:""},popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},data:{type:Array,default:[]},placeholder:{type:String,default:"请输入关键词"},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean},disable:{default:!1,type:Boolean},showDropdown:{default:!0,type:Boolean},updateOn:{default:"blur",type:String}},Pr=Ye(Ro,jf,Df,$f,Lf),Rf={data:{type:Array,default:[]},onConfirmResult:{type:Function,default:()=>{}},onSearchedValue:{type:Function,default:()=>{}},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean}},Er=t.defineComponent({name:"FSearchBoxContainer",props:Rf,emits:["confirmResult","searchedValue"],setup(e,n){const o=t.ref(e.data),a=t.ref(),{slots:i}=n,l=t.computed(()=>({"search-box-container":!0,"f-utils-overflow-xhya":!0,"position-relative":!0}));function r(f){var c;(c=a.value)==null||c.search(f)}function s(f){f.length&&(n.emit("confirmResult",f[0].name),n.emit("searchedValue",f))}function u(f){return i.default?t.createVNode(t.Fragment,null,[i.default(f)]):t.createVNode("span",null,[f.item[e.textField]])}const d=t.computed(()=>{const f={};return f.padding="8px",e.maxHeight!==void 0&&e.maxHeight>0&&(f.maxHeight=`${e.maxHeight}px`),f});return t.watch(()=>e.loading,f=>{}),t.watch(()=>e.data,f=>{f!==o.value&&(o.value=f),a.value.updateDataSource(f)}),n.expose({search:r}),()=>{const f={content:u};return t.createVNode("div",{class:l.value,style:d.value},[t.createVNode(gl,{ref:"loadingInstance",isActive:e.loading},null),t.createVNode(ao,{ref:a,itemClass:"dropdown-item",data:o.value,view:"ContentView",onClickItem:c=>s(c.data),idField:e.idField,textField:e.textField,titleField:e.textField,valueField:e.idField},f)])}}}),_t=t.defineComponent({name:"FSearchBox",props:Ro,emits:["update:modelValue","change","selectedValue","clickButton"],setup(e,n){t.ref(e.data);const o=t.ref(),a=t.ref(),i=t.ref(e.placeholder),l='<i class="f-icon f-icon-clockwise f-icon-spin"></i>',r=t.computed(()=>e.loading?l:e.buttonContent);t.ref(e.editable);const s=t.ref(e.modelValue);t.watch(s,p=>{var m;(m=a.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function u(p){o.value.commitValue(p)}function d(p){n.emit("change",p)}function f(p){n.emit("selectedValue",p)}function c(p){n.emit("clickButton",p)}function h(){o.value.togglePopup()}return n.expose({togglePopup:h}),()=>{const p={default:n.slots.default};return t.createVNode(Nn,{ref:o,"button-content":r.value,"custom-class":e.customClass,updateOn:e.updateOn,placeholder:i.value,onChange:m=>d(m),onClickButton:m=>c(m),disable:e.disable,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":m=>s.value=m,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":e.showDropdown,"popup-on-focus":e.showDropdown,limitContentBySpace:!0,placement:"auto"},{default:()=>[e.showDropdown&&t.createVNode(Er,{ref:a,data:e.data,idField:e.idField,textField:e.textField,onConfirmResult:u,onSearchedValue:m=>f(m),loading:e.loading,maxHeight:e.maxHeight},p)],...n.slots})}}}),Af=t.defineComponent({name:"FSearchBoxDesign",props:Ro,emits:["update:modelValue","change"],setup(e,n){const o=t.ref(e.data),a=t.ref(),i=t.ref(),l=t.ref("请输入关键词"),r=t.ref('<i class="f-icon f-icon-search"></i>'),s=t.ref(e.modelValue),u=t.ref(),d=t.inject("design-item-context"),f=Pt(u,d);t.onMounted(()=>{u.value.componentInstance=f}),n.expose(f.value),t.watch(s,p=>{var m;(m=i.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function c(p){a.value.commitValue(p)}function h(p){n.emit("change",p)}return()=>t.createVNode("div",{ref:u},[t.createVNode(t.resolveComponent("f-button-edit"),{ref:a,"button-content":r.value,placeholder:l.value,onChange:h,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":p=>s.value=p,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":!0,"popup-on-focus":!0},{default:()=>[t.createVNode(Er,{ref:i,data:o.value,onConfirmResult:c},null)]})])}});_t.install=e=>{e.component(_t.name,_t)},_t.register=(e,n,o,a)=>{e["search-box"]=_t,n["search-box"]=Pr},_t.registerDesigner=(e,n,o)=>{e["search-box"]=Af,n["search-box"]=Pr};const Mr=new Map([["appearance",ht]]);function _r(e,n,o){return n}const zf={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Hf={title:"list-view",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Un={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null}},Or=Ye(Un,zf,Mr,_r,Hf);function Br(e,n){function o(l){const r=[];let s=l.nextNode();for(;s;)r.push(s),s=l.nextNode();return r}function a(l,r){const s=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return o(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:h})=>{const p=[];let m=0;for(;m<h.length;){const g=h.indexOf(r,m);if(g===-1)break;p.push(g),m=g+r.length}return p.map(g=>{const y=new Range;return y.setStart(c,g),y.setEnd(c,g+r.length),y})}).flat()}function i(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!n))return;const r=a(n.value,l.toLocaleLowerCase()),s=new Highlight(...r);CSS.highlights.set("search-result",s)}return{search:i}}function Dr(e,n,o,a,i,l,r,s,u,d){const f=t.ref(e.size),c=t.ref(e.textField),h=t.ref(e.titleField),p=t.ref(e.disableField),m=t.computed(()=>{var V,N;return((V=e.selection)==null?void 0:V.multiSelect)&&((N=e.selection)==null?void 0:N.showCheckbox)}),{onMouseenterItem:g,onMouseoverItem:y,onMouseoutItem:v}=l,{getKey:b,listViewItemClass:w,onCheckItem:C,onClickItem:x}=r,T=t.computed(()=>{const V={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return e.itemClass?V:{margin:f.value==="small"?"0.25rem 0":"8px 0",...V}});function S(V,N,k){return V.checked=s.findIndexInSelectedItems(V)>-1,t.createVNode("li",{class:w(V,N),id:b(V,N),key:b(V,N),onClick:I=>x(I,V,N),onMouseenter:I=>g(I,V,N),onMouseover:I=>y(I,V,N),onMouseout:I=>v(I,V,N)},[m.value&&t.createVNode("div",{class:"f-list-select",onClick:I=>I.stopPropagation()},[t.createVNode(xn.FCheckbox,{id:"list-"+b(V,N),customClass:"listview-checkbox float-left",disabled:V[p.value],checked:V.checked,"onUpdate:checked":I=>V.checked=I,onChange:I=>{C(V,N,!I.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{class:e.itemContentClass,style:T.value,title:V.raw[h.value]||V.raw[c.value]},[V.raw[c.value]])])])}return{renderItem:S}}function Wf(e,n,o,a,i,l,r,s,u,d){const f=t.ref(e.multiSelect),c=t.ref(e.disableField),h=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:g}=l,{getKey:y,listViewItemClass:v,onCheckItem:b,onClickItem:w}=r;function C(T,S,V){return n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:T.raw,index:S,selectedItem:V})]):t.createVNode("div",{style:"margin: 10px 0;"},[T.raw[h.value||"name"]])}function x(T,S,V){return t.createVNode("li",{class:v(T,S),id:y(T,S),key:y(T,S),onClick:N=>w(N,T,S),onMouseenter:N=>p(N,T,S),onMouseover:N=>m(N,T,S),onMouseout:N=>g(N,T,S)},[f.value&&t.createVNode("div",{class:"f-list-select",onClick:N=>N.stopPropagation()},[t.createVNode(xn.FCheckbox,{id:"list-"+y(T,S),customClass:"listview-checkbox",disabled:T[c.value]||!T.checked,checked:T.checked,"onUpdate:checked":N=>T.checked=N,onChange:N=>b(T,S,!N.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[C(T,S,V)])])}return{renderItem:x}}function qf(e,n,o,a,i,l,r,s,u,d){const f=t.ref(e.multiSelect),c=t.ref(e.disableField),h=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:g}=l,{getKey:y,listViewItemClass:v,onCheckItem:b,onClickItem:w}=r,{dragstart:C,dragenter:x,dragover:T,dragend:S}=a,{removeItem:V}=u,N=t.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function k(F,P=""){const B=F.target;B.title=B.scrollWidth>B.clientWidth?P:""}function I(F){return t.createVNode("div",{style:N.value,onMouseenter:P=>k(P,F.raw[h.value||"name"])},[F.raw[h.value||"name"]])}function E(){return n.slots.itemContent?n.slots.itemContent:I}const _=E();function M(F,P,B){return t.createVNode("li",{class:v(F,P),id:y(F,P),key:y(F,P),onClick:$=>w($,F,P),onMouseenter:$=>p($,F,P),onMouseover:$=>m($,F,P),onMouseout:$=>g($,F,P),draggable:"true",onDragstart:$=>C($,F,P),onDragenter:$=>x($,P),onDragend:$=>S($,F),onDragover:$=>T($)},[f.value&&t.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[t.createVNode(xn.FCheckbox,{id:"list-"+y(F,P),customClass:"listview-checkbox",disabled:F[c.value]||!F.checked,checked:F.checked,"onUpdate:checked":$=>F.checked=$,onChange:$=>b(F,P,!$.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[_(F)]),t.createVNode("div",{class:"f-list-remove",onClick:$=>V(P)},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:M}}function Uf(e,n,o,a,i,l,r,s,u,d){var y;const f=t.ref(((y=e.group)==null?void 0:y.groupFields)||[]),{collpaseGroupIconClass:c}=i,{toggleGroupRow:h}=d;function p(v,b){b.collapse=!b.collapse,o.value=h(b.collapse?"collapse":"expand",b,o.value)}function m(v,b,w){return n.slots.group?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.group({item:v.raw,index:b,selectedItem:w})]):t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:C=>p(C,v)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:c(v)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[v.raw[f.value[v.layer]]])])}function g(v,b,w){return v.layer>-1&&m(v,b,w)}return{renderItem:g}}function Gf(e,n,o,a){const{dataView:i}=o,{updateSelectedItems:l}=a;function r(s){if(s>-1&&s<i.value.length){if(e!=null&&e.checkBeforeRemoveItem&&!e.checkBeforeRemoveItem(i.value[s]))return;const u=i.value.splice(s,1);l(),n.emit("removeItem",u[0])}}return{removeItem:r}}function jr(e,n,o,a,i,l,r,s,u,d){const{t:f}=Ge.useI18n(),c=t.ref(e.view),h=t.ref(e.view==="CardView"),p=t.ref({}),m=t.ref(f("listView.emptyMessage")),g=Gf(e,n,a,u),y=t.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":h.value,"flex-wrap":h.value})),v=t.computed(()=>!!o.value&&o.value.length>0),b=t.computed(()=>o.value.length===0);t.computed(()=>b.value&&!n.slots.empty);function w(){return c.value==="SingleView"?Dr:c.value==="DraggableView"?qf:(c.value==="ContentView"||c.value==="CardView")&&n.slots.content?Wf:Dr}const C=w(),{renderItem:x}=C(e,n,o,d,i,l,u,r,g,s),{renderItem:T}=Uf(e,n,o,d,i,l,u,r,g,s),S=[x,T];function V(){return o.value.filter(I=>I.visible!==!1).map((I,E)=>S[I.type](I,E,p))}function N(){return t.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[t.createVNode("p",{class:"f-empty-title"},[n.slots.empty?n.slots.empty():m.value])])}function k(){return t.createVNode("ul",{class:y.value,style:"list-style: none;"},[v.value&&V(),b.value&&N()])}return{renderListArea:k}}function $r(e,n,o){function a(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:a}}function Gn(e,n,o){const a=t.ref(e.headerClass),i=t.ref(e.placeholder),l=t.ref(""),r=t.computed(()=>!l.value),s=t.computed(()=>!!l.value);function u(h){l.value=""}t.watch(l,h=>{e.enableHighlightSearch&&o.search(h),n.emit("afterSearch",h)});const d=t.computed(()=>{const h={"form-group":!0,"farris-form-group":!0};return a.value&&a.value.split(" ").reduce((m,g)=>(m[g]=!0,m),h),h});function f(h){}function c(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>f,["prevent","stop"])},[t.createVNode("div",{class:d.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":h=>l.value=h,name:"input-group-value",type:"text",placeholder:i.value,autocomplete:"off"},null),[[t.vModelText,l.value]]),t.createVNode("div",{class:"input-group-append"},[s.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:h=>u()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),r.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}function Lr(){const e=t.ref(""),n=t.ref(-1),o=t.ref(""),a=t.ref(-1),i=t.ref(!1);function l(c,h,p){a.value=p}function r(c,h,p){i.value||(a.value=p)}function s(c,h,p){a.value=-1}function u(){i.value=!0}function d(){i.value=!1}function f(){n.value=-1,e.value=""}return{activeIndex:n,focusedItemId:o,hoverIndex:a,clearActiveItem:f,onMouseenterItem:l,onMouseoverItem:r,onMouseoutItem:s,resumeHover:d,suspendHover:u}}function Rr(e,n,o,a){const i=t.ref(e.idField),{dataView:l}=o,r=t.ref(-1),s=t.ref(!1),{activeIndex:u,focusedItemId:d,hoverIndex:f,resumeHover:c,suspendHover:h}=a;let p,m=0,g=0;function y(T,S){const V=T-m,N=S-g;p.style.left=parseInt(p.style.left)+V+"px",p.style.top=parseInt(p.style.top)+N+"px",m=T,g=S}function v(T){const{left:S,top:V}=T.getBoundingClientRect(),N=T.cloneNode(!0);return N.style.cssText=`
|
|
6
|
+
</div>`,placement:"left"});return()=>t.createVNode("div",{class:r.value},[e.elementConfig.propertyName&&t.withDirectives(t.createVNode("label",{class:`col-form-label ${o.value}-${a.value}`},[t.createVNode("span",{class:"farris-label-text"},[i.value])]),[[t.resolveDirective("tooltip"),d]]),t.createVNode(On,{id:a.value,showLabel:!1,editor:e.elementConfig.editor,modelValue:l.value,onChange:s,editorParams:e.elementConfig.editorParams},null)])}}),Qs=t.defineComponent({name:"FPropertyPanelItemList",props:Ys,emits:["valueChanged","submitModal","triggerRefreshPanel"],setup(e,n){const o=t.ref(e.category);function a(p){if(!p.hideCascadeTitle)return t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("input",{title:"summary",type:"input",class:"form-control form-control-sm",value:p.cascadeSummary,readonly:!0},null)])}function i(p,m){m.isExpand=!m.isExpand}function l(p){return t.createVNode("div",{class:"landscape"},[t.createVNode("button",{title:"expand-button",class:["btn f-btn-collapse-expand f-btn-mx px-1",{"f-state-expand":p.isExpand}],onClick:m=>i(m,p)},[t.createVNode("span",null,null)])])}function r(p){return t.createVNode("div",{class:`f-section-formgroup-legend ${o.value.categoryId}-${p.propertyID}`},[t.createVNode("div",{class:"f-header px-0 my-0 col-form-label",style:"font-size: inherit;"},[t.createVNode("div",{class:"wrap"},[t.createVNode("span",{class:["f-icon mr-1",{"f-icon-arrow-60-right":!p.isExpand,"f-icon-arrow-60-down":p.isExpand}]},null),t.createVNode("span",{class:"farris-label-text"},[p.propertyName])])])])}function s(p){return`${e.categoryKey}_${p.propertyID}`}function u(p,m){p.categoryId=o.value.categoryId,o.value.enableCascade&&(p.propertyPath=o.value.parentPropertyID),o.value.setPropertyRelates&&o.value.setPropertyRelates(p,e.propertyData,m),n.emit("valueChanged",{changeObject:p})}function d(){n.emit("triggerRefreshPanel")}function f(p){return t.createVNode("div",{class:"px-2 mb-2"},[t.createVNode(Js,{key:s(p),elementConfig:p,category:o.value,onPropertyChange:u,onTriggerRefreshPanel:d},null)])}function c(p){var m;return t.createVNode("div",{class:"propertyCascadeItem farris-panel px-2 mb-2"},[t.createVNode("div",{class:["farris-panel-item card",{hidden:!p.isExpand}]},[t.createVNode("div",{class:"card-header",onClick:g=>i(g,p)},[t.createVNode("div",{class:"panel-item-title"},[t.createVNode("div",{class:"form-group farris-form-group line-item"},[r(p),a(p),l(p)])])]),t.createVNode("div",{class:["card-body",{hidden:!p.isExpand}]},[(m=p.cascadeConfig)==null?void 0:m.map(g=>f(g))])])])}t.watch(()=>e.category,()=>{o.value=e.category});function h(p){return p.propertyType==="cascade"?c:f}return()=>t.createVNode(t.Fragment,null,[o.value.properties.map(p=>h(p)(p))])}}),Ks=t.defineComponent({name:"FPropertyPanel",props:Gs,emits:["propertyChanged"],setup(e,n){const o=t.ref(e.width),a=t.ref(e.isWidePanel),i=t.ref(e.enableSearch),l=t.ref(e.mode),r=t.ref(e.isPersitOpenState),s=t.ref(e.isShowPanel),u=t.ref(),d=t.ref(),f=t.ref(e.showCloseBtn),c=t.ref(e.selectedTabId),h=t.ref(!0),p=t.ref(e.isWhiteTheme);let m=[],g=[];const y=t.ref(""),v=t.ref(),b=t.ref(),w=t.inject("SchemaService");let C=[],x=null,T="";const S=t.ref(),V=t.ref(0),N=t.computed(()=>m.map(de=>!de.hide).length===1),k=t.inject("designerContext");function I(){g=[],S.value&&S.value.categoryList&&Array.isArray(S.value.categoryList)&&S.value.categoryList.length>0&&S.value.categoryList.forEach(he=>{if(he.properties&&Array.isArray(he.properties)&&he.properties.length>0){const ee=he.properties.map(fe=>(fe.category=he,fe.propertyType==="cascade"&&fe.cascadeConfig&&fe.cascadeConfig.map(Ee=>{Ee.category=he,Ee.cascadeParent=fe,g=g.concat(Ee)}),fe));g=g.concat(ee)}})}function E(de){let he=de.offsetTop,ee=de.offsetParent;for(;ee!==null;)he+=ee.offsetTop,ee=ee.offsetParent;return he}function _(de,he){de&&he&&Object.keys(he).length>0&&Object.keys(he).forEach(ee=>{var Ee;const fe=he[ee];(Ee=de.style)==null||Ee.setProperty(ee,fe)})}function M(){return g.filter(he=>{if(typeof he.visible=="function"&&!he.visible()||typeof he.visible=="boolean"&&!he.visible)return!1;const ee=he.propertyID.toLowerCase(),fe=he.propertyName.toLowerCase();return!!(ee&&ee.includes(y.value.toLowerCase())||fe&&fe.includes(y.value.toLowerCase()))})}function F(de,he,ee){if(de===0){const fe=E(he),He=E(ee)-fe-5;he==null||he.scroll({top:He,behavior:"smooth"})}}function P(de){C&&C.length>0&&(C.forEach(ee=>{ee.style.cssText=""}),C=[]);const he=b.value;if(!y.value)v.value&&he&&(he.scrollTop=0);else if(I(),g&&g.length>0){const ee=M();ee&&ee.length>0&&setTimeout(()=>{let fe=null,Ee=-1,He=!1;ee.forEach((De,ue)=>{const Pe=De.propertyType==="cascade"?`.${De.category.categoryId}-${De.propertyID} .farris-label-text`:`.property-item .${De.category.categoryId}-${De.propertyID}.col-form-label`,ze=document.querySelector(Pe);ze&&(De.category.status!=="open"&&(De.category.status="open",He=Ee<0),De.cascadeParent&&(De.cascadeParent.isExpand=!0),Ee<0&&(fe=ze,Ee=ue),_(ze,{color:"#5B89FE"}),C.push(ze))}),Ee>-1&&(He?t.nextTick(()=>{F(Ee,he,fe)}):F(Ee,he,fe))},50)}}function B(de){P()}const $=Fe.debounce(B,200);function j(de){const{value:he}=de.target;$(he)}function D(de){B(y.value)}function O(){r.value||(h.value=!1),n.emit("closePropertyPanel")}function L(de){y.value="",P()}function z(de){!de.status||de.status==="open"?de.status="closed":de.status="open"}function G(){var de,he;if(m=[],!u.value||u.value.length===0){m=[{tabId:"default",tabName:"属性",categoryList:[]}],S.value=null;return}if((de=u==null?void 0:u.value)==null||de.forEach(ee=>{if(ee.tabId){const fe=m.find(Ee=>Ee.tabId===ee.tabId);fe?(fe.categoryList.push(ee),fe.hide&&(fe.hide=ee.hide||ee.properties.length===0)):m.push({tabId:ee.tabId,tabName:ee.tabName,categoryList:[ee],hide:ee.hide||ee.properties.length===0})}else{const fe=m.find(Ee=>Ee.tabId==="default");fe?fe.categoryList.push(ee):m.push({tabId:"default",tabName:"属性",categoryList:[ee]})}}),c.value){const ee=m==null?void 0:m.find(fe=>fe.tabId===c.value&&!fe.hide);S.value=ee||m[0]}else S.value=m[0];c.value=(he=S.value)==null?void 0:he.tabId}t.watch(()=>[e.schema,e.isShowPanel],()=>{d.value=e.schema,!e.schema||!e.schema.type?u.value=[]:(u.value=bo(d.value,w,x,T),k.filterPropertyEntity&&(u.value=k.filterPropertyEntity(u.value,d.value))),G(),L(y.value),V.value++}),t.onMounted(()=>{G()});function J(de,he,ee=!0){(!d.value||he)&&(d.value=he||e.schema),u.value=bo(d.value,w,x,T,de),k.filterPropertyEntity&&(u.value=k.filterPropertyEntity(u.value,d.value)),G(),i.value&&L(y.value),ee&&V.value++}function te(de,he){x=de,T=he}function W(){l.value=l.value==="panel"?"sidebar":"panel",l.value==="panel"?(setTimeout(()=>{B()},100),o.value="300px"):o.value="41px"}function q(){if(f.value)return t.createVNode("div",{class:"title-actions"},[t.createVNode("div",{class:"monaco-toolbar"},[t.createVNode("div",{class:"monaco-action-bar animated"},[t.createVNode("ul",{class:"actions-container",role:"toolbar"},[t.createVNode("li",{class:"action-item",onClick:O},[t.createVNode("span",{class:"f-icon f-icon-close"},null)])])])])])}function R(){u.value=bo(d.value,w,x,T),k.filterPropertyEntity&&(u.value=k.filterPropertyEntity(u.value,d.value)),G()}function H(){var de;if(i.value&&((de=S.value)==null?void 0:de.tabId)!=="commands")return t.createVNode("div",{class:"search"},[t.createVNode("div",{class:"input-group f-state-editable border-left-0 border-right-0"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left pt-3 pb-3 textbox",type:"text",placeholder:"输入属性名称或编号快速定位",autocomplete:"off",onKeyup:he=>j(he),"onUpdate:modelValue":he=>y.value=he},null),[[t.vModelText,y.value]]),t.createVNode("div",{class:"input-group-append",style:"margin-left: 0px; background:none;"},[t.createVNode("span",{class:"input-group-text input-group-clear",style:[{display:y.value&&y.value.length>0?"":"none"}],onClick:he=>L()},[t.createVNode("i",{class:"f-icon modal_close"},null)]),t.createVNode("span",{class:"input-group-text input-group-clear",onClick:he=>D()},[t.createVNode("i",{class:"f-icon f-icon-search"},null)])])])])}function A(de){return`${e.propertyName}_${de.categoryId}`}function U(de){n.emit("propertyChanged",{...de,designerItem:x})}function K(){var de,he;if(S.value)return t.createVNode("div",{class:"panel-body",ref:b},[t.createVNode("ul",{class:["property-grid",{"wide-panel":a.value}]},[(he=(de=S.value)==null?void 0:de.categoryList)==null?void 0:he.map(ee=>!ee.hide&&t.createVNode("li",{key:A(ee),"data-category-id":ee==null?void 0:ee.categoryId},[!ee.hideTitle&&t.createVNode("span",{class:"group-label",onClick:()=>z(ee)},[t.createVNode("span",{class:["f-icon mr-2",{"f-legend-show":ee.status==="closed"},{"f-legend-collapse":ee.status==="open"||ee.status===void 0}]},null),ee.categoryName]),t.createVNode("div",{hidden:ee.status==="closed"},[t.createVNode(Qs,{key:`${ee==null?void 0:ee.categoryId}-${V.value}`,category:ee,propertyData:d.value,onTriggerRefreshPanel:R,onValueChanged:U},null)])]))])])}function Q(){if(l.value==="sidebar")return t.createVNode("div",{class:"side-panel h-100",onClick:W},[t.createVNode("i",{class:"f-icon f-icon-engineering w-100 icon"},null),t.createVNode("span",null,[t.createTextVNode("属性")])])}function oe(){return{display:h.value?"block":"none",width:o.value}}function X(){return t.createVNode("div",{class:"switcher"},[t.createVNode("i",{class:"f-icon f-icon-exhale-discount",style:[{transform:l.value==="sidebar"?"none":"rotate(180deg)"}],onClick:W},null)])}function ne(de){S.value&&S.value.tabId===de.tabId||(S.value=de,c.value=S.value.tabId,y.value="")}function ie(){return m.map(de=>t.createVNode("div",{class:["title-label",{active:S.value&&S.value.tabId===de.tabId},{"d-none":de.hide}],onClick:()=>ne(de)},[t.createVNode("span",null,[de.tabName])]))}t.onMounted(()=>{B(y.value)}),t.onBeforeMount(()=>{r.value&&(h.value=s.value),G(),B(y.value)});function we(){V.value++}function le(){R()}return n.expose({updatePropertyConfig:J,updateDesignerItem:te,reloadPropertyPanel:we,refreshPanel:le}),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{ref:v,class:["property-panel",{"white-theme":p.value}],style:oe()},[t.createVNode("div",{class:"propertyPanel panel flex-column",hidden:l.value!=="panel"},[t.createVNode("div",{class:["title d-flex",{"p-right":f.value},{only:N.value}]},[ie(),q()]),H(),K()]),X(),Q()])])}}),ln=class ln{static getEditorTypesByMDataType(n,o=!1,a=""){if(o)return[{key:ce["language-textbox"].type,value:ce["language-textbox"].name}];let i=ln.fieldControlTypeMapping[n];if(a==="data-grid-column"&&(i!=null&&i.length)){const l=[ce["check-group"].type,ce["radio-group"].type];i=i.filter(r=>!l.includes(r.key))}return i}static getAllInputTypes(){const n=[];for(const o in ln.fieldControlTypeMapping)ln.fieldControlTypeMapping[o].forEach(a=>{n.find(i=>i.key===a.key&&i.value===a.value)||n.push({key:a.key,value:a.value})});return n}static mappingDomPropAndSchemaProp(n,o){var l;const a=(l=n.editor)==null?void 0:l.type,i=[];return(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&o&&o.categoryId&&o.categoryId.indexOf("gridFieldEditor")<0&&i.push({domField:"title",schemaField:"name"}),i.push({domField:"label",schemaField:"name"}),i.push({domField:"editor.required",schemaField:"require"}),i.push({domField:"editor.readonly",schemaField:"readonly"}),(a===ce["input-group"].type||a===ce.textarea.type||a===ce["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),a===ce["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&i.push({domField:"formatter.precision",schemaField:"type.precision"}),(a===ce["combo-list"].type||a===ce["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&i.push({domField:"formatter.data",schemaField:"type.enumValues"}),a===ce["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),a===ce["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),a===ce.lookup.type&&(i.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),i.push({domField:"editor.valueField",schemaField:"editor.valueField"}),i.push({domField:"editor.textField",schemaField:"editor.textField"}),i.push({domField:"editor.displayType",schemaField:"editor.displayType"}),i.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),i.push({domField:"editor.helpId",schemaField:"editor.helpId"})),i.push({domField:"path",schemaField:"bindingPath"}),i.push({domField:"binding.path",schemaField:"bindingField"}),i.push({domField:"binding.fullPath",schemaField:"path"}),(n.type===ce["data-grid-column"].type||n.type===ce["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};se(ln,"fieldControlTypeMapping",{String:[{key:ce["input-group"].type,value:ce["input-group"].name},{key:ce.lookup.type,value:ce.lookup.name},{key:ce["date-picker"].type,value:ce["date-picker"].name},{key:ce.switch.type,value:ce.switch.name},{key:ce["check-box"].type,value:ce["check-box"].name},{key:ce["check-group"].type,value:ce["check-group"].name},{key:ce["radio-group"].type,value:ce["radio-group"].name},{key:ce["combo-list"].type,value:ce["combo-list"].name},{key:ce.textarea.type,value:ce.textarea.name},{key:ce["time-picker"].type,value:ce["time-picker"].name}],Text:[{key:ce.textarea.type,value:ce.textarea.name},{key:ce.lookup.type,value:ce.lookup.name}],Decimal:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name}],Integer:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name}],Number:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name},{key:ce.switch.type,value:ce.switch.name},{key:ce["check-box"].type,value:ce["check-box"].name}],BigNumber:[{key:ce["number-spinner"].type,value:ce["number-spinner"].name}],Date:[{key:ce["date-picker"].type,value:ce["date-picker"].name}],DateTime:[{key:ce["date-picker"].type,value:ce["date-picker"].name}],Boolean:[{key:ce.switch.type,value:ce.switch.name},{key:ce["check-box"].type,value:ce["check-box"].name}],Enum:[{key:ce["combo-list"].type,value:ce["combo-list"].name},{key:ce["radio-group"].type,value:ce["radio-group"].name}],Object:[{key:ce.lookup.type,value:ce.lookup.name},{key:ce["combo-list"].type,value:ce["combo-list"].name},{key:ce["radio-group"].type,value:ce["radio-group"].name}]});let xo=ln;Ye({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Ci,wo,void 0);const Zs={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"response-form-layout-setting",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"response-form-layout-setting"},initialState:{description:"",type:"object"}},required:["id","type"]},ec={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};rt.createPropsResolver(ec,Zs,Ms,Ds);const tc={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function To(){return new DOMException("The request is not allowed","NotAllowedError")}async function nc(e){if(!navigator.clipboard)throw To();return navigator.clipboard.writeText(e)}async function oc(e){const n=document.createElement("span");n.textContent=e,n.style.whiteSpace="pre",n.style.webkitUserSelect="auto",n.style.userSelect="all",document.body.appendChild(n);const o=window.getSelection(),a=window.document.createRange();o==null||o.removeAllRanges(),a.selectNode(n),o==null||o.addRange(a);let i=!1;try{i=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(n)}if(!i)throw To()}async function ac(e){try{await nc(e)}catch(n){try{await oc(e)}catch(o){throw o||n||To()}}}function ic(){async function e(n){await ac(n)}return{onCopy:e}}function rc(e,n,o,a){const i=t.ref(14),l=t.ref(140),r=t.ref(""),s=t.ref(a.value.length),u=t.computed(()=>a.value),d=t.computed(()=>({"font-size":`${i.value}px`,height:"100%"}));function f(c){if(c.currentTarget){const h=c.currentTarget.value||"";s.value=h.length}}return()=>t.createVNode(t.Fragment,null,[t.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:l.value,onInput:c=>f(c)},[u.value]),t.createVNode("span",{class:"textarea-wordcount",title:r.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+l.value])])}function lc(e,n,o,a){const i=rc(e,n,o,a),l=new Map([["text-area",i]]);function r(s){return l.get(s)||null}return{getEditorRender:r}}function sc(){const e=t.ref(!1),n=t.ref("复制成功");return{feedbackStyle:t.computed(()=>{const a={position:"absolute",left:"50%",top:"50%",width:"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease"};return a.opacity=e.value?"0.8":"0",a.display=e.value?"":"none",a}),feedbackMessage:n,toShowFeedback:e}}function cc(e,n){const o=n.getEditorRender(e.promptEditorType);return()=>o&&o()}function uc(e,n){function o(p){if(p==null)return 0;let m=0;for(let g=0;g<p.length;g++){const y=p.charCodeAt(g);y>=0&&y<=128?m++:m=m+2}return m}function a(p,m){if(p!==""&&p!==void 0&&p!==null){p=""+p;const g=p.length;let y="",v=0;for(let b=0;b<g;b++){const w=p.charAt(b);if(v++,encodeURI(w).length>4&&v++,y=y.concat(w),v>=m)return y=y.concat("..."),y}if(v<m)return p}return""}const i=t.computed(()=>!!e.value&&!!e.value.date),l=t.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),r=t.computed(()=>!!e.value&&!!e.value.detail),s=t.computed(()=>e.value?o(e.value.detail)>160:!1),u=t.ref(!1),d=t.computed(()=>u.value?n.exception.collapse:n.exception.expand),f=t.computed(()=>{const p=n.exception.detail+" : "+(e.value&&e.value.detail)||"";return u.value?p:a(p,160)}),c=t.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function h(){u.value=!u.value}return()=>t.createVNode("div",{class:"toast-msg-detail"},[i.value&&t.createVNode("div",null,[l.value]),r.value&&t.createVNode("div",{class:"exception_wrap"},[t.createVNode("div",{class:"exception_error_msg"},[t.createVNode("div",{innerHTML:f.value},null),s.value&&t.createVNode("span",{style:c.value,onClick:h},[d.value])])])])}function dc(e){return()=>t.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function fc(e,n,o,a,i){const l=t.ref(e.exceptionInfo),r=t.computed(()=>{const m=n.value==="question"?"warning":n.value,g={"f-icon":!0},y=`f-icon-${m}`;return g[y]=!0,g}),s=t.computed(()=>o.value||l.value&&l.value.message),u=t.computed(()=>a.value),d=t.computed(()=>!!a.value),f=t.computed(()=>!!l.value);function c(){return f.value?uc(l,i):d.value?dc(u):()=>null}const h=c(),p=t.computed(()=>i.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:r.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[t.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),h()])])}function pc(e,n,o,a){const{onCopy:i}=n,{toShowFeedback:l}=o,r=t.ref(a.exception.copySuccess||"复制成功"),s=t.ref(a.exception.copy||"复制详细信息"),u=t.ref(e.exceptionInfo||{date:"",message:"",detail:""}),d=t.computed(()=>u.value&&u.value.detail||"");function f(c){i(d.value).catch(h=>{r.value=a.exception.copyFailed||"复制失败"}).finally(()=>{l.value=!0,setTimeout(()=>{l.value=!1},700)})}return()=>t.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[t.createVNode("span",{onClick:f,style:"cursor: pointer;"},[s.value])])}function mc(e,n,o,a,i){const l=t.ref(e.type),r=t.ref(e.buttons),s=t.ref(e.exceptionInfo),u=t.ref(i.ok||e.okButtonText),d=t.ref(i.cancel||e.cancelButtonText),f=t.ref(e.showCancelButton),c=t.ref(e.showOkButton),h=t.computed(()=>!!(r.value&&r.value.length)),p=t.computed(()=>s.value&&s.value.date&&s.value.message&&s.value.detail),m=t.computed(()=>!(r.value&&r.value.length)&&(c.value||f.value)),g=pc(e,o,a,i);u.value==="关闭"?u.value=i.close:u.value==="知道了"&&(u.value=i.exception.roger);function y(b){l.value==="question"&&n.emit("reject"),n.emit("close")}function v(b){l.value==="question"&&n.emit("accept"),n.emit("close")}return()=>t.createVNode("div",{class:"modal-footer"},[p.value&&g(),m.value&&f.value&&t.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:y},[d.value]),m.value&&c.value&&t.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:v},[u.value]),h.value&&r.value.length&&r.value.map(b=>t.createVNode("button",{type:"button",onClick:b.handle,class:b.class},[b.iconClass&&t.createVNode("span",{class:b.iconClass},null),b.text]))])}function hc(e){const{t:n,locale:o}=Ge.useI18n();function a(i,l,r){return l===r?n(i):l}return{yes:a("messageBox.yes")||"是",no:a("messageBox.no")||"否",close:a("messageBox.close")||"关闭",ok:a("messageBox.ok",e.okButtonText,"确定")||"确定",cancel:a("messageBox.cancel",e.cancelButtonText,"取消")||"取消",title:a("messageBox.title")||"系统提示",errorTitle:a("messageBox.errorTitle")||"错误提示",exception:{expand:a("messageBox.exception.expand")||"展开",collapse:a("messageBox.exception.collapse")||"收起",happend:a("messageBox.exception.happend")||"发生时间",detail:a("messageBox.exception.detail")||"详细信息",copy:a("messageBox.exception.copy")||"复制详细信息",copySuccess:a("messageBox.exception.copySuccess")||"复制成功",copyFailed:a("messageBox.exception.copyFailed")||"复制失败",roger:a("messageBox.exception.roger")||"知道了"},locale:o.value}}const Dn=t.defineComponent({name:"FMessageBox",props:tc,emits:["accept","reject","close"],setup(e,n){const o=hc(e),a=t.ref(e.type),i=t.ref(e.title),l=t.ref(e.detail),r=t.computed(()=>{const v={"modal-tips":!0,"d-flex":!0,"flex-row":!0},b=`messager-type-${a.value}`;return v[b]=!0,v}),s=t.computed(()=>{const v={cursor:"default"};return a.value==="prompt"?v.padding="0.5rem 0.5rem 1rem 1.5rem":a.value==="error"&&(v.padding="0.5rem 1.5rem 1rem 1.5rem"),v}),u=ic(),d=lc(e,a,i,l),f=sc(),{feedbackStyle:c,feedbackMessage:h}=f;function p(){return t.createVNode("div",{style:c.value},[h.value])}function m(){switch(a.value){case"prompt":return cc(e,d);default:return fc(e,a,i,l,o)}}const g=m(),y=mc(e,n,u,f,o);return()=>t.createVNode("div",{class:"farris-messager"},[!e.exceptionInfo&&t.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),t.createVNode("section",{class:r.value,style:s.value},[g()]),y(),p()])}}),gc={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前回调",type:"object",default:null}},required:["id","type"]},yc=new Map([["appearance",rt.resolveAppearance]]);function vc(e,n,o){return n}function bc(){function e(n,o){const a={};return a.beforeClose=i=>o.call("beforeClose",[i,n]),a}return{resolve:e}}const Ni={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60},host:{type:Object,default:"body"}},Cc=rt.createPropsResolver(Ni,gc,yc,vc),wc=bc();class Ke{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const a=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const i=parseInt(a[4],10),l=parseInt(a[5],10);return{x:i,y:l}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new Ke(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new Ke(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let a=0;a<n.changedTouches.length;a++)if(n.changedTouches[a].target===o)return new Ke(n.changedTouches[a].clientX,n.changedTouches[a].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new Ke(0,0);if(window){const a=window.getComputedStyle(n);if(a){const i=parseInt(a.getPropertyValue("left"),10),l=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(i)?0:i,o.y=isNaN(l)?0:l}return o}return null}static copy(n){return new Ke(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class $t{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new $t(0,0);if(window){const a=window.getComputedStyle(n);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(n){return new $t(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function Sc(e,n){const o=t.ref(),a=t.ref(),i=t.ref(),l=t.ref(),r=t.ref(),s=t.ref(),u=t.ref(),d=t.ref(),f=t.ref(),c=t.ref(),h=t.ref(),p=t.ref(e.resizeable),m=t.ref(),g=t.ref(e.draggable),y=t.ref(!1);function v(){const $=a.value||document.body,j=window.getComputedStyle($);if(!j||!o.value)return;const D=Ke.getTransformInfo(o.value),O={};u.value&&(O.deltaL=o.value.offsetLeft-u.value.x,O.deltaT=o.value.offsetTop-u.value.y);const L=j.getPropertyValue("position");O.width=$.clientWidth,O.height=$.clientHeight,O.pr=parseInt(j.getPropertyValue("padding-right"),10),O.pb=parseInt(j.getPropertyValue("padding-bottom"),10),O.position=j.getPropertyValue("position"),L==="static"&&($.style.position="relative"),O.translateX=D.x,O.translateY=D.y,c.value=O}function b($){if(o.value){l.value=$t.getCurrent(o.value),r.value=Ke.getCurrent(o.value),s.value=l.value?$t.copy(l.value):null,u.value=r.value?Ke.copy(r.value):null,v();const j=$.target.getAttribute("type")||"";d.value={n:!!j.match(/n/),s:!!j.match(/s/),w:!!j.match(/w/),e:!!j.match(/e/)}}}function w(){var $,j,D,O;if(o.value){const L=o.value;d.value&&((d.value.n||d.value.s)&&(($=s.value)!=null&&$.height)&&(L.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((j=s.value)!=null&&j.width)&&(L.style.width=s.value.width+"px"),u.value&&((D=u.value)!=null&&D.x&&(L.style.left=u.value.x+"px"),(O=u.value)!=null&&O.y&&(L.style.top=u.value.y+"px")))}}function C(){const $=e.minHeight?e.minHeight:1,j=e.minWidth?e.minWidth:1;s.value&&u.value&&d.value&&l.value&&(s.value.height<$&&(s.value.height=$,d.value.n&&r.value&&(u.value.y=r.value.y+(l.value.height-$))),s.value.width<j&&(s.value.width=j,d.value.w&&r.value&&(u.value.x=r.value.x+(l.value.width-j))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,r.value&&d.value.n&&(u.value.y=r.value.y+(l.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,d.value.w&&r.value&&(u.value.x=r.value.x+(l.value.width-e.maxWidth))))}function x(){if(a.value){const $=c.value;if(u.value&&s.value&&d.value&&l.value){const j=$.width-$.pr-$.deltaL-$.translateX-u.value.x,D=$.height-$.pb-$.deltaT-$.translateY-u.value.y;d.value.n&&u.value.y+$.translateY<0&&r.value&&(u.value.y=-$.translateY,s.value.height=l.value.height+r.value.y+$.translateY),d.value.w&&u.value.x+$.translateX<0&&r.value&&(u.value.x=-$.translateX,s.value.width=l.value.width+r.value.x+$.translateX),s.value.width>j&&(s.value.width=j),s.value.height>D&&(s.value.height=D)}}}function T($){if(!i.value||!l.value||!r.value||!d.value)return;$.subtract(i.value);const j=$.x,D=$.y;d.value.n?(u.value.y=r.value.y+D,s.value.height=l.value.height-D):d.value.s&&(s.value.height=l.value.height+D),d.value.e?s.value.width=l.value.width+j:d.value.w&&(s.value.width=l.value.width-j,u.value.x=r.value.x+j),x(),C(),w()}function S($){if(!f.value)return;const j=Ke.fromEvent($);j&&T(j)}function V(){if(o.value){const{width:$,height:j,x:D,y:O}=o.value.getBoundingClientRect(),L=Ke.getTransformInfo(o.value);return{size:{width:$,height:j},position:{x:D-L.x,y:O-L.y}}}return null}function N($){if(o.value){const j=V();h.value=j}i.value=void 0,l.value=null,r.value=null,s.value=null,u.value=null,d.value=null,f.value=null,document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",N)}function k(){document.addEventListener("mousemove",S),document.addEventListener("mouseup",N)}function I($){$ instanceof MouseEvent&&$.button===2||g.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),i.value=Ke.fromEvent($),f.value=$.target,b($),k())}function E($){return o.value=$,p.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:j=>I(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:j=>I(j)},null)])}function _($=!0){document.body.click();const j=a.value||document.body,D=$t.getCurrent(j),O=o.value;$&&O&&(m.value=V(),m.value.transform=O.style.transform),D&&O&&(s.value=D,s.value.height-=14,s.value.width-=14,O.style.height=s.value.height+"px",O.style.width=s.value.width+"px",O.style.left="7px",O.style.top="7px",O.style.transform="",h.value={size:s.value,position:{x:0,y:0}},g.value=!1,y.value=!0)}function M(){var $,j;if(document.body.click(),m.value){const D={width:m.value.size.width||0,height:m.value.size.height||0},O={x:(window.innerWidth-D.width)/2,y:(window.innerHeight-D.height)/2};($=s.value)==null||$.set(D),(j=u.value)==null||j.set(O);const L=o.value;L.style.height=D.height+"px",L.style.width=D.width+"px",L.style.left=`${O.x}px`,L.style.top=`${O.y}px`,L.style.transform="",h.value={size:D,position:O},g.value=e.draggable,y.value=!1}}function F(){if(o.value){const $=$t.getCurrent(o.value);if($){const{width:j,height:D}=$;o.value.style.left=`${(window.innerWidth-j)/2}px`,o.value.style.top=`${(window.innerHeight-D)/2}px`,o.value.style.transform=""}}}function P(){const $=()=>{y.value?_(!1):F(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const B=P();return{renderResizeBar:E,boundingElement:a,resizedEventParam:h,maximize:_,restore:M,allowDrag:g,isMaximized:y,unWindowResizeHandle:B,moveToCenter:F}}function xc(e,n,o){const a=t.ref(),i=t.ref(e.draggable),l=t.ref(e.lockAxis),r=t.ref(),s=t.ref(),u=t.ref(!1),d=t.ref(new Ke(0,0)),f=t.ref(new Ke(0,0)),c=t.ref(new Ke(0,0)),h=t.ref(new Ke(0,0));t.watch(()=>o.value,S=>{r.value.style.cursor=S?"move":"default"});function p(S,V){if(V.tagName==="BUTTON")return!1;if(V===S)return!0;for(const N in V.children)if(Object.prototype.hasOwnProperty.call(V.children,N)&&p(S,V.children[N]))return!0;return!1}function m(){var k,I;let S=c.value.x+f.value.x,V=c.value.y+f.value.y;l.value==="x"?(S=((k=d.value)==null?void 0:k.x)||0,c.value.x=0):l.value==="y"&&(V=((I=d.value)==null?void 0:I.y)||0,c.value.y=0);const N=`translate3d(${Math.round(S)}px, ${Math.round(V)}px, 0px)`;a.value&&(a.value.style.transform=N),h.value.x=S,h.value.y=V}function g(){if(!s.value||!a.value)return null;const S=s.value.getBoundingClientRect(),V=a.value.getBoundingClientRect(),N={top:S.top<V.top,right:S.right>V.right,bottom:S.bottom>V.bottom,left:S.left<V.left};return N.top||(c.value.y-=V.top-S.top),N.bottom||(c.value.y-=V.bottom-S.bottom),N.right||(c.value.x-=V.right-S.right),N.left||(c.value.x-=V.left-S.left),m(),N}function y(S){S&&(d.value&&S.subtract(d.value),c.value.set(S),m(),g())}function v(S){u.value&&i.value&&(S.stopPropagation(),S.preventDefault(),y(Ke.fromEvent(S,r.value)))}function b(){var S;u.value&&(u.value=!1,f.value.add(c.value),c.value.reset(),(S=a.value)==null||S.classList.remove("ng-dragging"),n.emit("stopMove"),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",b))}function w(){!u.value&&r.value&&(u.value=!0,r.value.classList.add("ng-dragging"),document.addEventListener("mousemove",v),document.addEventListener("mouseup",b))}function C(){if(a.value){const S=Ke.getTransformInfo(a.value);f.value.set(S);return}f.value.reset()}function x(S){if(!o.value||S instanceof MouseEvent&&S.button===2)return;const V=S.target||S.srcElement;r.value!==void 0&&V&&!p(V,r.value)||i.value!==!1&&(document.body.click(),S.stopPropagation(),S.preventDefault(),d.value=Ke.fromEvent(S,a.value),C(),w())}function T(S,V,N){if(i.value&&V){if(S)r.value=S;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)r.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const k=V.querySelector(e.dragHandle);k&&(r.value=k)}}a.value=V,s.value=N,r.value?(r.value.classList.add("ng-draggable"),r.value.addEventListener("mousedown",x)):i.value=!1}}return{registerDraggle:T,resetTranslate:C}}function Ii(e,n){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&n({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function Tc(e,n){const o=t.ref(e.enableEsc);let a=null;return o.value?(a=Ii("Escape",i=>{n.emit("esc",{event:i.event,type:"esc"})}),{remove:a}):null}function Vc(e,n){const o=t.ref(e.enableEnter);let a=null;return o.value?(a=Ii("Enter",i=>{n.emit("enter",{event:i.event,type:"enter"})}),{remove:a}):null}const Lt=t.defineComponent({name:"FModal",props:Ni,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(e,n){const o=t.ref(e.width||300),a=t.ref(e.height||200),i=t.ref(e.modelValue),l=t.ref(""),r=t.ref(e.class),s=t.ref(e.fitContent),u=t.ref(e.showHeader),d=t.ref(""),f=t.ref(e.showCloseButton),c=t.ref(e.showMaxButton),h=t.ref(!1),p=t.ref(e.dialogType),m=t.ref(e.src),g=t.ref(""),y=t.ref(e.showButtons),v=t.ref(e.title),b=t.ref(e.containment||null),w=t.ref(),{t:C}=Ge.useI18n();v.value==="错误提示"&&(v.value=C("messageBox.errorTitle"));const x=t.ref(!1);function T(ue,Pe){const ze=Pe?"accept":"cancel";Promise.resolve().then(()=>{var Re;return(Re=e.beforeClose)==null?void 0:Re.call(e,{closeType:ze})}).then(Re=>{Re&&(i.value=!1,n.emit("update:modelValue",!1),Pe!=null&&n.emit(Pe?"accept":"cancel"),n.emit("closed",ue))})}const S=[{name:"cancel",text:C("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:ue=>{T(ue,!1)}},{name:"accept",text:C("messageBox.ok")||"确定",class:"btn btn-primary",handle:ue=>{T(ue,!0)}}],V=t.ref(e.buttons&&e.buttons.length?e.buttons:S),N=t.computed(()=>!!d.value),k=t.computed(()=>!!y.value&&!!V.value),I=t.ref(),E=t.ref(),_=t.ref(!1),{renderResizeBar:M,maximize:F,restore:P,boundingElement:B,resizedEventParam:$,allowDrag:j,unWindowResizeHandle:D,moveToCenter:O}=Sc(e),{registerDraggle:L}=xc(e,n,j);function z(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function G(){const ue=document.querySelectorAll(".farris-modal").length;(!ue||ue-1<=0)&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}t.watch(()=>e.title,(ue,Pe)=>{ue!==Pe&&(v.value=ue)}),t.watch(()=>e.modelValue,(ue,Pe)=>{ue!==Pe&&(i.value=ue,i.value&&e.draggable&&t.nextTick(()=>{E.value&&!b.value&&(b.value=E.value.parentElement,B.value=b.value,L(I.value,E.value,B.value),O())}),ue||(b.value&&(b.value=null),G())),i.value&&(x.value=z())}),t.watch(()=>e.showHeader,(ue,Pe)=>{ue!==Pe&&(u.value=ue)}),t.watch(()=>e.showButtons,(ue,Pe)=>{ue!==Pe&&(y.value=ue)}),t.watch(()=>$.value,(ue,Pe)=>{const ze=ue||{},Re=Pe||{};JSON.stringify(ze)!==JSON.stringify(Re)&&n.emit("resize",{newSize:ue,oldSize:Pe,isMaximized:_.value})});const J=t.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),te=t.computed(()=>{var ze;const ue={modal:!0,"farris-modal":!0,fade:!0};ue["f-modal-fitContent"]=!!s.value,ue.show=!!J.value;const Pe=(ze=e.maskClass)==null?void 0:ze.split(" ");return Pe==null||Pe.reduce((Re,mt)=>(Re[mt]=!0,Re),ue),ue}),W=t.computed(()=>{var ze;const ue={"modal-dialog":!0},Pe=(ze=r.value)==null?void 0:ze.split(" ");return Pe==null||Pe.reduce((Re,mt)=>(Re[mt]=!0,Re),ue),ue}),q=t.computed(()=>{const ue={position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${a.value}px`};return e.mask||(ue.pointerEvents="auto"),ue}),R=t.computed(()=>{const ue={display:"block"};return e.mask||(ue.pointerEvents="none",ue.backgroundColor="transparent"),x.value&&(ue.backgroundColor="transparent"),ue}),H=t.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),A=t.computed(()=>{const ue={display:u.value?"":"none"};return ue["pointer-events"]=j.value?"auto":"none",ue}),U=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:_.value})),K=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function Q(){return{height:`${e.footerHeight||60}px`}}const oe=t.computed(()=>{const ue={textAlgin:g.value},Pe=Q();return Object.assign(ue,Pe)});function X(ue){if(ue==null||ue.stopPropagation(),_.value){_.value=!1,P();return}F(),_.value=!0}async function ne(ue,Pe){ue.handle&&await ue.handle(Pe,ue)&&n.emit("closed",Pe)}function ie(ue){ue.width&&(o.value=ue.width),ue.height&&(a.value=ue.height),ue.buttons&&(V.value=ue.buttons),ue.title&&(v.value=ue.title)}let we=null,le=null;t.onBeforeMount(()=>{x.value=z()}),t.onMounted(()=>{E.value&&!b.value&&(b.value=E.value.parentElement,B.value=b.value,L(I.value,E.value,B.value)),J.value&&document.body.classList.add("modal-open"),we=Tc(e,n),le=Vc(e,n)}),t.onUnmounted(()=>{D&&D(),we&&we.remove(),le&&le.remove()}),n.expose({modalElementRef:E,updateModalOptions:ie,close:T,maxDialog:X,isMaximized:_});function de(){return t.createVNode("ul",null,[h.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&t.createVNode("li",{onClick:X,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:U.value},null)]),f.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:ue=>T(ue,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function he(){return t.createVNode("div",{class:"modal-footer",style:oe.value},[V.value&&V.value.map(ue=>{const Pe=t.ref(ue.disabled);return t.createVNode("button",{name:ue.name,type:"button",disabled:Pe.value,class:ue.class+(ue.iconClass?" btn-icontext":""),onClick:ze=>{ne(ue,ze)}},[!!ue.iconClass&&t.createVNode("i",{class:ue.iconClass},null),ue.text])})])}function ee(){return t.createVNode("div",{ref:I,class:"modal-header",style:A.value},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[N.value&&t.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[v.value])]),t.createVNode("div",{class:"actions"},[de()])])}function fe(){return n.slots.footerTemplate?n.slots.footerTemplate():k.value&&he()}function Ee(ue){if(ue.stopPropagation(),e.allowClickMaskToClose){if(ue.target!==w.value)return;T(ue,!1)}}function He(){var ue,Pe;return t.createVNode("div",{id:l.value,class:W.value,style:q.value,ref:E},[t.createVNode("div",{class:H.value},[u.value&&ee(),t.createVNode("div",{class:K.value},[(Pe=(ue=n.slots).default)==null?void 0:Pe.call(ue),p.value==="iframe"&&t.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:m.value},null)]),fe()]),!s.value&&E.value&&!_.value&&M(E.value)])}function De(ue){return ue||"body"}return()=>t.createVNode(t.Teleport,{to:De(e.host)},{default:()=>[J.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>[t.createVNode("div",{ref:w,class:te.value,style:R.value,onClick:Ee},[He()])]})]})}});function Fi(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Nc(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(a,i){t.onUnmounted(()=>{document.body.removeChild(n)});const l=t.ref(),r=t.ref(e.class||""),s=t.ref(!!e.showButtons),u=t.ref(!!e.showHeader),d=t.ref(e.showCloseButton==null?!0:e.showCloseButton),f=t.ref(!0),c=t.ref(e.title||""),h=e.acceptCallback||(()=>{}),p=e.rejectCallback||(()=>{}),m=e.closedCallback||(w=>{}),g=e.resizeHandle||(w=>{}),y=e.stopMoveHandle||(w=>{}),v=Fi(e),b=w=>{f.value=!1,o.unmount(),m(w)};return t.onMounted(()=>{}),i.expose({modalRef:l}),()=>t.createVNode(Lt,{ref:l,class:r.value,modelValue:f.value,"onUpdate:modelValue":w=>f.value=w,title:c.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:h,onCancel:p,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:b,onResize:g,onStopMove:y},{default:()=>[v&&v(o)]})}});return document.body.appendChild(n),o.use(Dt.LocaleService.i18n),o.mount(n),o}class ki{constructor(n){se(this,"appContext",null);se(this,"modalRef",t.ref());se(this,"activeModalIndex",t.ref(0));se(this,"modalRefs",{});se(this,"isUseEscCloseModal",t.ref(!1));se(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(n,o){const{width:a,height:i}={width:window.innerWidth,height:window.innerHeight};return a<n&&(n=a-14),i<o&&(o=i-14),{width:n,height:o}}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Nc(o)}close(n){var o,a;n?(a=n.value)==null||a.close():(o=this.getCurrentModal())==null||o.close()}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const a=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),i=t.ref(!0),l=a.value.acceptCallback||(()=>{}),r=a.value.rejectCallback||(()=>{}),s=a.value.closedCallback||((x,T)=>{}),u=a.value.resizeHandle||(x=>{}),d=n.stopMoveHandle||(x=>{});let f;const c=Fi(a.value),h=x=>{var S;i.value=!1;const T=(S=x==null?void 0:x.target)==null?void 0:S.classList.contains("modal_close");s(x,this.isUseEscCloseModal.value?"esc":T?"icon":"button")},p=x=>{h(x),f&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),f=null,this.modalRef.value=null,this.modalRefs){const T=Object.keys(this.modalRefs).map(S=>Number(S));T.length>0?this.activeModalIndex.value=Math.max(...T):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},m=x=>{var T;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((T=this.activeModalInstance.value)==null||T.close(x==null?void 0:x.event))},{width:g,height:y}=a.value,v=this.adaptToWindow(g||500,y||320);Object.assign(a.value,v);const b=()=>t.createVNode(Lt,t.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":x=>i.value=x},a.value,{onAccept:l,onCancel:r,onClosed:p,onResize:u,onEsc:m,onStopMove:d}),{default:()=>[c&&c(this.app)]});return f=(x=>{const T=t.h(b,x);return T.appContext=this.appContext,t.render(T,o),T})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:x=>{a.value={...a.value,...x},f&&t.render(t.cloneVNode(f,{...a}),o)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}const Ic=[{label:"beforeClose",name:"关闭前回调事件"},{label:"onAccept",name:"确定事件"},{label:"onCancel",name:"取消事件"}];class Fc extends Et{constructor(o,a){super(o,a);se(this,"numberEditor",{type:"number-spinner",useThousands:!1})}getPropertyConfig(o){const a=this.getEventPropConfig(o);return this.propertyConfig.categories.dialog=this.getDialogPropertyConfig(o),this.propertyConfig.categories.eventsEditor=a,this.propertyConfig}getDialogPropertyConfig(o){return{description:"窗口尺寸配置",title:"窗口",parentPropertyID:"dialog",properties:{title:{description:"标题",title:"标题",type:"string",visible:!0},width:{description:"窗口宽度,最小值:300px,最大值:3000px",title:"宽度",type:"number",editor:{...this.numberEditor,min:300,max:3e3}},height:{description:"窗口高度,最小值:200px,最大值:2000px",title:"高度",type:"number",editor:{...this.numberEditor,min:200,max:2e3}},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:!0},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:!1},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:!0},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:!0}}}}getEventPropConfig(o){const a=this,i=Ic,l=a.eventsEditorUtils.formProperties(o,a.viewModelId,i),r={};return r[a.viewModelId]={type:"events-editor",editor:{initialData:l,viewSourceHandle:s=>{a.eventsEditorUtils.jumpToMethod(s)}}},{title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete o[a.viewModelId],d&&a.eventsEditorUtils.saveRelatedParameters(o,a.viewModelId,d.events,d),i.forEach(f=>{u[f.label]=o[f.label]})}}}}const Vo=Symbol("FModalService");Lt.install=e=>{e.component(Lt.name,Lt);const n=new ki(e);e.provide(Vo,n),e.provide("FModalService",n)},Lt.register=(e,n,o,a)=>{e.modal=Lt,n.modal=Cc,a.modal={callbackResolver:wc}};const St=class St{static show(n){const o=t.reactive({...n}),a=!1,i=o.type==="error"||o.type==="prompt",l=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",r=o.acceptCallback||(()=>{}),s=o.rejectCallback||(()=>{});let u=null,d=new ki(St.app);const f=()=>{u&&(u==null||u.destroy(),d=null)};return u=d==null?void 0:d.open({class:"modal-message modal-message-type-info",title:l,showButtons:a,showHeader:i,width:o.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>t.createVNode(Dn,t.mergeProps(o,{onAccept:r,onReject:s,onClose:f}),null)}),d==null?void 0:d.getCurrentModal()}static info(n,o){const a=t.reactive({type:"info",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});St.show(a)}static warning(n,o){const a=t.reactive({type:"warning",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});St.show(a)}static success(n,o){const a=t.reactive({type:"success",title:n,detail:o,okButtonText:"关闭",showCancelButton:!1});St.show(a)}static error(n,o,a){const i=t.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:a,message:n,detail:o}});St.show(i)}static prompt(n,o){const a=t.reactive({type:"prompt",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消"});St.show(a)}static question(n,o,a,i){const l=t.reactive({type:"question",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:a,rejectCallback:i});St.show(l)}};se(St,"app",null);let jn=St;Dn.install=e=>{e.component(Dn.name,Dn),jn.app=e,e.provide("FMessageBoxService",jn)};var yn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(yn||{});function kc(){const{t:e}=Ge.useI18n();return{conditionListLocale:{add:e("condition.add"),create:e("condition.create"),reset:e("condition.reset"),and:e("condition.and"),or:e("condition.or")}}}function Pc(){const{t:e}=Ge.useI18n();return{operatorsLocale:{equal:e("operators.equal"),notEqual:e("operators.notEqual"),greater:e("operators.greater"),greaterOrEqual:e("operators.greaterOrEqual"),lessOrEqual:e("operators.lessOrEqual"),less:e("operators.less"),contains:e("operators.contains"),startWith:e("operators.startWith"),endWith:e("operators.endWith")}}}var gt=(e=>(e.Equal="0",e.NotEqual="1",e.Greater="2",e.GreaterOrEqual="3",e.Less="4",e.LessOrEqual="5",e.Like="6",e.LikeStartWith="7",e.LikeEndWith="8",e.In="9",e.NotIn="10",e))(gt||{});function Ec(){const{operatorsLocale:e}=Pc();return[{value:"0",name:e.equal},{value:"1",name:e.equal},{value:"2",name:e.equal},{value:"3",name:e.equal},{value:"4",name:e.less},{value:"5",name:e.lessOrEqual},{value:"6",name:e.contains},{value:"7",name:e.startWith},{value:"8",name:e.endWith}]}const Mc={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function _c(e,n,o){const{fieldMap:a}=o;function i(l){const r=a.get(l.fieldCode);if(!r)return[];const s=r.editor.type,u=new Set(Mc[s]);return Ec().filter(f=>u.has(f.value))}return{getCompareOperators:i}}function Pi(){const e=t.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),n=new Map,o=new Map;let a=0;function i(){return{id:"",fieldCode:"",fieldName:"",compareType:gt.Equal,valueType:yn.Value,value:new _n,relation:0,conditionId:Date.now()}}function l(N,k){return{relation:N,items:[],children:[],path:[],groupId:++a,level:k}}function r(){const N=Object.assign({},e.value);o.forEach((k,I)=>{k.groupId===N.groupId&&o.set(I,N)}),n.forEach((k,I)=>{k.groupId===N.groupId&&n.set(I,N)}),e.value=N}function s(N){const k=new Map;let I=0;return N.forEach((E,_)=>{var M,F;if(I+=((M=E.lBracket)==null?void 0:M.length)||0,k.set(_,I),I-=((F=E.rBracket)==null?void 0:F.length)||0,I<0)throw new Error("The right bracket is out of range.")}),k}function u(N,k,I,E,_){for(let M=0;M<k;M++){const F=N+(M+1),P=l(_,F);I.children.push(P),o.set(P.groupId,I),I=I.children[I.children.length-1],E.push(I)}return I}function d(N,k,I,E,_){for(let B=k;B<=0;B++)E.pop();const M=E[E.length-1];if(!M)throw new Error("The group path is out of range");const F=N+k,P=l(_,F);return M.children.push(P),o.set(P.groupId,M),I=M.children[M.children.length-1],E.push(I),I}function f(N,k,I,E){I.pop();const _=I[I.length-1],M=l(E,N);return _.children.push(M),o.set(M.groupId,_),k=_.children[_.children.length-1],I.push(k),k}function c(N,k,I,E,_,M){let F=N[N.length-1];if(!F)throw new Error("The group path is out of range");const P=k.get(E)||0,B=k.get(I)||0;if(I<0||I===E)return N[N.length-1];const $=P-B,j=_&&_.relation!==void 0?_.relation:1;return F=$>0?u(B,$,F,N,j):F,F=$<0?d(B,$,F,N,j):F,F=$===0&&B>0&&P>0&&_&&M&&!!_.rBracket&&!!M.lBracket?f(B,F,N,j):F,F}function h(N){const I={relation:N.length&&N[0].relation!==void 0?N[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},E=[I],_=s(N);return N.forEach((M,F)=>{const P=F-1,B=N[P],$=c(E,_,P,F,B,M);$.items.push(M),n.set(M.conditionId,$)}),e.value=I,I}function p(){const N=i();n.set(N.conditionId,e.value),e.value.items.push(N)}function m(N){if(!N)return;const k=n.get(N.conditionId);if(k){const I=k.items.findIndex(_=>_.conditionId===N.conditionId)+1,E=i();n.set(E.conditionId,k),k.items.splice(I,0,E),r()}}function g(N,k,I,E){N.reduce((_,M)=>{const F=M.conditionId!==void 0,P=M.groupId!==void 0;if(F){const B=M;I.push(B),_.items.set(B.conditionId,B)}if(P){const B=M;E.push(B),_.groups.set(B.groupId,B)}return _},k)}function y(N,k,I,E,_){N&&(N.items=k.length?N.items.filter(M=>!I.has(M.conditionId)):N.items,N.children=E.length?N.children.filter(M=>!_.has(M.groupId)):N.children)}function v(N,k,I){k.forEach(E=>{N.items.push(E),n.set(E.conditionId,N)}),I.forEach(E=>{N.children.push(E),o.set(E.groupId,N)})}function b(N){const k=N[0],I=k.conditionId!==void 0?n.get(k.conditionId):o.get(k.groupId),E={items:new Map,groups:new Map},_=[],M=[];if(I){g(N,E,_,M),y(I,_,E.items,M,E.groups);const F=l(I.relation,I.level+1);v(F,_,M),I.children.push(F),o.set(F.groupId,I),r()}}function w(N){const k=[...N.items],I=[...N.children],E=o.get(N.groupId);E&&(E.children=E.children.filter(_=>_.groupId!==N.groupId),o.delete(N.groupId),k.forEach(_=>{E.items.push(_),n.set(_.conditionId,E)}),I.forEach(_=>{E.children.push(_),o.set(_.groupId,E)}),r())}function C(N){N.relation=N.relation===1?2:1,r()}let x;function T(N){const{relation:k}=N;return(N.children&&N.children.length?N.children.map((E,_,M)=>{const F=x(E);return F[0].lBracket=(F[0].lBracket||"")+"(",F[F.length-1].rBracket=(F[F.length-1].rBracket||"")+")",F[F.length-1].relation=_<M.length-1?k:0,F}):[]).flat()}x=(N=e.value)=>{const{relation:k}=N,I=N.items.map((_,M,F)=>(_.lBracket=M===0?"(":"",_.rBracket=M===F.length-1?")":"",_.relation=M<F.length-1?k||1:0,_)),E=T(N);return[...I,...E]};function S(N){const k=N||e.value;if(k.children.length&&k.children.forEach(I=>{S(I)}),k.level===0&&!k.items.length&&k.children.length===1){const I=k.children[0];e.value.relation=I.relation,w(I)}else k.items.length===0&&k.children.length<=1&&w(k)}function V(N){const k=n.get(N.conditionId);k&&(k.items=k.items.filter(I=>I.conditionId!==N.conditionId),n.delete(N.conditionId),S(),r())}return{addCondition:p,changeGroupRelation:C,conditionGroupMap:n,getConditions:x,group:b,groupParentMap:o,insertConditionTo:m,loadConditionGroup:h,refresh:r,removeCondition:V,rootGroup:e,unGroup:w}}function Oc(e,n,o){const a=t.ref(new Set),i=t.ref(new Set),{conditionGroupMap:l,groupParentMap:r}=o;let s,u;function d(v){let b=s.level<=v.level?s:v,w=s.level>v.level?s:v;const C=[];for(;w&&b&&w!==b;)w.level>b.level?(C.push(w),w=r.get(w.groupId)):w.level===b.level&&(b=r.get(b.groupId),b&&C.unshift(b));return C}function f(v){i.value.add(v.groupId),v.items.forEach(b=>a.value.add(b.conditionId)),v.children.forEach(b=>f(b))}function c(v){const{conditionId:b}=v;a.value.add(b),s=a.value.size===0?l.get(b):s;const w=l.get(v.conditionId);d(w).forEach(x=>f(x))}const h=t.computed(()=>a.value.size===0&&i.value.size===1),p=function(v){i.value.delete(v.groupId),v.items.forEach(w=>u(w)),v.children.forEach(w=>!h.value&&p(w));const b=r.get(v.groupId);b&&i.value.has(b.groupId)&&p(b)};u=function(v){const{conditionId:b}=v;if(a.value.has(b)&&a.value.delete(b),i.value.size>0){const w=l.get(b);w&&i.value.has(w.groupId)&&p(w)}};function m(v){const{conditionId:b}=v;a.value.size===0&&(s=l.get(b)),a.value.has(b)?u(v):c(v)}function g(){const v=[];return s&&(s.items.filter(b=>a.value.has(b.conditionId)).forEach(b=>v.push(b)),s.children.filter(b=>i.value.has(b.groupId)).forEach(b=>v.push(b))),v}function y(){a.value.clear(),i.value.clear()}return{clear:y,getSelectedGroupItem:g,selectedItems:a,toggleSelect:m}}const No=t.defineComponent({name:"FConditionList",props:ri,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,n){const o=t.ref(e.key),a=t.ref(e.conditions),i=vi(e),{convertToSingleControl:l,fields:r,fieldMap:s,loadFieldConfigs:u}=i,d=Pi(),{addCondition:f,changeGroupRelation:c,getConditions:h,group:p,insertConditionTo:m,loadConditionGroup:g,refresh:y,removeCondition:v,rootGroup:b,unGroup:w}=d,{createConditionValue:C}=yi(),x=Oc(e,n,d),{selectedItems:T,toggleSelect:S}=x,{getCompareOperators:V}=_c(e,n,i),{conditionListLocale:N}=kc();u(!1),r.value=l(r.value),g(a.value);function k(z){var J;const G=((J=s.get(z.fieldCode))==null?void 0:J.editor)||{type:"text"};z.value=C(G.type,void 0),n.emit("labelCodeChange",z)}function I(z,G){n.emit("compareTypeChange",G)}function E(){}n.expose({getConditions:h});function _(z,G){n.emit("valueChange",z,G)}function M(z){return t.createVNode("div",{class:"condition-list-item-type mr-3"},[t.createVNode(Xt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:r.value,modelValue:z.fieldCode,"onUpdate:modelValue":G=>z.fieldCode=G,onChange:G=>k(z)},null)])}function F(z){return t.createVNode("div",{class:"condition-list-item-compare mr-3"},[t.createVNode(Xt,{"value-field":"value","text-field":"name","id-field":"id",data:V(z),modelValue:z.compareType,"onUpdate:modelValue":G=>z.compareType=G,onChange:G=>I(G,z)},null)])}function P(z){var G;return t.createVNode("div",{class:"condition-list-item-control mr-3"},[t.createVNode(On,{editor:(G=s.get(z.fieldCode))==null?void 0:G.editor,showLabel:!1,modelValue:z.value.value,"onUpdate:modelValue":J=>z.value.value=J,onChange:J=>{_(J,z)}},null)])}function B(z){return[t.createVNode("div",{class:"condition-list-item-extend"},[t.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>m(z)},null),t.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>v(z)},null)]),t.createVNode("div",{class:"custom-control custom-checkbox"},[t.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:T.value.has(z.conditionId)},null),t.createVNode("label",{class:"custom-control-label",onClick:()=>S(z)},null)])]}function $(z){return z.items.map(G=>t.createVNode("div",{class:"condition-list-item",key:G.conditionId},[M(G),F(G),P(G),B(G)]))}function j(z){return t.createVNode("div",{class:"condition-list-relation"},[t.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>w(z)},null),t.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>c(z)},[z.relation===1?N.and:N.or])])}function D(z){return t.createVNode("div",{class:"condition-list-content"},[t.createVNode("div",{class:"condition-list-content-group"},[$(z),z.children&&z.children.map(G=>D(G))]),j(z)])}function O(){p(x.getSelectedGroupItem()),x.clear()}function L(){return t.createVNode("div",{class:"condition-list-bottom"},[t.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:f},[t.createVNode("span",{class:"f-icon f-icon-filter-add"},null),t.createVNode("span",{class:"ml-1"},[N.add])]),t.createVNode("div",{class:"add-condition-btn mb-1",onClick:O},[t.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),t.createVNode("span",{class:"ml-1"},[N.create])]),t.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:E},[N.reset])])}return()=>t.createVNode("div",{class:"condition-list",key:o.value},[t.createVNode("div",{class:"condition-list-body"},[D(b.value)]),L()])}});No.install=e=>{e.component(bi.name,bi).component(No.name,No)};const Bc=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Dc={equal:(e,n,o)=>e&&e[n]===o,notEqual:(e,n,o)=>e&&e[n]!==o,contain:(e,n,o)=>e?(e[n]||"").indexOf(o)>-1:!1,startWidth:(e,n,o)=>e?(e[n]||"").startsWith(o):!1,endWidth:(e,n,o)=>e?(e[n]||"").endsWith(o):!1},jc={equal:(e,n,o)=>e&&e[n]===o,in:(e,n,o)=>{if(e){const a=e[n];return o.indexOf(a)>-1}return!1},notEqual:(e,n,o)=>e&&e[n]!==o},$c={equal:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()===a}return!1},notEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()!==a}return!1},greaterThan:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>a}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>=a}return!1},lessThan:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<a}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<=a}return!1}},Lc={equal:(e,n,o)=>e?String(o).split(",").includes(String(e[n])):!1,in:(e,n,o)=>{if(e){const a=e[n];return o.indexOf(a)>-1}return!1},notEqual:(e,n,o)=>e?String(o).split(",").findIndex(i=>i===String(e[n]))===-1:!1},Rc={equal:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):a===i}return!1},notEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?!0:a!==i}return!1},greaterThan:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i>a}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i>=a}return!1},lessThan:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i<a}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i<=a}return!1}},Ac=new Map([["boolean",jc],["datetime",$c],["enum",Lc],["number",Rc],["text",Dc]]);function Ei(){const e=t.ref([]),n=new Map,{loadConditionGroup:o}=Pi();function a(y,v){switch(y){case"check-box":return new li({value:v});case"combo-list":return new ci({value:v});case"combo-lookup":return new si({value:v});case"input-group":return new _n({value:v});case"date-picker":return new hn({value:v});case"date-range":return new gn({value:v});case"datetime-picker":return new gi({value:v});case"datetime-range":return new gn({value:v});case"lookup":return new ui({value:v});case"month-picker":return new di({value:v});case"month-range":return new fi({value:v});case"number-range":return new pi({value:v});case"number-spinner":return new mi({value:v});case"radio-group":return new hi({value:v});default:return new _n({value:v})}}const i=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),l=new Map([["boolean",gt.In],["date",gt.Equal],["datetime",gt.Equal],["number",gt.Equal],["string",gt.Equal],["text",gt.Equal],["enum",gt.In],["reference",gt.Equal]]);function r(y){var b;const v=y.dataType||"string";return((b=y.editor)==null?void 0:b.type)||i.get(v)||"text"}function s(y){var k,I,E,_,M;const v=`field_filter_${y.field}`,b=Date.now(),w=y.field,C=((k=y.column)==null?void 0:k.title)||"",x=((I=y.column)==null?void 0:I.dataType)||"string",T=l.get(x)||gt.Equal,S=((_=(E=y.column)==null?void 0:E.editor)==null?void 0:_.type)||i.get(x)||"text",V=a(S,(M=y.column)==null?void 0:M.filter),N=S==="lookup"||S==="combo-lookup"?yn.SmartHelp:S==="combo-list"?yn.Enum:yn.Value;n.set(v,{id:v,fieldCode:w,fieldName:C,compareType:T,valueType:N,value:V,conditionId:b}),e.value=Array.from(n.values())}function u(y){const v=`field_filter_${y.field}`;n.delete(v),e.value=Array.from(n.values())}function d(y){n.delete(y),e.value=Array.from(n.values())}function f(){n.clear(),e.value=[]}function c(y){const{valueType:v}=y.value,b=y.compareType||"0",w=Bc[Number(b)];return Ac.get(v)[w]}function h(y){const v=y.relation===2?0:1,b=y.items.map(C=>{const x=c(C);return S=>x(S,C.fieldCode,C.value.getValue())}),w=y.children&&y.children.length?y.children.map(C=>h(C)):[];return{relation:v,filterFunctions:b,children:w}}function p(){const y=o(e.value);return h(y)}function m(y,v){const b=v.filterFunctions.map(C=>C(y)),w=v.children.map(C=>m(y,C));return v.relation===1?b.every(C=>C)&&w.every(C=>C):b.includes(!0)||w.includes(!0)}function g(y){const v=p();return m(y,v)}return{addColumnFilter:s,apply:g,clearCondition:f,conditions:e,getFilterEditorType:r,removeColumnFilter:u,removeCondition:d}}function Mi(e){t.ref(e.selection.showCheckbox||!1);const n=t.computed(()=>{var r;return((r=e.hierarchy)==null?void 0:r.collapseField)||"__fv_collapse__"}),o=t.computed(()=>{var r;return((r=e.hierarchy)==null?void 0:r.hasChildrenField)||"__fv_hasChildren__"}),a=t.computed(()=>{var r;return((r=e.hierarchy)==null?void 0:r.parentIdField)||"parent"}),i=t.computed(()=>e.hierarchy&&e.selection.showCheckbox),l=t.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:n,hasChildrenField:o,parentIdField:a,shouldShowCheckBox:i,shouldShowIcon:l}}function zc(e,n,o,a,i,l,r,s,u){var Bt;const{dataView:d,visibleDataItems:f}=n,{getVisualData:c,maxVisibleRowIndex:h,minVisibleRowIndex:p}=i,m=t.computed(()=>a.value.primaryColumnsWidth),g=t.computed(()=>a.value.leftColumnsWidth),y=t.computed(()=>a.value.rightColumnsWidth),v=((Bt=e.rowOption)==null?void 0:Bt.height)||28,b=t.ref(0),w=t.ref(0);let C=0,x=l.value-1;const T=t.ref(0),S=t.ref(0),V=t.ref(0),N=t.ref(e.virtualized),k=24,I=1.5;let E=null;function _(){const me=f.value;if(me.length<=0)return 0;const Se=h.value<me.length?me[h.value]:me[me.length-1];return Se.__fv_data_position__>me.length*v?me.length*v:(Se.__fv_data_position__||0)+(Se.__fv_data_height__||0)+Math.max(me.length-1-h.value,0)*v}const M=t.computed(()=>{const me=_();f.value;let Se=S.value/Math.max(me,S.value),ke=Math.floor(Se*S.value);for(;S.value>0&&ke<k;)Se*=I,ke=Math.floor(Se*S.value);return ke}),F=t.computed(()=>Math.floor(V.value/Math.max(m.value,V.value)*T.value)),P=0,B=0,$=t.computed(()=>T.value-(g.value+m.value+y.value+s.value));function j(me){const ke=Math.floor(me/v)+1,Ue=f.value;return Ue.length>ke?Ue[ke].__fv_visible_index__-1:0}function D(me,Se,ke){let Ue=me,Xe=Se;const at=Se-me+1;if(at<r+l.value+r){const dt=r+l.value+r-at,It=Se+dt<=ke,vt=0+dt<=me;if(It)Xe+=dt,x=Xe;else if(vt)Ue-=dt,C=Ue;else{const re=ke-Se,Y=dt-re;Xe=Math.min(Se+re,ke),Ue=Math.max(me-Y,0)}}return{actualStart:Ue,actualEnd:Xe}}function O(me){var re,Y;const Se=f.value;if(!Se.length){o.value=[];return}const ke=(re=e.pagination)!=null&&re.enable?0:Math.max(C-r,0),Ue=Se[Se.length-1].__fv_visible_index__,Xe=(Y=e.pagination)!=null&&Y.enable?Se.length-1:Math.min(x+r,Ue),{actualStart:at,actualEnd:dt}=D(ke,Xe,Ue),It=Se[at-1],vt=c(at,dt,It,me);vt.length&&(o.value=[...vt])}const L=t.computed(()=>_()>S.value),z=t.computed(()=>Math.floor(m.value)>V.value);function G(me,Se){let ke=me;const Ue=ke>P,Xe=L.value;Xe&&ke<S.value-Se&&(ke=S.value-Se),(!Xe||Ue)&&(ke=P),b.value!==ke&&(b.value=ke)}function J(){N.value&&(C=j(Math.abs(b.value)),x=C+l.value-1,(C<p.value||x>h.value-r/2)&&O())}function te(me){let Se=b.value+me;Se>P&&(Se=P);const ke=_();G(Se,ke),J()}function W(me){if(!z.value){w.value=0;return}let Se=w.value+me;Se>B&&(Se=B),Se<$.value&&(Se=$.value),w.value!==Se&&(w.value=Se)}function q(){Math.abs(w.value)+V.value>m.value&&(w.value=Math.min(V.value-m.value,0))}function R(){b.value=0,C=0,x=l.value-1,O()}function H(){const me=_();G(b.value,me)}t.watch([V,m],()=>{W(0)}),t.watch(S,(me,Se)=>{me!==Se&&me>=d.value.length*v&&te(0)});function A(me){let{deltaX:Se}=me,ke=-1*me.deltaY;return typeof Se>"u"&&(Se=-1*me.wheelDeltaX/6),typeof ke>"u"&&(ke=me.wheelDeltaY/6),me.deltaMode&&me.deltaMode===1&&(Se*=10,ke*=10),me.shiftKey?{deltaY:-ke,deltaX:-Se}:{deltaX:Se,deltaY:ke}}function U(me){if(e.disabled||!L.value||me.target.tagName==="TEXTAREA")return;me.preventDefault(),me.stopPropagation();const{deltaX:Se,deltaY:ke}=A(me);te(ke),W(Se)}const K=t.computed(()=>({height:`${d.value.length*v}px`,width:`${g.value}px`,transform:`translateY(${b.value}px)`})),Q=t.computed(()=>({transform:`translateY(${b.value}px)`})),oe=t.computed(()=>({height:`${(e.autoHeight?f.value:d.value).length*v}px`,width:`${m.value}px`,transform:`translate(${w.value}px, ${b.value}px)`})),X=t.computed(()=>({transform:`translate(${w.value}px, ${b.value}px)`})),ne=t.computed(()=>({height:`${d.value.length*v}px`,width:`${y.value}px`,transform:`translateY(${b.value}px)`})),ie=t.computed(()=>({transform:`translateY(${b.value}px)`})),we=t.computed(()=>({height:`${d.value.length*v}px`,width:`${s.value}px`,transform:`translateY(${b.value}px)`})),le=t.computed(()=>({width:`${g.value}px`})),de=t.computed(()=>({transform:`translateX(${w.value}px)`})),he=t.computed(()=>({width:`${y.value}px`})),ee=t.computed(()=>{const me=_();return G(b.value,me),b.value/(S.value-me)*(S.value-M.value)}),fe=t.computed(()=>({width:"8px",height:`${M.value}px`,top:`${ee.value}px`,backgroundColor:"#cccccc !important"})),Ee=t.computed(()=>w.value/$.value*(T.value-F.value)),He=t.computed(()=>({height:"8px",width:`${F.value}px`,left:`${Ee.value}px`,backgroundColor:"#cccccc !important"})),De=t.ref(!1),ue=t.ref(-1),Pe=t.ref(-1),ze=t.ref();function Re(me){if(De.value&&Pe.value!==-1){const Se=Pe.value-me.pageX,ke=T.value-F.value;if(Math.abs(Se)<=ke){const Ue=Se/(V.value-F.value)*(m.value-V.value);W(Ue),Pe.value=me.pageX}}}function mt(me){if(De.value&&ue.value!==-1){const Se=ue.value-me.pageY,ke=_(),Ue=ke-M.value;if(Math.abs(Se)<=Ue){const Xe=Se/(S.value-M.value)*(ke-S.value);te(Xe),ue.value=me.pageY}}}function xt(me){De.value=!1,ue.value=-1,Pe.value=-1,document.removeEventListener("mouseup",xt),E&&(document.removeEventListener("mousemove",E),E=null),document.body.style.userSelect="",ze.value&&(ze.value.style.opacity=null)}function Wt(me,Se,ke){var at;De.value=!0;const Ue=(at=me.target)==null?void 0:at.parentElement;Ue&&(Ue.style.opacity="1",ze.value=Ue);const Xe=ke==="horizontal"?Re:Fe.throttle(mt,50);E||(E=Xe),ke==="vertical"&&(ue.value=me.pageY),ke==="horizontal"&&(Pe.value=me.pageX),Se.value&&(Se.value,document.addEventListener("mousemove",E),document.addEventListener("mouseup",xt),document.body.style.userSelect="none")}function Ot(me){const Se=d.value.length*v-S.value;let ke=me*v;ke>=Se&&(ke=Se),te(-ke-b.value)}function Nt(){Ot(d.value.length)}function qt(me){te(me-b.value)}return{dataGridWidth:T,fitHorizontalScroll:q,gridDataStyle:oe,gridHeaderColumnsStyle:de,gridMergedDataStyle:X,gridSideStyle:we,horizontalScrollThumbStyle:He,leftFixedGridDataStyle:K,leftFixedGridHeaderColumnsStyle:le,leftFixedGridMergedDataStyle:Q,offsetX:w,offsetY:b,onMouseDownScrollThumb:Wt,onWheel:U,reCalculateVisualDataRows:O,resetScroll:R,rightFixedGridDataStyle:ne,rightFixedGridHeaderColumnsStyle:he,rightFixedGridMergedDataStyle:ie,shouldShowHorizontalScrollbar:z,shouldShowVirticalScrollbar:L,updateVirticalScroll:H,updateVisibleRowsOnLatestVisibleScope:J,verticalScrollThumbStyle:fe,viewPortWidth:V,viewPortHeight:S,scrollToBottom:Nt,scrollToRowByIndex:Ot,scrollTo:qt}}function Hc(e,n,o,a,i,l,r,s){const u=t.ref(a.value-1+i),d=t.ref(0),{renderDataRow:f}=l,c=r?r.renderGroupRow:f,h=s?s.renderSummaryRow:f;function p(y){let v=f;return y.__fv_data_grid_group_row__&&(v=c),y.__fv_data_grid_group_summary__&&(v=h),v}function m(y,v,b,w){const{dataView:C,visibleDataItems:x}=o,T=[],S=e.virtualized?x.value:C.value;if(S.length>0){const V=w?Date.now().toString():"";let N=y,k=0;const I=v-y+1;for(;T.length<I&&N<S.length;){const E=S[N],_=S[N-1]||b,M=T[k-1],F=_?(_.__fv_data_position__||0)+(_.__fv_data_height__||0):0,B=p(E)(E,_,M,N,F,n.value);B.refreshKey=V,B.visible&&(T.push(B),k++),N++}}return d.value=T.length>0?T[0].raw.__fv_visible_index__:0,u.value=T.length>0?T[T.length-1].raw.__fv_visible_index__:0,T}function g(y,v,b){const w=v.groupField||"",{groupValue:C}=v;o[y](w,C);const{dataView:x}=o,T=b[0].index,S=Math.min(T+a.value+i+1,x.value.length-1);return m(T,S)}return{getVisualData:m,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:g}}function _i(e){var l;const{isUndefined:n}=Ie.useCommonUtils(),o=((l=e.rowOption)==null?void 0:l.height)||28;function a(r,s){const u=r.pre;if(u){let d=u.__fv_data_position__,f=u.__fv_data_height__;(n(d)||e.virtualized&&e.hierarchy&&u.__fv_visible_index__*o!==d)&&(d=u.__fv_visible_index__*o),n(f)&&(f=o);const c=r.visible?d+f:u.__fv_data_position__;r.top=c,s.__fv_data_position__=c}else r.top=0,s.__fv_data_position__=0}function i(r,s,u){if(r&&!s.ref){s.ref=r;const d=s.parent;s.cellHeight!==r.offsetHeight&&(s.cellHeight=r.offsetHeight),s.cellHeight&&s.cellHeight>(d.height||0)&&(d.height=s.cellHeight,u.__fv_data_height__=d.height),a(d,u)}!r&&s.ref&&(s.ref=r)}return{updateRowPosition:a,updateVisualInfomation:i}}function Wc(){function e(n,o){var r,s;if(!o.data||!o.data.length)return"";const a=Object.prototype.hasOwnProperty.call(o,"valueField")&&o.valueField||"value",i=Object.prototype.hasOwnProperty.call(o,"textField")&&o.textField||"name";if(n!=null&&n.includes(",")){const u=n.split(",");if(!o.data.filter(h=>u.includes(h[a])).length)return"";const f=(r=o.data)==null?void 0:r.reduce((h,p)=>(h[p[a]]=p,h),{});return u.map(h=>{var p;return(p=f[h])==null?void 0:p[i]}).join(",")||n}const l=(s=o.data)==null?void 0:s.find(u=>u[a]===n);return(l==null?void 0:l[i])||n||""}return{renderEnumColumn:e}}function qc(){function e(n,o){return n?o==null?void 0:o.trueText:o==null?void 0:o.falseText}return{renderText:e}}function Uc(){const{formatTo:e}=Ie.useDateFormat();function n(a,i){if(a){let l="yyyy-MM-dd";if(typeof i=="string"?l=i:typeof i=="object"&&(l=i.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof i=="object"&&i.dateRange){const r=i.dateRangeDatesDelimiter||"~";let[s,u]=a.split(r);return s=e(s,l),u=e(u,l),s+r+u}return e(a,l)}return a}function o(a,i){const l=i.dateFormat||"yyyy-MM-dd";return e(a,l)}return{renderDateColumn:o,renderDateTimeColumn:n}}function Gc(){const{formatTo:e}=Ie.useNumberFormat();function n(o,a){const i={precision:a.precision,prefix:a.prefix||"",suffix:a.suffix||"",decimalSeparator:a.decimal||".",groupSeparator:a.thousand||""};return e(o,i)||o}return{renderNumberColumn:n}}function Yc(){function e(n,o){if(n){const a={};return o!=null&&o.width&&(a.width=`${o.width}px`),o!=null&&o.height&&(a.height=`${o.height}px`),t.createVNode("img",{src:n,style:a},null)}return n}return{renderImageColumn:e}}function Xc(){const{locale:e}=Ge.useI18n();function n(o,a){return(o==null?void 0:o[e.value||"zh-CHS"])||""}return{renderMultilingualColumn:n}}function Jc(){const{renderText:e}=qc(),{renderEnumColumn:n}=Wc(),{renderNumberColumn:o}=Gc(),{renderDateColumn:a,renderDateTimeColumn:i}=Uc(),{renderImageColumn:l}=Yc(),{renderMultilingualColumn:r}=Xc();function s(f){return typeof f=="boolean"?f.toString():f}function u(f,c,h){return c.customFormat?c.customFormat(f,h.raw):s(f)}function d(f,c,h){const{column:p}=f,m=Ie.resolveField(c.raw,p.field),g=h.options||h;return h.type===Ct.NONE?s(m):h.type===Ct.CUSTOM?u(m,h,c):h.type===Ct.ENUM?n(m,g):h.type===Ct.NUMBER?o(m,g):h.type===Ct.BOOLEAN?e(m,g):h.type===Ct.DATE?a(m,g):h.type===Ct.DATE_TIME?i(m,h):h.type===Ct.IMAGE?l(m,g):h.type===Ct.MULTI_LINGUAL?r(m,g):s(m)}return{renderFormatColumn:d}}function Oi(e,n,o){var v;const{isUndefined:a}=Ie.useCommonUtils(),i=t.ref(e.mergeCell);(v=t.ref(e.rowOption).value)!=null&&v.wrapContent;const{updateVisualInfomation:r}=o,{renderCommandColumn:s}=xs(e),{renderFormatColumn:u}=Jc();function d(b,w,C,x,T,S=1){const V={colSpan:S,rowSpan:1,index:C,field:b,data:Ie.resolveField(x,b),editingData:Ie.resolveField(x,b),parent:T,mode:w,align:"left",valign:"start",showEllipsis:!0,getEditor:N=>N.data,setRef:N=>r(N,V,x),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return V}function f(b,w,C){return b.getEditor=x=>n.getEditor(x,w,x.parent),b.setRef=x=>r(x,b,C),b.update=x=>{x!==void 0&&(b.editingData=x)},b.accept=()=>{Ie.setFieldValue(b.editingData,C,w.field),b.data=Ie.resolveField(C,w.field)},b.cancel=()=>{b.editingData=b.data},b.updateData=x=>{Ie.setFieldValue(Ie.resolveField(x,w.field),C,w.field),b.data=Ie.resolveField(C,w.field),b.editingData=Ie.resolveField(C,w.field)},b}function c(b,w){w.dataType==="commands"?b.formatter=(C,x)=>w.formatter?w.formatter(b,x):s(b,x):w.formatter&&(b.formatter=(C,x)=>typeof w.formatter=="function"?w.formatter(C,x):u(b,x,w.formatter))}function h(b,w,C){const x=w&&w.data[C];if(x&&x.data===b.data){const S=x&&x.spannedBy||x;S.rowSpan++,S.spanned=S.spanned||[],S.spanned.push(b),b.colSpan=0,b.rowSpan=0,b.spannedBy=S}}function p(b,w,C){i.value&&h(b,w,C.field)}function m(b,w){w.showEllipsis!==void 0&&(b.showEllipsis=w.showEllipsis),b.showTips=a(w.showTips)?!0:w.showTips,b.column=w,b.align=w.align||"left",b.valign=w.valign||"middle",b.mode=e.editable?Qe.editable:Qe.readonly}function g(b,w,C,x){m(b,w),f(b,w,x),c(b,w),p(b,C,w)}function y(b,w,C,x,T){const S=e.editable?Qe.editable:Qe.readonly,V=d(b.field,S,w,C,x);return g(V,b,T,C),V}return{createCellByColumn:y,createCellByField:d,updateCellByColumn:g}}function Bi(e,n,o,a,i,l,r){var w,C;const s=t.ref(e.rowOption),u=((w=s.value)==null?void 0:w.height)||28,d=((C=s.value)==null?void 0:C.wrapContent)||!1,{idField:f}=i,{collapseField:c}=a,{updateRowPosition:h}=l,{createCellByColumn:p}=r,m=(x,T,S,V)=>{Ie.setFieldValue(Ie.resolveField(x,V),T,V),S.data[V].data=Ie.resolveField(T,V),S.data[V].editingData=Ie.resolveField(T,V)};function g(x,T,S,V,N,k){var z,G,J;const{__fv_data_grid_group_field__:I,__fv_data_grid_group_value__:E,__fv_data_index__:_}=S,M=S.__fv_data_grid_group_layer__||(S.__fv_parents__?(z=S.__fv_parents__)==null?void 0:z.size:0)||0,F=typeof S.parent=="number"?Number(S.parent):-1,P=S.__fv_data_grid_group_collapse__||S[c.value],B=S.__fv_visible__===void 0?!0:S.__fv_visible__,$=S.__fv_checked__,j=S.__fv_indeterminate__,D=S.__fv_disabled__||S[((G=e.rowOption)==null?void 0:G.disabledField)||"disabled"],O=e.hierarchy&&n.isVisibleInTree(S),L={collapse:P,data:{},dataIndex:_,groupField:I,groupValue:E,layer:M,index:T,parentIndex:F,pre:V,top:k,type:x,raw:S,checked:$,disabled:D,indeterminate:j,setRef:te=>{L.ref=te},visible:B&&O||B&&!e.hierarchy,status:bt.initial,updateCell:(te,W)=>{m(te,S,L,W),n.updateSummary()},updateCells:(te,W)=>{W.forEach(q=>{m(te,S,L,q)})}};return V||(S.__fv_data_position__=0),d||(L.height=u,S.__fv_data_height__=L.height,h(L,S)),(J=s.value)!=null&&J.customRowStatus&&(s.value.customRowStatus(L),S.__fv_disabled__=L.disabled),L}function y(x,T,S,V,N,k){const I=g(jt.data,N,T,S,V,k);return x.forEach((E,_)=>{I.data[E.field]=p(E,_,T,I,V)}),I}function v(x,T,S,V,N){return Object.assign(x,{index:T,dataIndex:S,top:V,pre:N})}function b(x,T,S,V,N,k){const I=x.__fv_data_index__,E=x[f.value],_=o.getEditingSnapshot(E);return _===null?y(k,x,T,S,V,N):v(_,V,I,N,T)}return{createEmptyRow:g,createNewRowFromDataItem:y,renderDataRow:b}}function Qc(e,n,o,a){const i=t.ref(e.summary),{idField:l}=n,{createCellByField:r}=o,{createEmptyRow:s}=a,u=t.computed(()=>{const h=i.value;return(h==null?void 0:h.groupFields)||[]}),d=t.computed(()=>{const h=i.value;return h&&h.enable&&h.groupFields&&h.groupFields.length>0});function f(h,p,m,g){if(d.value){const y=h.data[p];let v=y.colSpan;const b=u.value.reduce((w,C)=>(w.set(C,!0),w),new Map);g.reduce((w,C,x)=>{if(b.has(C.field)){const T=r(C.field,Qe.readonly,x,m,h);h.data[C.field]=T,v-1>x&&(v=x)}return w},h),y.colSpan=v}}function c(h,p,m,g,y,v,b){const w=h.__fv_data_grid_group_field__,C=s(jt.group,g,h,p,m,y);return C.data[l.value]=r(l.value,Qe.readonly,-1,h,C,0),C.data[w]=r(w,Qe.readonly,1,h,C,v.length),f(C,w,h,v),C}return{renderGroupRow:c}}function Kc(e,n,o,a){const{idField:i}=n,{createCellByField:l}=o,{createEmptyRow:r}=a;function s(u,d,f,c,h,p,m){const g=u.__fv_data_grid_group_field__,y=r(jt.summary,c,u,d,f,h);return y.data[i.value]=l(i.value,Qe.readonly,-1,u,y),y.data[g]=l(g,Qe.readonly,1,u,y,p.length),y}return{renderSummaryRow:s}}function Di(e,n,o,a,i){var D;const{idField:l}=o,r=t.ref(e.editable),s=t.ref(e.editOption),u=t.ref(((D=e.rowOption)==null?void 0:D.wrapContent)||!1),{onClickRow:d,onClickRowExcludeDblclick:f}=a,c=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let h,p,m,g,y;function v(O){return p&&p.raw[l.value]===O?p:null}const b=t.reactive({});function w(O,L,z={}){O.mode=Qe.editing,h=O,p=L,m=Ie.resolveField(L==null?void 0:L.raw,O.field),g=z;for(const G in b)delete b[G]}function C(O){O.accept(),O.mode=Qe.editable,h=null;const L={};p&&(Object.keys(p).forEach(z=>{L[z]=p==null?void 0:p[z]}),p=null),n.emit("endEditCell",{cell:O,row:L,newValue:Ie.resolveField(L==null?void 0:L.raw,O.field),oldValue:m,column:g,editor:b})}function x(O){const L=Promise.resolve(!0);return O?L.then(()=>Fe.isUndefined(e.beforeEndEditCell)?!0:typeof e.beforeEndEditCell=="function"?e.beforeEndEditCell({cell:O,row:p,newValue:O.editingData,oldValue:m}):()=>!0).then(z=>(z&&(C(O),p&&(p=null)),z)):L}function T(O){if(y&&y!==O.target){y=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const z=O.target;if(!(z!=null&&z.closest(".popover"))){if(O instanceof MouseEvent||O.key!=="Enter"){const G=z.closest(".fv-grid-cell");if(h&&h.ref&&h.ref===G)return}x(h).then(G=>{G&&document.body.removeEventListener("click",T,!0)})}}function S(O,L,z){return Promise.resolve().then(()=>{var J;const G=(J=z.editor)==null?void 0:J.readonly;return!Fe.isUndefined(e.beforeEditCell)&&typeof e.beforeEditCell=="function"?e.beforeEditCell({row:O,cell:L,rawData:O.raw,column:z}):!G}).then(G=>{G&&(w(L,O,z),document.body.removeEventListener("click",T,!0),document.body.addEventListener("click",T,!0))})}function V(O,L,z,G={}){O.stopPropagation(),f(O,z),r.value&&s.value.editMode==="cell"&&L.mode===Qe.editable&&x(h).then(()=>{h||S(z,L,G)})}function N(O,L,z,G={}){O.stopPropagation(),d(O,z),r.value&&s.value.editMode==="cell"&&L.mode===Qe.editable&&x(h).then(()=>{h||S(z,L,G)})}function k(O){O.stopPropagation(),y=O.target}function I(O){O.stopPropagation(),y&&(y=null)}function E(O){Object.values(O.data).filter(L=>L.mode===Qe.editable&&L.field!=="__commands__").forEach(L=>{L.mode=Qe.editing}),O.status=bt.editing,p=O}function _(O,L){Object.values(O.data).filter(z=>z.mode===Qe.editing).forEach(z=>{L?z.accept():z.cancel(),z.mode=Qe.editable}),O.status=bt.initial,p===O&&(p=null)}function M(O){r.value&&s.value.editMode==="row"&&p!==O&&(p&&_(p,!1),E(O))}function F(O){_(O,!0),O.status=bt.initial}function P(O){_(O,!1),O.status=bt.initial}function B(O,L,z){const G=L.dataType,J=L.editor||{type:c.get(G)||"input-group"};return!u.value&&J.type==="text"&&(J.type="input-group"),J?(J.type==="input-group"&&(J.textAlign=L.align!=="center"&&L.align!=="right"?"left":L.align,J.updateOn="change"),J.type==="number-spinner"&&(J.updateOn="change"),J.type==="textarea"&&(J.lineBreak="alt enter"),J.context={rowData:z.raw,column:L,cell:O,editor:b},J.readonly=!1,t.createVNode(dn.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:J,modelValue:O.editingData,"onUpdate:modelValue":te=>O.editingData=te,id:L.id,onMousedown:te=>k(te),onMouseup:te=>I(te)},null)):O.data}function $(){x(h)}t.watch(()=>e.editable,()=>{r.value=e.editable}),t.watch(()=>{var O;return(O=e.editOption)==null?void 0:O.editMode},O=>{s.value.editMode=O});function j(){h=null,p=null,g=null,y=null,document.body.removeEventListener("click",T,!0)}return{clear:j,onClickOutOfCell:T,onClickCell:N,onClickCellByKeyboard:V,onEditingRow:M,acceptEditingRow:F,cancelEditingRow:P,getEditingSnapshot:v,getEditor:B,endEditCell:$,onMousedownCell:k,onMouseupCell:I}}function ji(e){const n=t.ref(e.idField);function o(a){if(a&&a.length){const i=a[0];Object.keys(i).includes(n.value)||(n.value="__fv_indetify__")}}return{idField:n,reviseIdentifyField:o}}function $i(e,n,o,a){const{idField:i}=a,{currentSelectedDataId:l,multiSelectOnClickRow:r,multiSelectOnClickRowWithShift:s,selectItem:u,selectedValues:d,toggleSelectItem:f,updateSelectAllStatus:c,enableSelectRow:h,multiSelectMode:p,isSingleSelect:m}=o,g=t.ref(0),y=t.ref(-1);function v(M){l.value=M}function b(M){return h.value&&(s.value?d.value.includes(M.raw[i.value]):M.raw[i.value]===l.value)}function w(M,F){var $;const P=F??M.dataIndex,B={"fv-grid-row":M.type===jt.data,"fv-grid-group-row":M.type===jt.group,"fv-grid-summary-row":M.type===jt.summary,"fv-grid-row-hover":P===y.value,"fv-grid-row-selected":b(M),"fv-grid-row-odd":P%2>0,"fv-grid-row-even":P%2===0,"fv-grid-disabled":M.disabled};if(($=e.rowOption)!=null&&$.customRowStyle){const j=e.rowOption.customRowStyle(M.raw)||{};return Object.assign({},B,j)}return B}function C(M){var P;const F={"fv-grid-cell":!0};if((P=e.rowOption)!=null&&P.customCellStyle){const B=e.rowOption.customCellStyle(M)||{};return Object.assign({},F,B)}return F}function x(M){var P;const F={"fv-grid-hierarchy-cell":!0};if((P=e.rowOption)!=null&&P.customCellStyle){const B=e.rowOption.customCellStyle(M)||{};return Object.assign({},F,B)}return F}function T(M,F){var $,j;if(s.value&&!M.shiftKey||m.value){($=e.selection)!=null&&$.keepSelectingOnClick?u(F):f(F,(j=e.selection)==null?void 0:j.keepSelectingOnClick),c();return}if(s.value&&M.shiftKey||r.value){f(F),c();return}v(F.raw[i.value])}function S(M,F){F.disabled||(T(M,F),n.emit("clickRow",F.index,F.raw))}function V(M){g.value+=1,setTimeout(()=>{g.value===1&&n.emit("clickRow",M.index,M.raw),g.value=0},250),g.value>1&&(n.emit("doubleClickRow",M.index,M.raw),g.value=0)}function N(M,F){F.disabled||(T(M,F),V(F))}function k(M){M.disabled||V(M)}function I(M,F){}function E(M,F){}function _(M,F){var $;const P=F??M.dataIndex,B={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":P===y.value,"fv-grid-sidebar-row-selected":b(M),"fv-grid-sidebar-row-odd":P%2>0,"fv-grid-sidebar-row-even":P%2===0,"d-flex":!0,"align-items-center":!0};if(($=e.rowOption)!=null&&$.customRowStyle){const j=e.rowOption.customRowStyle(M.raw)||{};return Object.assign({},B,j)}return B}return{activeRowById:v,clickRowItem:k,gridCellClass:C,gridHierarchyCellClass:x,gridRowClass:w,onClickRow:N,onClickRowExcludeDblclick:S,onMouseoverRow:I,sidebarRowClass:_,onMouseoutRow:E}}function Li(e,n,o,a,i){const{idField:l}=o,{dataView:r,getSelectionItems:s}=n,u=t.ref(""),d=t.computed(()=>e.selection.enableSelectRow),f=t.ref(e.selection.multiSelect??!1),c=t.ref(e.selection.multiSelectMode||"DependOnCheck"),h=t.ref(e.selection.showCheckbox),p=t.ref(e.selection.showSelectAll),m=t.ref(e.selectionValues||[]),g=t.ref(!!m.value.length&&a.value.length===m.value.length),y=t.ref(!!m.value.length&&a.value.length!==m.value.length);t.watch(()=>e.selection.showSelectAll,(X,ne)=>{X!==ne&&(p.value=X)});function v(){const X=r.value.every(ie=>m.value.includes(ie[l.value])),ne=r.value.every(ie=>!m.value.includes(ie[l.value]));X&&(g.value=!0,y.value=!1),ne&&(g.value=!1,y.value=!1),!X&&!ne&&(g.value=!1,y.value=!0)}function b(){return s(m.value)}function w(){const X=a.value.reduce((ie,we)=>(ie.set(we.raw[l.value],we),ie),new Map);return m.value.map(ie=>X.get(ie)).filter(ie=>!!ie)}function C(X){var ie;const ne=X.raw.__fv_children_index__;if(ne&&ne.length){const we=ne.map(le=>r.value[le]);(ie=m.value)!=null&&ie.length&&we.some(de=>!m.value.includes(de[l.value]))&&(X.indeterminate=!0,X.raw.__fv_indeterminate__=!0)}}const x=t.computed(()=>d.value&&f.value),T=t.computed(()=>d.value&&!f.value&&!h.value),S=t.computed(()=>!!e.hierarchy),V=t.computed(()=>{const X=h.value&&c.value==="DependOnCheck";return x.value&&X}),N=t.computed(()=>x.value&&!h.value),k=t.computed(()=>x.value&&h.value&&c.value==="OnCheckAndClick");t.computed(()=>k.value);function I(){const X=s(m.value);i.emit("selectionChange",X)}function E(X){i.emit("unSelectItem",X)}function _(X){i.emit("selectItem",X)}function M(){const X=a.value.filter(ie=>ie.indeterminate).map(ie=>ie.raw[l.value]);a.value.forEach(ie=>{ie.checked=!1,ie.indeterminate=!1,ie.raw.__fv_checked__=!1,ie.raw.__fv_indeterminate__=!1}),w().forEach(ie=>{ie.checked=!0,ie.raw.__fv_checked__=!0}),X.forEach(ie=>{const we=a.value.find(le=>le.raw[l.value]===ie);C(we)})}t.watch(()=>a.value,()=>{M()}),t.watch(()=>e.selectionValues,X=>{m.value=X,M()},{immediate:!0}),t.watch(()=>e.selection,X=>{f.value=!!X.multiSelect,c.value=X.multiSelectMode||"DependOnCheck",h.value=!!X.showCheckbox});const F=t.computed(()=>!f.value);function P(X){return X.raw[l.value]}function B(X){return m.value.findIndex(ie=>ie===P(X))}function $(){w().forEach(ie=>{ie.checked=!1}),s(m.value).forEach(ie=>{ie.__fv_checked__=!1}),m.value=[],u.value="",v()}function j(X){const ne=X;ne.__fv_checked__=!0,ne.__fv_indeterminate__=!1;const ie=new Set(m.value);ie.add(ne[l.value]),m.value=Array.from(ie.values())}function D(X){const ne=X;ne.__fv_checked__=!1,ne.__fv_indeterminate__=!1,m.value=m.value.filter(ie=>ie!==ne[l.value])}function O(X){const ne=X.raw;ne.__fv_checked__=!0,ne.__fv_indeterminate__=!1;const ie=new Set(m.value);ie.add(ne[l.value]),m.value=Array.from(ie.values()),X.checked=!0,X.indeterminate=!1}function L(X){const ne=X.raw;ne.__fv_checked__=!1,ne.__fv_indeterminate__=!1,m.value=m.value.filter(ie=>ie!==ne[l.value]),X.checked=!1,X.indeterminate=!1}function z(X){O(X),u.value=X.raw[l.value]}function G(X){L(X),u.value=""}function J(X){X.__fv_checked__=!1,X.__fv_indeterminate__=!0,m.value=m.value.filter(ne=>ne!==X[l.value])}function te(X){const ne=X.raw;ne.__fv_checked__=!1,ne.__fv_indeterminate__=!0,m.value=m.value.filter(ie=>ie!==ne[l.value]),X.checked=!1,X.indeterminate=!0}function W(X){F.value&&$(),X.checked?L(X):O(X),I()}function q(X,ne=!0){const ie=X.checked;F.value&&$(),ne?X.checked?G(X):z(X):ie?G(X):z(X),I(),X.checked?_(X):E(X)}function R(X){X.raw[l.value]!==u.value&&($(),z(X),I())}function H(X){const ne=a.value.find(ie=>ie.raw[l.value]===X);if(ne)R(ne);else{const ie=r.value.find(we=>we[l.value]===X);ie&&j(ie)}}function A(X){const ne=a.value.filter(le=>X.includes(le.raw[l.value])),ie=ne.map(le=>le.raw[l.value]),we=r.value.filter(le=>{const de=le[l.value];return!ie.includes(de)&&X.includes(de)});(ne.length||we.length)&&T.value&&(u.value=X[0]),ne.forEach(le=>{z(le)}),we.forEach(le=>{j(le)}),I()}function U(X){for(const ne of X){if(!m.value.includes(ne))continue;const ie=a.value.find(we=>we.raw[l.value]===ne);if(ie)G(ie);else{const we=r.value.find(le=>le[l.value]===ne);we&&D(we)}}m.value=m.value.filter(ne=>!X.includes(ne))}function K(){a.value.forEach(X=>{O(X)}),I()}function Q(){a.value.forEach(X=>{L(X)}),I()}function oe(){return a.value.find(X=>X.raw[l.value]===u.value)}return{clearSelection:$,currentSelectedDataId:u,enableMultiSelect:f,enableSelectRow:d,findIndexInSelectedItems:B,getSelectedItems:b,getSelectionRow:oe,indeterminate:te,indeterminateDataItem:J,isSelectingHirarchyItem:S,multiSelectMode:c,multiSelectOnClickRow:k,multiSelectOnClickRowWithShift:N,multiSelectOnlyOnCheck:V,select:z,selectAll:K,selectedValues:m,selectDataItem:j,selectItem:R,selectItemById:H,selectItemByIds:A,showCheckBox:h,showSelectAll:p,toggleSelectItem:q,toggleSelectItemWithoutRow:W,unSelect:G,unSelectAll:Q,unSelectDataItem:D,unSelectItemByIds:U,updateSelectAllStatus:v,selectAllStatus:g,indeterminateStatus:y,isSingleSelect:T}}function Zc(e,n){var v,b;const{t:o}=Ge.useI18n(),a=String(Date.now()),i=50,{showCheckBox:l,showSelectAll:r}=n,s=t.ref(((v=e.rowNumber)==null?void 0:v.enable)??!1),u=t.computed(()=>e.hierarchy&&l.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:l.value),d=t.ref(s.value?((b=e.rowNumber)==null?void 0:b.width)??32:0),f=t.ref(u.value?i:0),c=t.computed(()=>{var w,C;return s.value?((w=e.rowNumber)==null?void 0:w.heading)==="序号"?o("datagrid.lineNumberTitle"):(C=e.rowNumber)==null?void 0:C.heading:""}),h=t.computed(()=>(u.value&&!e.hierarchy?Number(f.value):0)+(s.value?Number(d.value):0));t.watch(()=>e.rowNumber,w=>{w&&w.enable!==void 0&&(s.value=w.enable),w&&w.width!==void 0&&(d.value=w.width)});function p(w){return{top:`${w.top}px`,width:`${h.value}px`,height:`${w.height||""}px`}}const m=t.computed(()=>({width:`${h.value}px`}));function g(w){return`${a}_${w.type}_r_${w.index}_${w.refreshKey||""}`}function y(w){return`${a}_${w.type}_r_${w.index}_${w.refreshKey||""}`}return{showRowNumer:s,showSidebarCheckBox:u,sidebarCellPosition:p,sidebarCornerCellStyle:m,sidebarTitle:c,sidebarWidth:h,rowKey:y,cellKey:g}}const eu={ascend:(e,n)=>e===n?0:e===!1?-1:1,decend:(e,n)=>e===n?0:e===!0?-1:1},tu={ascend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),a=new Date(new Date(n).toLocaleDateString()).valueOf();return o===a?0:o<a?-1:1},decend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),a=new Date(new Date(n).toLocaleDateString()).valueOf();return o===a?0:o<a?1:-1}},nu={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1},ou={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1};function au(e){const n=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),o=new Map([["boolean-sorter",eu],["datetime-sorter",tu],["numeric-sorter",nu],["text-sorter",ou]]);function a(r){const s=(r==null?void 0:r.dataType)||"string",u=n.get(s)||"text-sorter";return o.get(u)||(r==null?void 0:r.sorter)}function i(r){return a(r.column)}function l(r,s){const u=i(r),d=(r.status&ot.sortable)===ot.sortable&&(r.status&ot.sorted)===ot.sorted,f=(r.status&ot.ascending)===ot.ascending,c=(r.status&ot.descending)===ot.descending;if(d&&u){const h=f?u.ascend:c?u.decend:void 0;h?s.addSorter(r.field,{field:r.field,compare:h}):s.removeSorter(r.field)}else s.removeSorter(r.field)}return{getSorterByColumn:a,updateSorter:l}}function iu(e,n,o,a,i,l,r,s,u,d,f,c,h,p,m,g,y){const{calculateCellPositionInRow:v}=l,{columnContext:b,hasLeftFixedColumn:w,hasRightFixedColumn:C}=r,{gridDataStyle:x,leftFixedGridDataStyle:T,rightFixedGridDataStyle:S}=p,{renderDataRow:V}=ws(e,n,b,y,s,u,d,f,c,h,p),N=[V];function k(F,P){const B=v(F);return y.value.filter($=>$.visible!==!1).map(($,j)=>N[$.type]($,B,P,j))}function I(){return t.createVNode("div",{ref:a,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:T.value},[k(b.value.leftColumns.filter(F=>F.visible),"left")])])}function E(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:x.value},[k(b.value.primaryColumns.filter(F=>F.visible),"primary")])])}function _(){return t.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:S.value},[k(b.value.rightColumns.filter(F=>F.visible),"right")])])}function M(){const F=[];return w.value&&F.push(I()),F.push(E()),C.value&&F.push(_()),F}return{renderDataArea:M}}const en=t.defineComponent({name:"FTreeGrid",props:Co,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","unSelectItem","selectItem"],setup(e,n){var sn,cn;const a=((sn=e.rowOption)==null?void 0:sn.height)||28,i=t.ref(20),l=t.ref(e.columns),r=Me.useIdentify(e),{idField:s}=r,u=t.ref(),d=t.ref(),f=t.ref(),c=t.ref(),h=t.ref(),p=t.ref([]),m=t.ref(!1),g=t.ref(((cn=e.rowOption)==null?void 0:cn.wrapContent)||!1),y=Me.useGroupData(e,r),v=Me.useFilter(),b=Me.useHierarchy(e),{collapseField:w}=b,{showLoading:C,renderLoading:x}=Me.useLoading(e,u),T=Me.useDataView(e,new Map,v,b,r),{dataView:S}=T,V=Me.useSelection(e,T,r,p,n),N=Me.useSelectHierarchyItem(e,p,T,r,V,n),k=t.computed(()=>e.disabled),I=t.computed(()=>e.virtualized?Math.min(T.dataView.value.length,i.value):T.dataView.value.length),{containerStyleObject:E}=Me.useDataViewContainerStyle(e),_=Me.useCommandColumn(e),{applyCommands:M}=_;M(l);const F=Me.useColumn(e),P=Me.useSort(e),{applyColumnSorter:B,columnContext:$,updateColumnRenderContext:j}=F;B(T,P);const D=Me.useGroupColumn(e,$),O=Me.useRow(e,n,V,r),L=Me.useEdit(e,n,r,O,p),z=Me.useVisualDataBound(e),G=Me.useVisualDataCell(e,L,z),J=Me.useVisualDataRow(e,T,L,b,r,z,G),te=Me.useVisualData(e,l,T,I,0,J),{getVisualData:W}=te,q=Me.useCellPosition(e,$),R=Me.useSidebar(e,V),{sidebarWidth:H}=R,A=Me.useVirtualScroll(e,T,p,$,te,I,0,H),{onWheel:U,dataGridWidth:K,viewPortHeight:Q,viewPortWidth:oe,resetScroll:X,updateVisibleRowsOnLatestVisibleScope:ne}=A,ie=Me.useFitColumn(e,$,d,oe,D),{calculateColumnsSize:we}=ie,le=Me.useFilterHistory(),de=Me.useColumnFilter(d,h,T,le,A),he=Me.useDragColumn(e,n,F,T,D,y,A),ee=t.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-grid-horizontal-bordered":e.showHorizontalLines,"fv-datagrid-strip":e.showStripe})),fe=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":m.value,"fv-grid-wrap-content":g.value})),{renderDataArea:Ee}=iu(e,n,f,c,h,q,F,T,L,b,O,V,N,A,te,z,p),{renderGridHeader:He,renderGridColumnResizeOverlay:De,shouldShowHeader:ue}=Me.getColumnHeader(e,n,d,c,h,F,T,he,de,v,le,ie,D,V,R,P,A,oe,p),{renderDataGridSidebar:Pe}=Me.getSidebar(e,O,V,R,A),{renderDisableMask:ze}=Me.getDisableMask(),{renderHorizontalScrollbar:Re}=Me.getHorizontalScrollbar(e,d,A),{renderVerticalScrollbar:mt}=Me.getVerticalScrollbar(e,d,A);function xt(){var Ve,je,st;if(d.value&&d.value.clientHeight>0&&((Ve=d.value)==null?void 0:Ve.clientWidth)>0){const ct=Math.ceil(d.value.clientHeight/a);ct>i.value&&(i.value=ct,ne()),Q.value=((je=f.value)==null?void 0:je.clientHeight)||0,K.value=((st=d.value)==null?void 0:st.clientWidth)||0,we()}}t.onMounted(()=>{d.value&&(i.value=Math.max(Math.ceil(d.value.clientHeight/a),i.value),p.value=W(0,I.value+0-1),Wo.useResizeObserver(d.value,xt),we(),t.nextTick(()=>{d.value&&(K.value=d.value.clientWidth),f.value&&(oe.value=f.value.clientWidth,Q.value=f.value.clientHeight)})),C.value&&x()}),t.onUnmounted(()=>{}),t.watch(oe,()=>{d.value&&we()});function Wt(Ve){T.collapseTo(Ve),T.reOrderVisibleIndex(),X()}function Ot(Ve){T.expandTo(Ve),T.reOrderVisibleIndex(),X()}function Nt(){const Ve=V.getSelectionRow();return Ve?Ve.dataIndex-1:-1}function qt(){const Ve=Nt();T.insertNewDataItem(Ve),p.value=W(0,I.value+0-1)}function Bt(){const Ve=Nt();T.insertNewChildDataItem(Ve),p.value=W(0,I.value+0-1)}function me(Ve,je){const st=p.value.find(ft=>ft.raw[s.value]===je),ct=st?st.dataIndex-1:-1;T.insertNewChildDataItems(Ve,ct)}function Se(){const Ve=Nt(),je=N.getNextSelectableHierarchyItemId(Ve);T.removeHierarchyDataItem(Ve),p.value=W(0,I.value+0-1),je&&V.selectItemById(je)}function ke(Ve){L.onEditingRow(Ve)}function Ue(Ve){L.acceptEditingRow(Ve)}function Xe(Ve){L.cancelEditingRow(Ve)}function at(Ve){Ve&&(l.value=Ve,M(l),j(l.value),B(T,P),we())}t.watch(()=>e.columns,Ve=>{at(Ve)});function dt(Ve,je){Ve&&(T.load(Ve),T.reOrderVisibleIndex(),je!=null&&je.keepScrollPosition?A.scrollTo(A.offsetY.value):X())}function It(Ve){V.selectItemById(Ve)}function vt(Ve){const je=p.value.find(st=>st.raw[r.idField.value]===Ve);je&&O.clickRowItem(je)}function re(Ve){O.activeRowById(Ve)}function Y(Ve){V.selectItemByIds(Ve)}function ae(){return V.getSelectedItems()}function pe(){V.clearSelection()}const Ce=t.computed(()=>!p.value||!p.value.length),{renderEmpty:_e}=Me.getEmpty(n);function Oe(){return V.getSelectionRow()}function Be(Ve){V.unSelectItemByIds(Ve)}function Ae(){return V.currentSelectedDataId.value}function Le(Ve,je,st){const ct=S.value.find(ft=>ft[s.value]===Ve);if(ct){if(Object.keys(ct).forEach(tt=>{Object.prototype.hasOwnProperty.call(je,tt)&&(ct[tt]=je[tt])}),st){const{collapseField:tt,disabledField:Ut,checkedField:Gt,visibleField:Yt}=st;tt&&!Fe.isUndefined(je[tt])&&(ct.__fv_collapse__=je[tt]),Gt&&!Fe.isUndefined(je[Gt])&&(ct.__fv_checked__=je[Gt]),Ut&&!Fe.isUndefined(je[Ut])&&(ct.__fv_disabled__=je[Ut]),Yt&&!Fe.isUndefined(je[Yt])&&(ct.__fv_visible__=je[Yt])}const ft=p.value.find(tt=>tt.raw[s.value]===Ve),nl=p.value.findIndex(tt=>tt.raw[s.value]===Ve);if(ft){if(ft.raw=ct,Object.keys(ft.data).forEach(tt=>{ft.data[tt].updateData(ct)}),st){const{collapseField:tt,disabledField:Ut,checkedField:Gt,visibleField:Yt}=st;tt&&!Fe.isUndefined(je[tt])&&(ft.collapse=je[tt]),Gt&&!Fe.isUndefined(je[Gt])&&(ft.checked=je[Gt]),Ut&&!Fe.isUndefined(je[Ut])&&(ft.disabled=je[Ut]),Yt&&!Fe.isUndefined(je[Yt])&&(ft.visible=je[Yt])}p.value=[...p.value.slice(0,nl),ft,...p.value.slice(nl+1)]}}}function We(Ve){return Object.prototype.hasOwnProperty.call(Ve,"raw")?T.hasRealChildren(Ve.raw):T.hasRealChildren(Ve)}function $e(Ve){const je=T.dataView.value.find(st=>st[s.value]===Ve);return je?je[w.value]:""}function Je(){return w.value}n.expose({activeRowById:re,addNewDataItem:qt,addNewChildDataItem:Bt,addChildrenToNode:me,collapseTo:Wt,expandTo:Ot,removeDataItem:Se,editDataItem:ke,acceptDataItem:Ue,cancelDataItem:Xe,updateColumns:at,updateDataSource:dt,selectItemById:It,selectItemByIds:Y,getSelectedItems:ae,clearSelection:pe,getSelectionRow:Oe,clickRowItemById:vt,unSelectItemByIds:Be,getCurrentRowId:Ae,reassignRowData:Le,hasChildren:We,getCollapseField:Je,getCollapseStatusById:$e});const it=t.computed(()=>{const Ve={};return A.shouldShowHorizontalScrollbar.value&&(Ve.paddingBottom="10px"),A.shouldShowVirticalScrollbar.value&&(Ve.paddingRight="10px"),Ve}),nt=t.computed(()=>({...E.value,borderRadius:"5px"}));return()=>t.createVNode("div",{ref:u,class:ee.value,style:nt.value,onWheel:U},[d.value&&ue.value&&He(),t.createVNode("div",{ref:d,class:fe.value,onMouseover:()=>m.value=!0,onMouseleave:()=>m.value=!1,style:it.value},[d.value&&Pe(p),d.value&&Ee(),d.value&&Ce.value&&_e(),d.value&&Re(),d.value&&mt()]),De(),k.value&&ze()])}}),ru={id:{type:String,default:""},componentId:{type:String,default:""},type:{type:String,default:""},canDelete:{type:Boolean,default:!0},canMove:{type:Boolean,default:!0},canSelectParent:{type:Boolean,default:!0},customButtons:{type:Array,default:[]},customClass:{type:String,default:""},customStyle:{type:String,default:""},modelValue:{type:Object},ignore:{type:Boolean,default:!1}},lu={id:{type:String}},su=t.defineComponent({name:"FDesignerPlaceholder",props:lu,emits:[],setup(e){const n=t.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=t.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>t.createVNode("div",{class:n.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[t.createTextVNode("拖拽组件到这里")])}});function cu(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const vn=t.defineComponent({name:"FDesignerItem",props:ru,emits:["selectionChange","dragEnd"],setup(e,n){const o=t.ref(`${e.modelValue.id}-component`),a=t.ref(e.canMove),i=t.ref(e.canDelete),l=t.ref(!1),r=t.ref(e.modelValue),s=t.ref(e.componentId||""),u=t.ref(""),d=t.ref(""),f=t.ref(e.customClass),c=t.ref(),h=t.inject("canvas-dragula"),p=t.ref(),m=t.inject("design-item-context");function g(D){D&&Object.assign(r.value,D)}const y={designerItemElementRef:c,componentInstance:p,schema:r.value,parent:m,setupContext:n,updateContextSchema:g};t.provide("design-item-context",y);const v=t.inject("useFormSchema"),b=t.inject("designer-host-service"),w=t.inject("external-container-id"),C=t.computed(()=>{var z;const D=e.modelValue.appearance&&e.modelValue.appearance.class||"",O=((z=p.value)==null?void 0:z.getCustomButtons)&&p.value.getCustomButtons();let L={"farris-component":!0,"flex-fill":r.value.id==="root-component","position-relative":a.value&&i.value||(O==null?void 0:O.length),"farris-nested":l.value,"can-move":a.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return L[`farris-component-${r.value.type}`]=!0,L=Ie.getCustomClass(L,D),L=Ie.getCustomClass(L,d.value),L=Ie.getCustomClass(L,f.value),L}),x=t.computed(()=>{const D={},O=e.modelValue.appearance&&e.modelValue.appearance.style||"";return O&&O.split(";").reduce((L,z)=>{const[G,J]=z.split(":");return L[G]=J,L},D),u.value&&u.value.split(";").reduce((L,z)=>{const[G,J]=z.split(":");return G&&(L[G]=J),L},D),D});function T(D,O){var G,J,te;if(D&&(D.preventDefault(),D.stopPropagation()),(G=b==null?void 0:b.designerContext)!=null&&G.checkCanDeleteControl&&!b.designerContext.checkCanDeleteControl(O))return;if(p.value.triggerBelongedComponentToDeleteWhenDeleted){const W=p.value.getBelongedComponentInstance(p);if(W&&W.parent){const q=t.ref(W==null?void 0:W.parent),R=q.value.contents.findIndex(H=>H.id===W.schema.id);(te=(J=q.value)==null?void 0:J.contents)==null||te.splice(R,1),lt.value++}return}p.value.onRemoveComponent(b);let L=m,z=W=>W.id===O.id;if(O.type==="component"&&(L=m==null?void 0:m.parent,z=W=>W.component===O.id),L&&L.schema.contents){const W=L.schema.contents.findIndex(z);L.schema.contents.splice(W,1),lt.value++,n.emit("selectionChange")}}function S(D){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:O=>{T(O,D)}},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function V(){return a.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function N(){var O;const D=((O=p.value)==null?void 0:O.getCustomButtons)&&p.value.getCustomButtons();return D&&!!D.length&&D.map(L=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${L.class||""}`,title:L.title,ref:L.id,onClick:z=>L.onClick&&L.onClick(z)},[t.createVNode("i",{class:L.icon},null)]))}function k(D){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[S(D),V(),N()])])}function I(D,O,L,z){n.emit("selectionChange",D,O,L,z)}function E(){n.emit("dragEnd")}function _(D){let O;const L=D.type,z=xe[L],G=Te[L],J=G?G(D):{};J.customClass=e.ignore?J.customClass:"",J.componentId=s.value,J.id=D.id;const te=D.contents&&D.contents.length===0;return D.contents&&!!D.contents.length&&z?t.createVNode(z,t.mergeProps({ref:p},J),cu(O=D.contents.map(q=>t.createVNode(vn,{key:q.id,modelValue:q,"onUpdate:modelValue":R=>q=R,componentId:s.value,onSelectionChange:I,onDragEnd:E},null)))?O:{default:()=>[O]}):z?te?t.createVNode(z,t.mergeProps({ref:p},J),{default:()=>[t.createVNode(su,null,null)]}):t.createVNode(z,t.mergeProps({ref:p},J),null):t.createVNode("div",null,null)}function M(){const D=v.externalFormSchema.get(w);if(D!=null&&D.content)return D==null?void 0:D.content}function F(D){if(D.type==="component-ref"){const z=(w?M():v==null?void 0:v.getFormSchema()).module.components.find(J=>J.id===D.component),G=t.ref(z);if(z)return t.createVNode(vn,{key:z.id,modelValue:G.value,"onUpdate:modelValue":J=>G.value=J,componentId:z.id,onSelectionChange:I,onDragEnd:E},null)}}t.watch([()=>e.modelValue,()=>e.componentId],([D,O])=>{r.value=D,o.value=`${D.id}-component`,O&&(s.value=O),t.triggerRef(c)},{deep:!0});function P(D){window.scrollContainerList||(window.scrollContainerList=new Set);const O=D.getAttribute("id");O&&window.scrollContainerList.add(O)}function B(D){const O=D==null?void 0:D.target;P(O),mn(O)}function $(){var D,O;if(c.value){(O=(D=r.value)==null?void 0:D.contents)!=null&&O.length&&c.value.addEventListener("scroll",B);const L=c.value.querySelector(".drag-container");L&&L.addEventListener("scroll",B)}}t.onMounted(()=>{if(c.value&&p.value&&p.value.schema){const D=c.value.querySelector(`[data-dragref='${p.value.schema.id}-container']`);h&&D&&h.attachComponents(D,r.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,i.value=p.value.canDelete!==void 0?p.value.canDelete:i.value,a.value=p.value.canMove!==void 0?p.value.canMove:a.value,u.value=p.value.styles||"",d.value=p.value.designerClass||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=y),p.value.belongedComponentId=s.value,p.value.setComponentBasicInfoMap(b)}$(),lt.value++}),t.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",B)});function j(D){D&&(D.preventDefault(),D.stopPropagation());let O=y.designerItemElementRef;const L=c.value;if(L){const z=document.getElementsByClassName("dgComponentFocused");z&&z.length===1&&z[0]===c.value||(Array.from(z).forEach(J=>J.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(J=>J.classList.remove("dgComponentSelected")),L.classList.add("dgComponentFocused"),n.emit("selectionChange",r.value.type,r.value,s.value,p.value),p.value.getDraggableDesignItemElement&&(O=p.value.getDraggableDesignItemElement(y),O&&O.value&&O.value.classList.add("dgComponentSelected")))}Fn(O==null?void 0:O.value)}return()=>{const D=w?`${w}-`:"";return r.value.type==="component-ref"?F(r.value):t.createVNode("div",{id:`${D}${r.value.id}-design-item`,ref:c,class:C.value,style:x.value,onClick:j},[k(r.value),_(r.value)])}}});function uu(e,n,o,a,i="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:r,hasRightFixedColumn:s}=o,{gridHeaderColumnsStyle:u,leftFixedGridHeaderColumnsStyle:d,rightFixedGridHeaderColumnsStyle:f}=a,c=l.value.defaultColumnWidth,h=32,p=new Map([[0,0]]);function m(k,I){const E=p.get(I)||0,_={height:`${k.depth*h}px`,left:`${k.left}px`,top:`${(k.layer-1)*h}px`,width:`${k.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(_["line-height"]=`${k.depth*h}px`),p.set(I+1,E+(k.actualWidth||c)),_}const g=t.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),y=t.computed(()=>({height:`${l.value.headerDepth*h}px`})),v=function(k){return n.showSetting&&!!k.showSetting};function b(){return t.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[t.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function w(k,I,E,_){var M;(M=e==null?void 0:e.setupContext)==null||M.emit("selectionChange",k,I,E,_)}function C(k){var E,_;return"w-100 d-flex align-items-center justify-content-"+(((E=k.column)==null?void 0:E.halign)==="center"?"center":((_=k.column)==null?void 0:_.halign)==="right"?"end pr-2":"start pl-2")}function x(k,I,E){var M;const _=t.ref(k.column);return t.createVNode("div",{class:"fv-grid-header-cell",style:m(k,E)},[t.createVNode(vn,{modelValue:_.value,"onUpdate:modelValue":F=>_.value=F,customClass:C(k),canAdd:!1,canDelete:!1,canMove:!1,key:(M=_.value)==null?void 0:M.id,type:i,componentId:n.componentId,onSelectionChange:w},null),v(k)&&b(),k.resizable&&t.createVNode("span",{class:"fv-column-resize-bar"},null)])}function T(k){return k.map((I,E)=>{const _=[];if(_.push(x(I,k,E)),I.children&&I.children.length){const M=T(I.children);_.push(...M)}return _})}function S(){return t.createVNode("div",{class:"fv-grid-header-left-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:d.value},[T(l.value.leftHeaderColumns)])])}function V(){return t.createVNode("div",{class:"fv-grid-header-right-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[T(l.value.rightHeaderColumns)])])}function N(){return t.createVNode("div",{class:g.value,style:y.value},[r.value&&S(),t.createVNode("div",{class:"fv-grid-header-primary"},[t.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[T(l.value.primaryHeaderColumns)])]),s.value&&V()])}return{renderGridHeader:N}}class du extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getEventPropConfig(n),this.propertyConfig}getBasicPropConfig(n){var r,s,u;const o=(u=(s=(r=this.formSchemaUtils.getFormSchema())==null?void 0:r.module)==null?void 0:s.entity[0])==null?void 0:u.entities[0],a=this.assembleSchemaEntityToTree(o,0),i=this,l=super.getBasicPropConfig(n);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...l.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:a,editable:!1},readonly:!0}},setPropertyRelates(d,f){switch(d&&d.propertyID){case"dataSource":{const c=i.formSchemaUtils.getViewModelById(i.viewModelId);if(c){const h=a.find(p=>p.label===d.propertyValue);c.bindTo=h.bindTo}i.designViewModelUtils.assembleDesignViewModel();break}}}}}getAppearanceProperties(n){var o,a;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:n,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸",visible:!1},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(i,l){switch(i&&i.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"fields":n.fields=i.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",parentPropertyID:"pagination",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0,editor:{readonly:!0}},showIndex:{visible:((o=n.pagination)==null?void 0:o.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=n.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"onSelectionChange",name:"行切换事件"},{label:"onClickRow",name:"行点击事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),l=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=r.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u)),n.remoteSort=!!n.columnSorted}}}assembleSchemaEntityToTree(n,o,a,i="",l=[]){const r=i?`${i}/${n.label}`:"/";return l.push({id:n.id,name:n.name,label:n.label,layer:o,parent:a&&a.id,bindTo:r.replace("//","/")}),n.type.entities&&n.type.entities.length&&n.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,n,r,l)),l}}function fu(e,n){const o=e.schema,a=t.ref(!0),i=t.ref(!0);function l(c){return c&&c.sourceType==="control"?c.componentCategory==="input":!1}function r(){return!1}function s(){return!1}function u(){return!0}function d(c){return new du(c,n).getPropertyConfig(o)}function f(){var c,h,p,m;if(e&&n){const g=(c=e==null?void 0:e.componentInstance)==null?void 0:c.value.belongedComponentId;let y="",v="";const{formSchemaUtils:b}=n;if(g){const C=b.getRootViewModelId(),x=b.getComponentByViewModelId(C),T=b.selectNode(x,S=>S.contents&&S.contents.find(V=>V.component===g));(T==null?void 0:T.type)===((h=ce["tab-page"])==null?void 0:h.type)&&((p=T==null?void 0:T.contents)!=null&&p.length)&&(y=T.title||""),(T==null?void 0:T.type)===((m=ce.section)==null?void 0:m.type)&&(T==null?void 0:T.showHeader)!==!1&&(y=T.mainTitle||""),y=y?`${y} > `:"",v=y?T.id:""}const w=ce["tree-grid"].name;n==null||n.formSchemaUtils.getControlBasicInfoMap().set(e.schema.id,{componentTitle:w,parentPathName:`${y}${w}`,reliedComponentId:v})}}return{canAccepts:l,checkCanDeleteComponent:r,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:a,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:d,setComponentBasicInfoMap:f}}function pu(e,n,o,a,i){const{getGridHeaderCells:l}=i,r=120,s=50,u=t.computed(()=>{var S;return((S=e.rowNumber)==null?void 0:S.enable)||!1}),d=t.computed(()=>{var S,V;return((S=e.selection)==null?void 0:S.multiSelect)||((V=e.selection)==null?void 0:V.showCheckbox)||!1}),f=t.computed(()=>{var S;return 0+(u.value?((S=e.rowNumber)==null?void 0:S.width)||32:0)+(d.value?s:0)}),c=t.computed(()=>{var S;return(S=e.columnOption)==null?void 0:S.fitColumns}),h=t.computed(()=>{var S;return c.value&&((S=e.columnOption)==null?void 0:S.fitMode)||"none"});function p(S,V,N){const k=parseInt(S.width,10)/100;return N*k}function m(S,V,N){return typeof S.width=="string"?p(S,V,N):S.width||r}function g(S,V){const N=[],k=[];let I=0;S.value.primaryColumns.forEach(M=>{typeof M.width=="string"?k.push(M):(M.width=M.width||r,I+=M.width,N.push(M))});const E=V*(N.length/S.value.primaryColumns.length);N.forEach(M=>{const F=E*(M.width/I);M.actualWidth=F,S.value.primaryColumnsWidth+=M.actualWidth});const _=V-E;k.forEach(M=>{const F=p(M,S.value,_);M.actualWidth=F,S.value.primaryColumnsWidth+=M.actualWidth})}function y(S,V){const N=[],k=[],I=new WeakMap;let E=0,_=0;if(S.value.primaryColumns.forEach(F=>{if(typeof F.width=="string"){const P=p(F,S.value,V);I.set(F,P),E+=P,k.push(F)}else F.width=F.width||r,_+=F.width,N.push(F)}),V-E>_){const F=V-E;k.forEach(P=>{P.actualWidth=I.get(P)||r,S.value.primaryColumnsWidth+=P.actualWidth}),N.forEach(P=>{P.actualWidth=F*(P.width/_),S.value.primaryColumnsWidth+=P.actualWidth})}else g(S,V)}function v(S,V){S.value.primaryColumns.forEach(N=>{N.actualWidth=m(N,S.value,V),S.value.primaryColumnsWidth+=N.actualWidth})}const b={expand:y,none:v,percentage:g};function w(S){S.value.leftHeaderColumns=Array.from(l(S.value.leftColumns).values()),S.value.primaryHeaderColumns=Array.from(l(S.value.primaryColumns).values()),S.value.rightHeaderColumns=Array.from(l(S.value.rightColumns).values())}function C(S){S.value.leftColumnsWidth=0,S.value.primaryColumnsWidth=0,S.value.rightColumnsWidth=0,S.value.leftColumns.forEach(V=>{S.value.leftColumnsWidth+=V.actualWidth||0}),S.value.primaryColumns.forEach(V=>{S.value.primaryColumnsWidth+=V.actualWidth||0}),S.value.rightColumns.forEach(V=>{S.value.rightColumnsWidth+=V.actualWidth||0}),S.value=Object.assign({},S.value)}function x(S,V,N){var P;let k=0;const I=S.value.primaryColumns,E=S.value.rightColumns;S.value.rightColumns.forEach(B=>{B.actualWidth=m(B,S.value,V),k+=B.actualWidth});const _=N-k,M=b[h.value];if(M&&M(S,_),S.value.primaryColumnsWidth+k<=N)return S.value.primaryColumns=[...I,...E],S.value.primaryColumnsWidth+=k,S.value.rightColumns=[],S.value.rightColumnsWidth=0,!0;const F=new Map;return F.set("primary",[]),F.set("right",[]),S.value.primaryColumns.reduce((B,$)=>{var j,D;return $.fixed==="right"?(j=B.get("right"))==null||j.push($):(D=B.get("primary"))==null||D.push($),B},F),(P=F.get("right"))!=null&&P.length&&(S.value.primaryColumns=[...F.get("primary")||[]],S.value.rightColumns=[...F.get("right")||[]]),S.value.primaryColumnsWidth=0,S.value.rightColumnsWidth=0,!1}function T(){if(o.value){n.value.leftColumnsWidth=0,n.value.primaryColumnsWidth=0,n.value.rightColumnsWidth=0;const S=o.value.clientWidth-f.value;n.value.leftColumns.forEach(N=>{N.actualWidth=m(N,n.value,S),n.value.leftColumnsWidth+=N.actualWidth});const V=S-n.value.leftColumnsWidth;if(x(n,S,V))a.value=V;else{n.value.rightColumns.forEach(I=>{I.actualWidth=m(I,n.value,S),n.value.rightColumnsWidth+=I.actualWidth});const N=S-n.value.leftColumnsWidth-n.value.rightColumnsWidth,k=b[h.value];k&&k(n,N),a.value=N}w(n),n.value=Object.assign({},n.value)}}return t.watch(()=>{var S;return(S=e.columnOption)==null?void 0:S.fitColumns},(S,V)=>{S!==V&&S&&T()}),t.watch(h,(S,V)=>{S!==V&&c.value&&T()}),{calculateColumnHeaders:w,calculateColumnsSize:T,calculateColumnsWidth:C}}const mu="";function hu(e){const o={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},a=t.ref(o);function i(){a.value={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]}}const l=t.ref(e.summary),r=t.computed(()=>{const w=l.value;return(w==null?void 0:w.groupFields)||[]});function s(){a.value.rightColumns.forEach(x=>{x.showSetting=!1}),a.value.primaryColumns.forEach(x=>{x.showSetting=!1});const w=a.value.rightColumns,C=a.value.primaryColumns;w.length>0?w[w.length-1].showSetting=!0:C.length>0&&(C[C.length-1].showSetting=!0)}function u(w){i();const C=new Map;return r.value&&r.value.reduce((x,T)=>(x.set(T,!0),x),C),w.reduce((x,T)=>(T.filter=T.filter||mu,T.fixed==="left"?(a.value.leftColumns.push(T),a.value.leftColumnsMap.set(T.field,T),a.value.leftColumnsWidth+=T.actualWidth):T.fixed==="right"?(a.value.rightColumns.push(T),a.value.rightColumnsMap.set(T.field,T),a.value.rightColumnsWidth+=T.actualWidth):(a.value.primaryColumns.push(T),a.value.primaryColumnsMap.set(T.field,T),a.value.primaryColumnsWidth+=T.actualWidth),C.has(T.field)&&a.value.summaryColumns.push(T),x),a),s(),a}u(e.columns);const d=t.computed(()=>a.value.leftColumns.length>0),f=t.computed(()=>a.value.rightColumns.length>0);function c(w,C){return C.sortable&&C.sort&&C.sort!=="none"&&w.push(C),w}function h(w,C){return w.sortOrder=w.sortOrder||0,C.sortOrder=C.sortOrder||0,w.sortOrder===C.sortOrder?0:w.sortOrder<C.sortOrder?-1:1}function p(w,C){return w.sortOrder=w.sortOrder||0,C.sortOrder=C.sortOrder||0,w.sortOrder===C.sortOrder?0:w.sortOrder<C.sortOrder?1:-1}function m(w,C){return C.filterable&&w.push(C),w}function g(){const w=[];return a.value.leftColumns.reduce(m,w),a.value.primaryColumns.reduce(m,w),a.value.rightColumns.reduce(m,w),w}function y(){const w=[];a.value.leftColumns.reduce(c,w),a.value.primaryColumns.reduce(c,w),a.value.rightColumns.reduce(c,w);const C=Math.max(...w.map(x=>x.sortOrder||0));return w.sort(p).map(x=>{const T=x.sortOrder||C+1;return x.sortOrder=T,x}).sort(h).map((x,T)=>{const S=T+1;return x.sortOrder=S,x})}function v(w,C,x){const T=w.map(S=>{const V=x.getSorterByColumn(S),N=S.sort==="asc",k=S.sort==="desc",I=N?V.ascend:k?V.decend:void 0;return{field:S.field,compare:I}});C.setSorters(T)}function b(w,C){const x=y();v(x,w,C)}return{applyColumnSorter:b,collectionFilterableColumns:g,applySortableColumns:v,collectionSortableColumns:y,columnContext:a,hasLeftFixedColumn:d,hasRightFixedColumn:f,updateColumnRenderContext:u,updateColumnSettingIcon:s}}function gu(e,n,o,a,i,l,r,s){const u=t.ref(a.value-1+i),d=t.ref(0),{renderDataRow:f}=l,c=f,h=f;function p(y){let v=f;return y.__fv_data_grid_group_row__&&(v=c),y.__fv_data_grid_group_summary__&&(v=h),v}function m(y,v,b,w){const{dataView:C}=o,x=[];if(C.value.length>0){const T=w?Date.now().toString():"";let S=y,V=0;const N=v-y+1;for(;x.length<N&&S<C.value.length;){const k=C.value[S],I=C.value[S-1]||b,E=x[V-1],_=I?(I.__fv_data_position__||0)+(I.__fv_data_height__||0):0,F=p(k)(k,I,E,S,_,n.value,x);F.refreshKey=T,x.push(F),V++,S++}}return d.value=x.length>0?x[0].index:0,u.value=x.length>0?x[x.length-1].index:0,x}function g(y,v,b){const w=v.groupField||"",{groupValue:C}=v;o[y](w,C);const{dataView:x}=o,T=b[0].index,S=Math.min(T+a.value+i+1,x.value.length-1);return m(T,S)}return{getVisualData:m,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:g}}const yu=t.defineComponent({name:"FTreeGridDesign",props:ni,emits:[],setup(e,n){var ie,we;const o=t.ref(),a=0,i=((ie=e.rowOption)==null?void 0:ie.height)||28,l=t.ref(20),r=t.ref(e.columns),s=ji(e),u=t.ref(),d=t.ref(),f=t.ref([]),c=t.ref(!1),h=t.ref(((we=e.rowOption)==null?void 0:we.wrapContent)||!1),p=t.inject("designer-host-service"),m=t.inject("design-item-context"),g=fu(m,p),y=Pt(o,m,g);y.value.designerClass="f-utils-fill-flex-column";const v=Ei(),b=Mi(e),w=ii(e,new Map,v,b,s),C=Li(e,w,s,f,n),x=t.computed(()=>w.dataView.value.length),{containerStyleObject:T}=Ts(e),S=Vs(e),{applyCommands:V}=S;V(r);const N=hu(e),{applyColumnSorter:k,columnContext:I,updateColumnRenderContext:E}=N,_=au(),M=Ns(e,I),F=$i(e,n,C,s),P=Di(e,n,s,F),B=_i(e),$=Oi(e,P,B),j=Bi(e,w,P,b,s,B,$),D=gu(e,r,w,x,a,j),{getVisualData:O}=D,L=Zc(e,C),{sidebarWidth:z}=L;f.value=O(0,x.value+a-1);const G=zc(e,w,f,I,D,x,a,z),{onWheel:J,dataGridWidth:te,viewPortHeight:W,viewPortWidth:q,updateVisibleRowsOnLatestVisibleScope:R}=G,H=pu(e,I,u,q,M),{calculateColumnsSize:A}=H,U=t.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),K=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":c.value,"fv-grid-wrap-content":h.value})),{renderGridHeader:Q}=uu(m,e,N,G,"tree-grid-column"),{renderHorizontalScrollbar:oe}=Ss(e,u,G);function X(){var de,he;const le=Math.ceil(u.value.clientHeight/i);le>l.value&&(l.value=le,R()),W.value=((de=d.value)==null?void 0:de.clientHeight)||0,te.value=((he=u.value)==null?void 0:he.clientWidth)||0,A()}t.onMounted(()=>{o.value.componentInstance=y,u.value&&(l.value=Math.max(Math.ceil(u.value.clientHeight/i),l.value),f.value=O(0,x.value+a-1),Wo.useResizeObserver(u.value,X),A(),t.nextTick(()=>{u.value&&(te.value=u.value.clientWidth),d.value&&(q.value=d.value.clientWidth,W.value=d.value.clientHeight)}))});function ne(le){le&&(r.value=le,V(r),E(r.value),k(w,_),A())}return t.watch(()=>e.columns,le=>{ne(le)}),t.watch(q,()=>{u.value&&A()}),n.expose(y.value),()=>t.createVNode("div",{ref:o,class:U.value,style:T.value,onWheel:J,dragref:`${m.schema.id}-container`},[u.value&&Q(),t.createVNode("div",{ref:u,class:K.value,onMouseover:()=>{c.value=!0},onMouseleave:()=>{c.value=!1}},[oe()])])}});en.register=(e,n,o,a)=>{e["tree-grid"]=en,n["tree-grid"]=ds,a["tree-grid"]={bindingResolver:ps,selectionItemResolver:fs,updateColumnsResolver:hs}},en.registerDesigner=(e,n,o)=>{e["tree-grid"]=yu,n["tree-grid"]=ms},Ie.withInstall(en);function Ri(e){const{designerHostService:n}=e,o=new Map,a=t.ref(),i=t.ref(),l=t.ref([{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"displayedTypeName",title:"字段类型"}]),r={enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!0},s=t.ref(!1),u=t.ref(e.componentType);function d(g){const y=[];return g.forEach(v=>{let b=[];v.type&&v.type.fields&&v.type.fields.length>0&&(b=d(v.type.fields));const w=Fe.cloneDeep(v),C=v.multiLanguage?"多语言":v.type.displayName,x=b.length?!1:!o.has(v.id);x&&(s.value=!0),y.push({data:Object.assign({displayedTypeName:C,selectable:x},w),children:b})}),y}function f(g){switch(g){case"data-grid":case"tree-grid":return"data-grid";case"response-form":return"form";default:return g}}function c(g){if(o.clear(),!g)return;let y=f(u.value);["frame","table","form"].includes(y)&&(y="form");const{formSchemaUtils:v,schemaService:b}=n;v.getFormSchema().module.viewmodels.forEach(w=>{if(!w.fields||w.fields.length===0)return;let x=v.getComponentByViewModelId(w.id).componentType;["frame","table","form"].includes(x)&&(x="form");const T=b.getTableInfoByViewModelId(w.id);x!==y||!T||T.id!==g.id||w.fields.forEach(S=>{o.set(S.id,!0)})})}function h(g){c(g);const{fields:y}=g.type;s.value=!1,a.value=d(y),i.value&&i.value.updateDataSource(a.value)}const p={customRowStatus:g=>(g.disabled=!g.raw.selectable,g)};function m(){const g=i.value.getSelectedItems();if(!g.length){const y=new Zt;y.globalConfig={position:"top-center"},y.warning({message:"请先选择显示字段"});return}return g.map(y=>y.data)}return{fieldTreeGridRef:i,resolveFieldDataSource:h,occupiedFieldMap:o,fieldDataSource:a,fieldTreeRowOption:p,fieldColumns:l,fieldSelectionOption:r,checkAndGetSelectedFields:m,hasSelectableField:s,currentComponentType:u}}function vu(e){const{designerHostService:n}=e,o=new Map,a=t.ref(),i=t.ref(),l=t.ref([{field:"name",title:"实体名称"}]),r=t.ref(),s=t.ref(!1);function u(m){const g=Ri(e);return g.resolveFieldDataSource(m),g.hasSelectableField.value?(r.value=r.value||m,!0):!1}function d(m){return!(e.bindingEntityId&&e.bindingEntityId!==m.id||!u(m))}function f(m,g=""){var C;if(!m)return;const y=Fe.cloneDeep(m),v=g?`${g}/${y.label}`:"/";o.set(y.label,v.replace("//","/"));const b=d(y),w={data:Object.assign({selectable:b},y),children:[]};if(y.type.entities&&y.type.entities.length){const x=y.type.entities.map(T=>f(T,v));w.children=w.children.concat(x)}return e.bindingEntityId===m.id&&(r.value=m),((C=r.value)==null?void 0:C.id)===m.id&&!g&&(s.value=!0),w}function c(){var v;const{formSchemaUtils:m}=n,g=(v=m.getFormSchema().module.entity[0])==null?void 0:v.entities[0];o.clear();const y=f(g);i.value=[y]}function h(){const m=a.value.getSelectedItems();if(!m.length){const g=new Zt;g.globalConfig={position:"top-center"},g.warning({message:"请先选择实体"});return}return m[0].data}return{entityTreeGridRef:a,entityDataSource:i,resolveEntityDataSource:c,entityBindToMap:o,checkAndGetSelectedEntity:h,entityColumns:l,entityTreeRowOption:{customRowStatus:m=>(m.disabled=!m.raw.selectable,m)},initialSelectedEntity:r,isMainEntityInitialSelected:s}}const bu=new Map([["appearance",ht]]);function Cu(e,n,o){return n}const wu={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Su={title:"step",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Ai={direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}};Ye(Ai,wu,bu,Cu,Su);const xu=t.defineComponent({name:"FStep",props:Ai,emits:["click"],setup(e,n){const o=t.ref(e.direction),a=t.ref(e.fill),i=t.ref(e.height),l=t.ref(e.steps),r=t.ref(e.activeIndex),s=t.computed(()=>({"f-progress-step-list":o.value==="horizontal","f-progress-step-list-block":o.value==="vertical","f-progress-step-horizontal-fill":o.value==="horizontal"&&a.value,"f-progress-step-vertical-fill":o.value==="vertical"&&a.value})),u=t.computed(()=>({height:o.value==="vertical"?`${i.value}px`:""}));function d(C,x){const T={step:!0,active:x===r.value,clickable:e.clickable,current:x===r.value,finish:x<r.value};return C.status&&(T[C.status]=!0),Ie.getCustomClass(T,C.class||"")}function f(C,x){if(!e.clickable)return;const T={step:C,stepIndex:x};n.emit("click",T)}function c(C,x){const T={"f-progressstep-row":!0,"step-active":x===r.value,"step-current":x===r.value,"step-finish":x<r.value};return C.status&&(T["step-"+C.status]=!0),T}function h(C,x){const T={"step-icon":!0,"step-success":x,"f-icon":x,"f-icon-check":x};return Ie.getCustomClass(T,C.icon||"")}function p(C,x){const T=[];return C.icon?T.push(t.createVNode("span",{class:h(C,!1)},null)):x>=r.value?T.push(t.createVNode("span",{class:"step-icon"},[x+1])):T.push(t.createVNode("span",{class:h(C,!0)},null)),T}function m(C,x){return{"step-name":!0,"step-name-success":x<r.value}}function g(C,x){return t.createVNode("div",{class:"f-progress-step-title"},[t.createVNode("p",{class:m(C,x)},[C.title])])}function y(C,x){return{"f-progress-step-line":!0,"f-progress-step-line-success":x===r.value}}function v(C,x){return x!==l.value.length-1}const b=t.computed(()=>({triangle:!0,"":o.value==="vertical"}));function w(){return l.value.map((C,x)=>t.createVNode("li",{class:d(C,x),onClick:T=>f(C,x)},[t.createVNode("div",{class:c(C,x)},[t.createVNode("div",{class:"f-progress-step-content"},[p(C,x),g(C,x)]),v(C,x)&&t.createVNode("div",{class:y(C,x)},[t.createVNode("span",{class:b.value},null)])])]))}return t.watch(()=>e.activeIndex,()=>{e.activeIndex>-1&&e.activeIndex<=l.value.length&&(r.value=e.activeIndex,w())}),()=>t.createVNode("div",{class:"f-progress-step"},[t.createVNode("ul",{class:s.value,style:u.value},[w()])])}}),Tu=t.defineComponent({name:"FEntityBindingSelector",props:kl,emits:["submit","cancel"],setup(e,n){const o=vu(e),{entityColumns:a,entityTreeGridRef:i,entityDataSource:l,checkAndGetSelectedEntity:r,resolveEntityDataSource:s,entityTreeRowOption:u,initialSelectedEntity:d,isMainEntityInitialSelected:f}=o,c=Ri(e),{fieldColumns:h,resolveFieldDataSource:p,fieldDataSource:m,fieldTreeGridRef:g,fieldTreeRowOption:y,fieldSelectionOption:v,checkAndGetSelectedFields:b,currentComponentType:w}=c,C=new Zt;C.globalConfig={position:"top-center"};const x=[{name:"卡片面板",value:"response-form"},{name:"表格",value:"data-grid"}],T=t.ref(),S=t.ref(""),V=t.ref([{id:"selectComponentType",title:"选择组件类型"},{id:"selectEntity",title:"选择实体"},{id:"selectFields",title:"选择显示字段"}]),N=t.ref(0),k=t.ref(""),I=t.computed(()=>L=>({"f-utils-fill":!0,border:L!=="selectComponentType","mx-3":!0,"my-2":!0,"position-relative":!0,"d-none":V.value[N.value].id!==L}));function E(){e.bindingEntityId&&(d!=null&&d.value)&&(S.value=d.value.name),e.componentType||(T.value=f.value?"response-form":"data-grid")}function _(){const L=r();L&&(p(L),g.value.updateDataSource(m.value))}t.onBeforeMount(()=>{e.steps&&(V.value=V.value.filter(L=>e.steps.includes(L.id))),k.value=V.value[0].id,s(),E()}),t.onMounted(()=>{var L,z;i&&((L=d.value)!=null&&L.id)&&i.value.selectItemById((z=d.value)==null?void 0:z.id),V.value.length===1&&V.value[0].id==="selectFields"&&_()});function M(L){var z;(z=g==null?void 0:g.value)!=null&&z.clearSelection&&g.value.clearSelection()}function F(){return t.createVNode(en,{key:1,ref:i,fit:!0,data:l.value,idField:"id",columns:a.value,rowNumber:{enable:!1},"row-option":u,columnOption:{fitColumns:!0}},null)}function P(){return t.createVNode(en,{key:2,ref:g,hierarchy:{cascadeOption:{autoCheckChildren:!0,autoCheckParent:!0}},fit:!0,data:m.value,idField:"id",columns:h.value,rowNumber:{enable:!1},columnOption:{fitColumns:!0},"row-option":y,selection:v},null)}function B(){const L={editable:!1,type:"combo-list",data:x,idField:"value",valueField:"value",textField:"name"},z={type:"input-group",enableClear:!1};return t.createVNode("div",null,[t.createVNode("div",{class:"f-utils-fill"},[t.createVNode("div",{class:"f-section py-0"},[t.createVNode("div",{class:"f-section-header"},[t.createVNode("div",{class:"f-title"},[t.createVNode("h4",{class:"f-title-text"},[t.createTextVNode("组件信息")])])]),t.createVNode("div",{class:"f-section-content"},[t.createVNode("div",{class:"f-form-layout farris-form farris-form-controls-inline"},[t.createVNode(On,{label:"组件类型",customClass:"col-12",modelValue:T.value,"onUpdate:modelValue":G=>T.value=G,required:"true",editor:L,onChange:M},null),t.createVNode(On,{label:"组件标题",customClass:"col-12",modelValue:S.value,"onUpdate:modelValue":G=>S.value=G,required:"true",editor:z},null)])])])])])}function $(){N.value--,k.value=V.value[N.value].id}function j(){var L;switch(k.value){case"selectEntity":{_();break}case"selectComponentType":{if(!T.value){C.warning("请先选择组件类型");return}if(!((L=S.value)!=null&&L.trim())){C.warning("请先填写组件标题");return}w.value=T.value,p(d.value),g.value.updateDataSource(m.value);break}}N.value++,k.value=V.value[N.value].id}function D(){n.emit("cancel")}function O(){var G;const L=r(),z=b();if(L&&z){const J={bindingType:"entity"};J.bindingEntity=L,J.bindTo=o.entityBindToMap.get(((G=J.bindingEntity)==null?void 0:G.label)||""),J.bindingEntityFields=z,J.entityTitle=S.value,n.emit("submit",{bindingContext:J,componentType:T.value})}}return()=>{var L;return t.createVNode("div",{class:"h-100 d-flex flex-column"},[((L=V.value)==null?void 0:L.length)>1?t.createVNode(xu,{steps:V,activeIndex:N,style:"align-self:center"},null):"",t.createVNode("div",{class:I.value("selectEntity"),style:"border-radius:10px;"},[F()]),t.createVNode("div",{class:I.value("selectComponentType"),style:"border-radius:10px;"},[B()]),t.createVNode("div",{class:I.value("selectFields"),style:"border-radius:10px;"},[P()]),t.createVNode("div",{class:"modal-footer"},[t.createVNode("button",{class:"btn btn-secondary",onClick:D},[t.createTextVNode("取消")]),N.value!==0?t.createVNode("button",{class:"btn btn-secondary",onClick:$},[t.createTextVNode("上一步")]):"",N.value!==V.value.length-1?t.createVNode("button",{class:"btn btn-primary",onClick:j},[t.createTextVNode("下一步")]):"",N.value===V.value.length-1?t.createVNode("button",{class:"btn btn-primary",onClick:O},[t.createTextVNode("确定")]):""])])}}});function zi(e){let n,o;function a(C,x,T){var V;const S={componentType:C.getAttribute("data-controltype")||"",componentFeature:C.getAttribute("data-feature")||"",componentCategory:C.getAttribute("data-category")||"",label:C.getAttribute("data-controlTypeName")||"",sourceType:C.getAttribute("data-sourceType")||"move",parentComponentInstance:T.componentInstance.value,sourceElement:C,sourceContainer:x,targetContainer:T,bindingSourceContext:null,bindingTargetId:C.getAttribute("data-fieldId")||""};return C.componentInstance&&(S.componentType=(V=C.componentInstance.value.schema)==null?void 0:V.type),S}function i(C){var S,V;const{bindingContext:x,componentType:T}=C;o.bindingSourceContext=x,T&&(o.componentType=T),(S=n==null?void 0:n.modalRef)!=null&&S.value.close&&((V=n==null?void 0:n.modalRef)==null||V.value.close())}function l(){var C,x;o.bindingSourceContext=void 0,(C=n==null?void 0:n.modalRef)!=null&&C.value.close&&((x=n==null?void 0:n.modalRef)==null||x.value.close())}function r(){const{componentType:C,bindingTargetId:x}=o;let T=[];return C&&(T=["selectEntity","selectFields"]),x&&(T=["selectComponentType","selectFields"]),()=>t.createVNode(t.Fragment,null,[t.createVNode(Tu,{componentType:C,bindingEntityId:x,steps:T,designerHostService:e,onSubmit:i,onCancel:l},{default:()=>[t.createTextVNode(" ")]}),t.createTextVNode(" ")])}function s(){return new Promise((C,x)=>{n=e.modalService.open({title:"选择绑定",width:800,height:600,fitContent:!1,showButtons:!1,render:r(),enableEsc:!1,rejectCallback:()=>{o.bindingSourceContext=void 0},closedCallback:()=>{C(o)},draggable:!0})})}function u(){var C,x;o.bindingSourceContext=void 0,(C=n==null?void 0:n.modalRef)!=null&&C.value.close&&((x=n==null?void 0:n.modalRef)==null||x.value.close())}function d(C){let x="",T="";return ce["field-set"]&&C.schema.type===ce["field-set"].type&&(x=C.schema.id,T=C.schema.title),{groupId:x,groupName:T}}function f(C){var k,I;if(!C||!C.selectedData||!C.bindingType)return;const{selectedData:x,bindingType:T}=C,{groupId:S,groupName:V}=d(o.parentComponentInstance),N={bindingType:"field"};if(T==="Form"){const E=x;N.entityFieldNode=E,N.designViewModelField=Fe.merge({},E,{groupId:S,groupName:V}),o.bindingSourceContext=N}else{const E=x;N.variableFieldNode=Fe.merge({},E,{groupId:S,groupName:V}),o.bindingSourceContext=N}(k=n==null?void 0:n.modalRef)!=null&&k.value.close&&((I=n==null?void 0:n.modalRef)==null||I.value.close())}function c(){var C,x;o.bindingSourceContext=null,(C=n==null?void 0:n.modalRef)!=null&&C.value.close&&((x=n==null?void 0:n.modalRef)==null||x.value.close())}function h(){const{parentComponentInstance:C}=o,T={viewModelId:e.formSchemaUtils.getViewModelIdByComponentId(C==null?void 0:C.belongedComponentId),designerHostService:e,disableOccupiedFields:!0,componentSchema:{editor:{type:o.componentType}}},S={enable:!1};return()=>t.createVNode(t.Fragment,null,[t.createVNode(ra.FBindingSelectorContainer,{editorParams:T,showCustomFooter:!0,bindingType:S,onSubmit:f,onCancel:u,onSkip:c},{default:()=>[t.createTextVNode(" ")]}),t.createTextVNode(" ")])}function p(){return new Promise((C,x)=>{n=e.modalService.open({title:"选择绑定",width:800,height:600,fitContent:!1,showButtons:!1,render:h(),enableEsc:!1,rejectCallback:()=>{o.bindingSourceContext=void 0},closedCallback:()=>{C(o)},draggable:!0})})}function m(){const{formSchemaUtils:C}=e,x=o.parentComponentInstance.belongedComponentId,T=new Set,S=C.getFormSchema().module,V=S.components.find(I=>I.id===x),N=C.getViewModelById(V.viewModel);let k=V.componentType;return(k==="frame"||k==="table")&&(k="form"),S.viewmodels.forEach(I=>{if(!I.fields||I.fields.length===0)return;const E=S.components.find(M=>M.viewModel===I.id);let{componentType:_}=E;(_==="frame"||_==="table")&&(_="form"),!(_!==k||I.bindTo!==N.bindTo)&&I.fields.forEach(M=>{T.add(M.id)})}),T}function g(){const{bindingTargetId:C,parentComponentInstance:x}=o;if(!C){o.bindingSourceContext=void 0;return}if(m().has(C)){const S=new pn.FNotifyService;S.globalConfig={position:"top-center"},S.warning("表单已经包含此字段,请勿重复添加"),o.bindingSourceContext=void 0;return}else{const S={bindingType:"field"},V=e.formSchemaUtils.getComponentById(x.belongedComponentId),N=e.schemaService.getFieldByIDAndVMID(C,V.viewModel),k=Fe.merge({},N.schemaField);S.entityFieldNode=k;const{groupId:I,groupName:E}=d(o.parentComponentInstance);S.designViewModelField=Fe.merge({},k,{groupId:I,groupName:E}),o.bindingSourceContext=S}}function y(){return o.bindingTargetId?g():p()}function v(){const{parentComponentInstance:C}=o,x=C.addNewChildComponentSchema(o,e);o.componentSchema=x}async function b(){const{componentCategory:C}=o;switch(C){case"input":{await y();break}case"dataCollection":{await s();break}}}async function w(C,x,T){return o=a(C,x,T),await b(),o.bindingSourceContext===void 0?null:(v(),o)}return{getComponentResolveContext:a,resolveComponentCreationContextByDrop:w}}function Vu(e,n){let o;function a(p,m,g){if(p.contains(m)||m.classList.contains("no-drop"))return!1;const y=!0;if(p.componentInstance&&p.componentInstance.value.getDragScopeElement){const v=p.componentInstance.value.getDragScopeElement();if(v&&!v.contains(m))return!1}if(m.componentInstance&&m.componentInstance.value.canAccepts){const b=zi(e).getComponentResolveContext(p,g,m);return m.componentInstance.value.canAccepts(b)}return y}function i(p,m){const g=m.getBoundingClientRect(),y=p.getBoundingClientRect(),v=y.top>=g.top,b=y.top<g.bottom;return v&&b}function l(p,m){const g=p.querySelector(".dgComponentSelected");if(!(!g||m===0)&&i(g,p)){const y=g.querySelector(".component-btn-group");if(y){const v=y.querySelector("div");if(v&&v.style.top){const b=Number.parseFloat(v.style.top);v.style.top=b-m+"px"}}}}function r(p,m,g){let y=-1;if(!m)return-1;if(p.componentInstance.value.contents)if(g&&g.componentInstance){if(g.getAttribute("data-noattach"))y=Number(g.getAttribute("data-position"));else{const v=g.componentInstance.value.schema;let b={id:v.id};v.type==="component"&&(b={component:v.id}),y=Fe.findIndex(p.componentInstance.value.contents,b),y=y===-1?0:y}y!==-1&&p.componentInstance.value.contents.splice(y,0,m)}else p.componentInstance.value.contents.push(m);return y}function s(p,m,g,y){zi(e).resolveComponentCreationContextByDrop(p,g,m).then(b=>{if(!b)return;const w=b.componentSchema;w&&(n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(w),r(m,w,y))}),m.contains(p)&&m.removeChild(p)}function u(p,m,g,y){let v,b=-1;if(p.componentInstance&&p.componentInstance.value.triggerBelongedComponentToMoveWhenMoved){const x=p.componentInstance.value.getBelongedComponentInstance(p.componentInstance);x&&(p=t.ref(x.elementRef).value.parentElement,g=p.parentElement)}const w=p.componentInstance&&p.componentInstance.value.schema;let C={id:w&&w.id};w.type==="component"&&(C={component:w&&w.id}),b=Fe.findIndex(g.componentInstance.value.contents,C),b!==-1&&g.componentInstance.value.contents&&(v=g.componentInstance.value.contents.splice(b,1),v=v[0]),r(m,v,y),g.componentInstance&&g.componentInstance.value.onChildElementMovedOut&&g.componentInstance.value.onChildElementMovedOut(p),m.componentInstance&&m.componentInstance.value.onAcceptMovedChildElement&&m.componentInstance.value.onAcceptMovedChildElement(p,g)}function d(p,m,g,y){if(!m||p.contains(m))return;switch(p.getAttribute("data-sourceType")){case"control":case"field":case"entity":{s(p,m,g,y);break}default:g.componentInstance.value.contents?u(p,m,g,y):m.contains(p)&&m.removeChild(p)}lt.value++}function f(p){o&&o.destroy(),Kt&&(o=Kt([],{mirrorContainer:p,direction:"mixed",revertOnSpill:!0,moves(m,g,y){let v=!0;return m.classList.contains("no-drag")&&(v=!1),m.componentInstance&&(v=!!y.getAttribute("data-dragging-icon")),v},copy(m){return m.classList.contains("drag-copy")},getMirrorText(m){return m.componentInstance&&m.componentInstance.value.getDraggingDisplayText?m.componentInstance.value.getDraggingDisplayText():m.innerText||"控件"},accepts(m,g,y){const v=a(m,g,y),b=p.lastElementChild;return v?b.className=b.className.replace("undroppable",""):b.className.includes("undroppable")||(b.className+=" undroppable"),v}}).on("over",(m,g)=>{g.className+=" drag-over"}).on("out",(m,g)=>{g.className=g.className.replace("drag-over","").replace(" ","")}).on("drop",(m,g,y,v)=>{d(m,g,y,v)}).on("dragend",(m,g)=>{l(p,g)}))}function c(p,m){if(!p)return;if(m.noDragDrop)return p;const g=p.querySelector(`[data-dragref='${m.id}-container']`)||p;o&&g&&o.containers.push(g)}function h(){return o}return{attachComponents:c,initializeDragula:f,getDragulaInstance:h}}const Hi=t.defineComponent({name:"FDesignerCanvas",props:$a,emits:["init","selectionChange","canvasChanged","dragEnd"],setup(e,n){const o=t.ref(),a=t.ref(),i=t.ref(),l=t.ref(),r=t.ref(),s=t.ref(),u=t.ref(e.componentId),{canvasMode:d}=e;let f,c;const h=t.inject("designerContext"),p={eventsEditorUtils:t.inject("eventsEditorUtils"),formSchemaUtils:t.inject("useFormSchema"),formMetadataConverter:t.inject("formMetadataConverter"),designViewModelUtils:t.inject("designViewModelUtils"),controlCreatorUtils:t.inject("controlCreatorUtils"),metadataService:t.inject("Meatdata_Http_Service_Token"),schemaService:t.inject("schemaService"),useFormCommand:t.inject("useFormCommand"),modalService:t.inject(Vo),formStateMachineUtils:t.inject("useFormStateMachine"),messagerService:t.inject("FMessageBoxService"),designerContext:h};qa(h),Ya(h),t.provide("designer-host-service",p);const m=Vu(p,h);e.components?Us(e.components):qs(),t.provide("canvas-dragula",m),t.provide("design-item-context",{designerItemElementRef:r,componentInstance:s,schema:a.value,parent:void 0});const g=t.computed(()=>({"d-flex":!0,"flex-fill":!0,"flex-column":!0})),y=t.computed(()=>({editorPanel:!0,"d-flex":!0,"flex-fill":!0,"flex-column":!0,[d]:!0}));t.watch([()=>e.modelValue,()=>e.componentId],([x,T])=>{o.value=x,u.value=T}),t.watch(lt,()=>{mn(i.value),n.emit("canvasChanged")},{flush:"post"});function v(){f=new ResizeObserver(()=>{c&&clearTimeout(c),c=setTimeout(()=>{mn(l.value)})}),f.observe(l.value)}function b(x,T,S,V){n.emit("selectionChange",x,T,S,V)}function w(){n.emit("dragEnd")}function C(){l.value.addEventListener("scroll",x=>{mn(l.value)})}return t.onMounted(()=>{i.value&&m.initializeDragula(i.value),o.value=e.modelValue,n.emit("init",m),v(),C()}),t.onUnmounted(()=>{f&&(f.unobserve(i.value),f.disconnect(),f=null)}),n.expose({refreshCanvas:Ti,changeCanvas:Sl,designerCanvasElementRef:i,designerCanvasContainerElementRef:l,designerHostService:p}),()=>t.createVNode("div",{class:"editorDiv flex-fill h-100",ref:l},[t.createVNode("div",{class:y.value},[t.createVNode("div",{ref:i,class:g.value},[o.value&&t.createVNode(vn,{key:xi.value,modelValue:o.value,"onUpdate:modelValue":x=>o.value=x,onSelectionChange:b,componentId:u.value,onDragEnd:w},null)])])])}}),Nu={id:{type:String,default:""},componentId:{type:String,default:""},canAdd:{type:Boolean,default:!1},canDelete:{type:Boolean,default:!1},canMove:{type:Boolean,default:!1},contentKey:{type:String,default:"contents"},childLabel:{type:String,default:""},childType:{type:String,default:""},modelValue:{type:Object}};function Wi(e,n,o){var N;const a=o&&o.getStyles&&o.getStyles()||"",i=t.ref();let l;function r(){return o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function s(){return!1}function u(){return o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function d(){return o&&o.checkCanAddComponent?o.checkCanAddComponent():!0}function f(){return!0}function c(k){if(!k||!k.value)return null;const I=t.ref(k==null?void 0:k.value.parent),E=c(I);return E||null}function h(k=n){var M;const{componentInstance:I,designerItemElementRef:E}=k;if(!I||!I.value)return null;const{getCustomButtons:_}=I.value;return I.value.canMove||I.value.canAdd||I.value.canDelete||_&&((M=_())!=null&&M.length)?E:h(k.parent)}function p(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function m(k){return!!o&&o.canAccepts(k)}function g(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function y(){}function v(k,I){!k||!I||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(k,I)}function b(k){const{componentType:I}=k,E=t.inject("designer-host-service");let _=rt.getSchemaByTypeForDesigner(I,k,E);o&&o.onResolveNewComponentSchema&&(_=o.onResolveNewComponentSchema(k,_));const M=I.toLowerCase().replace(/-/g,"_");return _&&!_.id&&_.type===I&&(_.id=`${M}_${Math.random().toString().slice(2,6)}`),_}function w(k){}function C(...k){return o&&o.getPropsConfig?o.getPropsConfig(...k):[]}function x(){}function T(k){var E;if(!(n!=null&&n.schema))return;if(o!=null&&o.setComponentBasicInfoMap){o.setComponentBasicInfoMap();return}let I="";if(o!=null&&o.getComponentTitle)I=o.getComponentTitle();else{const{text:_,title:M,label:F,mainTitle:P,name:B,type:$}=n.schema;I=_||M||F||P||B||((E=ce[$])==null?void 0:E.name)}I&&(!l&&k&&(l=k.formSchemaUtils),l.getControlBasicInfoMap().set(n.schema.id,{componentTitle:I,parentPathName:I}))}function S(k){var M;const{changeObject:I}=k,{propertyID:E,propertyValue:_}=I;["text","title","label","name","mainTitle"].includes((M=k==null?void 0:k.changeObject)==null?void 0:M.propertyID)&&E&&_&&T()}function V(k){if(S(k),o&&o.onPropertyChanged)return o.onPropertyChanged(k)}return i.value={canMove:r(),canSelectParent:s(),canAdd:d(),canDelete:u(),canNested:!f(),contents:[],elementRef:e,parent:(N=n.parent)==null?void 0:N.componentInstance,schema:n.schema,styles:a,canAccepts:m,getBelongedComponentInstance:c,getDraggableDesignItemElement:h,getDraggingDisplayText:g,getPropConfig:C,getDragScopeElement:y,onAcceptMovedChildElement:v,onChildElementMovedOut:w,addNewChildComponentSchema:b,onRemoveComponent:x,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1),onPropertyChanged:V,getCustomButtons:p,setComponentBasicInfoMap:T},i}const Io=t.defineComponent({name:"FDesignerInnerItem",props:Nu,emits:["selectionChange","addComponent","removeComponent","clickButton"],setup(e,n){const o=t.ref(e.canMove),a=t.ref(e.canAdd),i=t.ref(e.canDelete),l=t.ref(!1),r=t.ref(e.contentKey),s=t.ref(e.childType),u=t.ref(e.childLabel),d=t.ref(e.modelValue),f=t.ref(""),c=t.ref(),h=t.inject("canvas-dragula"),p=t.ref(),m=t.inject("design-item-context"),g={designerItemElementRef:c,componentInstance:p,schema:d.value,parent:m,setupContext:n};t.provide("design-item-context",g);const y=t.inject("designer-host-service"),v=t.computed(()=>{var B;const F=((B=p.value)==null?void 0:B.getCustomButtons)&&p.value.getCustomButtons();return{"farris-component":!0,"flex-fill":e.id==="root-component","position-relative":o.value||i.value||(F==null?void 0:F.length),"farris-nested":l.value,"can-move":o.value,"d-none":c.value&&c.value.classList.contains("d-none")}}),b=t.computed(()=>{const F={};return f.value&&f.value.split(";").reduce((P,B)=>{const[$,j]=B.split(":");return $&&(P[$]=j),P},F),F});function w(F,P){if(m&&m.schema[r.value]){const B=m.schema[r.value].findIndex($=>$.id===P.id);if(B>-1){const $=m.schema[r.value].length,j=m.schema[r.value][B%$];m.designerItemElementRef.value.querySelector(`#${j.id}-design-item`),m.schema[r.value].splice(B,1),lt.value++,n.emit("removeComponent"),n.emit("selectionChange")}}}function C(F){if(p.value.addNewChildComponentSchema){const P={componentType:s.value,label:u.value,parentComponentInstance:p.value,targetPosition:-1},B=p.value.addNewChildComponentSchema(P);d.value[r.value].push(B),n.emit("addComponent")}}function x(){return a.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增",ref:"removeComponent",onClick:F=>{C()}},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function T(F){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:t.withModifiers(P=>w(P,F),["stop"])},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function S(){return o.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function V(){var P;const F=((P=p.value)==null?void 0:P.getCustomButtons)&&p.value.getCustomButtons();return F&&!!F.length&&F.map(B=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${B.class||""} ${B.text?"settings-button-extend":""}`,title:B.title,ref:B.id,onClick:$=>B.onClick&&B.onClick($)},[t.createVNode("i",{class:"f-icon "+B.icon},null),B.text&&t.createVNode("span",{class:"icon-text"},[B.text])]))}function N(F){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[x(),S(),T(F),V()])])}t.watch(()=>e.modelValue,F=>{d.value=F,g.schema=F});function k(F){window.scrollContainerList||(window.scrollContainerList=new Set);const P=F.getAttribute("id");P&&window.scrollContainerList.add(P)}function I(F){const P=F.target;k(P),mn(P)}function E(){var F,P;(P=(F=d.value)==null?void 0:F.contents)!=null&&P.length&&c.value&&c.value.addEventListener("scroll",I)}function _(){const F=c.value,P=t.ref(F.children[1]);return Wi(P,g).value}t.onMounted(()=>{if(c.value){const F=c.value.querySelector(`[data-dragref='${d.value.id}-container']`);p.value=F&&F.componentInstance?F.componentInstance.value:_(),h&&F&&h.attachComponents(F,d.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,a.value=p.value.canAdd!==void 0?p.value.canAdd:a.value,i.value=p.value.canDelete!==void 0?p.value.canDelete:i.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,f.value=p.value.styles||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=g),p.value.setComponentBasicInfoMap(y)}E(),lt.value++}),t.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",I)});function M(F){F&&(F.preventDefault(),F.stopPropagation());let P=g.designerItemElementRef;const B=c.value;if(B){const $=document.getElementsByClassName("dgComponentFocused");$&&$.length===1&&$[0]===c.value&&c.value.classList.contains("dgComponentSelected")||(Array.from($).forEach(D=>D.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(D=>D.classList.remove("dgComponentSelected")),B.classList.add("dgComponentFocused"),n.emit("selectionChange",d.value.type,d.value,e.componentId,p.value),p.value.getDraggableDesignItemElement&&(P=p.value.getDraggableDesignItemElement(g),P&&P.value&&P.value.classList.add("dgComponentSelected")))}Fn(P==null?void 0:P.value)}return()=>t.createVNode("div",{id:`${e.id}-design-item`,ref:c,class:v.value,style:b.value,onClick:M},[N(d.value),n.slots.default&&n.slots.default()])}}),Iu={data:{type:Object,default:[]},selectable:{type:Boolean,default:!1},autoCheckChildren:{type:Boolean,default:!0},cascade:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},newDataItem:{type:Object,default:{}},lineColor:{type:String,default:"#9399a0"},cellHeight:{type:Number,default:28}};var tn=(e=>(e.Frame="frame",e.dataGrid="data-grid",e.listView="list-view",e.form="form",e.attachmentPanel="attachment-panel",e))(tn||{});function Fu(e,n){const o=t.ref(""),a=t.ref("");function i(c){var m;let h="controlIcon fd-i-Family ",p="";switch(c==null?void 0:c.type){case"form-group":{p=c.editor&&c.editor.type?`fd_pc-${c.editor.type}`:"";break}default:{const g=((m=ce[c.type])==null?void 0:m.icon)||c.type;h+=`fd_pc-${g}`}}return h+=p,h}function l(c,h){var g;let p=c.id;const m=h==null?void 0:h.contents;if((h==null?void 0:h.type)==="splitter"&&m&&m.length===2){const y=h.direction!=="column";c.id===((g=m[0])==null?void 0:g.id)?p=y?"左侧区域":"上方区域":p=y?"右侧区域":"下方区域"}return p}function r(c){if(c.isLikeCardContainer)return"区块";const h=c.appearance&&c.appearance.class||"",p=h.split(" ");return c.id==="page-header"&&h&&h==="f-page-header"?"页头":p.includes("f-page-header-base")?"页头容器":p.includes("f-page-header-extend")?"页头扩展容器":p.includes("f-title")?"标题容器":p.includes("f-page")?"根容器":p.includes("f-page-main")?"内容区域":p.includes("f-scrollspy-content")&&c.isScrollspyContainer?"滚动监听容器":p.includes("f-grid-is-sub")?"表格容器":p.includes("f-filter-container")?"筛选条容器":"容器"}function s(c){const{componentType:h}=c;switch(h){case tn.Frame:return"根组件";case tn.dataGrid:return(e==null?void 0:e.formSchemaUtils.selectNode(c,m=>m.type===(ce["tree-grid"]&&ce["tree-grid"].type)))?"树表格组件":"表格组件";case tn.attachmentPanel:return"附件组件";case tn.listView:return"列表视图组件";case tn.form:return"卡片组件";default:return"组件"}}function u(c,h){const p=c.name||c.text||c.label||c.title||c.mainTitle;if(c.type!=="component"&&p&&typeof p=="string")return p.trim();switch(c.type){case"content-container":return r(c);case"splitter-pane":return l(c,h);case"component":return s(c);default:return ce[c.type]&&ce[c.type].name||c.id}}function d(c){const h=c.length?c[0]:null;if(!h)return;a.value="",o.value=h.originalId;const p=h?`${h.originalId}-design-item`:"",m=document.getElementById(p);m&&m.click(),n.emit("selectionChanged",h)}function f(c){if(!c)return;const h=`${c}-design-item`,p=document.getElementById(h);p&&p.click()}return{getIcon:i,getTitle:u,onChanged:d,currentSelectedNodeId:o,currentSelectedOutsideNodeId:a,triggerOutsideClick:f}}function ku(e,n){const{getIcon:o,getTitle:a}=n;function i(f,c,h,p,m){var y;const g=(y=e.data.module)==null?void 0:y.components.find(v=>v.id===f.component);g&&l([g],c,h,p,m)}function l(f,c,h,p,m){return f.forEach(g=>{if(g.type==="component-ref"){i(g,c,h,p,m);return}const y={originalId:g.id,layer:h,originalParent:p==null?void 0:p.id,componentId:m,name:a(g,p),type:g.type,controlIcon:o(g),rawSchema:g};c.push(Fe.cloneDeep(y)),(g.contents||g.buttons)&&l(g.contents||g.buttons,c,h+1,g,m)}),c}function r(f){const c=[],h=f.find(y=>y.layer===0);f=f.filter(y=>y.layer!==0),c.push(h);let p=h.originalId,m=0,g=1e3;for(;f.length!==0||g===0;){const y=f.find(v=>v.originalParent===p);y?(c.push(y),p=y.originalId,f=f.filter(v=>v.originalId!==p),m=0):(m-=1,p=c.slice(m)[0].originalId),g-=1}return c}function s(f){return f.forEach((c,h)=>{c.id=(h+1).toString()}),f.forEach(c=>{var h;c.parent=((h=f.find(p=>p.originalId===c.originalParent))==null?void 0:h.id)||""}),f.forEach(c=>{c.hasChildren=f.findIndex(h=>h.parent===c.id)>0}),f}function u(f){const c={originalId:e.data.module.id,layer:0,originalParent:null,name:"页面",type:"module",controlIcon:"controlIcon fd-i-Family fd_pc-module",rawSchema:e.data.module},h=[];return f.forEach(p=>{p[0].originalParent=c.originalId,h.push(...p)}),h.unshift(c),h}function d(){const f=e.data.module?t.ref(e.data.module.components):t.ref([e.data]);if(!f.value)return;const c=[];f.value.forEach(g=>{if(g){const y=[];y.push(g);const w=l(y,[],1,null,g.id);c.push(w)}});const h=u(c),p=r(h);return s(p)}return{getData:d}}const Pu=t.defineComponent({name:"FDesignerOutline",props:Iu,emits:["outputValue","currentEvent","selectionChanged"],setup(e,n){const o=t.ref(),a=t.ref(e.selectable),i=t.ref(e.autoCheckChildren),l=t.ref(e.cascade),r=t.ref(e.showTreeNodeIcons),s=t.ref(e.showLines),u=t.ref(e.newDataItem),d=t.ref(e.lineColor),f=t.ref(e.cellHeight),c=t.ref([{field:"name",title:"",dataType:"string"}]),h=t.inject("designer-host-service"),p=Fu(h,n),{onChanged:m,currentSelectedNodeId:g,currentSelectedOutsideNodeId:y,triggerOutsideClick:v}=p,{getData:b}=ku(e,p);let w=b();function C(){if(w=b(),o.value&&o.value.updateDataSource){if(o.value.updateDataSource(w),y.value&&o.value.clearSelection){o.value.clearSelection(),v(y.value);return}g&&o.value.clearSelection&&(o.value.clearSelection(),x({id:g.value}))}}function x(T){if(!T&&o.value&&o.value.clearSelection&&o.value.clearSelection(),T&&o.value&&o.value.selectItem){const S=w.find(V=>V.originalId===T.id);S?(o.value.selectItemById(S.id),g&&(g.value=S.originalId),o.value.activeRowById(S.id),y.value=""):g&&(g.value="",y.value=T.id)}}return n.expose({selectControlTreeNode:x,refreshControlTree:C}),t.onMounted(()=>{w.length&&o.value&&x({id:w[0].originalId})}),()=>t.createVNode("div",{class:"designer-control-tree"},[t.createVNode(Jt.FTreeView,{ref:o,data:w,columns:c.value,selectable:a.value,columnOption:{fitColumns:!0,fitMode:"expand"},autoCheckChildren:i.value,cascade:l.value,showTreeNodeIcons:r.value,showLines:s.value,newDataItem:u.value,lineColor:d.value,cellHeight:f.value,fit:!0,iconField:"controlIcon",onSelectionChange:m},null)])}}),Eu={id:{type:String,default:""},dragula:{type:Object},toolboxItems:{type:Array,default:[]}},Mu=t.defineComponent({name:"FDesignerToolbox",props:Eu,emits:[],setup(e){const n=t.ref(e.toolboxItems),o=t.ref(e.dragula);function a(h,p){p.isHide=!p.isHide}function i(h){return{"f-icon":!0,"f-icon-arrow-60-down":!h.isHide,"f-icon-arrow-e":h.isHide}}function l(h){return t.createVNode("div",{class:"card-header",onClick:p=>a(p,h)},[t.createVNode("div",{class:"panel-item-title"},[t.createVNode("div",{class:"f-section-formgroup-legend"},[t.createVNode("div",{class:"f-header px-2 col-form-label"},[t.createVNode("div",{class:"f-toolbar mr-2"},[t.createVNode("span",{class:i(h)},null)]),t.createVNode("div",{class:"f-title f-utils-fill d-flex justify-content-between"},[t.createVNode("span",null,[h.name])])])])])])}function r(h){return{"d-none":h.dependentParent||h.hideInControlBox,controlPanel:!0,"drag-copy":!0,"no-drag":h.disable,updating:h.updating}}function s(h){const p={farrisControlIcon:!0,"fd-i-Family":!0},m=`fd_pc-${h.icon||h.type}`;return p[m]=!0,p}function u(h,p){return t.createVNode("div",{class:r(h),"data-sourceType":"control","data-controlType":h.type,"data-controlTypeName":h.name,"data-category":h.category,"data-feature":h.feature?JSON.stringify(h.feature):"","data-fieldType":h.fieldType,"data-templateId":h.id,"data-templateCategory":h.templateCategory,hidden:p.isHide},[t.createVNode("div",null,[t.createVNode("div",{class:s(h)},null),t.createVNode("div",{class:"controlName"},[h.name])])])}function d(h){return t.createVNode("div",{class:"card-body px-2 py-0 border-0 controlCategory no-drop"},[h.items.map(p=>u(p,h))])}function f(h){return!h.hideInControlBox&&t.createVNode("div",{class:"farris-panel-item card border-0"},[l(h),d(h)])}function c(h){if(!h)return;const p=document.getElementsByClassName("controlCategory");p&&(h.containers=h.containers.filter(m=>!m.className.includes("controlCategory")),Array.from(p).forEach(m=>{h.containers.push(m)}))}return t.watch(()=>e.dragula,h=>{var p,m;o.value=h,(p=o.value)!=null&&p.getDragulaInstance&&c((m=o.value)==null?void 0:m.getDragulaInstance())}),()=>t.createVNode("div",{class:"controlBox f-utils-fill-flex-column"},[t.createVNode("div",{class:"farris-panel f-utils-fill-flex-column",style:"overflow:auto;"},[n.value.map(h=>f(h))])])}}),_u={modelValue:{type:Object,default:{}}};function Ou(){const a={aroundDirection:"none",left:2,right:2,top:2,bottom:2,x:0,y:0};function i(){const P=document.createElementNS("http://www.w3.org/2000/svg","path");return P.setAttribute("fill","none"),P.setAttribute("stroke","#4d53e8"),P.setAttribute("stroke-width","2"),P.setAttribute("class",""),P}function l(){const P=document.createElementNS("http://www.w3.org/2000/svg","path");return P.setAttribute("fill","none"),P.setAttribute("stroke","#4d53e8"),P.setAttribute("stroke-width","2"),P.setAttribute("stroke-linecap","round"),P}function r(){const P=document.createElementNS("http://www.w3.org/2000/svg","path");return P.setAttribute("fill","none"),P.setAttribute("stroke","#4d53e8"),P.setAttribute("stroke-width","2"),P.setAttribute("stroke-linecap","round"),P}function s(P,B,$,j){const D=O=>{O.key==="Delete"&&(P.indexOf("^"),document.removeEventListener("keydown",D),B.remove())};$.addEventListener("mouseenter",()=>{$.setAttribute("stroke","#37d0ff"),j.setAttribute("stroke","#37d0ff"),$.setAttribute("stroke-width","3"),document.addEventListener("keydown",D)}),$.addEventListener("mouseleave",()=>{$.setAttribute("stroke","#4d53e8"),$.setAttribute("stroke-width","2"),j.setAttribute("stroke","#4d53e8"),document.removeEventListener("keydown",D)})}function u(P){let B=document.getElementById(P);if(B==null){const $=document.createElementNS("http://www.w3.org/2000/svg","svg"),j=i();$.appendChild(j);const D=l();$.appendChild(D);const O=r();$.appendChild(O);const L=r();$.appendChild(L),B=document.createElement("div"),B.id=P,B.style.position="absolute",B.appendChild($),s(P,B,j,D);const z=document.getElementById("svg-container");return z&&z.appendChild(B),B}return B}function d(P,B,$,j,D){const O={x:0,y:0};return P==="west"&&(B==="north_west"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="west"&&(O.x=0-j/2,O.y=0)),B==="north_east"&&($==="north"&&(O.x=-100,O.y=0-D/2),$==="east"&&(O.x=-100,O.y=0-D/2)),B==="south_east"&&($==="south"&&(O.x=-100,O.y=0+D/2),$==="east"&&(O.x=-100,O.y=0+D/2)),B==="south_west"&&($==="south"&&(O.x=0,O.y=0+D/2),$==="west"&&(O.x=0-j/2,O.y=0))),P==="east"&&(B==="north_west"&&($==="north"&&(O.x=-100,O.y=0-D/2),$==="west"&&(O.x=100,O.y=0-D/2)),B==="north_east"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_east"&&($==="south"&&(O.x=0,O.y=0+D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_west"&&($==="south"&&(O.x=100,O.y=0+D/2),$==="west"&&(O.x=100,O.y=0+D/2))),P==="north"&&(B==="north_west"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="west"&&(O.x=0-j/2,O.y=0)),B==="north_east"&&($==="north"&&(O.x=0,O.y=0-D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_east"&&($==="south"&&(O.x=0+j/2,O.y=-100),$==="east"&&(O.x=0+j/2,O.y=-100)),B==="south_west"&&($==="south"&&(O.x=0-j/2,O.y=-100),$==="west"&&(O.x=0-j/2,O.y=-100))),P==="south"&&(B==="north_west"&&($==="north"&&(O.x=0-j/2,O.y=100),$==="west"&&(O.x=0-j/2,O.y=100)),B==="north_east"&&($==="north"&&(O.x=0+j/2,O.y=100),$==="east"&&(O.x=0+j/2,O.y=100)),B==="south_east"&&($==="south"&&(O.x=0,O.y=0+D/2),$==="east"&&(O.x=0+j/2,O.y=0)),B==="south_west"&&($==="south"&&(O.x=0,O.y=D/2),$==="west"&&(O.x=0-j/2,O.y=0))),O}function f(P,B,$,j){const D={x:0,y:0};return P==="south"&&(B==="west"&&(D.x=-100,D.y=0-j/2),B==="east"&&(D.x=100,D.y=-100),B==="south"&&(D.x=0-$/2,D.y=100),(B==="north"||B==="center")&&(D.x=0,D.y=0-j/2)),P==="north"&&(B==="west"&&(D.x=-100,D.y=100),B==="east"&&(D.x=100,D.y=100),B==="north"&&(D.x=0-$/2,D.y=-100),(B==="south"||B==="center")&&(D.x=0,D.y=j/2)),P==="east"&&(B==="north"&&(D.y=-100,D.x=-100),B==="south"&&(D.y=100,D.x=-100),B==="east"&&(D.x=100,D.y=100),(B==="west"||B==="center")&&(D.x=0-$/2,D.y=0)),P==="west"&&(B==="north"&&(D.y=-100,D.x=100),B==="south"&&(D.y=100,D.x=100),B==="west"&&(D.x=-100,D.y=j/2),(B==="east"||B==="center")&&(D.x=$/2,D.y=0)),D}function c(P,B,$,j,D,O,L){const z=L==="south"||L==="east"?"portrait":"landscape",G=D,J=z==="landscape"?"east":"north",te=L==="center"?z==="landscape"?"west":"south":L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H;U<0&&(B+=Math.abs(U));const K=new Map([["default",0+q],["portrait",0+q],["landscape",0+q]]),Q=new Map([["default",B+R],["portrait",B+R],["landscape",B+R]]);q<0&&(P+=Math.abs(q)),A>0&&(P+=A);const oe=new Map([["default",P+A],["portrait",P+A],["landscape",P+A]]),X=new Map([["default",0+U],["portrait",0+U],["landscape",0+U]]),ne=j.left>a.left,ie=j.bottom>a.bottom,we=ne?0:ie?P/2:K.get(z),le=ie?B+j.bottom:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}function h(P,B,$,j,D,O,L){const z=L==="south"||L==="west"?"portrait":"landscape",G=D,J=z==="landscape"?"west":"north",te=L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H;U<0&&(B+=Math.abs(U)),q>0&&(P+=q),A<0&&(P+=Math.abs(A));const K=new Map([["default",P+q],["portrait",P+q],["landscape",P+q]]),Q=new Map([["default",B+R],["portrait",B+R],["landscape",B+R]]),oe=new Map([["default",0+A],["portrait",0+A],["landscape",0+A]]),X=new Map([["default",0+U],["portrait",0+U],["landscape",0+U]]),ne=j.right>a.right,ie=j.bottom>a.bottom,we=ne?P+j.right:ie?P/2:K.get(z),le=ie?B+j.bottom:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}function p(P,B,$,j,D,O,L){const z=L==="north"||L==="east"?"portrait":"landscape",G=D,J=z==="landscape"?"east":"south",te=L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H,K=new Map([["default",0+q],["portrait",0+q],["landscape",0+q]]),Q=new Map([["default",0+R],["portrait",0+R],["landscape",0+R]]);q<0&&(P+=Math.abs(q)),R<0&&(B+=Math.abs(R)),A>0&&(P+=A),U>0&&(B+=U);const oe=new Map([["default",P+A],["portrait",P+A],["landscape",P+A]]),X=new Map([["default",B+U],["portrait",B+U],["landscape",B+U]]),ne=j.left>a.left,ie=j.top>a.top,we=ne?0:ie?P/2:K.get(z),le=ie?0:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}function m(P,B,$,j,D,O,L){const z=L==="north"||L==="west"?"portrait":"landscape",G=D,J=z==="landscape"?"west":"south",te=L,W=d(G,O,J,P,B),{x:q,y:R}=W,H=f(J,te,P,B),{x:A,y:U}=H;A<0&&(P+=Math.abs(A));const K=new Map([["default",P+q],["portrait",P+q],["landscape",P+q]]),Q=new Map([["default",0+R],["portrait",0+R],["landscape",0+R]]);R<0&&(B+=Math.abs(R)),U>0&&(B+=U);const oe=new Map([["default",0+A],["portrait",0+A],["landscape",0+A]]),X=new Map([["default",B+U],["portrait",B+U],["landscape",B+U]]),ne=j.right>a.right,ie=j.top>a.top,we=ne?P+j.right:ie?P/2:K.get(z),le=ie?0:ne?B/2:Q.get(z),de=oe.get(z),he=X.get(z);return[{x:we,y:le},{x:de,y:he},{x:A,y:U}]}const g=new Map([["north_east",c],["north_west",h],["south_east",p],["south_west",m]]),y=new Map([["east",["north_west","south_west"]],["west",["north_east","south_east"]],["north",["south_west","south_east"]],["south",["north_west","north_east"]],["center",[]]]);function v(P,B){return P==="north_west"?{aroundDirection:"north_west",left:B.left,right:100,top:B.top,bottom:B.top}:P==="south_west"?{aroundDirection:"south_west",left:B.left,right:100,top:B.top,bottom:B.bottom}:B}function b(P,B){return P==="north_east"?{left:100,right:B.right,top:B.top,bottom:B.top}:P==="south_east"?{left:100,right:B.right,top:B.top,bottom:B.bottom}:B}function w(P,B){return P==="south_west"?{left:B.left,right:B.right,top:100,bottom:B.top}:P==="south_east"?{left:B.left,right:B.right,top:100,bottom:B.bottom}:B}function C(P,B){return P==="north_west"?{left:B.left,right:B.right,top:B.top,bottom:100}:P==="north_east"?{left:B.left,right:B.right,top:B.top,bottom:100}:B}function x(P,B){return B}const T=new Map([["east",v],["west",b],["north",w],["south",C],["center",x]]);function S(P,B,$,j){const D=B.x-P.x,O=B.y-P.y,L=D>=0?"east":"west",z=O>=0?"south":"north",G=`${z}_${L}`,te=(y.get($)||[]).includes(G),W=T.get($),q=te?W(G,a):a,R=Math.abs(D),H=Math.abs(O),A=g.get(`${z}_${L}`),[U,K,Q]=A(R,H,te,q,$,G,j),oe=L==="west"?Q.x<0?Math.abs(Q.x):0:Q.x>0?Q.x:0,X=q.left+q.right+R+oe,ne=z==="north"?Q.y<0?Math.abs(Q.y):0:Q.y>0?Q.y:0,ie=q.top+q.bottom+H+ne,we=L==="east"?P.x-q.left:P.x+q.right-X,le=z==="south"?P.y-q.top:P.y+q.bottom-ie,de=L==="east"?q.left:X-q.right,he=z==="north"?ie-q.bottom:q.top,ee=L==="west"?Q.x<0?Math.abs(Q.x):0:Q.x<0?X:X-Q.x,fe=z==="north"?Q.y<0?Math.abs(Q.y):0:Q.y<0?ie:ie-Q.y;return{width:X,height:ie,left:we,top:le,startPoinInBoundray:{x:de,y:he},firstControlPoint:U,secondControlPoint:K,endPoinInBoundray:{x:ee,y:fe}}}function V(P,B,$,j,D){P.style.position="absolute",P.style.alignItems="center",P.style.left=`${B}px`,P.style.top=`${$}px`,P.style.width=j+"px",P.style.height=D+"px"}function N(P,B,$,j,D,O,L){const z=P.childNodes[0];z.setAttribute("width",String(B)),z.setAttribute("height",String($)),P.appendChild(z);const G=z.childNodes[0],J=`${j.x} ${j.y}`,te=`${D.x} ${D.y}`,W=`${O.x} ${O.y}`,q=`${L.x} ${L.y}`,R="M ".concat(J).concat(" C ").concat(te).concat(","+W+",").concat(q);G.setAttribute("d",R),G.setAttribute("fill","none"),G.setAttribute("stroke","#4d53e8"),G.setAttribute("stroke-width","2"),G.setAttribute("class","")}function k(P,B,$,j,D){const{width:O,height:L,left:z,top:G,startPoinInBoundray:J,firstControlPoint:te,secondControlPoint:W,endPoinInBoundray:q}=S(B,$,j,D);V(P,z,G,O,L),N(P,O,L,J,te,W,q)}function I(P,B,$,j,D){const O=u(P);k(O,B,$,j,D)}function E(P){return Number(P.replace("px",""))}function _(P){if(P!==null){const B=P.parentNode,$=E(B.style.left),j=E(B.style.top);return{x:$+P.offsetLeft+P.offsetWidth/2,y:j+P.offsetTop+P.offsetHeight/2}}return{x:0,y:0}}function M(P,B){const $=document.getElementById(P),j=document.getElementById(B),D=_($),O=_(j),L=D.x+2,z=D.y,G=O.x-2,J=O.y;return{startPoint:{x:L,y:z},endPoint:{x:G,y:J}}}function F(P,B,$,j){const{startPoint:D,endPoint:O}=M(P,B);I(`${P}_${B}`,D,O,$,j)}return{connect:F,drawing:I}}function Bu(e){const n=t.ref(),o=t.ref(0),a=t.ref(0),i=t.ref({x:0,y:0}),l=t.ref(),{drawing:r}=e;function s(v){return Number(v.replace("px",""))}function u(v){return(v&&v.className&&v.className.split?v.className.split(" "):[]).includes("f-flow-ancher")}function d(v){switch((v?v.className.split(" "):[]).find(C=>C.startsWith("circle-"))||""){case"circle-left":return"west";case"circle-right":return"east";case"circle-top":return"north";case"circle-bottom":return"south";default:return"center"}}function f(v,b,w){const C=w.getBoundingClientRect();o.value=C.left,a.value=C.top,i.value={x:v,y:b},n.value=d(w)}function c(v){var V;const b=v.clientX-o.value,w=v.clientY-a.value,C=i.value.x+b,x=i.value.y+w,T=v.target,S=T&&typeof T.className=="string"&&u(T)?d(T):"center";r(`${(V=l.value)==null?void 0:V.id}_curve_to`,{x:i.value.x,y:i.value.y},{x:C,y:x},n.value,S)}function h(v){const b=document.getElementById(v);b&&b.remove()}function p(){document.addEventListener("mousemove",c)}function m(){document.removeEventListener("mousemove",c)}function g(v){l.value=void 0,m()}function y(v,b){l.value=document.getElementById(v);const w=l.value.offsetParent,C=l.value.getBoundingClientRect(),x=w.getBoundingClientRect(),T=s(w.style.left)+(C.left-x.left),S=s(w.style.top)+(C.top-x.top),V=T+C.width/2,N=S+C.height/2;f(V,N,l.value),p()}return{drawFrom:y,eraseDrawingLine:h,finishToDraw:g,getAncherPointPosition:d,isAncherPoint:u}}const Du={id:{type:String,default:""},type:{type:String,default:""},modelValue:{type:Object},x:{type:Number,default:0},y:{type:Number,default:0},connection:{type:Array,default:[]}},ju=t.defineComponent({name:"FFlowNodeItem",props:Du,emits:[],setup(e,n){const o=t.ref(e.id),a=t.ref(e.modelValue),i=t.ref(),l=t.inject("use-drawing-bezier-composition"),{drawFrom:r,eraseDrawingLine:s,finishToDraw:u,getAncherPointPosition:d,isAncherPoint:f}=l,c=t.inject("use-bezier-curve-composition"),{connect:h}=c,p=t.inject("use-connections-composition"),{addConnection:m,getConnectionsOfNode:g}=p;new Map(e.connection);const y=t.computed(()=>({left:`${e.x}px`,top:`${e.y}px`}));function v(x,T){if(f(x)&&f(T)){const S=d(x),V=d(T);h(x.id,T.id,S,V);const N=x.id,k=T.id,I=N.split(/(-left-point|-right-point|-top-point|-bottom-point)/,1)[0],E=k.split(/(-left-point|-right-point|-top-point|-bottom-point)/,1)[0];m(I,N,E,k)}}function b(x){var T;document.removeEventListener("mouseup",b),u(x),s(`${(T=i.value)==null?void 0:T.id}_curve_to`),v(i.value,x.target)}function w(x,T){i.value=document.getElementById(x),r(x,T),document.addEventListener("mouseup",b),T.stopPropagation()}t.watch([()=>e.x,()=>e.y],()=>{const x=g(o.value);x.length&&x.forEach(T=>{const S=document.getElementById(T.from),V=document.getElementById(T.to);S&&V&&v(S,V)})});const C=t.computed(()=>({"node-content":!0}));return()=>t.createVNode("div",{id:o.value,class:"br-node",style:y.value},[t.createVNode("div",{id:`${o.value}-left-point`,class:"f-flow-ancher circle-left",onMousedown:x=>w(`${o.value}-left-point`,x)},null),t.createVNode("div",{id:`${o.value}-top-point`,class:"f-flow-ancher circle-top",onMousedown:x=>w(`${o.value}-top-point`,x)},null),t.createVNode("div",{id:`${o.value}-content`,class:C.value,style:"min-width:200px;min-height:200px;"},[a.value&&t.createVNode(Hi,{modelValue:a.value,"onUpdate:modelValue":x=>a.value=x},null)]),t.createVNode("div",{id:`${o.value}-right-point`,class:"f-flow-ancher circle-right",onMousedown:x=>w(`${o.value}-right-point`,x)},null),t.createVNode("div",{id:`${o.value}-bottom-point`,class:"f-flow-ancher circle-bottom",onMousedown:x=>w(`${o.value}-bottom-point`,x)},null)])}});function $u(e){const n=new Map,o=new Map;function a(r,s){const u=o.get(r)||[];u.filter(f=>s.from===f.from&&s.to===f.to).length>0||(u.push(s),o.set(r,u))}function i(r,s,u,d){const f=new Set(n.get(s)||[]);f.add(d),n.set(s,[...f]);const c={from:s,to:d,type:"Curve"};a(r,c),a(u,c)}function l(r){return o.get(r)||[]}return{addConnection:i,getConnectionsOfNode:l}}const Lu=t.defineComponent({name:"FFlowCanvas",props:_u,emits:[],setup(e,n){const o=t.ref(),a=Ou(),i=Bu(a),l=$u();t.provide("use-bezier-curve-composition",a),t.provide("use-connections-composition",l),t.provide("use-drawing-bezier-composition",i);const r=t.computed(()=>({transition:"transform 0.2s","background-color":"#F2F3F5",height:"100%",width:"100%",position:"relative"}));t.onMounted(()=>{o.value=e.modelValue});const s=t.ref(),u=t.ref(),d=t.ref(),f=t.ref(),c=t.ref();function h(g){const y=g.clientX-f.value,v=g.clientY-c.value;s.value&&s.value.position&&(s.value.position.x=u.value+y,s.value.position.y=d.value+v)}function p(){document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",p),s.value=void 0,f.value=void 0,c.value=void 0}function m(g,y){s.value=g,u.value=g.position.x,d.value=g.position.y,f.value=y.clientX,c.value=y.clientY,document.addEventListener("mousemove",h),document.addEventListener("mouseup",p)}return()=>t.createVNode("div",{class:"f-flow-canvas editorDiv flex-fill h-100"},[t.createVNode("div",{id:"svg-container",class:"f-struct-wrapper flex-fill",style:r.value},[o.value&&o.value.contents.map(g=>t.createVNode(ju,{modelValue:g.content[0],"onUpdate:modelValue":y=>g.content[0]=y,id:g.id,x:g.position.x,y:g.position.y,onMousedown:y=>m(g,y)},null))])])}});function qi(e){return typeof e=="string"&&e.startsWith("{")&&e.endsWith("}")?(e=e.replace(/'/g,'"'),{mappingFields:JSON.parse(e)}):{mappingFields:e}}const Ru=new Map([["appearance",rt.resolveAppearance],["mappingFields",(e,n,o)=>{if(n)return qi(n);const{mappingFields:a}=o;return qi(a)}],["uri",(e,n,o)=>{var a;return n?{uri:n}:{uri:(a=o==null?void 0:o.dataSource)==null?void 0:a.uri}}],["idField",(e,n,o)=>{var a;return n?{idField:n}:{idField:(a=o==null?void 0:o.dataSource)==null?void 0:a.idField}}]]),Au={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/lookup.schema.json",title:"lookup",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"lookup"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:"帮助"},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},textField:{description:"帮助显示文本字段",type:"string",default:""},mappingFields:{description:"帮助字段映射",type:"object",default:{}},uri:{type:"string",default:""},dataSource:{type:"object",default:null},displayType:{type:"string",default:"list"},"onUpdate:dataMapping":{type:"object",default:null},onClear:{type:"object",default:null},context:{type:"object",default:null},enableToSelect:{type:"boolean",default:!0},idValue:{type:"string",default:""},multiSelect:{type:"boolean",default:!1},separator:{type:"string",default:","},fitColumns:{type:"boolean",default:!0},enableFavorite:{type:"boolean",default:!1},enableUserData:{type:"boolean",default:!1},showSelections:{type:"boolean",default:!0},treeToList:{type:"boolean",default:!1},navTreeToList:{type:"boolean",default:!1},showNavigation:{type:"boolean",default:!0},dictPicking:{type:"object",default:null},dictPicked:{type:"object",default:null},enableSearchBar:{type:"boolean",default:!0},searchAnyField:{type:"boolean",default:!0},dialog:{type:"object",default:null},idField:{type:"string",default:"id"},pagination:{type:"object",default:null},allowFreeInput:{type:"boolean",default:!1},loadTreeDataType:{type:"string",default:"default"},onlySelectLeaf:{type:"boolean",default:!1},enableFullTree:{type:"boolean",default:!0},beforeLoadData:{type:"object",default:null},beforeSelectData:{type:"object",default:null},enableCascade:{type:"boolean",default:!1},showCascadeControl:{type:"boolean",default:!0},cascadeItems:{type:"object",default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:"string",default:"both"},expandLevel:{type:"number",default:0},enableClear:{type:"boolean",default:!0},openType:{type:"string",default:"Modal"},enableTitle:{type:"boolean",default:!1},showIncludeChildNodes:{type:"boolean",default:!0},includeChildNodesValue:{type:"boolean",default:!0}},required:["type"],ignore:["id","appearance","binding","visible"],events:{dictPicking:"帮助前事件",dictPicked:"帮助后事件",beforeSelectData:"数据选择确认前事件",beforeLoadData:"数据加载前事件",clear:"清空事件"}};function zu(e,n,o){return n}var Ui=(e=>(e.Both="both",e.Up="up",e.Down="down",e.Disable="disable",e))(Ui||{});const Fo=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Gi="";var ut=(e=>(e.List="LIST",e.Tree="TREELIST",e.ListList="NAVLIST",e.TreeList="NAVTREELIST",e.ListTree="NAVLISTTREE",e))(ut||{}),Mt=(e=>(e.default="default",e.all="all",e.async="async",e))(Mt||{});const bn="__lookup_active_tab__";var Ze=(e=>(e.dataList="datalist",e.favorite="favorite",e))(Ze||{});const Yi={showPageInfo:!0,enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1},Xi=Symbol("f_lookup-http-service_token");var Ji=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.Greater=2]="Greater",e[e.GreaterOrEqual=3]="GreaterOrEqual",e[e.Less=4]="Less",e[e.LessOrEqual=5]="LessOrEqual",e[e.Like=6]="Like",e[e.LikeStartWith=7]="LikeStartWith",e[e.LikeEndWith=8]="LikeEndWith",e[e.NotLike=9]="NotLike",e[e.NotLikeStartWith=10]="NotLikeStartWith",e[e.NotLikeEndWith=11]="NotLikeEndWith",e[e.Is=12]="Is",e[e.IsNot=13]="IsNot",e[e.In=14]="In",e[e.NotIn=15]="NotIn",e))(Ji||{}),ko=(e=>(e[e.Empty=0]="Empty",e[e.And=1]="And",e[e.Or=2]="Or",e))(ko||{});const Hu={showCloseButton:!0,showMaxButton:!0,draggable:!0,resizeable:!0,enableEsc:!0,rememberSize:!0};function Wu(){function e(n,o){const a={};return a.dictPicking=i=>o.call("dictPicking",[i,n]),a.beforeLoadData=i=>o.call("beforeLoadData",[i,n]),a.beforeSelectData=i=>o.call("beforeSelectData",[i,n]),a.dictPicked=i=>o.call("dictPicked",[i,n]),a}return{resolve:e}}const $n={id:{type:String,require:!0},uri:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!1},mappingFields:{type:Object,default:null},fitColumns:{type:Boolean,default:!0},columns:{type:Array,default:[]},idField:{type:String,default:"id"},textField:{type:String,defalut:"name"},data:{type:Array,default:[]},displayType:{type:String,default:ut.List},dialog:{type:Object,default:{title:""}},multiSelect:{type:Boolean,default:!1},showSelections:{type:Boolean,default:!0},separator:{type:String,default:","},pagination:{type:Object,default:Yi},enableClear:{type:Boolean,default:!0},inputType:{type:String,default:"text"},idValue:{type:String,default:""},dictPicking:{type:Function,default:null},dictPicked:{type:Function,default:null},beforeSelectData:{type:Function,default:null},beforeLoadData:{type:Function,default:null},enableSearchBar:{type:Boolean,default:!0},searchFields:{type:Array,default:[]},searchAnyField:{type:Boolean,default:!0},navigation:{type:Object,default:null},textChangeType:{type:String,default:"any"},showNavigation:{type:Boolean,default:!0},showIncludeChildNodes:{type:Boolean,default:!0},includeChildNodesValue:{type:Boolean,default:!0},enableMultiFieldSearch:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},navTreeToList:{type:Boolean,default:!1},loadTreeDataType:{type:String,default:Mt.default},enableToSelect:{type:Boolean,default:!0},customData:{type:Object,default:null},modelValue:{type:String,default:""},enableUserData:{type:Boolean,default:!1},userDataKey:{type:String,default:""},onReady:{type:Function,default:null},context:{type:Object,default:{}},placeholder:{type:String,default:""},loader:{type:Function,default:null},allowFreeInput:{type:Boolean,default:!1},onlySelectLeaf:{type:Boolean,default:!1},enableFullTree:{type:Boolean,default:!0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!0},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:String,default:"both"},expandLevel:{type:Number,default:0},openType:{type:String,default:"Modal"},enableTitle:{type:Boolean,default:!1}},Qi=rt.createPropsResolver($n,Au,Ru,zu),qu=Wu();function Ln(e){let n=[10,20,30,50,100];return e&&(typeof e=="string"&&(n=e.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(e)&&(n=e)),n.map(o=>({value:parseInt(o,10)})).sort((o,a)=>o.value-a.value)}const qe={convertFrom:(e,n)=>n==="multiSelect"||n==="enableTitle"?!!e.editor[n]:n==="separator"?e.editor[n]||",":n==="onlySelectLeaf"?e.editor[n]==null?!1:e.editor[n]:n==="loadTreeDataType"?e.editor[n]||"default":n==="placeholder"?e.editor.placeholder||"请选择":e.editor[n],convertTo:(e,n,o)=>{e.editor[n]=o,n==="multiSelect"&&!o&&(e.editor.enableCascade=!1),n==="openType"&&o==="Popup"&&(e.editor.showSelections=!1,e.editor.enableCascade=!1)}};function Uu(e){let n="form_group_"+Date.now();return e&&(n=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+n}function Gu(e,n){const{enablePager:o,pageSize:a,pageList:i}=n;e.pagination=e.pagination||{},Object.assign(e.pagination,{enable:o,sizeLimits:Ln(i).map(l=>l.value),size:a,showLimits:!0,showGoto:!1,mode:"server"})}const Ki={convertFrom:(e,n)=>{var o;return(o=e.editor[n])==null?void 0:o.displayName},convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0],{name:i,id:l,metadataContent:r,code:s}=a;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=`${i}(${s})`,e.editor.helpId=l;const{displayType:u,idField:d,textField:f}=r;e.editor.displayType=u,e.editor.dataSource.idField=d,e.editor.textField=f,e.editor.dataSource.type="ViewObject";const{pageInfo:c}=r.dataSource;Gu(e.editor,c);const{treeInfo:h}=u.toUpperCase()==="NAVTREELIST"?r.navigation:r.dataSource;if(h){const{onlySelectLeaf:p,loadDataType:m}=h;e.editor.loadTreeDataType="default",e.editor.onlySelectLeaf=p??!1}e.editor.dataSource.uri||(e.editor.dataSource.uri=Uu(e.id))}}},Yu={convertFrom:(e,n)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0];e.editor.dataSource.idField=a==null?void 0:a.bindingPath}}},Xu={convertFrom:(e,n)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0];e.editor.textField=a==null?void 0:a.bindingPath}}},Ju={convertFrom:(e,n)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,n,o)=>{e.editor.displayType=o}},Tt={convertFrom:(e,n)=>{var i;const o=e.editor.dialog||{};if(n==="title")return o[n]||Gi;if(e.editor.openType==="Modal"){if(n==="width")return(i=e.editor.displayType)!=null&&i.toUpperCase().startsWith("NAV")?o[n]||960:o[n]||590;if(n==="height")return o[n]||620;if(n==="navigatorWidth")return o[n]||320}else{if(n==="width")return o[n]||460;if(n==="height")return o[n]||380}if(n==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(n))return o[n]==null?!0:o[n]},convertTo:(e,n,o)=>{e.editor.dialog=e.editor.dialog||{},e.editor.dialog[n]=o}},Po={convertFrom:(e,n)=>{const o=e.editor.pagination||{};if(n==="enable"||n==="showLimits")return o[n]==null?!1:o[n];if(n==="sizeLimits"){const a=o[n];return Ln(a)}if(n==="size")return o[n]||20},convertTo:(e,n,o)=>{var a,i;if(e.editor.pagination=e.editor.pagination||{},n==="sizeLimits"){const l=o.map(s=>s.value);e.editor.pagination[n]=l;const r=((i=(a=e.editor)==null?void 0:a.pagination)==null?void 0:i.size)??20;l.includes(r)||(e.editor.pagination.size=l[0]);return}e.editor.pagination[n]=o}},Qu=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Ku=[{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Zi=Symbol("schema_repository_token");class er extends eo.InputBaseProperty{constructor(){super(...arguments);se(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});se(this,"numberEditor",{type:"number-spinner",useThousands:!1});se(this,"readonlyEditor",{...this.comboListEditor,editable:!0});se(this,"visibleEditor",{...this.comboListEditor,editable:!1});se(this,"requiredEditor",{...this.comboListEditor,editable:!1});se(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(o,a){const i=["validate"];return o.type==="form-group"&&i.push("dataPicking"),new eo.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(o,"Field",i)}getPropertyConfig(o,a,i="Card"){var y;const l=(y=o.binding)!=null&&y.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(o,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(o,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(o,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(o,["Const","Variable"],"allowFreeInput");const r=this.getBasicProperties(o,a,i),s=this.getBehaviorConfig(o),u=this.getAppearanceProperties(o,a),d=this.getLookupConfig(o),f=this.getEventPropConfig(o),c=this.getDialogPropertyConfig(o),h=this.getPageConfig(o.editor),p=this.getTreePropConfig(o.editor),m=this.getExpressionConfig(o,"Field"),g={basic:r,appearance:u,behavior:s,lookup:d,treeConfig:p,dialog:c,pager:h,expressions:m};return o.type==="form-group"&&(g.eventsEditor=f),{type:"object",categories:g}}getGridFieldEdtiorPropConfig(o){return this.getPropertyConfig(o,null,"Grid").categories}flattenTreeNodes(o){return o.reduce((a,i)=>{var l;return a.push(i),(l=i.children)!=null&&l.length&&a.push(...this.flattenTreeNodes(i.children)),a},[])}isSimpleStringField(){var s;const o=((s=this.designViewModelField)==null?void 0:s.path)||"";if(!o||!o.includes("."))return!0;const a=o.split("."),i=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(i!=null&&i.length))return!1;const l=i.find(u=>u.data.code===a[0]);if(!l)return!1;const r=[l,...this.flattenTreeNodes(l.children)];return!a.reduce((u,d,f)=>[...u,f?`${u[f-1]}.${d}`:d],[]).some(u=>{var d,f,c;return((c=(f=(d=r.find(h=>h.data.path===u))==null?void 0:d.data)==null?void 0:f.type)==null?void 0:c.$type)==="EntityType"})}getBehaviorConfig(o){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(a,i)=>{this.afterMutilEditorChanged(i,a)}}}changeBindingField(o,a){super.changeBindingField(o,a),o.editor.multiSelect=!1}getDisplayType(o){return o.displayType?o.displayType.toUpperCase():""}mapFieldsDisplayFormatter(o){return o&&o.length?o.map(a=>`${a.name}[${a.bindingPath}]`).join(","):""}getLookupConfig(o){const a=o.editor,i=()=>{const l=this.formSchemaUtils.getFormSchema().module.entity[0].id,r=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:a,formBasicInfo:r,viewModelId:l,dataSourceId:a.helpId}};return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(l,r)=>{if(l)switch(l.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(r,l);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:qe},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:qe,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:qe,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(a.multiSelect&&a.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:qe,editor:this.freeInputEditor,visible:!1},enableClear:{title:"启用清除按钮",type:"boolean",$converter:qe},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},displayFormatter:l=>l&&l.length?l.map(r=>`${r.name}(${r.code})`).join(","):"",viewOptions:this.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(l,r)=>`${l==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Zi,validateFunction:async l=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(l,o),onSubmitModal:l=>{if(l){delete a.mappingFields;const r=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(r.relativePath,l[0].data).then(s=>JSON.parse(s==null?void 0:s.metadata.content))}}},$converter:Ki},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:qe,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:fn.FieldSelectorRepositoryToken,beforeOpen:async({repository:l,notifyService:r})=>{var h;if(!(a==null?void 0:a.helpId))return r==null||r.warning({message:"请先配置数据源!"}),!1;const u=i(),f=new eo.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let c={};if(l){const p=await l.getData(u),m=await l.getLookupConditions(u);c={fieldList:p,conditionList:m}}return(h=f.variables)!=null&&h.forms&&(f.variables.forms.items=f.variables.forms.items.filter(p=>p.category==="remote")),{...c,...f}},onSubmitModal:async({loadingService:l,repository:r,conditions:s,originalConditions:u,FMessageBoxService:d})=>{if(r)try{const f=i(),c=await r.getLookupConditions(f)||[];return JSON.stringify(c)!==JSON.stringify(u.value)?(l==null||l.clearAll(),d.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{s.value=c,u.value=JSON.parse(JSON.stringify(s.value))},()=>{}),!1):(JSON.stringify(s.value)===JSON.stringify(u.value)||await r.saveFilterCondition(s.value,f,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return d==null||d.error("保存失败",""),!1}finally{l==null||l.clearAll()}}},visible:!!a.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ju,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!0,editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:fn.FieldSelectorRepositoryToken},$converter:Yu},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Xu,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:fn.FieldSelectorRepositoryToken}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:qe,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:a,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(l,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:fn.FieldSelectorRepositoryToken,displayFormatter:this.mapFieldsDisplayFormatter},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const l=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),r=this.schemaService.getPrimaryField();return r?l.filter(s=>s.data.bindingPath!==r):l},formatter:(l,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,displayFormatter:this.mapFieldsDisplayFormatter}}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:qe,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:qe,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:qe,title:"显示已选记录",type:"boolean",visible:!!a.multiSelect&&a.openType!=="Popup"},separator:{description:"多选分隔符",$converter:qe,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!a.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:qe,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:qe,title:"允许查询所有列",type:"boolean",visible:a.openType!=="Popup"&&a.enableSearchBar==null?!0:!!a.enableSearchBar},enableFavorite:{description:"启用收藏夹",$converter:qe,title:"启用收藏夹",type:"boolean",visible:a.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:qe,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:a.openType!=="Popup"}}}}showNavigatiorWidth(o){return this.getDisplayType(o).startsWith("NAV")&&o.openType!=="Popup"?o.showNavigation===void 0?!0:!!o.showNavigation:!1}getDialogPropertyConfig(o){var a,i,l,r;return{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",properties:{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",$converter:qe,refreshPanelAfterChanged:!0,editor:{...this.comboListEditor,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0},title:{description:"帮助标题",title:"标题",type:"string",$converter:Tt,visible:o.editor.openType!=="Popup"},width:{description:"窗口宽度,最小值:300px,最大值:3000px",title:"宽度",type:"number",refreshPanelAfterChanged:!0,$converter:Tt,editor:{...this.numberEditor,min:this.showNavigatiorWidth(o.editor)?520:300,max:9999}},height:{description:"窗口高度,最小值:200px,最大值:2000px",title:"高度",type:"number",$converter:Tt,editor:{...this.numberEditor,min:200,max:9999}},showNavigation:{description:"显示导航栏",$converter:qe,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:this.getDisplayType(o.editor).includes("NAV")&&o.editor.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",$converter:Tt,visible:this.showNavigatiorWidth(o.editor)&&o.editor.openType!=="Popup",editor:{...this.numberEditor,min:200,max:(((i=(a=o.editor)==null?void 0:a.dialog)==null?void 0:i.width)??960)-200}},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",$converter:Tt,refreshPanelAfterChanged:!0,visible:o.editor.openType!=="Popup"},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",$converter:Tt,visible:!!o.editor.enableUserData&&(((r=(l=o.editor)==null?void 0:l.dialog)==null?void 0:r.resizeable)??!0)&&o.editor.openType!=="Popup"},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",$converter:Tt,visible:o.editor.openType!=="Popup"},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",$converter:Tt,visible:o.editor.openType!=="Popup"},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",$converter:Tt,visible:o.editor.openType!=="Popup"}}}}showPagerProperty(o,a){const i=this.getDisplayType(o)!=="TREELIST"||o.treeToList;return a&&i?o.pagination&&o.pagination[a]:i}getPageConfig(o){var i,l,r,s;const a=!((i=o.pagination)!=null&&i.enable);return{hide:this.getDisplayType(o)==="TREELIST"||!o.helpId||a,description:"分页配置",title:"分页",parentPropertyID:"pagination",properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:!0,$converter:Po,visible:this.showPagerProperty(o)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",$converter:Po,refreshPanelAfterChanged:!0,visible:this.showPagerProperty(o,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{...this.numberEditor,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Ln((l=o.pagination)==null?void 0:l.sizeLimits),beforeSubmit:({notifyService:u,data:d})=>!d||!d.length?(u==null||u.warning({message:"每页显示条数不能为空!"}),!1):new Set(d.map(c=>parseInt(c.value,10))).size===d.length?!0:(u==null||u.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:this.showPagerProperty(o),$converter:Po,editor:{...this.comboListEditor,data:Ln((r=o.pagination)==null?void 0:r.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(s=o.pagination)==null?void 0:s.size}}}}}showLoadType(o){const a=this.getDisplayType(o);return(a==="TREELIST"||a==="NAVTREELIST")&&!o.treeToList&&!o.navTreeToList}isTree(o){return this.getDisplayType(o)==="TREELIST"&&!o.treeToList}getTreePropConfig(o){return{hide:this.getDisplayType(o)!=="TREELIST"&&this.getDisplayType(o)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:qe,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(o)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:qe,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(o)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:qe,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(o)},enableFullTree:{description:"启用构造完整树",$converter:qe,title:"构造完整树",type:"boolean",visible:this.showLoadType(o)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:qe,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(o)},enableCascade:{description:"启用级联选择",$converter:qe,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(o)&&!!o.multiSelect&&o.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:qe,title:"显示级联状态",type:"boolean",visible:!1},cascadeValue:{description:"缺省级联选择模式",$converter:qe,title:"缺省级联选择模式",type:"string",visible:!!o.enableCascade&&this.isTree(o),editor:{...this.comboListEditor,data:Fo,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:qe,title:"默认展开层级",type:"number",visible:this.showLoadType(o),editor:{...this.numberEditor,min:-1,max:99}}}}}getEventPropConfig(o){const a=this;let i=Qu;o.editor.openType==="Popup"&&(i=i.filter(s=>s.label!=="beforeSelectData"));const l=a.eventsEditorUtils.formProperties(o,a.viewModelId,i);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete u[a.viewModelId],d&&a.eventsEditorUtils.saveRelatedParameters(u,a.viewModelId,d.events,d);const f=a.designViewModelUtils.getDgViewModel(a.viewModelId);f&&a.designViewModelField&&f.changeField(a.designViewModelField.id,{valueChanging:u.fieldValueChanging,valueChanged:u.fieldValueChanged})}}}async checkSameBESource(o,a){var i,l,r,s,u;if(o&&((i=a==null?void 0:a.editor)!=null&&i.helpId)&&!a.isRtcControl){if(o.data.id===a.editor.helpId)return!0;const d=await this.metadataService.getPickMetadata("",o.data).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:a.editor.helpId}).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),c=(l=d==null?void 0:d.dataSource)==null?void 0:l.sourceType,h=(r=f.dataSource)==null?void 0:r.sourceType,p=(s=d==null?void 0:d.dataSource)==null?void 0:s.sourceId,m=(u=f==null?void 0:f.dataSource)==null?void 0:u.sourceId;if(c==="BE"&&h==="BE"&&p!==m)return new pn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}function Zu(e,n){function o(a,i){const l=e.schema;return new er(a,n).getPropertyConfig(l,i)}return{getPropsConfig:o}}const ed=t.defineComponent({name:"FLookupDesign",props:$n,emits:[],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=t.inject("designer-host-service"),l=Zu(a,i),r=Zn.useDesignerComponent(o,a,l),s='<i class="f-icon f-icon-lookup"></i>',u='<i class="f-icon f-icon-arrow-chevron-down"></i>',d=t.computed(()=>e.openType==="Popup"?"Popup":"Modal"),f=t.computed(()=>d.value==="Popup"?u:s);return t.onMounted(()=>{o.value.componentInstance=r}),n.expose(r.value),()=>t.createVNode("div",{class:"f-lookup-design",ref:o},[t.createVNode(to,{ref:o,buttonContent:f.value,readonly:!0,editable:!1,placeholder:e.placeholder},null)])}});function Rt(e,n){const{lookupOptions:o}=n;function a(g){return{...Yi,...g}}function i(){return{enableSelectRow:!0,multiSelect:o.multiSelect,showCheckbox:o.multiSelect,multiSelectMode:"OnCheckAndClick"}}function l(){return{fitColumns:e.fitColumns,fitMode:"percentage",resizeColumn:!0}}function r(){const{displayType:g}=n.lookupOptions;return typeof g=="string"&&g in ut?!1:g.toLowerCase().startsWith("nav")}function s(){const{displayType:g,treeToList:y}=n.lookupOptions;return(g.toLowerCase()===ut.Tree.toLowerCase()||g.toLowerCase()===ut.ListTree.toLowerCase())&&!y}function u(){const{displayType:g,navTreeToList:y}=n.lookupOptions;return g.toLowerCase()===ut.TreeList.toLowerCase()&&!y}function d(){const{displayType:g,navTreeToList:y}=n.lookupOptions,v=g.toLowerCase();return v===ut.ListList.toLowerCase()||v===ut.ListTree.toLowerCase()||y}function f(){var v;return o.dialog?{width:((v=o.dialog)==null?void 0:v.navigatorWidth)||320,minWidth:200}:{width:320,minWidth:200}}function c(g){const{loadTreeDataType:y}=o;return y===Mt.all||y==="default"&&(g==null?void 0:g.loadDataType)==="all"}function h(g){return(g==null?void 0:g.layerType)==="pathcode"}function p(){return o.enableCascade&&o.multiSelect}function m(){return e.openType==="Popup"}return{checkPaination:a,checkMultiSelect:i,checkColumnOptions:l,isDoubleList:r,getNavigationSize:f,isTreeList:s,navIsTreeList:u,navIsList:d,isLoadAll:c,isPathCodeTree:h,isEnableCascadeCheck:p,isDropdownMode:m}}function tr(e,n,o){var l;const a=t.ref(e.searchFields||[]),i=t.ref(((l=e.navigation)==null?void 0:l.searchFields)||[]);return t.watch(()=>n==null?void 0:n.searchFields,r=>{a.value=r}),t.watch(()=>o==null?void 0:o.searchFields,r=>{i.value=r}),{searchFieldItems:a,navSearchFieldItems:i}}function td(e){const n=t.reactive({}),o=t.reactive({}),a=t.reactive({}),i=t.reactive({}),l=t.reactive({}),r=t.ref([]),s=t.ref(),u=t.reactive({}),d=t.ref(!1),f=["displayType","treeToList","navTreeToList","showSelections","showNavigation","multiSelect","mappingFields","loader","idField","textField","userDataKey","dialog","expandLevel","treeInfo","navTreeInfo","onlySelectLeaf","loadTreeDataType","uri","enableFullTree","cascadeValue","showCascadeControl","enableCascade"];function c(){f.forEach(h=>{u[h]=e[h]})}return c(),{pageInfoState:n,lookupState:o,navigationState:a,queryState:i,searchState:l,selectionState:r,unSelectDataId:s,lookupOptions:u,searchValueChanged:d}}const Cn=t.ref(),Vt="F_LOOKUP_HTTP_COMPOSITION_TOKEN";function nd(e,n){const o=t.inject("FLoadingService"),a=t.inject(Xi),i=td(e),{pageInfoState:l,lookupState:r,navigationState:s,lookupOptions:u,searchValueChanged:d}=i,{searchFieldItems:f,navSearchFieldItems:c}=tr(e,r,s),h=t.ref(e.idValue),p=t.ref(!1),m=()=>{var D;const j=(D=u.displayType)==null?void 0:D.toUpperCase();return j===ut.Tree||j===ut.TreeList},g=(j,D=!1)=>{if(j){const{layerType:O,dataField:L,parentField:z,pathField:G,layerField:J,isDetailField:te,loadDataType:W}=j,q={layerType:O,dataField:L,parentField:z,pathField:G,layerField:J,isDetailField:te,loadDataType:W},{onlySelectLeaf:R,loadTreeDataType:H}=u;q.onlySelectLeaf=R,q.loadDataType=H,D?u.navTreeInfo=Object.assign(u.navTreeInfo||{},q):u.treeInfo=Object.assign(u.treeInfo||{},q)}};function y(j,D){if(D==null||!D.trim())return[];const O=Array.from(new Set(D.trim().split(" ").filter(G=>G.trim())));if(!j||!O.length)return[];const L=(j||[]).map((G,J)=>{const te=O.map((W,q)=>({filterField:G.value,value:W,lbracket:"",rbracket:"",relation:ko.And,compare:Ji.Like}));return te.length&&(te.length>1&&(te[0].lbracket="(",te[te.length-1].rbracket=")"),te[te.length-1].relation=ko.Or),te}).filter(G=>G.length);let z=[];return L&&L.length&&(z=Fe.flatten(L),z.length>1&&(z[0].lbracket+="(",z[z.length-1].rbracket+=")"),z[z.length-1].relation=0),z}function v(){let{expandLevel:j}=u;return j&&!Fe.isNaN(j)&&(j=j<-1?-1:j),j}function b(j,D){const O={};O.category=D;let L=null,z=null;if(j!=null&&j.search){const{field:G,value:J,isNavigation:te,type:W}=j.search,q=W||"like";if(J&&(O.searchValue=J.trim()),O.searchField=G?G.trim():"*",O.searchType=q,te&&(O.category="navsearch"),!e.enableMultiFieldSearch&&O.searchField==="*"){const R=te?c.value:f.value,H=y(R,J);H&&H.length&&(te?L=H:z=H),J===""&&O.category==="search"&&!z&&!L&&(O.category="all")}}return m()&&(O.layerNum=v()),{searchParam:O,navSearchConditions:L,searchConditions:z}}function w(j){var O,L;if(j==="fav")return{pageIndex:1,pageSize:500};let D="default";return j==="navsearch"&&(D="navigation"),{pageIndex:((O=l[D])==null?void 0:O.index)||1,pageSize:((L=l[D])==null?void 0:L.size)||20}}function C(j){const D={},O=(j==null?void 0:j.action)||"all",{searchParam:L,navSearchConditions:z,searchConditions:G}=b(j,O);G&&(D.searchConditions=G),z&&(D.navSearchConditions=z),D.enableFullTree=e.enableFullTree,D.searchValue=JSON.stringify(L);const{pageIndex:J,pageSize:te}=w(O);return D.pageIndex=J,D.pageSize=te,D.treeToList=e.treeToList,D.navTreeToList=e.navTreeToList,u.loadTreeDataType===Mt.default?D.loadTreeDataType="default":D.loadTreeDataType=u.loadTreeDataType===Mt.all?"loadall":"layerload",j!=null&&j.relationFilter&&(D.relationFilter=[...j.relationFilter]),j!=null&&j.navNodePathCode&&(D.navPathCode=j.navNodePathCode),j.selectedInfo&&(D.selectedInfo=j.selectedInfo),D.customData=t.toRaw(Cn.value),D}function x(j){return j==null?void 0:j.map(D=>(D.resizable=!0,D))}function T(j,D){return j.map(O=>{const L=D==null?void 0:D.find(z=>z.field.toLowerCase()===O.value.toLowerCase());return L&&(O.label=L.title),O})}function S(j){j.columns&&(j.columns=x(j.columns),j.searchFields&&(j.searchFields=T(j.searchFields,j.columns))),j.navigation&&j.navigation.columns&&(j.navigation.columns=x(j.navigation.columns),j.navigation.searchFields&&(j.navigation.searchFields=T(j.navigation.searchFields,j.navigation.columns)))}function V(){return u.loader||a&&a.getData.bind(a)}function N(j){const D=V();return D?D(u.uri,j).then(O=>(S(O),d.value=!1,O)):new Promise((O,L)=>{O({columns:[...e.columns],items:[...e.data],searchFields:[...e.searchFields],navigation:{...e.navigation}})})}function k(j){const D=v();return D===-1?!0:D===0?!1:j<=D}function I(j,D=!1,O="layer"){j.forEach(L=>{var z;L.collapse=D?!1:u.loadTreeDataType==="all"?!k(Ie.resolveField(L.data,O)):!(L.expanded??!0),L.hasChildren=!L.leaf,(z=L.children)!=null&&z.length&&I(L.children,D,O)})}async function E(j,D){var z;const O=C(j),L=o==null?void 0:o.show();try{let G=await N(O);if(u.displayType!==G.displayType&&j.action!=="navsearch"&&(u.displayType=G.displayType),m()){const{items:J,treeInfo:te}=G.navigation||G;if(u.loadDataType===Mt.default&&(u.loadTreeDataType=(te==null?void 0:te.loadDataType)||Mt.all),J!=null&&J.length&&te){const{dataField:W,layerField:q}=te;I(J,!1,`${W}.${q}`)}}e.beforeLoadData&&(G=await e.beforeLoadData({data:G})),D(G)}finally{(z=L==null?void 0:L.value)==null||z.close()}}function _(j){p.value=j}function M(j,D){if(!D)return"";const{dataField:O,pathField:L}=D;return L?O?j[O][L]:Ie.resolveField(j,L):""}function F(j){const D=[];return(j.selectable||j.selectable===void 0)&&D.push(j),j.children&&j.children.length&&j.children.forEach(O=>{D.push(...F(O))}),D}function P(j,D=!1){var G;if(!(j!=null&&j.length))return j;const O=D?(G=u.navigation)==null?void 0:G.treeInfo:u.treeInfo,{dataField:L,layerField:z}=O||{};return L&&z&&I(j,!0,`${L}.${z}`),j}function B(){try{const j=h.value;return j!==""&&j!=null?j:""}catch(j){return console.error("Error in getIdValues:",j),""}}function $(){let j=B()||[];return Array.isArray(j)||(j=(""+j).split(e.separator)),{selectedIds:j,selected:!0}}return{includeChilds:p,updateIncludeChilds:_,idValues:h,getData:N,loadData:E,updateSearchFieldTitle:T,getPathCode:M,getChildNodes:F,lookupStates:i,httpService:a,lookupRequest:V,expandAllNodes:P,getIdQueryParams:$,setTreeInfo:g,getFieldValue:Ie.resolveField}}function nr(e,n){t.watch(()=>e.pagination,a=>{n.default=a}),t.watch(()=>{var a;return(a=e.navigation)==null?void 0:a.pagination},a=>{n.navigation=a});function o(a,i=!1){a&&(i?n.navigation={...n.navigation,...a}:n.default={...n.default,...a})}return{updatePageInfo:o}}const Rn="F_LOOKUP_USER_DATA_SERVICE";function od(e,n){const o=t.inject("FLoadingService",null),{lookupStates:a,lookupRequest:i,httpService:l}=n,{lookupOptions:r}=a,s=t.computed(()=>{const m=r.userDataKey||e.id;return m?Ie.encrypt(m):""}),u=t.reactive({key:s.value,data:{}});function d(){return l?l.getSettings(u.key).then(m=>(m&&m.textValue?u.data=JSON.parse(m.textValue):u.data={},e.enableUserData||(u.data.tabIndex=Ze.dataList),m)):Promise.resolve()}function f({width:m,height:g}){var y;u.data.size=((y=u.data)==null?void 0:y.size)||{},u.data.size={width:m,height:g}}function c(m=!1){if((e.enableUserData||m)&&l){const{key:g,data:y}=u,v={configkey1:g,configkey2:"",configkey3:"",textvalue:JSON.stringify(y)};return l==null?void 0:l.updateSettings(g,v)}return Promise.resolve()}function h(m){const g={category:"fav",favoriteIds:m.favoriteIds};return{searchValue:JSON.stringify(g),pageIndex:1,pageSize:500,treeToList:r.treeToList}}function p(){var v;const m=h({favoriteIds:(v=u.data)==null?void 0:v.favorites}),g=o==null?void 0:o.show(),y=i();return y?y(r.uri,m).then(b=>{var w;return(w=g.value)==null||w.close(),u.favoriteItems=b&&b.items||[],b}):Promise.resolve()}return{userDataState:u,setDialogSize:f,saveUserData:c,getFavoriteData:p,getUserData:d}}const nn=Symbol("FARRIS_LOOKUP_LOCALES");function ad(e){const{t:n}=Ge.useI18n();function o(d,f,c){return d===f?n(c):d}const a=o(e.placeholder,"请选择","lookup.placeholder"),i={datalist:n("lookup.datalist")||"数据列表",favorite:n("lookup.favorites")||"收藏夹"},l={ok:n("lookup.okText")||"确定",cancel:n("lookup.cancelText")||"取消",clear:n("lookup.selectedInfo.clear")||"取消已选",addFav:n("lookup.favoriteInfo.addFavTitle")||"收藏",removeFav:n("lookup.favoriteInfo.cancelFavTitle")||"取消收藏",selectionTotal:d=>n("lookup.selectedInfo.total",[d])},r={clearSelections:n("lookup.selectedInfo.confirm")||"您确认要取消所有选中记录吗?",addedFavSuccess:n("lookup.favoriteInfo.addFav")||"已添加到收藏夹。",cancelFavSuccess:n("lookup.favoriteInfo.cancelFav")||"已从收藏夹中移除。",mustChoosAdatarow:n("lookup.mustChoosAdatarow")||"请选择一条数据。",mustWriteSomething:n("lookup.mustWriteSomething")||"请输入关键字后查询。"},s={includechildren:n("lookup.includechildren")||"包含下级",both:n("lookup.cascade.enable")||"同步选择",up:n("lookup.cascade.up")||"包含上级",down:n("lookup.cascade.down")||"包含下级",disable:n("lookup.cascade.disable")||"仅选择自身"};return{searchColumns:{allColumns:n("lookup.allColumns")||"所有列",anyFields:n("lookup.anyFields")||"全部"},placeholder:a,tree:s,messages:r,tabs:i,buttons:l}}function Eo(e,n){const o=t.inject(pn.F_NOTIFY_SERVICE_TOKEN),a=t.inject(Rn),i=t.inject(nn),{userDataState:l}=a;l.data=l.data||{};const r="_favorite_",s=t.ref(!1);function u({id:v,data:b},w="add"){var x,T;if(v==null&&v==="")return;const C=v;l.data.favorites=((x=l.data)==null?void 0:x.favorites)||[],l.favoriteItems=l.favoriteItems||[],w==="add"?(s.value=!1,l.data.favorites=Array.from(new Set([...((T=l.data)==null?void 0:T.favorites)||[],C])),l.favoriteItems=[...l.favoriteItems,b]):(s.value=!0,l.data.favorites=l.data.favorites.filter(S=>S!==C),l.favoriteItems=l.favoriteItems.filter(S=>S[n]!==C)),a==null||a.saveUserData(!0).then(S=>{const V=w==="add"?i.messages.addedFavSuccess:i.messages.cancelFavSuccess;o==null||o.success({message:V,position:"top-center"})})}function d(v){return v?v.raw[n]:""}const f=t.computed(()=>v=>{var w,C;const b=d(v);return(C=(w=l.data)==null?void 0:w.favorites)==null?void 0:C.includes(b)});function c(v,b,w){v.stopPropagation();const C=d(b);u({id:C,data:b.raw},f.value(b)?"remove":"add")}const h=v=>f.value(v)?i.buttons.removeFav:i.buttons.addFav,p=(v,b)=>t.createVNode("button",{type:"button",onClick:w=>{c(w,b)},class:["btn btn-link f-icon f-icon-star-outline p-0",{"f-icon-star":f.value(b)}],style:"color: #ffbd8c;",title:h(b)},null),m=(v,b)=>b.disabled?"":p(v,b),g={field:r,title:"",width:50,fixed:"right",align:"center",formatter:p};function y(v,b,w=!1){const C=Fe.cloneDeep(b);e.enableFavorite&&(g.formatter=w?m:p,C.push(g)),v==null||v.updateColumns(C)}return{favorite:g,removeFavoriteItem:s,setColumns:y}}function Mo(e,n,o,a){const{selectionState:i,unSelectDataId:l,lookupOptions:r}=o,s=t.computed(()=>!(i.value&&i.value.length));a&&t.watch(()=>a.value,(u,d)=>{var f;if(u===Ze.dataList&&u!==d&&!s.value){const c=i.value.map(h=>h[r.idField]);(f=n.value)==null||f.selectItemByIds(c)}}),t.watch(s,(u,d)=>{var f;u&&((f=n.value)==null||f.clearSelection())}),e.showSelections&&r.multiSelect&&t.watch(l,u=>{var d;u&&((d=n.value)==null||d.unSelectItemByIds(u))})}const on=Symbol("LOOKUP_SELECTIONS_MANAGER");function or(e,n){const{selectionState:o,unSelectDataId:a,lookupOptions:i}=n,l=t.computed(()=>i.idField);function r(v){return v[l.value]}function s(){let v=new Map;return o.value&&o.value.length&&(v=new Map(o.value.map(b=>[b[l.value],b]))),v}function u(){o.value=[]}function d(){return o.value||[]}function f(){return o.value.map(v=>v[l.value])}function c(v){if(!v)return;if(!l.value){console.error("idField is required");return}const b=Array.isArray(v)?v:[v],w=s();b.forEach(C=>{w.delete(C)}),o.value=Array.from(w.values()),a.value=b}function h(v){return s().has(v)}function p(v,b=!0){if(!v)return;if(!l.value){console.error("idField is required");return}const w=Array.isArray(v)?v:[v];if(!w.length)return;if(!w.every(T=>l.value in T)){console.error("Some items do not have the specified idField:",l.value);return}const C=w.map(T=>T[l.value]);if(!i.multiSelect){if(C.length&&h(C[0]))return;u()}const x=s();if(b){const T=new Map(w.map(S=>[S[l.value],S]));C.forEach(S=>{x.has(S)||x.set(S,T.get(S))})}else C.forEach(T=>{x.delete(T)});o.value=Array.from(x.values())}function m(v){if(!v||!v.length)return;const b=v.map(w=>w.data);p(b)}function g(v){if(v){const b=v.raw[l.value];c(b)}}function y(v){!v||!v.length||c(v)}return{updateSelections:p,clearSelections:u,getSelectionIds:f,getSelections:d,unSelectionsByIds:c,selectTreeNodes:m,unSelectTreeNode:g,unSelectTreeNodes:y,isSelected:h,getPrimaryKey:r}}function ar(e,n){const{getSelectionIds:o}=or(e,n),{lookupOptions:a}=n;function i(s,u){s==null||s.updateDataSource(u||[])}function l(s){const u=o();if(u&&u.length){if(a.multiSelect){s==null||s.selectItemByIds(u);return}s==null||s.activeRowById(u[0])}}function r(s,u){i(s,u),l(s)}return{loadData:i,selectItemByIds:l,loadAndSelect:r}}function ir(e,n,o){const a=t.inject(bn,t.ref(Ze.dataList)),i=t.inject(Vt),l=t.inject(on),{lookupStates:r,loadData:s,includeChilds:u,getPathCode:d,getChildNodes:f}=i,{lookupState:c,navigationState:h,pageInfoState:p,searchState:m,lookupOptions:g}=r,{checkPaination:y,checkMultiSelect:v,checkColumnOptions:b,navIsTreeList:w,isLoadAll:C,isPathCodeTree:x}=Rt(e,r),{updatePageInfo:T}=nr(e,p),{updateSelections:S,isSelected:V,getPrimaryKey:N}=l,{loadAndSelect:k}=ar(e,r),I=y(e.pagination),E=v(),_=b(),M=t.ref(),F=t.ref([]),{navSelectedItems:P,getNavigationIdField:B,getRelationFilter:$}=o;T(I);const j=t.ref(p.default),{setColumns:D}=Eo(e,g.idField);t.watch(()=>p.default,Q=>{var oe;j.value=Q,(oe=M.value)==null||oe.updatePagination(Q)}),Mo(e,M,i.lookupStates,a);function O(Q,oe,X){const ne={total:oe};if(X){const{pageIndex:ie,pageSize:we,enablePager:le,pageList:de}=X;Object.assign(ne,{index:ie,size:we,enable:le})}else ne.enable=!1;T(ne),k(M.value,Q||[])}const L=t.computed(()=>{var ie;if(!((ie=P.value)!=null&&ie.length))return null;const Q=P.value,oe={relationFilter:$(Q)};if(!w()||!u.value)return oe;const{treeInfo:X}=h,ne={action:"navAllChildren",...oe};return x(X)?Object.assign(ne,{navNodePathCode:d(Q[0].data,X)}):ne}),z=t.watch([()=>c==null?void 0:c.columns,()=>c==null?void 0:c.items,()=>c==null?void 0:c.pageInfo,()=>c==null?void 0:c.total,()=>c==null?void 0:c.selectedData],([Q,oe,X,ne,ie])=>{M.value&&(Q&&D(M.value,Q),ie&&ie.length&&S(ie),oe&&O(oe,ne||0,X))});t.watch(()=>e.idValue,Q=>{F.value=Q.split(e.separator)});function G(Q){if(Q&&Q.length&&!g.multiSelect){const oe=N(Q[0]);if(V(oe))return}S(Q),n.emit("selectionsChanged",{items:Q})}function J(Q){S(Q==null?void 0:Q.raw,!1)}function te(){const Q={search:m.default,action:"list"};e.openType==="Modal"&&L.value&&Object.assign(Q,L.value),s(Q,oe=>{O(oe.items,oe.total||0,oe.pageInfo)})}const W=Fe.throttle(()=>{T({index:1}),te()},200),q=t.watch(()=>P==null?void 0:P.value,Q=>{if(g.uri){W();return}const oe=Q.map(X=>X[B()]);n.emit("navSelectionsChanged",{items:Q,ids:oe})}),R=t.watch(()=>m.default,Q=>{if(g.uri){W();return}n.emit("search",Q)}),H=t.watch(()=>u.value,()=>{if(g.uri&&P.value&&P.value.length){W();return}});function A(){z(),q(),R(),H()}t.watch(()=>g.displayType,Q=>{Q.toLowerCase()==="treelist"&&A()});function U({pageSize:Q,pageIndex:oe}){var ie;let X=oe;((ie=j.value)==null?void 0:ie.size)!==Q&&(X=1);const ne={size:Q,index:X,isNavigation:!1};if(T(ne),g.uri){te();return}n.emit("pageSizeChanged",ne)}function K(){return t.createVNode(In.FDataGrid,{ref:M,class:"lookup-datagrid",pagination:j.value,summary:{enable:!1},columnOption:_,idField:g.idField,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:E,selectionValues:F.value,onSelectionChange:G,onUnSelectItem:J,onChanged:U},null)}return{datagridRef:M,selectionValues:F,renderDataGrid:K,unwatches:A}}const wn=Symbol("LOOKUP_TREEROW_OPTIONS"),rr={cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1},collapseField:"collapse",hasChildrenField:"hasChildren"};function lr(e,n=!1){function o(a){(a.raw.addtional||a.raw.selectable===!1)&&(a.disabled=!0);const i=n?e.navTreeInfo:e.treeInfo;return i!=null&&i.onlySelectLeaf&&(a.disabled=!a.raw.leaf),a}return{customRowStatus:o}}function sr(e,n){const{lookupState:o,lookupOptions:a}=e;function i(y,v,b){return y.reduce((w,C)=>{var x;if(C.parents=[],v){const T=Fe.get(v.data,a.idField);C.parent=v,C.parents=[...b||[],T]}return C.id=Fe.get(C,a.idField),w.push(C),(x=C.children)!=null&&x.length&&w.push(...i(C.children,C,C.parents)),w},[])}function l(y){var v;return(v=o==null?void 0:o.flattenTreeNodes)==null?void 0:v.find(b=>b.id===y)}function r(y){var v;return((v=o==null?void 0:o.flattenTreeNodes)==null?void 0:v.filter(b=>{var w;return(w=b.parents)==null?void 0:w.includes(y)}))??[]}function s(y){var b;if(!y)return[];const v=l(y);return((b=v==null?void 0:v.parents)==null?void 0:b.map(w=>l(w)))??[]}function u(y){var C;if(!y)return[];const v=l(y),b=((C=v==null?void 0:v.parents)==null?void 0:C.map(x=>l(x)))??[],w=r(y);return[...b,...w]}function d(y,v=!0){const b=s(y).filter(C=>{var x;return!((x=C.children)!=null&&x.some(T=>{var S;return(S=e.selectionState.value)==null?void 0:S.some(V=>V[a.idField]===T.id)}))}),w=v?[]:r(y);return b.concat(w)}function f(y,v,b=!0){var C;const w={down:()=>r(y),up:()=>b?s(y):d(y),both:()=>b?u(y):d(y,!1)};return((C=w[v])==null?void 0:C.call(w))??[]}function c(y,v={},b=!1){const{field:w="*",value:C=""}=v,x=!!C,{layerType:T,dataField:S,pathField:V,layerField:N}=b?a.navTreeInfo:a.treeInfo,k=T==="parentId",I={category:b?"navchildren":"children",searchField:w,searchValue:C,searchType:"like"};if(k)I.parentId=y.raw.id;else{const _=y.raw[S];I.parentPath=Fe.get(_,V),I.parentLayer=Fe.get(_,N)}const E={searchValue:"",customData:Cn.value,enableFullTree:a.enableFullTree,loadTreeDataType:a.loadTreeDataType==="all"?"loadall":"layerload"};return x&&(E.enableFullTree=!1,E.loadTreeDataType="layerload",k&&(I.searchValue="",I.searchField="*")),E.searchValue=JSON.stringify(I),E}function h(y,v=!1){const{isEnableCascadeCheck:b}=n,{layerType:w}=v?a.navTreeInfo:a.treeInfo,C=a.loadTreeDataType!=="all"&&w==="pathcode"&&b()&&(a.cascadeValue==="both"||a.cascadeValue==="down");return y?y.data&&!y.leaf&&C:C}function p(y){const{dataField:v,pathField:b}=a.treeInfo,w=y.data[v],C=Fe.get(w,b);return{searchValue:JSON.stringify({category:"allChildren"}),parentsIds:[C],customData:Cn.value}}function m(y,v){let b=y,w=null;for(const C of v){const x=b.find(T=>T.data.id===C);if(!x)return null;w=x,b=x.children||[]}return w}function g(y,v,b){var V;if(!b)return;const w=l(v),C=[...(w==null?void 0:w.parents)??[],v],x=(y??[]).map(N=>({...N,hasChildren:!N.leaf,parents:[...C]})),T=m(o.flattenTreeNodes||[],C);T&&(T.children=[...x],(V=o.flattenTreeNodes)==null||V.push(...x));const{isDropdownMode:S}=n;t.nextTick(()=>{var I;if(b.addChildrenToNode(x,v),S())return;const N=((I=e.selectionState.value)==null?void 0:I.map(E=>E[a.idField]))??[],k=x.filter(E=>N.includes(E.id)).map(E=>E.id);k.length&&b.selectItemByIds(k)})}return{flattenTreeNodes:i,getParents:s,getChildren:r,getParentsAndChildren:u,getTreeNodeWithCascadeValue:f,buildGetChildrenQueryParams:c,needGetAllChildNodes:h,buildGetAllChildrenQueryParams:p,loadChildNodes:g}}function cr(e,n){const o=t.inject(bn,t.ref(Ze.dataList)),a=t.inject(Vt),{lookupStates:i}=a,{lookupState:l,searchState:r,lookupOptions:s}=i,u=t.inject(wn),d=t.inject(on),f=Rt(e,i),{checkMultiSelect:c,checkColumnOptions:h,isEnableCascadeCheck:p}=f,{setColumns:m}=Eo(e,s.idField),{selectTreeNodes:g,unSelectTreeNode:y,unSelectTreeNodes:v,updateSelections:b,getSelectionIds:w}=d,C=c(),x=h(),T=t.ref(),S=t.ref([]),{loadAndSelect:V}=ar(e,i),{loadData:N,expandAllNodes:k,getData:I}=a,{flattenTreeNodes:E,getTreeNodeWithCascadeValue:_,buildGetChildrenQueryParams:M,needGetAllChildNodes:F,buildGetAllChildrenQueryParams:P,loadChildNodes:B}=sr(i,f);function $(R,H=!1){H&&(R=k(R)),l.flattenTreeNodes=E(R||[]),V(T.value,R||[])}Mo(e,T,i,o);const j=t.watch([()=>l==null?void 0:l.columns,()=>l==null?void 0:l.items,()=>l==null?void 0:l.pageInfo,()=>l==null?void 0:l.total,()=>l==null?void 0:l.selectedData],([R,H,A,U,K])=>{T.value&&(K&&K.length&&b(K),R&&m(T.value,R,!0),$(H||[],l.action==="search"))});function D(R,H=!0){const{cascadeValue:A}=s;return p()&&A!==Ui.Disable?_(R,A,H).filter(K=>K.selectable||K.selectable===void 0).map(K=>K.id):[]}function O(R){g(R),n.emit("selectionsChanged",{items:R})}function L(R){y(R);const H=Fe.get(R.raw,s.idField),A=D(H);if(F(R.raw)){const U=P(R.raw);I(U).then(K=>{const oe=(K.items||[]).filter(ne=>!ne.addtional&&(ne.selectable||ne.selectable===void 0));oe&&oe.length&&g(oe);const X=(oe||[]).map(ne=>ne.id);v([H,...A,...X])})}else v([H,...A])}function z(R){const H=Fe.get(R.raw,s.idField),A=D(H);if(A.length&&T.value.selectItemByIds([H,...A]),F(R.raw)){const U=P(R.raw);I(U).then(K=>{const oe=(K.items||[]).filter(X=>!X.addtional&&(X.selectable||X.selectable===void 0));oe&&oe.length&&g(oe)})}}function G(R="list"){N({search:r.default,action:R},H=>{$(H.items,R==="search")})}const J=t.watch(()=>r.default,R=>{if(s.uri){G("search");return}n.emit("search",R)});function te(){j(),J()}t.watch(()=>s.displayType,R=>{R.toLowerCase()!=="treelist"&&te()});function W(R){if(T.value.hasChildren(R))return Promise.resolve();const H=R.raw.id,A=M(R,r.default);return I(A).then(U=>{B((U==null?void 0:U.items)??[],H,T.value)})}function q(){return t.createVNode(Qt.FTreeGrid,{class:"lookup-treegrid",ref:T,fit:!0,data:e.data,idField:s.idField,columns:e.columns,rowNumber:{enable:!1},columnOption:x,selection:C,showBorder:!0,virtualized:!0,displayField:"code",rowOption:u,hierarchy:rr,onSelectionChange:O,onUnSelectItem:L,onSelectItem:z,loadData:W},null)}return{treegridRef:T,selectionTreeValues:S,renderTreeGrid:q,unwatches:te}}const id={fields:{type:Array,default:()=>[]},showAllColumns:{type:Boolean,default:!0},isNavigation:{type:Boolean,default:!1},id:{type:String,default:""}},rd=t.defineComponent({name:"FLookupSearchBar",props:id,emits:["search"],setup(e,n){const o='<i id="'+e.id+'-icon-search" class="f-icon f-icon-search"></i>',a=t.inject(Vt),{queryState:i}=a.lookupStates,l=t.ref(e.fields||[]),r=t.ref(""),s=t.ref(i.value),u=t.ref(e.isNavigation),d=t.ref(),f=t.computed(()=>({field:r.value,value:s.value,isNavigation:u.value}));function c(){if(!l.value.length)return;let y="";e.showAllColumns&&(y="*"),y=l.value[0].value;const v=l.value.find(b=>!!b.isDefault);v&&(y=v.value),r.value=y}t.watch(()=>e.fields,y=>{l.value=y,c()});function h(){n.emit("search",f.value)}const p=Fe.debounce(()=>h(),300);function m(){s.value="",h()}function g(y){y.key==="Enter"&&p()}return t.onMounted(()=>{c(),u.value&&(s.value="")}),()=>t.createVNode("div",{class:"fv-lookup-search-bar d-flex flex-row"},[t.createVNode("div",{style:"width: 160px;"},[t.createVNode(Xt.FComboList,{ref:d,data:l.value,textField:"label",valueField:"value",idField:"value",modelValue:r.value,"onUpdate:modelValue":y=>r.value=y,enableClear:!1},null)]),t.createVNode("div",{class:"f-utils-fill ml-2"},[t.createVNode(Nn.FButtonEdit,{buttonContent:o,maxLength:200,modelValue:s.value,"onUpdate:modelValue":y=>s.value=y,onClickButton:h,enableClear:!0,onClear:m,onKeyup:g,popupOnClick:!0,id:e.id+"-search-bar"},null)])])}});function _o(e,n,o,a){const{lookupState:i,searchState:l,navigationState:r}=o,{searchFieldItems:s,navSearchFieldItems:u}=tr(e,i,r),d=t.ref([]),f=t.ref([]);function c(g,y=!1){let v=g;e.searchAnyField&&(v=[{label:a.searchColumns.allColumns||"所有列",value:"*"}].concat(g)),y?f.value=v:d.value=v}c(s.value),c(u.value,!0),t.watch(()=>s.value,g=>{c(g)}),t.watch(()=>u.value,g=>{c(g,!0)});function h(g){const y={...g};if(n){l.navigation=y;return}l.default=y}const p=t.computed(()=>n?f.value||[]:d.value||[]);function m(){if(e.enableSearchBar&&p.value.length>0)return t.createVNode("div",{class:"p-2"},[t.createVNode(rd,{fields:p.value,id:e.id,showAllColumns:e.searchAnyField,isNavigation:n,onSearch:h},null)])}return{renderSearchBar:m}}function ld(e,n){var te;const o=t.inject(wn),a=t.inject(Vt),i=t.inject(nn),{loadData:l,lookupStates:r,expandAllNodes:s,getFieldValue:u,getData:d}=a,{navigationState:f,pageInfoState:c,searchState:h,lookupOptions:p}=r,{renderSearchBar:m}=_o(e,!0,r,i),g=Rt(e,r),{checkPaination:y,navIsList:v,navIsTreeList:b}=g,{updatePageInfo:w}=nr(e,c),C=t.ref([]),{buildGetChildrenQueryParams:x,loadChildNodes:T}=sr(r,g);if(v()){const W=y((te=e.navigation)==null?void 0:te.pagination);w(W,!0)}const S=t.ref(c.navigation),V={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,keepSelectingOnClick:!1},N={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},k=t.ref(),I=t.ref(),E=t.ref("id");t.watch(()=>c.navigation,W=>{var q;S.value=W,(q=I.value)==null||q.updatePagination(W)});function _(W,q,R){var H,A,U;if(W=W||[],v()){const K={total:q};if(R){const{pageIndex:Q,pageSize:oe,enablePager:X,pageList:ne}=R;Object.assign(K,{index:Q,size:oe,enable:X})}w(K,!0),(H=I.value)==null||H.updateDataSource(W)}else b()&&((A=h.navigation)!=null&&A.value&&(W=s(W,!0)),(U=k.value)==null||U.updateDataSource(W))}function M(W){var q,R;v()?(q=I.value)==null||q.updateColumns(W):b()&&((R=k.value)==null||R.updateColumns(W))}t.watch([()=>f==null?void 0:f.columns,()=>f==null?void 0:f.items,()=>f==null?void 0:f.pageInfo,()=>f==null?void 0:f.total],([W,q,R,H])=>{W&&M(W),_(q,H||0,R)}),t.watch(()=>f==null?void 0:f.idField,W=>{E.value=W||"id"});function F(W){C.value=W}function P(W){C.value=W}function B(){l({search:h.navigation,action:"navsearch"},W=>{_(W.items,W.total||0,W.pageInfo)})}t.watch(()=>h.navigation,W=>{if(p.uri){w({index:1},!0),B();return}n.emit("search",W)});function $({pageSize:W,pageIndex:q}){var A;let R=q;((A=S.value)==null?void 0:A.size)!==W&&(R=1);const H={size:W,index:R};if(w(H,!0),p.uri){B();return}n.emit("pageSizeChanged",H)}function j(W){if(k.value.hasChildren(W))return Promise.resolve();const q=W.raw.id,R=x(W,h.navigation,!0);return d(R).then(H=>{T((H==null?void 0:H.items)??[],q,k.value)})}function D(){return t.createVNode(Qt.FTreeGrid,{ref:k,fit:!0,idField:E.value,rowNumber:{enable:!1},columnOption:N,selection:V,virtualized:!0,showBorder:!0,rowOption:o,hierarchy:rr,onSelectionChange:F,loadData:j},null)}function O(){return t.createVNode(In.FDataGrid,{ref:I,pagination:S.value,summary:{enable:!1},columnOption:N,idField:E.value,rowNumber:{enable:!1},showBorder:!0,fit:!0,virtualized:!0,selection:V,onSelectionChange:P,onChanged:$},null)}function L(){if(b())return D();if(v())return O()}function z(){return t.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[m(),t.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[L()])])}function G(){return E.value}function J(W){return f.relations&&f.relations.length?f.relations.map(R=>{const{groupField:H,helpField:A}=R,U={fieldName:A,fieldValue:""},K=W.map(Q=>u(Q,H));return U.fieldValue=K.join(","),U}):""}return{renderNavigation:z,selectedItems:C,getNavigationIdField:G,getRelationFilter:J}}function sd(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const cd=t.defineComponent({name:"LookupContainer",props:$n,emits:["update:modelValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","changeDialogOptions","clearSearch"],setup(e,n){t.inject(bn,t.ref(Ze.dataList));const o=t.inject(Vt),a=t.inject(nn),{lookupStates:i,getIdQueryParams:l}=o,{lookupState:r,navigationState:s,queryState:u,lookupOptions:d}=i,{renderSearchBar:f}=_o(e,!1,i,a),{isDoubleList:c,getNavigationSize:h,isTreeList:p}=Rt(e,i),{renderNavigation:m,selectedItems:g,getNavigationIdField:y,getRelationFilter:v}=ld(e,n),{renderTreeGrid:b,unwatches:w}=cr(e,n),{renderDataGrid:C,unwatches:x}=ir(e,n,{navSelectedItems:g,getNavigationIdField:y,getRelationFilter:v}),T=t.computed(()=>p()?b:C),S=h();function V(I){var _;const E=(_=d.dialog)==null?void 0:_.title;E&&E!==Gi&&(I=E),n.emit("changeDialogOptions",{title:I})}function N(I,E){r.action=E,p()?x():w(),I.navigation&&(Object.keys(I.navigation).forEach(_=>{var M;s[_]=(M=I.navigation)==null?void 0:M[_]}),I.navigation.treeInfo&&(o==null||o.setTreeInfo(I.navigation.treeInfo,!0)),delete I.navigation),I.treeInfo&&(o==null||o.setTreeInfo(I.treeInfo)),Object.keys(I).forEach(_=>{r[_]=I[_]})}function k(){const I={};e.enableToSelect&&(I.selectedInfo=l(),u.value!=null&&(I.search={field:"*",value:u.value,type:"like"},I.action="search")),o==null||o.loadData(I,E=>{t.nextTick(()=>{N(E,(I==null?void 0:I.action)||""),V(E.title||"")})})}return t.onMounted(()=>{k(),document.body.classList.add("lookup-modal-open")}),t.onUnmounted(()=>{document.body.classList.remove("lookup-modal-open")}),()=>{let I;return t.createVNode(Ft.FLayout,null,{default:()=>[c()&&e.showNavigation&&t.createVNode(Ft.FLayoutPane,{position:"left",width:S==null?void 0:S.width,minWidth:S==null?void 0:S.minWidth},sd(I=m())?I:{default:()=>[I]}),t.createVNode(Ft.FLayoutPane,{position:"center"},{default:()=>[t.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[f(),t.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[T.value()])])]})]})}}}),ud={multiSelect:{type:Boolean,default:!1},idField:{type:String,default:"id"},displayType:{type:String,default:"list"},selectedIds:{type:Array,default:[]},showSelections:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!0}},dd=t.defineComponent({name:"FLookupFavorite",props:ud,setup(e,n){const o=t.inject(wn),{userDataState:a,getFavoriteData:i}=t.inject(Rn),l=t.inject(bn,t.ref(Ze.dataList)),r=t.inject(on),s=t.inject(Vt),{lookupStates:u,expandAllNodes:d}=s,f=t.computed(()=>u.lookupOptions.idField||"id"),c=t.ref(e.selectedIds),{setColumns:h,removeFavoriteItem:p}=Eo(e,f.value),{isTreeList:m}=Rt(e,u),{updateSelections:g,unSelectTreeNode:y,selectTreeNodes:v}=r,b=t.ref(),w=t.ref(),C=t.computed(()=>m()?w.value:b.value);Mo(e,C,u);function x(){return a.data&&a.data.favorites&&a.data.favorites.length}function T(F){C.value.clearSelection(),F&&F.length&&C.value.selectItemByIds(F)}t.watch(()=>e.selectedIds,(F,P)=>{JSON.stringify(F)!==JSON.stringify(P)&&(c.value=F,c.value.length?T(c.value):C.value.clearSelection())});function S(F,P){P&&P.length&&h(C.value,P,m()),F&&(m()&&(F=d(F)),C.value.updateDataSource(F||[])),T(c.value||[])}function V(){i().then(F=>{F?S(F.items||[],F.columns):S([],null)})}t.watch(()=>l.value,(F,P)=>{var B;F===Ze.favorite&&(x()?V():S([],(B=u.lookupState)==null?void 0:B.columns))}),t.watch(()=>p.value,(F,P)=>{l.value===Ze.favorite&&F&&(m()?V():S(a.favoriteItems||[],null),p.value=!1)});const N={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},k={enableSelectRow:!0,multiSelect:e.multiSelect,showCheckbox:e.multiSelect,multiSelectMode:"OnCheckAndClick"};function I(F){m()?v(F):g(F)}function E(F){m()?y(F):g(F==null?void 0:F.raw,!1)}function _(){return t.createVNode(Qt.FTreeGrid,{ref:w,fit:!0,idField:f.value,rowNumber:{enable:!1},columnOption:N,selection:k,showBorder:!0,virtualized:!0,rowOption:o,onSelectionChange:I,onUnSelectItem:E},null)}function M(){return t.createVNode(In.FDataGrid,{ref:b,pagination:{enable:!1},summary:{enable:!1},columnOption:N,idField:f.value,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:k,onSelectionChange:I,onUnSelectItem:E},null)}return()=>m()?_():M()}}),fd={id:{type:String},title:{type:String},height:{type:Number,default:50},draggable:{type:Boolean,default:!0},enableFavorite:{type:Boolean,default:!1},useHttpComposition:{type:Object,default:{}},userDataService:{type:Object,default:{}},useDialog:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},showIncludeChildNodes:{type:Object,default:{show:!0,value:!1}},showCascadeControl:{type:Boolean,default:!1},isMaximized:{type:Boolean,default:!1},locales:{type:Object,default:{}}},pd={idField:{type:String,default:"id"},parentRef:{type:HTMLElement,default:null},popoverOffsetX:{type:Number,default:0}},md=t.defineComponent({props:pd,setup(e,n){const o=t.inject("FMessageBoxService"),a=t.inject(on),i=t.inject(Vt),{lookupState:l,selectionState:r}=i.lookupStates,s=t.inject(nn),{clearSelections:u,unSelectionsByIds:d}=a,f=t.ref(),c=t.computed(()=>f),h=t.ref(),p=t.ref(e.popoverOffsetX||-15);t.watch(()=>e.popoverOffsetX,_=>{p.value=_});const m=t.computed(()=>p.value===-15?10:100),g=t.ref(e.parentRef),y="_remove_selected_";function v(_,M,F){_.stopPropagation();const P=M.raw[e.idField];d(P)}const b={field:y,title:"",width:50,fixed:"right",align:"center",formatter:(_,M)=>t.createVNode("button",{type:"button",onClick:F=>{v(F,M)},class:"btn btn-link f-icon f-icon-x p-0",style:"color: #dd2438;"},null)},w=t.computed(()=>{const _=Fe.cloneDeep((l==null?void 0:l.columns)||[]);if(_.length)return _.push(b),_});t.watch(()=>e.parentRef,_=>{g.value=_});const C={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},x={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,showSelectAll:!1,multiSelectMode:"OnCheckAndClick"},T=t.ref({width:"0px",height:"0px"});let S;function V(){var B,$;const _=((B=g.value)==null?void 0:B.offsetHeight)-100,M=200,F=r.value.length*28+60,P=F>_?_:F<M?M:F;T.value={width:(($=g.value)==null?void 0:$.offsetWidth)-20+"px",height:P+"px"}}t.watch(()=>h.value,_=>{_&&(_.updateColumns(w.value),_.updateDataSource(Fe.cloneDeep(r.value||[])),V())}),t.watch(()=>r.value,_=>{var M;(M=h.value)==null||M.updateDataSource(Fe.cloneDeep(_||[]),{keepScrollTop:!0})}),t.watch(()=>g.value,_=>{S=new ResizeObserver(()=>{g.value&&V()}),S.observe(g.value)});const N=t.computed(()=>(r.value||[]).length>0),k=t.computed(()=>({display:"flex","align-items":"center",opacity:N.value?1:.4,cursor:N.value?"pointer":"not-allowed",pointerEvents:N.value?"auto":"none"}));function I(){const _=s==null?void 0:s.messages.clearSelections;o==null||o.question(_,"",()=>{u()})}t.onMounted(()=>{V()}),t.onUnmounted(()=>{S&&g.value&&S.unobserve(g.value)});function E(){var _;(_=c.value)==null||_.value.hide()}return n.expose({hidePopup:E}),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"d-flex flex-row align-items-center",style:"line-height:24px"},[t.withDirectives(t.createVNode("div",{style:k.value,innerHTML:s.buttons.selectionTotal(r.value.length)},null),[[t.resolveDirective("popover"),c.value,"toggle"]]),N.value&&t.createVNode("button",{class:"btn btn-link btn-sm p-0 pl-2",style:"line-height:24px",onClick:I},[s.buttons.clear])]),t.createVNode(ja,{id:"lookup-selected-popover",customStyles:{filter:"drop-shadow(#c5c5c5 0px 0px 6px)"},offsetX:p.value,arrowOffsetX:m.value,ref:f,placement:"top-left",keepWidthWithReference:!1,fitContent:!0},{default:()=>{var _;return[t.createVNode("div",{style:T.value},[((_=f.value)==null?void 0:_.isShow)&&t.createVNode(In.FDataGrid,{ref:h,pagination:{enable:!1},summary:{enable:!1},columnOption:C,idField:e.idField,rowNumber:{enable:!1},showBorder:!1,virtualized:!0,fit:!0,selection:x},null)])]}})])}}),hd=t.defineComponent({props:{modelValue:{type:Boolean,default:!1},label:{type:String,default:"包含下级"}},emits:["update:modelValue"],setup(e,n){const o=t.ref(e.modelValue);function a(i){i.stopPropagation(),o.value=!o.value,n.emit("update:modelValue",o.value)}return()=>t.createVNode("div",{class:"custom-control custom-checkbox mb-0",onClick:a},[t.withDirectives(t.createVNode("input",{id:"lookup-include-childs-input","onUpdate:modelValue":i=>o.value=i,title:"checkbox-input",type:"checkbox",class:"custom-control-input"},null),[[t.vModelCheckbox,o.value]]),t.createVNode("label",{class:"custom-control-label",style:"padding-left: 1.2rem;"},[e.label])])}}),gd=t.defineComponent({name:"FLookupCascadeSelector",props:["modelValue"],emits:["update:modelValue"],setup(e,n){const o=t.inject(nn),a=t.ref(),i=t.ref(e.modelValue);return t.watch(()=>i.value,(l,r)=>{l!==r&&n.emit("update:modelValue",l)}),Fo.forEach(l=>{l.text=o.tree[l.value]}),()=>t.createVNode("div",{style:"width: 130px",class:"ml-3"},[t.createVNode(Xt.FComboList,{ref:a,data:Fo,textField:"text",valueField:"value",idField:"value",modelValue:i.value,"onUpdate:modelValue":l=>i.value=l,enableClear:!1,minPanelWidth:130,placement:"top-left"},null)])}}),yd=t.defineComponent({name:"FLookupModalContainer",props:fd,emits:["closeModal","maximize"],setup(e,n){const o=t.ref(Ze.dataList);t.provide(bn,o),t.provide(Vt,e.useHttpComposition),t.provide(Rn,e.userDataService),t.provide(on,e.selectionsManager),t.provide(nn,e.locales);const{tabs:a,buttons:i,tree:l}=e.locales,r=t.reactive(e.showIncludeChildNodes),s=t.ref(r.value),{lookupOptions:u}=e.useHttpComposition.lookupStates,d=u.dialog,f=t.computed(()=>u.displayType.toUpperCase()===ut.TreeList),c=lr(u,f.value);t.provide(wn,c);const h=t.ref(e.isMaximized);t.watch(()=>e.isMaximized,(M,F)=>{h.value=M});const p=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:h.value}));t.ref();const m=t.computed(()=>r.show&&o.value===Ze.dataList&&u.displayType&&f.value),g=t.computed(()=>m.value?-99:-15);t.watch(()=>s.value,(M,F)=>{e.useHttpComposition.updateIncludeChilds(M)}),t.watch(()=>e.showIncludeChildNodes,(M,F)=>{r.value=M,e.useHttpComposition.updateIncludeChilds(M.value)});const{userDataState:y}=e.userDataService,{cancelDialog:v,submitDialog:b}=e.useDialog,w=t.ref(),C=t.ref();function x(M){n.emit("maximize",M)}function T(M){n.emit("closeModal",M)}async function S(M){await b()&&T(M)}async function V(M){await v()&&T(M)}function N(M){o.value=M,y.data.tabIndex=M}const k=t.computed(()=>({transform:`translate3d(${o.value===Ze.favorite?84:0}px, 0px, 0px)`})),I=t.computed(()=>M=>({visibility:o.value===M?"visible":"hidden",position:"absolute",top:0,transition:"all 0.3s ease-in",opacity:o.value===M?1:0})),E=t.computed(()=>{const M=e.enableFavorite?"50%":"100%",F=e.enableFavorite?100:80,P=d.showMaxButton||d.showCloseButton?F:0;return{maxWidth:`calc(${M} - ${P}px)`}});function _(M){M.stopPropagation(),document.body.click()}return t.onMounted(()=>{var M;y.data.favorites&&y.data.favorites.length&&(o.value=((M=y.data)==null?void 0:M.tabIndex)||Ze.dataList),m.value&&e.useHttpComposition.updateIncludeChilds(s.value)}),()=>t.createVNode("div",{class:"d-flex flex-column h-100 lookup-modal",ref:w},[t.createVNode("div",{class:"d-flex justify-content-between align-items-center px-3 lookup-modal-header"},[t.createVNode("div",{class:"lookup-modal-header-title",title:e.title,style:E.value},[e.title]),e.enableFavorite&&t.createVNode("div",{class:"d-flex justify-content-center w-100"},[t.createVNode("div",{class:"lookup-modal-header-tabs-container d-flex",onMousedown:_},[t.createVNode("div",{class:"active-tab",style:k.value},null),t.createVNode("div",{class:["tab-item","d-flex",{active:o.value===Ze.dataList}],onClick:()=>N(Ze.dataList)},[a.datalist]),t.createVNode("div",{class:["tab-item","d-flex",{active:o.value===Ze.favorite}],onClick:()=>N(Ze.favorite)},[a.favorite])])]),(d.showMaxButton||d.showCloseButton)&&t.createVNode("div",{class:"d-flex flex-row h-100 justify-content-end align-items-center lookup-modal-header-buttons",onMousedown:M=>M.stopPropagation()},[d.showMaxButton&&t.createVNode("span",{class:p.value,onClick:x,style:"cursor: pointer"},null),d.showCloseButton&&t.createVNode("span",{class:"f-icon modal_close ml-2",onClick:T,style:"cursor: pointer;position: relative;top: 1px;"},null)])]),t.createVNode("div",{class:"f-utils-fill",style:"position: relative;"},[t.createVNode("div",{class:"h-100 d-flex flex-column f-utils-fill w-100",style:I.value(Ze.dataList)},[n.slots.default&&n.slots.default()]),t.createVNode("div",{class:"h-100 d-flex flex-column px-2 f-utils-fill w-100",style:I.value(Ze.favorite)},[n.slots.fav&&n.slots.fav()])]),t.createVNode("div",{class:"modal-footer"},[t.createVNode("div",{class:"f-utils-fill align-items-center d-flex flex-row"},[m.value&&t.createVNode(hd,{modelValue:s.value,"onUpdate:modelValue":M=>s.value=M,label:l.includechildren},null),e.showSelectedList&&t.createVNode(md,{popoverOffsetX:g.value,parentRef:w.value,ref:C,idField:u.idField},null),e.showCascadeControl&&t.createVNode(gd,{modelValue:u.cascadeValue,"onUpdate:modelValue":M=>u.cascadeValue=M},null)]),t.createVNode("button",{id:e.id+"-btncancel",name:"cancel",type:"button",class:"btn btn-secondary",onClick:V},[i.cancel]),t.createVNode("button",{id:e.id+"-btnok",name:"accept",type:"button",class:"btn btn-primary",onClick:S},[i.ok])])])}});function An(e,n){if(e.context){if(!n&&e.context.editor){for(const a in e.context.editor)delete e.context.editor[a];return}const{editor:o}=e.context;o?Object.assign(o,n):e.context.editor=n}}function vd(e,n,o,{dictPicked:a,modelValue:i,buttonEditInstance:l,userDataService:r,useHttp:s,lookupLocales:u}){const d=t.inject(pn.F_NOTIFY_SERVICE_TOKEN,null),f=t.inject("FLoadingService"),c=t.ref(),h=t.ref("accept"),p=t.ref(),{lookupStates:m}=s,{queryState:g,lookupState:y,navigationState:v,pageInfoState:b,searchState:w,selectionState:C,lookupOptions:x}=m,{isDoubleList:T}=Rt(e,m),S=Object.assign({},Hu,x.dialog);x.dialog=S;const V={position:"top-center"},N=()=>{const R=o.value.map(A=>Ie.resolveField(A,x.textField)).join(e.separator),H=o.value.map(A=>A[x.idField]).join(e.separator);i.value=R,s.idValues.value=H,n.emit("update:modelValue",R),n.emit("update:idValue",H)},k=async()=>{const R={items:o.value,mappingFields:x.mappingFields};return n.emit("update:dataMapping",R),An(e,R),await a(R)};async function I(){return N(),await k()}function E(){return h.value="cancel",!0}const _=R=>{Object.keys(R).forEach(H=>{delete R[H]})},M=R=>{R.forEach(H=>{_(H)})};function F(){f==null||f.clearAll(),M([y,v,b,w,g]),C.value=[],p.value=null}async function P(){var H;if(o.value.length===0)return d==null||d.warning({message:u.messages.mustChoosAdatarow,...V}),{shouldUpdate:!1};const R=await((H=e.beforeSelectData)==null?void 0:H.call(e,{items:o.value}));return{shouldUpdate:typeof R=="boolean"?R:(R==null?void 0:R.canSelect)??!0,message:R==null?void 0:R.message}}async function B(R){return typeof R=="object"?{shouldClose:R.closeDialog,message:R.message}:{shouldClose:R,message:""}}async function $(){const{shouldUpdate:R,message:H}=await P();if(!R)return H&&(d==null||d.warning({message:H,...V})),!1;const A=await I(),{shouldClose:U,message:K}=await B(A);return U?(h.value="accept",!0):(K&&(d==null||d.warning({message:K,...V})),!1)}function j(){const R=(S==null?void 0:S.height)||620,H=(S==null?void 0:S.width)||590,A=(S==null?void 0:S.minWidth)||300,U=(S==null?void 0:S.minHeight)||200,K={height:R,width:H,minWidth:A,minHeight:U};return T()&&(K.width=(S==null?void 0:S.width)||960),K}const{width:D,height:O,minHeight:L,minWidth:z}=j(),G=!0,J=G&&((S==null?void 0:S.resizeable)==null?!0:S==null?void 0:S.resizeable);S.rememberSize=S.rememberSize&&J;const te={title:S==null?void 0:S.title,fitContent:!1,showHeader:!1,dragHandle:".lookup-modal-header",height:O,width:D,minWidth:z,minHeight:L,resizeable:J,draggable:G,enableEsc:(S==null?void 0:S.enableEsc)==null?!0:S==null?void 0:S.enableEsc,closedCallback:(R,H)=>{const A={type:h.value,button:R==null?void 0:R.target};if((H==="esc"||H==="icon")&&(A.type="esc"),A.type==="accept"&&(A.items=o.value),(A.type==="cancel"||A.type==="esc")&&(i.value=e.modelValue),r&&e.enableUserData){r.saveUserData().then(()=>{F(),n.emit("dialogClosed",A)});return}F(),n.emit("dialogClosed",A)},showButtons:!1,resizeHandle:R=>{if(S.rememberSize){c.value=R;const{width:H,height:A}=R.newSize.size;!(R.isMaximized??!1)&&r.setDialogSize({width:Math.round(H),height:Math.round(A)})}},enableEnter:!0,onEnter:R=>{R.event.preventDefault(),!R.event.target.closest(".fv-lookup-search-bar")&&$().then(A=>{var U;if(A){const K=(U=l.value)==null?void 0:U.getModal();K&&K.close(R.event,"enter")}})}};async function W(){var R;if(e.enableUserData&&(await r.getUserData(),(R=r==null?void 0:r.userDataState)!=null&&R.data&&S.rememberSize)){const{size:H}=r.userDataState.data;H&&Object.assign(te,H)}}async function q(R){let H=!0;const A=e.dictPicking;if(A&&typeof A=="function"){const U=await A({customData:p,options:x});typeof U=="boolean"&&!U&&(H=!1),typeof U=="object"&&(U.canOpen?U.data&&(p.value=U.data):(H=!1,U.message&&(d==null||d.error({message:U.message,position:"top-center"}))))}return H&&await W(),H}return{modalOptions:te,beforeOpenDialog:q,dialogSize:c,customData:p,updateModelValue:I,cancelDialog:E,submitDialog:$,destroyed:F,setModelAndIdValue:N,runDictPickedAsync:k}}function bd(e){return{dictPicked:async({items:o,mappingFields:a})=>e.dictPicked&&typeof e.dictPicked=="function"?await e.dictPicked({items:o,mappingFields:a})??!0:!0}}function Cd(e,n,o,a){if(!e.editable)return;n.emit("update:modelValue",o),n.emit("update:idValue","");const i={mappingFields:a.mappingFields};An(e,i)}function wd(e,n,o){const a=t.computed(()=>e.textChangeType==="blur"||e.textChangeType==="any"),i=t.computed(()=>e.textChangeType==="enter"||e.textChangeType==="any"),{beforeOpenDialog:l,updateModelValue:r,selectedItems:s,openDialog:u,lookupOptions:d,useHttpComposition:f,isPopuped:c}=o,{updateSearchFieldTitle:h}=f,{lookupState:p,queryState:m,searchValueChanged:g}=f.lookupStates,y=t.ref(!1);function v(V){return Fe.isEmpty(V)&&g.value&&!c.value?(y.value=!0,g.value=!1,!1):(g.value&&(m.value=V),g.value)}function b(V){var k;if(!V||V.length!==1)return;const[N]=V;return(k=N.children)!=null&&k.length?b(N.children):N.data}function w(V,N){var I;if(!N||N.length!==1)return!1;const[k]=N;return V?(I=k.children)!=null&&I.length?b(k.children):k.data:k}async function C(V){const N={search:{field:"*",value:V,type:e.openType==="Modal"?"equal":"like"},action:"search"};g.value&&(document.body.classList.add("lookup-modal-open"),f.loadData(N,async k=>{var I;if(k.searchFields&&k.columns){const E=h(k.searchFields,k.columns);p.searchFields=E}if(g.value=!1,e.openType==="Modal"){const E=w(((I=k.displayType)==null?void 0:I.toLowerCase())==="treelist",k.items);if(E){s.value=[E],r(),m.value="",document.body.classList.remove("lookup-modal-open");return}u()}else p.action=V?"search":"list",p.items=k.items}))}function x(V,N){var I;let k=(I=V.target)==null?void 0:I.value;if(k!==""&&(k=k.trim()),v(k)){if(e.allowFreeInput){Cd(e,n,k,d);return}if(e.openType!=="Modal"&&!c.value){u(),g.value=!1;return}d.uri?C(k):n.emit("textChanged",{value:k,type:N?"blur":"enter"})}}function T(V){a.value&&x(V,!0)}function S(V){V.key==="Enter"&&i.value&&x(V,!1)}return{changeOnBlur:a,changeOnEnter:i,onInputBlur:T,onEnterKeyDown:S,isClear:y}}const Sd={height:{type:Number,default:500},width:{type:Number,default:500},useHttpComposition:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},enableToSelect:{type:Boolean,default:!0},uri:{type:String,default:""},hidePopup:{type:Function,default:null},fitColumns:{type:Boolean,default:!0},openType:{type:String,default:"Popup"},pagination:{type:Object,default:{enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1}},displayType:{type:String,default:ut.List},loadTreeDataType:{type:String,default:Mt.all},expandLevel:{type:Number,default:0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!1},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeStatus:{type:String,default:"both"},enableSearchBar:{type:Boolean,default:!0},searchAnyField:{type:Boolean,default:!0},locales:{type:Object,default:{}}},xd=t.defineComponent({name:"FLookupPopupContainer",props:Sd,emits:["selectItemsChanged"],setup(e,n){const o=e.locales,{lookupStates:a,getIdQueryParams:i}=e.useHttpComposition,{lookupState:l,navigationState:r,queryState:s,lookupOptions:u}=a,{isTreeList:d}=Rt(e,a);_o(e,!1,a,o);const f=t.computed(()=>({width:`${e.width}px`,height:`${e.height}px`,padding:"5px"})),{renderDataGrid:c}=ir(e,n,{}),{renderTreeGrid:h}=cr(e,n),p=t.computed(()=>d()?h:c);function m(){const g={};e.enableToSelect&&(g.selectedInfo=i(),s.value!=null&&(g.search={field:"*",value:s.value,type:"like"},g.action="search"));const y=e.useHttpComposition;y==null||y.loadData(g,v=>{t.nextTick(()=>{l.action=g.action,v.navigation&&(Object.keys(v.navigation).forEach(b=>{var w;r[b]=(w=v.navigation)==null?void 0:w[b]}),v.navigation.treeInfo&&(y==null||y.setTreeInfo(v.navigation.treeInfo,!0)),delete v.navigation),v.treeInfo&&(y==null||y.setTreeInfo(v.treeInfo)),Object.keys(v).forEach(b=>{l[b]=v[b]})})})}return t.onMounted(()=>{m()}),t.onUnmounted(()=>{var g;(g=e.hidePopup)==null||g.call(e)}),()=>t.createVNode("div",{style:f.value,class:"d-flex flex-column"},[p.value()])}});function Td(e,n,o,{useHttpComposition:a,selectionsManager:i,userDataService:l,updateModelValue:r,lookupLocales:s,destroyed:u,setModelAndIdValue:d,runDictPickedAsync:f}){t.provide(Rn,l),t.provide(Vt,a),t.provide(on,i);const{selectionState:c,queryState:h,lookupOptions:p}=a.lookupStates,m=lr(p,!1);t.provide(wn,m);const g=t.computed(()=>{var V;const S=(V=o.value)==null?void 0:V.popoverRef;return S?S.shown:!1});function y(){var S;(S=o.value)==null||S.hidePopup()}e.openType==="Popup"&&t.watch(()=>c.value,S=>{g.value&&e.multiSelect&&d()});const v=()=>{const{width:S,height:V}=e.dialog;return{width:S||460,height:V||380}},b=t.computed(()=>{var S;return(S=o.value)==null?void 0:S.popoverRef});async function w(){p.multiSelect?await f():await r(),g.value&&y(),h.value="",u()}function C(){var S;g.value||(S=o.value)==null||S.showPopup()}function x(){p.multiSelect||y()}function T(){const{width:S,height:V}=v();return t.createVNode(xd,t.mergeProps({width:S,height:V,useHttpComposition:a,locales:s,selectionsManager:i,hidePopup:w,onSelectionsChanged:x},e),null)}return{popoverInstance:b,isPopuped:g,renderPopup:T,showPopup:C}}const an=t.defineComponent({name:"FLookup",props:$n,emits:["update:modelValue","update:idValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","resize","dialogClosed","textChanged","clear","update:dataMapping"],setup(e,n){const o='<i id="'+e.id+'-icon_lookup" class="f-icon f-icon-lookup"></i>',a='<i id="'+e.id+'-icon_dropdown" class="f-icon f-icon-arrow-chevron-down"></i>',i=t.ref(),l=t.ref(e.modelValue),r=t.ref("");Cn.value=e.customData;const s=t.computed(()=>e.openType==="Popup"?"Popup":"Modal"),u=t.computed(()=>s.value==="Popup"?a:o),d=ad(e),f=nd(e),{lookupOptions:c,selectionState:h,searchValueChanged:p}=f.lookupStates,m=od(e,f),g=t.computed(()=>e.showSelections&&c.multiSelect),y=t.computed(()=>e.editable&&(s.value==="Modal"||!c.multiSelect)),v=t.computed(()=>e.showIncludeChildNodes&&e.showNavigation&&!c.navTreeToList),b=or(e,f.lookupStates),{dictPicked:w}=bd(e),{modalOptions:C,beforeOpenDialog:x,dialogSize:T,customData:S,updateModelValue:V,cancelDialog:N,submitDialog:k,destroyed:I,setModelAndIdValue:E,runDictPickedAsync:_}=vd(e,n,h,{dictPicked:w,modelValue:l,buttonEditInstance:i,userDataService:m,useHttp:f,lookupLocales:d}),M=Td(e,n,i,{useHttpComposition:f,selectionsManager:b,userDataService:m,updateModelValue:V,lookupLocales:d,destroyed:I,setModelAndIdValue:E,runDictPickedAsync:_}),{renderPopup:F,showPopup:P,isPopuped:B}=M;function $(){if(e.openType==="Popup"){P();return}i.value&&!i.value.getModal()&&i.value.openDialog()}const{onInputBlur:j,onEnterKeyDown:D,isClear:O}=wd(e,n,{beforeOpenDialog:x,updateModelValue:V,selectedItems:h,openDialog:$,modelValue:l,useHttpComposition:f,lookupOptions:c,usePopupComposition:M,isPopuped:B}),L=t.reactive(C),z=t.inject(Qn.F_MODAL_SERVICE_TOKEN);t.watch(()=>S.value,le=>{Cn.value=le}),t.watch(()=>e.modelValue,le=>{l.value=le});function G(le){f.idValues.value=le,le||(h.value=[]),n.emit("update:idValue",le)}t.watch(()=>e.idValue,le=>{G(le)}),t.onMounted(()=>{}),t.onUnmounted(()=>{An(e)}),t.watch(()=>T.value,le=>{n.emit("resize",le)});async function J(){n.emit("update:modelValue",""),G("");const le={items:null,mappingFields:c.mappingFields};n.emit("clear",le),An(e,le)}t.watch(()=>O.value,le=>{le&&(J(),O.value=!1)});function te(le){n.emit("search",le)}function W(le){n.emit("navSelectionsChanged",le)}function q(le){n.emit("pageIndexChanged",le)}function R(le){n.emit("pageSizeChanged",le)}async function H(le){const de=z==null?void 0:z.getCurrentModal();de&&de.updateModalOptions(le),le.title&&(r.value=le.title)}function A(le){const de=z==null?void 0:z.getCurrentModal();de&&de.close(le)}function U(le){const de=z==null?void 0:z.getCurrentModal();de&&de.maxDialog(le)}const K=t.computed(()=>{const le=z==null?void 0:z.getCurrentModal();return le==null?void 0:le.isMaximized}),Q=t.computed(()=>c.multiSelect&&c.showCascadeControl&&c.enableCascade&&ut.Tree===c.displayType.toUpperCase()&&!c.treeToList),oe=t.computed(()=>h.value&&h.value.length?h.value.map(le=>le[c.idField]):[]);function X(le){for(const de in c)le[de]!==void 0&&(c[de]=le[de])}const ne=Fe.debounce(le=>{j(le)},200);function ie(le){var he;let de=(he=le.target)==null?void 0:he.value;de!==""&&(de=de.trim()),p.value=le.target._value!==de,s.value==="Popup"&&p.value&&ne(le)}function we(){p.value=!1}return n.expose({openDialog:$,updateIdValue:G,mappingFields:c.mappingFields,idField:c.idField,setProps:X,clear:J}),()=>t.createVNode(Nn.FButtonEdit,{ref:i,id:e.id,modelValue:l.value,"onUpdate:modelValue":le=>l.value=le,disable:e.disable,readonly:e.readonly,editable:y.value,inputType:"text",enableClear:e.enableClear,buttonContent:u.value,buttonBehavior:s.value,modalOptions:L,onClear:J,beforeOpen:x,onBlur:j,onKeydown:D,placeholder:d.placeholder,keepWidthWithReference:!1,popupOnClick:!e.editable&&s.value==="Popup",onInput:ie,enableTitle:e.enableTitle,placement:"auto",onBeforeClearValue:we},{default:()=>[s.value==="Modal"&&t.createVNode(yd,{title:r.value||"请选择",enableFavorite:e.enableFavorite,onCloseModal:A,onMaximize:le=>U(le),useHttpComposition:f,userDataService:m,useDialog:{cancelDialog:N,submitDialog:k},showSelectedList:g.value,selectionsManager:b,showIncludeChildNodes:{show:v.value,value:e.includeChildNodesValue},showCascadeControl:Q.value,isMaximized:K.value,locales:d,id:e.id},{default:()=>t.createVNode(cd,t.mergeProps(e,{onSearch:te,onNavSelectionsChanged:W,onPageIndexChanged:q,onPageSizeChanged:R,onChangeDialogOptions:H}),null),fav:()=>e.enableFavorite&&t.createVNode(dd,{idField:c.idField,displayType:c.displayType,selectedIds:oe.value,multiSelect:c.multiSelect,showSelections:g.value,treeToList:c.treeToList},null)}),s.value==="Popup"&&F()]})}});class Vd extends Et{constructor(o,a){super(o,a);se(this,"propertyConfigFilters",{lookup:["dataSource","filterConditions","displayType","idField","multiSelect","showSelections","enableSearchBar","searchAnyField","enableFavorite","enableUserData"],pager:["showLimits","sizeLimits","size"],treeConfig:["cascadeStatus","enableCascade","enableFullTree","expandLevel","loadTreeDataType","navTreeToList","onlySelectLeaf","showCascadeControl","treeToList"],dialog:["title","width","height","showNavigation","navigatorWidth","resizeable","rememberSize","enableEsc","showMaxButton","showCloseButton"]});se(this,"events",Ku)}getPropertyConfig(o){const a=new er("root-component",this.designerHostService),i=a.getLookupConfig(o),l=a.getPageConfig(o.editor),r=a.getTreePropConfig(o.editor),s=a.getDialogPropertyConfig(o),u=this.getEventPropConfig(o),d={type:"object",categories:{lookup:i,treeConfig:r,pager:l,dialog:s}};return this.filterLookupPropertyConfig(d),d.categories.eventsEditor=u,d}filterLookupPropertyConfig(o){Object.keys(o.categories).forEach(a=>{const i=this.propertyConfigFilters[a],l=o.categories[a];Object.keys(l.properties).forEach(r=>{i.includes(r)||delete l.properties[r]})})}getEventPropConfig(o){const a=this,i=a.eventsEditorUtils.formProperties(o,a.viewModelId,this.events),l={};return l[a.viewModelId]={type:"events-editor",editor:{initialData:i,viewSourceHandle:r=>{a.eventsEditorUtils.jumpToMethod(r)}}},{title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=s.editor,d=r.propertyValue;delete u[a.viewModelId],d&&a.eventsEditorUtils.saveRelatedParameters(u,a.viewModelId,d.events,d),a.events.forEach(f=>{s[f.label]=u[f.label]})}}}}an.install=e=>{e.component(an.name,an)},an.register=(e,n,o,a)=>{e.lookup=an,n.lookup=Qi,a.lookup={callbackResolver:qu}},an.registerDesigner=(e,n,o)=>{e.lookup=ed,n.lookup=Qi};var et=(e=>(e.Default="Default",e.Textbox="Textbox",e.Numberbox="Numberbox",e.Combolist="Combolist",e.Select="Select",e.Checkbox="Checkbox",e.Switch="Switch",e.Tags="Tags",e.SortEditor="SortEditor",e.FilterEditor="FilterEditor",e.DataEditor="DataEditor",e.MenuIdSelector="MenuIdSelector",e.AppIdSelector="AppIdSelector",e.ComboLookup="ComboLookup",e.ConfigurationParameterEditor="ConfigurationParameterEditor",e.FieldMappingEditor="FieldMappingEditor",e.Custom="Custom",e))(et||{});const pt=t.reactive({}),Nd={data:{type:Object,default:[]},id:{type:String,default:""},editable:{type:Boolean,default:!0},editorType:{type:String,default:""},editorControlSource:{type:Object,default:{}},label:{type:String,default:""},defaultValue:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},paramData:{type:Object,default:[]},showLabel:{type:Boolean,default:!0},idField:{type:String,default:""},textField:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},fieldData:{type:Array,default:[]},varData:{type:Array,default:[]},formData:{type:Array,default:[]},activeViewModelFieldData:{type:Array,default:[]},showOutline:{type:Boolean,default:!0},editor:{type:Object,default:{type:"Default"}}};function Id(e){function n(i){return e.data.find(r=>r[e.idField||"id"]===i)?i:""}function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"combo-list",componentProps:{data:e.data,editable:e.editable==="true",idField:e.idField||"id",textField:e.textField||"label",enableClear:!0},checkAndProcessBeforeAssign:n}}function a(){}return{createEditorProps:o,onValueChange:a}}function Fd(e){function n(i){return typeof i=="string"&&i!==""?i==="true":i}function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"switch",componentProps:{},convertEventParamValue2EditorValue:n}}function a(){}return{createEditorProps:o,onValueChange:a}}function ur(e){const n=t.computed(()=>e.editor.type===et.Default||e.editorType===et.Default);function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"input-group",componentProps:{}}}function a(){}return{createEditorProps:o,shouldRenderAppendButton:n,onValueChange:a}}function kd(e){const{t:n}=Ge.useI18n(),o=t.computed(()=>e.editor.type===et.Default||e.editorType===et.Default);function a(r){return e.data.find(u=>{const d=u;return d.children?d.children.some(c=>{var h;return((h=c.data)==null?void 0:h.id)===r}):!1})?r:""}function i(){var r;pt[((r=e.editor)==null?void 0:r.type)||e.editorType]={type:"combo-tree",componentProps:{data:e.data,placeholder:n("eventParameter.comboTree.placeholder"),enableSearch:!1,enableClear:!0,editable:!1,readonly:!1,disabled:!1,idField:e.idField||"id",textField:e.textField||"name",mapFields:{id:"selectId"},multiSelect:!1,customRowStatus:s=>(s.raw.children&&s.raw.children.length&&(s.disabled=!0),s)},checkAndProcessBeforeAssign:a}}t.watch(()=>e.data,(r,s)=>{var u,d,f;r!==s&&((d=pt[((u=e.editor)==null?void 0:u.type)||e.editorType])==null?void 0:d.type)==="combo-tree"&&(pt[((f=e.editor)==null?void 0:f.type)||e.editorType].componentProps.data=r)});function l(){}return{createEditorProps:i,shouldRenderAppendButton:o,onValueChange:l}}function Pd(e){function n(i){return i?"":"/api/runtime/sys/v1.0/functions/allfuncs"}function o(){var i;pt[((i=e.editor)==null?void 0:i.type)||e.editorType]={type:"menu-lookup",componentProps:{fetchNodeApi:n}}}function a(){}return{createEditorProps:o,onValueChange:a}}function Ed(e){const{t:n}=Ge.useI18n();function o(){var u,d;const r=e.editorControlSource,s=(d=(u=r==null?void 0:r.context)==null?void 0:u.schema)==null?void 0:d.value;if(!s||typeof s!="string")return[];try{const f=JSON.parse(s);return Array.isArray(f)?f.filter(c=>c.id!=="sync"):[]}catch(f){return console.error(`${n("eventParameter.jsonEditor.error")}`,f),[]}}function a(){return Promise.resolve({parameterDescriptors:o(),formContextData:{fieldData:e.fieldData,varData:e.varData,formData:e.formData}})}function i(){var r;pt[((r=e.editor)==null?void 0:r.type)||e.editorType]={type:"json-editor",componentProps:{parameterDescriptors:o(),formContextData:{fieldData:e.fieldData,varData:e.varData,formData:e.formData},beforeOpen:a,dialogTitle:n("eventParameter.jsonEditor.dialogTitle"),keyColumnTitle:n("eventParameter.jsonEditor.keyColumnTitle"),valueColumnTitle:n("eventParameter.jsonEditor.valueColumnTitle"),addButtonText:n("eventParameter.jsonEditor.addButtonText"),keyColumnPlaceholder:n("eventParameter.jsonEditor.keyColumnPlaceholder")}}}function l(){}return{createEditorProps:i,onValueChange:l}}function Md(e){function n(d){d.forEach(f=>{f.sortType==="1"?f.sortType="desc":f.sortType==="0"&&(f.sortType="asc")})}function o(d){d.forEach(f=>{f.sortType==="desc"?f.sortType="1":f.sortType==="asc"&&(f.sortType="0")})}function a(d){if(!d&&typeof d!="string")return[];try{const f=JSON.parse(d);if(Array.isArray(f))return n(f),f}catch{return[]}return[]}function i(d){return typeof d=="string"?d:!Array.isArray(d)||d.length===0?"":(o(d),JSON.stringify(d))}function l(){const d=e.activeViewModelFieldData||[],f=[];return d.forEach(c=>{var h;f.push(Object.assign({},c,{id:c.path,parent:(h=c.parentNode)==null?void 0:h.path}))}),f}function r(){const d=l(),f=a(e.modelValue),c=[],h=[],p={};return Promise.resolve({fieldList:d,conditionList:f,entities:c,variables:h,formContextData:p})}function s(){var d;pt[((d=e.editor)==null?void 0:d.type)||e.editorType]={type:"sort-condition-editor",componentProps:{fields:l(),beforeOpen:r},convertEditorValue2EventParamValue:i}}function u(){}return{createEditorProps:s,onValueChange:u}}function _d(e){function n(s){if(!s&&typeof s!="string")return[];try{const u=JSON.parse(s);if(Array.isArray(u))return u}catch{return[]}return[]}function o(s){return typeof s=="string"?s:!Array.isArray(s)||s.length===0?"":JSON.stringify(s)}function a(){const s=e.activeViewModelFieldData||[],u=[];return s.forEach(d=>{var f;u.push(Object.assign({},d,{id:d.path,parent:(f=d.parentNode)==null?void 0:f.path}))}),u}function i(){const s=a(),u=n(e.modelValue),d=[],f=[],c={fieldData:e.fieldData,varData:e.varData};return Promise.resolve({fieldList:s,conditionList:u,entities:d,variables:f,formContextData:c})}function l(){var s;pt[((s=e.editor)==null?void 0:s.type)||e.editorType]={type:"filter-condition-editor",componentProps:{fields:a(),singleValue:!1,beforeOpen:i},convertEditorValue2EventParamValue:o}}function r(){}return{createEditorProps:l,onValueChange:r}}function Od(e){function n(){var a,i;pt[((a=e.editor)==null?void 0:a.type)||e.editorType]={type:"custom",componentProps:{},render:(i=e.editor)==null?void 0:i.customRender}}function o(){}return{createEditorProps:n,onValueChange:o}}function Bd(e){var m;const n=t.ref(((m=e.editor)==null?void 0:m.type)||e.editorType),o=Id(e),a=Fd(e),i=ur(e),l=kd(e),r=Pd(e),s=Ed(e),u=Md(e),d=_d(e),f=Od(e);function c(){const g=n.value;return g===et.Combolist||g===et.Select?o.createEditorProps():g===et.Checkbox||(g===et.MenuIdSelector?r.createEditorProps():g===et.ConfigurationParameterEditor?s.createEditorProps():g===et.SortEditor?u.createEditorProps():g===et.FilterEditor?d.createEditorProps():g===et.AppIdSelector||(g===et.ComboLookup?l.createEditorProps():g===et.Numberbox||(g===et.Switch?a.createEditorProps():g===et.Custom?f.createEditorProps():i.createEditorProps()))),pt[n.value]}function h(){return"input-group"}function p(){return{}}return{getEditorConfig:c,getEditorType:h,getEditorMap:p}}function Dd(e){const{t:n}=Ge.useI18n(),o=t.reactive([{id:"tabField",title:n("eventParameter.generalEditor.field"),treeConfigs:{id:"tabFieldTree",columns:[{field:"name"}],data:e.fieldData,onSelectNode:()=>{},componentRef:t.ref()},visible:!0},{id:"tabVar",title:n("eventParameter.generalEditor.tabVar"),treeConfigs:{id:"tabVarTree",data:e.varData},visible:!0},{id:"tabForm",title:n("eventParameter.generalEditor.form"),treeConfigs:{id:"tabFormTree",data:e.formData},visible:!0}]);t.watch(()=>e.fieldData,(l,r)=>{l!==r&&(o[0].treeConfigs.data=l)}),t.watch(()=>e.varData,(l,r)=>{l!==r&&(o[1].treeConfigs.data=l)}),t.watch(()=>e.formData,(l,r)=>{l!==r&&(o[2].treeConfigs.data=l)}),t.watch(()=>e.showOutline,()=>{o[2].visible=!!e.showOutline},{immediate:!0});function a(l){l.forEach(r=>{Object.keys(r).forEach(s=>{s.indexOf("__fv")>-1&&delete r[s]})})}function i(){a(o[0].treeConfigs.data),a(o[1].treeConfigs.data),a(o[2].treeConfigs.data)}return{tabs:o,cleanTreeData:i}}function jd(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const wt=t.defineComponent({name:"FEventParameter",props:Nd,emits:["valueChange","onBlur","applicationSelectionChange","componentSelectionChange","parameterChanged","update:modelValue","update:parameterValue","confirm"],setup(e,n){const{isNull:o,isUndefined:a}=Ie.useCommonUtils(),i=t.ref(e.id);ur(e);const l=t.ref(),r=t.ref("tabField"),s=t.ref(),{getEditorConfig:u}=Bd(e);t.watch([()=>e.editor,()=>e.editorType,()=>e.data],()=>{s.value=u()},{immediate:!0});function d(){return!o(e.defaultValue)&&!a(e.defaultValue)&&e.defaultValue!==""&&(o(e.modelValue)||a(e.modelValue)||e.modelValue==="")?e.defaultValue:e.modelValue}function f(F){var P,B;return(P=s.value)!=null&&P.checkAndProcessBeforeAssign?s.value.checkAndProcessBeforeAssign(F):(B=s.value)!=null&&B.convertEventParamValue2EditorValue?s.value.convertEventParamValue2EditorValue(F):F}const c=t.ref(d());c.value=f(c.value);const h=t.ref(c.value);t.watch(()=>e.modelValue,()=>{const F=t.ref(d());c.value=f(F.value)}),t.watch(s,()=>{c.value=f(c.value)}),t.watch(()=>e.data,()=>{c.value=f(c.value)});const p=t.inject(Qn.F_MODAL_SERVICE_TOKEN),m=t.ref([{field:"name",title:"",dataType:"string"}]),g=t.ref({enable:!1}),y=t.ref({customRowStatus:F=>(F.collapse,F.raw.hasChildren&&(F.disabled=!0),F)}),v=t.ref({customRowStatus:F=>(F.layer===0&&(F.disabled=!0),F)}),b=t.computed(()=>{var F,P;return{type:(F=s.value)==null?void 0:F.type,...(P=s.value)==null?void 0:P.componentProps,readonly:e.readonly}}),{tabs:w,cleanTreeData:C}=Dd(e);function x(F){var P;(P=s.value)!=null&&P.convertEditorValue2EventParamValue&&(F=s.value.convertEditorValue2EventParamValue(F)),n.emit("update:modelValue",F),n.emit("valueChange",F)}function T(F,P){const B=P.selectionStart||0,{selectionEnd:$}=P,j=$-B,D=j>0,O=h.value&&h.value.split("")||[];return D?O.splice(B,j,F):O.splice(B,0,F),O.join("")}function S(F,P){if(!F.data)return;const{data:B}=F;let $=F.parentNode,{label:j}=B;for(;$&&$.parentNode;)$.data&&(j=$.data.label+"/"+j),$=$.parentNode;return T(`{DATA~/${j}}`,P)}function V(F,P){const{statePath:B}=F;let $=P.value;if(B){const j=B.split("/");if($=B,j.length===3){const O=`#{${j[1]}}`;j.splice(1,1,O),$=j.join("/")}$=`{UISTATE~${$}}`}return T($,P)}function N(F,P,B){const $=l.value.getTextareaElement();switch(F){case"tabForm":h.value=T(`#{${B.data.id}}`,$);break;case"tabField":h.value=S(B,$);break;case"tabVar":h.value=V(B.data,$);break}n.emit("paramChanged",{tabId:F,index:P,raw:B,value:c.value})}function k(){return w.forEach(F=>{F.treeConfigs.data.forEach(P=>{Object.prototype.hasOwnProperty.call(P,"__fv_visible__")&&delete P.__fv_visible__})}),()=>{let F;return t.createVNode(Ft,{class:"nav-tree-panel"},{default:()=>[t.createVNode(Ft.FLayoutPane,{position:"left",width:300,resizable:!1},{default:()=>[t.createVNode(Sn,{activeId:r.value,"onUpdate:activeId":P=>r.value=P},jd(F=w.map(P=>P.visible&&t.createVNode(Sn.FTabPage,{key:P.id,id:P.id,title:P.title},{default:()=>[P.id==="tabField"&&t.createVNode(Jt,{rowNumber:g,columnOption:{fitColumns:!0,fitMode:"expand"},rowOption:y.value,hierarchy:{collapseField:"collapse"},key:P.treeConfigs.id,data:P.treeConfigs.data,columns:m.value,fit:!0,height:340,onDoubleClickRow:function($,j){N(P.id,$,j)}},null),P.id==="tabVar"&&t.createVNode(Jt,{columnOption:{fitColumns:!0,fitMode:"expand"},rowNumber:g,rowOption:v.value,key:P.treeConfigs.id,data:P.treeConfigs.data,fit:!0,height:340,onDoubleClickRow:function($,j){N(P.id,$,j)}},null),P.id==="tabForm"&&t.createVNode(Jt,{columnOption:{fitColumns:!0,fitMode:"expand"},rowNumber:g,key:P.treeConfigs.id,data:P.treeConfigs.data,columns:m.value,fit:!0,height:340,onDoubleClickRow:function($,j){N(P.id,$,j)}},null)]})))?F:{default:()=>[F]})]}),t.createVNode(Ft.FLayoutPane,{position:"center"},{default:()=>[t.createVNode(ro,{ref:l,modelValue:h.value,"onUpdate:modelValue":P=>h.value=P,rows:10,autoHeight:!0},null)]})]})}}function I(){h.value=c.value;const F=p.open({title:"参数编辑器",width:900,height:500,fitContent:!1,showHeader:!0,showCloseButton:!0,draggable:!0,render:k(),onClosed:()=>{C()},buttons:[{class:"btn btn-secondary",text:"取消",handle:()=>{F.destroy(),C()}},{class:"btn btn-primary",text:"确定",handle:()=>{c.value=h.value,n.emit("update:modelValue",c.value),n.emit("confirm",c.value),F.destroy(),C()}}]})}function E(){return b.value.type==="input-group"?t.createVNode("span",{class:"f-icon f-icon-lookup",onClick:I,style:"margin-top: 2px;margin-right: 5px;color: rgba(0, 0, 0, .25)"},null):t.createVNode(t.Fragment,null,null)}const _=()=>{n.emit("update:modelValue","")},M=()=>l.value.elementRef;return n.expose({getInputRef:M}),()=>{var F,P;return((F=s.value)==null?void 0:F.type)==="custom"&&((P=s.value)!=null&&P.render)?s.value.render():t.createVNode(dn.FDynamicFormGroup,{id:i.value,editor:b.value,modelValue:c.value,"onUpdate:modelValue":B=>c.value=B,showLabel:!1,customClass:"f-event-parameter",onChange:x,onClear:_},{groupTextTemplate:()=>E()})}}});wt.install=e=>{e.component(wt.name,wt)},wt.register=(e,n,o,a)=>{e["event-parameter"]=wt,n["event-parameter"]=wt},wt.registerDesigner=(e,n,o)=>{e["event-parameter"]=wt,n["event-parameter"]=wt};const dr={injectSymbolToken:{type:Symbol},viewOptions:{type:Array,default:[]},viewType:{type:String,default:"Tabs"},editorParams:{type:Object,default:null},showFooter:{type:Boolean,default:!1},validateFunction:{type:Function,default:null}},zn=new Map([["appearance",ht]]);function $d(e,n){const o=Math.random().toString().slice(2,6),a=n.parentComponentInstance,i=e.getSchemaByType("tab-page");i.id=`tab-page-${o}`,i.title="标题",i.toolbar={id:`tab-page-toolbar-${o}`,buttons:[]};const l=e.getSchemaByType("tabs");Object.assign(l,{id:`tabs-${o}`,appearance:{class:"f-component-tabs f-tabs-has-grid"},contents:[i],activeId:i.id});const r=e.getSchemaByType("section");Object.assign(r,{id:`section-${o}`,appearance:{class:"f-section-tabs f-section-in-mainsubcard"},fill:!1,showHeader:!1,contents:[l]});const s=e.getSchemaByType("content-container");Object.assign(s,{id:`container-${o}`,appearance:{class:"f-struct-wrapper"},contents:[r]});const u=a.schema;switch(u&&u.type){case ce["splitter-pane"].type:{r.appearance.class="f-section-tabs f-section-in-main",l.appearance.class="f-component-tabs";break}}const d=a.elementRef,f=window.getComputedStyle(d);return f&&f.display==="flex"&&(s.appearance.class+=" d-block"),s}function fr(e,n,o){if(o.parentComponentInstance)return $d(e,o);{const i=e.getSchemaByType("tab-page");return n.contents=[i],n}}function Ld(e,n,o){return n}const pr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tabs.schema.json",title:"tabs",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a Tabs",type:"string"},type:{description:"The type string of Tabs component",type:"string",default:"tabs"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},autoTitleWidth:{description:"",type:"boolean",default:!1},titleWidth:{description:"",type:"number"},titleLength:{description:"",type:"number",default:7},fill:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},activeId:{description:"",type:"string",default:""}},required:["id","type","contents"],events:{onTabChange:"切换标签页事件",onTabRemove:"移除标签页事件"}},Rd={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-toolbar.schema.json",title:"tab-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Tab Toolbar",type:"string"},type:{description:"The type string of Tab Toolbar",type:"string",default:"tab-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Tab Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Tab Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},Ad=new Map([["buttons","items"],["appearance",ht]]);function Hn(e,n,o){return n}const zd={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-toolbar.schema.json",title:"response-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"response-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Response Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Response Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},Hd={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-toolbar-item.schema.json",title:"response-toolbar-item",description:"A Farris Toolbar Item Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"response-toolbar-item"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"对齐",type:"string",default:"right"},text:{description:"文本",type:"string",default:"按钮"},icon:{description:"图标",type:"string",default:""},disabled:{description:"禁用",type:"boolean",default:!1},visible:{description:"是否可见",type:"boolean",default:!0},onClick:{description:"点击事件",type:"string",default:""},tipsEnable:{description:"",type:"boolean",default:!1},tipsText:{description:"",type:"string",default:""},dropdownClass:{description:"处于下拉菜单时的样式",type:"string",default:""},split:{description:"",type:"boolean",default:!1}},required:["id","type","text"],events:{onClick:"点击事件"}},Wn={id:{type:String,default:""},customClass:{type:String,default:""},alignment:{Type:String,default:"right"},items:{Type:Array,default:[]},visible:{type:Boolean,default:!0}},Wd=Object.assign({},Wn,{componentId:{type:String,default:""}});Ye(Wn,zd,Ad,Hn);const mr={id:{type:String,default:""},item:{type:Object,default:{}},items:{type:Object,default:{}},class:{type:String,default:"btn-secondary"},text:{type:String,default:""},disabled:{type:Boolean,default:!1},icon:{type:String,default:""},componentId:{type:String,default:""},expanded:{type:Boolean,default:!1},alignment:{Type:String,default:"right"},split:{type:Boolean,default:!1},isDP:{type:Boolean,default:!1},isDPItem:{type:Boolean,default:!1}};Ye(mr,Hd,void 0,Hn);const Oo={tabType:{type:String,default:"default"},autoTitleWidth:{type:Boolean,default:!1},titleLength:{type:Number,default:7},position:{type:String,default:"top"},showDropdown:{type:Boolean,default:!0},scrollStep:{type:Number,default:10},autoResize:{type:Boolean,default:!1},width:{type:Number},height:{type:Number},searchBoxVisible:{type:Boolean,default:!0},titleWidth:{type:Number,default:0},customClass:{type:String,default:""},activeId:{type:String},fill:{type:Boolean,default:!1},justifyContent:{type:String,default:"left"},visible:{type:Boolean,default:!0}},qd=Ye(Oo,pr,zn,fr),hr=Object.assign({},Oo,{componentId:{type:String,default:""}}),Ud=Ye(hr,pr,zn,fr),Gd=Qa(),Yd=Ye(Wn,Rd,zn,Hn);function Xd(e,n,o){const a=t.ref([]),i=t.ref(e.activeId||"");let l="";const r=t.ref(!0),s=t.ref([]),u=t.ref(!0),d=t.ref(0),f=t.computed(()=>{const V=a.value.find(k=>k.props.id===i.value);return(V==null?void 0:V.props.toolbarPosition)==="inHead"});function c(V,N=!0){const k=V.findIndex(I=>I.props.show!==!1&&!I.props.disabled);if(s.value=[],k!==-1){if(i.value=V[k].props.id,!N)return;const I=V[k];I&&I.props.toolbar&&I.props.toolbar.buttons&&I.props.toolbar.buttons.length&&(s.value=[...I.props.toolbar.buttons],u.value=I.props.toolbarVisible)}}function h(V){i.value=V;const N=a.value.find(k=>k.props.id===V);s.value=[],N&&N.props.toolbar&&N.props.toolbar.buttons&&N.props.toolbar.buttons.length&&(s.value=[...N.props.toolbar.buttons],u.value=N.props.toolbarVisible),n.emit("update:activeId",V),n.emit("tabChange",{prevId:l,nextId:i.value})}function p(V){let N=-1;if(!i.value){if(N=V.findIndex(k=>i.value===k.props.id&&k.props.show!==!1&&!k.props.disabled),N>-1)return;l=i.value}c(V,!1),h(i.value)}function m(V){let N=!1;if(V){const k=a.value.find(I=>I.props.id===V);N=!k||k.props.show===!1||k.props.disabled===!0}N?p(a.value):(i.value!==V&&(l=i.value,i.value=V),h(i.value))}t.watch(()=>e.activeId,(V,N)=>{V!==N&&m(V)});function g(V){var k;if(e.autoTitleWidth)return;const N=(k=V.value)==null?void 0:k.querySelectorAll(".st-tab-text");if(!(!N||e.tabType==="pill"))for(let I=0;I<N.length;I++){const E=N[I].parentNode;N[I].scrollWidth>E.offsetWidth?N[I].classList.contains("farris-title-text-custom")||N[I].classList.add("farris-title-text-custom"):N[I].classList.remove("farris-title-text-custom")}}const y=V=>{V.preventDefault(),V.stopPropagation()};function v(V,N,k=!1){const I=a.value.findIndex(E=>E.props.id===N);a.value=a.value.filter(E=>E.props.id!==N),i.value===N&&(l=N,i.value="",c(a.value)),y(V),t.nextTick(()=>{d.value++,g(o),k&&(r.value=!0),n.emit("tabRemove",{removeIndex:I,removeId:N,activeId:i.value})})}function b(V,N=!0){i.value===V&&(i.value="",l=V,m("")),t.nextTick(()=>{d.value++,N&&(r.value=!0)})}let w;function C(V){w=V}function x(V){i.value!==V&&(l=i.value,h(V),w&&w())}function T(V){a.value.findIndex(k=>k.props.id===V.props.id)===-1&&a.value.push(V),d.value++}function S(V){a.value.findIndex(k=>k.props.id===V.props.id)!==-1&&(a.value.forEach(k=>{k.props.id===V.props.id&&(k=V)}),V.props.id===i.value&&f.value,t.nextTick(()=>{d.value++,g(o)}))}return{activeId:i,addTab:T,changeTitleStyle:g,removeTab:v,selectTab:x,tabPages:a,updateTab:S,toolbarItems:s,needUpdateNavigationLayout:d,checkActiveIdAndSelect:m,toggleShowTab:b,hasInHeadClass:f,setScrollToSelectedTabFunction:C,toolbarVisible:u}}function Jd(e,n,o,a,i){const{activeId:l,removeTab:r,selectTab:s}=i,u=t.computed(()=>{const b={"st-tab-text":!0,"text-truncate":e.tabType==="pill"&&!e.autoTitleWidth,"farris-title-auto":e.autoTitleWidth};return Ie.getCustomClass(b,n.customTitleClass)}),d=t.computed(()=>({"nav-item":!0,"d-none":n.show!==void 0?!n.show:!1,"f-state-active":n.id===l.value,"f-state-disabled":n.disabled})),f=t.computed(()=>({width:`${n.tabWidth}px`})),c=t.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===l.value,disabled:n.disabled})),h=t.reactive({content:n.title,overflowShown:!0});function p(){return e.tabType!=="pill"&&!e.autoTitleWidth?t.withDirectives(t.createVNode("span",{class:u.value,"data-tabid":n.id},[n.title]),[[t.resolveDirective("tooltip"),h]]):t.createVNode("span",{class:u.value,"data-tabid":n.id,title:n.title},[n.title])}const m=t.ref(n.removeable);function g(){return m.value?t.createVNode("span",{class:"st-drop-close",onClick:b=>r(b,n.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function y(b){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function v(){return o.slots.title?t.createVNode("a",{class:c.value,onClick:y,id:`${n.id}-design-item`},[o.slots.title(o),g()]):n.titleRenderFunction?t.createVNode("a",{class:c.value,onClick:y,id:`${n.id}-design-item`},[n.titleRenderFunction(),g()]):t.createVNode("a",{class:c.value,onClick:y,id:`${n.id}-design-item`},[p(),g()])}return t.createVNode("li",{class:d.value,style:f.value},[v()])}function Qd(e,n,o,a,i){const{shouldShowNavigationButtons:l}=o,{tabPages:r}=i,s=t.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":l.value})),u=t.computed(()=>({width:"100%","justify-content":e.justifyContent})),d=t.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":e.tabType==="fill","nav-pills":e.tabType==="pills","flex-row":e.position==="top"||e.position==="bottom","flex-column":e.position==="left"||e.position==="right"}));return()=>t.createVNode("div",{class:s.value,style:u.value},[t.createVNode("ul",{class:d.value,ref:n},[r.value.map(f=>Jd(e,f.props,f,a,i))])])}function gr(e,n,o,a,i){const l=t.ref(),{shouldShowNavigationButtons:r}=o,{activeId:s,tabPages:u,selectTab:d}=i,f=t.ref(s.value),c=t.computed(()=>u.value.map(g=>({name:g.props.title,value:g.props.id,show:g.props.show,disabled:g.props.disabled}))),h=t.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":r.value})),p=t.computed(()=>({width:"100%",display:"flex","justify-content":e.justifyContent}));t.onMounted(()=>{l.value&&(n.value=l.value.$el)});function m(g){d(g)}return t.watch(()=>s.value,g=>{g!==f.value&&(f.value=g)},{immediate:!0}),()=>t.createVNode("div",{class:h.value,style:p.value},[t.createVNode(no,{items:c.value,modelValue:f.value,"onUpdate:modelValue":g=>f.value=g,onChange:m,ref:l},null)])}function Kd(e,n,o,a){const{t:i}=Ge.useI18n(),l=t.ref(),{activeId:r,removeTab:s,tabPages:u,selectTab:d}=a,{hideDropDown:f,searchTabText:c}=n,h=600;let p=null;const m=t.computed(()=>{var k,I;let N=[];return e.searchBoxVisible?N=(k=u.value)==null?void 0:k.filter(E=>E.props.title.includes(c.value)):N=(I=u.value)==null?void 0:I.slice(),N}),g=t.computed(()=>({"dropdown-menu":!0,"tabs-pt28":e.searchBoxVisible,show:!f.value,"d-none":f.value}));let y;function v(N){y=N}t.watch(f,N=>{if(y.value)if(N)l.value.style.width=null;else{const k=y.value.querySelector(".farris-tabs-header"),I=y.value.clientHeight-k.clientHeight-20,_=k.querySelector(".farris-tabs-title").clientWidth-20;l.value.style.maxWidth=_+"px",l.value.style.maxHeight=I+"px",t.nextTick(()=>{const{width:M}=l.value.getClientRects()[0];l.value.style.width=M?M+"px":null})}});function b(N){return{"dropdown-item":!0,"text-truncate":!0,"px-2":!0,disabled:N.props.disabled,active:N.props.id===r.value,"d-none":N.props.show!==!0}}function w(N){N.preventDefault(),N.stopPropagation()}function C(){p&&clearTimeout(p)}function x(){f.value||(p=setTimeout(()=>{f.value=!0},h))}function T(N,k){N.stopPropagation(),k.disabled||d(k.id),f.value=!0}function S(N,k){N.stopPropagation(),s(N,k,!0)}function V(){return t.createVNode("div",{ref:l,class:g.value,onMouseenter:()=>C(),onMouseleave:()=>x()},[e.searchBoxVisible&&t.createVNode("div",{onClick:N=>w(N),class:"pb-1 tabs-li-absolute"},[t.withDirectives(t.createVNode("input",{type:"text",class:"form-control","onUpdate:modelValue":N=>c.value=N},null),[[t.vModelText,c.value]]),t.createVNode("span",{class:"f-icon f-icon-page-title-query tabs-icon-search"},null)]),m.value.length?t.createVNode("ul",{class:"tab-dropdown-menu--items flex-fill"},[m.value.map(N=>t.createVNode("li",{class:b(N),onClick:k=>T(k,N.props)},[N.props.removeable&&N.props.disabled!==!0&&t.createVNode("span",{class:"float-right st-drop-close",onClick:k=>S(k,N.props.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]),t.createVNode("a",{class:"dropdown-title",title:N.props.title},[N.props.title])]))]):t.createVNode("div",{class:"dropdown-no-data"},[i("tabs.noData")])])}return{renderDropdownMenu:V,setTabsRef:v}}function Zd(e,n,o,a){const{hideDropDown:i}=n,{renderDropdownMenu:l,setTabsRef:r}=Kd(e,n,o,a),s=t.ref(e.showDropdown);function u(){return s.value&&t.createVNode(t.Fragment,null,[t.createVNode("button",{class:"btn dropdown-toggle-split dropdown-toggle",onClick:()=>{i.value=!1}},null),l()])}return{renderMorePagesButtton:u,setTabsRef:r}}function yr(e,n,o,a){const i=t.ref(!1),{selectTab:l,tabPages:r,needUpdateNavigationLayout:s,activeId:u}=a,d=4,f=t.computed(()=>({btn:!0,"sc-nav-btn":!0,"px-1":!0,"sc-nav-lr":!0,"d-none":!i.value})),c=t.computed(()=>({"btn-group":!0,"sc-nav-btn":!0,dropdown:!0,"d-none":!i.value})),h=t.computed(()=>({btn:!0,"sc-nav-rg":!0,"d-none":!i.value}));function p(b,w){if(!n.value)return;const C=n.value.scrollLeft,x=n.value.scrollWidth-n.value.offsetWidth;if(w>0){if(n.value.scrollLeft>=x)return;n.value.scrollLeft=C+e.scrollStep+b}else if(w<0){if(n.value.scrollLeft<=0)return;n.value.scrollLeft=C-e.scrollStep-b}}function m(b=-1){if(!i.value||!n.value)return;b<0&&(b=r.value.findIndex(S=>S.props.id===u.value));const w=e.tabType==="pills"?".f-capsule-item":".nav-item",C=n.value.querySelectorAll(w),{parentElement:x}=n.value,T=C[b];if(T&&x){const S=x.getBoundingClientRect().left,V=x.getBoundingClientRect().right,N=T.getBoundingClientRect().left,k=T.getBoundingClientRect().right;N<S?p(S-N,-1):V<k&&p(k-V,1),e.tabType==="one-page"&&o.scrollTo(b)}}function g(){var C;if(!n.value)return;const b=n.value,w=(C=n.value)==null?void 0:C.parentElement;i.value=w&&b&&w.offsetWidth<b.scrollWidth-d,i.value&&t.nextTick(()=>{m()})}function y(b){b.disabled||l(b.id)}function v(){["default","one-page"].indexOf(e.tabType)>-1&&t.nextTick(()=>{m()})}return t.watch(s,()=>{g()}),{previousButtonClass:f,nextButtonGroupClass:c,nextButtonClass:h,scrollTab:p,selectAndScrollToTab:y,shouldShowNavigationButtons:i,updateNavigationLayout:g,scrollToSelectedTab:v}}function vr(e,n){const{tabPages:o}=n,a=t.ref(""),i=t.ref(!0),l=t.computed(()=>e.searchBoxVisible),r=t.computed(()=>l.value?o.value.filter(u=>u.props.title.includes(a.value)):o.value.slice());return t.watch(i,s=>{s||(a.value="")}),{searchTabText:a,hideDropDown:i,shouldShowSearchBox:l,tabsInDropdownMenu:r}}function br(e,n,o){const a=".farris-tab-page",{tabPages:i}=o;function l(s){const u=n.value;if(u){const d=n.value.querySelectorAll(a);if(d.length>0){const f=d[s],{offsetTop:c}=f,h=c-32>0?c-32:0;u.scrollTop=h}}}function r(s){const u=i.value.findIndex(d=>d.props.id===s);u>-1&&l(u)}return{scrollTo:l,scrollToByPaggId:r}}const At=t.defineComponent({name:"FTabs",props:Oo,emits:["tabChange","tabRemove","update:activeId","Click"],setup(e,n){const{t:o}=Ge.useI18n(),a=t.ref(e.tabType),i=t.shallowRef(),l=t.ref(e.customClass),r=t.shallowRef(),s=t.shallowRef(),u=t.ref(),d=Xd(e,n,r),{activeId:f,changeTitleStyle:c,tabPages:h,addTab:p,updateTab:m,toolbarItems:g,checkActiveIdAndSelect:y,toggleShowTab:v,hasInHeadClass:b,toolbarVisible:w}=d,C=br(e,s,d),x=yr(e,r,C,d),{previousButtonClass:T,nextButtonClass:S,nextButtonGroupClass:V,scrollTab:N,updateNavigationLayout:k,scrollToSelectedTab:I}=x;d.setScrollToSelectedTabFunction(I);const E=vr(e,d),_=Qd(e,r,x,C,d),M=_,F=gr(e,r,x,C,d),P=new Map([["default",_],["one-page",M],["pills",F]]);t.computed(()=>{const oe=h.value.find(X=>X.props.id===f.value);return oe==null?void 0:oe.slots});const B=t.computed(()=>e.fill);t.provide("tabs",{activeId:f,addTab:p,updateTab:m,tabPages:h,tabType:a,shouldFillParentContaner:B,toggleShowTab:v});let $=!1;const j=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":b.value,"farris-tabs-inContent":!b.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),D=t.computed(()=>{const oe={width:b.value&&e.titleWidth?`${e.titleWidth}%`:""};return oe.width&&(oe.flex="unset"),oe}),O=t.computed(()=>{const oe={"farris-tabs":!0,"f-utils-fill-flex-column":B.value,"flex-column":e.position==="top","flex-column-reverse":e.position==="bottom","flex-row":e.position==="left","flex-row-reverse":e.position==="right","one-page":e.tabType==="one-page"};return l.value&&l.value.split(" ").reduce((X,ne)=>(X[ne]=!0,X),oe),oe}),L=new ResizeObserver(oe=>{oe.length&&k()});function z(){u.value&&!$&&(L.observe(u.value),$=!0)}t.watch(()=>e.visible,oe=>{t.nextTick(()=>{h.value.length&&y(e.activeId||h.value[0].props.id),k(),c(r),z()})}),t.watch(()=>e.autoTitleWidth,oe=>{t.nextTick(()=>{k(),c(r)})});const G={leftButton:o("tabs.leftButton"),rightButton:o("tabs.rightButton")};t.onMounted(()=>{e.visible&&(h.value.length&&y(e.activeId||h.value[0].props.id),t.nextTick(()=>{k(),c(r)}),z())});function J(){return t.createVNode("button",{title:G.leftButton,type:"button",class:T.value,onClick:()=>{N(0,-1)}},null)}function te(){return t.createVNode("button",{title:G.rightButton,type:"button",class:S.value,onClick:()=>{N(0,1)}},null)}const{renderMorePagesButtton:W,setTabsRef:q}=Zd(e,E,x,d);q(i);const R=(oe,X)=>{n.emit("Click",oe,X,f.value)};function H(){return g.value.length?t.createVNode("div",{class:"farris-tabs-toolbar"},[t.createVNode(Vn,{class:"f-utils-fill",alignment:b.value?"right":"left",items:g.value,visible:w.value,onClick:R},null)]):null}const A=P.get(e.tabType)||P.get("default");function U(){var oe,X,ne,ie;return t.createVNode("div",{class:j.value},[t.createVNode("div",{class:"farris-tabs-header-pre"},[(X=(oe=n.slots).headerPrefix)==null?void 0:X.call(oe)]),t.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:D.value,ref:u},[J(),A&&A(),t.createVNode("div",{class:V.value},[te(),W()])]),H(),t.createVNode("div",{class:"farris-tabs-header-post"},[(ie=(ne=n.slots).headerSuffix)==null?void 0:ie.call(ne)])])}const K=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":B.value}));function Q(){var oe,X;return t.createVNode("div",{class:K.value,ref:s},[(X=(oe=n.slots).default)==null?void 0:X.call(oe)])}return()=>e.visible?t.createVNode("div",{class:O.value,ref:i},[U(),Q()]):null}});function ef(e,n,o){const a={toolbar:n,toolbarVisible:!0};return n&&n.contents&&n.contents.length&&(n.contents.forEach(i=>{i.title&&(i.text=i.title)}),n.buttons=n.contents,delete n.contents),n&&Object.prototype.hasOwnProperty.call(n,"visible")&&(a.toolbarVisible=n.visible),a}const Cr=new Map([["appearance",ht],["toolbar",ef]]),wr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-page.schema.json",title:"tab-page",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a tab-page Item",type:"string"},type:{description:"The type string of tab-page Item component",type:"string",default:"tab-page"},contents:{description:"",type:"array",default:[]},title:{description:"",type:"string",default:"标题"},disabled:{description:"",type:"boolean",default:!1},removeable:{description:"",type:"boolean",default:!1},show:{description:"",type:"boolean",default:!0},toolbar:{description:"",type:"object"},tabWidth:{description:"",type:"number"},toolbarPosition:{description:"",type:"string",default:"inHead"},customTitleClass:{description:"",type:"string",default:""},onTabChange:{description:"",type:"切换标签页事件",default:""},onTabRemove:{description:"",type:"string",default:"移除标签页事件"},titleHtml:{description:"",type:"string",default:""},titleRenderFunction:{description:"",type:"function",default:null}},required:["id","type","contents"]},Bo={tabWidth:{type:Number},id:{type:String,default:""},customTitleClass:{type:String,default:""},titleOverflow:{type:Boolean,default:!1},title:{type:String,default:""},selected:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},removeable:{type:Boolean,default:!1},show:{type:Boolean,default:!0},toolbar:{type:Object,default:{}},toolbarPosition:{type:String,default:"inHead"},toolbarVisible:{type:Boolean,default:!0},titleRenderFunction:{type:Function}},tf=rt.createPropsResolver(Bo,wr,Cr),Sr=Object.assign({},Bo,{titleHtml:{type:String,default:""}}),nf=rt.createPropsResolver(Sr,wr,Cr);function of(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const qn=t.defineComponent({name:"FTabPage",props:Bo,emits:[],setup(e,n){const o=t.inject("tabs"),a=t.ref(e.show),i={slots:n.slots,props:e},l=t.ref((o==null?void 0:o.tabType.value)||"default");t.onMounted(()=>{const p=o==null?void 0:o.tabPages.value.findIndex(m=>m.props.id===e.id);(!p||p===-1)&&(o==null||o.addTab(i))}),t.onUnmounted(()=>{});const r=t.computed(()=>(e==null?void 0:e.id)===(o==null?void 0:o.activeId.value)),s=t.computed(()=>({display:r.value?"":"none"}));t.watch(()=>e,p=>{o==null||o.updateTab({props:p,slots:n.slots})},{immediate:!0,deep:!0}),t.watch(()=>e.show,p=>{o==null||o.toggleShowTab(e.id)});function u(){var m,g;const p=(g=(m=n.slots).default)==null?void 0:g.call(m);return t.createVNode(io,{"main-title":e.title,class:["farris-tab-page",a.value?"":"f-tab-d-none"]},of(p)?p:{default:()=>[p]})}const d=t.computed(()=>{var m;return{"farris-tab-page":!0,"f-tab-d-none":!a.value,"f-utils-fill-flex-column":r.value&&o&&((m=o.shouldFillParentContaner)==null?void 0:m.value)}});function f(){var m,g;const p=(g=(m=n.slots).default)==null?void 0:g.call(m);return t.createVNode("div",{class:d.value,style:s.value},[p])}const h=new Map([["default",f],["one-page",u]]).get(l.value)||f;return()=>h()}});function af(e,n,o,a,i,l){const{activeId:r,selectTab:s,removeDesignTab:u,selectDesignTab:d,addTabPageToolbar:f,resetPositionForSelectedElement:c}=i,h=t.computed(()=>({"st-tab-text":!0,"farris-title-auto":e.autoTitleWidth})),p=t.computed(()=>{const E={"farris-component":!0,"nav-item":!0,"f-state-active":n.id===r.value};return E[`${n.id}-design-item`]=!0,E}),m=t.computed(()=>{const E={};return n.tabWidth&&n.tabWidth>0&&(E.width=`${n.tabWidth}px`),E}),g=t.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===r.value}));function y(){return t.createVNode("span",{class:h.value,title:n.title},[n.title])}const v=t.ref(n.removeable);function b(){return v.value?t.createVNode("span",{class:"st-drop-close",style:{opacity:.6}},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function w(){return n.titleHtml+b()}function C(E){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function x(E){E&&(E.stopPropagation(),E.preventDefault()),d(E,n.id,l.value)}function T(E){u(E,n.id)}function S(E){f(E,n.id)}t.watch(()=>n.toolbarPosition,()=>{t.nextTick(()=>{c()})}),t.watch(()=>n.tabWidth,()=>{t.nextTick(()=>{c()})});function V(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:E=>T(E)},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function N(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增按钮",ref:"addComponent",onClick:E=>S(E)},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function k(){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[V(),!n.toolbar||!n.toolbar.buttons||!n.toolbar.buttons.length?N():""])])}function I(){return o.slots.title?t.createVNode("a",{class:g.value,onClick:C,id:`${n.id}-design-item`},[o.slots.title(o),b()]):n.titleHtml?t.createVNode("a",{class:g.value,onClick:C,id:`${n.id}-design-item`,innerHTML:w()},null):t.createVNode("a",{class:g.value,onClick:C,id:`${n.id}-design-item`},[y(),b()])}return t.createVNode("li",{onClick:E=>x(E),class:p.value,style:m.value,pageId:`${n.id}-design-item`},[k(),I()])}function rf(e,n,o,a,i,l,r){const{tabPages:s,selectTab:u,emitSelectionChange:d}=i,f=t.computed(()=>({spacer:!0,"f-utils-fill":!0})),c=t.computed(()=>({width:"100%","justify-content":e.justifyContent})),h=t.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":e.tabType==="fill","nav-pills":e.tabType==="pills","flex-row":e.position==="top"||e.position==="bottom","flex-column":e.position==="left"||e.position==="right"})),p=t.computed(()=>({overflow:"auto"})),m=function(g){var v;g&&(g.stopPropagation(),g.preventDefault());const y=En("tab-page");y.id=`tab_page_${Math.random().toString().slice(2,6)}`,y.title="标题",y.toolbar={id:`${y.id}_toolbar`,buttons:[],type:"tab-toolbar"},(v=l.value.schema.contents)==null||v.push(y),u(y.id),t.nextTick(()=>{d(y.id,l.value)})};return()=>t.createVNode("div",{class:f.value,style:c.value},[t.createVNode("ul",{class:h.value,style:p.value,ref:n},[s.value.map(g=>af(e,g.props,g,a,i,l)),t.createVNode("li",{class:"nav-item no-drag add-nav-item"},[t.createVNode("a",{class:"nav-link tabs-text-truncate",title:"添加页签",onClick:g=>m(g)},[t.createVNode("i",{class:"f-icon f-icon-plus",style:"font-size: 20px;margin: 0 auto;line-height: 24px;"},null)])])])])}class lf extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getBehaviorProperties(n),this.getToolbarProperties(n),this.propertyConfig}getBehaviorProperties(n){const o=this.getPropertyEditorParams(n,[],"show"),a=this.getPropertyEditorParams(n,[],"disabled"),i=this;this.propertyConfig.categories.behavior={description:"",title:"行为",properties:{show:{description:"是否可见",type:"boolean",title:"是否可见",editor:o},disabled:{description:"是否禁用",type:"boolean",title:"是否禁用",editor:a},removeable:{description:"是否可移除",type:"boolean",title:"是否可移除"}},setPropertyRelates(l,r){if(l)switch(l.propertyID){case"disabled":case"show":i.afterMutilEditorChanged(n,l);break}}}}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Infomation",title:"基本信息",properties:{id:{description:"标签页项的标识",title:"标识",type:"string",readonly:!0},title:{description:"标签页项的标题",title:"标题",type:"string"}},setPropertyRelates(o,a){if(o)switch(o&&o.propertyID){case"title":{o.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(n){this.propertyConfig.categories.appearance={title:"外观",description:"",properties:{customTitleClass:{title:"标题样式",type:"string",description:"为标签页的标题指定样式"},tabWidth:{description:"为标签页的标题指定宽度",type:"number",title:"标签页的标题宽度(px)",editor:{nullable:!0,min:0,decimals:0}}}}}getToolbarProperties(n){this.propertyConfig.categories.toolbar={title:"工具栏",description:"",properties:{toolbarPosition:{title:"工具栏位置",type:"string",description:"为工具栏指定位置",editor:{type:"combo-list",data:[{id:"inHead",name:"标题区域"},{id:"inContent",name:"内容区域"}]}}}}}}class sf extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n),this.propertyConfig.categories.behavior=this.getBehaviorProperties(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n){return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:""},titleWidth:{description:"标题区域宽度占标签头部区域的横向比例",type:"number",title:"标题区域宽度(%)",editor:{min:0,decimals:0,max:100,nullable:!0}},autoTitleWidth:{description:"是,则标题显示全部字符;否,则标题最多显示20个字符",type:"boolean",title:"标题自适应宽度"},fill:{description:"flex布局下,是否填充满剩余部分",type:"boolean",title:"填充"}}}}getBehaviorProperties(n){const o=this.getCurrentTabPages(n);n.activeId&&typeof n.activeId=="string"&&(o.find(r=>r.id===n.activeId)||(n.activeId=""));const a=this.getPropertyEditorParams(n,["Const","Variable"],"activeId",{constType:"enum",constEnums:o},{newVariableType:"String"}),i=this;return{description:"",title:"行为",properties:{activeId:{title:"默认选中标签页",type:"string",description:"默认选中标签页",defaultValue:o.length>0?o[0].id:"",editor:a}},setPropertyRelates(l,r){if(l)switch(l.propertyID){case"activeId":i.addNewVariableToViewModel(l,i.viewModelId);break}}}}getCurrentTabPages(n){const o=n.contents||[],a=[];return o.forEach(i=>{a.push({name:i.title,id:i.id})}),a}getEventPropConfig(n){const o=[{label:"onTabChange",name:"切换标签页事件"},{label:"onTabRemove",name:"移除标签页事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),l=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=r.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}function cf(e,n){const o=e.schema,a=new So,{canMove:i,canAccept:l,canDelete:r}=a.getTemplateRule(e,n);function s(g){return l}function u(){return r}function d(){return i}function f(){return!i&&!r}function c(g){var b;return(((b=document.querySelector(".dgComponentFocused"))==null?void 0:b.id)===`${o.id}-design-item`?new sf(g,n):new lf(g,n)).getPropertyConfig(o)}function h(){e.designerItemElementRef.value&&t.nextTick(()=>{const g=e.designerItemElementRef.value.querySelector(".dgComponentSelected");g!=null&&g.className.includes("dgComponentSelected")&&g.click()})}function p(g){if(!g)return;const{changeObject:y}=g;y&&y.propertyID==="title"&&h()}function m(){var g;if(e&&n){const{formSchemaUtils:y}=n,v=ce.tabs.name;y.getControlBasicInfoMap().set(e.schema.id,{componentTitle:v,parentPathName:v});const b=e.designerItemElementRef.value.querySelector(".farris-tabs-content");(g=e.schema.contents)==null||g.forEach(w=>{const C=b==null?void 0:b.querySelector(`#${w.id}-design-item`);C&&C.componentInstance&&C.componentInstance.value.setComponentBasicInfoMap()})}}return{canAccepts:s,checkCanDeleteComponent:u,checkCanMoveComponent:d,getPropsConfig:c,hideNestedPaddingInDesginerView:f,onPropertyChanged:p,setComponentBasicInfoMap:m}}function uf(e,n,o,a,i,l){const r=t.ref([]),s=t.ref(e.activeId||""),u=t.ref(!0),d=t.ref(),f=t.ref([]),c=t.ref(!0),h=t.ref(0),p=t.computed(()=>{const A=r.value.find(K=>K.props.id===s.value);return(A==null?void 0:A.props.toolbarPosition)==="inHead"});let m;function g(A){m=A}function y(A,U=!0){const K=A.value&&A.value.length>0?0:-1;if(f.value=[],K!==-1&&(!s.value||typeof s.value=="object")){if(s.value=A.value[K].props.id,!U)return;const Q=A.value[K];Q&&Q.props.toolbar&&Q.props.toolbar.buttons&&Q.props.toolbar.buttons.length&&(f.value=[...Q.props.toolbar.buttons])}}function v(){const A=r.value.find(Q=>Q.props.id===s.value);if(f.value=[],A&&A.props.toolbar){const Q=Object.prototype.hasOwnProperty.call(A.props.toolbar,"contents")?"contents":"buttons";A.props.toolbar[Q]&&A.props.toolbar[Q].length&&(f.value=[...A.props.toolbar[Q]])}const U=a.schema.contents,K=U==null?void 0:U.find(Q=>Q.id===s.value);K!=null&&K.toolbar&&!K.toolbar.type&&(K.toolbar.type="tab-toolbar"),d.value=K==null?void 0:K.toolbar}function b(A){const U=s.value;s.value=A,i.changeSelectedId(""),v(),n.emit("tabChange",{prevId:U,nextId:s.value})}function w(A){let U=-1;!s.value&&(U=A.value.findIndex(K=>s.value===K.props.id),U>-1)||(y(A,!1),b(s.value))}function C(A){let U=!1;U=!r.value.find(Q=>Q.props.id===A),U?(s.value="",w(r)):(s.value=A,b(s.value))}function x(A,U){A.classList.contains(U)||A.classList.add(U)}function T(A,U){A.classList.remove(U)}function S(A){const{parentElement:U}=A;U&&(A.scrollWidth>U.offsetWidth?x(A,"farris-title-text-custom"):T(A,"farris-title-text-custom"))}t.watch(()=>e.activeId,(A,U)=>{A!==U&&C(A)});function V(A){var K;if(e.autoTitleWidth)return;const U=(K=A.value)==null?void 0:K.querySelectorAll(".st-tab-text");U&&U.forEach(Q=>S(Q))}const N=A=>{A.preventDefault(),A.stopPropagation()};function k(A){r.value=r.value.filter(U=>U.props.id!==A),s.value===A&&(s.value="",y(r))}function I(A,U,K=!1){const Q=r.value.findIndex(oe=>oe.props.id===U);k(U),N(A),t.nextTick(()=>{h.value++,V(o),K&&(u.value=!0),n.emit("tabRemove",{removeIndex:Q,removeId:U,activeId:s.value})})}function E(A,U=!0){s.value===A&&(s.value="",y(r)),t.nextTick(()=>{h.value++,U&&(u.value=!0)})}function _(A){b(A)}function M(A){r.value.findIndex(K=>K.props.id===A.props.id)===-1&&r.value.push(A),h.value++}function F(A){r.value.findIndex(K=>K.props.id===A.props.id)!==-1&&(r.value.forEach(K=>{K.props.id===A.props.id&&(K=A)}),A.props.id===s.value&&p.value,t.nextTick(()=>{h.value++,V(o)}))}function P(A){A&&(A.stopPropagation(),A.preventDefault())}function B(A){var Q;const U=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),K=U==null?void 0:U.querySelector(`#${A}-design-item`);(Q=K==null?void 0:K.componentInstance)!=null&&Q.value.onRemoveComponent&&K.componentInstance.value.onRemoveComponent(l)}function $(A){var X,ne;const U=l.formSchemaUtils.getExpressions();if(!U||!U.length)return;const K=a.schema.contents,Q=K==null?void 0:K.find(ie=>ie.id===A);if(!Q||!((ne=(X=Q.toolbar)==null?void 0:X.buttons)!=null&&ne.length))return;const oe=ie=>{ie.forEach(we=>{const le=U.findIndex(de=>de.target===we.id);le>-1&&U.splice(le,1),we.children&&we.children.length&&oe(we.children)})};oe(Q.toolbar.buttons)}function j(A,U){var oe,X;P(A);const K=a.schema.contents,Q=K==null?void 0:K.findIndex(ne=>ne.id===U);!K||Q===-1||Q===void 0||(oe=l==null?void 0:l.designerContext)!=null&&oe.checkCanDeleteControl&&!l.designerContext.checkCanDeleteControl(K[Q])||($(U),B(U),K==null||K.splice(Q,1),k(U),v(),(X=a==null?void 0:a.setupContext)==null||X.emit("selectionChange"),lt.value++)}function D(){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(U=>U.classList.remove("dgComponentFocused"));const A=document.getElementsByClassName("dgComponentSelected");Array.from(A).forEach(U=>U.classList.remove("dgComponentSelected"))}function O(A){A.currentTarget.classList.add("dgComponentFocused","dgComponentSelected")}function L(A,U){var X;const{contents:K=[]}=a.schema,Q=K==null?void 0:K.findIndex(ne=>ne.id===A),oe=K[Q];(X=a==null?void 0:a.setupContext)==null||X.emit("selectionChange",oe.type,oe,e.componentId,U)}function z(A,U){const K=U.getBoundingClientRect(),Q=A.getBoundingClientRect(),oe=Q.left+Q.width<=K.left+K.width,X=Q.left+Q.width>=K.left;return oe&&X}function G(A,U){if(A||(A=m.value.querySelector(".farris-tabs-header").querySelector(".dgComponentSelected")),U||(U=m.value.querySelector(".farris-nav-tabs")),A&&U){const K=A.querySelector(".component-btn-group");z(A,U)?lo(A):K&&(K.style.display="none")}}function J(){o&&o.value&&o.value.addEventListener("scroll",A=>{const U=A.target.querySelector(".dgComponentSelected");G(U,A.target)})}function te(A){if(A&&A.parentElement){let U=A.getBoundingClientRect(),K=A.parentElement.getBoundingClientRect();(U.left<K.left||U.right>K.right)&&(o.value.scrollLeft=0,U=A.getBoundingClientRect(),K=A.parentElement.getBoundingClientRect(),o.value.scrollLeft=U.left-K.left),Fn(A)}}function W(A,U,K){var X,ne,ie;D(),P(A),O(A),L(U,K);const Q=A.currentTarget;te(Q);const oe=(ne=(X=K.schema)==null?void 0:X.contents)==null?void 0:ne.find(we=>we.id===U);if(oe&&(!oe.toolbar||((ie=oe.toolbar.buttons)==null?void 0:ie.length)===0)){const we=A.currentTarget;t.nextTick(()=>{D(),we==null||we.classList.add("dgComponentFocused","dgComponentSelected"),te(we)})}}function q(A){var Q;const U=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),K=U==null?void 0:U.querySelector(`#${A}-design-item`);(Q=K==null?void 0:K.componentInstance)!=null&&Q.value.onRemoveComponent&&K.componentInstance.value.setComponentBasicInfoMap()}function R(A,U){P(A);const K=a.schema.contents,Q=K==null?void 0:K.find(X=>X.id===U);if(!Q)return;(!Q.toolbar||!Q.toolbar.buttons)&&(Q.toolbar={id:`${Q.id}_toolbar`,buttons:[]}),Q.toolbar.id||(Q.toolbar.id=`${Q.id}_toolbar`);const oe=En("tab-toolbar-item");oe.id=`tab_toolbar_item_${Math.random().toString().slice(2,6)}`,Q.toolbar.buttons.push(oe),f.value=[...Q.toolbar.buttons],d.value=Q.toolbar,q(Q.id),t.nextTick(()=>{if(o&&o.value){const X=o.value.querySelector(".f-state-active");X&&te(X)}})}function H(A){}return{activeId:s,addTab:M,changeTitleStyle:V,removeTab:I,selectTab:_,tabPages:r,updateTab:F,toolbarItems:f,removeDesignTab:j,selectDesignTab:W,toolbarSchema:d,changeToolbarItems:v,addTabPageToolbar:R,listenTabNavElementScroll:J,setHorizontalScrollbarPosition:te,needUpdateNavigationLayout:h,checkActiveIdAndSelect:C,toggleShowTab:E,hasInHeadClass:p,emitSelectionChange:L,resetPositionForSelectedElement:G,setTabsRef:g,setScrollToSelectedTabFunction:H,toolbarVisible:c,updateComponentBasicInfoMap:q}}class df extends Et{constructor(o,a,i="response-toolbar"){super(o,a);se(this,"toolbarType","response-toolbar");this.toolbarType=i}getPropertyConfig(o){if(this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.toolbarType!=="tab-toolbar"&&this.getAppearancePropConfig(o),this.toolbarType==="response-toolbar")this.propertyConfig.categories.behavior=this.getBehaviorConfig(o);else{const a=this,i=this.getPropertyEditorParams(o,["Const"],"visible");this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:i}},setPropertyRelates(l,r){l&&a.afterMutilEditorChanged(o,l)}}}return this.propertyConfig}getAppearancePropConfig(o){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}}}}getBehaviorProperties(o){this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{alignment:{title:"对齐方式",description:"在工具栏区域内按钮组的位置",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}}function ff(e,n,o){const a=e.schema;function i(){var g;let m=((g=e.parent)==null?void 0:g.schema.type)||"";["page-header","tabs","section"].findIndex(y=>y===m)===-1&&(m=""),o.toolbarPosition=m}i();function l(m){return!1}function r(m,g){return g.text=m.label,g}function s(){return!1}function u(){return!1}function d(){return!1}function f(){return!0}function c(m){return new df(m,n,a.type).getPropertyConfig(a)}function h(m){var b;m&&(m.stopPropagation(),m.preventDefault());const{schema:g}=e;g.buttons||(g.buttons=[]);let y="";if(g.type)y=g.type+"-item";else{const w=(b=e.parent)==null?void 0:b.schema.type;y=w==="tabs"?"tab-toolbar-item":w==="section"?"section-toolbar-item":"response-toolbar-item"}const v=fo(y);v.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,g.buttons.push(v),o.updateToolbarItems(),o.changeSelectedId("")}function p(){return[{id:"appendItem",title:"新增按钮",text:"",icon:"f-icon f-icon-plus-circle text-white",onClick:m=>h(m)}]}return{canAccepts:l,checkCanAddComponent:d,checkCanDeleteComponent:u,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:f,onResolveNewComponentSchema:r,getPropsConfig:c,getCustomButtons:p}}function pf(e){let n;function o(i,l,r,s){const u=e.schema;if(!(u!=null&&u.buttons))return;let d;if(r){const p=r.getAttribute("id");d=Array.from(l.children).findIndex(m=>m.getAttribute("id")===p)}else d=Array.from(l.children).length;const f=i.getAttribute("id"),c=Array.from(l.children).findIndex(p=>p.getAttribute("id")===f),h=u.buttons[c];c!==d&&c>-1&&d>-1&&(c<d&&(d=d-1),u.buttons.splice(c,1),u.buttons.splice(d,0,h),s(),t.nextTick(()=>{const p=l.querySelector(".dgComponentSelected");p!=null&&p.className.includes("dgComponentSelected")&&(p.classList.remove("dgComponentSelected"),p.classList.remove("dgComponentFocused"),p.click()),lt.value++}))}function a(i,l,r){n&&n.destroy(),!(!Kt||!i||!l)&&(n=Kt([i],{mirrorContainer:l,direction:"horizontal",getMirrorText(s){return s.innerText},moves(s,u,d){let f=!0;return d.classList.contains("dropdown-item")?(f=!1,f):(s.classList.contains("no-drag")&&(f=!1),f)}}).on("drop",(s,u,d,f)=>o(s,u,f,r)))}return{dragulaInstance:n,initDragula:a}}function mf(e,n,o){const{renderToolbarItemDesigner:a,actionHandlers:i}=o;let l;function r(b){l=b}function s(b,w=null){const C=n.value.find(x=>x.id===b.id);if(C.isDP)if(document.body.click(),typeof w=="boolean")C.expanded=w;else{const x=b.expanded;C.expanded=!x}}i.toggleDropdownMenu=s;function u(b){var C;const w={"dropdown-menu":!0};if(b.class){const x=(C=b.menuClass)==null?void 0:C.split(" ");x&&x.length&&x.reduce((T,S)=>(T[S]=!0,T),w)}return w}function d(b){var x;const w={disabled:b.disabled===!1,"dropdown-submenu":!0,"f-rt-dropdown":!0,"text-truncate":!0},C=(x=b.dropdownClass)==null?void 0:x.split(" ");return C&&C.length&&C.reduce((T,S)=>(T[S]=!0,T),w),w}function f(b){const w={disabled:!1,"dropdown-item":!0,"f-rt-btn":!0,"position-relative":!0,"farris-component":!0,"text-truncate":!0},C=(b.class||"").split(" ");return C&&C.length&&C.reduce((x,T)=>(x[T]=!0,x),w),w}let c;const h=new Map;function p(b,w,C){b.stopPropagation();const x=C?C.id:"__top_item__";if(w.children&&w.children.length&&(w.expanded=!w.expanded,w.expanded)){if(h.has(x)&&h.get(x)!==w){const T=h.get(x);T&&(T.expanded=!1,h.delete(x))}h.set(x,w)}}function m(b){var w;return(w=b.children)==null?void 0:w.map((C,x)=>C.children&&C.children.length?t.createVNode("li",{class:d(C),id:C.id},[t.createVNode("span",{class:f(C),onClick:T=>p(T,C,b)},[C.text,t.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right",style:"display: inline-block;float: right;line-height: 1.25rem;"},null)]),c(C,C)]):a(C,x,!0))}function g(b,w,C,x){const{height:V,left:N,top:k}=x[0],{width:I,height:E}=C.getBoundingClientRect(),{marginTop:_,marginBottom:M}=getComputedStyle(C),F=Math.ceil(parseFloat(_))+Math.ceil(parseFloat(M)),P=k+V,B=w==null?void 0:w.getBoundingClientRect();function $(){let L=0,z="left";const G=B?B.right:window.innerWidth,J=B?B.left:0;return L=G-N-10,G-N<I&&N-J>G-N&&(z="right",L=N-J-10),{hposition:z,maxWidth:Math.min(L,300)}}let j=0,D="bottom";if(b==="tabs"||b==="section")j=w.getBoundingClientRect().bottom-P-F-10;else{const L=B?B.bottom:window.innerHeight;j=b==="page-header"?L-P:k,j=j-F-10,D=b==="page-header"?"bottom":"top"}const O=$();return{position:D+"-"+O.hposition,maxWidth:O.maxWidth,maxHeight:j}}function y(b){var S,V,N;const w="300px",C={display:b.expanded===!0?"block":"none",position:"absolute",maxWidth:w,minWidth:"120px"};if(!(l!=null&&l.value))return C;const x=l.value.querySelector("#"+b.id),T=x==null?void 0:x.getClientRects();if(x&&T&&T.length>0){const k=x?x.querySelector("#"+b.id+"_menu"):null;if(!k||b.expanded!==!0)return C;k.style.visibility="hidden",k.style.display="block",k.style.maxHeight="auto",k.style.maxWidth=w;let I;switch(i.toolbarPosition){case"tabs":I=(S=l.value)==null?void 0:S.closest(".farris-tabs");break;case"section":I=(V=l.value)==null?void 0:V.closest(".f-section");break;default:I=(N=l.value)==null?void 0:N.closest(".f-page")}const E=g(i.toolbarPosition,I,k,T),{position:_,maxHeight:M,maxWidth:F}=E;k.style.visibility="visible";const P={left:_.indexOf("left")>-1?0:"unset",right:_.indexOf("left")>-1?"unset":0,bottom:_.indexOf("bottom")>-1?"unset":"100%",top:_.indexOf("bottom")>-1?"!00%":"unset",maxWidth:F?F+"px":"300px",maxHeight:M?M+"px":"auto",overflowY:M?"auto":"unset"};Object.assign(C,P)}return C}i.changeMenuPosition=y,c=function(b,w){return t.createVNode("ul",{class:u(b),style:y(b),id:b.id+"_menu"},[m(b)])};function v(b=""){b&&h.has(b)?h.forEach((w,C)=>{C!==b&&(w.expanded=!1,h.delete(C))}):(h.forEach(w=>{w.expanded=!1}),h.clear())}return{renderDropdownMenu:c,clearAllDropDownMenu:v,setResponseToolbarRef:r}}function xr(){function e(o){const a={"f-icon":!0};if(o.icon){const i=o.icon.trim().split(" ");i&&i.length&&i.reduce((l,r)=>(l[r]=!0,l),a)}return a}function n(o){return!!(o.icon&&o.icon.trim())}return{iconClass:e,shouldShowIcon:n}}class hf extends Et{constructor(n,o){super(n,o)}getPropertyConfig(n,o=!1){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.getAppearanceProperties(n,o),this.getbBehaviorConfig(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n,o=!1){this.propertyConfig.categories.appearance={title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式",visible:!o},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(n.children&&n.children.length>0)}}}}getbBehaviorConfig(n){const o=this.getPropertyEditorParams(n,["Const","Variable","StateMachine","Expression"],"disabled");this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:o}})}getEventPropConfig(n){const o=[{label:"onClick",name:"点击事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),l=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,s){const u=r.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}class gf extends Et{constructor(o,a,i="response-toolbar-item"){super(o,a);se(this,"toolbarType","response-toolbar-item");this.toolbarType=i}getPropertyConfig(o,a=!1){this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.propertyConfig.categories.basic.setPropertyRelates=l=>{if(l)switch(l&&l.propertyID){case"text":{l.needRefreshControlTree=!0;break}}},this.getAppearanceProperties(o,a);const i=this.getPropertyEditorParams(o,["Const","Variable","StateMachine","Expression"],"disabled");return this.propertyConfig.categories.behavior=this.getBehaviorConfig(o,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:i}}),this.getEventPropConfig(o),this.propertyConfig}getAppearanceProperties(o,a=!1){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"",$converter:"/converter/appearance.converter",parentPropertyID:"appearance",visible:!a},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(o.children&&o.children.length>0)},tipsEnable:{title:"启用提示",type:"boolean",description:"当启用提示时,鼠标滑过按钮会有消息提示框",refreshPanelAfterChanged:!0,visible:this.toolbarType==="response-toolbar-item"},tipsText:{title:"提示消息内容",type:"string",description:"消息提示框内的展示内容",visible:o.tipsEnable===!0}}}}getEventPropConfig(o){const a=[{label:"onClick",name:"点击事件"}],i=this,l=i.eventsEditorUtils.formProperties(o,i.viewModelId,a),r=i.createBaseEventProperty(l);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete o[i.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(o,i.viewModelId,d.events,d))}}}}function Do(e,n){if(!e)return!1;const o=n||[];return(o==null?void 0:o.findIndex(i=>i.id===e))===-1}function Tr(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};return o.some((i,l)=>{if(i.children&&i.children.length>0){const r=i.children.findIndex(s=>s.id===e);return r>-1?(a={parentIndex:l,itemIndex:r},!0):!1}}),a}function Vr(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};const i=o==null?void 0:o.findIndex(l=>l.id===e);return i>-1?{parent:null,item:o[i]}:(o.some((l,r)=>{if(l.children&&l.children.length>0){const s=l.children.findIndex(u=>u.id===e);return s>-1?(a={parentIndex:r,itemIndex:s},!0):!1}}),a.parentIndex<0?{parent:null,item:null}:{parent:o[a.parentIndex],item:o[a.parentIndex].children[a.itemIndex]})}function yf(e,n){const o=n||[],a=o==null?void 0:o.findIndex(i=>i.id===e);return a>-1&&o[a].children&&o[a].children.length>0?o[a].expanded===!0:!1}function vf(e,n,o){function a(E){return!1}function i(){return!1}function l(){return!1}function r(){return!1}function s(){return o.toolbarContext.schema.buttons||[]}function u(E,_=""){setTimeout(()=>{var B,$;const M=(B=e.parent)==null?void 0:B.designerItemElementRef.value;let F;_&&(F=M==null?void 0:M.querySelector("#"+_));const P=($=F||M)==null?void 0:$.querySelector("#"+E);P==null||P.click()},0)}function d(E,_){_.disabled&&_.disabled.expressionId&&(_.disabled.expressionId=`${_.id}_disabled`),_.visible&&_.visible.expressionId&&(_.visible.expressionId=`${_.id}_visible`);const M=n.formSchemaUtils.getExpressions(),F=M.find(B=>B.target===E.id);if(!F||!F.rules||!F.rules.length)return;const P={target:_.id,rules:[],targetType:"Button"};F.rules.forEach(B=>{const $=Object.assign(Fe.cloneDeep(B),{id:`${_.id}_${B.type}`});P.rules.push($)}),M.push(P)}function f(){var F;const E=e.schema,_=Object.assign(Fe.cloneDeep(E),{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null});(F=n==null?void 0:n.designerContext)!=null&&F.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(_);let M=[];return _.children&&_.children.length&&(M=_.children.map(P=>{var $;const B=Fe.cloneDeep(P);return Object.assign(B,{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null}),($=n==null?void 0:n.designerContext)!=null&&$.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(B),d(P,B),B}),_.children=M),d(E,_),_}function c(){const E=e.schema.type||"response-toolbar-item",_=En(E),M=E.toLowerCase().replace("-","_");return _&&!_.id&&_.type===E&&(_.id=`${M}_${Math.random().toString().slice(2,6)}`,_.text="按钮"),_}function h(E){const _=s(),M=_==null?void 0:_.findIndex(P=>P.id===E),F=M===-1?null:_[M];return{index:M,toolbarItem:F}}function p(){const E=e.schema.id,_=s();return Do(E,_)}function m(E){const _=n.formSchemaUtils.getExpressions();if(!_||!_.length)return;const M=F=>{const P=_&&_.findIndex(B=>B.target===F.id);P>-1&&_.splice(P,1)};M(E),E.children&&E.children.length&&E.children.forEach(F=>{M(F)})}function g(E){o.changeSelectedId(E)}function y(E){n.formSchemaUtils.removeCommunicationInComponent(E),E.children&&E.children.length&&E.children.forEach(_=>{n.formSchemaUtils.removeCommunicationInComponent(_)})}function v(){var F,P,B;if((F=n==null?void 0:n.designerContext)!=null&&F.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const E=s(),{parentIndex:_,itemIndex:M}=Tr(e.schema.id,E);_===-1||M===-1||(m(e.schema),y(e.schema),E[_].children.splice(M,1),o.updateToolbarItems(),(P=e.setupContext)==null||P.emit("removeComponent"),(B=e.setupContext)==null||B.emit("selectionChange"),lt.value++)}function b(){var F,P,B;if((F=n==null?void 0:n.designerContext)!=null&&F.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const E=e.schema.id,_=s(),M=_==null?void 0:_.findIndex($=>$.id===E);M!==-1&&(m(_[M]),y(_[M]),_==null||_.splice(M,1),o.updateToolbarItems(),(P=e.setupContext)==null||P.emit("removeComponent"),(B=e.setupContext)==null||B.emit("selectionChange"),lt.value++)}function w(E="Append"){var $;const _=s(),{parentIndex:M,itemIndex:F}=Tr(e.schema.id,_);if(M===-1||F===-1)return;const P=c(),B=E==="Copy"?f():Object.assign({},P);_[M].children.splice(F+1,0,B),o.updateToolbarItems(),g(B.id),($=e.setupContext)==null||$.emit("addComponent")}function C(E,_){const{index:M}=h(_);if(M===-1)return{index:M,schema:null};const F=c(),P=E==="Copy"?f():Object.assign({},F);return{index:M,schema:P}}function x(){var F;const E=e.schema.id,{index:_,schema:M}=C("Copy",E);M&&(s().splice(_+1,0,M),o.updateToolbarItems(),u(M.id),(F=e.setupContext)==null||F.emit("addComponent"))}function T(){var F;const E=e.schema.id,{index:_,schema:M}=C("Append",E);if(M&&e.parent){const B=s()[_].children||[];B.push(M);const $=s();$[_].children=B,o.updateToolbarItems(),g(M.id),(F=e.setupContext)==null||F.emit("addComponent")}}function S(E){let _;switch(e.schema.type){case"tab-toolbar-item":_=new hf(E,n);break;default:_=new gf(E,n,e.schema.type)}return _.getPropertyConfig(e.schema,p())}function V(E){E.stopPropagation(),E.stopImmediatePropagation()}function N(){const E=[{id:"delete",title:"删除",text:"",icon:"f-icon-yxs_delete",onClick:_=>{V(_),p()?v():b()}},{id:"copy",title:"复制",icon:"f-icon-yxs_copy",onClick:_=>{V(_);const{activeElement:M}=document,F=M?M.tagName.toLowerCase():"";F&&F==="input"||F==="textarea"?(M==null||M.blur(),t.nextTick(()=>{p()?w("Copy"):x()})):p()?w("Copy"):x()}}];return E.push(p()?{id:"appendSiblingButton",title:"",text:"新增同级",icon:"f-icon-plus-circle",onClick:_=>{V(_),w()}}:{id:"appendChildButton",title:"",text:"新增子级",icon:"f-icon-plus-circle",onClick:_=>{V(_),T()}}),E}function k(){const{schema:E}=e;m(E)}function I(){var E,_,M,F;if(e&&n){const{formSchemaUtils:P}=n,{schema:B}=e;switch(B.type){case"response-toolbar-item":{P.getControlBasicInfoMap().set(B.id,{componentTitle:B.text,parentPathName:B.text});break}case"tab-toolbar-item":case"section-toolbar-item":{let $;const j=(E=e.parent)==null?void 0:E.parent;(j==null?void 0:j.schema.type)==="tabs"||(j==null?void 0:j.schema.type)==="section"?$=(_=j.componentInstance)==null?void 0:_.value:$=(F=(M=j==null?void 0:j.parent)==null?void 0:M.componentInstance)==null?void 0:F.value,$!=null&&$.setComponentBasicInfoMap&&$.setComponentBasicInfoMap()}}}}return{canAccepts:a,checkCanMoveComponent:i,checkCanDeleteComponent:l,checkCanAddComponent:r,getPropsConfig:S,getCustomButtons:N,onRemoveComponent:k,setComponentBasicInfoMap:I}}const bf=t.defineComponent({name:"FResponseToolbarItemDesign",props:mr,emits:["Click","dropdown","clearAll"],setup(e,n){const o=t.ref(e.alignment),a=xr(),i=t.ref(),l=t.inject("designer-host-service"),r=t.inject("design-item-context"),s=t.inject("toolbar-item-action"),u=vf(r,l,s),d=Zn.useDesignerInnerComponent(i,r,u);t.onMounted(()=>{i.value.componentInstance=d}),n.expose(d.value);function f(){const C={"f-icon":!0},x=e.icon?e.icon.trim():"";return Ie.getCustomClass(C,x)}function c(){return!!(e.icon&&e.icon.trim())}const h=t.computed(()=>{const C={btn:!0,"f-rt-btn":!0,"f-btn-ml":!e.isDP&&(o.value==="right"||o.value==="center"),"f-btn-mr":!e.isDP&&o.value==="left","btn-icontext":!!(e.icon&&e.icon.trim()),disabled:e.disabled===!0,"no-drag":!0,"text-truncate":!0};return Ie.getCustomClass(C,e.class)}),p=t.computed(()=>e.split?{display:"flex","align-items":"center"}:{display:"flex","align-items":"center","border-radius":"6px","padding-right":"0.1rem","border-top-right-radius":"6px","border-bottom-right-radius":"6px"}),m=t.computed(()=>{const C={btn:!0,"dropdown-toggle":!0,"f-btn-mr":o.value==="left","dropdown-toggle-split":!0,"no-drag":!0};return Ie.getCustomClass(C,e.class)}),g=t.computed(()=>{let C={btn:!e.isDPItem,disabled:e.disabled===!0,"dropdown-item":e.isDPItem,"f-rt-btn":!0,"text-truncate":!0,"btn-icontext":!e.isDPItem&&!!(e.icon&&e.icon.trim()),"dropdown-item-icontext":e.isDPItem&&!!(e.icon&&e.icon.trim()),"no-drag":!0};return e.isDPItem||(C=Ie.getCustomClass(C,e.class||"")),e.isDP&&(C=Ie.getCustomClass(C,e.dropdownClass||"")),C});function y(C,x){x&&x.stopPropagation(),n.emit(C,{id:e.id,isDP:e.isDP})}function v(){return{"btn-group":!0,"no-drag":!0,"f-rt-dropdown":!0,"f-btn-ml":o.value==="right"||o.value==="center","f-btn-mr":o.value==="left"}}function b(){return t.createVNode("div",{ref:i,"data-dragref":`${r.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("div",{class:v(),id:e.id},[t.createVNode("div",{class:h.value,style:p.value,onClick:()=>y("clearAll")},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),t.createVNode("span",null,[e.text]),!e.split&&t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down",style:"margin:0 0.5rem 0 0.25rem;",onClick:C=>y("dropdown",C)},null)]),e.split&&t.createVNode("button",{class:m.value,style:"border-radius:0 6px 6px 0;",onClick:C=>y("dropdown",C)},null),s.renderDropdownMenu(e.item,e.item)])])}function w(){return t.createVNode("li",{ref:i,"data-dragref":`${r.schema.id}-container`,id:e.id,class:g.value},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),e.text])}return()=>e.isDP?b():e.isDPItem?w():t.createVNode("div",{ref:i,"data-dragref":`${r.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("button",{type:"button",class:h.value,id:e.id,onClick:()=>y("clearAll")},[c()&&t.createVNode("i",{class:f()},null),e.text])])}});function Cf(e,n,o,a){function i(h,p,m,g){a.changeSelectedId((p==null?void 0:p.id)||""),o&&o.setupContext&&o.setupContext.emit("selectionChange",h,p,m,g)}function l(){}function r(h){const p=h.expanded;a.clearAllDropdown(),a.toggleDropdownMenu(h,!p)}function s(h){a.clearAllDropdown(h.isDP?h.id:"")}function u(h,p=""){const m=e.items||[],g=p||h,y=m.find(v=>v.id===g);return p?y.children.find(v=>v.id===h):y}function d(h,p=!1){if(!p)return;const m=h.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.add("dgComponentSelected"))}function f(h,p=!1){if(!p)return;const m=h.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.remove("dgComponentSelected"))}function c(h,p,m=!1){const g=u(h.id,h.parent),y=t.ref(g);return t.createVNode(Io,{key:g.id,class:["p-0",m?"d-block no-drag":"d-inline-block"],modelValue:y.value,"onUpdate:modelValue":v=>y.value=v,canMove:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",componentId:e.componentId,id:g.id,onSelectionChange:i,onRemoveComponent:l,onMouseenter:v=>d(v,m),onMouseleave:v=>f(v,m)},{default:()=>{var v;return[t.createVNode(bf,{id:g.id,disabled:g.disabled,text:g.text,icon:g.icon,isDP:h.isDP,item:h,split:g.split,isDPItem:h.isDPItem,class:((v=h.appearance)==null?void 0:v.class)||"btn-secondary",alignment:e.alignment||"right",onDropdown:()=>r(h),onClearAll:b=>s(b),componentId:e.componentId},null)]}})}return{renderToolbarItemDesigner:c,actionHandlers:a}}function jo(e,n=!1,o=""){const a=[];return e.reduce((i,l)=>{if(l.children&&l.children.length>0){const r=jo(l.children,!0,l.id);i.push(Object.assign({},l,{children:r,isDPItem:!1,isDP:!0,parent:"",expanded:!1}))}else i.push(Object.assign({},l,{isDPItem:n,isDP:!1,parent:o}));return i},a),a}const Nr=t.defineComponent({name:"FResponseToolbarDesign",props:Wd,emits:["Click"],setup(e,n){const o=t.ref(jo(e.items)),a=t.ref(),i=t.ref(),l=t.ref(),r=t.ref("");let s=0;const u=15,d=t.inject("designer-host-service"),f=t.inject("design-item-context"),c={clearAllDropdown:D=>{},toggleDropdownMenu:D=>{},updateToolbarItems:()=>{},changeSelectedId:D=>{r.value=D},renderDropdownMenu:(D,O)=>{},toolbarContext:f,changeMenuPosition:(D,O,L)=>({}),toolbarPosition:""},h=ff(f,d,c),p=Zn.useDesignerComponent(l,f,h),m=t.inject("toolbar-item-handler"),{initDragula:g,dragulaInstance:y}=pf(f),v=xr(),b=Cf(e,i,f,c),w=mf(v,o,b),{renderToolbarItemDesigner:C}=b,{clearAllDropDownMenu:x,renderDropdownMenu:T,setResponseToolbarRef:S}=w;t.provide("toolbar-item-action",c),c.renderDropdownMenu=T,S(l),m&&(m.changeSelectedId=function(D){r.value=D});function V(){const D=i.value.querySelector(".dgComponentSelected");D&&lo(D)}function N(){if(r.value)if(Do(r.value,o.value)){const{parent:D,item:O}=Vr(r.value,o.value);D&&(c.toggleDropdownMenu(D,!0),setTimeout(()=>{var G;const L=l.value.querySelector("#"+D.id),z=L==null?void 0:L.querySelector("#"+O.id);(((G=z==null?void 0:z.parentElement)==null?void 0:G.className)||"").indexOf("dgComponentFocused")<0&&(z==null||z.click())},0))}else V()}function k(D=""){o.value.filter(O=>O.id!==D&&O.children&&O.children.length>0).forEach(O=>{O.expanded=!1}),x(D)}c.clearAllDropdown=k;function I(){m&&m.updateToolbarItems&&m.updateToolbarItems()}c.updateToolbarItems=I;function E(D){if(D){const O=l.value.querySelector("#"+D.id),L=O.querySelector("#"+D.id+"_menu"),z=c.changeMenuPosition(D,O);Object.keys(z).forEach(G=>{L.style[G]=z[G]})}}function _(){const L=i.value.clientWidth,z=i.value.querySelectorAll(".farris-component>.f-rt-btn");z&&z.forEach(J=>{J.style.maxWidth=L-12+"px"});const G=i.value.querySelectorAll(".farris-component>.f-rt-dropdown");G&&G.forEach(J=>{J.querySelector(".dropdown-toggle-split")?J.querySelector(".f-rt-btn").style.maxWidth=L-38+"px":J.style.maxWidth=L-12+"px"})}const M=new ResizeObserver(D=>{var O;if(D.length){const z=D[0].contentRect.width;if(z===0){s=0;return}if(Math.abs(z-s)>u){if(s=z,Do(r.value,o.value)){const{parent:G,item:J}=Vr(r.value,o.value);E(G)}else if(yf(r.value,o.value)){const G=(O=o.value)==null?void 0:O.find(J=>J.id===r.value);E(G)}else k();_()}}});t.onMounted(()=>{M.observe(l.value),s=l.value.clientWidth,l.value.componentInstance=p,g(i.value,a.value,I)}),t.onUnmounted(()=>{M.disconnect(),y&&y.destroy&&y.destroy()}),n.expose(p.value);const F=t.computed(()=>{const D={"f-toolbar":!0,"f-response-toolbar":!0,"position-relative":!0,"f-response-toolbar-sm":e.buttonSize==="sm","f-response-toolbar-lg":e.buttonSize==="lg"};return Ie.getCustomClass(D,e.customClass)}),P=t.computed(()=>({"text-left":e.alignment==="left","text-right":e.alignment==="right","justify-content-end":e.alignment==="right","justify-content-start":e.alignment==="left","justify-content-center":e.alignment==="center","no-drag":!0,"w-100":!0}));t.watch(()=>e.items,()=>{o.value=jo(e.items),t.nextTick(()=>{N(),_()})},{deep:!0});function B(D){D&&(D.stopPropagation(),D.preventDefault());const{schema:O}=f;O.buttons||(O.buttons=[]);const L=fo("response-toolbar-item");L.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,L.appearance={class:"btn btn-secondary"},O.buttons.push(L)}function $(){return t.createVNode("li",{style:"border-width: 1px;border-style: dashed;display: inline-block;padding: 0 8px;line-height: 24px; border-radius: 3px; cursor: default;color: #B4BCCC;",onClick:B},[t.createVNode("span",{class:"f-icon f-icon-amplification mr-1",style:"font-size: 12px;"},null),t.createVNode("span",{class:"farris-tag-add-text"},[t.createTextVNode("添加按钮")])])}function j(){return o.value.map((D,O)=>C(D,O))}return()=>{var D;return t.createVNode("div",{ref:l,"data-dragref":`${f.schema.id}-container`,class:F.value,id:e.id},[t.createVNode("div",{ref:a,class:P.value,onClick:O=>k(O)},[t.createVNode("div",{ref:i,class:"d-block f-response-content"},[(D=o.value)!=null&&D.length?j():$()])])])}}});function wf(e,n,o,a,i){var h;const{toolbarItems:l,toolbarSchema:r,changeToolbarItems:s,hasInHeadClass:u}=e,d=r.value.id||`${((h=a==null?void 0:a.schema)==null?void 0:h.id)||""}-toolbar`;function f(p,m,g,y){var v;(v=a.setupContext)==null||v.emit("selectionChange",p,m,g,y)}function c(){s()}return t.createVNode("div",{class:"farris-tabs-toolbar",style:"overflow:unset;"},[t.createVNode("div",{class:"farris-tabs-inline-flex w-100",style:"flex:1"},[t.createVNode(Io,{modelValue:r.value,"onUpdate:modelValue":p=>r.value=p,class:"w-100 position-relative",key:d,canAdd:!1,childType:"tab-toolbar-item",childLabel:"按钮",contentKey:"buttons",id:d,onSelectionChange:f,componentId:i,onAddComponent:c},{default:()=>[t.createVNode(Nr,{alignment:u.value?"right":"left",items:l.value,componentId:i},null)]})])])}function Sf(e,n){let o;function a(s){var f;const d=Array.from(s.children).find(c=>c.className.includes("add-nav-item"));d&&!((f=d.className)!=null&&f.includes("d-none"))&&(d.className+=" d-none")}function i(s){var f;const d=Array.from(s.children).find(c=>c.className.includes("add-nav-item"));d&&((f=d.className)!=null&&f.includes(" d-none"))&&(d.className=d.className.replace(" d-none",""))}function l(s,u,d){i(u);const f=e.schema;if(!(f!=null&&f.contents))return;let c;if(d){const g=d.getAttribute("pageId");c=Array.from(u.children).findIndex(y=>y.getAttribute("pageId")===g)}else c=Array.from(u.children).length;const h=s.getAttribute("pageId"),p=Array.from(u.children).findIndex(g=>g.getAttribute("pageId")===h),m=f.contents[p];if(p!==c&&p>-1&&c>-1){if(p<c&&(c=c-1),f.contents.splice(p,1),f.contents.splice(c,0,m),n.value){const g=n.value[p];n.value.splice(p,1),n.value.splice(c,0,g)}t.nextTick(()=>{s.className.includes("dgComponentSelected")&&(s.classList.remove("dgComponentSelected"),s.classList.remove("dgComponentFocused"),s.click()),lt.value++})}}function r(s,u){o&&o.destroy(),!(!Kt||!s||!u)&&(o=Kt([s],{mirrorContainer:u,direction:"horizontal",moves(d){return!d.classList.contains("no-drag")},getMirrorText(d){return d.innerText},accepts(d,f,c,h){return a(f),h&&h.className.includes("nav-item")}}).on("drop",(d,f,c,h)=>l(d,f,h)))}return{dragulaInstance:o,initHeaderDragula:r}}const xf=t.defineComponent({name:"FTabsDesign",props:hr,emits:["tabChange","tabRemove"],setup(e,n){const o=t.ref(),a=t.inject("designer-host-service"),i=t.inject("design-item-context"),l=cf(i,a),r=Pt(o,i,l),s=t.ref(e.tabType),u=t.shallowRef(),d=t.shallowRef(),f={updateToolbarItems:function(){},changeSelectedId:H=>{}},c=uf(e,n,u,i,f,a),{activeId:h,changeTitleStyle:p,tabPages:m,addTab:g,updateTab:y,toolbarItems:v,setTabsRef:b,checkActiveIdAndSelect:w,listenTabNavElementScroll:C,toolbarSchema:x,toggleShowTab:T,hasInHeadClass:S,updateComponentBasicInfoMap:V}=c;b(o);const N=br(e,d,c),k=yr(e,u,N,c),{updateNavigationLayout:I}=k,E=vr(e,c),{hideDropDown:_}=E,M=rf(e,u,k,N,c,r),F=M,P=gr(e,u,k,N,c),B=new Map([["default",M],["one-page",F],["pills",P]]);t.computed(()=>{const H=m.value.find(A=>A.props.id===h.value);return H==null?void 0:H.slots});function $(){const H=r.value.schema.contents||[];return H.length<1?null:H.find(U=>U.id===h.value)}f.updateToolbarItems=function(){var A,U;const H=$();(A=H==null?void 0:H.toolbar)!=null&&A.buttons?v.value=[...(U=H==null?void 0:H.toolbar)==null?void 0:U.buttons]:v.value=[],x.value=H==null?void 0:H.toolbar,H!=null&&H.id&&V(H.id)},t.provide("tabs",{activeId:h,addTab:g,updateTab:y,tabPages:m,tabType:s,toggleShowTab:T}),t.provide("toolbar-item-handler",f);const j=t.computed(()=>e.fill),D=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":S.value,"farris-tabs-inContent":!S.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),O=t.computed(()=>{const H={width:S.value&&e.titleWidth?`${e.titleWidth}%`:""};return H.width&&(H.flex="unset"),H}),L=t.computed(()=>({"farris-tabs":!0,"flex-column":e.position==="top","flex-column-reverse":e.position==="bottom","flex-row":e.position==="left","flex-row-reverse":e.position==="right","one-page":e.tabType==="one-page"})),{initHeaderDragula:z,dragulaInstance:G}=Sf(i,m);t.onMounted(()=>{m.value.length&&w(e.activeId||m.value[0].props.id),t.nextTick(()=>{I()}),p(u),window.addEventListener("click",H=>{var A;_.value||(A=o.value)!=null&&A.contains(H.target)||(_.value=!0)}),window.addEventListener("resize",()=>{I()}),C(),o.value.componentInstance=r,e.tabType==="default"&&z(u.value,u.value)}),t.onUnmounted(()=>{G&&G.destroy&&G.destroy()});function J(){return!!v.value.length&&wf(c,r,l,i,e.componentId)}const te=B.get(e.tabType)||B.get("default");function W(){var H,A,U,K;return t.createVNode("div",{class:D.value},[t.createVNode("div",{class:"farris-tabs-header-pre"},[(A=(H=n.slots).headerPrefix)==null?void 0:A.call(H)]),t.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:O.value},[te&&te()]),J(),t.createVNode("div",{class:"farris-tabs-header-post"},[(K=(U=n.slots).headerSuffix)==null?void 0:K.call(U)])])}const q=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":j.value}));function R(){var H,A,U,K;return t.createVNode("div",{class:q.value,ref:d},[(A=(H=i==null?void 0:i.schema)==null?void 0:H.contents)!=null&&A.length?(K=(U=n.slots).default)==null?void 0:K.call(U):""])}return n.expose(r.value),r.value.updateToolbarItems=f.updateToolbarItems,()=>t.createVNode("div",{class:L.value,ref:o},[W(),R()])}});function Tf(e,n,o){return n?{enableAccordion:o.accordionMode}:{enableAccordion:""}}function Vf(e,n){var o;return{buttons:n.buttons,buttonPosition:n.position,buttonsClass:(o=n.appearance)==null?void 0:o.class,buttonsVisible:n.visible}}const $o=new Map([["appearance",ht],["expanded","expandStatus"],["enableAccordion",Tf],["toolbar",Vf]]);function Nf(e,n){const o=Math.random().toString().slice(2,6),a=n.parentComponentInstance,i=e.getSchemaByType("section");Object.assign(i,{id:`section-${o}`,appearance:{class:"f-section-in-mainsubcard"},mainTitle:n.mainTitle||i.mainTitle||"标题"});const l=e.getSchemaByType("content-container");Object.assign(l,{id:`container-${o}`,appearance:{class:"f-struct-wrapper"},contents:[i]});const r=a.schema;switch(r&&r.type){case ce["splitter-pane"].type:{i.appearance.class="f-section-in-main";break}}const s=a.elementRef,u=window.getComputedStyle(s);return u&&u.display==="flex"&&(l.appearance.class+=" d-block"),l}function Ir(e,n,o){return o.parentComponentInstance?Nf(e,o):n}const Fr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section.schema.json",title:"section",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a Section",type:"string"},type:{description:"The type string of Section component",type:"string",default:"section"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contentClass:{description:"",type:"string",default:""},contents:{description:"",type:"array",default:[]},enableAccordion:{description:"",type:"string",default:""},accordionMode:{description:"",type:"string",default:"default"},enableMaximize:{description:"",type:"boolean",default:!1},expanded:{description:"",type:"boolean",default:!0},fill:{description:"",type:"boolean",default:!1},headerClass:{description:"",type:"string",default:""},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},showHeader:{description:"",type:"string",default:!0},mainTitle:{description:"",type:"string",default:""},subTitle:{description:"",type:"string",default:""},headerContentClass:{description:"",type:"string",default:""},extendClass:{description:"",type:"string",default:""},visible:{description:"",type:"boolean",default:!0},expandStatus:{description:"",type:"boolean",default:!0},toolbar:{description:"",type:"object",properties:{type:{type:"string",default:"section-toolbar"},position:{type:"string",default:"inHead"},buttons:{type:"array",default:[]},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}}},default:null},headerTitleHtml:{description:"",type:"string",default:""},headerTitleRenderFunction:{description:"",type:"function",default:null},headerHtml:{description:"",type:"string",default:""},headerRenderFunction:{description:"",type:"function",default:null},headerContentHtml:{description:"",type:"string",default:""},headerContentRenderFunction:{description:"",type:"function",default:null},toolbarHtml:{description:"",type:"string",default:""},toolbarRenderFunction:{description:"",type:"function",default:null}},required:["id","type","contents"]},If={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section-toolbar.schema.json",title:"section-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Section Toolbar",type:"string"},type:{description:"The type string of Section Toolbar",type:"string",default:"section-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Section Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Section Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},Lo={contentClass:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},enableAccordion:{type:String,default:""},expandStatus:{type:Boolean,default:!0},mainTitle:{type:String,default:""},showHeader:{type:Boolean,default:!0},subTitle:{type:String,default:""},expandLabel:{type:String,default:"展开"},collapseLabel:{type:String,default:"收起"},headerClass:{type:String,default:""},enableMaximize:{type:Boolean,default:!1},headerContentClass:{type:String,default:""},extendClass:{type:String,default:""},buttons:{type:Array,default:[]},buttonPosition:{type:String,default:"inHead"},buttonsClass:{type:String,default:""},buttonsVisible:{type:Boolean,default:!0},fill:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},headerTitleRenderFunction:{type:Function},headerRenderFunction:{type:Function},headerContentRenderFunction:{type:Function},toolbarRenderFunction:{type:Function}};Ye(Lo,Fr,$o,Ir);const Ff=Object.assign({},Lo,{componentId:{type:String,default:""},headerTitleHtml:{type:String,default:""},headerHtml:{type:String,default:""},headerContentHtml:{type:String,default:""},toolbarHtml:{type:String,default:""}});Ye(Wn,If,$o,Hn),Ye(Ff,Fr,$o,Ir);function kf(e,n,o){let a;function i(u=1){const d=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],f=Array.from(document.body.querySelectorAll(d.join(","))).filter(h=>h).map(h=>{const{display:p,zIndex:m}=window.getComputedStyle(h);return p==="none"?0:parseInt(m,10)}).filter(h=>h);let c=Math.max(...f);return c<1040&&(c=1040),c+u}function l(){a=e.value.nextElementSibling;const u=document&&document.querySelector("body");u&&(u.appendChild(e.value),e.value.style.zIndex=i())}function r(){a?n.value.insertBefore(e.value,a):n.value.appendChild(e.value),e.value.style.zIndex=null}function s(){!e||!n.value||(o.value=!o.value,o.value?l():r())}return{onClickMaxMinIcon:s}}function kr(e,n){const o=t.ref(e.buttons),a=t.computed(()=>e.buttonPosition==="inHead"?"right":"left"),i=t.computed(()=>"f-section-toolbar col-6"+(e.buttonPosition==="inHead"?" f-toolbar f-section-header--toolbar":" f-section-content--toolbar")+(e.buttonsClass?" "+e.buttonsClass:"")),l=t.computed(()=>e.buttons&&e.buttons.length>0&&e.buttonPosition==="inHead");function r(d,f){n.emit("click",d,f)}function s(){return l.value&&t.createVNode(Vn,{customClass:i.value,items:o.value,onClick:r,alignment:a.value,visible:e.buttonsVisible},null)}function u(){return t.createVNode("div",{class:i.value},[t.createVNode("div",{class:"w-100",style:"flex:1"},[e.toolbarRenderFunction()])])}return()=>e.toolbarRenderFunction?u():s()}function Pf(e,n,o,a,i,l){const r={collapseLabel:Dt.LocaleService.getRealPropertyValue(e.collapseLabel,"收起","section.collapseLabel"),expandLabel:Dt.LocaleService.getRealPropertyValue(e.expandLabel,"展开","section.expandLabel")},s=t.computed(()=>e.buttonPosition),u=kr(e,n),{onClickMaxMinIcon:d}=kf(a,i,l),f=t.computed(()=>e.enableMaximize),c=t.computed(()=>e.enableAccordion!==""),h=t.computed(()=>{const C={"f-section-header":!0};return n.slots.header&&e.headerClass.split(" ").reduce((T,S)=>(T[S]=!0,T),C),C});function p(C){C.stopPropagation(),e.enableAccordion!==""&&(o.value=!o.value)}function m(){const C=t.computed(()=>({btn:!0,"f-btn-collapse-expand":!0,"f-btn-mx":!0,"f-state-expand":o.value})),x=t.computed(()=>({"f-icon":!0,"f-icon-maximize":!l.value,"f-icon-minimize":l.value}));return t.createVNode("div",{class:"f-max-accordion"},[f.value?t.createVNode("span",{class:x.value,onClick:d},null):"",c.value?t.createVNode("button",{class:C.value,onClick:p},[t.createVNode("span",null,[o.value?r.collapseLabel:r.expandLabel])]):""])}function g(){return t.createVNode("div",{class:"f-title"},[t.createVNode("h4",{class:"f-title-text"},[e.mainTitle]),e.subTitle&&t.createVNode("span",null,[e.subTitle])])}function y(){const C=t.computed(()=>{const x={"f-content":!0};return e.headerContentClass&&e.headerContentClass.split(" ").reduce((S,V)=>(S[V]=!0,S),x),x});return n.slots.headerContent?t.createVNode("div",{class:C.value},[n.slots.headerContent()]):e.headerContentRenderFunction?t.createVNode("div",{class:C.value},[e.headerContentRenderFunction()]):null}function v(){return n.slots.headerTitle?n.slots.headerTitle():e.headerTitleRenderFunction?e.headerTitleRenderFunction():g()}function b(){return t.createVNode("div",{class:h.value},[v(),y(),s.value==="inHead"&&u(),(f.value||c.value)&&m()])}function w(){return n.slots.header?t.createVNode("div",{class:h.value},[n.slots.header()]):e.headerRenderFunction?t.createVNode("div",{class:h.value},[e.headerRenderFunction()]):b()}return()=>e.showHeader&&w()}const Ef=t.defineComponent({name:"FSection",props:Lo,emits:["click"],setup(e,n){const o=t.ref(),a=t.ref(),i=t.ref(e.customClass),l=t.computed(()=>e.enableAccordion),r=t.ref(e.expandStatus),s=t.computed(()=>e.buttonPosition),u=t.ref(!1),d=Pf(e,n,r,o,a,u),f=kr(e,n),c=t.computed(()=>{const y={"f-section":!0,"f-section-accordion":l.value==="default","f-state-collapse":(l.value==="default"||l.value==="custom")&&!r.value,"f-section-custom-accordion":l.value==="custom","f-section-fill":e.fill,"f-section-maximize":u.value};return Ie.getCustomClass(y,i.value)}),h=t.computed(()=>{const y={"f-section-content":!0};return Ie.getCustomClass(y,e.contentClass)}),p=t.computed(()=>{const y={"f-section-extend":!0};return Ie.getCustomClass(y,e.extendClass)});function m(){return n.slots.extend&&t.createVNode("div",{class:p.value},[n.slots.extend()])}function g(){return t.createVNode("div",{class:h.value},[s.value==="inContent"&&f(),n.slots.default&&n.slots.default()])}return t.watch(()=>e.expandStatus,(y,v)=>{y!==v&&(r.value=y)}),t.onMounted(()=>{o.value&&o.value&&(a.value=o.value.parentElement)}),()=>e.visible?t.createVNode("div",{class:c.value,ref:o,style:e.customStyle},[d(),m(),g()]):null}});function Mf(e,n){const o=new So,{canAccept:a}=o.getTemplateRule(e,n);function i(u){if(!Si().basalDragulaRuleForContainer(u,n))return!1;const{schema:f}=e;return f.contents&&f.contents.length>0?!1:a}function l(u){return null}function r(){const{schema:u,parent:d}=e;d!=null&&d.schema.activeId&&u.id===d.schema.activeId&&(d.schema.activeId="")}function s(){var u,d;if(e&&n){const{formSchemaUtils:f}=n,c=f.getControlBasicInfoMap(),{schema:h}=e;c.set(h.id,{componentTitle:h.title,parentPathName:h.title}),(d=(u=h.toolbar)==null?void 0:u.buttons)!=null&&d.length&&h.toolbar.buttons.map(p=>{var m;c.set(p.id,{componentTitle:p.text,parentPathName:`${h.title} > ${p.text}`}),(m=p.children)!=null&&m.length&&p.children.map(g=>{c.set(g.id,{componentTitle:g.text,parentPathName:`${h.title} > ${g.text}`})})})}}return{canAccepts:i,getDraggableDesignItemElement:l,onRemoveComponent:r,setComponentBasicInfoMap:s}}function _f(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const Of=t.defineComponent({name:"FTabPageDesign",props:Sr,emits:[],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=t.inject("designer-host-service"),l=Mf(a,i),r=Pt(o,a,l);r.value.canNested=!1,r.value.canDelete=!1,r.value.canMove=!1,n.expose(r.value);const s=t.inject("tabs"),u=t.ref(!0),d={slots:n.slots,props:e},f=t.ref((s==null?void 0:s.tabType.value)||"default");t.onMounted(()=>{o.value.componentInstance=r;const b=s.tabPages.value.findIndex(w=>w.props.id===e.id);!b||b===-1?s==null||s.addTab(d):b>-1&&(u.value=!1,console.warn(`已经存在id为${e.id}的页签啦`))}),t.onUnmounted(()=>{});const c=t.computed(()=>(e==null?void 0:e.id)===(s==null?void 0:s.activeId.value)),h=t.computed(()=>({display:c.value?"":"none"}));t.watch(()=>e,b=>{s==null||s.updateTab({props:b,slots:n.slots})},{immediate:!0,deep:!0});function p(){var w,C;const b=(C=(w=n.slots).default)==null?void 0:C.call(w);return t.createVNode(Ef,{"main-title":e.title,class:"farris-tab-page"},_f(b)?b:{default:()=>[b]})}const m=t.computed(()=>({"farris-tab-page":!0,"drag-container":!0,"farris-tab-page-active":c.value}));function g(){var w,C;const b=(C=(w=n.slots).default)==null?void 0:C.call(w);return t.createVNode("div",{ref:o,class:m.value,"data-dragref":`${a.schema.id}-container`,style:h.value},[b])}const v=new Map([["default",g],["one-page",p]]).get(f.value)||g;return()=>u.value?v():null}}),Bf=Ye({id:{type:String,default:""},items:{type:Object,default:{}},class:{type:String,default:""},text:{type:String,default:""},disabled:{type:Boolean,default:!1},icon:{type:String,default:""},componentId:{type:String,default:""},expanded:{type:Boolean,default:!1},alignment:{Type:String,default:"right"},split:{type:Boolean,default:!1},isDP:{type:Boolean,default:!1},isDPItem:{type:Boolean,default:!1}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-toolbar-item.schema.json",title:"tab-toolbar-item",description:"A Farris Toolbar Item Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"tab-toolbar-item"},appearance:{description:"",type:"object",properties:{class:{type:"string"}},default:{}},text:{description:"按钮",type:"string",default:"按钮"},icon:{description:"图标",type:"string",default:""},disabled:{description:"禁用",type:"boolean",default:!1},visible:{description:"是否可见",type:"boolean",default:!0},onClick:{description:"点击事件",type:"string",default:""},tipsEnable:{description:"",type:"boolean",default:!1},tipsText:{description:"",type:"string",default:""},dropdownClass:{description:"处于下拉菜单时的样式",type:"string",default:""},split:{description:"",type:"boolean",default:!1}},required:["id","type","text"],events:{onClick:"点击事件"}},zn,Ld);At.install=e=>{e.component(At.name,At),e.component(qn.name,qn)},At.register=(e,n,o,a)=>{e.tabs=At,e["tab-page"]=qn,n.tabs=qd,n["tab-page"]=tf,a.tabs={eventHandlerResolver:Gd}},At.registerDesigner=(e,n,o)=>{e.tabs=xf,e["tab-page"]=Of,n.tabs=Ud,n["tab-page"]=nf,n["tab-toolbar-item"]=Bf,e["tab-toolbar"]=Nr,n["tab-toolbar"]=Yd};const Df=new Map([["appearance",ht]]),jf={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/search-box.schema.json",title:"search-box",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a search-box",type:"string"},type:{description:"The type string of search-box component",type:"string",default:"search-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]};function $f(e,n,o){return n}const Lf={title:"search-box",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Ro={buttonContent:{type:String,default:'<i class="f-icon f-icon-search"></i>'},customClass:{type:String,default:""},modelValue:{type:String,default:""},popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},data:{type:Array,default:[]},placeholder:{type:String,default:"请输入关键词"},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean},disable:{default:!1,type:Boolean},showDropdown:{default:!0,type:Boolean},updateOn:{default:"blur",type:String}},Pr=Ye(Ro,jf,Df,$f,Lf),Rf={data:{type:Array,default:[]},onConfirmResult:{type:Function,default:()=>{}},onSearchedValue:{type:Function,default:()=>{}},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean}},Er=t.defineComponent({name:"FSearchBoxContainer",props:Rf,emits:["confirmResult","searchedValue"],setup(e,n){const o=t.ref(e.data),a=t.ref(),{slots:i}=n,l=t.computed(()=>({"search-box-container":!0,"f-utils-overflow-xhya":!0,"position-relative":!0}));function r(f){var c;(c=a.value)==null||c.search(f)}function s(f){f.length&&(n.emit("confirmResult",f[0].name),n.emit("searchedValue",f))}function u(f){return i.default?t.createVNode(t.Fragment,null,[i.default(f)]):t.createVNode("span",null,[f.item[e.textField]])}const d=t.computed(()=>{const f={};return f.padding="8px",e.maxHeight!==void 0&&e.maxHeight>0&&(f.maxHeight=`${e.maxHeight}px`),f});return t.watch(()=>e.loading,f=>{}),t.watch(()=>e.data,f=>{f!==o.value&&(o.value=f),a.value.updateDataSource(f)}),n.expose({search:r}),()=>{const f={content:u};return t.createVNode("div",{class:l.value,style:d.value},[t.createVNode(gl,{ref:"loadingInstance",isActive:e.loading},null),t.createVNode(ao,{ref:a,itemClass:"dropdown-item",data:o.value,view:"ContentView",onClickItem:c=>s(c.data),idField:e.idField,textField:e.textField,titleField:e.textField,valueField:e.idField},f)])}}}),_t=t.defineComponent({name:"FSearchBox",props:Ro,emits:["update:modelValue","change","selectedValue","clickButton"],setup(e,n){t.ref(e.data);const o=t.ref(),a=t.ref(),i=t.ref(e.placeholder),l='<i class="f-icon f-icon-clockwise f-icon-spin"></i>',r=t.computed(()=>e.loading?l:e.buttonContent);t.ref(e.editable);const s=t.ref(e.modelValue);t.watch(s,p=>{var m;(m=a.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function u(p){o.value.commitValue(p)}function d(p){n.emit("change",p)}function f(p){n.emit("selectedValue",p)}function c(p){n.emit("clickButton",p)}function h(){o.value.togglePopup()}return n.expose({togglePopup:h}),()=>{const p={default:n.slots.default};return t.createVNode(Nn,{ref:o,"button-content":r.value,"custom-class":e.customClass,updateOn:e.updateOn,placeholder:i.value,onChange:m=>d(m),onClickButton:m=>c(m),disable:e.disable,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":m=>s.value=m,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":e.showDropdown,"popup-on-focus":e.showDropdown,limitContentBySpace:!0,placement:"auto"},{default:()=>[e.showDropdown&&t.createVNode(Er,{ref:a,data:e.data,idField:e.idField,textField:e.textField,onConfirmResult:u,onSearchedValue:m=>f(m),loading:e.loading,maxHeight:e.maxHeight},p)],...n.slots})}}}),Af=t.defineComponent({name:"FSearchBoxDesign",props:Ro,emits:["update:modelValue","change"],setup(e,n){const o=t.ref(e.data),a=t.ref(),i=t.ref(),l=t.ref("请输入关键词"),r=t.ref('<i class="f-icon f-icon-search"></i>'),s=t.ref(e.modelValue),u=t.ref(),d=t.inject("design-item-context"),f=Pt(u,d);t.onMounted(()=>{u.value.componentInstance=f}),n.expose(f.value),t.watch(s,p=>{var m;(m=i.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function c(p){a.value.commitValue(p)}function h(p){n.emit("change",p)}return()=>t.createVNode("div",{ref:u},[t.createVNode(t.resolveComponent("f-button-edit"),{ref:a,"button-content":r.value,placeholder:l.value,onChange:h,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":p=>s.value=p,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":!0,"popup-on-focus":!0},{default:()=>[t.createVNode(Er,{ref:i,data:o.value,onConfirmResult:c},null)]})])}});_t.install=e=>{e.component(_t.name,_t)},_t.register=(e,n,o,a)=>{e["search-box"]=_t,n["search-box"]=Pr},_t.registerDesigner=(e,n,o)=>{e["search-box"]=Af,n["search-box"]=Pr};const Mr=new Map([["appearance",ht]]);function _r(e,n,o){return n}const zf={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Hf={title:"list-view",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Un={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null}},Or=Ye(Un,zf,Mr,_r,Hf);function Br(e,n){function o(l){const r=[];let s=l.nextNode();for(;s;)r.push(s),s=l.nextNode();return r}function a(l,r){const s=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return o(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:h})=>{const p=[];let m=0;for(;m<h.length;){const g=h.indexOf(r,m);if(g===-1)break;p.push(g),m=g+r.length}return p.map(g=>{const y=new Range;return y.setStart(c,g),y.setEnd(c,g+r.length),y})}).flat()}function i(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!n))return;const r=a(n.value,l.toLocaleLowerCase()),s=new Highlight(...r);CSS.highlights.set("search-result",s)}return{search:i}}function Dr(e,n,o,a,i,l,r,s,u,d){const f=t.ref(e.size),c=t.ref(e.textField),h=t.ref(e.titleField),p=t.ref(e.disableField),m=t.computed(()=>{var V,N;return((V=e.selection)==null?void 0:V.multiSelect)&&((N=e.selection)==null?void 0:N.showCheckbox)}),{onMouseenterItem:g,onMouseoverItem:y,onMouseoutItem:v}=l,{getKey:b,listViewItemClass:w,onCheckItem:C,onClickItem:x}=r,T=t.computed(()=>{const V={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return e.itemClass?V:{margin:f.value==="small"?"0.25rem 0":"8px 0",...V}});function S(V,N,k){return V.checked=s.findIndexInSelectedItems(V)>-1,t.createVNode("li",{class:w(V,N),id:b(V,N),key:b(V,N),onClick:I=>x(I,V,N),onMouseenter:I=>g(I,V,N),onMouseover:I=>y(I,V,N),onMouseout:I=>v(I,V,N)},[m.value&&t.createVNode("div",{class:"f-list-select",onClick:I=>I.stopPropagation()},[t.createVNode(xn.FCheckbox,{id:"list-"+b(V,N),customClass:"listview-checkbox float-left",disabled:V[p.value],checked:V.checked,"onUpdate:checked":I=>V.checked=I,onChange:I=>{C(V,N,!I.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{class:e.itemContentClass,style:T.value,title:V.raw[h.value]||V.raw[c.value]},[V.raw[c.value]])])])}return{renderItem:S}}function Wf(e,n,o,a,i,l,r,s,u,d){const f=t.ref(e.multiSelect),c=t.ref(e.disableField),h=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:g}=l,{getKey:y,listViewItemClass:v,onCheckItem:b,onClickItem:w}=r;function C(T,S,V){return n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:T.raw,index:S,selectedItem:V})]):t.createVNode("div",{style:"margin: 10px 0;"},[T.raw[h.value||"name"]])}function x(T,S,V){return t.createVNode("li",{class:v(T,S),id:y(T,S),key:y(T,S),onClick:N=>w(N,T,S),onMouseenter:N=>p(N,T,S),onMouseover:N=>m(N,T,S),onMouseout:N=>g(N,T,S)},[f.value&&t.createVNode("div",{class:"f-list-select",onClick:N=>N.stopPropagation()},[t.createVNode(xn.FCheckbox,{id:"list-"+y(T,S),customClass:"listview-checkbox",disabled:T[c.value]||!T.checked,checked:T.checked,"onUpdate:checked":N=>T.checked=N,onChange:N=>b(T,S,!N.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[C(T,S,V)])])}return{renderItem:x}}function qf(e,n,o,a,i,l,r,s,u,d){const f=t.ref(e.multiSelect),c=t.ref(e.disableField),h=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:g}=l,{getKey:y,listViewItemClass:v,onCheckItem:b,onClickItem:w}=r,{dragstart:C,dragenter:x,dragover:T,dragend:S}=a,{removeItem:V}=u,N=t.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function k(F,P=""){const B=F.target;B.title=B.scrollWidth>B.clientWidth?P:""}function I(F){return t.createVNode("div",{style:N.value,onMouseenter:P=>k(P,F.raw[h.value||"name"])},[F.raw[h.value||"name"]])}function E(){return n.slots.itemContent?n.slots.itemContent:I}const _=E();function M(F,P,B){return t.createVNode("li",{class:v(F,P),id:y(F,P),key:y(F,P),onClick:$=>w($,F,P),onMouseenter:$=>p($,F,P),onMouseover:$=>m($,F,P),onMouseout:$=>g($,F,P),draggable:"true",onDragstart:$=>C($,F,P),onDragenter:$=>x($,P),onDragend:$=>S($,F),onDragover:$=>T($)},[f.value&&t.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[t.createVNode(xn.FCheckbox,{id:"list-"+y(F,P),customClass:"listview-checkbox",disabled:F[c.value]||!F.checked,checked:F.checked,"onUpdate:checked":$=>F.checked=$,onChange:$=>b(F,P,!$.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[_(F)]),t.createVNode("div",{class:"f-list-remove",onClick:$=>V(P)},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:M}}function Uf(e,n,o,a,i,l,r,s,u,d){var y;const f=t.ref(((y=e.group)==null?void 0:y.groupFields)||[]),{collpaseGroupIconClass:c}=i,{toggleGroupRow:h}=d;function p(v,b){b.collapse=!b.collapse,o.value=h(b.collapse?"collapse":"expand",b,o.value)}function m(v,b,w){return n.slots.group?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.group({item:v.raw,index:b,selectedItem:w})]):t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:C=>p(C,v)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:c(v)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[v.raw[f.value[v.layer]]])])}function g(v,b,w){return v.layer>-1&&m(v,b,w)}return{renderItem:g}}function Gf(e,n,o,a){const{dataView:i}=o,{updateSelectedItems:l}=a;function r(s){if(s>-1&&s<i.value.length){if(e!=null&&e.checkBeforeRemoveItem&&!e.checkBeforeRemoveItem(i.value[s]))return;const u=i.value.splice(s,1);l(),n.emit("removeItem",u[0])}}return{removeItem:r}}function jr(e,n,o,a,i,l,r,s,u,d){const{t:f}=Ge.useI18n(),c=t.ref(e.view),h=t.ref(e.view==="CardView"),p=t.ref({}),m=t.ref(f("listView.emptyMessage")),g=Gf(e,n,a,u),y=t.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":h.value,"flex-wrap":h.value})),v=t.computed(()=>!!o.value&&o.value.length>0),b=t.computed(()=>o.value.length===0);t.computed(()=>b.value&&!n.slots.empty);function w(){return c.value==="SingleView"?Dr:c.value==="DraggableView"?qf:(c.value==="ContentView"||c.value==="CardView")&&n.slots.content?Wf:Dr}const C=w(),{renderItem:x}=C(e,n,o,d,i,l,u,r,g,s),{renderItem:T}=Uf(e,n,o,d,i,l,u,r,g,s),S=[x,T];function V(){return o.value.filter(I=>I.visible!==!1).map((I,E)=>S[I.type](I,E,p))}function N(){return t.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[t.createVNode("p",{class:"f-empty-title"},[n.slots.empty?n.slots.empty():m.value])])}function k(){return t.createVNode("ul",{class:y.value,style:"list-style: none;"},[v.value&&V(),b.value&&N()])}return{renderListArea:k}}function $r(e,n,o){function a(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:a}}function Gn(e,n,o){const a=t.ref(e.headerClass),i=t.ref(e.placeholder),l=t.ref(""),r=t.computed(()=>!l.value),s=t.computed(()=>!!l.value);function u(h){l.value=""}t.watch(l,h=>{e.enableHighlightSearch&&o.search(h),n.emit("afterSearch",h)});const d=t.computed(()=>{const h={"form-group":!0,"farris-form-group":!0};return a.value&&a.value.split(" ").reduce((m,g)=>(m[g]=!0,m),h),h});function f(h){}function c(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>f,["prevent","stop"])},[t.createVNode("div",{class:d.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":h=>l.value=h,name:"input-group-value",type:"text",placeholder:i.value,autocomplete:"off"},null),[[t.vModelText,l.value]]),t.createVNode("div",{class:"input-group-append"},[s.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:h=>u()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),r.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}function Lr(){const e=t.ref(""),n=t.ref(-1),o=t.ref(""),a=t.ref(-1),i=t.ref(!1);function l(c,h,p){a.value=p}function r(c,h,p){i.value||(a.value=p)}function s(c,h,p){a.value=-1}function u(){i.value=!0}function d(){i.value=!1}function f(){n.value=-1,e.value=""}return{activeIndex:n,focusedItemId:o,hoverIndex:a,clearActiveItem:f,onMouseenterItem:l,onMouseoverItem:r,onMouseoutItem:s,resumeHover:d,suspendHover:u}}function Rr(e,n,o,a){const i=t.ref(e.idField),{dataView:l}=o,r=t.ref(-1),s=t.ref(!1),{activeIndex:u,focusedItemId:d,hoverIndex:f,resumeHover:c,suspendHover:h}=a;let p,m=0,g=0;function y(T,S){const V=T-m,N=S-g;p.style.left=parseInt(p.style.left)+V+"px",p.style.top=parseInt(p.style.top)+N+"px",m=T,g=S}function v(T){const{left:S,top:V}=T.getBoundingClientRect(),N=T.cloneNode(!0);return N.style.cssText=`
|
|
7
7
|
position:absolute;
|
|
8
8
|
left:${S}px;
|
|
9
9
|
top:${document.documentElement.scrollTop?V+document.documentElement.scrollTop:V}px;
|