@farris/ui-vue 1.7.2-beta.1 → 1.7.2-beta.2
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/avatar/index.esm.js +155 -148
- package/components/avatar/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +1 -1
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/calendar/index.esm.js +226 -224
- package/components/calendar/index.umd.cjs +3 -3
- package/components/collection-property-editor/index.esm.js +225 -223
- package/components/collection-property-editor/index.umd.cjs +2 -2
- package/components/combo-list/index.esm.js +76 -71
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/comment/index.esm.js +169 -167
- package/components/comment/index.umd.cjs +6 -6
- package/components/component/index.esm.js +3691 -3043
- package/components/component/index.umd.cjs +2 -2
- package/components/condition/index.esm.js +2015 -1352
- package/components/condition/index.umd.cjs +2 -2
- package/components/data-grid/index.esm.js +407 -430
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +3082 -3196
- package/components/data-view/index.umd.cjs +1 -1
- package/components/designer-canvas/index.esm.js +3364 -2713
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/drawer/index.esm.js +66 -64
- package/components/drawer/index.umd.cjs +2 -2
- package/components/dynamic-form/index.esm.js +1176 -524
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-resolver/index.esm.js +182 -180
- package/components/dynamic-resolver/index.umd.cjs +2 -2
- package/components/dynamic-view/index.esm.js +531 -455
- package/components/dynamic-view/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +2352 -1700
- package/components/events-editor/index.umd.cjs +3 -3
- package/components/expression-editor/index.esm.js +8 -3
- package/components/expression-editor/index.umd.cjs +2 -2
- package/components/filter-bar/index.esm.js +422 -413
- package/components/filter-bar/index.umd.cjs +2 -2
- package/components/filter-condition-editor/index.esm.js +8 -3
- package/components/filter-condition-editor/index.umd.cjs +1 -1
- package/components/image/index.esm.js +363 -354
- package/components/image/index.umd.cjs +2 -2
- package/components/language-textbox/index.esm.js +189 -187
- package/components/language-textbox/index.umd.cjs +2 -2
- package/components/list-view/index.esm.js +388 -389
- package/components/list-view/index.umd.cjs +5 -5
- package/components/mapping-editor/index.esm.js +1465 -1488
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/number-range/index.esm.js +180 -173
- package/components/number-range/index.umd.cjs +1 -1
- package/components/order/index.esm.js +815 -811
- package/components/order/index.umd.cjs +5 -5
- package/components/property-panel/index.esm.js +429 -420
- package/components/property-panel/index.umd.cjs +3 -3
- package/components/query-solution/index.esm.js +4746 -4085
- package/components/query-solution/index.umd.cjs +7 -7
- package/components/schema-selector/index.esm.js +1401 -1402
- package/components/schema-selector/index.umd.cjs +5 -5
- package/components/section/index.esm.js +102 -100
- package/components/section/index.umd.cjs +2 -2
- package/components/sort-condition-editor/index.esm.js +8 -3
- package/components/sort-condition-editor/index.umd.cjs +1 -1
- package/components/transfer/index.esm.js +537 -538
- package/components/transfer/index.umd.cjs +5 -5
- package/components/tree-grid/index.esm.js +280 -283
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +200 -202
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/uploader/index.esm.js +533 -519
- package/components/uploader/index.umd.cjs +2 -2
- package/designer/data-grid/index.esm.js +3806 -3905
- package/designer/data-grid/index.umd.cjs +9 -9
- package/designer/drawer/index.esm.js +188 -186
- package/designer/drawer/index.umd.cjs +2 -2
- package/designer/dynamic-form/index.esm.js +1562 -1073
- package/designer/dynamic-form/index.umd.cjs +2 -2
- package/designer/farris-designer.all.esm.js +9793 -8613
- package/designer/farris-designer.all.umd.cjs +8 -8
- package/designer/list-view/index.esm.js +564 -564
- package/designer/list-view/index.umd.cjs +6 -6
- package/designer/radio-group/index.esm.js +236 -229
- package/designer/radio-group/index.umd.cjs +1 -1
- package/designer/response-layout-editor/index.esm.js +178 -171
- package/designer/response-layout-editor/index.umd.cjs +1 -1
- package/designer/tabs/index.esm.js +3154 -2508
- package/designer/tabs/index.umd.cjs +2 -2
- package/designer/time-picker/index.esm.js +193 -186
- package/designer/time-picker/index.umd.cjs +1 -1
- package/designer/tree-grid/index.esm.js +444 -447
- package/designer/tree-grid/index.umd.cjs +1 -1
- package/farris.all.esm.js +60126 -59649
- package/farris.all.umd.cjs +30 -30
- package/index.css +1 -1
- package/package.json +1 -1
- package/types/components.d.ts +1 -1
- package/types/condition/src/composition/condition-value/dropdown-value.d.ts +4 -0
- package/types/data-grid/index.d.ts +2 -5
- package/types/data-grid/src/data-grid.component.d.ts +1 -2
- package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
- package/types/data-view/composition/appearance/use-cell-position.d.ts +1 -1
- package/types/data-view/composition/types.d.ts +0 -4
- package/types/data-view/composition/visualization/use-virtual-scroll.d.ts +2 -2
- package/types/data-view/composition/visualization/use-visual-data-bound.d.ts +2 -3
- package/types/data-view/composition/visualization/use-visual-data-row.d.ts +1 -2
- package/types/designer-canvas/src/composition/dg-control.d.ts +24 -0
- package/types/dynamic-form/designer.d.ts +0 -1
- package/types/dynamic-form/index.d.ts +4 -3
- package/types/dynamic-form/src/designer/dynamic-form.design.component.d.ts +8 -0
- package/types/dynamic-form/src/designer/response-form.design.props.d.ts +14 -0
- package/types/dynamic-form/src/designer/use-dynamic-form-rules.d.ts +2 -0
- package/types/dynamic-form/src/dynamic-form.component.d.ts +8 -0
- package/types/dynamic-form/src/response-form.props.d.ts +13 -1
- package/types/dynamic-form/src/schema/response-form-schema-resolver.d.ts +1 -0
- package/types/dynamic-form/src/types.d.ts +1 -0
- package/types/dynamic-resolver/src/types.d.ts +1 -0
- package/types/dynamic-view/index.d.ts +43 -3
- package/types/dynamic-view/src/components/maps.d.ts +6 -6
- package/types/dynamic-view/src/composition/index.d.ts +5 -0
- package/types/dynamic-view/src/composition/use-utils.d.ts +12 -0
- package/types/dynamic-view/src/dynamic-view.component.d.ts +6 -6
- package/types/language-textbox/index.d.ts +3 -3
- package/types/language-textbox/src/components/language-contents.component.d.ts +1 -1
- package/types/language-textbox/src/language-textbox.component.d.ts +1 -1
- package/types/lookup/src/components/favorite/lookup-favorite.component.d.ts +1 -1
- package/types/lookup/src/components/popup-container.component.d.ts +3 -3
- package/types/property-panel/src/property-panel.component.d.ts +3 -3
- package/types/tree-grid/src/components/data/data-area.component.d.ts +2 -2
- package/types/tree-grid/src/tree-grid.props.d.ts +0 -1
- package/types/tree-view/src/components/data/tree-area.component.d.ts +1 -1
- package/types/tree-view/src/tree-view.props.d.ts +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
(function(ae,Z){typeof exports=="object"&&typeof module<"u"?Z(exports,require("../../components/common/index.umd.js"),require("../../components/data-grid/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("vue"),require("@vueuse/core"),require("../../components/checkbox/index.umd.js"),require("../../components/popover/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/list-view/index.umd.js"),require("../../components/date-picker/index.umd.js"),require("../../components/number-spinner/index.umd.js"),require("../../components/search-box/index.umd.js"),require("../../components/notify/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/tags/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/accordion/index.umd.js"),require("../../components/avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../../components/calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../checkbox-group/index.umd.js"),require("../../components/combo-list/index.umd.js"),require("../../components/combo-tree/index.umd.js"),require("../../components/component/index.umd.js"),require("../../components/color-picker/index.umd.js"),require("../../components/content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../../components/dropdown/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../../components/events-editor/index.umd.js"),require("../../components/binding-selector/index.umd.js"),require("../../components/image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../../components/layout/index.umd.js"),require("../../components/list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../../components/lookup/index.umd.js"),require("../../components/mapping-editor/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-range/index.umd.js"),require("../number-spinner/index.umd.js"),require("../../components/order/index.umd.js"),require("../../components/page-header/index.umd.js"),require("../../components/page-footer/index.umd.js"),require("../../components/progress/index.umd.js"),require("../../components/query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../../components/response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../../components/smoke-detector/index.umd.js"),require("../../components/splitter/index.umd.js"),require("../../components/step/index.umd.js"),require("../switch/index.umd.js"),require("../tabs/index.umd.js"),require("../tags/index.umd.js"),require("../../components/text/index.umd.js"),require("../time-picker/index.umd.js"),require("../../components/uploader/index.umd.js"),require("../../components/verify-detail/index.umd.js"),require("../../components/video/index.umd.js"),require("../textarea/index.umd.js"),require("../../components/schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../../components/event-parameter/index.umd.js"),require("../../components/filter-condition-editor/index.umd.js"),require("../../components/fieldset/index.umd.js"),require("../../components/sort-condition-editor/index.umd.js"),require("../../components/menu-lookup/index.umd.js"),require("../drawer/index.umd.js"),require("../../components/json-editor/index.umd.js"),require("../../components/property-editor/index.umd.js"),require("../../components/expression-editor/index.umd.js"),require("../../components/code-editor/index.umd.js"),require("../../components/html-template/index.umd.js"),require("../../components/collection-property-editor/index.umd.js"),require("../modal/index.umd.js"),require("../../components/external-container/index.umd.js"),require("../../components/language-textbox/index.umd.js"),require("../../components/image/index.umd.js"),require("../../components/comment/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/data-grid/index.umd.js","../../components/dynamic-resolver/index.umd.js","vue","@vueuse/core","../../components/checkbox/index.umd.js","../../components/popover/index.umd.js","../../components/locale/index.umd.js","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/filter-bar/index.umd.js","../../components/pagination/index.umd.js","../../components/data-view/index.umd.js","../../components/button/index.umd.js","../../components/button-group/index.umd.js","../../components/list-view/index.umd.js","../../components/date-picker/index.umd.js","../../components/number-spinner/index.umd.js","../../components/search-box/index.umd.js","../../components/notify/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/designer-canvas/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/tags/index.umd.js","../../components/tree-view/index.umd.js","../../components/field-selector/index.umd.js","../../components/accordion/index.umd.js","../../components/avatar/index.umd.js","../button-edit/index.umd.js","../../components/calendar/index.umd.js","../capsule/index.umd.js","../checkbox/index.umd.js","../checkbox-group/index.umd.js","../../components/combo-list/index.umd.js","../../components/combo-tree/index.umd.js","../../components/component/index.umd.js","../../components/color-picker/index.umd.js","../../components/content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../../components/dropdown/index.umd.js","../dynamic-form/index.umd.js","../../components/events-editor/index.umd.js","../../components/binding-selector/index.umd.js","../../components/image-cropper/index.umd.js","../input-group/index.umd.js","../../components/layout/index.umd.js","../../components/list-nav/index.umd.js","../list-view/index.umd.js","../../components/lookup/index.umd.js","../../components/mapping-editor/index.umd.js","../../components/nav/index.umd.js","../../components/number-range/index.umd.js","../number-spinner/index.umd.js","../../components/order/index.umd.js","../../components/page-header/index.umd.js","../../components/page-footer/index.umd.js","../../components/progress/index.umd.js","../../components/query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../../components/response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../../components/smoke-detector/index.umd.js","../../components/splitter/index.umd.js","../../components/step/index.umd.js","../switch/index.umd.js","../tabs/index.umd.js","../tags/index.umd.js","../../components/text/index.umd.js","../time-picker/index.umd.js","../../components/uploader/index.umd.js","../../components/verify-detail/index.umd.js","../../components/video/index.umd.js","../textarea/index.umd.js","../../components/schema-selector/index.umd.js","../tree-grid/index.umd.js","../../components/event-parameter/index.umd.js","../../components/filter-condition-editor/index.umd.js","../../components/fieldset/index.umd.js","../../components/sort-condition-editor/index.umd.js","../../components/menu-lookup/index.umd.js","../drawer/index.umd.js","../../components/json-editor/index.umd.js","../../components/property-editor/index.umd.js","../../components/expression-editor/index.umd.js","../../components/code-editor/index.umd.js","../../components/html-template/index.umd.js","../../components/collection-property-editor/index.umd.js","../modal/index.umd.js","../../components/external-container/index.umd.js","../../components/language-textbox/index.umd.js","../../components/image/index.umd.js","../../components/comment/index.umd.js"],Z):(ae=typeof globalThis<"u"?globalThis:ae||self,Z(ae["data-grid"]={},ae.common,ae.FDataGrid,ae.dynamicResolver,ae.Vue,ae.VueUseCore,ae.checkbox,ae.FPopover,ae.locale,null,ae.LodashES,null,null,null,null,ae.dataView,ae.FButton,ae.FButtonGroup,null,null,null,null,ae.notify,ae.condition,ae.dynamicForm,ae.designerCanvas,ae.designer$1,ae.propertyPanel,ae.FTags,ae.FTreeView,ae.FFieldSelector))})(this,function(ae,Z,Qe,ze,r,pn,bt,hn,Re,Br,je,Or,jr,Rr,Ar,ke,Bt,gn,Hr,Lr,$r,Wr,Ct,fe,yn,z,qe,$e,vn,bn,ut){"use strict";var Pr=Object.defineProperty;var Nr=(ae,Z,Qe)=>Z in ae?Pr(ae,Z,{enumerable:!0,configurable:!0,writable:!0,value:Qe}):ae[Z]=Qe;var ne=(ae,Z,Qe)=>Nr(ae,typeof Z!="symbol"?Z+"":Z,Qe);const Cn={customClass:{type:String,default:""},appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:t=>!0},beforeEndEditCell:{type:Function,default:()=>!0},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[],halign:"center"}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},enableCommands:{type:Boolean,default:!1},enableFilter:{type:Boolean,default:!1},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},mergeCell:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:36,showEllipsis:!0,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1,keepSelectingOnClick:!0}},selectionValues:{type:Array,default:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1},emptyTemplate:{type:Object},beforeUpdate:{type:Function},fieldsResolver:{type:Function,default:(t,e)=>t},displayType:{type:String,default:"List"},fieldsCallback:{type:Function,default:()=>{}}},wn=Z.excludeProperties(Object.assign({},Cn,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function Sn(t,e,n,i,o){const{getGridHeaderCells:l}=o,a=120,d=50,c=r.computed(()=>{var y;return((y=t.rowNumber)==null?void 0:y.enable)||!1}),p=r.computed(()=>{var y,x;return((y=t.selection)==null?void 0:y.multiSelect)||((x=t.selection)==null?void 0:x.showCheckbox)||!1}),f=r.computed(()=>{var y;return 0+(c.value?((y=t.rowNumber)==null?void 0:y.width)||32:0)+(p.value?d:0)}),s=r.computed(()=>{var y;return(y=t.columnOption)==null?void 0:y.fitColumns}),m=r.computed(()=>{var y;return s.value&&((y=t.columnOption)==null?void 0:y.fitMode)||"none"});function g(y,x,S){const I=parseInt(y.width,10)/100;return S*I}function u(y,x,S){return typeof y.width=="string"?g(y,x,S):y.width||a}function h(y,x){const S=[],I=[];let B=0;y.value.primaryColumns.forEach(_=>{typeof _.width=="string"?I.push(_):(_.width=_.width||a,B+=_.width,S.push(_))});const N=x*(S.length/y.value.primaryColumns.length);S.forEach(_=>{const k=N*(_.width/B);_.actualWidth=k,y.value.primaryColumnsWidth+=_.actualWidth});const O=x-N;I.forEach(_=>{const k=g(_,y.value,O);_.actualWidth=k,y.value.primaryColumnsWidth+=_.actualWidth})}function b(y,x){const S=[],I=[],B=new WeakMap;let N=0,O=0;if(y.value.primaryColumns.forEach(k=>{if(typeof k.width=="string"){const V=g(k,y.value,x);B.set(k,V),N+=V,I.push(k)}else k.width=k.width||a,O+=k.width,S.push(k)}),x-N>O){const k=x-N;I.forEach(V=>{V.actualWidth=B.get(V)||a,y.value.primaryColumnsWidth+=V.actualWidth}),S.forEach(V=>{V.actualWidth=k*(V.width/O),y.value.primaryColumnsWidth+=V.actualWidth})}else h(y,x)}function C(y,x){y.value.primaryColumns.forEach(S=>{S.actualWidth=u(S,y.value,x),y.value.primaryColumnsWidth+=S.actualWidth})}const F={expand:b,none:C,percentage:h};function M(y){y.value.leftHeaderColumns=Array.from(l(y.value.leftColumns).values()),y.value.primaryHeaderColumns=Array.from(l(y.value.primaryColumns).values()),y.value.rightHeaderColumns=Array.from(l(y.value.rightColumns).values())}function T(y){y.value.leftColumnsWidth=0,y.value.primaryColumnsWidth=0,y.value.rightColumnsWidth=0,y.value.leftColumns.forEach(x=>{y.value.leftColumnsWidth+=x.actualWidth||0}),y.value.primaryColumns.forEach(x=>{y.value.primaryColumnsWidth+=x.actualWidth||0}),y.value.rightColumns.forEach(x=>{y.value.rightColumnsWidth+=x.actualWidth||0}),y.value=Object.assign({},y.value)}function v(y,x,S){var V;let I=0;const B=y.value.primaryColumns,N=y.value.rightColumns;y.value.rightColumns.forEach(W=>{W.actualWidth=u(W,y.value,x),I+=W.actualWidth});const O=S-I,_=F[m.value];if(_&&_(y,O),y.value.primaryColumnsWidth+I<=S)return y.value.primaryColumns=[...B,...N],y.value.primaryColumnsWidth+=I,y.value.rightColumns=[],y.value.rightColumnsWidth=0,!0;const k=new Map;return k.set("primary",[]),k.set("right",[]),y.value.primaryColumns.reduce((W,P)=>{var H,X;return P.fixed==="right"?(H=W.get("right"))==null||H.push(P):(X=W.get("primary"))==null||X.push(P),W},k),(V=k.get("right"))!=null&&V.length&&(y.value.primaryColumns=[...k.get("primary")||[]],y.value.rightColumns=[...k.get("right")||[]]),y.value.primaryColumnsWidth=0,y.value.rightColumnsWidth=0,!1}function w(){if(n.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const y=n.value.clientWidth-f.value;e.value.leftColumns.forEach(S=>{S.actualWidth=u(S,e.value,y),e.value.leftColumnsWidth+=S.actualWidth});const x=y-e.value.leftColumnsWidth;if(v(e,y,x))i.value=x;else{e.value.rightColumns.forEach(B=>{B.actualWidth=u(B,e.value,y),e.value.rightColumnsWidth+=B.actualWidth});const S=y-e.value.leftColumnsWidth-e.value.rightColumnsWidth,I=F[m.value];I&&I(e,S),i.value=S}M(e),e.value=Object.assign({},e.value)}}return r.watch(()=>{var y;return(y=t.columnOption)==null?void 0:y.fitColumns},(y,x)=>{y!==x&&y&&w()}),r.watch(m,(y,x)=>{y!==x&&s.value&&w()}),{calculateColumnHeaders:M,calculateColumnsSize:w,calculateColumnsWidth:T}}const xn="";function Mn(t){const n={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:[]},i=r.ref(n);function o(){i.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=r.ref(t.summary),a=r.computed(()=>{const v=l.value;return(v==null?void 0:v.groupFields)||[]});function d(){i.value.rightColumns.forEach(y=>{y.showSetting=!1}),i.value.primaryColumns.forEach(y=>{y.showSetting=!1});const v=i.value.rightColumns,w=i.value.primaryColumns;v.length>0?v[v.length-1].showSetting=!0:w.length>0&&(w[w.length-1].showSetting=!0)}function c(v){o();const w=new Map;return a.value&&a.value.reduce((y,x)=>(y.set(x,!0),y),w),v.reduce((y,x)=>(x.filter=x.filter||xn,x.fixed==="left"?(i.value.leftColumns.push(x),i.value.leftColumnsMap.set(x.field,x),i.value.leftColumnsWidth+=x.actualWidth):x.fixed==="right"?(i.value.rightColumns.push(x),i.value.rightColumnsMap.set(x.field,x),i.value.rightColumnsWidth+=x.actualWidth):(i.value.primaryColumns.push(x),i.value.primaryColumnsMap.set(x.field,x),i.value.primaryColumnsWidth+=x.actualWidth),w.has(x.field)&&i.value.summaryColumns.push(x),y),i),d(),i}c(t.columns);const p=r.computed(()=>i.value.leftColumns.length>0),f=r.computed(()=>i.value.rightColumns.length>0);function s(v,w){return w.sortable&&w.sort&&w.sort!=="none"&&v.push(w),v}function m(v,w){return v.sortOrder=v.sortOrder||0,w.sortOrder=w.sortOrder||0,v.sortOrder===w.sortOrder?0:v.sortOrder<w.sortOrder?-1:1}function g(v,w){return v.sortOrder=v.sortOrder||0,w.sortOrder=w.sortOrder||0,v.sortOrder===w.sortOrder?0:v.sortOrder<w.sortOrder?1:-1}function u(v,w){return w.filterable&&v.push(w),v}function h(){const v=[];return i.value.leftColumns.reduce(u,v),i.value.primaryColumns.reduce(u,v),i.value.rightColumns.reduce(u,v),v}function b(){const v=[];i.value.leftColumns.reduce(s,v),i.value.primaryColumns.reduce(s,v),i.value.rightColumns.reduce(s,v);const w=Math.max(...v.map(y=>y.sortOrder||0));return v.sort(g).map(y=>{const x=y.sortOrder||w+1;return y.sortOrder=x,y}).sort(m).map((y,x)=>{const S=x+1;return y.sortOrder=S,y})}function C(v,w,y){const x=v.map(S=>{const I=y.getSorterByColumn(S),B=S.sort==="asc",N=S.sort==="desc",O=B?I.ascend:N?I.decend:void 0;return{field:S.field,compare:O}});w.setSorters(x)}function F(v,w){const y=b();C(y,v,w)}function M(v){}function T(v){}return{applyColumnSorter:F,collectionFilterableColumns:h,applySortableColumns:C,collectionSortableColumns:b,columnContext:i,hasLeftFixedColumn:p,hasRightFixedColumn:f,updateColumnRenderContext:c,updateColumnSettingIcon:d,sortFromServer:M,createSortConditions:T}}function Fn(t,e,n,i,o,l,a,d){const c=r.ref(i.value-1+o),p=r.ref(0),{renderDataRow:f}=l,s=a?a.renderGroupRow:f,m=d?d.renderSummaryRow:f;function g(b){let C=f;return b.__fv_data_grid_group_row__&&(C=s),b.__fv_data_grid_group_summary__&&(C=m),C}function u(b,C,F,M){const{dataView:T}=n,v=[];if(T.value.length>0){const w=M?Date.now().toString():"";let y=b,x=0;const S=C-b+1;for(;v.length<S&&y<T.value.length;){const I=T.value[y],B=T.value[y-1]||F,N=v[x-1],O=B?(B.__fv_data_position__||0)+(B.__fv_data_height__||0):0,k=g(I)(I,B,N,y,O,e.value,v);k.refreshKey=w,v.push(k),x++,y++}}return p.value=v.length>0?v[0].index:0,c.value=v.length>0?v[v.length-1].index:0,v}function h(b,C,F){const M=C.groupField||"",{groupValue:T,raw:v}=C;n[b](M,T,v.groupParents||[]);const{dataView:w}=n,y=F[0].index,x=Math.min(y+i.value+o+1,w.value.length-1);return u(y,x)}return{getVisualData:u,maxVisibleRowIndex:c,minVisibleRowIndex:p,toggleGroupRow:h}}var Pe=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(Pe||{}),De=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(De||{}),nt=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(nt||{}),Be=(t=>(t[t.none=0]="none",t[t.filterable=1]="filterable",t[t.sortable=2]="sortable",t[t.filtered=4]="filtered",t[t.sorted=8]="sorted",t[t.ascending=16]="ascending",t[t.descending=32]="descending",t))(Be||{}),Ye=(t=>(t.DATE="date",t.DATE_TIME="datetime",t.NUMBER="number",t.ENUM="enum",t.IMAGE="image",t.BOOLEAN="boolean",t.BOOLEAN2="boolean2",t.TIMEAGO="timeago",t.NONE="none",t.CUSTOM="custom",t.MULTI_LINGUAL="multilingual",t))(Ye||{});const Tn="__setting__",Ot="__command__",_n=150,kn="right",jt="commands";function Vn(t,e,n){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:o,shouldShowHorizontalScrollbar:l}=n;function a(){return l.value&&r.createVNode("div",{class:"fv-grid-horizontal-scroll"},[r.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:d=>o(d,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function En(t){function e(d,c){switch(d.command){case"edit":case"remove":return c.status===De.initial;case"accept":case"cancel":return c.status===De.editing;default:return!d.hidden}}function n(d,c,p,f){var s,m,g,u,h;switch((s=d.onClick)==null||s.call(d,c,p.dataIndex,p),d.command){case"edit":p.status,De.editing,(g=(m=t.commandOption)==null?void 0:m.onClickEditCommand)==null||g.call(m,f,p,d,c);break;case"accept":case"cancel":p.status,De.initial;break;case"remove":(h=(u=t.commandOption)==null?void 0:u.onClickDeleteCommand)==null||h.call(u,f,p,d,c);break}}function i(d){return d==="编辑"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.edit"):d==="确定"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.accept"):d==="取消"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.cancel"):d==="删除"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.remove"):d}function o(d,c){const{column:p}=d;return p.commands&&p.commands.map((f,s)=>s?e(f,c)&&r.createVNode(Bt,{class:"ml-1",type:f.type,size:f.size||"small",onClick:m=>n(f,m,c,d),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(f.text),r.createTextVNode(" ")]}):e(f,c)&&r.createVNode(Bt,{type:f.type,size:f.size||"small",onClick:m=>n(f,m,c,d),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(f.text),r.createTextVNode(" ")]}))}function l(d,c,p,f){var s,m,g;(s=c.onClick)==null||s.call(c,d,p.dataIndex,p),(g=(m=t.commandOption)==null?void 0:m.onHandleAction)==null||g.call(m,f,p,c,d)}function a(d,c){var s,m,g;const{column:p}=d;return((s=p==null?void 0:p.commands)==null?void 0:s.find(u=>u.command))?o(d,c):r.createVNode(gn,{data:p.commands,count:typeof((m=t.commandOption)==null?void 0:m.count)!="number"?2:(g=t.commandOption)==null?void 0:g.count,size:"small",placement:"auto",onClick:u=>{l(u.payload,u.button,c,d)}},null)}return{renderCommandColumn:a}}function In(t){const e=r.ref(t.minHeight),n=r.ref(t.minWidth),i=r.ref(t.height),o=r.ref(t.width),l=r.computed(()=>i.value<=0?0:Math.max(i.value,e.value)),a=r.computed(()=>o.value<=0?0:Math.max(o.value,n.value));return r.watch([()=>t.height,()=>t.width,()=>t.minHeight,()=>t.minWidth],([c,p,f,s])=>{e.value=Number(f),n.value=Number(s),i.value=Number(c),o.value=Number(p)}),{containerStyleObject:r.computed(()=>({height:l.value>0?`${l.value}px`:t.fit?"100%":"",width:a.value>0?`${a.value}px`:t.fit?"100%":"",flex:"1 1 0"}))}}function Pn(t){var l,a;const e=r.ref(((l=t.commandOption)==null?void 0:l.enable)||!1),n=r.ref(((a=t.commandOption)==null?void 0:a.commands)||[]),i=r.computed(()=>Re.LocaleService.getLocaleValue("datagrid.commandColumn.title"));function o(d){var c;if(e.value&&!(d.value.findIndex(f=>f.dataType===jt)>-1)){const f={field:Ot,title:i.value,width:_n,fixed:kn,dataType:jt,commands:n.value,resizable:!1,halign:((c=t.commandOption)==null?void 0:c.halign)||"left",visible:!0,formatter:t.commandOption.formatter&&typeof t.commandOption.formatter?(s,m)=>t.commandOption.formatter(s,m):null};t.commandOption.formatter&&typeof t.commandOption.formatter!="function"&&(f.formatter=(s,m)=>t.commandOption.formatter(s,m)),d.value.push(f)}}return{applyCommands:o}}function Nn(t,e){var p;const n=r.ref((p=t.columnOption)==null?void 0:p.groups);function i(f,s,m,g,u){const h={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:m,resizable:!0,title:f.title||"",status:Be.none,popoverRef:r.ref(),showPopover:!1,column:null,sortType:"none"},b=g||h;if(f.group){let C=1;f.group.reduce((F,M)=>{if(typeof M=="string"){const T=s.get(M);T&&(u.fieldToRootMap.set(M,b),F.actualWidth+=T.actualWidth,F.children.push(T))}else{const T=i(M,s,F,b,u);C=Math.max(C,T.depth),F.actualWidth+=T.actualWidth,F.children.push(T)}return F},h),h.depth+=C}return e.value.headerDepth=Math.max(e.value.headerDepth,h.depth),h}function o(f){const s={groupedCells:new Map,fieldToRootMap:new Map};return n.value&&n.value.reduce((m,g)=>{const u=i(g,f,null,null,s);return m.groupedCells.set(g.field,u),m},s),s}function l(f){if(!f||f.length===0)return 0;const s=f[0];return s.children&&s.children.length>0&&(s.left=l(s.children)),s.left}function a(f,s){const m=e.value.headerDepth;f.forEach(g=>{g.layer=s?s.layer+1:1;const u=g.children&&g.children.length===0;g.depth=u?m-(g.layer-1):1,g.left=u?g.left:l(g.children),g.children&&a(g.children,g)})}function d(f,s){const m=new Map;return f.forEach(g=>{const u=s.fieldToRootMap.get(g.field),h=u!=null;h&&!m.has(u.field)&&m.set(u.field,u),h||m.set(g.field,g)}),a(Array.from(m.values())),m}function c(f){let s=new Map,m=0;if(f.reduce((g,u)=>{let h=Be.none;h=u.sortable?h|Be.sortable:h,h=u.filterable?h|Be.filterable:h,h=u.sort&&u.sort!=="none"?h|Be.sorted|(u.sort==="asc"?Be.ascending:Be.descending):h;const b=u.field;return g.set(b,{actualWidth:u.actualWidth||0,children:[],depth:1,layer:1,left:m,field:b,parent:null,resizable:u.resizable===void 0?!0:u.resizable,title:u.title,status:h,popoverRef:r.ref(),showPopover:!1,column:u,filterValue:null,sortType:u.sort||"none",showSetting:u.showSetting,draggable:u.draggable}),m+=u.actualWidth||0,g},s),n.value){const g=o(s);s=d(s,g)}return s}return{getGridHeaderCells:c}}function Bn(t,e){var v;const{sum:n,toFixed:i}=Z.useNumberFormat(),{uuid:o}=Z.useGuid(),{idField:l}=e,a=r.ref(t.summary),d=r.ref(t.group),c=r.ref(((v=t.group)==null?void 0:v.groupFields)||[]),p=r.computed(()=>{var w;return(w=t.group)==null?void 0:w.enable}),f=r.computed(()=>{var w;return(w=t.group)==null?void 0:w.showGroupPanel}),s=r.computed(()=>{const w=a.value;return(w==null?void 0:w.groupFields)||[]}),m=r.computed(()=>{const w=d.value;return w&&w.showSummary}),g=r.ref(0),u=new Map;let h=[];function b(w,y,x,S,I){const B=S[x];B&&(y.reduce((N,O,_)=>{var W;const k=O[B];let V=N.get(k);if(!V){const P=s.value.reduce((H,X)=>(H.set(X,0),H),new Map);V={field:B,title:((W=I.get(B))==null?void 0:W.title)||B,value:k,layer:x,details:[],groupSummaries:P},N.set(k,V)}return s.value&&s.value.forEach(P=>{if(V){const H=V.groupSummaries.get(P)||0;V.groupSummaries.set(P,n([H,Z.resolveField(O,P)]))}}),s.value&&s.value.forEach(P=>{if(V){const H=V.groupSummaries.get(P)||0;V.groupSummaries.set(P,i(H,2))}}),V.details.push(O),N},w),x<S.length-1&&w.forEach((N,O)=>{N.nestGroup=new Map,b(N.nestGroup,N.details,x+1,S,I),N.details=[]}))}function C(w,y){return t.group&&t.group.formatter?t.group.formatter(w.value,{...w,total:y}):`${w.title}:${w.value} (${y})`}function F(w,y){const x=[];return w.forEach(S=>{const I={[l.value]:`group_of_${y?y[l.value]+"_":""}${S.field}_${S.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:S.field,__fv_data_grid_group_layer__:S.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:S.value,groupParents:[]};y&&(I.groupParents=[...y.groupParents,y]);let B=0;if(x.push(I),S.nestGroup){const N=F(S.nestGroup,I);x.push(...N),B+=N.length}if(S.details&&S.details.length&&(x.push(...S.details),B+=S.details.length),m.value){const N={__fv_data_grid_group_field__:S.field,__fv_data_grid_group_layer__:S.layer,__fv_data_grid_group_summary__:!0};N[l.value]=`summary_of_${S.field}_${S.value}`,N[S.field]=Array.from(S.groupSummaries.entries()).reduce((O,[_,k])=>`${O} ${_} total:${k} `,""),x.push(N)}S.groupSummaries&&S.groupSummaries.size&&S.groupSummaries.forEach((N,O)=>{I[O]=N}),I[S.field]=C(S,B),I.value=S.value}),x.forEach((S,I)=>{S.__fv_data_index__=I}),x}function M(w,y,x){return!w||w.length===0||!y.length?y:(w.join(","),u.clear(),h=[],y=y.filter(S=>!S.__fv_data_grid_group_row__),b(u,y,0,w,x),h=F(u),h)}function T(w){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":w.collapse}}return{collpaseGroupIconClass:T,generateGroupData:M,groupFields:c,shouldGroupingData:p,showGroupPanel:f,groupRowSize:g}}function Rt(t){const e="parent",n="layer",i="hasChildren",o=(a,d=1,c=[],p=null)=>(a=a||[],a.reduce((f,s)=>(s.id=s.id||s.data[t.idField],s[e]=p,s[n]=d,s[i]=s[i]===void 0?!1:s[i],s.data&&Object.keys(s.data).forEach(m=>{Object.keys(s).includes(m)||(s[m]=s.data[m])}),c.push(s),s.children&&s.children.length&&(s[i]=!0,o(s.children,d+1,c,s.id)),f),c),c);return{flatTreeData:o,isNestedTree:a=>a.some(d=>Array.isArray(d.children))}}function On(t,e,n,i){const o=r.ref(0),l=r.ref(!!t.hierarchy),{idField:a}=i,{collapseField:d,hasChildrenField:c,parentIdField:p}=n,f=new Map,s=new Map,m=new Map,{flatTreeData:g,isNestedTree:u}=Rt(t);function h(R,A){s.clear(),R.reduce((q,U)=>{const te=U[p.value]!==void 0?U[p.value]:"";if(te&&A.has(te)){const de=A.get(te),ce=isNaN(Number(de.__fv_layer__))?1:Number(de.__fv_layer__);U.__fv_layer__=ce+1,U.__fv_parent_index__=de.__fv_index__,de.__fv_hasChildren__=!0}else U.__fv_layer__=1;const re=q.has(te)?q.get(te):[];return re.push(U),q.set(te,re),q},s)}function b(R){m.clear(),R.reduce((A,q)=>{const U=q[a.value];return A.set(U,q),A},m)}function C(R){R.forEach(A=>{const q=A[a.value];A.__fv_children_index__.map(te=>R[te]).forEach(te=>{te.__fv_parents__=new Map([...A.__fv_parents__.entries(),[q,!0]])})})}function F(R){R.forEach(A=>{const q=new Set(A.__fv_children_index__);A.__fv_children_index__=[...q].sort((U,te)=>U-te)})}function M(R){R.forEach(A=>{const q=A.__fv_parents__;Array.from(q.keys()).map(U=>m.get(U)).forEach(U=>{U.__fv_children_index__.push(A.__fv_index__)})}),F(R)}function T(R){R.forEach(A=>{A.__fv_child_with_lines__=[],A.__fv_child_length__=A.__fv_descendant_index__.length,A.__fv_descendant_index__.map(q=>R[q]).reduce((q,U)=>(q.__fv_child_length__+=U.__fv_children_index__.length,q.__fv_child_with_lines__.push(...U.__fv_children_index__,U.__fv_index__),q),A)})}function v(R,A){return{id:R,index:A,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function w(R,A,q){Array.from(A.keys()).forEach(U=>{A.get(U).reduce((re,de)=>{const ce=de[a.value],pe=R.get(de[a.value]),me=R.get(U),Ie=q.get(U);return me&&Ie&&(me.children.set(ce,pe),me.children.set(ce,pe),pe.parentId=U,pe.parentIndex=me.index,pe.parents.set(U,me)),re},R)})}function y(R){R.children.forEach(q=>{q.parents=new Map([...R.parents.entries(),[R.id,R]]),y(q)})}function x(R,A){R.filter(q=>q[p.value]===void 0||q[p.value]==="").forEach(q=>{const U=q[a.value],te=A.get(U);y(te)})}function S(R){Array.from(R.values()).forEach(A=>{Array.from(A.parents.values()).forEach(q=>{q.descendant.set(A.id,A)})})}function I(R){f.clear(),R.forEach((A,q)=>{const U=A[a.value];f.set(U,v(U,q))}),b(R),h(R,m),w(f,s,m),x(R,f),S(f)}function B(R){const A=R[a.value],q=f.get(A);return q&&q.children.size>0}function N(R){return R[c.value]&&!B(R)}function O(R){const A=R[a.value],q=f.get(A);return q&&q.visibleInHierarchy}function _(){o.value=Date.now()}function k(R,A){A.forEach(q=>{const U=f.get(q[a.value]),te=f.get(R),re=m.get(R);te&&re&&(U.visibleInHierarchy=!re[d.value]&&te.visibleInHierarchy)}),_()}function V(R){if(s.has(R)){const q=s.get(R);k(R,q),q.map(U=>U[a.value]).forEach(U=>V(U))}}function W(R){const A=R[a.value];V(A)}function P(R,A,q=0){R.forEach(U=>{const te=N(U),re=U.__fv_layer__<=q,de=A==="ToCollapse"?U.__fv_layer__<=q:!(U.__fv_layer__<=q),ce=re?de:U[d.value];U[d.value]=te||ce});for(const[U,te]of s.entries())k(U,te);return R}function H(R,A){P(R,"ToCollapse",A)}function X(R,A){P(R,"ToExpand",A)}function J(R){R.forEach((A,q)=>{var de;const U=A[a.value],te=s.has(U)?(de=s.get(U))==null?void 0:de.map(ce=>ce.__fv_index__):[],re=v(U,q);A.__fv_graph_node__=re,A.__fv_children_index__=te,A.__fv_descendant_index__=[...te],A.__fv_parents__=new Map,N(A)&&(A[d.value]=!0)})}function oe(R){var U,te;I(e.value),J(R),C(R),M(R),t.showLines&&T(R);const q=((U=t.hierarchy)==null?void 0:U.collapseTo)!==void 0?Number((te=t.hierarchy)==null?void 0:te.collapseTo):0;return P(R,"ToCollapse",q),R}function Me(R,A,q){const te=q.value[R][a.value],re=f.get(te);if(re){const de=f.get(re.parentId);let ce=q.value.length-1;if(de){const pe=Array.from(de.children.keys()).indexOf(re.id);if(pe===de.children.size-1){const Ie=Array.from(de.descendant.values())[de.descendant.size-1];ce=q.value.findIndex(ye=>ye[a.value]===Ie.id)+1}else{const Ie=Array.from(de.children.values())[pe+1];ce=q.value.findIndex(ye=>ye[a.value]===Ie.id)}A[c.value]=!1,A[p.value]=de.id,q.value.splice(ce,0,A)}else q.value.splice(ce,0,A)}}function Ce(R,A,q){const U=q.value[R],te=U[a.value];if(f.get(te)){const ce=q.value.findIndex(pe=>pe[a.value]===te)+1;U[c.value]=!0,U[d.value]=!1,A[c.value]=!1,A[p.value]=te,q.value.splice(ce,0,A)}}function ve(R,A,q){const te=q.value[R][a.value];if(f.get(te)){const ce=q.value.findIndex(me=>me[a.value]===te)+1;let pe=A;u(A)&&(pe=g(A)),pe.forEach(me=>{me[p.value]=te}),q.value.splice(ce,0,...pe)}}function L(R,A){const q=R[a.value],U=f.get(q),te=Array.from(U.descendant.keys());te.unshift(q);const re=f.get(U.parentId);if(re&&(re.children.delete(q),re.children.size===0)){const ce=A.find(pe=>pe[a.value]===U.parentId);ce[c.value]=!1,ce[d.value]=!1}return A.filter(ce=>te.indexOf(ce.id)===-1)}return{checkVisibleInHierarchy:o,collapseTo:H,expandTo:X,generateHierarchyData:oe,hasRealChildren:B,insertSibling:Me,insertChild:Ce,insertChildren:ve,isVisibleInTree:O,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:W,trimmedOriginalData:L}}function jn(t,e,n,i,o){const{toNumber:l,sum:a,toFixed:d}=Z.useNumberFormat(),c=new Map,p=new Map,f=new Map,s=new Map,m=new Map,g=r.ref([]),u=r.ref([]),h=Bn(t,o),{generateGroupData:b,groupFields:C,shouldGroupingData:F}=h,M=r.ref(t.data||[]),T=On(t,M,i,o),{collapseTo:v,expandTo:w,generateHierarchyData:y,hasRealChildren:x,insertSibling:S,insertChild:I,insertChildren:B,isVisibleInTree:N,shouldStratifyData:O,toggleChildrenVisibiltyByCollapseStatus:_,trimmedOriginalData:k,checkVisibleInHierarchy:V}=T,{idField:W,reviseIdentifyField:P}=o,H=r.ref(t.newDataItem),X=r.ref(t.data||[]),J=r.ref(t.data),{flatTreeData:oe,isNestedTree:Me}=Rt(t);if(t.hierarchy&&Me(t.data)){const E=oe(t.data);M.value=E,X.value=E,J.value=E}const Ce=r.ref(t.summary),ve=r.computed(()=>{const E=Ce.value;return(E==null?void 0:E.groupFields)||[]});let L=new Map;const R=r.ref(X.value.length),A=r.ref(t.pagination);function q(){return A.value&&A.value.enable&&A.value.size>0?A.value.size:X.value.length}const U=r.ref(1),te=r.computed(()=>A.value&&A.value.enable&&A.value.mode!=="server"),re=r.computed(()=>A.value&&A.value.enable&&A.value.mode==="server"),de=new Ct.FNotifyService;function ce(E,j){const G=Math.ceil(E.length/j);let Q=0;const se=[],be=[],Fe=[];for(;Q<G;){const we=E.slice(Q*j,(Q+1)*j),Ne=b(C.value,we,e);be[Q]=Ne.filter(ue=>ue.__fv_data_grid_group_row__).length,se.push(...Ne),Q++}return be.reduce((we,Ne,ue)=>(we=we+Ne,Fe.push(we),we),0),{groupData:se,groupRowSizeList:be,accumulateGroupRowSize:Fe}}function pe(){var Ne;X.value=M.value,te.value&&(R.value=X.value.length),F.value&&!te.value&&(X.value=b(C.value,M.value,e)),L=ve.value.reduce((ue,Se)=>(ue.set(Se,0),ue),L);const E=0,j=q(),G=(U.value-1)*j;let se=G>X.value.length-1||re.value?E:G,be=re.value?X.value.length:Math.min(se+j,X.value.length);if(F.value&&te.value){const{accumulateGroupRowSize:ue,groupData:Se,groupRowSizeList:Te}=ce(M.value,j);X.value=Se;const We=Te[U.value-1];se+=U.value-2<0?0:ue[U.value-2],be=se+j+We}let Fe=0;const we=[];if(X.value.length){P(X.value);const ue=W.value!==t.idField;for(let Se=se;Se<be;Se++){const Te=X.value[Se];Te.__fv_data_grid_group_row__?(Fe=0,Te.__fv_data_index__=""):Te.__fv_data_grid_group_summary__?Te.__fv_data_index__="":(Fe++,Te.__fv_data_index__=Fe+(U.value-1)*j),Te.__fv_index__=Se,Te.__fv_visible_index__=Se,t.rowOption&&t.rowOption.disabledField&&(Te.__fv_disabled__=Te[(Ne=t.rowOption)==null?void 0:Ne.disabledField]),ue&&(Te[W.value]=Se),ve.value.forEach(We=>{const Pt=L.get(We)||0;L.set(We,a([Pt,Z.resolveField(Te,We)||0]))}),we.push(Te)}}return O.value&&y(we),ve.value.forEach(ue=>{const Se=L.get(ue)||0;L.set(ue,d(Se,2))}),J.value=[...we],we}const me=r.ref(pe()),Ie=r.computed(()=>(V.value,me.value.filter(E=>O.value?E.__fv_visible__!==!1&&N(E):E.__fv_visible__!==!1)));function Ge(){Ie.value.forEach((j,G)=>(j.__fv_visible_index__=G,j))}function ye(E,j,G=!1){var Ne;const Q=G?pe():[...J.value];let se=Q;((Ne=t.filter)==null?void 0:Ne.mode)!=="server"&&(se=Q.filter(ue=>n.apply(ue)));const be=E&&E.length?se.filter(ue=>E.reduce((Se,Te)=>Se&&Te.filter(ue),!0)):se,Fe=j&&j.length?be.sort((ue,Se)=>{const Te=[...j],We=Te.shift(),Pt=Z.resolveField(ue,We.field)===void 0||Z.resolveField(ue,We.field)===null?"":Z.resolveField(ue,We.field),Vr=Z.resolveField(Se,We.field)===void 0||Z.resolveField(Se,We.field)===null?"":Z.resolveField(Se,We.field);let Nt=We.compare(Pt,Vr);for(;Nt===0&&Te.length!==0;){const tt=Te.shift();if(tt){const Er=Z.resolveField(ue,tt.field)===void 0||Z.resolveField(ue,tt.field)===null?"":Z.resolveField(ue,tt.field),Ir=Z.resolveField(Se,tt.field)===void 0||Z.resolveField(Se,tt.field)===null?"":Z.resolveField(Se,tt.field);Nt=tt.compare(Er,Ir)}}return Nt}):be,we=q();return me.value=Fe.map((ue,Se)=>{if(ue.__fv_data_grid_group_row__){const Te=`group_of_${ue.__fv_data_grid_group_field__}_${ue.__fv_data_grid_group_value__}`;ue.__fv_data_grid_group_collapse__=!!c.get(Te)}return ue.__fv_index__=Se,ue.__fv_visible_index__=Se,ue.__fv_data_index__=Se+1+(U.value-1)*we,ue}),me.value}function Ue(E){return m.clear(),u.value=E,u.value.reduce((j,G)=>(j.set(G.field,G),j),m),ye([],u.value)}function Ae(E,j){return m.set(E,j),u.value=Array.from(m.values()),ye([],u.value)}function $(E){return m.delete(E),u.value=Array.from(m.values()),ye([],u.value)}function K(E,j){return p.set(E,j),g.value=Array.from(p.values()),ye([],Array.from(m.values()))}function ee(E){return p.delete(E),g.value=Array.from(p.values()),ye([],Array.from(m.values()),!0)}function ie(){return p.clear(),g.value=[],ye([],Array.from(m.values()),!0)}function he(E,j,G){const Q=`group_of_${E}_${j}`;c.set(Q,!0);const se=be=>be[E]!==j;return f.set(`collapse_${E}_${j}`,{field:E,fieldName:E,fieldType:"string",filterValue:j,filter:se}),ye(Array.from(f.values()),Array.from(m.values()))}function Oe(E){v(me.value,E)}function Ze(E){w(me.value,E)}function D(E,j,G){const Q=`group_of_${E}_${j}`;return c.set(Q,!1),f.delete(`collapse_${E}_${j}`),ye(Array.from(f.values()),Array.from(m.values()),!0)}function le(E){const j=E.raw[W.value],G=Q=>!Q.__fv_parents__.has(j);s.set(`fold_${j}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(j),filter:G}),ye(Array.from(s.values()),Array.from(m.values())),y(me.value)}function _e(E){const j=E[W.value];s.delete(`fold_${j}`)}function Ve(E){_e(E.raw),ye(Array.from(s.values()),Array.from(m.values()),!0),y(me.value)}function xe(){const E=pe();me.value=E,ye(Array.from(s.values()),Array.from(m.values())),t.hierarchy&&y(me.value)}function Je(E){const G=t.hierarchy&&Me(E)?oe(E):E;M.value=G,xe()}function He(E,j,G){return(E&&E.length?me.value.filter((se,be)=>E.reduce((Fe,we)=>Fe&&we.filter(se),!0)):me.value).slice(j,G)}function Le(E){const j=q(),G=Math.ceil(R.value/j);0<=E&&E<=G&&(U.value=E,xe())}function et(E){M.value.push(je.cloneDeep(E)),me.value=pe()}function Mt(E=0){if(!(E>-1))return!1;const G=H.value();return t.hierarchy?S(E,G,M):M.value.splice(E,0,G),xe(),G}function Ft(E=0){if(!(E>-1&&t.hierarchy))return!1;const G=H.value(),Q=M.value[E];_e(Q),I(E,G,M),xe()}function Tt(E,j=0){if(!(j>-1&&t.hierarchy))return!1;const Q=M.value[j];_e(Q),B(j,E,M),xe()}function _t(E){const j=E?E-1:0;M.value.splice(j,1),xe()}function gt(E){const j=M.value.findIndex(G=>G[W.value]===E);j!==-1&&(M.value.splice(j,1),xe())}function yt(E){const j=E>-1?M.value[E]:null;if(!(j&&j.deletable!==!1))return!1;M.value=k(j,M.value),xe()}function kt(){const E=f.size>0?Array.from(f.values()):[];return ye(E,Array.from(m.values()))}function at(E){A.value.size=E}function Vt(E){A.value&&(at(E),xe())}function vt(E,j){const G=M.value[Number(E)-1];G.editable!==!1?(G.name=j,xe()):de.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function Et(E){return E.map(G=>{const Q=J.value.findIndex(se=>""+se[W.value]==""+G);return Q>-1?J.value[Q]:null}).filter(G=>G!=null)}function It(){const E=t.summary.groupFields;L=E.reduce((j,G)=>(j.set(G,0),j),L);for(const j of X.value)E.forEach(G=>{const Q=L.get(G)||0;L.set(G,a([Q,Z.resolveField(j,G)||0]))});E.forEach(j=>{const G=L.get(j)||0;L.set(j,d(G,2))})}function Y(E){const j=t.summary.groupFields;L=j.reduce((G,Q)=>(G.set(Q,0),G),L);for(const G of E)j.forEach(Q=>{const se=L.get(Q)||0;L.set(Q,a([se,Z.resolveField(G.raw,Q)||0]))});j.forEach(G=>{const Q=L.get(G)||0;L.set(G,d(Q,2))})}return{addFilter:K,addNewDataItem:et,addSorter:Ae,updatePageSize:at,changePageSizeTo:Vt,collapse:he,collapseTo:Oe,dataView:me,editDataItem:vt,expand:D,expandTo:Ze,filters:g,fold:le,getRange:He,getSelectionItems:Et,hasRealChildren:x,insertNewChildDataItem:Ft,insertNewChildDataItems:Tt,insertNewDataItem:Mt,isVisibleInTree:N,load:Je,navigatePageTo:Le,pageIndex:U,rawView:J,refresh:kt,removeAllFilter:ie,removeDataItem:_t,removeDataItemById:gt,removeFilter:ee,removeHierarchyDataItem:yt,removeSorter:$,reOrderVisibleIndex:Ge,setSorters:Ue,sorters:u,summaries:L,updateSummary:It,toggleChildrenVisibiltyByCollapseStatus:_,totalItems:R,unFold:Ve,updateDataView:xe,visibleDataItems:Ie,shouldGroupingData:F,pagination:A,updateVisibleDataSummary:Y}}const Rn=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],An={equal:(t,e,n)=>t&&t[e]===n,notEqual:(t,e,n)=>t&&t[e]!==n,contain:(t,e,n)=>t?(t[e]||"").indexOf(n)>-1:!1,startWidth:(t,e,n)=>t?(t[e]||"").startsWith(n):!1,endWidth:(t,e,n)=>t?(t[e]||"").endsWith(n):!1},Hn={equal:(t,e,n)=>t&&t[e]===n,in:(t,e,n)=>{if(t){const i=t[e];return n.indexOf(i)>-1}return!1},notEqual:(t,e,n)=>t&&t[e]!==n},Ln={equal:(t,e,n)=>{if(t){const i=new Date(n).getTime();return new Date(t[e]).getTime()===i}return!1},notEqual:(t,e,n)=>{if(t){const i=new Date(n).getTime();return new Date(t[e]).getTime()!==i}return!1},greaterThan:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<=i}return!1}},$n={equal:(t,e,n)=>t?String(n).split(",").includes(String(t[e])):!1,in:(t,e,n)=>{if(t){const i=t[e];return n.indexOf(i)>-1}return!1},notEqual:(t,e,n)=>t?String(n).split(",").findIndex(o=>o===String(t[e]))===-1:!1},Wn={equal:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):i===o}return!1},notEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?!0:i!==o}return!1},greaterThan:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o>i}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o>=i}return!1},lessThan:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o<i}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o<=i}return!1}},zn=new Map([["boolean",Hn],["datetime",Ln],["enum",$n],["number",Wn],["text",An]]);function qn(t,e){const n=r.ref([]),i=new Map,{loadConditionGroup:o}=fe.useCondition();function l(T,v){switch(T){case"check-box":return new fe.CheckBoxValue({value:v});case"combo-list":return new fe.ComboListValue({value:v});case"combo-lookup":return new fe.ComboLookupValue({value:v});case"input-group":return new fe.TextValue({value:v});case"date-picker":return new fe.DatePickerValue({value:v});case"date-range":return new fe.DateRangeValue({value:v});case"datetime-picker":return new fe.DateTimePickerValue({value:v});case"datetime-range":return new fe.DateRangeValue({value:v});case"lookup":return new fe.TextValue({value:v});case"month-picker":return new fe.MonthPickerValue({value:v});case"month-range":return new fe.MonthRangeValue({value:v});case"number-range":return new fe.NumberRangeValue({value:v});case"number-spinner":return new fe.NumberSpinnerValue({value:v});case"radio-group":return new fe.RadioGroupValue({value:v});default:return new fe.TextValue({value:v})}}const a=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),d=new Map([["boolean",fe.CompareType.Equal],["date",fe.CompareType.Equal],["datetime",fe.CompareType.Equal],["number",fe.CompareType.Equal],["string",fe.CompareType.Equal],["text",fe.CompareType.Equal],["enum",fe.CompareType.In],["reference",fe.CompareType.Equal]]);function c(){n.value.forEach((v,w)=>{w===n.value.length-1?v.relation=0:v.relation=1});const T=[];return n.value.forEach(v=>{const{valueType:w}=v.value,y=v.value.value;if(w==="boolean"){const x=[];y.length===1&&x.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value[0],relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:fe.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null}),y.length>1&&x.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value[0],relation:2,expresstype:fe.ValueType.Value,lbracket:v.lBracket?v.lBracket+"(":"(",rbracket:v.rBracket||null},{filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value[1],relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:fe.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket?v.rBracket+")":")"}),T.push(...x)}else T.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value,relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:fe.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null})}),T}function p(T){var w;const v=T.dataType||"string";return((w=T.editor)==null?void 0:w.type)||a.get(v)||"text"}function f(T){var _,k,V,W,P;const v=`field_filter_${T.field}`,w=Date.now(),y=T.field,x=((_=T.column)==null?void 0:_.title)||"",S=((k=T.column)==null?void 0:k.dataType)||"string",I=d.get(S)||fe.CompareType.Equal,B=((W=(V=T.column)==null?void 0:V.editor)==null?void 0:W.type)||a.get(S)||"text",N=l(B,(P=T.column)==null?void 0:P.filter),O=B==="lookup"||B==="combo-lookup"?fe.ValueType.SmartHelp:B==="combo-list"?fe.ValueType.Enum:fe.ValueType.Value;i.set(v,{id:v,fieldCode:y,fieldName:x,compareType:I,valueType:O,value:N,conditionId:w,relation:1}),n.value=Array.from(i.values())}function s(T){const v=`field_filter_${T.field}`;i.delete(v),n.value=Array.from(i.values())}function m(T){i.delete(T),n.value=Array.from(i.values())}function g(){i.clear(),n.value=[]}function u(T){const{valueType:v}=T.value,w=T.compareType||"0",y=Rn[Number(w)];return zn.get(v)[y]}function h(T){const v=T.relation===2?0:1,w=T.items.map(x=>{const S=u(x);return B=>S(B,x.fieldCode,x.value.getValue())}),y=T.children&&T.children.length?T.children.map(x=>h(x)):[];return{relation:v,filterFunctions:w,children:y}}function b(){const T=o(n.value);return h(T)}function C(T,v){const w=v.filterFunctions.map(x=>x(T)),y=v.children.map(x=>C(T,x));return v.relation===1?w.every(x=>x)&&y.every(x=>x):w.includes(!0)||y.includes(!0)}function F(T){const v=b();return C(T,v)}function M(T){e.emit("filterChanged",T)}return{addColumnFilter:f,apply:F,clearCondition:g,conditions:n,getFilterEditorType:p,removeColumnFilter:s,removeCondition:m,filterFromServer:M,createFilterConditions:c}}function Gn(t){r.ref(t.selection.showCheckbox||!1);const e=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),n=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),i=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.parentIdField)||"parent"}),o=r.computed(()=>t.hierarchy&&t.selection.showCheckbox),l=r.computed(()=>(t.treeNodeIconsData.fold||t.iconField)&&t.showTreeNodeIcons);return{collapseField:e,hasChildrenField:n,parentIdField:i,shouldShowCheckBox:o,shouldShowIcon:l}}function Un(t,e,n,i,o,l,a,d,c,p,f){const{dataView:s,visibleDataItems:m}=e,{getVisualData:g,maxVisibleRowIndex:u,minVisibleRowIndex:h}=o,b=r.computed(()=>i.value.primaryColumnsWidth),C=r.computed(()=>i.value.leftColumnsWidth),F=r.computed(()=>i.value.rightColumnsWidth),M=r.ref(0),T=r.ref(0);let v=0,w=l.value-1;const y=r.ref(0),x=r.ref(0),S=r.ref(0),I=r.ref(t.virtualized),B=24,N=1.5;let O=null,_=null,k=null;function V(){return m.value.length*c.value}const W=r.ref(new Map);function P(){m.value.forEach((E,j)=>{const G=E.__fv_visible_index__;E.__fv_data_height__&&W.value.set(G,E.__fv_data_height__)})}function H(){var E;const Y=m.value;if(Y.length<=0)return 0;if(P(),(E=t.rowOption)!=null&&E.wrapContent){const j=s.value.length;let G=0;for(let Q=0;Q<j;Q++)if(W.value.has(Q))G+=W.value.get(Q)||c.value;else if(W.value.size>0){const be=Array.from(W.value.values()).reduce((Fe,we)=>Fe+we,0)/W.value.size;G+=be}else G+=c.value;return G}else{const j=u.value<Y.length?Y[u.value]:Y[Y.length-1];return j.__fv_data_position__>V()?V():(j.__fv_data_position__||0)+(j.__fv_data_height__||0)+Math.max(Y.length-1-u.value,0)*c.value}}const X=r.computed(()=>{const Y=H();let E=x.value/Math.max(Y,x.value),j=Math.floor(E*x.value);for(;x.value>0&&j<B;)E*=N,j=Math.floor(E*x.value);return j}),J=r.computed(()=>Math.floor(S.value/Math.max(b.value,S.value)*y.value)),oe=0,Me=0,Ce=r.computed(()=>y.value-(C.value+b.value+F.value+d.value));function ve(Y){var E;if((E=t.rowOption)!=null&&E.wrapContent){let j=0;const G=s.value.length;for(let Q=0;Q<G;Q++){if(W.value.has(Q))j+=W.value.get(Q)||c.value;else if(W.value.size>0){const be=Array.from(W.value.values()).reduce((Fe,we)=>Fe+we,0)/W.value.size;j+=be}else j+=c.value;if(j>Y)return Q}return G>0?G-1:0}else{const G=Math.floor(Y/c.value)+1,Q=m.value;return Q.length>G?Q[G].__fv_visible_index__-1:0}}function L(Y,E,j){let G=Y,Q=E;const se=E-Y+1;if(se<a+l.value+a){const be=a+l.value+a-se,Fe=E+be<=j,we=0+be<=Y;if(Fe)Q+=be,w=Q;else if(we)G-=be,v=G;else{const Ne=j-E,ue=be-Ne;Q=Math.min(E+Ne,j),G=Math.max(Y-ue,0)}}return{actualStart:G,actualEnd:Q}}function R(Y){var Ne,ue;const E=m.value;if(!E.length){n.value=[];return}const j=(Ne=t.pagination)!=null&&Ne.enable?0:Math.max(v-a,0),G=E[E.length-1].__fv_visible_index__,Q=(ue=t.pagination)!=null&&ue.enable?E.length-1:Math.min(w+a,G),{actualStart:se,actualEnd:be}=L(j,Q,G),Fe=E[se-1],we=g(se,be,Fe,Y);we.length&&(n.value=[...we])}const A=r.computed(()=>H()>x.value),q=r.computed(()=>Math.floor(b.value)>S.value);function U(Y,E){let j=Y;const G=j>oe,Q=A.value;Q&&j<x.value-E&&(j=x.value-E),(!Q||G)&&(j=oe),M.value!==j&&(M.value=j)}function te(){I.value&&(v=ve(Math.abs(M.value)),w=v+l.value-1,(v<h.value||w>u.value-a/2)&&R())}function re(Y){let E=M.value+Y;E>oe&&(E=oe);const j=H();U(E,j),te()}function de(Y){if(!q.value){T.value=0;return}let E=T.value+Y;E>Me&&(E=Me),E<Ce.value&&(E=Ce.value),T.value!==E&&(T.value=E)}function ce(){Math.abs(T.value)+S.value>b.value&&(T.value=Math.min(S.value-b.value,0))}function pe(){M.value=0,v=0,w=l.value-1,R()}function me(){const Y=H();U(M.value,Y)}r.watch([S,b],()=>{de(0)}),r.watch(x,(Y,E)=>{Y!==E&&Y>=s.value.length*c.value&&re(0)});function Ie(Y){let{deltaX:E}=Y,j=-1*Y.deltaY;return typeof E>"u"&&(E=-1*Y.wheelDeltaX/6),typeof j>"u"&&(j=Y.wheelDeltaY/6),Y.deltaMode&&Y.deltaMode===1&&(E*=10,j*=10),Y.shiftKey?{deltaY:-j,deltaX:-E}:{deltaX:E,deltaY:j}}function Ge(Y){if(t.disabled||!A.value||Y.target.tagName==="TEXTAREA")return;Y.preventDefault(),Y.stopPropagation();const{deltaX:E,deltaY:j}=Ie(Y);re(j),de(E)}function ye(){var Y;return(Y=t.rowOption)!=null&&Y.wrapContent?H():s.value.length*c.value}const Ue=r.computed(()=>({height:`${ye()}px`,width:`${C.value}px`,transform:`translateY(${M.value}px)`})),Ae=r.computed(()=>({transform:`translateY(${M.value}px)`})),$=r.computed(()=>{const Y=ye();return{height:p.value?"100%":`${Y}px`,width:p.value?"100%":`${b.value}px`,transform:`translate(${T.value}px, ${M.value}px)`}}),K=r.computed(()=>({transform:`translate(${T.value}px, ${M.value}px)`})),ee=r.computed(()=>({height:`${ye()}px`,width:`${F.value}px`,transform:`translateY(${M.value}px)`})),ie=r.computed(()=>({transform:`translateY(${M.value}px)`})),he=r.computed(()=>({height:`${ye()}px`,width:`${d.value}px`,transform:`translateY(${M.value}px)`})),Oe=r.computed(()=>({width:`${C.value}px`})),Ze=r.computed(()=>({transform:`translateX(${T.value}px)`})),D=r.computed(()=>({width:`${F.value}px`})),le=r.computed(()=>{const Y=H();return U(M.value,Y),M.value/(x.value-Y)*(x.value-X.value)}),_e=r.computed(()=>({width:"8px",height:`${X.value}px`,top:`${le.value}px`,backgroundColor:"#cccccc !important"})),Ve=r.computed(()=>T.value/Ce.value*(y.value-J.value)),xe=r.computed(()=>({height:"8px",width:`${J.value}px`,left:`${Ve.value}px`,backgroundColor:"#cccccc !important"})),Je=r.ref(!1),He=r.ref(-1),Le=r.ref(-1),et=r.ref();function Mt(Y){if(Y instanceof MouseEvent?Y.pageX:Y.touches[0].pageX,Je.value&&Le.value!==-1){const E=Le.value-Y.pageX,j=y.value-J.value;if(Math.abs(E)<=j){const G=E/(S.value-J.value)*(b.value-S.value);de(G),Le.value=Y.pageX}}}function Ft(Y){if(Je.value&&He.value!==-1){const E=He.value-Y.pageY,j=H(),G=j-X.value;if(Math.abs(E)<=G){const Q=E/(x.value-X.value)*(j-x.value);re(Q),He.value=Y.pageY}}}function Tt(Y){const{pageX:E,pageY:j}=Y.touches[0];if(Je.value&&Le.value!==-1){const G=Le.value-E,Q=y.value-J.value;if(Math.abs(G)<=Q){const se=G/(S.value-J.value)*(b.value-S.value);de(se),Le.value=E}}}function _t(Y){const{pageX:E,pageY:j}=Y.touches[0];if(Je.value&&He.value!==-1){const G=He.value-j,Q=H(),se=Q-X.value;if(Math.abs(G)<=se){const be=G/(x.value-X.value)*(Q-x.value);re(be),He.value=j}}}function gt(Y){Je.value=!1,He.value=-1,Le.value=-1,document.removeEventListener("mouseup",gt),O&&(document.removeEventListener("mousemove",O),O=null),document.body.style.userSelect="",et.value&&(et.value.style.opacity=null)}function yt(Y){Je.value=!1,He.value=-1,Le.value=-1,document.removeEventListener("touchend",yt),_&&(document.removeEventListener("touchmove",_),_=null),k&&(document.removeEventListener("touchmove",k),_=null),document.body.style.userSelect="",et.value&&(et.value.style.opacity=null)}function kt(Y,E,j){var Fe;Je.value=!0;const G=(Fe=Y.target)==null?void 0:Fe.parentElement;G&&(G.style.opacity="1",et.value=G);const Q=j==="horizontal"?Mt:je.throttle(Ft,50);O||(O=Q);const{pageX:se}=Y,{pageY:be}=Y;j==="vertical"&&(He.value=Y.pageY),j==="horizontal"&&(Le.value=Y.pageX),E.value&&(E.value,document.addEventListener("mousemove",O),document.addEventListener("mouseup",gt),document.body.style.userSelect="none")}function at(Y){const{pageX:E,pageY:j}=Y.touches[0],G=Math.abs(E-Le.value),Q=Math.abs(j-He.value);Q>G&&Q>5?(k||(k=je.throttle(_t,50)),document.addEventListener("touchmove",k),document.removeEventListener("touchmove",at)):G>Q&&G>5&&(_||(_=Tt),document.addEventListener("touchmove",_),document.removeEventListener("touchmove",at)),Le.value=E,He.value=j}function Vt(Y,E){var se;Je.value=!0;const j=(se=Y.target)==null?void 0:se.parentElement;j&&(j.style.opacity="1",et.value=j);const{pageX:G,pageY:Q}=Y.touches[0];Le.value=G,He.value=Q,E.value&&(E.value,document.addEventListener("touchmove",at),document.addEventListener("touchend",yt),document.body.style.userSelect="none")}function vt(Y){var G;let E,j;if((G=t.rowOption)!=null&&G.wrapContent){E=H()-x.value,j=0;for(let se=0;se<Y;se++)if(W.value.has(se))j+=W.value.get(se)||c.value;else if(W.value.size>0){const Fe=Array.from(W.value.values()).reduce((we,Ne)=>we+Ne,0)/W.value.size;j+=Fe}else j+=c.value}else E=s.value.length*c.value-x.value,j=Y*c.value;j>=E&&(j=E),re(-j-M.value)}function Et(){vt(s.value.length)}function It(Y){var E;if((E=t.rowOption)!=null&&E.wrapContent){const G=ye()-x.value,Q=Math.max(Math.min(Y,0),-G);re(Q-M.value)}else re(Y-M.value)}return{dataGridWidth:y,fitHorizontalScroll:ce,gridDataStyle:$,gridHeaderColumnsStyle:Ze,gridMergedDataStyle:K,gridSideStyle:he,horizontalScrollThumbStyle:xe,leftFixedGridDataStyle:Ue,leftFixedGridHeaderColumnsStyle:Oe,leftFixedGridMergedDataStyle:Ae,offsetX:T,offsetY:M,onMouseDownScrollThumb:kt,onWheel:Ge,reCalculateVisualDataRows:R,resetScroll:pe,rightFixedGridDataStyle:ee,rightFixedGridHeaderColumnsStyle:D,rightFixedGridMergedDataStyle:ie,shouldShowHorizontalScrollbar:q,shouldShowVirticalScrollbar:A,updateVirticalScroll:me,updateVisibleRowsOnLatestVisibleScope:te,verticalScrollThumbStyle:_e,viewPortWidth:S,viewPortHeight:x,scrollToBottom:Et,scrollToRowByIndex:vt,scrollTo:It,onTouchstartScrollThumb:Vt}}function Dn(t,e,n){const{visibleDataItems:i}=e,{isUndefined:o}=Z.useCommonUtils();function l(c){var p;if((p=t.rowOption)!=null&&p.wrapContent){const f=i.value;let s=0;for(let m=0;m<=c.__fv_visible_index__;m++){const g=f[m];s+=g.__fv_data_height__}return s}else return n.value*c.__fv_visible_index__}function a(c,p){const f=c.pre;if(f){let s=f.__fv_data_position__,m=f.__fv_data_height__;(o(s)||t.virtualized&&t.hierarchy&&l(f)!==s)&&(s=l(f)),o(m)&&(m=n.value);const g=c.visible?s+m:f.__fv_data_position__;c.top=g,p.__fv_data_position__=g}else c.top=0,p.__fv_data_position__=0}function d(c,p,f){if(c&&!p.ref){p.ref=c;const s=p.parent;p.cellHeight!==c.offsetHeight&&(p.cellHeight=c.offsetHeight),p.cellHeight&&p.cellHeight>(s.height||0)&&(s.height=p.cellHeight,f.__fv_data_height__=s.height),a(s,f)}!c&&p.ref&&(p.ref=c)}return{updateRowPosition:a,updateVisualInfomation:d}}function Yn(){function t(e,n){var a,d;if(!n.data||!n.data.length)return"";const i=Object.prototype.hasOwnProperty.call(n,"valueField")&&n.valueField||"value",o=Object.prototype.hasOwnProperty.call(n,"textField")&&n.textField||"name";if(typeof e=="string"&&(e!=null&&e.includes(","))){const c=e.split(",");if(!n.data.filter(m=>c.includes(m[i])).length)return"";const f=(a=n.data)==null?void 0:a.reduce((m,g)=>(m[g[i]]=g,m),{});return c.map(m=>{var g;return(g=f[m])==null?void 0:g[o]}).join(",")||e}const l=(d=n.data)==null?void 0:d.find(c=>c[i]===e);return(l==null?void 0:l[o])||e||""}return{renderEnumColumn:t}}function Xn(){function t(e,n){return e?n==null?void 0:n.trueText:n==null?void 0:n.falseText}return{renderText:t}}function Zn(){const{formatTo:t}=Z.useDateFormat();function e(i,o){if(i){let l="yyyy-MM-dd";if(typeof o=="string"?l=o:typeof o=="object"&&(l=o.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof o=="object"&&o.dateRange){const a=o.dateRangeDatesDelimiter||"~";let[d,c]=i.split(a);return d=t(d,l),c=t(c,l),d+a+c}return t(i,l)}return i}function n(i,o){const l=o.dateFormat||"yyyy-MM-dd";return t(i,l)}return{renderDateColumn:n,renderDateTimeColumn:e}}function Jn(){const{formatTo:t}=Z.useNumberFormat();function e(n,i){const o={precision:i.precision,prefix:i.prefix||"",suffix:i.suffix||"",decimalSeparator:i.decimal||".",groupSeparator:i.thousand||""};return t(n,o)||n}return{renderNumberColumn:e}}function Qn(){function t(e,n){if(e){const i={};return n!=null&&n.width&&(i.width=`${n.width}px`),n!=null&&n.height&&(i.height=`${n.height}px`),r.createVNode("img",{src:e,style:i},null)}return e}return{renderImageColumn:t}}function Kn(){function t(e,n){const i=Re.LocaleService.getLocale();return(e==null?void 0:e[i||"zh-CHS"])||""}return{renderMultilingualColumn:t}}function ei(){const{renderText:t}=Xn(),{renderEnumColumn:e}=Yn(),{renderNumberColumn:n}=Jn(),{renderDateColumn:i,renderDateTimeColumn:o}=Zn(),{renderImageColumn:l}=Qn(),{renderMultilingualColumn:a}=Kn();function d(f){return typeof f=="boolean"?f.toString():f}function c(f,s,m){return s.customFormat?s.customFormat(f,m.raw):d(f)}function p(f,s,m){const{column:g}=f,u=Z.resolveField(s.raw,g.field),h=m.options||m;return m.type===Ye.NONE?d(u):m.type===Ye.CUSTOM?c(u,m,s):m.type===Ye.ENUM?e(u,h):m.type===Ye.NUMBER?n(u,h):m.type===Ye.BOOLEAN?t(u,h):m.type===Ye.DATE?i(u,h):m.type===Ye.DATE_TIME?o(u,m):m.type===Ye.IMAGE?l(u,h):m.type===Ye.MULTI_LINGUAL?a(u,h):d(u)}return{renderFormatColumn:p}}function ti(t,e,n){const{isUndefined:i}=Z.useCommonUtils(),o=r.ref(t.mergeCell),{updateVisualInfomation:l}=n,{renderCommandColumn:a}=En(t),{renderFormatColumn:d}=ei();function c(b,C,F,M,T,v=1){const w={colSpan:v,rowSpan:1,index:F,field:b,data:Z.resolveField(M,b),editingData:Z.resolveField(M,b),parent:T,mode:C,align:"left",valign:"start",showEllipsis:!0,getEditor:y=>y.data,setRef:y=>l(y,w,M),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return w}function p(b,C,F){return b.getEditor=M=>e.getEditor(M,C,M.parent),b.setRef=M=>l(M,b,F),b.update=M=>{M!==void 0&&(b.editingData=M)},b.accept=()=>{Z.setFieldValue(b.editingData,F,C.field),b.data=Z.resolveField(F,C.field)},b.cancel=()=>{b.editingData=b.data},b.updateData=M=>{Z.setFieldValue(Z.resolveField(M,C.field),F,C.field),b.data=Z.resolveField(F,C.field),b.editingData=Z.resolveField(F,C.field)},b}function f(b,C){C.dataType==="commands"?b.formatter=(F,M)=>C.formatter?C.formatter(b,M):a(b,M):C.formatter&&(b.formatter=(F,M)=>typeof C.formatter=="function"?C.formatter(F,M):d(b,M,C.formatter))}function s(b,C,F){const M=C&&C.data[F];if(M&&M.data===b.data){const v=M&&M.spannedBy||M;v.rowSpan++,v.spanned=v.spanned||[],v.spanned.push(b),b.colSpan=0,b.rowSpan=0,b.spannedBy=v}}function m(b,C,F){o.value&&s(b,C,F.field)}function g(b,C){C.showEllipsis!==void 0&&(b.showEllipsis=C.showEllipsis),b.showTips=i(C.showTips)?!0:C.showTips,b.column=C,b.align=C.align||"left",b.valign=C.valign||"middle",b.mode=t.editable?Pe.editable:Pe.readonly}function u(b,C,F,M){g(b,C),p(b,C,M),f(b,C),m(b,F,C)}function h(b,C,F,M,T){const v=t.editable?Pe.editable:Pe.readonly,w=c(b.field,v,C,F,M);return u(w,b,T,F),w}return{createCellByColumn:h,createCellByField:c,updateCellByColumn:u}}function ni(t,e,n,i,o,l,a,d){var M;const c=r.ref(t.rowOption),p=((M=c.value)==null?void 0:M.wrapContent)||!1,{idField:f}=o,{collapseField:s}=i,{updateRowPosition:m}=l,{createCellByColumn:g}=a,u=(T,v,w,y)=>{Z.setFieldValue(Z.resolveField(T,y),v,y),w.data[y].data=Z.resolveField(v,y),w.data[y].editingData=Z.resolveField(v,y)};function h(T,v,w,y,x,S){var oe,Me,Ce;const{__fv_data_grid_group_field__:I,__fv_data_grid_group_value__:B,__fv_data_index__:N}=w,O=w.__fv_data_grid_group_layer__||(w.__fv_parents__?(oe=w.__fv_parents__)==null?void 0:oe.size:0)||0,_=typeof w.parent=="number"?Number(w.parent):-1,k=w.__fv_data_grid_group_collapse__||w[s.value],V=w.__fv_visible__===void 0?!0:w.__fv_visible__,W=w.__fv_checked__,P=w.__fv_indeterminate__,H=w.__fv_disabled__||w[((Me=t.rowOption)==null?void 0:Me.disabledField)||"disabled"],X=t.hierarchy&&e.isVisibleInTree(w),J={collapse:k,data:{},dataIndex:N,groupField:I,groupValue:B,layer:O,index:v,parentIndex:_,pre:y,top:S,type:T,raw:w,checked:W,disabled:H,indeterminate:P,setRef:ve=>{J.ref=ve},visible:V&&X||V&&!t.hierarchy,status:De.initial,updateCell:(ve,L)=>{u(ve,w,J,L),e.updateSummary()},updateCells:(ve,L)=>{L.forEach(R=>{u(ve,w,J,R)})}};return y||(w.__fv_data_position__=0),p||(J.height=d.value,w.__fv_data_height__=J.height,m(J,w)),(Ce=c.value)!=null&&Ce.customRowStatus&&(c.value.customRowStatus(J),w.__fv_disabled__=J.disabled),J}function b(T,v,w,y,x,S){const I=h(nt.data,x,v,w,y,S);return T.forEach((B,N)=>{I.data[B.field]=g(B,N,v,I,y)}),I}function C(T,v,w,y,x){const S=Object.assign(T,{index:v,dataIndex:w,top:y,pre:x});return p||(S.height=d.value,S.raw.__fv_data_height__=S.height,m(S,S.raw)),S}function F(T,v,w,y,x,S){const I=T.__fv_data_index__,B=T[f.value],N=n.getEditingSnapshot(B);return N===null?b(S,T,v,w,y,x):C(N,y,I,x,v)}return{createEmptyRow:h,createNewRowFromDataItem:b,renderDataRow:F}}function ii(t,e,n,i){const o=r.ref(t.summary),{idField:l}=e,{createCellByField:a}=n,{createEmptyRow:d}=i,c=r.computed(()=>{const m=o.value;return(m==null?void 0:m.groupFields)||[]}),p=r.computed(()=>{const m=o.value;return m&&m.enable&&m.groupFields&&m.groupFields.length>0});function f(m,g,u,h){if(p.value){const b=m.data[g];let C=b.colSpan;const F=c.value.reduce((M,T)=>(M.set(T,!0),M),new Map);h.reduce((M,T,v)=>{if(F.has(T.field)){const w=a(T.field,Pe.readonly,v,u,m);m.data[T.field]=w,C-1>v&&(C=v)}return M},m),b.colSpan=C}}function s(m,g,u,h,b,C,F){const M=m.__fv_data_grid_group_field__,T=d(nt.group,h,m,g,u,b);return T.data[l.value]=a(l.value,Pe.readonly,-1,m,T,0),T.data[M]=a(M,Pe.readonly,1,m,T,C.length),f(T,M,m,C),T}return{renderGroupRow:s}}function oi(t,e,n,i){const{idField:o}=e,{createCellByField:l}=n,{createEmptyRow:a}=i;function d(c,p,f,s,m,g,u){const h=c.__fv_data_grid_group_field__,b=a(nt.summary,s,c,p,f,m);return b.data[o.value]=l(o.value,Pe.readonly,-1,c,b),b.data[h]=l(h,Pe.readonly,1,c,b,g.length),b}return{renderSummaryRow:d}}function ri(t,e,n,i,o){var ve;const{isMobilePhone:l}=ke.useMobile(),a=r.ref(!1),{idField:d}=n,c=r.ref(t.editable),p=r.ref(t.editOption),f=r.ref(((ve=t.rowOption)==null?void 0:ve.wrapContent)||!1),{onClickRow:s,onClickRowExcludeDblclick:m}=i,g=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let u,h,b,C,F;function M(L){return h&&h.raw[d.value]===L?h:null}const T=r.reactive({});function v(L){return(L==null?void 0:L.field)!==Ot&&(L==null?void 0:L.field)!==Tn}function w(L,R,A={}){L.mode=Pe.editing,u=L,h=R,b=Z.resolveField(R==null?void 0:R.raw,L.field),C=A;for(const q in T)delete T[q]}function y(L){L.accept(),L.mode=Pe.editable,u=null}function x(L){y(L);const R={};h&&(Object.keys(h).forEach(A=>{R[A]=h==null?void 0:h[A]}),h=null),e.emit("endEditCell",{cell:L,row:R,newValue:Z.resolveField(R==null?void 0:R.raw,L.field),oldValue:b,column:C,editor:T})}function S(L){const R=Promise.resolve(!0);return L?R.then(()=>je.isUndefined(t.beforeEndEditCell)?!0:typeof t.beforeEndEditCell=="function"?t.beforeEndEditCell({cell:L,row:h,newValue:L.editingData,oldValue:b}):()=>!0).then(A=>(A&&(x(L),h&&(h=null)),A)):R}function I(L){if(F&&F!==L.target){F=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const A=L.target;if(!(A!=null&&A.closest(".popover"))){if(L instanceof MouseEvent||L.key!=="Enter"){const q=A.closest(".fv-grid-cell");if(u&&u.ref&&u.ref===q)return}S(u).then(q=>{q&&document.body.removeEventListener("click",I,!0)})}}function B(){window.closeModal||(window.closeModal=()=>{a.value=!1,window.closeModal&&delete window.closeModal})}function N(L,R,A){return Promise.resolve().then(()=>{var U;const q=(U=A.editor)==null?void 0:U.readonly;return!je.isUndefined(t.beforeEditCell)&&typeof t.beforeEditCell=="function"?t.beforeEditCell({row:L,cell:R,rawData:L.raw,column:A}):!q}).then(q=>{q&&(l()?(a.value=!0,B()):w(R,L,A),document.body.removeEventListener("click",I,!0),document.body.addEventListener("click",I,!0))})}function O(L,R,A,q={}){L.stopPropagation(),m(L,A),v(R.column)&&c.value&&p.value.editMode==="cell"&&R.mode===Pe.editable&&S(u).then(()=>{u||N(A,R,q)})}function _(L,R,A,q={}){l()||L.stopPropagation(),s(L,A),v(R.column)&&c.value&&p.value.editMode==="cell"&&R.mode===Pe.editable&&S(u).then(()=>{u||N(A,R,q)})}function k(L){L.stopPropagation(),F=L.target}function V(L){L.stopPropagation(),F&&(F=null)}function W(L){Object.values(L.data).filter(R=>{var A;return R.mode===Pe.editable&&v(R.column)&&!((A=R.column)!=null&&A.readonly)}).forEach(R=>{R.mode=Pe.editing}),L.status=De.editing,h=L}function P(L,R){Object.values(L.data).filter(A=>A.mode===Pe.editing).forEach(A=>{R?A.accept():A.cancel(),A.mode=Pe.editable}),L.status=De.initial,h===L&&(h=null)}function H(L){c.value&&p.value.editMode==="row"&&h!==L&&(h&&P(h,!1),W(L))}function X(L){P(L,!0),L.status=De.initial}function J(L){P(L,!1),L.status=De.initial}function oe(L,R,A){const q=R.dataType,U=R.editor||{type:g.get(q)||"input-group"};return!f.value&&U.type==="text"&&(U.type="input-group"),U&&v(L.column)?(U.type==="input-group"&&(U.textAlign=R.align!=="center"&&R.align!=="right"?"left":R.align,U.updateOn="change"),U.type==="number-spinner"&&(U.updateOn="change"),U.type==="textarea"&&(U.lineBreak="alt enter"),U.context={rowData:A.raw,column:R,cell:L,editor:T},U.readonly=!1,r.createVNode(yn.FDynamicFormInput,{focusOnCreated:t.focusOnEditingCell,selectOnCreated:t.selectOnEditingCell,editor:U,modelValue:L.editingData,"onUpdate:modelValue":te=>L.editingData=te,id:R.id,onMousedown:te=>k(te),onMouseup:te=>V(te)},null)):L.data}function Me(){S(u)}r.watch(()=>t.editable,()=>{c.value=t.editable}),r.watch(()=>{var L;return(L=t.editOption)==null?void 0:L.editMode},L=>{p.value.editMode=L});function Ce(){u=null,h=null,C=null,F=null,document.body.removeEventListener("click",I,!0)}return{clear:Ce,onClickOutOfCell:I,onClickCell:_,onClickCellByKeyboard:O,onEditingRow:H,acceptEditingRow:X,cancelEditingRow:J,getEditingSnapshot:M,getEditor:oe,endEditCell:Me,onMousedownCell:k,onMouseupCell:V,showRowEditPanel:a,endEditByCell:y}}function li(t){const e=r.ref(t.idField);function n(i){if(i&&i.length){const o=i[0];Object.keys(o).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:n}}function ai(t,e,n,i){const{idField:o}=i,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:d,selectItem:c,toggleSelectItem:p,updateSelectAllStatus:f,isSingleSelect:s}=n,m=r.ref(0),g=r.ref(-1);function u(N){l.value=N}function h(N){return N.raw[o.value]===l.value}function b(N,O){var V;const _=O??N.dataIndex,k={"fv-grid-row":N.type===nt.data,"fv-grid-group-row":N.type===nt.group,"fv-grid-summary-row":N.type===nt.summary,"fv-grid-row-hover":_===g.value,"fv-grid-row-selected":h(N),"fv-grid-row-odd":_%2>0,"fv-grid-row-even":_%2===0,"fv-grid-disabled":N.disabled};if((V=t.rowOption)!=null&&V.customRowStyle){const W=t.rowOption.customRowStyle(N.raw)||{};return Object.assign({},k,W.class||{})}return k}function C(N,O){var k;const _={"fv-grid-cell":!0};if((k=t.rowOption)!=null&&k.customCellStyle){const V=t.rowOption.customCellStyle(N,O)||{};return Object.assign({},_,V.class||{})}return _}function F(N,O){var k;const _={"fv-grid-hierarchy-cell":!0};if((k=t.rowOption)!=null&&k.customCellStyle){const V=t.rowOption.customCellStyle(N,O)||{};return Object.assign({},_,V.class||{})}return _}function M(N){const O=l.value,_=N.raw[o.value];u(_),O!==_&&e.emit("selectionChange",[N.raw],{id:_,data:N.raw})}function T(N,O){var V,W;if(d.value&&!(O!=null&&O.shiftKey)||s.value){(V=t.selection)!=null&&V.keepSelectingOnClick?c(N):p(N,(W=t.selection)==null?void 0:W.keepSelectingOnClick),f();return}if(d.value&&(O==null?void 0:O.shiftKey)||a.value){p(N),f();return}}function v(N,O){O.disabled||(e.emit("clickRow",O.index,O.raw),M(O),T(O,N))}function w(N){m.value+=1,setTimeout(()=>{m.value===1&&e.emit("clickRow",N.index,N.raw),m.value=0},250),m.value>1&&(e.emit("doubleClickRow",N.index,N.raw),m.value=0)}function y(N,O){O.disabled||(w(O),M(O),T(O,N))}function x(N){N.disabled||w(N)}function S(N,O){}function I(N,O){}function B(N,O){var V;const _=O??N.dataIndex,k={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":_===g.value,"fv-grid-sidebar-row-selected":h(N),"fv-grid-sidebar-row-odd":_%2>0,"fv-grid-sidebar-row-even":_%2===0,"d-flex":!0,"align-items-center":!0};if((V=t.rowOption)!=null&&V.customRowStyle){const W=t.rowOption.customRowStyle(N.raw)||{};return Object.assign({},k,W.class||{})}return k}return{activeRowById:u,clickRowItem:x,selectRow:T,changeRow:M,gridCellClass:C,gridHierarchyCellClass:F,gridRowClass:b,onClickRow:y,onClickRowExcludeDblclick:v,onMouseoverRow:S,sidebarRowClass:B,onMouseoutRow:I}}function si(t,e,n,i,o){const{idField:l}=n,{dataView:a,getSelectionItems:d}=e,c=r.ref(""),p=r.computed(()=>t.selection.enableSelectRow),f=r.ref(t.selection.multiSelect??!1),s=r.ref(t.selection.multiSelectMode||"DependOnCheck"),m=r.ref(t.selection.showCheckbox),g=r.computed(()=>{var $;return!!(($=t.selection)!=null&&$.showSelectAll)}),u=r.ref(t.selectionValues||[]),h=r.computed(()=>t.selection.showSelection),b=r.computed(()=>{var $;return(($=t.selection)==null?void 0:$.keepSelectingOnPaging)===void 0?!0:t.selection.keepSelectingOnPaging}),C=r.ref(!!u.value.length&&i.value.length===u.value.length),F=r.ref(!!u.value.length&&i.value.length!==u.value.length),M=r.computed(()=>p.value&&f.value),T=r.computed(()=>p.value&&!f.value&&!m.value),v=r.computed(()=>!!t.hierarchy),w=r.computed(()=>{const $=m.value&&s.value==="DependOnCheck";return M.value&&$}),y=r.computed(()=>M.value&&!m.value),x=r.computed(()=>M.value&&m.value&&s.value==="OnCheckAndClick");function S(){if(!b.value){const $=a.value.map(K=>K[l.value]);u.value=u.value.filter(K=>$.includes(K))}}function I(){const $=a.value.every(ee=>u.value.includes(ee[l.value])),K=a.value.every(ee=>!u.value.includes(ee[l.value]));$&&(C.value=!0,F.value=!1),K&&(C.value=!1,F.value=!1),!$&&!K&&(C.value=!1,F.value=!0)}function B(){return d(u.value)}function N(){const $=i.value.reduce((ee,ie)=>(ee.set(ie.raw[l.value],ie),ee),new Map);return u.value.map(ee=>$.get(ee)).filter(ee=>!!ee)}function O($){var ee;const K=$.raw.__fv_children_index__;if(K&&K.length){const ie=K.map(he=>a.value[he]);(ee=u.value)!=null&&ee.length&&ie.some(Oe=>!u.value.includes(Oe[l.value]))&&($.indeterminate=!0,$.raw.__fv_indeterminate__=!0)}}function _(){const $=d(u.value);o.emit("selectionUpdate",$,u.value)}function k($){o.emit("unSelectItem",$)}function V($){o.emit("selectItem",$)}function W(){const $=i.value.filter(ee=>ee.indeterminate).map(ee=>ee.raw[l.value]);i.value.forEach(ee=>{ee.checked=!1,ee.indeterminate=!1,ee.raw.__fv_checked__=!1,ee.raw.__fv_indeterminate__=!1}),N().forEach(ee=>{ee.checked=!0,ee.raw.__fv_checked__=!0}),$.forEach(ee=>{const ie=i.value.find(he=>he.raw[l.value]===ee);O(ie)})}r.watch(()=>i.value,()=>{W()}),r.watch(()=>t.selectionValues,$=>{u.value=$,W()},{immediate:!0}),r.watch(()=>t.selection,$=>{f.value=!!$.multiSelect,s.value=$.multiSelectMode||"DependOnCheck",m.value=!!$.showCheckbox});const P=r.computed(()=>!f.value);function H($){return $.raw[l.value]}function X($){return u.value.findIndex(ee=>ee===H($))}function J(){N().forEach(ee=>{ee.checked=!1}),d(u.value).forEach(ee=>{ee.__fv_checked__=!1}),u.value=[],I()}function oe($){const K=$;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ee=new Set(u.value);ee.add(K[l.value]),u.value=Array.from(ee.values()),S()}function Me($){const K=$;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,u.value=u.value.filter(ee=>ee!==K[l.value]),S()}function Ce($){const K=$.raw;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ee=new Set(u.value);ee.add(K[l.value]),u.value=Array.from(ee.values()),S(),$.checked=!0,$.indeterminate=!1,_(),V($)}function ve($){const K=$.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,u.value=u.value.filter(ee=>ee!==K[l.value]),S(),$.checked=!1,$.indeterminate=!1,_(),k($)}function L($){$.disabled||Ce($)}function R($){$.disabled||ve($)}function A($){$.__fv_checked__=!1,$.__fv_indeterminate__=!0,u.value=u.value.filter(K=>K!==$[l.value]),S()}function q($){const K=$.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!0,u.value=u.value.filter(ee=>ee!==K[l.value]),S(),$.checked=!1,$.indeterminate=!0}function U($){P.value&&J(),$.checked?ve($):Ce($)}function te($,K=!0){const ee=$.checked;P.value&&J(),K?$.checked?R($):L($):ee?R($):L($)}function re($){J(),L($)}function de($){const K=i.value.find(ee=>ee.raw[l.value]===$);if(K)re(K);else{const ee=a.value.find(ie=>ie[l.value]===$);ee&&oe(ee)}}function ce($){const K=i.value.filter(he=>$.includes(he.raw[l.value])),ee=K.map(he=>he.raw[l.value]),ie=a.value.filter(he=>{const Oe=he[l.value];return!ee.includes(Oe)&&$.includes(Oe)});K.length||ie.length,K.forEach(he=>{L(he)}),ie.forEach(he=>{oe(he)})}function pe($){for(const K of $){if(!u.value.includes(K))continue;const ee=i.value.find(ie=>ie.raw[l.value]===K);if(ee)R(ee);else{const ie=a.value.find(he=>he[l.value]===K);ie&&Me(ie)}}u.value=u.value.filter(K=>!$.includes(K)),S()}function me(){i.value.forEach($=>{const K=$.raw;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ee=new Set(u.value);ee.add(K[l.value]),u.value=Array.from(ee.values()),S(),$.checked=!0,$.indeterminate=!1})}function Ie(){i.value.forEach($=>{const K=$.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,u.value=u.value.filter(ee=>ee!==K[l.value]),S(),$.checked=!1,$.indeterminate=!1})}function Ge(){return i.value.find($=>$.raw[l.value]===c.value)}function ye(){c.value=""}function Ue($){if(Array.isArray($)){const K=new Set($);u.value=Array.from(K.values())}}function Ae($){Array.isArray($)&&(u.value=u.value.filter(K=>!$.includes(K)))}return{clearSelection:J,currentSelectedDataId:c,enableMultiSelect:f,enableSelectRow:p,findIndexInSelectedItems:X,getSelectedItems:B,getSelectionRow:Ge,indeterminate:q,indeterminateDataItem:A,isSelectingHirarchyItem:v,multiSelectMode:s,multiSelectOnClickRow:x,multiSelectOnClickRowWithShift:y,multiSelectOnlyOnCheck:w,select:L,selectAll:me,selectedValues:u,selectDataItem:oe,selectItem:re,selectItemById:de,selectItemByIds:ce,showCheckBox:m,showSelectAll:g,toggleSelectItem:te,toggleSelectItemWithoutRow:U,unSelect:R,unSelectAll:Ie,unSelectDataItem:Me,unSelectItemByIds:pe,updateSelectAllStatus:I,selectAllStatus:C,indeterminateStatus:F,isSingleSelect:T,showSelection:h,keepSelectingOnPaging:b,emitSelectionChanged:_,emptyCurrentRowId:ye,updateSelectedValues:Ue,removeSelectedValues:Ae}}function di(t,e){var h,b;const n=String(Date.now()),i=50,{showCheckBox:o}=e,l=r.ref(((h=t.rowNumber)==null?void 0:h.enable)??!1),a=r.computed(()=>{const C=t.hierarchy&&o.value&&t.selection.multiSelect&&t.checkboxPosition==="leading",F=!t.hierarchy&&o.value&&t.selection.multiSelect;return C||F}),d=r.ref(l.value?((b=t.rowNumber)==null?void 0:b.width)??36:0),c=r.ref(a.value?i:0),p=r.computed(()=>{var C,F;return l.value?((C=t.rowNumber)==null?void 0:C.heading)==="序号"?Re.LocaleService.getLocaleValue("datagrid.lineNumberTitle"):(F=t.rowNumber)==null?void 0:F.heading:""}),f=r.computed(()=>(a.value&&!t.hierarchy?Number(c.value):0)+(l.value?Number(d.value):0));r.watch(()=>t.rowNumber,C=>{C&&C.enable!==void 0&&(l.value=C.enable),C&&C.width!==void 0&&(d.value=C.width)});function s(C){var M;const F={top:`${C.top}px`,width:`${f.value}px`,height:`${C.height||""}px`};if((M=t.rowOption)!=null&&M.customRowStyle){const T=t.rowOption.customRowStyle(C.raw)||{};return Object.assign({},F,T.style||{})}return F}const m=r.computed(()=>({width:`${f.value}px`}));function g(C){return`${n}_${C.type}_r_${C.index}_${C.refreshKey||""}`}function u(C){return`${n}_${C.type}_r_${C.index}_${C.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:a,sidebarCellPosition:s,sidebarCornerCellStyle:m,sidebarTitle:p,sidebarWidth:f,rowKey:u,cellKey:g}}const ci={ascend:(t,e)=>t===e?0:t===!1?-1:1,decend:(t,e)=>t===e?0:t===!0?-1:1},ui={ascend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return n===i?0:n<i?-1:1},decend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return n===i?0:n<i?1:-1}},fi={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1},mi={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1};function pi(t){const e=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"]]),n=new Map([["boolean-sorter",ci],["datetime-sorter",ui],["numeric-sorter",fi],["text-sorter",mi]]);function i(a){const d=(a==null?void 0:a.dataType)||"string",c=e.get(d)||"text-sorter";return n.get(c)||(a==null?void 0:a.sorter)}function o(a){return i(a.column)}function l(a,d){const c=o(a),p=(a.status&Be.sortable)===Be.sortable&&(a.status&Be.sorted)===Be.sorted,f=(a.status&Be.ascending)===Be.ascending,s=(a.status&Be.descending)===Be.descending;if(p&&c){const m=f?c.ascend:s?c.decend:void 0;m?d.addSorter(a.field,{field:a.field,compare:m}):d.removeSorter(a.field)}else d.removeSorter(a.field)}return{getSorterByColumn:i,updateSorter:l}}function At(t,e,n,i,o="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:d}=n,{gridHeaderColumnsStyle:c,leftFixedGridHeaderColumnsStyle:p,rightFixedGridHeaderColumnsStyle:f}=i,s=l.value.defaultColumnWidth,m=32,g=new Map([[0,0]]);function u(I,B){const N=g.get(B)||0,O={height:`${I.depth*m}px`,left:`${I.left}px`,top:`${(I.layer-1)*m}px`,width:`${I.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(O["line-height"]=`${I.depth*m}px`),g.set(B+1,N+(I.actualWidth||s)),O}const h=r.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),b=r.computed(()=>({height:`${l.value.headerDepth*m}px`})),C=function(I){return e.showSetting&&!!I.showSetting};function F(){return r.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[r.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function M(I,B,N,O){var _;(_=t==null?void 0:t.setupContext)==null||_.emit("selectionChange",I,B,N,O)}function T(I){var N,O;return"w-100 d-flex align-items-center justify-content-"+(((N=I.column)==null?void 0:N.halign)==="center"?"center":((O=I.column)==null?void 0:O.halign)==="right"?"end pr-2":"start pl-2")}function v(I,B,N){var _;const O=r.ref(I.column);return r.createVNode("div",{class:"fv-grid-header-cell",style:u(I,N)},[r.createVNode(z.FDesignerItem,{modelValue:O.value,"onUpdate:modelValue":k=>O.value=k,customClass:T(I),canAdd:!1,canDelete:!1,canMove:!1,key:(_=O.value)==null?void 0:_.id,type:o,componentId:e.componentId,onSelectionChange:M},null),C(I)&&F(),I.resizable&&r.createVNode("span",{class:"fv-column-resize-bar"},null)])}function w(I){return I.map((B,N)=>{const O=[];if(O.push(v(B,I,N)),B.children&&B.children.length){const _=w(B.children);O.push(..._)}return O})}function y(){return r.createVNode("div",{class:"fv-grid-header-left-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:p.value},[w(l.value.leftHeaderColumns)])])}function x(){return r.createVNode("div",{class:"fv-grid-header-right-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[w(l.value.rightHeaderColumns)])])}function S(){return r.createVNode("div",{class:h.value,style:b.value},[a.value&&y(),r.createVNode("div",{class:"fv-grid-header-primary"},[r.createVNode("div",{class:"fv-grid-header-columns",style:c.value},[w(l.value.primaryHeaderColumns)])]),d.value&&x()])}return{renderGridHeader:S}}const st={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"drawer-toolbar-item":{type:"drawer-toolbar-item",name:"抽屉工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},"drawer-toolbar":{type:"drawer-toolbar",name:"抽屉工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"},image:{type:"image",name:"图像"},"discussion-editor":{type:"discussion-editor",name:"评论编辑区"},"discussion-list":{type:"discussion-list",name:"评论列表"},comment:{type:"comment",name:"评论区"},"rich-text-editor":{type:"rich-text-editor",name:"富文本",icon:"rich-text-box"},calendar:{type:"calendar",name:"日历",icon:"date-picker"}};class hi extends $e.BaseControlProperty{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=qe.useCommandOption(this).getCommandColumnProperties(e),this.propertyConfig.categories.column=qe.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=qe.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=qe.useSummary().getSummaryProperties(e),this.propertyConfig.categories.group=qe.useGroup().getGroupProperties(e),this.propertyConfig.categories.sort=qe.useSort().getSort(e),this.propertyConfig.categories.filter=qe.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,d,c;const n=(c=(d=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:d.entity[0])==null?void 0:c.entities[0],i=this.assembleSchemaEntityToTree(n,0),o=this,l=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...l.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:!0}},setPropertyRelates(p,f){switch(p&&p.propertyID){case"dataSource":{const s=o.formSchemaUtils.getViewModelById(o.viewModelId);if(s){const m=i.find(g=>g.label===p.propertyValue);s.bindTo=m.bindTo}o.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,n,i,o="",l=[]){const a=o?`${o}/${e.label}`:"/";return l.push({id:e.id,name:e.name,label:e.label,layer:n,parent:i&&i.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(d=>this.assembleSchemaEntityToTree(d,n+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=qe.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=qe.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=qe.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=qe.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const n=[...qe.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"单元格结束编辑事件"},{label:"beforeEditCell",name:"单元格编辑前事件"}],i=this,o=i.eventsEditorUtils.formProperties(e,i.viewModelId,n),l=i.createBaseEventProperty(o);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,d){const c=a.propertyValue;delete e[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(e,i.viewModelId,c.events,c)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand,e.command.onHandleAction=e.onHandleAction)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function gi(t,e){const n=t.schema,i=r.ref(!0),o=r.ref(!0);function l(s){return s&&s.sourceType==="control"?s.componentCategory==="input":!1}function a(){return!1}function d(){return!1}function c(){return!0}function p(s){return new hi(s,e).getPropertyConfig(n)}function f(){var s,m,g,u;if(t&&e){const h=(s=t==null?void 0:t.componentInstance)==null?void 0:s.value.belongedComponentId;let b="",C="";const{formSchemaUtils:F}=e;if(h){const T=F.getRootViewModelId(),v=F.getComponentByViewModelId(T),w=F.selectNode(v,y=>y.contents&&y.contents.find(x=>x.component===h));(w==null?void 0:w.type)===((m=st["tab-page"])==null?void 0:m.type)&&((g=w==null?void 0:w.contents)!=null&&g.length)&&(b=w.title||""),(w==null?void 0:w.type)===((u=st.section)==null?void 0:u.type)&&(w==null?void 0:w.showHeader)!==!1&&(b=w.mainTitle||""),b=b?`${b} > `:"",C=b?w.id:""}const M=st["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(t.schema.id,{componentTitle:M,parentPathName:`${b}${M}`,reliedComponentId:C})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:d,hideNestedPaddingInDesginerView:c,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:p,setComponentBasicInfoMap:f}}const Ke=r.defineComponent({name:"FDataGridDesign",props:wn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(t,e){var Ae;const n=r.ref(!1),i=r.ref(t.rowOption.rowHeight||28),o=r.ref(),l=r.inject("designer-host-service"),a=r.inject("design-item-context"),d=gi(a,l),c=z.useDesignerComponent(o,a,d);c.value.styles="display:flex;flex:1;",r.onMounted(()=>{o.value.componentInstance=c}),r.provide("data-grid-context",{dataGridProps:t}),e.expose(c.value);const p=r.ref(t.columns),f=20,s=li(t),m=0,g=r.ref(),u=r.ref(),h=r.ref(t.showStripe),b=r.ref([]),C=r.ref(!1),F=r.ref(((Ae=t.rowOption)==null?void 0:Ae.wrapContent)||!1),M=qn(t,e),T=Gn(t),v=jn(t,new Map,M,T,s),w=si(t,v,s,b,e),y=r.computed(()=>v.totalItems.value<f?v.totalItems.value:f),{containerStyleObject:x}=In(t),S=Pn(t),{applyCommands:I}=S;I(p);const B=Mn(t),N=pi(),{applyColumnSorter:O,columnContext:_,updateColumnRenderContext:k}=B;O(v,N);const V=Nn(t,_),W=ai(t,e,w,s),P=ri(t,e,s,W),H=Dn(t,v,i),X=ti(t,P,H),J=ni(t,v,P,T,s,H,X,i),oe=ii(t,s,X,J),Me=oi(t,s,X,J),Ce=Fn(t,p,v,y,m,J,oe,Me),{getVisualData:ve}=Ce,L=di(t,w),{sidebarWidth:R}=L;b.value=ve(0,y.value+m-1);const A=Un(t,v,b,_,Ce,y,m,R,i,n),{onWheel:q,dataGridWidth:U,viewPortHeight:te,viewPortWidth:re}=A,de=Sn(t,_,g,re,V),{calculateColumnsSize:ce}=de,pe=r.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":h.value})),me=r.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":C.value,"fv-grid-wrap-content":F.value})),{renderGridHeader:Ie}=At(a,t,B,A),{renderHorizontalScrollbar:Ge}=Vn(t,g,A);function ye(){var $,K;te.value=(($=u.value)==null?void 0:$.clientHeight)||0,U.value=((K=g.value)==null?void 0:K.clientWidth)||0,ce()}r.onMounted(()=>{g.value&&(pn.useResizeObserver(g.value,ye),ce(),r.nextTick(()=>{g.value&&(U.value=g.value.clientWidth),u.value&&(re.value=u.value.clientWidth,te.value=u.value.clientHeight)}))});function Ue($){$&&(p.value=$,I(p),k(p.value),O(v,N),ce())}return r.watch(()=>t.columns,$=>{Ue($),z.canvasChanged.value++}),r.watch(re,()=>{g.value&&ce()}),()=>r.createVNode("div",{ref:o,class:pe.value,style:x.value,onWheel:q},[Ie(),r.createVNode("div",{ref:g,class:me.value,onMouseover:()=>{C.value=!0},onMouseleave:()=>{C.value=!1}},[Ge()])])}}),yi={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClosePopup:{type:Function,default:null}},vi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},bi=r.defineComponent({name:"FOverlay",props:vi,emits:["click"],setup(t,e){const n=r.ref(t.popupContentPosition),i=r.ref(t.host),o=r.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function l(d){e.emit("click"),d.preventDefault(),d.stopPropagation()}r.computed(()=>{const d=i.value;if(d){const c=d.getBoundingClientRect(),{left:p,top:f,height:s}=c;return{left:p,top:f+s}}return n.value});const a=r.computed(()=>({}));return()=>r.createVNode(r.Teleport,{to:"body"},{default:()=>{var d,c;return[r.createVNode("div",{class:"overlay-container",onClick:p=>l(p),style:o.value},[r.createVNode("div",{style:a.value},[(c=(d=e.slots).default)==null?void 0:c.call(d)])])]}})}});function Ci(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function wi(t){const e=document.createElement("div");e.style.display="contents";let n;const i=t.onClickCallback||(()=>{}),o=()=>{i(),n&&n.unmount()};return n=r.createApp({setup(){r.onUnmounted(()=>{document.body.removeChild(e)});const l=Ci(t);return()=>r.createVNode(bi,{"popup-content-position":t.popupPosition,host:t.host,onClick:o,backgroundColor:t.backgroundColor},{default:()=>[l&&l()]})}}),document.body.appendChild(e),n.mount(e),n}class Si{static show(e){return wi(e)}}const xi={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"},isMessager:{type:Boolean,default:!1}};class Ee{constructor(e,n){this.x=e,this.y=n}static getTransformInfo(e){const i=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const o=parseInt(i[4],10),l=parseInt(i[5],10);return{x:o,y:l}}return{x:0,y:0}}static fromEvent(e,n=null){if(this.isMouseEvent(e))return new Ee(e.clientX,e.clientY);if(n===null||e.changedTouches.length===1)return new Ee(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let i=0;i<e.changedTouches.length;i++)if(e.changedTouches[i].target===n)return new Ee(e.changedTouches[i].clientX,e.changedTouches[i].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const n=new Ee(0,0);if(window){const i=window.getComputedStyle(e);if(i){const o=parseInt(i.getPropertyValue("left"),10),l=parseInt(i.getPropertyValue("top"),10);n.x=isNaN(o)?0:o,n.y=isNaN(l)?0:l}return n}return null}static copy(e){return new Ee(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class it{constructor(e,n){this.width=e,this.height=n}static getCurrent(e){const n=new it(0,0);if(window){const i=window.getComputedStyle(e);return i&&(n.width=parseInt(i.getPropertyValue("width"),10),n.height=parseInt(i.getPropertyValue("height"),10)),n}return null}static copy(e){return new it(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Mi(t,e){const n=r.ref(),i=r.ref(),o=r.ref(),l=r.ref(),a=r.ref(),d=r.ref(),c=r.ref(),p=r.ref(),f=r.ref(),s=r.ref(),m=r.ref(),g=r.ref(t.resizeable),u=r.ref(),h=r.ref(t.draggable),b=r.ref(!1);function C(){const P=i.value||document.body,H=window.getComputedStyle(P);if(!H||!n.value)return;const X=Ee.getTransformInfo(n.value),J={};c.value&&(J.deltaL=n.value.offsetLeft-c.value.x,J.deltaT=n.value.offsetTop-c.value.y);const oe=H.getPropertyValue("position");J.width=P.clientWidth,J.height=P.clientHeight,J.pr=parseInt(H.getPropertyValue("padding-right"),10),J.pb=parseInt(H.getPropertyValue("padding-bottom"),10),J.position=H.getPropertyValue("position"),oe==="static"&&(P.style.position="relative"),J.translateX=X.x,J.translateY=X.y,s.value=J}function F(P){if(n.value){l.value=it.getCurrent(n.value),a.value=Ee.getCurrent(n.value),d.value=l.value?it.copy(l.value):null,c.value=a.value?Ee.copy(a.value):null,C();const H=P.target.getAttribute("type")||"";p.value={n:!!H.match(/n/),s:!!H.match(/s/),w:!!H.match(/w/),e:!!H.match(/e/)}}}function M(){var P,H,X,J;if(n.value){const oe=n.value;p.value&&((p.value.n||p.value.s)&&((P=d.value)!=null&&P.height)&&(oe.style.height=d.value.height+"px"),(p.value.w||p.value.e)&&((H=d.value)!=null&&H.width)&&(oe.style.width=d.value.width+"px"),c.value&&((X=c.value)!=null&&X.x&&(oe.style.left=c.value.x+"px"),(J=c.value)!=null&&J.y&&(oe.style.top=c.value.y+"px")))}}function T(){const P=t.minHeight?t.minHeight:1,H=t.minWidth?t.minWidth:1;d.value&&c.value&&p.value&&l.value&&(d.value.height<P&&(d.value.height=P,p.value.n&&a.value&&(c.value.y=a.value.y+(l.value.height-P))),d.value.width<H&&(d.value.width=H,p.value.w&&a.value&&(c.value.x=a.value.x+(l.value.width-H))),t.maxHeight&&d.value.height>t.maxHeight&&(d.value.height=t.maxHeight,a.value&&p.value.n&&(c.value.y=a.value.y+(l.value.height-t.maxHeight))),t.maxWidth&&d.value.width>t.maxWidth&&(d.value.width=t.maxWidth,p.value.w&&a.value&&(c.value.x=a.value.x+(l.value.width-t.maxWidth))))}function v(){if(i.value){const P=s.value;if(c.value&&d.value&&p.value&&l.value){const H=P.width-P.pr-P.deltaL-P.translateX-c.value.x,X=P.height-P.pb-P.deltaT-P.translateY-c.value.y;p.value.n&&c.value.y+P.translateY<0&&a.value&&(c.value.y=-P.translateY,d.value.height=l.value.height+a.value.y+P.translateY),p.value.w&&c.value.x+P.translateX<0&&a.value&&(c.value.x=-P.translateX,d.value.width=l.value.width+a.value.x+P.translateX),d.value.width>H&&(d.value.width=H),d.value.height>X&&(d.value.height=X)}}}function w(P){if(!o.value||!l.value||!a.value||!p.value)return;P.subtract(o.value);const H=P.x,X=P.y;p.value.n?(c.value.y=a.value.y+X,d.value.height=l.value.height-X):p.value.s&&(d.value.height=l.value.height+X),p.value.e?d.value.width=l.value.width+H:p.value.w&&(d.value.width=l.value.width-H,c.value.x=a.value.x+H),v(),T(),M()}function y(P){if(!f.value)return;const H=Ee.fromEvent(P);H&&w(H)}function x(){if(n.value){const{width:P,height:H,x:X,y:J}=n.value.getBoundingClientRect(),oe=Ee.getTransformInfo(n.value);return{size:{width:P,height:H},position:{x:X-oe.x,y:J-oe.y}}}return null}function S(P){if(n.value){const H=x();m.value=H}o.value=void 0,l.value=null,a.value=null,d.value=null,c.value=null,p.value=null,f.value=null,document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",S)}function I(){document.addEventListener("mousemove",y),document.addEventListener("mouseup",S)}function B(P){P instanceof MouseEvent&&P.button===2||h.value&&(document.body.click(),P.stopPropagation(),P.preventDefault(),o.value=Ee.fromEvent(P),f.value=P.target,F(P),I())}function N(P){return n.value=P,g.value&&r.createVNode(r.Fragment,null,[r.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:H=>B(H)},null)])}function O(P=!0){document.body.click();const H=i.value||document.body,X=it.getCurrent(H),J=n.value;P&&J&&(u.value=x(),u.value.transform=J.style.transform),X&&J&&(d.value=X,d.value.height-=14,d.value.width-=14,J.style.height=d.value.height+"px",J.style.width=d.value.width+"px",J.style.left="7px",J.style.top="7px",J.style.transform="",m.value={size:d.value,position:{x:0,y:0}},h.value=!1,b.value=!0)}function _(){var P,H;if(document.body.click(),u.value){const X={width:u.value.size.width||0,height:u.value.size.height||0},J={x:(window.innerWidth-X.width)/2,y:(window.innerHeight-X.height)/2};(P=d.value)==null||P.set(X),(H=c.value)==null||H.set(J);const oe=n.value;oe.style.height=X.height+"px",oe.style.width=X.width+"px",oe.style.left=`${J.x}px`,oe.style.top=`${J.y}px`,oe.style.transform="",m.value={size:X,position:J},h.value=t.draggable,b.value=!1}}function k(){if(n.value){const P=it.getCurrent(n.value);if(P){const{width:H,height:X}=P;n.value.style.left=`${(window.innerWidth-H)/2}px`,n.value.style.top=`${(window.innerHeight-X)/2}px`,n.value.style.transform=""}}}function V(){const P=()=>{b.value?O(!1):k(),document.body.click()};return window.addEventListener("resize",P),()=>{window.removeEventListener("resize",P)}}const W=V();return{renderResizeBar:N,boundingElement:i,resizedEventParam:m,maximize:O,restore:_,allowDrag:h,isMaximized:b,unWindowResizeHandle:W,moveToCenter:k}}function Fi(t,e,n){const i=r.ref(),o=r.ref(t.draggable),l=r.ref(t.lockAxis),a=r.ref(),d=r.ref(),c=r.ref(!1),p=r.ref(new Ee(0,0)),f=r.ref(new Ee(0,0)),s=r.ref(new Ee(0,0)),m=r.ref(new Ee(0,0));r.watch(()=>n.value,y=>{a.value.style.cursor=y?"move":"default"});function g(y,x){if(x.tagName==="BUTTON")return!1;if(x===y)return!0;for(const S in x.children)if(Object.prototype.hasOwnProperty.call(x.children,S)&&g(y,x.children[S]))return!0;return!1}function u(){var I,B;let y=s.value.x+f.value.x,x=s.value.y+f.value.y;l.value==="x"?(y=((I=p.value)==null?void 0:I.x)||0,s.value.x=0):l.value==="y"&&(x=((B=p.value)==null?void 0:B.y)||0,s.value.y=0);const S=`translate3d(${Math.round(y)}px, ${Math.round(x)}px, 0px)`;i.value&&(i.value.style.transform=S),m.value.x=y,m.value.y=x}function h(){if(!d.value||!i.value)return null;const y=d.value.getBoundingClientRect(),x=i.value.getBoundingClientRect(),S={top:y.top<x.top,right:y.right>x.right,bottom:y.bottom>x.bottom,left:y.left<x.left};return S.top||(s.value.y-=x.top-y.top),S.bottom||(s.value.y-=x.bottom-y.bottom),S.right||(s.value.x-=x.right-y.right),S.left||(s.value.x-=x.left-y.left),u(),S}function b(y){y&&(p.value&&y.subtract(p.value),s.value.set(y),u(),h())}function C(y){c.value&&o.value&&(y.stopPropagation(),y.preventDefault(),b(Ee.fromEvent(y,a.value)))}function F(){var y;c.value&&(c.value=!1,f.value.add(s.value),s.value.reset(),(y=i.value)==null||y.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",F))}function M(){!c.value&&a.value&&(c.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",C),document.addEventListener("mouseup",F))}function T(){if(i.value){const y=Ee.getTransformInfo(i.value);f.value.set(y);return}f.value.reset()}function v(y){if(!n.value||y instanceof MouseEvent&&y.button===2)return;const x=y.target||y.srcElement;a.value!==void 0&&x&&!g(x,a.value)||o.value!==!1&&(document.body.click(),y.stopPropagation(),y.preventDefault(),p.value=Ee.fromEvent(y,i.value),T(),M())}function w(y,x,S){if(o.value&&x){if(y)a.value=y;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)a.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const I=x.querySelector(t.dragHandle);I&&(a.value=I)}}i.value=x,d.value=S,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",v)):o.value=!1}}return{registerDraggle:w,resetTranslate:T}}function Ht(t,e){if(t){const n=i=>{i.key.toLowerCase()===t.toLowerCase()&&e({event:i,key:t})};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}}function Ti(t,e){const n=r.ref(t.enableEsc);let i=null;return n.value?(i=Ht("Escape",o=>{e.emit("esc",{event:o.event,type:"esc"})}),{remove:i}):null}function _i(t,e){const n=r.ref(t.enableEnter);let i=null;return n.value?(i=Ht("Enter",o=>{e.emit("enter",{event:o.event,type:"enter"})}),{remove:i}):null}const dt=r.defineComponent({name:"FModal",props:xi,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(t,e){const n=r.ref(t.width||300),i=r.ref(t.height||200),o=r.ref(t.modelValue),l=r.ref(""),a=r.ref(t.class),d=r.ref(t.fitContent),c=r.ref(t.showHeader),p=r.ref(""),f=r.ref(t.showCloseButton),s=r.ref(t.showMaxButton),m=r.ref(!1),g=r.ref(t.dialogType),u=r.ref(t.src),h=r.ref(""),b=r.ref(t.showButtons),C=r.ref(t.title),F=r.ref(t.containment||null),M=r.ref();C.value==="错误提示"&&(C.value=Re.LocaleService.getLocaleValue("messageBox.errorTitle"));const T=r.ref(!1);function v(D,le){const _e=le?"accept":"cancel";Promise.resolve().then(()=>{var Ve;return(Ve=t.beforeClose)==null?void 0:Ve.call(t,{closeType:_e})}).then(Ve=>{Ve&&(o.value=!1,e.emit("update:modelValue",!1),le!=null&&e.emit(le?"accept":"cancel"),e.emit("closed",D))})}const w=[{name:"cancel",text:Re.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:D=>{v(D,!1)}},{name:"accept",text:Re.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:D=>{v(D,!0)}}],y=r.ref(t.buttons&&t.buttons.length?t.buttons:w),x=r.computed(()=>!!p.value),S=r.computed(()=>!!b.value&&!!y.value),I=r.ref(),B=r.ref(),N=r.ref(!1),{renderResizeBar:O,maximize:_,restore:k,boundingElement:V,resizedEventParam:W,allowDrag:P,unWindowResizeHandle:H,moveToCenter:X}=Mi(t),{registerDraggle:J}=Fi(t,e,P);function oe(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function Me(){const D=document.querySelectorAll(".farris-modal").length;(!D||D-1<=0)&&document.body.classList.remove("modal-open"),M.value&&M.value.classList.remove("show")}r.watch(()=>t.title,(D,le)=>{D!==le&&(C.value=D)}),r.watch(()=>t.modelValue,(D,le)=>{D!==le&&(o.value=D,o.value&&t.draggable&&r.nextTick(()=>{B.value&&!F.value&&(F.value=B.value.parentElement,V.value=F.value,J(I.value,B.value,V.value),X())}),D||(F.value&&(F.value=null),Me())),o.value?T.value=oe():(N.value=!1,P.value=t.draggable)}),r.watch(()=>t.showHeader,(D,le)=>{D!==le&&(c.value=D)}),r.watch(()=>t.showButtons,(D,le)=>{D!==le&&(b.value=D)}),r.watch(()=>W.value,(D,le)=>{const _e=D||{},Ve=le||{};JSON.stringify(_e)!==JSON.stringify(Ve)&&e.emit("resize",{newSize:D,oldSize:le,isMaximized:N.value})}),r.watch([()=>t.width,()=>t.height],(D,le)=>{(D[0]!==le[0]||D[1]!==le[1])&&(n.value=D[0]||500,i.value=D[1]||600)}),r.watch(()=>t.class,(D,le)=>{a.value=D});const Ce=r.computed(()=>(o.value&&document.body.classList.add("modal-open"),o.value)),ve=r.computed(()=>{var _e;const D={modal:!0,"farris-modal":!0,fade:!0};D["f-modal-fitContent"]=!!d.value,D.show=!!Ce.value;const le=(_e=t.maskClass)==null?void 0:_e.split(" ");return le==null||le.reduce((Ve,xe)=>(Ve[xe]=!0,Ve),D),D}),L=r.computed(()=>{var _e;const D={"modal-dialog":!0},le=(_e=a.value)==null?void 0:_e.split(" ");return le==null||le.reduce((Ve,xe)=>(Ve[xe]=!0,Ve),D),D}),R=()=>Z.isMobilePhone()&&!t.isMessager,A=r.computed(()=>{const D=document.documentElement.clientWidth,le=document.documentElement.clientHeight,_e=Math.min(n.value,D),Ve=d.value?"auto":`${Math.min(i.value,le-10)}px`,xe={position:"absolute",top:`${(window.innerHeight-parseInt(Ve==="auto"?"0":Ve))/2}px`,left:`${(window.innerWidth-_e)/2}px`,width:`${_e}px`,height:Ve};return R()&&(xe.top="0px",xe.left="0px",xe.width=`${window.innerWidth}px`,xe.height=`${window.innerHeight}px`),t.mask||(xe.pointerEvents="auto"),xe}),q=r.ref(Z.getMaxZIndex()||1050),U=r.computed(()=>{const D={display:"block",overflow:"hidden"};return t.mask||(D.pointerEvents="none",D.backgroundColor="transparent"),T.value&&(D.backgroundColor="transparent"),D.zIndex=q.value,D}),te=r.computed(()=>({"modal-content":!0,"modal-content-has-header":c.value,"is-mobile":R()})),re=r.computed(()=>{const D={display:c.value?"":"none"};return D["pointer-events"]=P.value?"auto":"none",D}),de=r.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:N.value})),ce=r.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe","f-utils-fill":!0}));function pe(){return{height:`${t.footerHeight||60}px`}}const me=r.computed(()=>{const D={textAlgin:h.value},le=pe();return Object.assign(D,le)});function Ie(D){if(D==null||D.stopPropagation(),N.value){N.value=!1,k();return}_(),N.value=!0}async function Ge(D,le){D.handle&&await D.handle(le,D)&&e.emit("closed",le)}function ye(D){D.width&&(n.value=D.width),D.height&&(i.value=D.height),D.buttons&&(y.value=D.buttons),D.title&&(C.value=D.title)}let Ue=null,Ae=null;r.onBeforeMount(()=>{T.value=oe()}),r.onMounted(()=>{B.value&&!F.value&&(F.value=B.value.parentElement,V.value=F.value,J(I.value,B.value,V.value)),Ce.value&&document.body.classList.add("modal-open"),Ue=Ti(t,e),Ae=_i(t,e)}),r.onUnmounted(()=>{H&&H(),Ue&&Ue.remove(),Ae&&Ae.remove()}),e.expose({modalElementRef:B,updateModalOptions:ye,close:v,maxDialog:Ie,isMaximized:N});function $(){return r.createVNode("ul",null,[m.value&&r.createVNode("li",{class:"f-btn-icon f-bare"},[r.createVNode("span",{class:"f-icon modal_minimize"},null)]),s.value&&r.createVNode("li",{onClick:Ie,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[r.createVNode("span",{class:de.value},null)]),f.value&&r.createVNode("li",{class:"f-btn-icon f-bare",onClick:D=>v(D,!1),style:"pointer-events: auto;"},[r.createVNode("span",{class:"f-icon modal_close"},null)])])}function K(){return r.createVNode("div",{class:"modal-footer",style:me.value},[y.value&&y.value.map(D=>{const le=r.ref(D.disabled);return r.createVNode("button",{name:D.name,type:"button",disabled:le.value,class:D.class+(D.iconClass?" btn-icontext":""),onClick:_e=>{Ge(D,_e)}},[!!D.iconClass&&r.createVNode("i",{class:D.iconClass},null),D.text])})])}function ee(){return r.createVNode("div",{ref:I,class:"modal-header",style:re.value},[e.slots.headerTemplate?e.slots.headerTemplate():r.createVNode("div",{class:"modal-title"},[x.value&&r.createVNode("span",{class:p.value,style:"margin-right: 8px"},null),r.createVNode("span",{class:"modal-title-label"},[C.value])]),r.createVNode("div",{class:"actions"},[$()])])}function ie(){return e.slots.footerTemplate?e.slots.footerTemplate():S.value&&K()}function he(D){if(D.stopPropagation(),t.allowClickMaskToClose){if(D.target!==M.value)return;v(D,!1)}}function Oe(){var D,le;return r.createVNode("div",{id:l.value,class:L.value,style:A.value,ref:B},[r.createVNode("div",{class:te.value},[c.value&&ee(),r.createVNode("div",{class:ce.value},[(le=(D=e.slots).default)==null?void 0:le.call(D),g.value==="iframe"&&r.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:u.value},null)]),ie()]),!d.value&&B.value&&!N.value&&O(B.value)])}function Ze(D){return D||"body"}return r.watchEffect(()=>{Ce.value&&(q.value=Z.getMaxZIndex()||1050)}),()=>r.createVNode(r.Teleport,{to:Ze(t.host)},{default:()=>[Ce.value&&r.createVNode(r.Transition,{name:"fade",appear:!0},{default:()=>[r.createVNode("div",{ref:M,class:ve.value,style:U.value,onClick:he},[Oe()])]})]})}});function Lt(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function ki(t){const e=document.createElement("div");e.style.display="contents";const n=r.createApp({setup(i,o){r.onUnmounted(()=>{document.body.removeChild(e)});const l=r.ref(),a=r.ref(t.class||""),d=r.ref(!!t.showButtons),c=r.ref(!!t.showHeader),p=r.ref(t.showCloseButton==null?!0:t.showCloseButton),f=r.ref(!0),s=r.ref(t.title||""),m=t.acceptCallback||(()=>{}),g=t.rejectCallback||(()=>{}),u=t.closedCallback||(M=>{}),h=t.resizeHandle||(M=>{}),b=t.stopMoveHandle||(M=>{}),C=Lt(t),F=M=>{f.value=!1,n.unmount(),u(M)};return r.onMounted(()=>{}),o.expose({modalRef:l}),()=>r.createVNode(dt,{ref:l,class:a.value,modelValue:f.value,"onUpdate:modelValue":M=>f.value=M,title:s.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":c.value,"show-buttons":d.value,"show-close-button":p.value,"show-max-button":!1,onAccept:m,onCancel:g,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:F,onResize:h,onStopMove:b},{default:()=>[C&&C(n)]})}});return document.body.appendChild(e),n.use(Re.LocaleService.i18n),n.mount(e),n}class Vi{constructor(e){ne(this,"appContext",null);ne(this,"modalRef",r.ref());ne(this,"activeModalIndex",r.ref(0));ne(this,"modalRefs",{});ne(this,"isUseEscCloseModal",r.ref(!1));ne(this,"activeModalInstance",r.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,n){const{width:i,height:o}={width:window.innerWidth,height:window.innerHeight};return i<e&&(e=i-14),o<n&&(n=o-14),{width:e,height:n}}static show(e){const n=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return ki(n)}close(e){var n,i;e?(i=e.value)==null||i.close():(n=this.getCurrentModal())==null||n.close()}open(e){const n=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const i=r.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),o=r.ref(!0),l=i.value.acceptCallback||(()=>{}),a=i.value.rejectCallback||(()=>{}),d=i.value.closedCallback||((v,w)=>{}),c=i.value.resizeHandle||(v=>{}),p=e.stopMoveHandle||(v=>{});let f;const s=Lt(i.value),m=v=>{var y;o.value=!1;const w=(y=v==null?void 0:v.target)==null?void 0:y.classList.contains("modal_close");d(v,this.isUseEscCloseModal.value?"esc":w?"icon":"button")},g=v=>{m(v),f&&r.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],r.render(null,n),f=null,this.modalRef.value=null,this.modalRefs){const w=Object.keys(this.modalRefs).map(y=>Number(y));w.length>0?this.activeModalIndex.value=Math.max(...w):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},u=v=>{var w;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((w=this.activeModalInstance.value)==null||w.close(v==null?void 0:v.event))},{width:h,height:b}=i.value,C=this.adaptToWindow(h||500,b||320);Object.assign(i.value,C);const F=()=>r.createVNode(dt,r.mergeProps({ref:this.modalRef,modelValue:o.value,"onUpdate:modelValue":v=>o.value=v},i.value,{isMessager:i.value.class&&i.value.class.indexOf("modal-message")>-1,onAccept:l,onCancel:a,onClosed:g,onResize:c,onEsc:u,onStopMove:p}),{default:()=>[s&&s(this.app)]});return f=(v=>{const w=r.h(F,v);return w.appContext=this.appContext,r.render(w,n),w})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:v=>{i.value={...i.value,...v},f&&r.render(r.cloneVNode(f,{...i}),n)},destroy:g,modalRef:this.activeModalInstance,close:()=>this.close()}}}const $t=Symbol("FModalService");dt.install=t=>{t.component(dt.name,dt);const e=new Vi(t);t.provide($t,e),t.provide("FModalService",e)};function Wt(t,e){function n(){const i=t.beforeOpen||t.beforeClickButton||null;let o=Promise.resolve(!0);if(i){const l=i(e.value);if(typeof l>"u")return o;typeof l=="boolean"?o=Promise.resolve(l):o=l}return o}return{judgeCanOpen:n}}function Ei(t,e,n,i,o){const l=r.ref(t.buttonBehavior),a=r.ref(t.popupOnInput),d=r.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:c}=Wt(t,o),p=r.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),f=r.inject($t,null),s=r.ref();async function m(h){if(await c()&&p.value){const b=!!e.slots.default;if(l.value==="Modal"){const C=t.modalOptions,F=f==null?void 0:f.open({...C,render:()=>e.slots.default&&e.slots.default()});s.value=F==null?void 0:F.modalRef}l.value==="Overlay"&&Si.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),b&&l.value==="Popup"&&i.togglePopup(!0),b&&a.value&&i.hidePopup(),e.emit("clickButton",{origin:h,value:t.modelValue})}}function g(h){e.emit("mouseEnterIcon",h)}function u(h){e.emit("mouseLeaveIcon",h)}return{buttonGroupClass:d,onClickButton:m,onMouseEnterButton:g,onMouseLeaveButton:u,modalRef:s}}function Ii(t,e,n,i,o,l){const a=r.ref(!1),d=r.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:c,hasClearClass:p}=l;function f(u){a.value=u,p.value=u}r.watch(o,()=>{f(!!o.value)});function s(u){const h=!t.readonly&&!t.disable&&t.editable,b=!t.editable;u.stopPropagation(),(h||b)&&(c(""),o.value="",f(!a.value),e.emit("clear"))}function m(u){if(d.value){if(!n.value){f(!1);return}!t.disable&&!t.readonly&&f(!0)}}function g(u){d.value&&f(!1)}return{enableClearButton:d,showClearButton:a,onClearValue:s,onMouseEnterTextBox:m,onMouseLeaveTextBox:g}}function Pi(t,e,n,i,o){const l=r.computed(()=>t.popupOnInput),a=r.computed(()=>t.popupOnFocus),{shouldPopupContent:d,closeAllPopover:c}=o,p=r.ref(!1),f=r.computed(()=>t.enableTitle?n.value:""),s=r.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),m=r.computed(()=>t.readonly||!t.editable),g=r.ref(!1),u=r.computed(()=>!t.disable&&g.value),h=r.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),b=r.computed(()=>({"input-group":!0,"f-state-disabled":t.disable,"f-state-editable":t.editable&&!t.disable&&!t.readonly,"f-state-readonly":t.readonly,"f-state-focus":u.value,"input-group--has-clear":t.enableClear&&p.value}));function C(B,N=!0){n.value=B,N&&(e.emit("change",B),e.emit("update:modelValue",B))}function F(B){d.value=!1,C(B,!0)}r.watch(()=>t.modelValue,B=>{n.value=B});function M(B){g.value=!1,e.emit("blur",B),B.stopPropagation()}function T(B){e.emit("click",B),c(),e.slots.default&&!t.disable&&!t.readonly&&t.popupOnClick&&o.togglePopup()}function v(B){!t.disable&&!t.readonly&&(g.value=!0,m.value||(e.emit("focus",B),a.value&&!d.value&&o.popup()))}function w(B){e.emit("input",B);const N=B.target.value;i.value=N,n.value!==N&&C(N,t.updateOn==="change"),l.value&&!d.value&&o.popup()}function y(B){B.target.tagName!=="INPUT"&&B.preventDefault(),B.stopPropagation()}function x(B){e.emit("keydown",B)}function S(B){B.key==="Enter"&&(l.value||a.value)&&o.hidePopup(),e.emit("keyup",B)}function I(B){const N=B.target.value;B.stopPropagation(),C(N)}return{hasFocusedTextBox:u,isTextBoxReadonly:m,textBoxClass:h,textBoxPlaceholder:s,textBoxTitle:f,inputGroupClass:b,hasClearClass:p,changeTextBoxValue:C,commitValue:F,onBlurTextBox:M,onClickTextBox:T,onFocusTextBox:v,onInput:w,onKeyDownTextBox:x,onKeyUpTextBox:S,onMouseDownTextBox:y,onTextBoxValueChange:I}}const ot="FarrisVue_PopoverInstancesKey";function Ni(t,e,n,i){const o=r.ref(),l=r.ref(!1),{judgeCanOpen:a}=Wt(t,i);r.watch(()=>o.value,(g,u)=>{window[ot]=window[ot]||new WeakMap,g?window[ot].set(n.value,g):window[ot].delete(n.value)});function d(){if(window[ot]){const g=window[ot];document.querySelectorAll(".f-button-edit,.v-popover").forEach(u=>{const h=g.get(u);h&&u!==n.value&&!n.value.closest(".popover-fitcontent")&&h.hide()})}}function c(){const g=o.value;g&&g.show(n.value)}async function p(g=!1){if(!!e.slots.default){if(!g&&!l.value&&!await a())return;l.value=!l.value,l.value&&(await r.nextTick(),c())}}async function f(g=!1){if(!!e.slots.default){if(!g&&!await a())return;l.value=!0,await r.nextTick(),c()}}function s(){l.value=!1}function m(){l.value=!0,r.nextTick(()=>{c()})}return{hidePopup:s,showPopup:m,popup:f,shouldPopupContent:l,togglePopup:p,popoverRef:o,closeAllPopover:d}}function Bi(t,e,n){const i=r.ref(),{isTextBoxReadonly:o,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:d,onBlurTextBox:c,onClickTextBox:p,onFocusTextBox:f,onInput:s,onKeyDownTextBox:m,onKeyUpTextBox:g,onMouseDownTextBox:u,onTextBoxValueChange:h}=n,b=r.ref(t.id),{uuid:C}=Z.useGuid(),F=r.computed(()=>({}));r.onMounted(()=>{var y,x;t.selectOnCreated&&((y=i.value)==null||y.select()),t.focusOnCreated&&((x=i.value)==null||x.focus({preventScroll:!0})),b.value||(b.value="button-edit_"+C(8)),b.value=b.value+"-textbox"});const M=r.ref(!1),T=y=>{y.preventDefault(),M.value=!0},v=y=>{y.preventDefault(),M.value=!1,s(y)};function w(y){M.value||s(y)}return()=>r.createVNode("input",{id:t.id?t.id+"-textbox":void 0,ref:i,name:"input-group-value",autocomplete:t.autoComplete?"on":"off",class:l.value,style:F.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:a.value,readonly:o.value,tabindex:t.tabIndex,title:d.value,type:t.inputType,value:e.value,onBlur:c,onChange:h,onClick:p,onFocus:f,onInput:w,onKeydown:m,onKeyup:g,onMousedown:u,onCompositionend:v,onCompositionstart:T},null)}function Oi(t,e,n){const i=r.ref(t.separator),o=r.computed(()=>t.readonly||t.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:d,onClickTextBox:c,textBoxPlaceholder:p}=n,f=r.computed(()=>e.value?e.value.split(i.value).map(u=>({name:u,selectable:!0})):[]);function s(u){l(u.map(h=>h.name).join(i.value),!0)}r.watch(()=>t.separator,u=>{i.value=u});const m=r.ref(!t.disable&&!t.readonly);r.watch([()=>t.disable,()=>t.readonly],([u,h],[b,C])=>{m.value=!u&&!h});function g(u){c(u)}return()=>r.createVNode(vn,{tabindex:t.tabIndex,onFocus:a,onBlur:d,id:`${t.id}-tag-editor`,class:"form-control",placeholder:p.value,data:f.value,showClose:!o.value,showInput:!0,disable:o.value,onChange:s,onClick:g},null)}function ji(t,e,n,i){const{buttonGroupClass:o,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:d}=n,{enableClearButton:c,showClearButton:p,onClearValue:f}=i,s=r.ref(),m=je.debounce(u=>{l(u)},t.buttonBehavior==="Modal"?0:200),g=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>r.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:o.value},[c.value&&r.withDirectives(r.createVNode("span",{class:"input-group-text input-group-clear",onClick:f,onMousedown:g},[r.createVNode("i",{class:"f-icon modal_close"},null)]),[[r.vShow,p.value]]),e.slots.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",onClick:m,onMouseenter:a,onMouseleave:d},[e.slots.buttonContent()]):t.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:s,onClick:u=>m(u),onMouseenter:a,onMouseleave:d},null):null]),buttonHandleElement:s}}function Ri(t,e,n){const i=r.ref(t.popupMinWidth),{hidePopup:o,popoverRef:l}=n,a=()=>{e.emit("shown")};return()=>r.createVNode(hn,{id:`${t.id}-popover`,ref:l,placement:t.placement,host:t.popupHost,"keep-width-with-reference":t.keepWidthWithReference,fitContent:!0,"right-boundary":t.popupRightBoundary,minWidth:i.value,class:t.popupClass,offsetX:t.popupOffsetX,onHidden:o,onShown:a,beforeClose:t.beforeClosePopup,limitContentBySpace:t.limitContentBySpace},{default:()=>{var d,c;return[(c=(d=e.slots).default)==null?void 0:c.call(d)]}})}const Ai=r.defineComponent({name:"FButtonEdit",props:yi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(t,e){const n=r.ref(),i=r.ref(t.customClass),o=r.ref(t.modelValue),l=Ni(t,e,n,o),{shouldPopupContent:a,hidePopup:d,showPopup:c,togglePopup:p}=l,f=Ei(t,e,n,l,o),s=r.ref(""),m=Pi(t,e,o,s,l),{hasFocusedTextBox:g,commitValue:u,inputGroupClass:h}=m,b=Ii(t,e,o,g,s,m),{onMouseEnterTextBox:C,onMouseLeaveTextBox:F}=b,M=r.ref(!1),T=r.computed(()=>{const V={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return i.value&&i.value.split(" ").reduce((W,P)=>(W[P]=!0,W),V),V}),v=r.computed(()=>({overflow:t.wrapText?"hidden":""})),w=r.computed(()=>({}));function y(){if(!t.multiSelect||t.inputType!=="tag"||!n.value)return 0;let V=0;const W=Array.from(n.value.querySelectorAll(".farris-tag-item"));return W&&W.length&&(V=W.map(P=>P.offsetTop).filter(P=>P>20).length),V}const x=r.ref(y());r.onUpdated(()=>{x.value=y()});function S(){return t.multiSelect&&t.inputType==="tag"?()=>r.createVNode(r.Fragment,null,[Oi(t,o,m)(),!!x.value&&r.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[r.createVNode("span",{class:"multi--more-text"},[r.createTextVNode("+"),x.value])])]):Bi(t,o,m)}let I=S();r.watch([()=>t.multiSelect,()=>t.inputType],()=>{I=S()});const{renderButtonGroup:B,buttonHandleElement:N}=ji(t,e,f,b),O=Ri(t,e,l),_=r.ref(a.value),k={displayText:s,commitValue:u,elementRef:n,hidePopup:d,showPopup:c,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:p,openDialog:()=>{N.value&&t.buttonBehavior==="Modal"&&N.value.click()},getModal:()=>{var V;return t.buttonBehavior==="Modal"?(V=f.modalRef.value)==null?void 0:V.value:null},getTextbox:()=>{var V;return(V=n.value)==null?void 0:V.querySelector("input")},forceClosePopup:()=>{_.value=!1,M.value=!0,a.value=!1}};return r.onMounted(()=>{n.value.componentInstance=k,window.onresize=()=>{document.body.click()}}),r.onBeforeUnmount(()=>{var V;window.onresize=null,(V=window[ot])==null||V.delete(n.value)}),e.expose(k),r.watch(()=>a.value,async(V,W)=>{if(M.value){_.value=V,M.value=!1;return}if(!V&&t.beforeClosePopup&&typeof t.beforeClosePopup=="function"){try{const P=await t.beforeClosePopup();_.value=!P,(!P||t.readonly)&&(a.value=!0)}catch(P){console.error("Error in beforeClosePopup:",P),_.value=W,a.value=W}return}_.value=V}),()=>{var V,W;return r.createVNode(r.Fragment,null,[r.createVNode("div",r.mergeProps(e.attrs,{ref:n,class:T.value,id:t.id?t.id:void 0,style:v.value}),[r.createVNode("div",{id:t.id?`${t.id}-input-group`:void 0,class:h.value,style:w.value,onMouseenter:C,onMouseleave:F},[(W=(V=e.slots).precontent)==null?void 0:W.call(V),I(),B()])]),_.value&&O()])}}}),ft=new Map([["appearance",ze.resolveAppearance],["column","columnOption"],["command","commandOption"]]),zt=new Map([]),Hi="root-viewmodel";class Li{constructor(e,n){ne(this,"formSchemaUtils");ne(this,"controlCreatorUtils");ne(this,"designViewModelUtils");ne(this,"useFormCommand");ne(this,"formStateMachineUtils");this.resolver=e,this.designerHostService=n,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.useFormCommand=this.designerHostService.useFormCommand,this.formStateMachineUtils=this.designerHostService.formStateMachineUtils}createComponent(e){const n=this.createComponentRefNode(e),i=this.createComponentNode(e),o=this.createViewModeNode(e),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(o),l.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(n,e,o)}wrapContainerSectionForComponent(e,n,i){var c,p,f,s,m,g,u,h,b,C,F;const o=(p=(c=n==null?void 0:n.parentComponentInstance)==null?void 0:c.schema)==null?void 0:p.type,l=(m=(s=(f=n==null?void 0:n.parentComponentInstance)==null?void 0:f.schema)==null?void 0:s.appearance)==null?void 0:m.class,a=(u=(g=this.formSchemaUtils.getFormSchema())==null?void 0:g.module)==null?void 0:u.templateId;if(o===z.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const d=[z.DgControl["content-container"].type,z.DgControl["response-layout-item"].type,z.DgControl["splitter-pane"].type,z.DgControl.drawer.type];if(o&&d.includes(o)){const M=this.resolver.getSchemaByType("section",{parentComponentInstance:n.parentComponentInstance,mainTitle:n.componentName},this.designerHostService);if(M&&M.contents&&M.contents.length){const T=M.contents[0];return T.contents=[e],this.appendAddDeleteBtnToParentContainer(T,n,i),M}}return this.appendAddDeleteBtnToParentContainer((h=n==null?void 0:n.parentComponentInstance)==null?void 0:h.schema,n,i),o===z.DgControl["tab-page"].type&&(b=n.parentComponentInstance)!=null&&b.parent&&(C=n.parentComponentInstance)!=null&&C.parent.updateToolbarItems&&((F=n.parentComponentInstance)==null||F.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,n,i){const o=e.type,l=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(n.bindTo==="/"||n.componentType!=="data-grid"&&n.componentType!=="form")return;const a=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),d=z.DgControl["tab-page"].type===o?"tab-toolbar-item":"section-toolbar-item",c=this.resolver.getSchemaByType(d),p=[Object.assign({},c,{id:`button-add-${n.componentId}`,type:d,text:"新增",disabled:a.find(f=>f.id==="canAddDetail")?{type:"StateMachine",status:!1,field:"canAddDetail"}:!1,onClick:`root-viewModel.${i.id}.${l}AddItem1`}),Object.assign({},c,{id:`button-remove-${n.componentId}`,type:d,text:"删除",disabled:a.find(f=>f.id==="canRemoveDetail")?{type:"StateMachine",status:!1,field:"canRemoveDetail"}:!1,onClick:`root-viewModel.${i.id}.${l}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,type:z.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar",buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.type||(e.toolbar.type=z.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar"),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(p),this.appendAddAndDeleteCommands(i),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var f;const n=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=Z.useGuid().guid(),o=Z.useGuid().guid(),l=this.resolveCommandController(),a={id:i,code:`${n}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},d={id:o,code:`${n}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:l,shortcut:{},extensions:[]};(f=this.designerHostService.designerContext)!=null&&f.appendIdentifyForNewCommand&&(this.designerHostService.designerContext.appendIdentifyForNewCommand(a),this.designerHostService.designerContext.appendIdentifyForNewCommand(d)),e.commands.push(a,d),this.formSchemaUtils.getFormSchema().module.webcmds.find(s=>s.id===l).refedHandlers.push({host:i,handler:"AddItem"},{host:o,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,n=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=e.find(l=>n.includes(l.id));if(i)return i.id;const o="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:o,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),o}createComponentRefNode(e){const n=this.resolver.getSchemaByType("component-ref");return Object.assign(n,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),n}createComponentNode(e){const n=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(e);return Object.assign(n,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getDataGridComponentClass(e)},contents:i}),n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Hi,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var l,a,d,c;const{templateId:n}=this.formSchemaUtils.getFormSchema().module,i=(l=e.parentComponentInstance)==null?void 0:l.schema,o=(a=i==null?void 0:i.appearance)==null?void 0:a.class;if(n==="double-list-in-tab-template"&&(i==null?void 0:i.type)==="tab-page"){const p=((d=e.parentComponentInstance)==null?void 0:d.parent)&&((c=e.parentComponentInstance)==null?void 0:c.parent.schema);if((p==null?void 0:p.type)==="tabs"&&(p==null?void 0:p.fill)===!0)return"f-struct-wrapper f-utils-fill-flex-column"}return["double-list-template","tree-list-template"].includes(n)&&(o!=null&&o.includes("f-page-content-main"))?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){var m,g,u,h,b;const n=(m=e.parentComponentInstance)==null?void 0:m.schema,i=(u=(g=n==null?void 0:n.schema)==null?void 0:g.appearance)==null?void 0:u.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let l,a=!1;if(o==="double-list-in-tab-template"&&(n==null?void 0:n.type)==="tab-page"){const C=((h=e.parentComponentInstance)==null?void 0:h.parent)&&((b=e.parentComponentInstance)==null?void 0:b.parent.schema);(C==null?void 0:C.type)==="tabs"&&(C==null?void 0:C.fill)===!0&&(a=!0)}if(a){const C=this.resolver.getSchemaByType("section");Object.assign(C,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),l=C}else if((o==="double-list-template"||o==="tree-list-template")&&(i!=null&&i.includes("f-page-content-main"))){const C=this.resolver.getSchemaByType("section");Object.assign(C,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),l=C}else{const C=this.resolver.getSchemaByType("content-container");Object.assign(C,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),l=C}const d=this.resolver.getSchemaByType("data-grid"),c=[],p=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),f=e.editable&&p.length>0&&p.findIndex(C=>C.id==="editable")>-1;Object.assign(d,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:c,fieldEditable:f,dataSource:e.dataSource||"",editable:f?{type:"StateMachine",status:!0,field:"editable"}:!1,pagination:{enable:!e.editable}}),l.contents=[d];const{selectedFields:s}=e;return s==null||s.forEach(C=>{if(C.$type===Z.FormSchemaEntityField$Type.ComplexField)return;const F=je.cloneDeep(C),M=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",F,"",f);M&&c.push(M)}),[l]}assembleViewModelFields(e){const n=[],{selectedFields:i}=e;return i==null||i.forEach(o=>{if(o.$type===Z.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=o.type.name;(a===Z.FormSchemaEntityFieldTypeName.Enum||a===Z.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:o.id,fieldName:o.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),n}}function mt(t,e,n,i){var l,a,d,c,p,f,s;const o=n.parentComponentInstance;if(o&&i){const m=Math.random().toString(36).slice(2,6),g={componentId:`data-grid-${m}`,componentName:((l=n.bindingSourceContext)==null?void 0:l.entityTitle)||((d=(a=n.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:d.name)||`表格-${m}`,componentType:"data-grid",parentContainerId:o.schema.id,parentComponentInstance:o,editable:!0,bindTo:((c=n.bindingSourceContext)==null?void 0:c.bindTo)||"",dataSource:(f=(p=n.bindingSourceContext)==null?void 0:p.bindingEntity)==null?void 0:f.label,selectedFields:(s=n.bindingSourceContext)==null?void 0:s.bindingEntityFields};return new Li(t,i).createComponent(g)}else return e}function qt(t,e,n){return e}const Gt={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"grid-field-editor",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:"grid-field-editor"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"object",default:null}},required:["id","type"]},wt={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}};ze.createPropsResolver(wt,Gt,ft,mt);const $i=ze.getPropsResolverGenerator(wt,Gt,ft,mt),Wi=new Map([["appearance",ze.resolveAppearance]]);function zi(t,e,n){return e}const qi={title:"transfer",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:[]}}}}}},Gi={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/transfer.schema.json",title:"transfer",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for transfer",type:"string"},type:{description:"The type string of transfer",type:"string",default:"transfer"},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"]},Ut={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]},virtualized:{type:Boolean,default:!1},rowOption:{type:Object},columns:{type:Array,default:[{field:"name",title:"",dataType:"string",width:"100%"}]},checkBeforeRemoveItem:{type:Function,default:null},selectedItemClass:{Type:[String,Function],default:"draggable-item--text-truncate",validator:t=>typeof t=="string"||typeof t=="function"}};ze.createPropsResolver(Ut,Gi,Wi,zi,qi);const Ui={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:t=>typeof t=="string"||typeof t=="function"},itemStyle:{type:[String,Function],default:"",validator:t=>typeof t=="string"||typeof t=="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},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function Di(t,e){function n(l){const a=[];let d=l.nextNode();for(;d;)a.push(d),d=l.nextNode();return a}function i(l,a){const d=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return n(d).map(s=>({textNode:s,text:(s.textContent||"").toLocaleLowerCase()})).map(({textNode:s,text:m})=>{const g=[];let u=0;for(;u<m.length;){const h=m.indexOf(a,u);if(h===-1)break;g.push(h),u=h+a.length}return g.map(h=>{const b=new Range;return b.setStart(s,h),b.setEnd(s,h+a.length),b})}).flat()}function o(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=i(e.value,l.toLocaleLowerCase()),d=new Highlight(...a);CSS.highlights.set("search-result",d)}return{search:o}}function Dt(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.size),s=r.ref(t.textField),m=r.ref(t.titleField),g=r.ref(t.disableField),u=r.computed(()=>{var S,I;return((S=t.selection)==null?void 0:S.multiSelect)&&((I=t.selection)==null?void 0:I.showCheckbox)}),{onMouseenterItem:h,onMouseoverItem:b,onMouseoutItem:C}=l,{getKey:F,listViewItemClass:M,listViewItemStyle:T,onCheckItem:v,onClickItem:w}=a,y=r.computed(()=>{const S={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return t.itemClass?S:{margin:f.value==="small"?"0.25rem 0":"8px 0",...S}});function x(S,I,B){return S.checked=d.findIndexInSelectedItems(S)>-1,r.createVNode("li",{class:M(S,I),id:F(S,I),key:F(S,I),style:T(S,I),onClick:N=>w(S,I,N),onMouseenter:N=>h(N,S,I),onMouseover:N=>b(N,S,I),onMouseout:N=>C(N,S,I)},[u.value&&r.createVNode("div",{class:"f-list-select",onClick:N=>N.stopPropagation()},[r.createVNode(bt.FCheckbox,{id:"list-"+F(S,I),customClass:"listview-checkbox float-left",disabled:S[g.value],checked:S.checked,"onUpdate:checked":N=>S.checked=N,onChange:N=>{v(S,I,!N.checked)}},null)]),r.createVNode("div",{class:"f-list-content"},[r.createVNode("div",{class:t.itemContentClass,style:y.value,title:S.raw[m.value]||S.raw[s.value]},[S.raw[s.value]])])])}return{renderItem:x}}function Yi(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.multiSelect),s=r.ref(t.disableField),m=r.ref(t.textField),{onMouseenterItem:g,onMouseoverItem:u,onMouseoutItem:h}=l,{getKey:b,listViewItemClass:C,listViewItemStyle:F,onCheckItem:M,onClickItem:T,updateSelectedItems:v}=a;function w(x,S,I){return t.contentTemplate?r.createVNode(r.Fragment,null,[t.contentTemplate({item:x.raw,index:S,selectedItem:I})]):e.slots.content?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.content({item:x.raw,index:S,selectedItem:I})]):r.createVNode("div",{style:"margin: 10px 0;"},[x.raw[m.value||"name"]])}function y(x,S,I){return r.createVNode("li",{class:C(x,S),id:b(x,S),key:b(x,S),style:F(x,S),onClick:B=>T(x,S,B),onMouseenter:B=>g(B,x,S),onMouseover:B=>u(B,x,S),onMouseout:B=>h(B,x,S)},[f.value&&r.createVNode("div",{class:"f-list-select",onClick:B=>B.stopPropagation()},[r.createVNode(bt.FCheckbox,{id:"list-"+b(x,S),customClass:"listview-checkbox",disabled:x[s.value],checked:x.checked,"onUpdate:checked":B=>x.checked=B,onChange:B=>{M(x,S,!B.checked),v()}},null)]),r.createVNode("div",{class:"f-list-content"},[w(x,S,I)])])}return{renderItem:y}}function Xi(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.multiSelect),s=r.ref(t.disableField),m=r.ref(t.textField),{onMouseenterItem:g,onMouseoverItem:u,onMouseoutItem:h}=l,{getKey:b,listViewItemClass:C,onCheckItem:F,onClickItem:M}=a,{dragstart:T,dragenter:v,dragover:w,dragend:y}=i,{removeItem:x}=c,S=r.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function I(k,V=""){const W=k.target;W.title=W.scrollWidth>W.clientWidth?V:""}function B(k){return r.createVNode("div",{style:S.value,onMouseenter:V=>I(V,k.raw[m.value||"name"])},[k.raw[m.value||"name"]])}function N(){return e.slots.itemContent?e.slots.itemContent:B}const O=N();function _(k,V,W){return r.createVNode("li",{class:C(k,V),id:b(k,V),key:b(k,V),onClick:P=>M(k,V,P),onMouseenter:P=>g(P,k,V),onMouseover:P=>u(P,k,V),onMouseout:P=>h(P,k,V),draggable:"true",onDragstart:P=>T(P,k,V),onDragenter:P=>v(P,V),onDragend:P=>y(P,k),onDragover:P=>w(P)},[f.value&&r.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[r.createVNode(bt.FCheckbox,{id:"list-"+b(k,V),customClass:"listview-checkbox",disabled:k[s.value]||!k.checked,checked:k.checked,"onUpdate:checked":P=>k.checked=P,onChange:P=>F(k,V,!P.checked)},null)]),r.createVNode("div",{class:"f-list-content"},[O(k)]),r.createVNode("div",{class:"f-list-remove",onClick:P=>{P.stopPropagation(),x(V)}},[r.createVNode("div",{class:"f-list-remove-icon"},[r.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),r.createVNode("div",{class:"f-list-handle"},[r.createVNode("div",null,[r.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:_}}function Zi(t,e,n,i,o,l,a,d,c,p){var b;const f=r.ref(((b=t.group)==null?void 0:b.groupFields)||[]),{collpaseGroupIconClass:s}=o,{toggleGroupRow:m}=p;function g(C,F){F.collapse=!F.collapse,n.value=m(F.collapse?"collapse":"expand",F,n.value)}function u(C,F,M){return e.slots.group?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.group({item:C.raw,index:F,selectedItem:M})]):r.createVNode("div",{class:"f-navlookup-recentHeader",onClick:T=>g(T,C)},[r.createVNode("div",{class:"fv-grid-group-row-icon"},[r.createVNode("span",{class:s(C)},null)]),r.createVNode("div",{class:"f-navlookup-recommandLabel"},[C.raw[f.value[C.layer]]])])}function h(C,F,M){return C.layer>-1&&u(C,F,M)}return{renderItem:h}}function Ji(t,e,n,i){const{dataView:o}=n,{updateSelectedItems:l}=i;function a(d){if(d>-1&&d<o.value.length){if(t!=null&&t.checkBeforeRemoveItem&&!t.checkBeforeRemoveItem(o.value[d]))return;const c=o.value.splice(d,1);l(),e.emit("removeItem",c[0])}}return{removeItem:a}}function Qi(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.view),s=r.ref(t.view==="CardView"),m=r.ref({}),g=Ji(t,e,i,c),u=r.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":s.value,"flex-wrap":s.value})),h=r.computed(()=>!!n.value&&n.value.length>0),b=r.computed(()=>n.value.length===0);r.computed(()=>b.value&&!e.slots.empty);function C(){return f.value==="SingleView"?Dt:f.value==="DraggableView"?Xi:(f.value==="ContentView"||f.value==="CardView")&&(t.contentTemplate||e.slots.content)?Yi:Dt}const F=C(),{renderItem:M}=F(t,e,n,p,o,l,c,a,g,d),{renderItem:T}=Zi(t,e,n,p,o,l,c,a,g,d),v=[M,T];function w(){return n.value.filter(S=>S.visible!==!1).map((S,I)=>v[S.type](S,I,m))}function y(){return r.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[r.createVNode("p",{class:"f-empty-title"},[t.emptyTemplate?t.emptyTemplate():e.slots.empty?e.slots.empty():Re.LocaleService.getLocaleValue("listView.emptyMessage")])])}function x(){return r.createVNode("ul",{class:u.value,style:"list-style: none;"},[h.value&&w(),b.value&&y()])}return{renderListArea:x}}function Ki(t,e,n){function i(){return e.slots.header&&r.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:i}}function Yt(t,e,n){const i=r.ref(t.headerClass),o=r.ref(t.placeholder),l=r.ref(""),a=r.computed(()=>!l.value),d=r.computed(()=>!!l.value);function c(m){l.value=""}r.watch(l,m=>{t.enableHighlightSearch&&n.search(m),e.emit("afterSearch",m)});const p=r.computed(()=>{const m={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((u,h)=>(u[h]=!0,u),m),m});function f(m){}function s(){return r.createVNode("div",{class:"f-list-view-header",onClick:r.withModifiers(()=>f,["prevent","stop"])},[r.createVNode("div",{class:p.value},[r.createVNode("div",{class:"farris-input-wrap"},[r.createVNode("div",{class:"f-cmp-inputgroup"},[r.createVNode("div",{class:"input-group f-state-editable"},[r.withDirectives(r.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":m=>l.value=m,name:"input-group-value",type:"text",placeholder:o.value,autocomplete:"off"},null),[[r.vModelText,l.value]]),r.createVNode("div",{class:"input-group-append"},[d.value&&r.createVNode("span",{class:"input-group-text input-group-clear",onClick:m=>c()},[r.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&r.createVNode("span",{class:"input-group-text"},[r.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:s}}function eo(){const t=r.ref(""),e=r.ref(-1),n=r.ref(""),i=r.ref(-1),o=r.ref(!1);function l(s,m,g){i.value=g}function a(s,m,g){o.value||(i.value=g)}function d(s,m,g){i.value=-1}function c(){o.value=!0}function p(){o.value=!1}function f(){e.value=-1,t.value=""}return{activeIndex:e,focusedItemId:n,hoverIndex:i,clearActiveItem:f,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:d,resumeHover:p,suspendHover:c}}function to(t,e,n,i){const o=r.ref(t.idField),{dataView:l}=n,a=r.ref(-1),d=r.ref(!1),{activeIndex:c,focusedItemId:p,hoverIndex:f,resumeHover:s,suspendHover:m}=i;let g,u=0,h=0;function b(w,y){const x=w-u,S=y-h;g.style.left=parseInt(g.style.left)+x+"px",g.style.top=parseInt(g.style.top)+S+"px",u=w,h=y}function C(w){const{left:y,top:x}=w.getBoundingClientRect(),S=w.cloneNode(!0);return S.className=S.className+" f-listview-drag-moving",S.style.cssText=`
|
|
1
|
+
(function(le,X){typeof exports=="object"&&typeof module<"u"?X(exports,require("../../components/common/index.umd.js"),require("../../components/data-grid/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("vue"),require("@vueuse/core"),require("../../components/checkbox/index.umd.js"),require("../../components/popover/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/list-view/index.umd.js"),require("../../components/date-picker/index.umd.js"),require("../../components/number-spinner/index.umd.js"),require("../../components/search-box/index.umd.js"),require("../../components/notify/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/tags/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/accordion/index.umd.js"),require("../../components/avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../../components/calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../checkbox-group/index.umd.js"),require("../../components/combo-list/index.umd.js"),require("../../components/combo-tree/index.umd.js"),require("../../components/component/index.umd.js"),require("../../components/color-picker/index.umd.js"),require("../../components/content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../../components/dropdown/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../../components/events-editor/index.umd.js"),require("../../components/binding-selector/index.umd.js"),require("../../components/image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../../components/layout/index.umd.js"),require("../../components/list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../../components/lookup/index.umd.js"),require("../../components/mapping-editor/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-range/index.umd.js"),require("../number-spinner/index.umd.js"),require("../../components/order/index.umd.js"),require("../../components/page-header/index.umd.js"),require("../../components/page-footer/index.umd.js"),require("../../components/progress/index.umd.js"),require("../../components/query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../../components/response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../../components/smoke-detector/index.umd.js"),require("../../components/splitter/index.umd.js"),require("../../components/step/index.umd.js"),require("../switch/index.umd.js"),require("../tabs/index.umd.js"),require("../tags/index.umd.js"),require("../../components/text/index.umd.js"),require("../time-picker/index.umd.js"),require("../../components/uploader/index.umd.js"),require("../../components/verify-detail/index.umd.js"),require("../../components/video/index.umd.js"),require("../textarea/index.umd.js"),require("../../components/schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../../components/event-parameter/index.umd.js"),require("../../components/filter-condition-editor/index.umd.js"),require("../../components/fieldset/index.umd.js"),require("../../components/sort-condition-editor/index.umd.js"),require("../../components/menu-lookup/index.umd.js"),require("../drawer/index.umd.js"),require("../../components/json-editor/index.umd.js"),require("../../components/property-editor/index.umd.js"),require("../../components/expression-editor/index.umd.js"),require("../../components/code-editor/index.umd.js"),require("../../components/html-template/index.umd.js"),require("../../components/collection-property-editor/index.umd.js"),require("../modal/index.umd.js"),require("../../components/external-container/index.umd.js"),require("../../components/language-textbox/index.umd.js"),require("../../components/image/index.umd.js"),require("../../components/comment/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/data-grid/index.umd.js","../../components/dynamic-resolver/index.umd.js","vue","@vueuse/core","../../components/checkbox/index.umd.js","../../components/popover/index.umd.js","../../components/locale/index.umd.js","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/filter-bar/index.umd.js","../../components/pagination/index.umd.js","../../components/data-view/index.umd.js","../../components/button/index.umd.js","../../components/button-group/index.umd.js","../../components/list-view/index.umd.js","../../components/date-picker/index.umd.js","../../components/number-spinner/index.umd.js","../../components/search-box/index.umd.js","../../components/notify/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/designer-canvas/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/tags/index.umd.js","../../components/tree-view/index.umd.js","../../components/field-selector/index.umd.js","../../components/accordion/index.umd.js","../../components/avatar/index.umd.js","../button-edit/index.umd.js","../../components/calendar/index.umd.js","../capsule/index.umd.js","../checkbox/index.umd.js","../checkbox-group/index.umd.js","../../components/combo-list/index.umd.js","../../components/combo-tree/index.umd.js","../../components/component/index.umd.js","../../components/color-picker/index.umd.js","../../components/content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../../components/dropdown/index.umd.js","../dynamic-form/index.umd.js","../../components/events-editor/index.umd.js","../../components/binding-selector/index.umd.js","../../components/image-cropper/index.umd.js","../input-group/index.umd.js","../../components/layout/index.umd.js","../../components/list-nav/index.umd.js","../list-view/index.umd.js","../../components/lookup/index.umd.js","../../components/mapping-editor/index.umd.js","../../components/nav/index.umd.js","../../components/number-range/index.umd.js","../number-spinner/index.umd.js","../../components/order/index.umd.js","../../components/page-header/index.umd.js","../../components/page-footer/index.umd.js","../../components/progress/index.umd.js","../../components/query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../../components/response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../../components/smoke-detector/index.umd.js","../../components/splitter/index.umd.js","../../components/step/index.umd.js","../switch/index.umd.js","../tabs/index.umd.js","../tags/index.umd.js","../../components/text/index.umd.js","../time-picker/index.umd.js","../../components/uploader/index.umd.js","../../components/verify-detail/index.umd.js","../../components/video/index.umd.js","../textarea/index.umd.js","../../components/schema-selector/index.umd.js","../tree-grid/index.umd.js","../../components/event-parameter/index.umd.js","../../components/filter-condition-editor/index.umd.js","../../components/fieldset/index.umd.js","../../components/sort-condition-editor/index.umd.js","../../components/menu-lookup/index.umd.js","../drawer/index.umd.js","../../components/json-editor/index.umd.js","../../components/property-editor/index.umd.js","../../components/expression-editor/index.umd.js","../../components/code-editor/index.umd.js","../../components/html-template/index.umd.js","../../components/collection-property-editor/index.umd.js","../modal/index.umd.js","../../components/external-container/index.umd.js","../../components/language-textbox/index.umd.js","../../components/image/index.umd.js","../../components/comment/index.umd.js"],X):(le=typeof globalThis<"u"?globalThis:le||self,X(le["data-grid"]={},le.common,le.FDataGrid,le.dynamicResolver,le.Vue,le.VueUseCore,le.checkbox,le.FPopover,le.locale,null,le.LodashES,null,null,null,null,le.dataView,le.FButton,le.FButtonGroup,null,null,null,null,le.notify,le.condition,le.dynamicForm,le.designerCanvas,le.designer$1,le.propertyPanel,le.FTags,le.FTreeView,le.FFieldSelector))})(this,function(le,X,Je,We,r,hn,Ct,gn,Le,Br,je,Or,jr,Rr,Ar,Ee,Bt,yn,Lr,Hr,$r,Wr,wt,de,vn,$,ze,He,bn,Cn,ft){"use strict";var Pr=Object.defineProperty;var Nr=(le,X,Je)=>X in le?Pr(le,X,{enumerable:!0,configurable:!0,writable:!0,value:Je}):le[X]=Je;var ie=(le,X,Je)=>Nr(le,typeof X!="symbol"?X+"":X,Je);const wn={customClass:{type:String,default:""},appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:t=>!0},beforeEndEditCell:{type:Function,default:()=>!0},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[],halign:"center"}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},enableCommands:{type:Boolean,default:!1},enableFilter:{type:Boolean,default:!1},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},mergeCell:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:36,showEllipsis:!0,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1,keepSelectingOnClick:!0}},selectionValues:{type:Array,default:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1},emptyTemplate:{type:Object},beforeUpdate:{type:Function}},Sn=X.excludeProperties(Object.assign({},wn,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function xn(t,e,n,i,o){const{getGridHeaderCells:l}=o,a=120,d=50,m=r.computed(()=>{var g;return((g=t.rowNumber)==null?void 0:g.enable)||!1}),p=r.computed(()=>{var g,S;return((g=t.selection)==null?void 0:g.multiSelect)||((S=t.selection)==null?void 0:S.showCheckbox)||!1}),c=r.computed(()=>{var g;return 0+(m.value?((g=t.rowNumber)==null?void 0:g.width)||32:0)+(p.value?d:0)}),s=r.computed(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns}),f=r.computed(()=>{var g;return s.value&&((g=t.columnOption)==null?void 0:g.fitMode)||"none"});function y(g,S,M){const E=parseInt(g.width,10)/100;return M*E}function u(g,S,M){return typeof g.width=="string"?y(g,S,M):g.width||a}function h(g,S){const M=[],E=[];let N=0;g.value.primaryColumns.forEach(V=>{typeof V.width=="string"?E.push(V):(V.width=V.width||a,N+=V.width,M.push(V))});const I=S*(M.length/g.value.primaryColumns.length);M.forEach(V=>{const _=I*(V.width/N);V.actualWidth=_,g.value.primaryColumnsWidth+=V.actualWidth});const B=S-I;E.forEach(V=>{const _=y(V,g.value,B);V.actualWidth=_,g.value.primaryColumnsWidth+=V.actualWidth})}function w(g,S){const M=[],E=[],N=new WeakMap;let I=0,B=0;if(g.value.primaryColumns.forEach(_=>{if(typeof _.width=="string"){const k=y(_,g.value,S);N.set(_,k),I+=k,E.push(_)}else _.width=_.width||a,B+=_.width,M.push(_)}),S-I>B){const _=S-I;E.forEach(k=>{k.actualWidth=N.get(k)||a,g.value.primaryColumnsWidth+=k.actualWidth}),M.forEach(k=>{k.actualWidth=_*(k.width/B),g.value.primaryColumnsWidth+=k.actualWidth})}else h(g,S)}function b(g,S){g.value.primaryColumns.forEach(M=>{M.actualWidth=u(M,g.value,S),g.value.primaryColumnsWidth+=M.actualWidth})}const x={expand:w,none:b,percentage:h};function F(g){g.value.leftHeaderColumns=Array.from(l(g.value.leftColumns).values()),g.value.primaryHeaderColumns=Array.from(l(g.value.primaryColumns).values()),g.value.rightHeaderColumns=Array.from(l(g.value.rightColumns).values())}function T(g){g.value.leftColumnsWidth=0,g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,g.value.leftColumns.forEach(S=>{g.value.leftColumnsWidth+=S.actualWidth||0}),g.value.primaryColumns.forEach(S=>{g.value.primaryColumnsWidth+=S.actualWidth||0}),g.value.rightColumns.forEach(S=>{g.value.rightColumnsWidth+=S.actualWidth||0}),g.value=Object.assign({},g.value)}function v(g,S,M){var k;let E=0;const N=g.value.primaryColumns,I=g.value.rightColumns;g.value.rightColumns.forEach(W=>{W.actualWidth=u(W,g.value,S),E+=W.actualWidth});const B=M-E,V=x[f.value];if(V&&V(g,B),g.value.primaryColumnsWidth+E<=M)return g.value.primaryColumns=[...N,...I],g.value.primaryColumnsWidth+=E,g.value.rightColumns=[],g.value.rightColumnsWidth=0,!0;const _=new Map;return _.set("primary",[]),_.set("right",[]),g.value.primaryColumns.reduce((W,P)=>{var A,Y;return P.fixed==="right"?(A=W.get("right"))==null||A.push(P):(Y=W.get("primary"))==null||Y.push(P),W},_),(k=_.get("right"))!=null&&k.length&&(g.value.primaryColumns=[..._.get("primary")||[]],g.value.rightColumns=[..._.get("right")||[]]),g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,!1}function C(){if(n.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const g=n.value.clientWidth-c.value;e.value.leftColumns.forEach(M=>{M.actualWidth=u(M,e.value,g),e.value.leftColumnsWidth+=M.actualWidth});const S=g-e.value.leftColumnsWidth;if(v(e,g,S))i.value=S;else{e.value.rightColumns.forEach(N=>{N.actualWidth=u(N,e.value,g),e.value.rightColumnsWidth+=N.actualWidth});const M=g-e.value.leftColumnsWidth-e.value.rightColumnsWidth,E=x[f.value];E&&E(e,M),i.value=M}F(e),e.value=Object.assign({},e.value)}}return r.watch(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns},(g,S)=>{g!==S&&g&&C()}),r.watch(f,(g,S)=>{g!==S&&s.value&&C()}),{calculateColumnHeaders:F,calculateColumnsSize:C,calculateColumnsWidth:T}}const Mn="";function Fn(t){const n={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:[]},i=r.ref(n);function o(){i.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=r.ref(t.summary),a=r.computed(()=>{const v=l.value;return(v==null?void 0:v.groupFields)||[]});function d(){i.value.rightColumns.forEach(g=>{g.showSetting=!1}),i.value.primaryColumns.forEach(g=>{g.showSetting=!1});const v=i.value.rightColumns,C=i.value.primaryColumns;v.length>0?v[v.length-1].showSetting=!0:C.length>0&&(C[C.length-1].showSetting=!0)}function m(v){o();const C=new Map;return a.value&&a.value.reduce((g,S)=>(g.set(S,!0),g),C),v.reduce((g,S)=>(S.filter=S.filter||Mn,S.fixed==="left"?(i.value.leftColumns.push(S),i.value.leftColumnsMap.set(S.field,S),i.value.leftColumnsWidth+=S.actualWidth):S.fixed==="right"?(i.value.rightColumns.push(S),i.value.rightColumnsMap.set(S.field,S),i.value.rightColumnsWidth+=S.actualWidth):(i.value.primaryColumns.push(S),i.value.primaryColumnsMap.set(S.field,S),i.value.primaryColumnsWidth+=S.actualWidth),C.has(S.field)&&i.value.summaryColumns.push(S),g),i),d(),i}m(t.columns);const p=r.computed(()=>i.value.leftColumns.length>0),c=r.computed(()=>i.value.rightColumns.length>0);function s(v,C){return C.sortable&&C.sort&&C.sort!=="none"&&v.push(C),v}function f(v,C){return v.sortOrder=v.sortOrder||0,C.sortOrder=C.sortOrder||0,v.sortOrder===C.sortOrder?0:v.sortOrder<C.sortOrder?-1:1}function y(v,C){return v.sortOrder=v.sortOrder||0,C.sortOrder=C.sortOrder||0,v.sortOrder===C.sortOrder?0:v.sortOrder<C.sortOrder?1:-1}function u(v,C){return C.filterable&&v.push(C),v}function h(){const v=[];return i.value.leftColumns.reduce(u,v),i.value.primaryColumns.reduce(u,v),i.value.rightColumns.reduce(u,v),v}function w(){const v=[];i.value.leftColumns.reduce(s,v),i.value.primaryColumns.reduce(s,v),i.value.rightColumns.reduce(s,v);const C=Math.max(...v.map(g=>g.sortOrder||0));return v.sort(y).map(g=>{const S=g.sortOrder||C+1;return g.sortOrder=S,g}).sort(f).map((g,S)=>{const M=S+1;return g.sortOrder=M,g})}function b(v,C,g){const S=v.map(M=>{const E=g.getSorterByColumn(M),N=M.sort==="asc",I=M.sort==="desc",B=N?E.ascend:I?E.decend:void 0;return{field:M.field,compare:B}});C.setSorters(S)}function x(v,C){const g=w();b(g,v,C)}function F(v){}function T(v){}return{applyColumnSorter:x,collectionFilterableColumns:h,applySortableColumns:b,collectionSortableColumns:w,columnContext:i,hasLeftFixedColumn:p,hasRightFixedColumn:c,updateColumnRenderContext:m,updateColumnSettingIcon:d,sortFromServer:F,createSortConditions:T}}function Tn(t,e,n,i,o,l,a,d){const m=r.ref(i.value-1+o),p=r.ref(0),{renderDataRow:c}=l,s=a?a.renderGroupRow:c,f=d?d.renderSummaryRow:c;function y(w){let b=c;return w.__fv_data_grid_group_row__&&(b=s),w.__fv_data_grid_group_summary__&&(b=f),b}function u(w,b,x,F){const{dataView:T}=n,v=[];if(T.value.length>0){const C=F?Date.now().toString():"";let g=w,S=0;const M=b-w+1;for(;v.length<M&&g<T.value.length;){const E=T.value[g],N=T.value[g-1]||x,I=v[S-1],B=N?(N.__fv_data_position__||0)+(N.__fv_data_height__||0):0,_=y(E)(E,N,I,g,B,e.value,v);_.refreshKey=C,v.push(_),S++,g++}}return p.value=v.length>0?v[0].index:0,m.value=v.length>0?v[v.length-1].index:0,v}function h(w,b,x){const F=b.groupField||"",{groupValue:T,raw:v}=b;n[w](F,T,v.groupParents||[]);const{dataView:C}=n,g=x[0].index,S=Math.min(g+i.value+o+1,C.value.length-1);return u(g,S)}return{getVisualData:u,maxVisibleRowIndex:m,minVisibleRowIndex:p,toggleGroupRow:h}}var Ne=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(Ne||{}),Ge=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(Ge||{}),et=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(et||{}),Oe=(t=>(t[t.none=0]="none",t[t.filterable=1]="filterable",t[t.sortable=2]="sortable",t[t.filtered=4]="filtered",t[t.sorted=8]="sorted",t[t.ascending=16]="ascending",t[t.descending=32]="descending",t))(Oe||{}),Ue=(t=>(t.DATE="date",t.DATE_TIME="datetime",t.NUMBER="number",t.ENUM="enum",t.IMAGE="image",t.BOOLEAN="boolean",t.BOOLEAN2="boolean2",t.TIMEAGO="timeago",t.NONE="none",t.CUSTOM="custom",t.MULTI_LINGUAL="multilingual",t))(Ue||{});const _n="__setting__",Ot="__command__",kn=150,Vn="right",jt="commands";function En(t,e,n){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:o,shouldShowHorizontalScrollbar:l}=n;function a(){return l.value&&r.createVNode("div",{class:"fv-grid-horizontal-scroll"},[r.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:d=>o(d,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function In(t){function e(d,m){switch(d.command){case"edit":case"remove":return m.status===Ge.initial;case"accept":case"cancel":return m.status===Ge.editing;default:return!d.hidden}}function n(d,m,p,c){var s,f,y,u,h;switch((s=d.onClick)==null||s.call(d,m,p.dataIndex,p),d.command){case"edit":p.status,Ge.editing,(y=(f=t.commandOption)==null?void 0:f.onClickEditCommand)==null||y.call(f,c,p,d,m);break;case"accept":case"cancel":p.status,Ge.initial;break;case"remove":(h=(u=t.commandOption)==null?void 0:u.onClickDeleteCommand)==null||h.call(u,c,p,d,m);break}}function i(d){return d==="编辑"?Le.LocaleService.getLocaleValue("datagrid.commandColumn.edit"):d==="确定"?Le.LocaleService.getLocaleValue("datagrid.commandColumn.accept"):d==="取消"?Le.LocaleService.getLocaleValue("datagrid.commandColumn.cancel"):d==="删除"?Le.LocaleService.getLocaleValue("datagrid.commandColumn.remove"):d}function o(d,m){const{column:p}=d;return p.commands&&p.commands.map((c,s)=>s?e(c,m)&&r.createVNode(Bt,{class:"ml-1",type:c.type,size:c.size||"small",onClick:f=>n(c,f,m,d),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(c.text),r.createTextVNode(" ")]}):e(c,m)&&r.createVNode(Bt,{type:c.type,size:c.size||"small",onClick:f=>n(c,f,m,d),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(c.text),r.createTextVNode(" ")]}))}function l(d,m,p,c){var s,f,y;(s=m.onClick)==null||s.call(m,d,p.dataIndex,p),(y=(f=t.commandOption)==null?void 0:f.onHandleAction)==null||y.call(f,c,p,m,d)}function a(d,m){var s,f,y;const{column:p}=d;return((s=p==null?void 0:p.commands)==null?void 0:s.find(u=>u.command))?o(d,m):r.createVNode(yn,{data:p.commands,count:typeof((f=t.commandOption)==null?void 0:f.count)!="number"?2:(y=t.commandOption)==null?void 0:y.count,size:"small",placement:"auto",onClick:u=>{l(u.payload,u.button,m,d)}},null)}return{renderCommandColumn:a}}function Pn(t){const e=r.ref(t.minHeight),n=r.ref(t.minWidth),i=r.ref(t.height),o=r.ref(t.width),l=r.computed(()=>i.value<=0?0:Math.max(i.value,e.value)),a=r.computed(()=>o.value<=0?0:Math.max(o.value,n.value));return r.watch([()=>t.height,()=>t.width,()=>t.minHeight,()=>t.minWidth],([m,p,c,s])=>{e.value=Number(c),n.value=Number(s),i.value=Number(m),o.value=Number(p)}),{containerStyleObject:r.computed(()=>({height:l.value>0?`${l.value}px`:t.fit?"100%":"",width:a.value>0?`${a.value}px`:t.fit?"100%":"",flex:"1 1 0"}))}}function Nn(t){var l,a;const e=r.ref(((l=t.commandOption)==null?void 0:l.enable)||!1),n=r.ref(((a=t.commandOption)==null?void 0:a.commands)||[]),i=r.computed(()=>Le.LocaleService.getLocaleValue("datagrid.commandColumn.title"));function o(d){var m;if(e.value&&!(d.value.findIndex(c=>c.dataType===jt)>-1)){const c={field:Ot,title:i.value,width:kn,fixed:Vn,dataType:jt,commands:n.value,resizable:!1,halign:((m=t.commandOption)==null?void 0:m.halign)||"left",visible:!0,formatter:t.commandOption.formatter&&typeof t.commandOption.formatter?(s,f)=>t.commandOption.formatter(s,f):null};t.commandOption.formatter&&typeof t.commandOption.formatter!="function"&&(c.formatter=(s,f)=>t.commandOption.formatter(s,f)),d.value.push(c)}}return{applyCommands:o}}function Bn(t,e){var p;const n=r.ref((p=t.columnOption)==null?void 0:p.groups);function i(c,s,f,y,u){const h={actualWidth:0,children:[],depth:1,field:c.field,layer:1,left:0,parent:f,resizable:!0,title:c.title||"",status:Oe.none,popoverRef:r.ref(),showPopover:!1,column:null,sortType:"none"},w=y||h;if(c.group){let b=1;c.group.reduce((x,F)=>{if(typeof F=="string"){const T=s.get(F);T&&(u.fieldToRootMap.set(F,w),x.actualWidth+=T.actualWidth,x.children.push(T))}else{const T=i(F,s,x,w,u);b=Math.max(b,T.depth),x.actualWidth+=T.actualWidth,x.children.push(T)}return x},h),h.depth+=b}return e.value.headerDepth=Math.max(e.value.headerDepth,h.depth),h}function o(c){const s={groupedCells:new Map,fieldToRootMap:new Map};return n.value&&n.value.reduce((f,y)=>{const u=i(y,c,null,null,s);return f.groupedCells.set(y.field,u),f},s),s}function l(c){if(!c||c.length===0)return 0;const s=c[0];return s.children&&s.children.length>0&&(s.left=l(s.children)),s.left}function a(c,s){const f=e.value.headerDepth;c.forEach(y=>{y.layer=s?s.layer+1:1;const u=y.children&&y.children.length===0;y.depth=u?f-(y.layer-1):1,y.left=u?y.left:l(y.children),y.children&&a(y.children,y)})}function d(c,s){const f=new Map;return c.forEach(y=>{const u=s.fieldToRootMap.get(y.field),h=u!=null;h&&!f.has(u.field)&&f.set(u.field,u),h||f.set(y.field,y)}),a(Array.from(f.values())),f}function m(c){let s=new Map,f=0;if(c.reduce((y,u)=>{let h=Oe.none;h=u.sortable?h|Oe.sortable:h,h=u.filterable?h|Oe.filterable:h,h=u.sort&&u.sort!=="none"?h|Oe.sorted|(u.sort==="asc"?Oe.ascending:Oe.descending):h;const w=u.field;return y.set(w,{actualWidth:u.actualWidth||0,children:[],depth:1,layer:1,left:f,field:w,parent:null,resizable:u.resizable===void 0?!0:u.resizable,title:u.title,status:h,popoverRef:r.ref(),showPopover:!1,column:u,filterValue:null,sortType:u.sort||"none",showSetting:u.showSetting,draggable:u.draggable}),f+=u.actualWidth||0,y},s),n.value){const y=o(s);s=d(s,y)}return s}return{getGridHeaderCells:m}}function On(t,e){var v;const{sum:n,toFixed:i}=X.useNumberFormat(),{uuid:o}=X.useGuid(),{idField:l}=e,a=r.ref(t.summary),d=r.ref(t.group),m=r.ref(((v=t.group)==null?void 0:v.groupFields)||[]),p=r.computed(()=>{var C;return(C=t.group)==null?void 0:C.enable}),c=r.computed(()=>{var C;return(C=t.group)==null?void 0:C.showGroupPanel}),s=r.computed(()=>{const C=a.value;return(C==null?void 0:C.groupFields)||[]}),f=r.computed(()=>{const C=d.value;return C&&C.showSummary}),y=r.ref(0),u=new Map;let h=[];function w(C,g,S,M,E){const N=M[S];N&&(g.reduce((I,B,V)=>{var W;const _=B[N];let k=I.get(_);if(!k){const P=s.value.reduce((A,Y)=>(A.set(Y,0),A),new Map);k={field:N,title:((W=E.get(N))==null?void 0:W.title)||N,value:_,layer:S,details:[],groupSummaries:P},I.set(_,k)}return s.value&&s.value.forEach(P=>{if(k){const A=k.groupSummaries.get(P)||0;k.groupSummaries.set(P,n([A,X.resolveField(B,P)]))}}),s.value&&s.value.forEach(P=>{if(k){const A=k.groupSummaries.get(P)||0;k.groupSummaries.set(P,i(A,2))}}),k.details.push(B),I},C),S<M.length-1&&C.forEach((I,B)=>{I.nestGroup=new Map,w(I.nestGroup,I.details,S+1,M,E),I.details=[]}))}function b(C,g){return t.group&&t.group.formatter?t.group.formatter(C.value,{...C,total:g}):`${C.title}:${C.value} (${g})`}function x(C,g){const S=[];return C.forEach(M=>{const E={[l.value]:`group_of_${g?g[l.value]+"_":""}${M.field}_${M.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:M.field,__fv_data_grid_group_layer__:M.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:M.value,groupParents:[]};g&&(E.groupParents=[...g.groupParents,g]);let N=0;if(S.push(E),M.nestGroup){const I=x(M.nestGroup,E);S.push(...I),N+=I.length}if(M.details&&M.details.length&&(S.push(...M.details),N+=M.details.length),f.value){const I={__fv_data_grid_group_field__:M.field,__fv_data_grid_group_layer__:M.layer,__fv_data_grid_group_summary__:!0};I[l.value]=`summary_of_${M.field}_${M.value}`,I[M.field]=Array.from(M.groupSummaries.entries()).reduce((B,[V,_])=>`${B} ${V} total:${_} `,""),S.push(I)}M.groupSummaries&&M.groupSummaries.size&&M.groupSummaries.forEach((I,B)=>{E[B]=I}),E[M.field]=b(M,N),E.value=M.value}),S.forEach((M,E)=>{M.__fv_data_index__=E}),S}function F(C,g,S){return!C||C.length===0||!g.length?g:(C.join(","),u.clear(),h=[],g=g.filter(M=>!M.__fv_data_grid_group_row__),w(u,g,0,C,S),h=x(u),h)}function T(C){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":C.collapse}}return{collpaseGroupIconClass:T,generateGroupData:F,groupFields:m,shouldGroupingData:p,showGroupPanel:c,groupRowSize:y}}function Rt(t){const e="parent",n="layer",i="hasChildren",o=(a,d=1,m=[],p=null)=>(a=a||[],a.reduce((c,s)=>(s.id=s.id||s.data[t.idField],s[e]=p,s[n]=d,s[i]=s[i]===void 0?!1:s[i],s.data&&Object.keys(s.data).forEach(f=>{Object.keys(s).includes(f)||(s[f]=s.data[f])}),m.push(s),s.children&&s.children.length&&(s[i]=!0,o(s.children,d+1,m,s.id)),c),m),m);return{flatTreeData:o,isNestedTree:a=>a.some(d=>Array.isArray(d.children))}}function jn(t,e,n,i){const o=r.ref(0),l=r.ref(!!t.hierarchy),{idField:a}=i,{collapseField:d,hasChildrenField:m,parentIdField:p}=n,c=new Map,s=new Map,f=new Map,{flatTreeData:y,isNestedTree:u}=Rt(t);function h(O,j){s.clear(),O.reduce((z,G)=>{const ee=G[p.value]!==void 0?G[p.value]:"";if(ee&&j.has(ee)){const ce=j.get(ee),ue=isNaN(Number(ce.__fv_layer__))?1:Number(ce.__fv_layer__);G.__fv_layer__=ue+1,G.__fv_parent_index__=ce.__fv_index__,ce.__fv_hasChildren__=!0}else G.__fv_layer__=1;const se=z.has(ee)?z.get(ee):[];return se.push(G),z.set(ee,se),z},s)}function w(O){f.clear(),O.reduce((j,z)=>{const G=z[a.value];return j.set(G,z),j},f)}function b(O){O.forEach(j=>{const z=j[a.value];j.__fv_children_index__.map(ee=>O[ee]).forEach(ee=>{ee.__fv_parents__=new Map([...j.__fv_parents__.entries(),[z,!0]])})})}function x(O){O.forEach(j=>{const z=new Set(j.__fv_children_index__);j.__fv_children_index__=[...z].sort((G,ee)=>G-ee)})}function F(O){O.forEach(j=>{const z=j.__fv_parents__;Array.from(z.keys()).map(G=>f.get(G)).forEach(G=>{G.__fv_children_index__.push(j.__fv_index__)})}),x(O)}function T(O){O.forEach(j=>{j.__fv_child_with_lines__=[],j.__fv_child_length__=j.__fv_descendant_index__.length,j.__fv_descendant_index__.map(z=>O[z]).reduce((z,G)=>(z.__fv_child_length__+=G.__fv_children_index__.length,z.__fv_child_with_lines__.push(...G.__fv_children_index__,G.__fv_index__),z),j)})}function v(O,j){return{id:O,index:j,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function C(O,j,z){Array.from(j.keys()).forEach(G=>{j.get(G).reduce((se,ce)=>{const ue=ce[a.value],pe=O.get(ce[a.value]),me=O.get(G),Pe=z.get(G);return me&&Pe&&(me.children.set(ue,pe),me.children.set(ue,pe),pe.parentId=G,pe.parentIndex=me.index,pe.parents.set(G,me)),se},O)})}function g(O){O.children.forEach(z=>{z.parents=new Map([...O.parents.entries(),[O.id,O]]),g(z)})}function S(O,j){O.filter(z=>z[p.value]===void 0||z[p.value]==="").forEach(z=>{const G=z[a.value],ee=j.get(G);g(ee)})}function M(O){Array.from(O.values()).forEach(j=>{Array.from(j.parents.values()).forEach(z=>{z.descendant.set(j.id,j)})})}function E(O){c.clear(),O.forEach((j,z)=>{const G=j[a.value];c.set(G,v(G,z))}),w(O),h(O,f),C(c,s,f),S(O,c),M(c)}function N(O){const j=O[a.value],z=c.get(j);return z&&z.children.size>0}function I(O){return O[m.value]&&!N(O)}function B(O){const j=O[a.value],z=c.get(j);return z&&z.visibleInHierarchy}function V(){o.value=Date.now()}function _(O,j){j.forEach(z=>{const G=c.get(z[a.value]),ee=c.get(O),se=f.get(O);ee&&se&&(G.visibleInHierarchy=!se[d.value]&&ee.visibleInHierarchy)}),V()}function k(O){if(s.has(O)){const z=s.get(O);_(O,z),z.map(G=>G[a.value]).forEach(G=>k(G))}}function W(O){const j=O[a.value];k(j)}function P(O,j,z=0){O.forEach(G=>{const ee=I(G),se=G.__fv_layer__<=z,ce=j==="ToCollapse"?G.__fv_layer__<=z:!(G.__fv_layer__<=z),ue=se?ce:G[d.value];G[d.value]=ee||ue});for(const[G,ee]of s.entries())_(G,ee);return O}function A(O,j){P(O,"ToCollapse",j)}function Y(O,j){P(O,"ToExpand",j)}function J(O){O.forEach((j,z)=>{var ce;const G=j[a.value],ee=s.has(G)?(ce=s.get(G))==null?void 0:ce.map(ue=>ue.__fv_index__):[],se=v(G,z);j.__fv_graph_node__=se,j.__fv_children_index__=ee,j.__fv_descendant_index__=[...ee],j.__fv_parents__=new Map,I(j)&&(j[d.value]=!0)})}function oe(O){var G,ee;E(e.value),J(O),b(O),F(O),t.showLines&&T(O);const z=((G=t.hierarchy)==null?void 0:G.collapseTo)!==void 0?Number((ee=t.hierarchy)==null?void 0:ee.collapseTo):0;return P(O,"ToCollapse",z),O}function _e(O,j,z){const ee=z.value[O][a.value],se=c.get(ee);if(se){const ce=c.get(se.parentId);let ue=z.value.length-1;if(ce){const pe=Array.from(ce.children.keys()).indexOf(se.id);if(pe===ce.children.size-1){const Pe=Array.from(ce.descendant.values())[ce.descendant.size-1];ue=z.value.findIndex(we=>we[a.value]===Pe.id)+1}else{const Pe=Array.from(ce.children.values())[pe+1];ue=z.value.findIndex(we=>we[a.value]===Pe.id)}j[m.value]=!1,j[p.value]=ce.id,z.value.splice(ue,0,j)}else z.value.splice(ue,0,j)}}function Ce(O,j,z){const G=z.value[O],ee=G[a.value];if(c.get(ee)){const ue=z.value.findIndex(pe=>pe[a.value]===ee)+1;G[m.value]=!0,G[d.value]=!1,j[m.value]=!1,j[p.value]=ee,z.value.splice(ue,0,j)}}function xe(O,j,z){const ee=z.value[O][a.value];if(c.get(ee)){const ue=z.value.findIndex(me=>me[a.value]===ee)+1;let pe=j;u(j)&&(pe=y(j)),pe.forEach(me=>{me[p.value]=ee}),z.value.splice(ue,0,...pe)}}function R(O,j){const z=O[a.value],G=c.get(z),ee=Array.from(G.descendant.keys());ee.unshift(z);const se=c.get(G.parentId);if(se&&(se.children.delete(z),se.children.size===0)){const ue=j.find(pe=>pe[a.value]===G.parentId);ue[m.value]=!1,ue[d.value]=!1}return j.filter(ue=>ee.indexOf(ue.id)===-1)}return{checkVisibleInHierarchy:o,collapseTo:A,expandTo:Y,generateHierarchyData:oe,hasRealChildren:N,insertSibling:_e,insertChild:Ce,insertChildren:xe,isVisibleInTree:B,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:W,trimmedOriginalData:R}}function Rn(t,e,n,i,o){const{toNumber:l,sum:a,toFixed:d}=X.useNumberFormat(),m=new Map,p=new Map,c=new Map,s=new Map,f=new Map,y=r.ref([]),u=r.ref([]),h=On(t,o),{generateGroupData:w,groupFields:b,shouldGroupingData:x}=h,F=r.ref(t.data||[]),T=jn(t,F,i,o),{collapseTo:v,expandTo:C,generateHierarchyData:g,hasRealChildren:S,insertSibling:M,insertChild:E,insertChildren:N,isVisibleInTree:I,shouldStratifyData:B,toggleChildrenVisibiltyByCollapseStatus:V,trimmedOriginalData:_,checkVisibleInHierarchy:k}=T,{idField:W,reviseIdentifyField:P}=o,A=r.ref(t.newDataItem),Y=r.ref(t.data||[]),J=r.ref(t.data),{flatTreeData:oe,isNestedTree:_e}=Rt(t);if(t.hierarchy&&_e(t.data)){const H=oe(t.data);F.value=H,Y.value=H,J.value=H}const Ce=r.ref(t.summary),xe=r.computed(()=>{const H=Ce.value;return(H==null?void 0:H.groupFields)||[]});let R=new Map;const O=r.ref(Y.value.length),j=r.ref(t.pagination);function z(){return j.value&&j.value.enable&&j.value.size>0?j.value.size:Y.value.length}const G=r.ref(1),ee=r.computed(()=>j.value&&j.value.enable&&j.value.mode!=="server"),se=r.computed(()=>j.value&&j.value.enable&&j.value.mode==="server"),ce=new wt.FNotifyService;function ue(H,Z){const te=Math.ceil(H.length/Z);let ae=0;const Fe=[],Be=[],Ye=[];for(;ae<te;){const Ae=H.slice(ae*Z,(ae+1)*Z),Xe=w(b.value,Ae,e);Be[ae]=Xe.filter(ge=>ge.__fv_data_grid_group_row__).length,Fe.push(...Xe),ae++}return Be.reduce((Ae,Xe,ge)=>(Ae=Ae+Xe,Ye.push(Ae),Ae),0),{groupData:Fe,groupRowSizeList:Be,accumulateGroupRowSize:Ye}}function pe(){var Xe;Y.value=F.value,ee.value&&(O.value=Y.value.length),x.value&&!ee.value&&(Y.value=w(b.value,F.value,e)),R=xe.value.reduce((ge,Te)=>(ge.set(Te,0),ge),R);const H=0,Z=z(),te=(G.value-1)*Z;let Fe=te>Y.value.length-1||se.value?H:te,Be=se.value?Y.value.length:Math.min(Fe+Z,Y.value.length);if(x.value&&ee.value){const{accumulateGroupRowSize:ge,groupData:Te,groupRowSizeList:Ve}=ue(F.value,Z);Y.value=Te;const $e=Ve[G.value-1];Fe+=G.value-2<0?0:ge[G.value-2],Be=Fe+Z+$e}let Ye=0;const Ae=[];if(Y.value.length){P(Y.value);const ge=W.value!==t.idField;for(let Te=Fe;Te<Be;Te++){const Ve=Y.value[Te];Ve.__fv_data_grid_group_row__?(Ye=0,Ve.__fv_data_index__=""):Ve.__fv_data_grid_group_summary__?Ve.__fv_data_index__="":(Ye++,Ve.__fv_data_index__=Ye+(G.value-1)*Z),Ve.__fv_index__=Te,Ve.__fv_visible_index__=Te,t.rowOption&&t.rowOption.disabledField&&(Ve.__fv_disabled__=Ve[(Xe=t.rowOption)==null?void 0:Xe.disabledField]),ge&&(Ve[W.value]=Te),xe.value.forEach($e=>{const Pt=R.get($e)||0;R.set($e,a([Pt,X.resolveField(Ve,$e)||0]))}),Ae.push(Ve)}}return B.value&&g(Ae),xe.value.forEach(ge=>{const Te=R.get(ge)||0;R.set(ge,d(Te,2))}),J.value=[...Ae],Ae}const me=r.ref(pe()),Pe=r.computed(()=>(k.value,me.value.filter(H=>B.value?H.__fv_visible__!==!1&&I(H):H.__fv_visible__!==!1)));function qe(){Pe.value.forEach((Z,te)=>(Z.__fv_visible_index__=te,Z))}function we(H,Z,te=!1){var Xe;const ae=te?pe():[...J.value];let Fe=ae;((Xe=t.filter)==null?void 0:Xe.mode)!=="server"&&(Fe=ae.filter(ge=>n.apply(ge)));const Be=H&&H.length?Fe.filter(ge=>H.reduce((Te,Ve)=>Te&&Ve.filter(ge),!0)):Fe,Ye=Z&&Z.length?Be.sort((ge,Te)=>{const Ve=[...Z],$e=Ve.shift(),Pt=X.resolveField(ge,$e.field)===void 0||X.resolveField(ge,$e.field)===null?"":X.resolveField(ge,$e.field),Vr=X.resolveField(Te,$e.field)===void 0||X.resolveField(Te,$e.field)===null?"":X.resolveField(Te,$e.field);let Nt=$e.compare(Pt,Vr);for(;Nt===0&&Ve.length!==0;){const Ke=Ve.shift();if(Ke){const Er=X.resolveField(ge,Ke.field)===void 0||X.resolveField(ge,Ke.field)===null?"":X.resolveField(ge,Ke.field),Ir=X.resolveField(Te,Ke.field)===void 0||X.resolveField(Te,Ke.field)===null?"":X.resolveField(Te,Ke.field);Nt=Ke.compare(Er,Ir)}}return Nt}):Be,Ae=z();return me.value=Ye.map((ge,Te)=>{if(ge.__fv_data_grid_group_row__){const Ve=`group_of_${ge.__fv_data_grid_group_field__}_${ge.__fv_data_grid_group_value__}`;ge.__fv_data_grid_group_collapse__=!!m.get(Ve)}return ge.__fv_index__=Te,ge.__fv_visible_index__=Te,ge.__fv_data_index__=Te+1+(G.value-1)*Ae,ge}),me.value}function L(H){return f.clear(),u.value=H,u.value.reduce((Z,te)=>(Z.set(te.field,te),Z),f),we([],u.value)}function Q(H,Z){return f.set(H,Z),u.value=Array.from(f.values()),we([],u.value)}function U(H){return f.delete(H),u.value=Array.from(f.values()),we([],u.value)}function ye(H,Z){return p.set(H,Z),y.value=Array.from(p.values()),we([],Array.from(f.values()))}function be(H){return p.delete(H),y.value=Array.from(p.values()),we([],Array.from(f.values()),!0)}function Re(){return p.clear(),y.value=[],we([],Array.from(f.values()),!0)}function Ze(H,Z,te){const ae=`group_of_${H}_${Z}`;m.set(ae,!0);const Fe=Be=>Be[H]!==Z;return c.set(`collapse_${H}_${Z}`,{field:H,fieldName:H,fieldType:"string",filterValue:Z,filter:Fe}),we(Array.from(c.values()),Array.from(f.values()))}function st(H){v(me.value,H)}function dt(H){C(me.value,H)}function q(H,Z,te){const ae=`group_of_${H}_${Z}`;return m.set(ae,!1),c.delete(`collapse_${H}_${Z}`),we(Array.from(c.values()),Array.from(f.values()),!0)}function re(H){const Z=H.raw[W.value],te=ae=>!ae.__fv_parents__.has(Z);s.set(`fold_${Z}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(Z),filter:te}),we(Array.from(s.values()),Array.from(f.values())),g(me.value)}function he(H){const Z=H[W.value];s.delete(`fold_${Z}`)}function Me(H){he(H.raw),we(Array.from(s.values()),Array.from(f.values()),!0),g(me.value)}function ke(){const H=pe();me.value=H,we(Array.from(s.values()),Array.from(f.values())),t.hierarchy&&g(me.value)}function Ft(H){const te=t.hierarchy&&_e(H)?oe(H):H;F.value=te,ke()}function Tt(H,Z,te){return(H&&H.length?me.value.filter((Fe,Be)=>H.reduce((Ye,Ae)=>Ye&&Ae.filter(Fe),!0)):me.value).slice(Z,te)}function _t(H){const Z=z(),te=Math.ceil(O.value/Z);0<=H&&H<=te&&(G.value=H,ke())}function yt(H){F.value.push(je.cloneDeep(H)),me.value=pe()}function vt(H=0){if(!(H>-1))return!1;const te=A.value();return t.hierarchy?M(H,te,F):F.value.splice(H,0,te),ke(),te}function kt(H=0){if(!(H>-1&&t.hierarchy))return!1;const te=A.value(),ae=F.value[H];he(ae),E(H,te,F),ke()}function ct(H,Z=0){if(!(Z>-1&&t.hierarchy))return!1;const ae=F.value[Z];he(ae),N(Z,H,F),ke()}function Vt(H){const Z=H?H-1:0;F.value.splice(Z,1),ke()}function bt(H){const Z=F.value.findIndex(te=>te[W.value]===H);Z!==-1&&(F.value.splice(Z,1),ke())}function Et(H){const Z=H>-1?F.value[H]:null;if(!(Z&&Z.deletable!==!1))return!1;F.value=_(Z,F.value),ke()}function It(){const H=c.size>0?Array.from(c.values()):[];return we(H,Array.from(f.values()))}function ut(H){j.value.size=H}function D(H){j.value&&(ut(H),ke())}function K(H,Z){const te=F.value[Number(H)-1];te.editable!==!1?(te.name=Z,ke()):ce.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function ne(H){return H.map(te=>{const ae=J.value.findIndex(Fe=>""+Fe[W.value]==""+te);return ae>-1?J.value[ae]:null}).filter(te=>te!=null)}function fe(){const H=t.summary.groupFields;R=H.reduce((Z,te)=>(Z.set(te,0),Z),R);for(const Z of Y.value)H.forEach(te=>{const ae=R.get(te)||0;R.set(te,a([ae,X.resolveField(Z,te)||0]))});H.forEach(Z=>{const te=R.get(Z)||0;R.set(Z,d(te,2))})}function Se(H){const Z=t.summary.groupFields;R=Z.reduce((te,ae)=>(te.set(ae,0),te),R);for(const te of H)Z.forEach(ae=>{const Fe=R.get(ae)||0;R.set(ae,a([Fe,X.resolveField(te.raw,ae)||0]))});Z.forEach(te=>{const ae=R.get(te)||0;R.set(te,d(ae,2))})}return{addFilter:ye,addNewDataItem:yt,addSorter:Q,updatePageSize:ut,changePageSizeTo:D,collapse:Ze,collapseTo:st,dataView:me,editDataItem:K,expand:q,expandTo:dt,filters:y,fold:re,getRange:Tt,getSelectionItems:ne,hasRealChildren:S,insertNewChildDataItem:kt,insertNewChildDataItems:ct,insertNewDataItem:vt,isVisibleInTree:I,load:Ft,navigatePageTo:_t,pageIndex:G,rawView:J,refresh:It,removeAllFilter:Re,removeDataItem:Vt,removeDataItemById:bt,removeFilter:be,removeHierarchyDataItem:Et,removeSorter:U,reOrderVisibleIndex:qe,setSorters:L,sorters:u,summaries:R,updateSummary:fe,toggleChildrenVisibiltyByCollapseStatus:V,totalItems:O,unFold:Me,updateDataView:ke,visibleDataItems:Pe,shouldGroupingData:x,pagination:j,updateVisibleDataSummary:Se}}const An=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Ln={equal:(t,e,n)=>t&&t[e]===n,notEqual:(t,e,n)=>t&&t[e]!==n,contain:(t,e,n)=>t?(t[e]||"").indexOf(n)>-1:!1,startWidth:(t,e,n)=>t?(t[e]||"").startsWith(n):!1,endWidth:(t,e,n)=>t?(t[e]||"").endsWith(n):!1},Hn={equal:(t,e,n)=>t&&t[e]===n,in:(t,e,n)=>{if(t){const i=t[e];return n.indexOf(i)>-1}return!1},notEqual:(t,e,n)=>t&&t[e]!==n},$n={equal:(t,e,n)=>{if(t){const i=new Date(n).getTime();return new Date(t[e]).getTime()===i}return!1},notEqual:(t,e,n)=>{if(t){const i=new Date(n).getTime();return new Date(t[e]).getTime()!==i}return!1},greaterThan:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<=i}return!1}},Wn={equal:(t,e,n)=>t?String(n).split(",").includes(String(t[e])):!1,in:(t,e,n)=>{if(t){const i=t[e];return n.indexOf(i)>-1}return!1},notEqual:(t,e,n)=>t?String(n).split(",").findIndex(o=>o===String(t[e]))===-1:!1},zn={equal:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):i===o}return!1},notEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?!0:i!==o}return!1},greaterThan:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o>i}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o>=i}return!1},lessThan:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o<i}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o<=i}return!1}},qn=new Map([["boolean",Hn],["datetime",$n],["enum",Wn],["number",zn],["text",Ln]]);function Gn(t,e){const n=r.ref([]),i=new Map,{loadConditionGroup:o}=de.useCondition();function l(T,v){switch(T){case"check-box":return new de.CheckBoxValue({value:v});case"combo-list":return new de.ComboListValue({value:v});case"combo-lookup":return new de.ComboLookupValue({value:v});case"input-group":return new de.TextValue({value:v});case"date-picker":return new de.DatePickerValue({value:v});case"date-range":return new de.DateRangeValue({value:v});case"datetime-picker":return new de.DateTimePickerValue({value:v});case"datetime-range":return new de.DateRangeValue({value:v});case"lookup":return new de.TextValue({value:v});case"month-picker":return new de.MonthPickerValue({value:v});case"month-range":return new de.MonthRangeValue({value:v});case"number-range":return new de.NumberRangeValue({value:v});case"number-spinner":return new de.NumberSpinnerValue({value:v});case"radio-group":return new de.RadioGroupValue({value:v});default:return new de.TextValue({value:v})}}const a=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),d=new Map([["boolean",de.CompareType.Equal],["date",de.CompareType.Equal],["datetime",de.CompareType.Equal],["number",de.CompareType.Equal],["string",de.CompareType.Equal],["text",de.CompareType.Equal],["enum",de.CompareType.In],["reference",de.CompareType.Equal]]);function m(){n.value.forEach((v,C)=>{C===n.value.length-1?v.relation=0:v.relation=1});const T=[];return n.value.forEach(v=>{const{valueType:C}=v.value,g=v.value.value;if(C==="boolean"){const S=[];g.length===1&&S.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value[0],relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:de.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null}),g.length>1&&S.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value[0],relation:2,expresstype:de.ValueType.Value,lbracket:v.lBracket?v.lBracket+"(":"(",rbracket:v.rBracket||null},{filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value[1],relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:de.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket?v.rBracket+")":")"}),T.push(...S)}else T.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value,relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:de.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null})}),T}function p(T){var C;const v=T.dataType||"string";return((C=T.editor)==null?void 0:C.type)||a.get(v)||"text"}function c(T){var V,_,k,W,P;const v=`field_filter_${T.field}`,C=Date.now(),g=T.field,S=((V=T.column)==null?void 0:V.title)||"",M=((_=T.column)==null?void 0:_.dataType)||"string",E=d.get(M)||de.CompareType.Equal,N=((W=(k=T.column)==null?void 0:k.editor)==null?void 0:W.type)||a.get(M)||"text",I=l(N,(P=T.column)==null?void 0:P.filter),B=N==="lookup"||N==="combo-lookup"?de.ValueType.SmartHelp:N==="combo-list"?de.ValueType.Enum:de.ValueType.Value;i.set(v,{id:v,fieldCode:g,fieldName:S,compareType:E,valueType:B,value:I,conditionId:C,relation:1}),n.value=Array.from(i.values())}function s(T){const v=`field_filter_${T.field}`;i.delete(v),n.value=Array.from(i.values())}function f(T){i.delete(T),n.value=Array.from(i.values())}function y(){i.clear(),n.value=[]}function u(T){const{valueType:v}=T.value,C=T.compareType||"0",g=An[Number(C)];return qn.get(v)[g]}function h(T){const v=T.relation===2?0:1,C=T.items.map(S=>{const M=u(S);return N=>M(N,S.fieldCode,S.value.getValue())}),g=T.children&&T.children.length?T.children.map(S=>h(S)):[];return{relation:v,filterFunctions:C,children:g}}function w(){const T=o(n.value);return h(T)}function b(T,v){const C=v.filterFunctions.map(S=>S(T)),g=v.children.map(S=>b(T,S));return v.relation===1?C.every(S=>S)&&g.every(S=>S):C.includes(!0)||g.includes(!0)}function x(T){const v=w();return b(T,v)}function F(T){e.emit("filterChanged",T)}return{addColumnFilter:c,apply:x,clearCondition:y,conditions:n,getFilterEditorType:p,removeColumnFilter:s,removeCondition:f,filterFromServer:F,createFilterConditions:m}}function Un(t){r.ref(t.selection.showCheckbox||!1);const e=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),n=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),i=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.parentIdField)||"parent"}),o=r.computed(()=>t.hierarchy&&t.selection.showCheckbox),l=r.computed(()=>(t.treeNodeIconsData.fold||t.iconField)&&t.showTreeNodeIcons);return{collapseField:e,hasChildrenField:n,parentIdField:i,shouldShowCheckBox:o,shouldShowIcon:l}}function Dn(t,e,n,i,o,l,a,d,m){var ut;const{dataView:p,visibleDataItems:c}=e,{getVisualData:s,maxVisibleRowIndex:f,minVisibleRowIndex:y}=o,u=r.computed(()=>i.value.primaryColumnsWidth),h=r.computed(()=>i.value.leftColumnsWidth),w=r.computed(()=>i.value.rightColumnsWidth),b=((ut=t.rowOption)==null?void 0:ut.height)||28,x=r.ref(0),F=r.ref(0);let T=0,v=l.value-1;const C=r.ref(0),g=r.ref(0),S=r.ref(0),M=r.ref(t.virtualized),E=24,N=1.5;let I=null,B=null,V=null;function _(){const D=c.value;if(D.length<=0)return 0;const K=f.value<D.length?D[f.value]:D[D.length-1];return K.__fv_data_position__>D.length*b?D.length*b:(K.__fv_data_position__||0)+(K.__fv_data_height__||0)+Math.max(D.length-1-f.value,0)*b}const k=r.computed(()=>{const D=_();let K=g.value/Math.max(D,g.value),ne=Math.floor(K*g.value);for(;g.value>0&&ne<E;)K*=N,ne=Math.floor(K*g.value);return ne}),W=r.computed(()=>Math.floor(S.value/Math.max(u.value,S.value)*C.value)),P=0,A=0,Y=r.computed(()=>C.value-(h.value+u.value+w.value+d.value));function J(D){const ne=Math.floor(D/b)+1,fe=c.value;return fe.length>ne?fe[ne].__fv_visible_index__-1:0}function oe(D,K,ne){let fe=D,Se=K;const H=K-D+1;if(H<a+l.value+a){const Z=a+l.value+a-H,te=K+Z<=ne,ae=0+Z<=D;if(te)Se+=Z,v=Se;else if(ae)fe-=Z,T=fe;else{const Fe=ne-K,Be=Z-Fe;Se=Math.min(K+Fe,ne),fe=Math.max(D-Be,0)}}return{actualStart:fe,actualEnd:Se}}function _e(D){var Fe,Be;const K=c.value;if(!K.length){n.value=[];return}const ne=(Fe=t.pagination)!=null&&Fe.enable?0:Math.max(T-a,0),fe=K[K.length-1].__fv_visible_index__,Se=(Be=t.pagination)!=null&&Be.enable?K.length-1:Math.min(v+a,fe),{actualStart:H,actualEnd:Z}=oe(ne,Se,fe),te=K[H-1],ae=s(H,Z,te,D);ae.length&&(n.value=[...ae])}const Ce=r.computed(()=>_()>g.value),xe=r.computed(()=>Math.floor(u.value)>S.value);function R(D,K){let ne=D;const fe=ne>P,Se=Ce.value;Se&&ne<g.value-K&&(ne=g.value-K),(!Se||fe)&&(ne=P),x.value!==ne&&(x.value=ne)}function O(){M.value&&(T=J(Math.abs(x.value)),v=T+l.value-1,(T<y.value||v>f.value-a/2)&&_e())}function j(D){let K=x.value+D;K>P&&(K=P);const ne=_();R(K,ne),O()}function z(D){if(!xe.value){F.value=0;return}let K=F.value+D;K>A&&(K=A),K<Y.value&&(K=Y.value),F.value!==K&&(F.value=K)}function G(){Math.abs(F.value)+S.value>u.value&&(F.value=Math.min(S.value-u.value,0))}function ee(){x.value=0,T=0,v=l.value-1,_e()}function se(){const D=_();R(x.value,D)}r.watch([S,u],()=>{z(0)}),r.watch(g,(D,K)=>{D!==K&&D>=p.value.length*b&&j(0)});function ce(D){let{deltaX:K}=D,ne=-1*D.deltaY;return typeof K>"u"&&(K=-1*D.wheelDeltaX/6),typeof ne>"u"&&(ne=D.wheelDeltaY/6),D.deltaMode&&D.deltaMode===1&&(K*=10,ne*=10),D.shiftKey?{deltaY:-ne,deltaX:-K}:{deltaX:K,deltaY:ne}}function ue(D){if(t.disabled||!Ce.value||D.target.tagName==="TEXTAREA")return;D.preventDefault(),D.stopPropagation();const{deltaX:K,deltaY:ne}=ce(D);j(ne),z(K)}const pe=r.computed(()=>({height:`${p.value.length*b}px`,width:`${h.value}px`,transform:`translateY(${x.value}px)`})),me=r.computed(()=>({transform:`translateY(${x.value}px)`})),Pe=r.computed(()=>({height:`${(t.autoHeight?c.value:p.value).length*b}px`,width:`${u.value}px`,transform:`translate(${F.value}px, ${x.value}px)`})),qe=r.computed(()=>({transform:`translate(${F.value}px, ${x.value}px)`})),we=r.computed(()=>({height:`${p.value.length*b}px`,width:`${w.value}px`,transform:`translateY(${x.value}px)`})),L=r.computed(()=>({transform:`translateY(${x.value}px)`})),Q=r.computed(()=>({height:`${p.value.length*b}px`,width:`${d.value}px`,transform:`translateY(${x.value}px)`})),U=r.computed(()=>({width:`${h.value}px`})),ye=r.computed(()=>({transform:`translateX(${F.value}px)`})),be=r.computed(()=>({width:`${w.value}px`})),Re=r.computed(()=>{const D=_();return R(x.value,D),x.value/(g.value-D)*(g.value-k.value)}),Ze=r.computed(()=>({width:"8px",height:`${k.value}px`,top:`${Re.value}px`,backgroundColor:"#cccccc !important"})),st=r.computed(()=>F.value/Y.value*(C.value-W.value)),dt=r.computed(()=>({height:"8px",width:`${W.value}px`,left:`${st.value}px`,backgroundColor:"#cccccc !important"})),q=r.ref(!1),re=r.ref(-1),he=r.ref(-1),Me=r.ref();function ke(D){if(D instanceof MouseEvent?D.pageX:D.touches[0].pageX,q.value&&he.value!==-1){const K=he.value-D.pageX,ne=C.value-W.value;if(Math.abs(K)<=ne){const fe=K/(S.value-W.value)*(u.value-S.value);z(fe),he.value=D.pageX}}}function Ft(D){if(q.value&&re.value!==-1){const K=re.value-D.pageY,ne=_(),fe=ne-k.value;if(Math.abs(K)<=fe){const Se=K/(g.value-k.value)*(ne-g.value);j(Se),re.value=D.pageY}}}function Tt(D){const{pageX:K,pageY:ne}=D.touches[0];if(q.value&&he.value!==-1){const fe=he.value-K,Se=C.value-W.value;if(Math.abs(fe)<=Se){const H=fe/(S.value-W.value)*(u.value-S.value);z(H),he.value=K}}}function _t(D){const{pageX:K,pageY:ne}=D.touches[0];if(q.value&&re.value!==-1){const fe=re.value-ne,Se=_(),H=Se-k.value;if(Math.abs(fe)<=H){const Z=fe/(g.value-k.value)*(Se-g.value);j(Z),re.value=ne}}}function yt(D){q.value=!1,re.value=-1,he.value=-1,document.removeEventListener("mouseup",yt),I&&(document.removeEventListener("mousemove",I),I=null),document.body.style.userSelect="",Me.value&&(Me.value.style.opacity=null)}function vt(D){q.value=!1,re.value=-1,he.value=-1,document.removeEventListener("touchend",vt),B&&(document.removeEventListener("touchmove",B),B=null),V&&(document.removeEventListener("touchmove",V),B=null),document.body.style.userSelect="",Me.value&&(Me.value.style.opacity=null)}function kt(D,K,ne){var te;q.value=!0;const fe=(te=D.target)==null?void 0:te.parentElement;fe&&(fe.style.opacity="1",Me.value=fe);const Se=ne==="horizontal"?ke:je.throttle(Ft,50);I||(I=Se);const{pageX:H}=D,{pageY:Z}=D;ne==="vertical"&&(re.value=D.pageY),ne==="horizontal"&&(he.value=D.pageX),K.value&&(K.value,document.addEventListener("mousemove",I),document.addEventListener("mouseup",yt),document.body.style.userSelect="none")}function ct(D){const{pageX:K,pageY:ne}=D.touches[0],fe=Math.abs(K-he.value),Se=Math.abs(ne-re.value);Se>fe&&Se>5?(V||(V=je.throttle(_t,50)),document.addEventListener("touchmove",V),document.removeEventListener("touchmove",ct)):fe>Se&&fe>5&&(B||(B=Tt),document.addEventListener("touchmove",B),document.removeEventListener("touchmove",ct)),he.value=K,re.value=ne}function Vt(D,K){var H;q.value=!0;const ne=(H=D.target)==null?void 0:H.parentElement;ne&&(ne.style.opacity="1",Me.value=ne);const{pageX:fe,pageY:Se}=D.touches[0];he.value=fe,re.value=Se,K.value&&(K.value,document.addEventListener("touchmove",ct),document.addEventListener("touchend",vt),document.body.style.userSelect="none")}function bt(D){const K=p.value.length*b-g.value;let ne=D*b;ne>=K&&(ne=K),j(-ne-x.value)}function Et(){bt(p.value.length)}function It(D){j(D-x.value)}return{dataGridWidth:C,fitHorizontalScroll:G,gridDataStyle:Pe,gridHeaderColumnsStyle:ye,gridMergedDataStyle:qe,gridSideStyle:Q,horizontalScrollThumbStyle:dt,leftFixedGridDataStyle:pe,leftFixedGridHeaderColumnsStyle:U,leftFixedGridMergedDataStyle:me,offsetX:F,offsetY:x,onMouseDownScrollThumb:kt,onWheel:ue,reCalculateVisualDataRows:_e,resetScroll:ee,rightFixedGridDataStyle:we,rightFixedGridHeaderColumnsStyle:be,rightFixedGridMergedDataStyle:L,shouldShowHorizontalScrollbar:xe,shouldShowVirticalScrollbar:Ce,updateVirticalScroll:se,updateVisibleRowsOnLatestVisibleScope:O,verticalScrollThumbStyle:Ze,viewPortWidth:S,viewPortHeight:g,scrollToBottom:Et,scrollToRowByIndex:bt,scrollTo:It,onTouchstartScrollThumb:Vt}}function Yn(t){var l;const{isUndefined:e}=X.useCommonUtils(),n=((l=t.rowOption)==null?void 0:l.height)||28;function i(a,d){const m=a.pre;if(m){let p=m.__fv_data_position__,c=m.__fv_data_height__;(e(p)||t.virtualized&&t.hierarchy&&m.__fv_visible_index__*n!==p)&&(p=m.__fv_visible_index__*n),e(c)&&(c=n);const s=a.visible?p+c:m.__fv_data_position__;a.top=s,d.__fv_data_position__=s}else a.top=0,d.__fv_data_position__=0}function o(a,d,m){if(a&&!d.ref){d.ref=a;const p=d.parent;d.cellHeight!==a.offsetHeight&&(d.cellHeight=a.offsetHeight),d.cellHeight&&d.cellHeight>(p.height||0)&&(p.height=d.cellHeight,m.__fv_data_height__=p.height),i(p,m)}!a&&d.ref&&(d.ref=a)}return{updateRowPosition:i,updateVisualInfomation:o}}function Xn(){function t(e,n){var a,d;if(!n.data||!n.data.length)return"";const i=Object.prototype.hasOwnProperty.call(n,"valueField")&&n.valueField||"value",o=Object.prototype.hasOwnProperty.call(n,"textField")&&n.textField||"name";if(typeof e=="string"&&(e!=null&&e.includes(","))){const m=e.split(",");if(!n.data.filter(f=>m.includes(f[i])).length)return"";const c=(a=n.data)==null?void 0:a.reduce((f,y)=>(f[y[i]]=y,f),{});return m.map(f=>{var y;return(y=c[f])==null?void 0:y[o]}).join(",")||e}const l=(d=n.data)==null?void 0:d.find(m=>m[i]===e);return(l==null?void 0:l[o])||e||""}return{renderEnumColumn:t}}function Zn(){function t(e,n){return e?n==null?void 0:n.trueText:n==null?void 0:n.falseText}return{renderText:t}}function Jn(){const{formatTo:t}=X.useDateFormat();function e(i,o){if(i){let l="yyyy-MM-dd";if(typeof o=="string"?l=o:typeof o=="object"&&(l=o.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof o=="object"&&o.dateRange){const a=o.dateRangeDatesDelimiter||"~";let[d,m]=i.split(a);return d=t(d,l),m=t(m,l),d+a+m}return t(i,l)}return i}function n(i,o){const l=o.dateFormat||"yyyy-MM-dd";return t(i,l)}return{renderDateColumn:n,renderDateTimeColumn:e}}function Qn(){const{formatTo:t}=X.useNumberFormat();function e(n,i){const o={precision:i.precision,prefix:i.prefix||"",suffix:i.suffix||"",decimalSeparator:i.decimal||".",groupSeparator:i.thousand||""};return t(n,o)||n}return{renderNumberColumn:e}}function Kn(){function t(e,n){if(e){const i={};return n!=null&&n.width&&(i.width=`${n.width}px`),n!=null&&n.height&&(i.height=`${n.height}px`),r.createVNode("img",{src:e,style:i},null)}return e}return{renderImageColumn:t}}function ei(){function t(e,n){const i=Le.LocaleService.getLocale();return(e==null?void 0:e[i||"zh-CHS"])||""}return{renderMultilingualColumn:t}}function ti(){const{renderText:t}=Zn(),{renderEnumColumn:e}=Xn(),{renderNumberColumn:n}=Qn(),{renderDateColumn:i,renderDateTimeColumn:o}=Jn(),{renderImageColumn:l}=Kn(),{renderMultilingualColumn:a}=ei();function d(c){return typeof c=="boolean"?c.toString():c}function m(c,s,f){return s.customFormat?s.customFormat(c,f.raw):d(c)}function p(c,s,f){const{column:y}=c,u=X.resolveField(s.raw,y.field),h=f.options||f;return f.type===Ue.NONE?d(u):f.type===Ue.CUSTOM?m(u,f,s):f.type===Ue.ENUM?e(u,h):f.type===Ue.NUMBER?n(u,h):f.type===Ue.BOOLEAN?t(u,h):f.type===Ue.DATE?i(u,h):f.type===Ue.DATE_TIME?o(u,f):f.type===Ue.IMAGE?l(u,h):f.type===Ue.MULTI_LINGUAL?a(u,h):d(u)}return{renderFormatColumn:p}}function ni(t,e,n){var b;const{isUndefined:i}=X.useCommonUtils(),o=r.ref(t.mergeCell);(b=r.ref(t.rowOption).value)!=null&&b.wrapContent;const{updateVisualInfomation:a}=n,{renderCommandColumn:d}=In(t),{renderFormatColumn:m}=ti();function p(x,F,T,v,C,g=1){const S={colSpan:g,rowSpan:1,index:T,field:x,data:X.resolveField(v,x),editingData:X.resolveField(v,x),parent:C,mode:F,align:"left",valign:"start",showEllipsis:!0,getEditor:M=>M.data,setRef:M=>a(M,S,v),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return S}function c(x,F,T){return x.getEditor=v=>e.getEditor(v,F,v.parent),x.setRef=v=>a(v,x,T),x.update=v=>{v!==void 0&&(x.editingData=v)},x.accept=()=>{X.setFieldValue(x.editingData,T,F.field),x.data=X.resolveField(T,F.field)},x.cancel=()=>{x.editingData=x.data},x.updateData=v=>{X.setFieldValue(X.resolveField(v,F.field),T,F.field),x.data=X.resolveField(T,F.field),x.editingData=X.resolveField(T,F.field)},x}function s(x,F){F.dataType==="commands"?x.formatter=(T,v)=>F.formatter?F.formatter(x,v):d(x,v):F.formatter&&(x.formatter=(T,v)=>typeof F.formatter=="function"?F.formatter(T,v):m(x,v,F.formatter))}function f(x,F,T){const v=F&&F.data[T];if(v&&v.data===x.data){const g=v&&v.spannedBy||v;g.rowSpan++,g.spanned=g.spanned||[],g.spanned.push(x),x.colSpan=0,x.rowSpan=0,x.spannedBy=g}}function y(x,F,T){o.value&&f(x,F,T.field)}function u(x,F){F.showEllipsis!==void 0&&(x.showEllipsis=F.showEllipsis),x.showTips=i(F.showTips)?!0:F.showTips,x.column=F,x.align=F.align||"left",x.valign=F.valign||"middle",x.mode=t.editable?Ne.editable:Ne.readonly}function h(x,F,T,v){u(x,F),c(x,F,v),s(x,F),y(x,T,F)}function w(x,F,T,v,C){const g=t.editable?Ne.editable:Ne.readonly,S=p(x.field,g,F,T,v);return h(S,x,C,T),S}return{createCellByColumn:w,createCellByField:p,updateCellByColumn:h}}function ii(t,e,n,i,o,l,a){var F,T;const d=r.ref(t.rowOption),m=((F=d.value)==null?void 0:F.height)||28,p=((T=d.value)==null?void 0:T.wrapContent)||!1,{idField:c}=o,{collapseField:s}=i,{updateRowPosition:f}=l,{createCellByColumn:y}=a,u=(v,C,g,S)=>{X.setFieldValue(X.resolveField(v,S),C,S),g.data[S].data=X.resolveField(C,S),g.data[S].editingData=X.resolveField(C,S)};function h(v,C,g,S,M,E){var _e,Ce,xe;const{__fv_data_grid_group_field__:N,__fv_data_grid_group_value__:I,__fv_data_index__:B}=g,V=g.__fv_data_grid_group_layer__||(g.__fv_parents__?(_e=g.__fv_parents__)==null?void 0:_e.size:0)||0,_=typeof g.parent=="number"?Number(g.parent):-1,k=g.__fv_data_grid_group_collapse__||g[s.value],W=g.__fv_visible__===void 0?!0:g.__fv_visible__,P=g.__fv_checked__,A=g.__fv_indeterminate__,Y=g.__fv_disabled__||g[((Ce=t.rowOption)==null?void 0:Ce.disabledField)||"disabled"],J=t.hierarchy&&e.isVisibleInTree(g),oe={collapse:k,data:{},dataIndex:B,groupField:N,groupValue:I,layer:V,index:C,parentIndex:_,pre:S,top:E,type:v,raw:g,checked:P,disabled:Y,indeterminate:A,setRef:R=>{oe.ref=R},visible:W&&J||W&&!t.hierarchy,status:Ge.initial,updateCell:(R,O)=>{u(R,g,oe,O),e.updateSummary()},updateCells:(R,O)=>{O.forEach(j=>{u(R,g,oe,j)})}};return S||(g.__fv_data_position__=0),p||(oe.height=m,g.__fv_data_height__=oe.height,f(oe,g)),(xe=d.value)!=null&&xe.customRowStatus&&(d.value.customRowStatus(oe),g.__fv_disabled__=oe.disabled),oe}function w(v,C,g,S,M,E){const N=h(et.data,M,C,g,S,E);return v.forEach((I,B)=>{N.data[I.field]=y(I,B,C,N,S)}),N}function b(v,C,g,S,M){return Object.assign(v,{index:C,dataIndex:g,top:S,pre:M})}function x(v,C,g,S,M,E){const N=v.__fv_data_index__,I=v[c.value],B=n.getEditingSnapshot(I);return B===null?w(E,v,C,g,S,M):b(B,S,N,M,C)}return{createEmptyRow:h,createNewRowFromDataItem:w,renderDataRow:x}}function oi(t,e,n,i){const o=r.ref(t.summary),{idField:l}=e,{createCellByField:a}=n,{createEmptyRow:d}=i,m=r.computed(()=>{const f=o.value;return(f==null?void 0:f.groupFields)||[]}),p=r.computed(()=>{const f=o.value;return f&&f.enable&&f.groupFields&&f.groupFields.length>0});function c(f,y,u,h){if(p.value){const w=f.data[y];let b=w.colSpan;const x=m.value.reduce((F,T)=>(F.set(T,!0),F),new Map);h.reduce((F,T,v)=>{if(x.has(T.field)){const C=a(T.field,Ne.readonly,v,u,f);f.data[T.field]=C,b-1>v&&(b=v)}return F},f),w.colSpan=b}}function s(f,y,u,h,w,b,x){const F=f.__fv_data_grid_group_field__,T=d(et.group,h,f,y,u,w);return T.data[l.value]=a(l.value,Ne.readonly,-1,f,T,0),T.data[F]=a(F,Ne.readonly,1,f,T,b.length),c(T,F,f,b),T}return{renderGroupRow:s}}function ri(t,e,n,i){const{idField:o}=e,{createCellByField:l}=n,{createEmptyRow:a}=i;function d(m,p,c,s,f,y,u){const h=m.__fv_data_grid_group_field__,w=a(et.summary,s,m,p,c,f);return w.data[o.value]=l(o.value,Ne.readonly,-1,m,w),w.data[h]=l(h,Ne.readonly,1,m,w,y.length),w}return{renderSummaryRow:d}}function li(t,e,n,i,o){var xe;const{isMobilePhone:l}=Ee.useMobile(),a=r.ref(!1),{idField:d}=n,m=r.ref(t.editable),p=r.ref(t.editOption),c=r.ref(((xe=t.rowOption)==null?void 0:xe.wrapContent)||!1),{onClickRow:s,onClickRowExcludeDblclick:f}=i,y=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let u,h,w,b,x;function F(R){return h&&h.raw[d.value]===R?h:null}const T=r.reactive({});function v(R){return(R==null?void 0:R.field)!==Ot&&(R==null?void 0:R.field)!==_n}function C(R,O,j={}){R.mode=Ne.editing,u=R,h=O,w=X.resolveField(O==null?void 0:O.raw,R.field),b=j;for(const z in T)delete T[z]}function g(R){R.accept(),R.mode=Ne.editable,u=null}function S(R){g(R);const O={};h&&(Object.keys(h).forEach(j=>{O[j]=h==null?void 0:h[j]}),h=null),e.emit("endEditCell",{cell:R,row:O,newValue:X.resolveField(O==null?void 0:O.raw,R.field),oldValue:w,column:b,editor:T})}function M(R){const O=Promise.resolve(!0);return R?O.then(()=>je.isUndefined(t.beforeEndEditCell)?!0:typeof t.beforeEndEditCell=="function"?t.beforeEndEditCell({cell:R,row:h,newValue:R.editingData,oldValue:w}):()=>!0).then(j=>(j&&(S(R),h&&(h=null)),j)):O}function E(R){if(x&&x!==R.target){x=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const j=R.target;if(!(j!=null&&j.closest(".popover"))){if(R instanceof MouseEvent||R.key!=="Enter"){const z=j.closest(".fv-grid-cell");if(u&&u.ref&&u.ref===z)return}M(u).then(z=>{z&&document.body.removeEventListener("click",E,!0)})}}function N(){window.closeModal||(window.closeModal=()=>{a.value=!1,window.closeModal&&delete window.closeModal})}function I(R,O,j){return Promise.resolve().then(()=>{var G;const z=(G=j.editor)==null?void 0:G.readonly;return!je.isUndefined(t.beforeEditCell)&&typeof t.beforeEditCell=="function"?t.beforeEditCell({row:R,cell:O,rawData:R.raw,column:j}):!z}).then(z=>{z&&(l()?(a.value=!0,N()):C(O,R,j),document.body.removeEventListener("click",E,!0),document.body.addEventListener("click",E,!0))})}function B(R,O,j,z={}){R.stopPropagation(),f(R,j),v(O.column)&&m.value&&p.value.editMode==="cell"&&O.mode===Ne.editable&&M(u).then(()=>{u||I(j,O,z)})}function V(R,O,j,z={}){l()||R.stopPropagation(),s(R,j),v(O.column)&&m.value&&p.value.editMode==="cell"&&O.mode===Ne.editable&&M(u).then(()=>{u||I(j,O,z)})}function _(R){R.stopPropagation(),x=R.target}function k(R){R.stopPropagation(),x&&(x=null)}function W(R){Object.values(R.data).filter(O=>{var j;return O.mode===Ne.editable&&v(O.column)&&!((j=O.column)!=null&&j.readonly)}).forEach(O=>{O.mode=Ne.editing}),R.status=Ge.editing,h=R}function P(R,O){Object.values(R.data).filter(j=>j.mode===Ne.editing).forEach(j=>{O?j.accept():j.cancel(),j.mode=Ne.editable}),R.status=Ge.initial,h===R&&(h=null)}function A(R){m.value&&p.value.editMode==="row"&&h!==R&&(h&&P(h,!1),W(R))}function Y(R){P(R,!0),R.status=Ge.initial}function J(R){P(R,!1),R.status=Ge.initial}function oe(R,O,j){const z=O.dataType,G=O.editor||{type:y.get(z)||"input-group"};return!c.value&&G.type==="text"&&(G.type="input-group"),G&&v(R.column)?(G.type==="input-group"&&(G.textAlign=O.align!=="center"&&O.align!=="right"?"left":O.align,G.updateOn="change"),G.type==="number-spinner"&&(G.updateOn="change"),G.type==="textarea"&&(G.lineBreak="alt enter"),G.context={rowData:j.raw,column:O,cell:R,editor:T},G.readonly=!1,r.createVNode(vn.FDynamicFormInput,{focusOnCreated:t.focusOnEditingCell,selectOnCreated:t.selectOnEditingCell,editor:G,modelValue:R.editingData,"onUpdate:modelValue":ee=>R.editingData=ee,id:O.id,onMousedown:ee=>_(ee),onMouseup:ee=>k(ee)},null)):R.data}function _e(){M(u)}r.watch(()=>t.editable,()=>{m.value=t.editable}),r.watch(()=>{var R;return(R=t.editOption)==null?void 0:R.editMode},R=>{p.value.editMode=R});function Ce(){u=null,h=null,b=null,x=null,document.body.removeEventListener("click",E,!0)}return{clear:Ce,onClickOutOfCell:E,onClickCell:V,onClickCellByKeyboard:B,onEditingRow:A,acceptEditingRow:Y,cancelEditingRow:J,getEditingSnapshot:F,getEditor:oe,endEditCell:_e,onMousedownCell:_,onMouseupCell:k,showRowEditPanel:a,endEditByCell:g}}function ai(t){const e=r.ref(t.idField);function n(i){if(i&&i.length){const o=i[0];Object.keys(o).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:n}}function si(t,e,n,i){const{idField:o}=i,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:d,selectItem:m,toggleSelectItem:p,updateSelectAllStatus:c,isSingleSelect:s}=n,f=r.ref(0),y=r.ref(-1);function u(I){l.value=I}function h(I){return I.raw[o.value]===l.value}function w(I,B){var k;const V=B??I.dataIndex,_={"fv-grid-row":I.type===et.data,"fv-grid-group-row":I.type===et.group,"fv-grid-summary-row":I.type===et.summary,"fv-grid-row-hover":V===y.value,"fv-grid-row-selected":h(I),"fv-grid-row-odd":V%2>0,"fv-grid-row-even":V%2===0,"fv-grid-disabled":I.disabled};if((k=t.rowOption)!=null&&k.customRowStyle){const W=t.rowOption.customRowStyle(I.raw)||{};return Object.assign({},_,W.class||{})}return _}function b(I,B){var _;const V={"fv-grid-cell":!0};if((_=t.rowOption)!=null&&_.customCellStyle){const k=t.rowOption.customCellStyle(I,B)||{};return Object.assign({},V,k.class||{})}return V}function x(I,B){var _;const V={"fv-grid-hierarchy-cell":!0};if((_=t.rowOption)!=null&&_.customCellStyle){const k=t.rowOption.customCellStyle(I,B)||{};return Object.assign({},V,k.class||{})}return V}function F(I){const B=l.value,V=I.raw[o.value];u(V),B!==V&&e.emit("selectionChange",[I.raw],{id:V,data:I.raw})}function T(I,B){var k,W;if(d.value&&!(B!=null&&B.shiftKey)||s.value){(k=t.selection)!=null&&k.keepSelectingOnClick?m(I):p(I,(W=t.selection)==null?void 0:W.keepSelectingOnClick),c();return}if(d.value&&(B==null?void 0:B.shiftKey)||a.value){p(I),c();return}}function v(I,B){B.disabled||(e.emit("clickRow",B.index,B.raw),F(B),T(B,I))}function C(I){f.value+=1,setTimeout(()=>{f.value===1&&e.emit("clickRow",I.index,I.raw),f.value=0},250),f.value>1&&(e.emit("doubleClickRow",I.index,I.raw),f.value=0)}function g(I,B){B.disabled||(C(B),F(B),T(B,I))}function S(I){I.disabled||C(I)}function M(I,B){}function E(I,B){}function N(I,B){var k;const V=B??I.dataIndex,_={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":V===y.value,"fv-grid-sidebar-row-selected":h(I),"fv-grid-sidebar-row-odd":V%2>0,"fv-grid-sidebar-row-even":V%2===0,"d-flex":!0,"align-items-center":!0};if((k=t.rowOption)!=null&&k.customRowStyle){const W=t.rowOption.customRowStyle(I.raw)||{};return Object.assign({},_,W.class||{})}return _}return{activeRowById:u,clickRowItem:S,selectRow:T,changeRow:F,gridCellClass:b,gridHierarchyCellClass:x,gridRowClass:w,onClickRow:g,onClickRowExcludeDblclick:v,onMouseoverRow:M,sidebarRowClass:N,onMouseoutRow:E}}function di(t,e,n,i,o){const{idField:l}=n,{dataView:a,getSelectionItems:d}=e,m=r.ref(""),p=r.computed(()=>t.selection.enableSelectRow),c=r.ref(t.selection.multiSelect??!1),s=r.ref(t.selection.multiSelectMode||"DependOnCheck"),f=r.ref(t.selection.showCheckbox),y=r.computed(()=>{var L;return!!((L=t.selection)!=null&&L.showSelectAll)}),u=r.ref(t.selectionValues||[]),h=r.computed(()=>t.selection.showSelection),w=r.computed(()=>{var L;return((L=t.selection)==null?void 0:L.keepSelectingOnPaging)===void 0?!0:t.selection.keepSelectingOnPaging}),b=r.ref(!!u.value.length&&i.value.length===u.value.length),x=r.ref(!!u.value.length&&i.value.length!==u.value.length),F=r.computed(()=>p.value&&c.value),T=r.computed(()=>p.value&&!c.value&&!f.value),v=r.computed(()=>!!t.hierarchy),C=r.computed(()=>{const L=f.value&&s.value==="DependOnCheck";return F.value&&L}),g=r.computed(()=>F.value&&!f.value),S=r.computed(()=>F.value&&f.value&&s.value==="OnCheckAndClick");function M(){if(!w.value){const L=a.value.map(Q=>Q[l.value]);u.value=u.value.filter(Q=>L.includes(Q))}}function E(){const L=a.value.every(U=>u.value.includes(U[l.value])),Q=a.value.every(U=>!u.value.includes(U[l.value]));L&&(b.value=!0,x.value=!1),Q&&(b.value=!1,x.value=!1),!L&&!Q&&(b.value=!1,x.value=!0)}function N(){return d(u.value)}function I(){const L=i.value.reduce((U,ye)=>(U.set(ye.raw[l.value],ye),U),new Map);return u.value.map(U=>L.get(U)).filter(U=>!!U)}function B(L){var U;const Q=L.raw.__fv_children_index__;if(Q&&Q.length){const ye=Q.map(be=>a.value[be]);(U=u.value)!=null&&U.length&&ye.some(Re=>!u.value.includes(Re[l.value]))&&(L.indeterminate=!0,L.raw.__fv_indeterminate__=!0)}}function V(){const L=d(u.value);o.emit("selectionUpdate",L,u.value)}function _(L){o.emit("unSelectItem",L)}function k(L){o.emit("selectItem",L)}function W(){const L=i.value.filter(U=>U.indeterminate).map(U=>U.raw[l.value]);i.value.forEach(U=>{U.checked=!1,U.indeterminate=!1,U.raw.__fv_checked__=!1,U.raw.__fv_indeterminate__=!1}),I().forEach(U=>{U.checked=!0,U.raw.__fv_checked__=!0}),L.forEach(U=>{const ye=i.value.find(be=>be.raw[l.value]===U);B(ye)})}r.watch(()=>i.value,()=>{W()}),r.watch(()=>t.selectionValues,L=>{u.value=L,W()},{immediate:!0}),r.watch(()=>t.selection,L=>{c.value=!!L.multiSelect,s.value=L.multiSelectMode||"DependOnCheck",f.value=!!L.showCheckbox});const P=r.computed(()=>!c.value);function A(L){return L.raw[l.value]}function Y(L){return u.value.findIndex(U=>U===A(L))}function J(){I().forEach(U=>{U.checked=!1}),d(u.value).forEach(U=>{U.__fv_checked__=!1}),u.value=[],E()}function oe(L){const Q=L;Q.__fv_checked__=!0,Q.__fv_indeterminate__=!1;const U=new Set(u.value);U.add(Q[l.value]),u.value=Array.from(U.values()),M()}function _e(L){const Q=L;Q.__fv_checked__=!1,Q.__fv_indeterminate__=!1,u.value=u.value.filter(U=>U!==Q[l.value]),M()}function Ce(L){const Q=L.raw;Q.__fv_checked__=!0,Q.__fv_indeterminate__=!1;const U=new Set(u.value);U.add(Q[l.value]),u.value=Array.from(U.values()),M(),L.checked=!0,L.indeterminate=!1,V(),k(L)}function xe(L){const Q=L.raw;Q.__fv_checked__=!1,Q.__fv_indeterminate__=!1,u.value=u.value.filter(U=>U!==Q[l.value]),M(),L.checked=!1,L.indeterminate=!1,V(),_(L)}function R(L){L.disabled||Ce(L)}function O(L){L.disabled||xe(L)}function j(L){L.__fv_checked__=!1,L.__fv_indeterminate__=!0,u.value=u.value.filter(Q=>Q!==L[l.value]),M()}function z(L){const Q=L.raw;Q.__fv_checked__=!1,Q.__fv_indeterminate__=!0,u.value=u.value.filter(U=>U!==Q[l.value]),M(),L.checked=!1,L.indeterminate=!0}function G(L){P.value&&J(),L.checked?xe(L):Ce(L)}function ee(L,Q=!0){const U=L.checked;P.value&&J(),Q?L.checked?O(L):R(L):U?O(L):R(L)}function se(L){J(),R(L)}function ce(L){const Q=i.value.find(U=>U.raw[l.value]===L);if(Q)se(Q);else{const U=a.value.find(ye=>ye[l.value]===L);U&&oe(U)}}function ue(L){const Q=i.value.filter(be=>L.includes(be.raw[l.value])),U=Q.map(be=>be.raw[l.value]),ye=a.value.filter(be=>{const Re=be[l.value];return!U.includes(Re)&&L.includes(Re)});Q.length||ye.length,Q.forEach(be=>{R(be)}),ye.forEach(be=>{oe(be)})}function pe(L){for(const Q of L){if(!u.value.includes(Q))continue;const U=i.value.find(ye=>ye.raw[l.value]===Q);if(U)O(U);else{const ye=a.value.find(be=>be[l.value]===Q);ye&&_e(ye)}}u.value=u.value.filter(Q=>!L.includes(Q)),M()}function me(){i.value.forEach(L=>{const Q=L.raw;Q.__fv_checked__=!0,Q.__fv_indeterminate__=!1;const U=new Set(u.value);U.add(Q[l.value]),u.value=Array.from(U.values()),M(),L.checked=!0,L.indeterminate=!1})}function Pe(){i.value.forEach(L=>{const Q=L.raw;Q.__fv_checked__=!1,Q.__fv_indeterminate__=!1,u.value=u.value.filter(U=>U!==Q[l.value]),M(),L.checked=!1,L.indeterminate=!1})}function qe(){return i.value.find(L=>L.raw[l.value]===m.value)}function we(){m.value=""}return{clearSelection:J,currentSelectedDataId:m,enableMultiSelect:c,enableSelectRow:p,findIndexInSelectedItems:Y,getSelectedItems:N,getSelectionRow:qe,indeterminate:z,indeterminateDataItem:j,isSelectingHirarchyItem:v,multiSelectMode:s,multiSelectOnClickRow:S,multiSelectOnClickRowWithShift:g,multiSelectOnlyOnCheck:C,select:R,selectAll:me,selectedValues:u,selectDataItem:oe,selectItem:se,selectItemById:ce,selectItemByIds:ue,showCheckBox:f,showSelectAll:y,toggleSelectItem:ee,toggleSelectItemWithoutRow:G,unSelect:O,unSelectAll:Pe,unSelectDataItem:_e,unSelectItemByIds:pe,updateSelectAllStatus:E,selectAllStatus:b,indeterminateStatus:x,isSingleSelect:T,showSelection:h,keepSelectingOnPaging:w,emitSelectionChanged:V,emptyCurrentRowId:we}}function ci(t,e){var h,w;const n=String(Date.now()),i=50,{showCheckBox:o}=e,l=r.ref(((h=t.rowNumber)==null?void 0:h.enable)??!1),a=r.computed(()=>t.hierarchy&&o.value&&t.selection.enableSelectRow&&t.selection.multiSelect?!1:o.value),d=r.ref(l.value?((w=t.rowNumber)==null?void 0:w.width)??36:0),m=r.ref(a.value?i:0),p=r.computed(()=>{var b,x;return l.value?((b=t.rowNumber)==null?void 0:b.heading)==="序号"?Le.LocaleService.getLocaleValue("datagrid.lineNumberTitle"):(x=t.rowNumber)==null?void 0:x.heading:""}),c=r.computed(()=>(a.value&&!t.hierarchy?Number(m.value):0)+(l.value?Number(d.value):0));r.watch(()=>t.rowNumber,b=>{b&&b.enable!==void 0&&(l.value=b.enable),b&&b.width!==void 0&&(d.value=b.width)});function s(b){var F;const x={top:`${b.top}px`,width:`${c.value}px`,height:`${b.height||""}px`};if((F=t.rowOption)!=null&&F.customRowStyle){const T=t.rowOption.customRowStyle(b.raw)||{};return Object.assign({},x,T.style||{})}return x}const f=r.computed(()=>({width:`${c.value}px`}));function y(b){return`${n}_${b.type}_r_${b.index}_${b.refreshKey||""}`}function u(b){return`${n}_${b.type}_r_${b.index}_${b.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:a,sidebarCellPosition:s,sidebarCornerCellStyle:f,sidebarTitle:p,sidebarWidth:c,rowKey:u,cellKey:y}}const ui={ascend:(t,e)=>t===e?0:t===!1?-1:1,decend:(t,e)=>t===e?0:t===!0?-1:1},fi={ascend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return n===i?0:n<i?-1:1},decend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return n===i?0:n<i?1:-1}},mi={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1},pi={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1};function hi(t){const e=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"]]),n=new Map([["boolean-sorter",ui],["datetime-sorter",fi],["numeric-sorter",mi],["text-sorter",pi]]);function i(a){const d=(a==null?void 0:a.dataType)||"string",m=e.get(d)||"text-sorter";return n.get(m)||(a==null?void 0:a.sorter)}function o(a){return i(a.column)}function l(a,d){const m=o(a),p=(a.status&Oe.sortable)===Oe.sortable&&(a.status&Oe.sorted)===Oe.sorted,c=(a.status&Oe.ascending)===Oe.ascending,s=(a.status&Oe.descending)===Oe.descending;if(p&&m){const f=c?m.ascend:s?m.decend:void 0;f?d.addSorter(a.field,{field:a.field,compare:f}):d.removeSorter(a.field)}else d.removeSorter(a.field)}return{getSorterByColumn:i,updateSorter:l}}function At(t,e,n,i,o="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:d}=n,{gridHeaderColumnsStyle:m,leftFixedGridHeaderColumnsStyle:p,rightFixedGridHeaderColumnsStyle:c}=i,s=l.value.defaultColumnWidth,f=32,y=new Map([[0,0]]);function u(E,N){const I=y.get(N)||0,B={height:`${E.depth*f}px`,left:`${E.left}px`,top:`${(E.layer-1)*f}px`,width:`${E.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(B["line-height"]=`${E.depth*f}px`),y.set(N+1,I+(E.actualWidth||s)),B}const h=r.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),w=r.computed(()=>({height:`${l.value.headerDepth*f}px`})),b=function(E){return e.showSetting&&!!E.showSetting};function x(){return r.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[r.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function F(E,N,I,B){var V;(V=t==null?void 0:t.setupContext)==null||V.emit("selectionChange",E,N,I,B)}function T(E){var I,B;return"w-100 d-flex align-items-center justify-content-"+(((I=E.column)==null?void 0:I.halign)==="center"?"center":((B=E.column)==null?void 0:B.halign)==="right"?"end pr-2":"start pl-2")}function v(E,N,I){var V;const B=r.ref(E.column);return r.createVNode("div",{class:"fv-grid-header-cell",style:u(E,I)},[r.createVNode($.FDesignerItem,{modelValue:B.value,"onUpdate:modelValue":_=>B.value=_,customClass:T(E),canAdd:!1,canDelete:!1,canMove:!1,key:(V=B.value)==null?void 0:V.id,type:o,componentId:e.componentId,onSelectionChange:F},null),b(E)&&x(),E.resizable&&r.createVNode("span",{class:"fv-column-resize-bar"},null)])}function C(E){return E.map((N,I)=>{const B=[];if(B.push(v(N,E,I)),N.children&&N.children.length){const V=C(N.children);B.push(...V)}return B})}function g(){return r.createVNode("div",{class:"fv-grid-header-left-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:p.value},[C(l.value.leftHeaderColumns)])])}function S(){return r.createVNode("div",{class:"fv-grid-header-right-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:c.value},[C(l.value.rightHeaderColumns)])])}function M(){return r.createVNode("div",{class:h.value,style:w.value},[a.value&&g(),r.createVNode("div",{class:"fv-grid-header-primary"},[r.createVNode("div",{class:"fv-grid-header-columns",style:m.value},[C(l.value.primaryHeaderColumns)])]),d.value&&S()])}return{renderGridHeader:M}}const rt={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"drawer-toolbar-item":{type:"drawer-toolbar-item",name:"抽屉工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},"drawer-toolbar":{type:"drawer-toolbar",name:"抽屉工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"},image:{type:"image",name:"图像"},"discussion-editor":{type:"discussion-editor",name:"评论编辑区"},"discussion-list":{type:"discussion-list",name:"评论列表"},comment:{type:"comment",name:"评论区"},"rich-text-editor":{type:"rich-text-editor",name:"富文本",icon:"rich-text-box"},calendar:{type:"calendar",name:"日历",icon:"date-picker"},wizard:{type:"wizard",name:"向导",icon:"wizard"},"wizard-page":{type:"wizard-page",name:"向导页",icon:"wizard"},"wizard-page-detail":{type:"wizard-page-detail",name:"向导详情",icon:"wizard"},step:{type:"step",name:"步骤条",icon:"step"},"dynamic-form":{type:"dynamic-form",name:"动态表单"}};class gi extends He.BaseControlProperty{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=ze.useCommandOption(this).getCommandColumnProperties(e),this.propertyConfig.categories.column=ze.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=ze.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=ze.useSummary().getSummaryProperties(e),this.propertyConfig.categories.group=ze.useGroup().getGroupProperties(e),this.propertyConfig.categories.sort=ze.useSort().getSort(e),this.propertyConfig.categories.filter=ze.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,d,m;const n=(m=(d=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:d.entity[0])==null?void 0:m.entities[0],i=this.assembleSchemaEntityToTree(n,0),o=this,l=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...l.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:!0}},setPropertyRelates(p,c){switch(p&&p.propertyID){case"dataSource":{const s=o.formSchemaUtils.getViewModelById(o.viewModelId);if(s){const f=i.find(y=>y.label===p.propertyValue);s.bindTo=f.bindTo}o.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,n,i,o="",l=[]){const a=o?`${o}/${e.label}`:"/";return l.push({id:e.id,name:e.name,label:e.label,layer:n,parent:i&&i.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(d=>this.assembleSchemaEntityToTree(d,n+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=ze.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=ze.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=ze.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=ze.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const n=[...ze.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"单元格结束编辑事件"},{label:"beforeEditCell",name:"单元格编辑前事件"}],i=this,o=i.eventsEditorUtils.formProperties(e,i.viewModelId,n),l=i.createBaseEventProperty(o);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,d){const m=a.propertyValue;delete e[i.viewModelId],m&&(m.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(e,i.viewModelId,m.events,m)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand,e.command.onHandleAction=e.onHandleAction)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function yi(t,e){const n=t.schema,i=r.ref(!0),o=r.ref(!0);function l(s){return s&&s.sourceType==="control"?s.componentCategory==="input":!1}function a(){return!1}function d(){return!1}function m(){return!0}function p(s){return new gi(s,e).getPropertyConfig(n)}function c(){var s,f,y,u;if(t&&e){const h=(s=t==null?void 0:t.componentInstance)==null?void 0:s.value.belongedComponentId;let w="",b="";const{formSchemaUtils:x}=e;if(h){const T=x.getRootViewModelId(),v=x.getComponentByViewModelId(T),C=x.selectNode(v,g=>g.contents&&g.contents.find(S=>S.component===h));(C==null?void 0:C.type)===((f=rt["tab-page"])==null?void 0:f.type)&&((y=C==null?void 0:C.contents)!=null&&y.length)&&(w=C.title||""),(C==null?void 0:C.type)===((u=rt.section)==null?void 0:u.type)&&(C==null?void 0:C.showHeader)!==!1&&(w=C.mainTitle||""),w=w?`${w} > `:"",b=w?C.id:""}const F=rt["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(t.schema.id,{componentTitle:F,parentPathName:`${w}${F}`,reliedComponentId:b})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:d,hideNestedPaddingInDesginerView:m,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:p,setComponentBasicInfoMap:c}}const Qe=r.defineComponent({name:"FDataGridDesign",props:Sn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(t,e){var we;const n=r.ref(),i=r.inject("designer-host-service"),o=r.inject("design-item-context"),l=yi(o,i),a=$.useDesignerComponent(n,o,l);a.value.styles="display:flex;flex:1;",r.onMounted(()=>{n.value.componentInstance=a}),r.provide("data-grid-context",{dataGridProps:t}),e.expose(a.value);const d=r.ref(t.columns),m=20,p=ai(t),c=0,s=r.ref(),f=r.ref(),y=r.ref(t.showStripe),u=r.ref([]),h=r.ref(!1),w=r.ref(((we=t.rowOption)==null?void 0:we.wrapContent)||!1),b=Gn(t,e),x=Un(t),F=Rn(t,new Map,b,x,p),T=di(t,F,p,u,e),v=r.computed(()=>F.totalItems.value<m?F.totalItems.value:m),{containerStyleObject:C}=Pn(t),g=Nn(t),{applyCommands:S}=g;S(d);const M=Fn(t),E=hi(),{applyColumnSorter:N,columnContext:I,updateColumnRenderContext:B}=M;N(F,E);const V=Bn(t,I),_=si(t,e,T,p),k=li(t,e,p,_),W=Yn(t),P=ni(t,k,W),A=ii(t,F,k,x,p,W,P),Y=oi(t,p,P,A),J=ri(t,p,P,A),oe=Tn(t,d,F,v,c,A,Y,J),{getVisualData:_e}=oe,Ce=ci(t,T),{sidebarWidth:xe}=Ce;u.value=_e(0,v.value+c-1);const R=Dn(t,F,u,I,oe,v,c,xe),{onWheel:O,dataGridWidth:j,viewPortHeight:z,viewPortWidth:G}=R,ee=xn(t,I,s,G,V),{calculateColumnsSize:se}=ee,ce=r.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":y.value})),ue=r.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":h.value,"fv-grid-wrap-content":w.value})),{renderGridHeader:pe}=At(o,t,M,R),{renderHorizontalScrollbar:me}=En(t,s,R);function Pe(){var L,Q;z.value=((L=f.value)==null?void 0:L.clientHeight)||0,j.value=((Q=s.value)==null?void 0:Q.clientWidth)||0,se()}r.onMounted(()=>{s.value&&(hn.useResizeObserver(s.value,Pe),se(),r.nextTick(()=>{s.value&&(j.value=s.value.clientWidth),f.value&&(G.value=f.value.clientWidth,z.value=f.value.clientHeight)}))});function qe(L){L&&(d.value=L,S(d),B(d.value),N(F,E),se())}return r.watch(()=>t.columns,L=>{qe(L),$.canvasChanged.value++}),r.watch(G,()=>{s.value&&se()}),()=>r.createVNode("div",{ref:n,class:ce.value,style:C.value,onWheel:O},[pe(),r.createVNode("div",{ref:s,class:ue.value,onMouseover:()=>{h.value=!0},onMouseleave:()=>{h.value=!1}},[me()])])}}),vi={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClosePopup:{type:Function,default:null}},bi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},Ci=r.defineComponent({name:"FOverlay",props:bi,emits:["click"],setup(t,e){const n=r.ref(t.popupContentPosition),i=r.ref(t.host),o=r.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function l(d){e.emit("click"),d.preventDefault(),d.stopPropagation()}r.computed(()=>{const d=i.value;if(d){const m=d.getBoundingClientRect(),{left:p,top:c,height:s}=m;return{left:p,top:c+s}}return n.value});const a=r.computed(()=>({}));return()=>r.createVNode(r.Teleport,{to:"body"},{default:()=>{var d,m;return[r.createVNode("div",{class:"overlay-container",onClick:p=>l(p),style:o.value},[r.createVNode("div",{style:a.value},[(m=(d=e.slots).default)==null?void 0:m.call(d)])])]}})}});function wi(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function Si(t){const e=document.createElement("div");e.style.display="contents";let n;const i=t.onClickCallback||(()=>{}),o=()=>{i(),n&&n.unmount()};return n=r.createApp({setup(){r.onUnmounted(()=>{document.body.removeChild(e)});const l=wi(t);return()=>r.createVNode(Ci,{"popup-content-position":t.popupPosition,host:t.host,onClick:o,backgroundColor:t.backgroundColor},{default:()=>[l&&l()]})}}),document.body.appendChild(e),n.mount(e),n}class xi{static show(e){return Si(e)}}const Mi={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"},isMessager:{type:Boolean,default:!1}};class Ie{constructor(e,n){this.x=e,this.y=n}static getTransformInfo(e){const i=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const o=parseInt(i[4],10),l=parseInt(i[5],10);return{x:o,y:l}}return{x:0,y:0}}static fromEvent(e,n=null){if(this.isMouseEvent(e))return new Ie(e.clientX,e.clientY);if(n===null||e.changedTouches.length===1)return new Ie(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let i=0;i<e.changedTouches.length;i++)if(e.changedTouches[i].target===n)return new Ie(e.changedTouches[i].clientX,e.changedTouches[i].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const n=new Ie(0,0);if(window){const i=window.getComputedStyle(e);if(i){const o=parseInt(i.getPropertyValue("left"),10),l=parseInt(i.getPropertyValue("top"),10);n.x=isNaN(o)?0:o,n.y=isNaN(l)?0:l}return n}return null}static copy(e){return new Ie(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class tt{constructor(e,n){this.width=e,this.height=n}static getCurrent(e){const n=new tt(0,0);if(window){const i=window.getComputedStyle(e);return i&&(n.width=parseInt(i.getPropertyValue("width"),10),n.height=parseInt(i.getPropertyValue("height"),10)),n}return null}static copy(e){return new tt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Fi(t,e){const n=r.ref(),i=r.ref(),o=r.ref(),l=r.ref(),a=r.ref(),d=r.ref(),m=r.ref(),p=r.ref(),c=r.ref(),s=r.ref(),f=r.ref(),y=r.ref(t.resizeable),u=r.ref(),h=r.ref(t.draggable),w=r.ref(!1);function b(){const P=i.value||document.body,A=window.getComputedStyle(P);if(!A||!n.value)return;const Y=Ie.getTransformInfo(n.value),J={};m.value&&(J.deltaL=n.value.offsetLeft-m.value.x,J.deltaT=n.value.offsetTop-m.value.y);const oe=A.getPropertyValue("position");J.width=P.clientWidth,J.height=P.clientHeight,J.pr=parseInt(A.getPropertyValue("padding-right"),10),J.pb=parseInt(A.getPropertyValue("padding-bottom"),10),J.position=A.getPropertyValue("position"),oe==="static"&&(P.style.position="relative"),J.translateX=Y.x,J.translateY=Y.y,s.value=J}function x(P){if(n.value){l.value=tt.getCurrent(n.value),a.value=Ie.getCurrent(n.value),d.value=l.value?tt.copy(l.value):null,m.value=a.value?Ie.copy(a.value):null,b();const A=P.target.getAttribute("type")||"";p.value={n:!!A.match(/n/),s:!!A.match(/s/),w:!!A.match(/w/),e:!!A.match(/e/)}}}function F(){var P,A,Y,J;if(n.value){const oe=n.value;p.value&&((p.value.n||p.value.s)&&((P=d.value)!=null&&P.height)&&(oe.style.height=d.value.height+"px"),(p.value.w||p.value.e)&&((A=d.value)!=null&&A.width)&&(oe.style.width=d.value.width+"px"),m.value&&((Y=m.value)!=null&&Y.x&&(oe.style.left=m.value.x+"px"),(J=m.value)!=null&&J.y&&(oe.style.top=m.value.y+"px")))}}function T(){const P=t.minHeight?t.minHeight:1,A=t.minWidth?t.minWidth:1;d.value&&m.value&&p.value&&l.value&&(d.value.height<P&&(d.value.height=P,p.value.n&&a.value&&(m.value.y=a.value.y+(l.value.height-P))),d.value.width<A&&(d.value.width=A,p.value.w&&a.value&&(m.value.x=a.value.x+(l.value.width-A))),t.maxHeight&&d.value.height>t.maxHeight&&(d.value.height=t.maxHeight,a.value&&p.value.n&&(m.value.y=a.value.y+(l.value.height-t.maxHeight))),t.maxWidth&&d.value.width>t.maxWidth&&(d.value.width=t.maxWidth,p.value.w&&a.value&&(m.value.x=a.value.x+(l.value.width-t.maxWidth))))}function v(){if(i.value){const P=s.value;if(m.value&&d.value&&p.value&&l.value){const A=P.width-P.pr-P.deltaL-P.translateX-m.value.x,Y=P.height-P.pb-P.deltaT-P.translateY-m.value.y;p.value.n&&m.value.y+P.translateY<0&&a.value&&(m.value.y=-P.translateY,d.value.height=l.value.height+a.value.y+P.translateY),p.value.w&&m.value.x+P.translateX<0&&a.value&&(m.value.x=-P.translateX,d.value.width=l.value.width+a.value.x+P.translateX),d.value.width>A&&(d.value.width=A),d.value.height>Y&&(d.value.height=Y)}}}function C(P){if(!o.value||!l.value||!a.value||!p.value)return;P.subtract(o.value);const A=P.x,Y=P.y;p.value.n?(m.value.y=a.value.y+Y,d.value.height=l.value.height-Y):p.value.s&&(d.value.height=l.value.height+Y),p.value.e?d.value.width=l.value.width+A:p.value.w&&(d.value.width=l.value.width-A,m.value.x=a.value.x+A),v(),T(),F()}function g(P){if(!c.value)return;const A=Ie.fromEvent(P);A&&C(A)}function S(){if(n.value){const{width:P,height:A,x:Y,y:J}=n.value.getBoundingClientRect(),oe=Ie.getTransformInfo(n.value);return{size:{width:P,height:A},position:{x:Y-oe.x,y:J-oe.y}}}return null}function M(P){if(n.value){const A=S();f.value=A}o.value=void 0,l.value=null,a.value=null,d.value=null,m.value=null,p.value=null,c.value=null,document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",M)}function E(){document.addEventListener("mousemove",g),document.addEventListener("mouseup",M)}function N(P){P instanceof MouseEvent&&P.button===2||h.value&&(document.body.click(),P.stopPropagation(),P.preventDefault(),o.value=Ie.fromEvent(P),c.value=P.target,x(P),E())}function I(P){return n.value=P,y.value&&r.createVNode(r.Fragment,null,[r.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:A=>N(A)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:A=>N(A)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:A=>N(A)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:A=>N(A)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:A=>N(A)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:A=>N(A)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:A=>N(A)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:A=>N(A)},null)])}function B(P=!0){document.body.click();const A=i.value||document.body,Y=tt.getCurrent(A),J=n.value;P&&J&&(u.value=S(),u.value.transform=J.style.transform),Y&&J&&(d.value=Y,d.value.height-=14,d.value.width-=14,J.style.height=d.value.height+"px",J.style.width=d.value.width+"px",J.style.left="7px",J.style.top="7px",J.style.transform="",f.value={size:d.value,position:{x:0,y:0}},h.value=!1,w.value=!0)}function V(){var P,A;if(document.body.click(),u.value){const Y={width:u.value.size.width||0,height:u.value.size.height||0},J={x:(window.innerWidth-Y.width)/2,y:(window.innerHeight-Y.height)/2};(P=d.value)==null||P.set(Y),(A=m.value)==null||A.set(J);const oe=n.value;oe.style.height=Y.height+"px",oe.style.width=Y.width+"px",oe.style.left=`${J.x}px`,oe.style.top=`${J.y}px`,oe.style.transform="",f.value={size:Y,position:J},h.value=t.draggable,w.value=!1}}function _(){if(n.value){const P=tt.getCurrent(n.value);if(P){const{width:A,height:Y}=P;n.value.style.left=`${(window.innerWidth-A)/2}px`,n.value.style.top=`${(window.innerHeight-Y)/2}px`,n.value.style.transform=""}}}function k(){const P=()=>{w.value?B(!1):_(),document.body.click()};return window.addEventListener("resize",P),()=>{window.removeEventListener("resize",P)}}const W=k();return{renderResizeBar:I,boundingElement:i,resizedEventParam:f,maximize:B,restore:V,allowDrag:h,isMaximized:w,unWindowResizeHandle:W,moveToCenter:_}}function Ti(t,e,n){const i=r.ref(),o=r.ref(t.draggable),l=r.ref(t.lockAxis),a=r.ref(),d=r.ref(),m=r.ref(!1),p=r.ref(new Ie(0,0)),c=r.ref(new Ie(0,0)),s=r.ref(new Ie(0,0)),f=r.ref(new Ie(0,0));r.watch(()=>n.value,g=>{a.value.style.cursor=g?"move":"default"});function y(g,S){if(S.tagName==="BUTTON")return!1;if(S===g)return!0;for(const M in S.children)if(Object.prototype.hasOwnProperty.call(S.children,M)&&y(g,S.children[M]))return!0;return!1}function u(){var E,N;let g=s.value.x+c.value.x,S=s.value.y+c.value.y;l.value==="x"?(g=((E=p.value)==null?void 0:E.x)||0,s.value.x=0):l.value==="y"&&(S=((N=p.value)==null?void 0:N.y)||0,s.value.y=0);const M=`translate3d(${Math.round(g)}px, ${Math.round(S)}px, 0px)`;i.value&&(i.value.style.transform=M),f.value.x=g,f.value.y=S}function h(){if(!d.value||!i.value)return null;const g=d.value.getBoundingClientRect(),S=i.value.getBoundingClientRect(),M={top:g.top<S.top,right:g.right>S.right,bottom:g.bottom>S.bottom,left:g.left<S.left};return M.top||(s.value.y-=S.top-g.top),M.bottom||(s.value.y-=S.bottom-g.bottom),M.right||(s.value.x-=S.right-g.right),M.left||(s.value.x-=S.left-g.left),u(),M}function w(g){g&&(p.value&&g.subtract(p.value),s.value.set(g),u(),h())}function b(g){m.value&&o.value&&(g.stopPropagation(),g.preventDefault(),w(Ie.fromEvent(g,a.value)))}function x(){var g;m.value&&(m.value=!1,c.value.add(s.value),s.value.reset(),(g=i.value)==null||g.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",x))}function F(){!m.value&&a.value&&(m.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",b),document.addEventListener("mouseup",x))}function T(){if(i.value){const g=Ie.getTransformInfo(i.value);c.value.set(g);return}c.value.reset()}function v(g){if(!n.value||g instanceof MouseEvent&&g.button===2)return;const S=g.target||g.srcElement;a.value!==void 0&&S&&!y(S,a.value)||o.value!==!1&&(document.body.click(),g.stopPropagation(),g.preventDefault(),p.value=Ie.fromEvent(g,i.value),T(),F())}function C(g,S,M){if(o.value&&S){if(g)a.value=g;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)a.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const E=S.querySelector(t.dragHandle);E&&(a.value=E)}}i.value=S,d.value=M,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",v)):o.value=!1}}return{registerDraggle:C,resetTranslate:T}}function Lt(t,e){if(t){const n=i=>{i.key.toLowerCase()===t.toLowerCase()&&e({event:i,key:t})};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}}function _i(t,e){const n=r.ref(t.enableEsc);let i=null;return n.value?(i=Lt("Escape",o=>{e.emit("esc",{event:o.event,type:"esc"})}),{remove:i}):null}function ki(t,e){const n=r.ref(t.enableEnter);let i=null;return n.value?(i=Lt("Enter",o=>{e.emit("enter",{event:o.event,type:"enter"})}),{remove:i}):null}const lt=r.defineComponent({name:"FModal",props:Mi,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(t,e){const n=r.ref(t.width||300),i=r.ref(t.height||200),o=r.ref(t.modelValue),l=r.ref(""),a=r.ref(t.class),d=r.ref(t.fitContent),m=r.ref(t.showHeader),p=r.ref(""),c=r.ref(t.showCloseButton),s=r.ref(t.showMaxButton),f=r.ref(!1),y=r.ref(t.dialogType),u=r.ref(t.src),h=r.ref(""),w=r.ref(t.showButtons),b=r.ref(t.title),x=r.ref(t.containment||null),F=r.ref();b.value==="错误提示"&&(b.value=Le.LocaleService.getLocaleValue("messageBox.errorTitle"));const T=r.ref(!1);function v(q,re){const he=re?"accept":"cancel";Promise.resolve().then(()=>{var Me;return(Me=t.beforeClose)==null?void 0:Me.call(t,{closeType:he})}).then(Me=>{Me&&(o.value=!1,e.emit("update:modelValue",!1),re!=null&&e.emit(re?"accept":"cancel"),e.emit("closed",q))})}const C=[{name:"cancel",text:Le.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:q=>{v(q,!1)}},{name:"accept",text:Le.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:q=>{v(q,!0)}}],g=r.ref(t.buttons&&t.buttons.length?t.buttons:C),S=r.computed(()=>!!p.value),M=r.computed(()=>!!w.value&&!!g.value),E=r.ref(),N=r.ref(),I=r.ref(!1),{renderResizeBar:B,maximize:V,restore:_,boundingElement:k,resizedEventParam:W,allowDrag:P,unWindowResizeHandle:A,moveToCenter:Y}=Fi(t),{registerDraggle:J}=Ti(t,e,P);function oe(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function _e(){const q=document.querySelectorAll(".farris-modal").length;(!q||q-1<=0)&&document.body.classList.remove("modal-open"),F.value&&F.value.classList.remove("show")}r.watch(()=>t.title,(q,re)=>{q!==re&&(b.value=q)}),r.watch(()=>t.modelValue,(q,re)=>{q!==re&&(o.value=q,o.value&&t.draggable&&r.nextTick(()=>{N.value&&!x.value&&(x.value=N.value.parentElement,k.value=x.value,J(E.value,N.value,k.value),Y())}),q||(x.value&&(x.value=null),_e())),o.value?T.value=oe():(I.value=!1,P.value=t.draggable)}),r.watch(()=>t.showHeader,(q,re)=>{q!==re&&(m.value=q)}),r.watch(()=>t.showButtons,(q,re)=>{q!==re&&(w.value=q)}),r.watch(()=>W.value,(q,re)=>{const he=q||{},Me=re||{};JSON.stringify(he)!==JSON.stringify(Me)&&e.emit("resize",{newSize:q,oldSize:re,isMaximized:I.value})}),r.watch([()=>t.width,()=>t.height],(q,re)=>{(q[0]!==re[0]||q[1]!==re[1])&&(n.value=q[0]||500,i.value=q[1]||600)}),r.watch(()=>t.class,(q,re)=>{a.value=q});const Ce=r.computed(()=>(o.value&&document.body.classList.add("modal-open"),o.value)),xe=r.computed(()=>{var he;const q={modal:!0,"farris-modal":!0,fade:!0};q["f-modal-fitContent"]=!!d.value,q.show=!!Ce.value;const re=(he=t.maskClass)==null?void 0:he.split(" ");return re==null||re.reduce((Me,ke)=>(Me[ke]=!0,Me),q),q}),R=r.computed(()=>{var he;const q={"modal-dialog":!0},re=(he=a.value)==null?void 0:he.split(" ");return re==null||re.reduce((Me,ke)=>(Me[ke]=!0,Me),q),q}),O=()=>X.isMobilePhone()&&!t.isMessager,j=r.computed(()=>{const q=document.documentElement.clientWidth,re=document.documentElement.clientHeight,he=Math.min(n.value,q),Me=d.value?"auto":`${Math.min(i.value,re-10)}px`,ke={position:"absolute",top:`${(window.innerHeight-parseInt(Me==="auto"?"0":Me))/2}px`,left:`${(window.innerWidth-he)/2}px`,width:`${he}px`,height:Me};return O()&&(ke.top="0px",ke.left="0px",ke.width=`${window.innerWidth}px`,ke.height=`${window.innerHeight}px`),t.mask||(ke.pointerEvents="auto"),ke}),z=r.ref(X.getMaxZIndex()||1050),G=r.computed(()=>{const q={display:"block",overflow:"hidden"};return t.mask||(q.pointerEvents="none",q.backgroundColor="transparent"),T.value&&(q.backgroundColor="transparent"),q.zIndex=z.value,q}),ee=r.computed(()=>({"modal-content":!0,"modal-content-has-header":m.value,"is-mobile":O()})),se=r.computed(()=>{const q={display:m.value?"":"none"};return q["pointer-events"]=P.value?"auto":"none",q}),ce=r.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:I.value})),ue=r.computed(()=>({"modal-body":!0,"f-utils-flex-column":y.value==="iframe","f-utils-fill":!0}));function pe(){return{height:`${t.footerHeight||60}px`}}const me=r.computed(()=>{const q={textAlgin:h.value},re=pe();return Object.assign(q,re)});function Pe(q){if(q==null||q.stopPropagation(),I.value){I.value=!1,_();return}V(),I.value=!0}async function qe(q,re){q.handle&&await q.handle(re,q)&&e.emit("closed",re)}function we(q){q.width&&(n.value=q.width),q.height&&(i.value=q.height),q.buttons&&(g.value=q.buttons),q.title&&(b.value=q.title)}let L=null,Q=null;r.onBeforeMount(()=>{T.value=oe()}),r.onMounted(()=>{N.value&&!x.value&&(x.value=N.value.parentElement,k.value=x.value,J(E.value,N.value,k.value)),Ce.value&&document.body.classList.add("modal-open"),L=_i(t,e),Q=ki(t,e)}),r.onUnmounted(()=>{A&&A(),L&&L.remove(),Q&&Q.remove()}),e.expose({modalElementRef:N,updateModalOptions:we,close:v,maxDialog:Pe,isMaximized:I});function U(){return r.createVNode("ul",null,[f.value&&r.createVNode("li",{class:"f-btn-icon f-bare"},[r.createVNode("span",{class:"f-icon modal_minimize"},null)]),s.value&&r.createVNode("li",{onClick:Pe,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[r.createVNode("span",{class:ce.value},null)]),c.value&&r.createVNode("li",{class:"f-btn-icon f-bare",onClick:q=>v(q,!1),style:"pointer-events: auto;"},[r.createVNode("span",{class:"f-icon modal_close"},null)])])}function ye(){return r.createVNode("div",{class:"modal-footer",style:me.value},[g.value&&g.value.map(q=>{const re=r.ref(q.disabled);return r.createVNode("button",{name:q.name,type:"button",disabled:re.value,class:q.class+(q.iconClass?" btn-icontext":""),onClick:he=>{qe(q,he)}},[!!q.iconClass&&r.createVNode("i",{class:q.iconClass},null),q.text])})])}function be(){return r.createVNode("div",{ref:E,class:"modal-header",style:se.value},[e.slots.headerTemplate?e.slots.headerTemplate():r.createVNode("div",{class:"modal-title"},[S.value&&r.createVNode("span",{class:p.value,style:"margin-right: 8px"},null),r.createVNode("span",{class:"modal-title-label"},[b.value])]),r.createVNode("div",{class:"actions"},[U()])])}function Re(){return e.slots.footerTemplate?e.slots.footerTemplate():M.value&&ye()}function Ze(q){if(q.stopPropagation(),t.allowClickMaskToClose){if(q.target!==F.value)return;v(q,!1)}}function st(){var q,re;return r.createVNode("div",{id:l.value,class:R.value,style:j.value,ref:N},[r.createVNode("div",{class:ee.value},[m.value&&be(),r.createVNode("div",{class:ue.value},[(re=(q=e.slots).default)==null?void 0:re.call(q),y.value==="iframe"&&r.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:u.value},null)]),Re()]),!d.value&&N.value&&!I.value&&B(N.value)])}function dt(q){return q||"body"}return r.watchEffect(()=>{Ce.value&&(z.value=X.getMaxZIndex()||1050)}),()=>r.createVNode(r.Teleport,{to:dt(t.host)},{default:()=>[Ce.value&&r.createVNode(r.Transition,{name:"fade",appear:!0},{default:()=>[r.createVNode("div",{ref:F,class:xe.value,style:G.value,onClick:Ze},[st()])]})]})}});function Ht(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function Vi(t){const e=document.createElement("div");e.style.display="contents";const n=r.createApp({setup(i,o){r.onUnmounted(()=>{document.body.removeChild(e)});const l=r.ref(),a=r.ref(t.class||""),d=r.ref(!!t.showButtons),m=r.ref(!!t.showHeader),p=r.ref(t.showCloseButton==null?!0:t.showCloseButton),c=r.ref(!0),s=r.ref(t.title||""),f=t.acceptCallback||(()=>{}),y=t.rejectCallback||(()=>{}),u=t.closedCallback||(F=>{}),h=t.resizeHandle||(F=>{}),w=t.stopMoveHandle||(F=>{}),b=Ht(t),x=F=>{c.value=!1,n.unmount(),u(F)};return r.onMounted(()=>{}),o.expose({modalRef:l}),()=>r.createVNode(lt,{ref:l,class:a.value,modelValue:c.value,"onUpdate:modelValue":F=>c.value=F,title:s.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":m.value,"show-buttons":d.value,"show-close-button":p.value,"show-max-button":!1,onAccept:f,onCancel:y,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:x,onResize:h,onStopMove:w},{default:()=>[b&&b(n)]})}});return document.body.appendChild(e),n.use(Le.LocaleService.i18n),n.mount(e),n}class Ei{constructor(e){ie(this,"appContext",null);ie(this,"modalRef",r.ref());ie(this,"activeModalIndex",r.ref(0));ie(this,"modalRefs",{});ie(this,"isUseEscCloseModal",r.ref(!1));ie(this,"activeModalInstance",r.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,n){const{width:i,height:o}={width:window.innerWidth,height:window.innerHeight};return i<e&&(e=i-14),o<n&&(n=o-14),{width:e,height:n}}static show(e){const n=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return Vi(n)}close(e){var n,i;e?(i=e.value)==null||i.close():(n=this.getCurrentModal())==null||n.close()}open(e){const n=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const i=r.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),o=r.ref(!0),l=i.value.acceptCallback||(()=>{}),a=i.value.rejectCallback||(()=>{}),d=i.value.closedCallback||((v,C)=>{}),m=i.value.resizeHandle||(v=>{}),p=e.stopMoveHandle||(v=>{});let c;const s=Ht(i.value),f=v=>{var g;o.value=!1;const C=(g=v==null?void 0:v.target)==null?void 0:g.classList.contains("modal_close");d(v,this.isUseEscCloseModal.value?"esc":C?"icon":"button")},y=v=>{f(v),c&&r.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],r.render(null,n),c=null,this.modalRef.value=null,this.modalRefs){const C=Object.keys(this.modalRefs).map(g=>Number(g));C.length>0?this.activeModalIndex.value=Math.max(...C):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},u=v=>{var C;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((C=this.activeModalInstance.value)==null||C.close(v==null?void 0:v.event))},{width:h,height:w}=i.value,b=this.adaptToWindow(h||500,w||320);Object.assign(i.value,b);const x=()=>r.createVNode(lt,r.mergeProps({ref:this.modalRef,modelValue:o.value,"onUpdate:modelValue":v=>o.value=v},i.value,{isMessager:i.value.class&&i.value.class.indexOf("modal-message")>-1,onAccept:l,onCancel:a,onClosed:y,onResize:m,onEsc:u,onStopMove:p}),{default:()=>[s&&s(this.app)]});return c=(v=>{const C=r.h(x,v);return C.appContext=this.appContext,r.render(C,n),C})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:v=>{i.value={...i.value,...v},c&&r.render(r.cloneVNode(c,{...i}),n)},destroy:y,modalRef:this.activeModalInstance,close:()=>this.close()}}}const $t=Symbol("FModalService");lt.install=t=>{t.component(lt.name,lt);const e=new Ei(t);t.provide($t,e),t.provide("FModalService",e)};function Wt(t,e){function n(){const i=t.beforeOpen||t.beforeClickButton||null;let o=Promise.resolve(!0);if(i){const l=i(e.value);if(typeof l>"u")return o;typeof l=="boolean"?o=Promise.resolve(l):o=l}return o}return{judgeCanOpen:n}}function Ii(t,e,n,i,o){const l=r.ref(t.buttonBehavior),a=r.ref(t.popupOnInput),d=r.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:m}=Wt(t,o),p=r.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),c=r.inject($t,null),s=r.ref();async function f(h){if(await m()&&p.value){const w=!!e.slots.default;if(l.value==="Modal"){const b=t.modalOptions,x=c==null?void 0:c.open({...b,render:()=>e.slots.default&&e.slots.default()});s.value=x==null?void 0:x.modalRef}l.value==="Overlay"&&xi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),w&&l.value==="Popup"&&i.togglePopup(!0),w&&a.value&&i.hidePopup(),e.emit("clickButton",{origin:h,value:t.modelValue})}}function y(h){e.emit("mouseEnterIcon",h)}function u(h){e.emit("mouseLeaveIcon",h)}return{buttonGroupClass:d,onClickButton:f,onMouseEnterButton:y,onMouseLeaveButton:u,modalRef:s}}function Pi(t,e,n,i,o,l){const a=r.ref(!1),d=r.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:m,hasClearClass:p}=l;function c(u){a.value=u,p.value=u}r.watch(o,()=>{c(!!o.value)});function s(u){const h=!t.readonly&&!t.disable&&t.editable,w=!t.editable;u.stopPropagation(),(h||w)&&(m(""),o.value="",c(!a.value),e.emit("clear"))}function f(u){if(d.value){if(!n.value){c(!1);return}!t.disable&&!t.readonly&&c(!0)}}function y(u){d.value&&c(!1)}return{enableClearButton:d,showClearButton:a,onClearValue:s,onMouseEnterTextBox:f,onMouseLeaveTextBox:y}}function Ni(t,e,n,i,o){const l=r.computed(()=>t.popupOnInput),a=r.computed(()=>t.popupOnFocus),{shouldPopupContent:d,closeAllPopover:m}=o,p=r.ref(!1),c=r.computed(()=>t.enableTitle?n.value:""),s=r.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),f=r.computed(()=>t.readonly||!t.editable),y=r.ref(!1),u=r.computed(()=>!t.disable&&y.value),h=r.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),w=r.computed(()=>({"input-group":!0,"f-state-disabled":t.disable,"f-state-editable":t.editable&&!t.disable&&!t.readonly,"f-state-readonly":t.readonly,"f-state-focus":u.value,"input-group--has-clear":t.enableClear&&p.value}));function b(N,I=!0){n.value=N,I&&(e.emit("change",N),e.emit("update:modelValue",N))}function x(N){d.value=!1,b(N,!0)}r.watch(()=>t.modelValue,N=>{n.value=N});function F(N){y.value=!1,e.emit("blur",N),N.stopPropagation()}function T(N){e.emit("click",N),m(),e.slots.default&&!t.disable&&!t.readonly&&t.popupOnClick&&o.togglePopup()}function v(N){!t.disable&&!t.readonly&&(y.value=!0,f.value||(e.emit("focus",N),a.value&&!d.value&&o.popup()))}function C(N){e.emit("input",N);const I=N.target.value;i.value=I,n.value!==I&&b(I,t.updateOn==="change"),l.value&&!d.value&&o.popup()}function g(N){N.target.tagName!=="INPUT"&&N.preventDefault(),N.stopPropagation()}function S(N){e.emit("keydown",N)}function M(N){N.key==="Enter"&&(l.value||a.value)&&o.hidePopup(),e.emit("keyup",N)}function E(N){const I=N.target.value;N.stopPropagation(),b(I)}return{hasFocusedTextBox:u,isTextBoxReadonly:f,textBoxClass:h,textBoxPlaceholder:s,textBoxTitle:c,inputGroupClass:w,hasClearClass:p,changeTextBoxValue:b,commitValue:x,onBlurTextBox:F,onClickTextBox:T,onFocusTextBox:v,onInput:C,onKeyDownTextBox:S,onKeyUpTextBox:M,onMouseDownTextBox:g,onTextBoxValueChange:E}}const nt="FarrisVue_PopoverInstancesKey";function Bi(t,e,n,i){const o=r.ref(),l=r.ref(!1),{judgeCanOpen:a}=Wt(t,i);r.watch(()=>o.value,(y,u)=>{window[nt]=window[nt]||new WeakMap,y?window[nt].set(n.value,y):window[nt].delete(n.value)});function d(){if(window[nt]){const y=window[nt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(u=>{const h=y.get(u);h&&u!==n.value&&!n.value.closest(".popover-fitcontent")&&h.hide()})}}function m(){const y=o.value;y&&y.show(n.value)}async function p(y=!1){if(!!e.slots.default){if(!y&&!l.value&&!await a())return;l.value=!l.value,l.value&&(await r.nextTick(),m())}}async function c(y=!1){if(!!e.slots.default){if(!y&&!await a())return;l.value=!0,await r.nextTick(),m()}}function s(){l.value=!1}function f(){l.value=!0,r.nextTick(()=>{m()})}return{hidePopup:s,showPopup:f,popup:c,shouldPopupContent:l,togglePopup:p,popoverRef:o,closeAllPopover:d}}function Oi(t,e,n){const i=r.ref(),{isTextBoxReadonly:o,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:d,onBlurTextBox:m,onClickTextBox:p,onFocusTextBox:c,onInput:s,onKeyDownTextBox:f,onKeyUpTextBox:y,onMouseDownTextBox:u,onTextBoxValueChange:h}=n,w=r.ref(t.id),{uuid:b}=X.useGuid(),x=r.computed(()=>({}));r.onMounted(()=>{var g,S;t.selectOnCreated&&((g=i.value)==null||g.select()),t.focusOnCreated&&((S=i.value)==null||S.focus({preventScroll:!0})),w.value||(w.value="button-edit_"+b(8)),w.value=w.value+"-textbox"});const F=r.ref(!1),T=g=>{g.preventDefault(),F.value=!0},v=g=>{g.preventDefault(),F.value=!1,s(g)};function C(g){F.value||s(g)}return()=>r.createVNode("input",{id:t.id?t.id+"-textbox":void 0,ref:i,name:"input-group-value",autocomplete:t.autoComplete?"on":"off",class:l.value,style:x.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:a.value,readonly:o.value,tabindex:t.tabIndex,title:d.value,type:t.inputType,value:e.value,onBlur:m,onChange:h,onClick:p,onFocus:c,onInput:C,onKeydown:f,onKeyup:y,onMousedown:u,onCompositionend:v,onCompositionstart:T},null)}function ji(t,e,n){const i=r.ref(t.separator),o=r.computed(()=>t.readonly||t.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:d,onClickTextBox:m,textBoxPlaceholder:p}=n,c=r.computed(()=>e.value?e.value.split(i.value).map(u=>({name:u,selectable:!0})):[]);function s(u){l(u.map(h=>h.name).join(i.value),!0)}r.watch(()=>t.separator,u=>{i.value=u});const f=r.ref(!t.disable&&!t.readonly);r.watch([()=>t.disable,()=>t.readonly],([u,h],[w,b])=>{f.value=!u&&!h});function y(u){m(u)}return()=>r.createVNode(bn,{tabindex:t.tabIndex,onFocus:a,onBlur:d,id:`${t.id}-tag-editor`,class:"form-control",placeholder:p.value,data:c.value,showClose:!o.value,showInput:!0,disable:o.value,onChange:s,onClick:y},null)}function Ri(t,e,n,i){const{buttonGroupClass:o,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:d}=n,{enableClearButton:m,showClearButton:p,onClearValue:c}=i,s=r.ref(),f=je.debounce(u=>{l(u)},t.buttonBehavior==="Modal"?0:200),y=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>r.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:o.value},[m.value&&r.withDirectives(r.createVNode("span",{class:"input-group-text input-group-clear",onClick:c,onMousedown:y},[r.createVNode("i",{class:"f-icon modal_close"},null)]),[[r.vShow,p.value]]),e.slots.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",onClick:f,onMouseenter:a,onMouseleave:d},[e.slots.buttonContent()]):t.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:s,onClick:u=>f(u),onMouseenter:a,onMouseleave:d},null):null]),buttonHandleElement:s}}function Ai(t,e,n){const i=r.ref(t.popupMinWidth),{hidePopup:o,popoverRef:l}=n,a=()=>{e.emit("shown")};return()=>r.createVNode(gn,{id:`${t.id}-popover`,ref:l,placement:t.placement,host:t.popupHost,"keep-width-with-reference":t.keepWidthWithReference,fitContent:!0,"right-boundary":t.popupRightBoundary,minWidth:i.value,class:t.popupClass,offsetX:t.popupOffsetX,onHidden:o,onShown:a,beforeClose:t.beforeClosePopup,limitContentBySpace:t.limitContentBySpace},{default:()=>{var d,m;return[(m=(d=e.slots).default)==null?void 0:m.call(d)]}})}const Li=r.defineComponent({name:"FButtonEdit",props:vi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue","shown"],setup(t,e){const n=r.ref(),i=r.ref(t.customClass),o=r.ref(t.modelValue),l=Bi(t,e,n,o),{shouldPopupContent:a,hidePopup:d,showPopup:m,togglePopup:p}=l,c=Ii(t,e,n,l,o),s=r.ref(""),f=Ni(t,e,o,s,l),{hasFocusedTextBox:y,commitValue:u,inputGroupClass:h}=f,w=Pi(t,e,o,y,s,f),{onMouseEnterTextBox:b,onMouseLeaveTextBox:x}=w,F=r.ref(!1),T=r.computed(()=>{const k={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return i.value&&i.value.split(" ").reduce((W,P)=>(W[P]=!0,W),k),k}),v=r.computed(()=>({overflow:t.wrapText?"hidden":""})),C=r.computed(()=>({}));function g(){if(!t.multiSelect||t.inputType!=="tag"||!n.value)return 0;let k=0;const W=Array.from(n.value.querySelectorAll(".farris-tag-item"));return W&&W.length&&(k=W.map(P=>P.offsetTop).filter(P=>P>20).length),k}const S=r.ref(g());r.onUpdated(()=>{S.value=g()});function M(){return t.multiSelect&&t.inputType==="tag"?()=>r.createVNode(r.Fragment,null,[ji(t,o,f)(),!!S.value&&r.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[r.createVNode("span",{class:"multi--more-text"},[r.createTextVNode("+"),S.value])])]):Oi(t,o,f)}let E=M();r.watch([()=>t.multiSelect,()=>t.inputType],()=>{E=M()});const{renderButtonGroup:N,buttonHandleElement:I}=Ri(t,e,c,w),B=Ai(t,e,l),V=r.ref(a.value),_={displayText:s,commitValue:u,elementRef:n,hidePopup:d,showPopup:m,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:p,openDialog:()=>{I.value&&t.buttonBehavior==="Modal"&&I.value.click()},getModal:()=>{var k;return t.buttonBehavior==="Modal"?(k=c.modalRef.value)==null?void 0:k.value:null},getTextbox:()=>{var k;return(k=n.value)==null?void 0:k.querySelector("input")},forceClosePopup:()=>{V.value=!1,F.value=!0,a.value=!1}};return r.onMounted(()=>{n.value.componentInstance=_,window.onresize=()=>{document.body.click()}}),r.onBeforeUnmount(()=>{var k;window.onresize=null,(k=window[nt])==null||k.delete(n.value)}),e.expose(_),r.watch(()=>a.value,async(k,W)=>{if(F.value){V.value=k,F.value=!1;return}if(!k&&t.beforeClosePopup&&typeof t.beforeClosePopup=="function"){try{const P=await t.beforeClosePopup();V.value=!P,(!P||t.readonly)&&(a.value=!0)}catch(P){console.error("Error in beforeClosePopup:",P),V.value=W,a.value=W}return}V.value=k}),()=>{var k,W;return r.createVNode(r.Fragment,null,[r.createVNode("div",r.mergeProps(e.attrs,{ref:n,class:T.value,id:t.id?t.id:void 0,style:v.value}),[r.createVNode("div",{id:t.id?`${t.id}-input-group`:void 0,class:h.value,style:C.value,onMouseenter:b,onMouseleave:x},[(W=(k=e.slots).precontent)==null?void 0:W.call(k),E(),N()])]),V.value&&B()])}}}),mt=new Map([["appearance",We.resolveAppearance],["column","columnOption"],["command","commandOption"]]),zt=new Map([]),Hi="root-viewmodel";class $i{constructor(e,n){ie(this,"formSchemaUtils");ie(this,"controlCreatorUtils");ie(this,"designViewModelUtils");ie(this,"useFormCommand");ie(this,"formStateMachineUtils");this.resolver=e,this.designerHostService=n,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.useFormCommand=this.designerHostService.useFormCommand,this.formStateMachineUtils=this.designerHostService.formStateMachineUtils}createComponent(e){const n=this.createComponentRefNode(e),i=this.createComponentNode(e),o=this.createViewModeNode(e),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(o),l.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(n,e,o)}wrapContainerSectionForComponent(e,n,i){var m,p,c,s,f,y,u,h,w,b,x;const o=(p=(m=n==null?void 0:n.parentComponentInstance)==null?void 0:m.schema)==null?void 0:p.type,l=(f=(s=(c=n==null?void 0:n.parentComponentInstance)==null?void 0:c.schema)==null?void 0:s.appearance)==null?void 0:f.class,a=(u=(y=this.formSchemaUtils.getFormSchema())==null?void 0:y.module)==null?void 0:u.templateId;if(o===$.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const d=[$.DgControl["content-container"].type,$.DgControl["response-layout-item"].type,$.DgControl["splitter-pane"].type,$.DgControl.drawer.type];if(o&&d.includes(o)){const F=this.resolver.getSchemaByType("section",{parentComponentInstance:n.parentComponentInstance,mainTitle:n.componentName},this.designerHostService);if(F&&F.contents&&F.contents.length){const T=F.contents[0];return T.contents=[e],this.appendAddDeleteBtnToParentContainer(T,n,i),F}}return this.appendAddDeleteBtnToParentContainer((h=n==null?void 0:n.parentComponentInstance)==null?void 0:h.schema,n,i),o===$.DgControl["tab-page"].type&&(w=n.parentComponentInstance)!=null&&w.parent&&(b=n.parentComponentInstance)!=null&&b.parent.updateToolbarItems&&((x=n.parentComponentInstance)==null||x.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,n,i){const o=e.type,l=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(n.bindTo==="/"||n.componentType!=="data-grid"&&n.componentType!=="form")return;const a=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),d=$.DgControl["tab-page"].type===o?"tab-toolbar-item":"section-toolbar-item",m=this.resolver.getSchemaByType(d),p=[Object.assign({},m,{id:`button-add-${n.componentId}`,type:d,text:"新增",disabled:a.find(c=>c.id==="canAddDetail")?{type:"StateMachine",status:!1,field:"canAddDetail"}:!1,onClick:`root-viewModel.${i.id}.${l}AddItem1`}),Object.assign({},m,{id:`button-remove-${n.componentId}`,type:d,text:"删除",disabled:a.find(c=>c.id==="canRemoveDetail")?{type:"StateMachine",status:!1,field:"canRemoveDetail"}:!1,onClick:`root-viewModel.${i.id}.${l}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,type:$.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar",buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.type||(e.toolbar.type=$.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar"),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(p),this.appendAddAndDeleteCommands(i),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var c;const n=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=X.useGuid().guid(),o=X.useGuid().guid(),l=this.resolveCommandController(),a={id:i,code:`${n}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},d={id:o,code:`${n}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:l,shortcut:{},extensions:[]};(c=this.designerHostService.designerContext)!=null&&c.appendIdentifyForNewCommand&&(this.designerHostService.designerContext.appendIdentifyForNewCommand(a),this.designerHostService.designerContext.appendIdentifyForNewCommand(d)),e.commands.push(a,d),this.formSchemaUtils.getFormSchema().module.webcmds.find(s=>s.id===l).refedHandlers.push({host:i,handler:"AddItem"},{host:o,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,n=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=e.find(l=>n.includes(l.id));if(i)return i.id;const o="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:o,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),o}createComponentRefNode(e){const n=this.resolver.getSchemaByType("component-ref");return Object.assign(n,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),n}createComponentNode(e){const n=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(e);return Object.assign(n,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getDataGridComponentClass(e)},contents:i}),n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Hi,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var l,a,d,m;const{templateId:n}=this.formSchemaUtils.getFormSchema().module,i=(l=e.parentComponentInstance)==null?void 0:l.schema,o=(a=i==null?void 0:i.appearance)==null?void 0:a.class;if(n==="double-list-in-tab-template"&&(i==null?void 0:i.type)==="tab-page"){const p=((d=e.parentComponentInstance)==null?void 0:d.parent)&&((m=e.parentComponentInstance)==null?void 0:m.parent.schema);if((p==null?void 0:p.type)==="tabs"&&(p==null?void 0:p.fill)===!0)return"f-struct-wrapper f-utils-fill-flex-column"}return["double-list-template","tree-list-template"].includes(n)&&(o!=null&&o.includes("f-page-content-main"))?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){var f,y,u,h,w;const n=(f=e.parentComponentInstance)==null?void 0:f.schema,i=(u=(y=n==null?void 0:n.schema)==null?void 0:y.appearance)==null?void 0:u.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let l,a=!1;if(o==="double-list-in-tab-template"&&(n==null?void 0:n.type)==="tab-page"){const b=((h=e.parentComponentInstance)==null?void 0:h.parent)&&((w=e.parentComponentInstance)==null?void 0:w.parent.schema);(b==null?void 0:b.type)==="tabs"&&(b==null?void 0:b.fill)===!0&&(a=!0)}if(a){const b=this.resolver.getSchemaByType("section");Object.assign(b,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),l=b}else if((o==="double-list-template"||o==="tree-list-template")&&(i!=null&&i.includes("f-page-content-main"))){const b=this.resolver.getSchemaByType("section");Object.assign(b,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),l=b}else{const b=this.resolver.getSchemaByType("content-container");Object.assign(b,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),l=b}const d=this.resolver.getSchemaByType("data-grid"),m=[],p=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),c=e.editable&&p.length>0&&p.findIndex(b=>b.id==="editable")>-1;Object.assign(d,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:m,fieldEditable:c,dataSource:e.dataSource||"",editable:c?{type:"StateMachine",status:!0,field:"editable"}:!1,pagination:{enable:!e.editable}}),l.contents=[d];const{selectedFields:s}=e;return s==null||s.forEach(b=>{if(b.$type===X.FormSchemaEntityField$Type.ComplexField)return;const x=je.cloneDeep(b),F=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",x,"",c);F&&m.push(F)}),[l]}assembleViewModelFields(e){const n=[],{selectedFields:i}=e;return i==null||i.forEach(o=>{if(o.$type===X.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=o.type.name;(a===X.FormSchemaEntityFieldTypeName.Enum||a===X.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:o.id,fieldName:o.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),n}}function pt(t,e,n,i){var l,a,d,m,p,c,s;const o=n.parentComponentInstance;if(o&&i){const f=Math.random().toString(36).slice(2,6),y={componentId:`data-grid-${f}`,componentName:((l=n.bindingSourceContext)==null?void 0:l.entityTitle)||((d=(a=n.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:d.name)||`表格-${f}`,componentType:"data-grid",parentContainerId:o.schema.id,parentComponentInstance:o,editable:!0,bindTo:((m=n.bindingSourceContext)==null?void 0:m.bindTo)||"",dataSource:(c=(p=n.bindingSourceContext)==null?void 0:p.bindingEntity)==null?void 0:c.label,selectedFields:(s=n.bindingSourceContext)==null?void 0:s.bindingEntityFields};return new $i(t,i).createComponent(y)}else return e}function qt(t,e,n){return e}const Gt={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"grid-field-editor",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:"grid-field-editor"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"object",default:null}},required:["id","type"]},St={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}};We.createPropsResolver(St,Gt,mt,pt);const Wi=We.getPropsResolverGenerator(St,Gt,mt,pt),zi=new Map([["appearance",We.resolveAppearance]]);function qi(t,e,n){return e}const Gi={title:"transfer",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:[]}}}}}},Ui={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/transfer.schema.json",title:"transfer",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for transfer",type:"string"},type:{description:"The type string of transfer",type:"string",default:"transfer"},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"]},Ut={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]},virtualized:{type:Boolean,default:!1},rowOption:{type:Object},columns:{type:Array,default:[{field:"name",title:"",dataType:"string",width:"100%"}]},checkBeforeRemoveItem:{type:Function,default:null},selectedItemClass:{Type:[String,Function],default:"draggable-item--text-truncate",validator:t=>typeof t=="string"||typeof t=="function"}};We.createPropsResolver(Ut,Ui,zi,qi,Gi);const Di={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:t=>typeof t=="string"||typeof t=="function"},itemStyle:{type:[String,Function],default:"",validator:t=>typeof t=="string"||typeof t=="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},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function Yi(t,e){function n(l){const a=[];let d=l.nextNode();for(;d;)a.push(d),d=l.nextNode();return a}function i(l,a){const d=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return n(d).map(s=>({textNode:s,text:(s.textContent||"").toLocaleLowerCase()})).map(({textNode:s,text:f})=>{const y=[];let u=0;for(;u<f.length;){const h=f.indexOf(a,u);if(h===-1)break;y.push(h),u=h+a.length}return y.map(h=>{const w=new Range;return w.setStart(s,h),w.setEnd(s,h+a.length),w})}).flat()}function o(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=i(e.value,l.toLocaleLowerCase()),d=new Highlight(...a);CSS.highlights.set("search-result",d)}return{search:o}}function Dt(t,e,n,i,o,l,a,d,m,p){const c=r.ref(t.size),s=r.ref(t.textField),f=r.ref(t.titleField),y=r.ref(t.disableField),u=r.computed(()=>{var M,E;return((M=t.selection)==null?void 0:M.multiSelect)&&((E=t.selection)==null?void 0:E.showCheckbox)}),{onMouseenterItem:h,onMouseoverItem:w,onMouseoutItem:b}=l,{getKey:x,listViewItemClass:F,listViewItemStyle:T,onCheckItem:v,onClickItem:C}=a,g=r.computed(()=>{const M={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return t.itemClass?M:{margin:c.value==="small"?"0.25rem 0":"8px 0",...M}});function S(M,E,N){return M.checked=d.findIndexInSelectedItems(M)>-1,r.createVNode("li",{class:F(M,E),id:x(M,E),key:x(M,E),style:T(M,E),onClick:I=>C(M,E,I),onMouseenter:I=>h(I,M,E),onMouseover:I=>w(I,M,E),onMouseout:I=>b(I,M,E)},[u.value&&r.createVNode("div",{class:"f-list-select",onClick:I=>I.stopPropagation()},[r.createVNode(Ct.FCheckbox,{id:"list-"+x(M,E),customClass:"listview-checkbox float-left",disabled:M[y.value],checked:M.checked,"onUpdate:checked":I=>M.checked=I,onChange:I=>{v(M,E,!I.checked)}},null)]),r.createVNode("div",{class:"f-list-content"},[r.createVNode("div",{class:t.itemContentClass,style:g.value,title:M.raw[f.value]||M.raw[s.value]},[M.raw[s.value]])])])}return{renderItem:S}}function Xi(t,e,n,i,o,l,a,d,m,p){const c=r.ref(t.multiSelect),s=r.ref(t.disableField),f=r.ref(t.textField),{onMouseenterItem:y,onMouseoverItem:u,onMouseoutItem:h}=l,{getKey:w,listViewItemClass:b,listViewItemStyle:x,onCheckItem:F,onClickItem:T,updateSelectedItems:v}=a;function C(S,M,E){return t.contentTemplate?r.createVNode(r.Fragment,null,[t.contentTemplate({item:S.raw,index:M,selectedItem:E})]):e.slots.content?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.content({item:S.raw,index:M,selectedItem:E})]):r.createVNode("div",{style:"margin: 10px 0;"},[S.raw[f.value||"name"]])}function g(S,M,E){return r.createVNode("li",{class:b(S,M),id:w(S,M),key:w(S,M),style:x(S,M),onClick:N=>T(S,M,N),onMouseenter:N=>y(N,S,M),onMouseover:N=>u(N,S,M),onMouseout:N=>h(N,S,M)},[c.value&&r.createVNode("div",{class:"f-list-select",onClick:N=>N.stopPropagation()},[r.createVNode(Ct.FCheckbox,{id:"list-"+w(S,M),customClass:"listview-checkbox",disabled:S[s.value],checked:S.checked,"onUpdate:checked":N=>S.checked=N,onChange:N=>{F(S,M,!N.checked),v()}},null)]),r.createVNode("div",{class:"f-list-content"},[C(S,M,E)])])}return{renderItem:g}}function Zi(t,e,n,i,o,l,a,d,m,p){const c=r.ref(t.multiSelect),s=r.ref(t.disableField),f=r.ref(t.textField),{onMouseenterItem:y,onMouseoverItem:u,onMouseoutItem:h}=l,{getKey:w,listViewItemClass:b,onCheckItem:x,onClickItem:F}=a,{dragstart:T,dragenter:v,dragover:C,dragend:g}=i,{removeItem:S}=m,M=r.computed(()=>({margin:c.value?"10px 0":"10px 0px 10px 14px"}));function E(_,k=""){const W=_.target;W.title=W.scrollWidth>W.clientWidth?k:""}function N(_){return r.createVNode("div",{style:M.value,onMouseenter:k=>E(k,_.raw[f.value||"name"])},[_.raw[f.value||"name"]])}function I(){return e.slots.itemContent?e.slots.itemContent:N}const B=I();function V(_,k,W){return r.createVNode("li",{class:b(_,k),id:w(_,k),key:w(_,k),onClick:P=>F(_,k,P),onMouseenter:P=>y(P,_,k),onMouseover:P=>u(P,_,k),onMouseout:P=>h(P,_,k),draggable:"true",onDragstart:P=>T(P,_,k),onDragenter:P=>v(P,k),onDragend:P=>g(P,_),onDragover:P=>C(P)},[c.value&&r.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[r.createVNode(Ct.FCheckbox,{id:"list-"+w(_,k),customClass:"listview-checkbox",disabled:_[s.value]||!_.checked,checked:_.checked,"onUpdate:checked":P=>_.checked=P,onChange:P=>x(_,k,!P.checked)},null)]),r.createVNode("div",{class:"f-list-content"},[B(_)]),r.createVNode("div",{class:"f-list-remove",onClick:P=>{P.stopPropagation(),S(k)}},[r.createVNode("div",{class:"f-list-remove-icon"},[r.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),r.createVNode("div",{class:"f-list-handle"},[r.createVNode("div",null,[r.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:V}}function Ji(t,e,n,i,o,l,a,d,m,p){var w;const c=r.ref(((w=t.group)==null?void 0:w.groupFields)||[]),{collpaseGroupIconClass:s}=o,{toggleGroupRow:f}=p;function y(b,x){x.collapse=!x.collapse,n.value=f(x.collapse?"collapse":"expand",x,n.value)}function u(b,x,F){return e.slots.group?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.group({item:b.raw,index:x,selectedItem:F})]):r.createVNode("div",{class:"f-navlookup-recentHeader",onClick:T=>y(T,b)},[r.createVNode("div",{class:"fv-grid-group-row-icon"},[r.createVNode("span",{class:s(b)},null)]),r.createVNode("div",{class:"f-navlookup-recommandLabel"},[b.raw[c.value[b.layer]]])])}function h(b,x,F){return b.layer>-1&&u(b,x,F)}return{renderItem:h}}function Qi(t,e,n,i){const{dataView:o}=n,{updateSelectedItems:l}=i;function a(d){if(d>-1&&d<o.value.length){if(t!=null&&t.checkBeforeRemoveItem&&!t.checkBeforeRemoveItem(o.value[d]))return;const m=o.value.splice(d,1);l(),e.emit("removeItem",m[0])}}return{removeItem:a}}function Ki(t,e,n,i,o,l,a,d,m,p){const c=r.ref(t.view),s=r.ref(t.view==="CardView"),f=r.ref({}),y=Qi(t,e,i,m),u=r.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":s.value,"flex-wrap":s.value})),h=r.computed(()=>!!n.value&&n.value.length>0),w=r.computed(()=>n.value.length===0);r.computed(()=>w.value&&!e.slots.empty);function b(){return c.value==="SingleView"?Dt:c.value==="DraggableView"?Zi:(c.value==="ContentView"||c.value==="CardView")&&(t.contentTemplate||e.slots.content)?Xi:Dt}const x=b(),{renderItem:F}=x(t,e,n,p,o,l,m,a,y,d),{renderItem:T}=Ji(t,e,n,p,o,l,m,a,y,d),v=[F,T];function C(){return n.value.filter(M=>M.visible!==!1).map((M,E)=>v[M.type](M,E,f))}function g(){return r.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[r.createVNode("p",{class:"f-empty-title"},[t.emptyTemplate?t.emptyTemplate():e.slots.empty?e.slots.empty():Le.LocaleService.getLocaleValue("listView.emptyMessage")])])}function S(){return r.createVNode("ul",{class:u.value,style:"list-style: none;"},[h.value&&C(),w.value&&g()])}return{renderListArea:S}}function eo(t,e,n){function i(){return e.slots.header&&r.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:i}}function Yt(t,e,n){const i=r.ref(t.headerClass),o=r.ref(t.placeholder),l=r.ref(""),a=r.computed(()=>!l.value),d=r.computed(()=>!!l.value);function m(f){l.value=""}r.watch(l,f=>{t.enableHighlightSearch&&n.search(f),e.emit("afterSearch",f)});const p=r.computed(()=>{const f={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((u,h)=>(u[h]=!0,u),f),f});function c(f){}function s(){return r.createVNode("div",{class:"f-list-view-header",onClick:r.withModifiers(()=>c,["prevent","stop"])},[r.createVNode("div",{class:p.value},[r.createVNode("div",{class:"farris-input-wrap"},[r.createVNode("div",{class:"f-cmp-inputgroup"},[r.createVNode("div",{class:"input-group f-state-editable"},[r.withDirectives(r.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":f=>l.value=f,name:"input-group-value",type:"text",placeholder:o.value,autocomplete:"off"},null),[[r.vModelText,l.value]]),r.createVNode("div",{class:"input-group-append"},[d.value&&r.createVNode("span",{class:"input-group-text input-group-clear",onClick:f=>m()},[r.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&r.createVNode("span",{class:"input-group-text"},[r.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:s}}function to(){const t=r.ref(""),e=r.ref(-1),n=r.ref(""),i=r.ref(-1),o=r.ref(!1);function l(s,f,y){i.value=y}function a(s,f,y){o.value||(i.value=y)}function d(s,f,y){i.value=-1}function m(){o.value=!0}function p(){o.value=!1}function c(){e.value=-1,t.value=""}return{activeIndex:e,focusedItemId:n,hoverIndex:i,clearActiveItem:c,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:d,resumeHover:p,suspendHover:m}}function no(t,e,n,i){const o=r.ref(t.idField),{dataView:l}=n,a=r.ref(-1),d=r.ref(!1),{activeIndex:m,focusedItemId:p,hoverIndex:c,resumeHover:s,suspendHover:f}=i;let y,u=0,h=0;function w(C,g){const S=C-u,M=g-h;y.style.left=parseInt(y.style.left)+S+"px",y.style.top=parseInt(y.style.top)+M+"px",u=C,h=g}function b(C){const{left:g,top:S}=C.getBoundingClientRect(),M=C.cloneNode(!0);return M.className=M.className+" f-listview-drag-moving",M.style.cssText=`
|
|
2
2
|
position:absolute;
|
|
3
|
-
left:${
|
|
4
|
-
top:${document.documentElement.scrollTop?
|
|
3
|
+
left:${g}px;
|
|
4
|
+
top:${document.documentElement.scrollTop?S+document.documentElement.scrollTop:S}px;
|
|
5
5
|
z-index: 999999;
|
|
6
6
|
pointer-events: none;
|
|
7
7
|
border-radius: 10px;
|
|
@@ -10,21 +10,21 @@
|
|
|
10
10
|
align-items: center;
|
|
11
11
|
float: none;
|
|
12
12
|
text-align: initial;
|
|
13
|
-
width:${getComputedStyle(
|
|
14
|
-
height:${getComputedStyle(
|
|
15
|
-
`,
|
|
13
|
+
width:${getComputedStyle(C).width};
|
|
14
|
+
height:${getComputedStyle(C).height};
|
|
15
|
+
`,M.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",M.children[0].children[0].style.cssText=`
|
|
16
16
|
margin: 10px 0px 10px 14px;
|
|
17
17
|
overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
|
|
18
|
-
`,S.children[1].style.cssText="width: 30px;padding: 0 14px 0 0",S.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(S),S}function F(w,y,x){if(w.stopPropagation(),m(),y){if(g=C(w.target),w.dataTransfer){const S=new Image;S.src="",w.dataTransfer.setDragImage(S,0,0)}u=w.pageX,h=w.pageY,setTimeout(()=>{a.value=x,d.value=!0,y.moving=!0})}}function M(w,y){if(w.preventDefault(),a.value!==y){const x=l.value[a.value],S=l.value;S.splice(a.value,1),S.splice(y,0,x),a.value=y,b(w.pageX,w.pageY)}}function T(w){w.preventDefault(),w.dataTransfer&&(w.dataTransfer.dropEffect="move"),b(w.pageX,w.pageY)}function v(w,y){y&&(y.moving=!1,g&&(document.body.removeChild(g),g=null)),l.value.forEach((x,S)=>{x.__fv_index__=S}),d.value=!1,s(),f.value=y.raw.__fv_index__,c.value=y.raw.__fv_index__,p.value=y.raw[o.value],e.emit("change",l.value),e.emit("activeChange",[y.raw])}return{dragstart:F,dragenter:M,dragover:T,dragend:v,isDragging:d}}function no(t,e,n,i,o,l){const a=r.ref(t.idField),d=r.ref(t.disableField),c=r.ref(t.draggable);r.ref(t.itemClass);const p=r.ref(t.selection.multiSelect??!1),f=r.ref(t.selection.multiSelectMode),{isDragging:s}=i,{activeIndex:m,focusedItemId:g,hoverIndex:u}=o,{clearSelection:h,getSelectedItems:b,toggleSelectItem:C,currentSelectedDataId:F}=l,M=r.ref(b()),T=_=>M.value.length===0?!1:M.value.some(k=>{let V="";return k.data?V=k.data[a.value]:V=k[a.value],V===_});function v(){M.value=b()}function w(_,k){return _.raw[a.value]!=null?_.raw[a.value]:""}function y(_,k){const V={"f-list-view-group-item":!0,"f-list-view-draggable-item":c.value,"f-un-click":!_.checked,"f-un-select":!!_.raw[d.value],"f-listview-active":p.value&&T(w(_))||!p.value&&_.raw[a.value]===F.value,"f-listview-hover":!s.value&&k===u.value,moving:!!_.moving};if(typeof t.itemClass=="string")return Z.getCustomClass(V,t.itemClass);if(typeof t.itemClass=="function"){const W=t.itemClass(_);return Z.getCustomClass(V,W)}return V}function x(_,k){const V={};if(typeof t.itemStyle=="string")return Z.getCustomStyle(V,t.itemStyle);if(typeof t.itemStyle=="function"){const W=t.itemStyle(_);return Z.getCustomStyle(V,W)}return V}const S=r.computed(()=>!p.value);function I(_,k,V){_.checked=V,!_.raw[d.value]&&(S.value&&(g.value=_.raw[a.value]),C(_))}const B=r.computed(()=>p.value&&f.value==="OnCheckClearByClick"),N=r.computed(()=>!p.value||p.value&&(f.value==="OnCheckAndClick"||f.value==="OnClick"));function O(_,k,V){if(_.raw[d.value]){V==null||V.preventDefault(),V==null||V.stopPropagation();return}F.value=_.raw[a.value],g.value=_.raw[a.value],m.value=k,B.value&&h(),N.value&&(C(_),v()),e.emit("clickItem",{data:M.value,index:k,dataItem:_.raw}),e.emit("activeChange",M.value)}return{getKey:w,selectedItems:M,listViewItemClass:y,listViewItemStyle:x,updateSelectedItems:v,onCheckItem:I,onClickItem:O}}const Xt=r.defineComponent({name:"FListView",props:Ui,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(t,e){var ee;const n=r.ref(!1),i=r.ref(),o=r.ref(!0),l=r.ref(((ee=t.rowOption)==null?void 0:ee.rowHeight)||28),a=r.ref(!1),d=r.ref([]),c=0,p=r.ref(t.columns),f=ke.useFilter(t,e),s=ke.useIdentify(t),m=ke.useHierarchy(t),g=ke.useGroupData(t,s),u=ke.useDataView(t,new Map,f,m,s),h=ke.useSelection(t,u,s,d,e),b=Di(t,i),C=ke.usePagination(t,u),F=r.computed(()=>u.dataView.value.length),M=ke.useRow(t,e,h,s),T=ke.useEdit(t,e,s,M,d),v=ke.useVisualDataBound(t,u,l),w=ke.useVisualDataCell(t,{},v),y=ke.useVisualDataRow(t,u,T,m,s,v,w,l),x=ke.useVisualGroupRow(t,s,w,y),S=ke.useVisualSummaryRow(t,s,w,y),I=ke.useVisualData(t,p,u,F,c,y,x,S),{getVisualData:B}=I;d.value=B(0,F.value+c-1);const N=r.computed(()=>{const ie={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&(ie[`${t.size}-item`]=!0),Z.getCustomClass(ie,t.customClass)}),O=r.computed(()=>!!e.slots.footer||o.value);function _(){return t.header==="SearchBar"?Yt:t.header==="ContentHeader"?Ki:Yt}const k=_(),{renderHeader:V}=k(t,e,b),W=eo(),P=to(t,e,u,W),H=no(t,e,d,P,W,h),{renderListArea:X}=Qi(t,e,d,u,g,W,h,I,H,P);function J(ie){b.search(ie)}function oe(ie){ie&&(u.load(ie),d.value=B(0,F.value+c-1))}function Me(){h.clearSelection(),W.clearActiveItem()}function Ce(){return H.selectedItems.value}function ve(){return H.selectedItems.value.map(ie=>ie[s.idField.value])}function L(ie){h.selectedValues.value=ie,H.updateSelectedItems()}function R(){return h.currentSelectedDataId.value}function A(ie){M.activeRowById(ie)}function q(ie){const he=s.idField.value,Oe=d.value.find(D=>D.raw[he]===ie),Ze=d.value.findIndex(D=>D.raw[he]===ie);Oe&&Ze>-1&&H.onClickItem(Oe,Ze)}function U(ie){const he=s.idField.value,Oe=d.value.find(Ze=>Ze.raw[he]===ie);Oe&&M.changeRow(Oe)}function te(ie){C.updatePagination(ie)}function re(ie){return d.value.filter(he=>ie.includes(he.raw[t.idField]))}e.expose({search:J,updateDataSource:oe,clearSelection:Me,getSelections:Ce,updateSelectionByIds:L,getSelectionIds:ve,activeRowById:A,getCurrentRowId:R,clickRowItemById:q,updatePagination:te,getVisibleDataByIds:re,selectRowById:U});function de(ie){t.multiSelect&&(ie.preventDefault(),ie.stopPropagation())}r.watch(()=>t.selectionValues,(ie,he)=>{ie!==he&&L(ie)});const ce=ke.useSidebar(t,h),{sidebarWidth:pe,showSidebarCheckBox:me}=ce,Ie=ke.useColumn(t,e),{applyColumnSorter:Ge,columnContext:ye,updateColumnRenderContext:Ue}=Ie,Ae=ke.useVirtualScroll(t,u,d,ye,I,F,c,pe,l,n,T),{shouldRenderPagination:$}=C,{renderDataGridPagination:K}=ke.getPagination(t,e,u,Ae,C,h);return()=>r.createVNode("div",{class:N.value,onClick:de},[V(),r.createVNode("div",{ref:i,class:"f-list-view-content",onMouseover:()=>{a.value=!0},onMouseleave:()=>{a.value=!1}},[X()]),O.value&&r.createVNode("div",{class:"f-list-view-footer"},[t.footerTemplate?t.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),io=r.defineComponent({name:"FTransfer",props:Ut,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(t,e){const n=r.ref(t.identifyField),i=r.ref(t.displayType),o=r.ref(!1),l=r.ref(t.dataSource),a=r.ref(t.textField),d=r.ref(t.selections||[]),c=r.computed(()=>d.value.map(O=>O[n.value])),p=new Map,f=r.ref(),s=r.ref(),m=r.ref();let g;function u(){const O=new Map,_=t.selectionValues||[];_.length&&_.reduce((V,W)=>(V.set(W,!0),V),O);const k=t.selections||[];k.length&&(O.clear(),k.reduce((V,W)=>(V.set(W[n.value],!0),V),O)),d.value.length||(d.value=l.value.filter(V=>O.has(V[n.value])).map(V=>Object.assign({},V))),l.value.forEach(V=>{const W=V[n.value],P=O.has(W);V.checked=P,P&&p.set(W,V)})}u(),r.watch(()=>t.selections,O=>{d.value=O,u()});const h=r.computed(()=>i.value==="List"),b=r.computed(()=>i.value==="Tree");function C(O){const _=je.cloneDeep(d.value);d.value=O.map(k=>Object.assign({},k)),e.emit("change",d.value,_)}function F(O){e.emit("selectItem",O)}function M(O){e.emit("unSelectItem",O)}function T(){return r.createVNode(Xt,{class:"f-utils-fill",data:l.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:c.value,onSelectionUpdate:C},null)}function v(){return r.createVNode(bn,{ref:m,data:l.value,columns:t.columns,virtualized:t.virtualized,rowOption:t.rowOption,textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:c.value,onSelectionUpdate:C,onSelectItem:F,onUnSelectItem:M},null)}function w(){return r.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[r.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[r.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[h.value&&T(),b.value&&v()])])])}function y(O){const _=O[n.value];if(_!==null||_!==void 0){d.value=d.value.filter(V=>V[n.value]!==_);const k=p.get(_);k&&(k.checked=!1,p.delete(_)),e.emit("change",d.value),e.emit("removeItem",O)}}r.watch(d,O=>{f.value.updateDataSource(je.cloneDeep(O));const _=g==null?void 0:g[n.value],k=O.find(V=>_===V[n.value]);k?f.value.activeRowById(k[n.value]):(g=null,f.value.activeRowById(""))});function x(O){const _=new Map;d.value.reduce((k,V)=>(k.set(V[n.value],V),k),_),d.value=O.map(k=>_.get(k[n.value])),e.emit("change",d.value)}function S(O){g=O[0],e.emit("activeChange",O)}function I(){var O;return r.createVNode(Xt,{ref:f,columns:t.columns,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:a.value,itemClass:t.selectedItemClass,onChange:x,onRemoveItem:y,onActiveChange:S,checkBeforeRemoveItem:t.checkBeforeRemoveItem},{itemContent:(O=e.slots)!=null&&O.text?_=>{var k;return((k=e.slots)==null?void 0:k.text)&&e.slots.text(_)}:null})}function B(){return r.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[r.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[r.createVNode("div",{class:"selection-pane-title"},[r.createVNode("span",{class:"selection-title"},[Re.LocaleService.getLocaleValue("transfer.selectedStart")]),r.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),r.createVNode("span",{class:"selection-item-title"},[Re.LocaleService.getLocaleValue("transfer.selectedEnd")])]),r.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[I()])])])}const N=r.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":o.value}));return r.onMounted(()=>{s.value&&s.value.parentElement&&getComputedStyle(s.value.parentElement).display==="flex"&&(o.value=!0)}),()=>r.createVNode("div",{ref:s,class:N.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:d.value}):w(),B()])}}),oo=r.defineComponent({name:"FGridFieldEditor",props:wt,emits:["change"],setup(t,e){const n=r.ref(t.viewModelId),i=r.inject("designViewModelUtils"),o=r.inject("useFormSchema"),l=r.inject("schemaService"),a=r.inject("controlCreatorUtils"),d=r.inject("designerContext");let c=t.gridData.columns;const{fieldEditable:p}=t.gridData,f=r.ref(`共 ${(c||[]).length} 项`),s=r.ref([]),m=r.ref([]);let g=[];function u(_,k=!0){if(d.checkCanDeleteControl){const V=g.find(W=>{var P;return((P=W.data)==null?void 0:P.id)===_.id});return d.checkCanDeleteControl(V,k)}return!0}const h={customRowStatus:_=>{const k=_.raw;k.type&&k.type.fields&&k.type.fields.length>0&&(_.disabled=!0),u(k,!1)||(_.disabled=!0)}};function b(){if(s.value=[],!c||c.length===0)return[];const _="[绑定字段不存在,待移除]";c.forEach(k=>{if(k.binding&&k.binding.field){const V=g.find(W=>W.data.id===k.binding.field);V?V.data.$type===Z.FormSchemaEntityField$Type.ComplexField?s.value.push(Object.assign({isInValidBinding:!0},V.data,{name:V.data.name+_})):s.value.push(Object.assign({},V.data)):s.value.push({id:k.binding.field,name:k.title+_,label:k.field,bindingField:null,isInValidBinding:!0})}}),f.value=`共 ${s.value.length} 项`}function C(_,k=[]){return _&&_.forEach(V=>{if(k.push(V),V.children&&C(V.children,k),d.appendIdentifyForNewControl){const W=c.find(P=>{var H;return((H=P.binding)==null?void 0:H.field)===V.data.id});(!W||W[d.identifyForNewControl])&&d.appendIdentifyForNewControl(V)}}),k}function F(){if(o.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const _=l.getTableInfoByViewModelId(n.value);if(_!=null&&_.id){const k=l.rtcAddedTreeNodes.value[_.id];k!=null&&k.length&&(m.value=m.value.concat(k))}}}function M(){m.value=i.getAllFields2TreeByVMId(n.value),F(),g=C(m.value)}function T(_,k,V){if(o.getComponents().find(P=>{let H=o.getControlsInCmpWidthBinding(P.viewModel,_);if(H=H.filter(X=>{var oe;if(X.id===V)return!1;const J=k.type==="visible"?X[k.type]:(oe=X.editor)==null?void 0:oe[k.type];if(J&&J.type==="Expression"&&J.expressionId===k.id)return!0}),H.length)return!0}))return!0}function v(_){_.map(k=>{var W;const V=c.find(P=>{var H;return((H=P.binding)==null?void 0:H.field)===k});if(V&&o.getExpressions().length){const P=o.getExpressions(),H=P.findIndex(X=>X.target===k);H>-1&&((W=P[H].rules)==null||W.map(X=>{var J;switch(X.type){case"visible":case"readonly":case"required":{const oe=X.type==="visible"?V[X.type]:(J=V.editor)==null?void 0:J[X.type];oe&&oe.type==="Expression"&&oe.expressionId===X.id&&(T(k,X,V.id)||(X.needDelete=!0));break}default:T(k,X,V.id)||(X.needDelete=!0)}}),P[H].rules=P[H].rules.filter(X=>!X.needDelete))}})}function w(){const _=i.getDgViewModel(n.value),k=[],V=[],W=s.value;W.forEach(H=>{const X=c==null?void 0:c.find(J=>{if(J.binding&&J.binding.field)return J.binding.field===H.id});if(X)k.push(X);else{const J=a.setGridFieldProperty(t.gridType,H.data,null,p);_.addField(H),k.push(J)}V.push(H.id)});const P=_.fields.filter(H=>!V.includes(H.id));if(P&&P.length>0){const H=P.map(X=>X.id);_.removeField(H),v(H)}W.length!==s.value.length&&(s.value=W),f.value=`共 ${k.length} 项`,e.emit("change",k)}const y={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{w()},rejectCallback:()=>{}};function x(){return t.getLatestGridData?c=t.getLatestGridData().columns:c=t.gridData.columns,M(),b(),Promise.resolve(!0)}function S(_){s.value=[...s.value,_.raw]}function I(_){const k=s.value.findIndex(V=>V.id===_.raw.id);k>-1&&(s.value=[...s.value.slice(0,k),...s.value.slice(k+1)])}function B(_){const k=s.value.findIndex(V=>V.id===_.id);k>-1&&(s.value=[...s.value.slice(0,k),...s.value.slice(k+1)])}function N(_){const k=_[0].__fv_index__,V=s.value.findIndex(P=>P.id===_[0].id),W=s.value.find(P=>P.id===_[0].id);s.value.splice(V,1),s.value.splice(k,0,W)}const O=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(_,k)=>_.data+` [${k.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return r.onMounted(()=>{M()}),()=>r.createVNode(Ai,{"button-behavior":"Modal","modal-options":y,modelValue:f.value,"onUpdate:modelValue":_=>f.value=_,editable:!1,beforeOpen:x},{default:()=>[r.createVNode("div",{class:"f-utils-absolute-all"},[r.createVNode(io,{selections:s.value,"data-source":m.value,rowOption:h,class:"mx-2",columns:O,displayType:"Tree",onRemoveItem:B,onSelectItem:S,onUnSelectItem:I,onActiveChange:N,checkBeforeRemoveItem:u},{text:_=>r.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[_.data.name.data,r.createTextVNode(" ["),_.data.bindingField.data,r.createTextVNode("]")])})])]})}}),ro={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},enableGroup:{description:"",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string"}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},lo={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},formatterType:{description:"启用列格式化",type:"string",default:""},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string",default:"default"}},required:["id","type"]},St={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},ao=ze.createPropsResolver(St,ro,zt,qt),so=ze.createPropsResolver(St,lo,zt,qt);function co(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function i(c,p=""){return{path:p+c.code,field:c.id,fullPath:c.code}}function o(c,p=""){const f=e.getViewModelById(c);return f?f.states.map(s=>i(s,p)):[]}function l(c){const p=e.getRootViewModelId(),f=o(c);if(c===p)return f;const s=o(p,"root-component.");return[...f,...s]}function a(c){return c.binding&&c.binding.path||c.id||""}function d(){return n&&n.getRenderStates()||[]}return{getVariables:l,getControlName:a,getStateMachines:d}}class Zt{constructor(e){ne(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);ne(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});ne(this,"getExpressionConverter",(e,n)=>({convertFrom:(i,o,l,a)=>{const d=l.getExpressionRuleValue(e,n||o);return d&&d.value||""},convertTo:(i,o,l,a,d)=>{var c;if(o==="dataPicking"&&(l!=null&&l.target)){const p=`${l.target}_dataPicking`;((c=l.rules)==null?void 0:c.some(s=>s.id===p&&s.value))?i.dictPickingExpressionId=p:delete i.dictPickingExpressionId}a.updateExpression(l)}}));this.formSchemaService=e}getExpressionRule(e,n){const i=this.formSchemaService.getExpressions();if(!i)return"";const o=i.find(a=>a.target===e);if(!o)return"";const l=o.rules.find(a=>a.type===n);return l||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const n=this.formSchemaService.getRootViewModelId(),i=this.formSchemaService.getViewModelById(n);if(!i||!i.states||i.states.length===0)return[];const o=[];return i.states.filter(l=>l.category==="remote").forEach(l=>{o.push({key:l.code,name:l.name,description:l.name,category:l.category})}),o}createTreeNode(e,n,i="label"){return{id:e.id,name:e.name,bindingPath:e[i],parents:n,type:"field"}}buildEntityFieldsTreeData(e=null,n){const i=[];return e==null||e.forEach(o=>{var d;const l=this.createTreeNode(o,n);let a=[];(d=o.type)!=null&&d.fields&&(a=this.buildEntityFieldsTreeData(o.type.fields,[...n,o.label])),i.push({data:l,children:a,expanded:!0})}),i}buildChildEntityTreeData(e=null,n){const i=[];return e==null||e.forEach(o=>{var c,p;const l=this.createTreeNode(o,n);l.type="entity";const a=this.buildEntityFieldsTreeData((c=o.type)==null?void 0:c.fields,[...n,o.label]),d=this.buildChildEntityTreeData((p=o.type)==null?void 0:p.entities,[...n,o.label]);d!=null&&d.length&&(a==null||a.push(...d)),i.push({data:l,children:a||[],expanded:!0})}),i}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const n=e[0];if(!(n!=null&&n.type))return[];const i=this.buildEntityFieldsTreeData(n.type.fields,[n.code]),o=this.buildChildEntityTreeData(n.type.entities,[n.code]);return o!=null&&o.length&&(i==null||i.push(...o)),{entityCode:n.code,fields:[{data:this.createTreeNode(n,[],"code"),children:i||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,n,i){const o=i==="Field"?e.binding.field:e.id,l=this.getExpressionRule(o,n),a=this.getEntitiesAndVariables(),d={message:["validate","required","dataPicking"].includes(n)&&l?l.message:"",...a};return l.messageType!=null&&(d.messageType=l.messageType),d}buildRule(e,n,i,o){const{expression:l,message:a,messageType:d}=n,c={id:`${e}_${i}`,type:i,value:l};return(i==="validate"||i==="dataPicking"||i==="required")&&(c.message=a),i==="dataPicking"&&(c.messageType=d),i==="validate"&&o&&(c.elementId=o),c}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,n,i,o){const l=n==="Field"?e.binding.field:e.id,a=this.buildRule(l,i,o,e.type==="form-group"?e.id:"");let c=this.getExpressionData().find(f=>f.targetType===n&&f.target===l);const p=f=>f.value.trim()==="";if(c){const f=c.rules.find(s=>s.id===a.id);if(f)p(a)?c.rules=c.rules.filter(s=>s.id!==a.id):(Object.assign(f,a),o==="validate"&&e.type==="form-group"&&(f.elementId=e.id));else{if(p(a))return null;c.rules=c.rules||[],c.rules.push(a)}}else{if(p(a))return null;c={target:`${l}`,rules:[a],targetType:n}}return c}getExpressionEditorOptions(e,n,i,o){return i.reduce((l,a)=>{var c,p;const d=n==="Field"?(c=e==null?void 0:e.binding)==null?void 0:c.field:e.id;return l[a]={hide:n==="Field"?!!((p=e==null?void 0:e.binding)!=null&&p.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(d),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,n),onSubmitModal:f=>{const s=this.updateExpression(e,n,f,a);if(o){const m=this.buildRule(d,f,a);o(m)}return s}}},l},{})}getExpressionInfo(e,n,i){const o=n==="Field"?e.binding.field:e.id,l=this.getExpressionRule(o,i),a={value:l&&l.value,targetId:o,targetType:n,expressionType:i};return l&&l.message&&(a.message=l.message),a}getExpressionConfig(e,n,i=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,n,i,o)}}}getExpressionOptions(e,n,i){const o=this.getExpressionInfo(e,n,i);return{dialogTitle:`${this.expressionNames[i]}编辑器`,singleExpand:!1,showMessage:i==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,i,n),expressionInfo:o}}}class Jt{constructor(e,n){ne(this,"componentId");ne(this,"viewModelId");ne(this,"eventsEditorUtils");ne(this,"formSchemaUtils");ne(this,"formMetadataConverter");ne(this,"designViewModelUtils");ne(this,"designViewModelField");ne(this,"controlCreatorUtils");ne(this,"designerHostService");ne(this,"designerContext");ne(this,"schemaService",null);ne(this,"metadataService",null);ne(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=e,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=n.designViewModelUtils,this.controlCreatorUtils=n.controlCreatorUtils,this.metadataService=n.metadataService,this.schemaService=n.schemaService,this.designerContext=n.designerContext}getFormDesignerInstance(){var e,n;return(n=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:n.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var i;const n=e.binding&&e.binding.type==="Form"&&e.binding.field;if(n){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(l=>l.id===n)}e.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:z.DgControl[e.type]&&z.DgControl[e.type].name}]}}}}}getAppearanceConfig(e=null,n={},i){const o={title:"外观",description:"Appearance"},l={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in n)l[a]=Object.assign(l[a]||{},n[a]);return{...o,properties:{...l},setPropertyRelates(a,d){if(a){switch(a&&a.propertyID){case"class":case"style":{z.canvasChanged.value++;break}}i&&i(a,e,d)}}}}getPropertyEditorParams(e,n=[],i="visible",o={},l={},a=""){const{getVariables:d,getControlName:c,getStateMachines:p}=co(this.designerHostService),f=this.getRealTargetType(e),s=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],m={type:"property-editor",propertyTypes:s};return s.map(g=>{switch(g){case"Const":Object.assign(m,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":m.expressionConfig=this.getExpressionOptions(e,f,a||i);break;case"StateMachine":m.stateMachines=p();break;case"Variable":Object.assign(m,{controlName:c(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:d(this.viewModelId),parentComponentId:this.componentId==="root-component"?"":"root-component",onBeforeOpenVariables:u=>{u.value=d(this.viewModelId)}},l),this.designerContext.designerMode==="PC_RTC"&&(m.newVariablePrefix="ext_"+m.newVariablePrefix);break}}),m}getVisibleProperty(e,n=""){var l;let i=["Const","Variable","StateMachine","Expression"];return n==="gridFieldEditor"?i=["Const","Expression"]:n==="form-group"&&!((l=e.binding)!=null&&l.field)&&(i=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,i,"visible")}}}getBehaviorConfig(e,n="",i={},o){const l={title:"行为",description:""},a=this.getVisibleProperty(e,n);for(const c in i)a[c]=Object.assign(a[c]||{},i[c]);const d=this;return{...l,properties:{...a},setPropertyRelates(c,p){if(c){switch(c.propertyID){case"disabled":case"readonly":case"visible":d.afterMutilEditorChanged(e,c);break}o&&o(c,p)}}}}afterMutilEditorChanged(e,n){this.addNewVariableToViewModel(n,this.viewModelId),this.updateExpressionValue(n),this.clearExpression(n,e)}updateElementByParentContainer(e,n){const i=n&&n.parent&&n.parent.schema;if(!i)return;const o=i.contents.findIndex(a=>a.id===e),l=je.cloneDeep(i.contents[o]);i.contents.splice(o,1),i.contents.splice(o,0,l),z.refreshCanvas()}addNewVariableToViewModel(e,n){const i=e.propertyValue;if(!(i&&typeof i=="object")||!(i.type==="Variable"&&i.isNewVariable))return;const a={id:i.field,category:"locale",code:i.fullPath,name:i.fullPath,type:i.newVariableType||"String",isRtcVariable:this.designerContext.designerMode==="PC_RTC"?!0:void 0};delete i.newVariableType,delete i.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById("root-viewmodel").states.push(a)}updateExpressionValue(e){const n=e.propertyValue;if(!((n&&n.type)==="Expression"&&n.expressionInfo))return;const{expressionId:l,expressionInfo:a}=n,{targetId:d,targetType:c,expressionType:p,value:f,message:s}=a,m=this.formSchemaUtils.getModule();m.expressions=m.expressions||[];const{expressions:g}=m;let u=g.find(b=>b.target===d);u||(u={target:d,rules:[],targetType:c},g.push(u));const h=u.rules.find(b=>b.type===p);if(h)h.value=f,h.message=s;else{const b={id:l,type:p,value:f,message:s};u.rules.push(b)}delete n.expressionInfo}clearExpression(e,n){const i=e.propertyValue;if(i&&i.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),d=n.binding?n.binding.field:n.id,c=a.find(p=>p.target===d);!c||!c.rules||(c.rules=c.rules.filter(p=>p.type!==l))}getExpressionOptions(e,n,i){return new Zt(this.formSchemaUtils).getExpressionOptions(e,n,i)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item","drawer-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const n={};return n[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:i=>{var o;((o=i.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(i)}}},n}}const Qt=[{key:"none",value:"无"},{key:"cellNumber",value:"手机号"},{key:"tel",value:"座机号/传真号"},{key:"telOrCell",value:"手机号/座机号/传真号"},{key:"postCode",value:"邮编"},{key:"email",value:"电子邮箱"},{key:"idCode",value:"身份证号"},{key:"carCode",value:"车牌号"},{key:"subjectCode",value:"10位数字会计科目代码"},{key:"custom",value:"自定义"}];function uo(t){switch(t){case"none":return"";case"cellNumber":return"^1[0-9]{10}$";case"tel":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$";case"telOrCell":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$|^1[0-9]{10}$";case"postCode":return"^[1-9]\\d{5}(?!\\d)$";case"workCode":return"^\\d{8}$";case"email":return"^[A-Za-z\\d]+([-_.][A-Za-z\\d]+)*@([A-Za-z\\d]+[-.])+[A-Za-z]{2,5}$";case"idCode":return"^[1-9]\\d{5}[1-9]\\d{3}((0[1-9])|(1[0-2]))(0[1-9]|([1|2][0-9])|3[0-1])((\\d{4})|\\d{3}X)$";case"carCode":return"^([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][·\\s]?[A-HJ-NP-Z0-9]{4,5}[挂学警港澳]?|粤[Z港澳][·\\s]?[港澳][0-9A-HJ-NP-Z]{4}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?([DF][0-9A-HJ-NP-Z][0-9]{4}|[0-9]{5}[DF])[挂港澳]?|[使领][0-9]{3}[·\\s]?[0-9]{3}|临[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?[0-9A-Z]{4,5}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z]?[·\\s]?警[0-9A-Z]{4}|[军海空][A-Z][·\\s]?[0-9]{4,5}|WJ(?:[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]|\\d{2})[·\\s]?[0-9A-Z]{4,5})$";case"carCodeNew":return"^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF])|([DF][A-HJ-NP-Z0-9][0-9]{4}))$";case"subjectCode":return"^\\d{10}$"}return""}function fo(t){var e;return"请输入正确的"+((e=Qt.find(n=>n.key===t))==null?void 0:e.value)}const mo={convertTo:(t,e,n,i)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation.type=n,t.editor.formatValidation.expression=uo(n),t.editor.formatValidation.message=fo(n)},convertFrom:(t,e,n)=>t.editor.formatValidation?e==="type"?t.editor.formatValidation[e]||"none":t.editor.formatValidation[e]:"none"},Kt={convertTo:(t,e,n,i)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation[e]=n},convertFrom:(t,e,n)=>t.editor.formatValidation?t.editor.formatValidation[e]:t.editor[e]};class po extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getPropertyConfig(e,n){return super.getPropertyConfig(e,n),this.propertyConfig.categories.formatValidation=this.getFormatValidation(e),this.propertyConfig}getEditorProperties(e){var i,o;let n;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=l==null?void 0:l.schemaField)!=null&&o.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n,needValid:!0}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getGridFieldEdtiorProperties(e){var i,o;let n;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=l==null?void 0:l.schemaField)!=null&&o.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getFormatValidation(e){var i,o,l,a;const n={title:"输入格式校验",description:"输入校验",hide:!((i=e.binding)!=null&&i.field),properties:{type:{title:"格式类型",type:"enum",description:"格式类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:Qt},refreshPanelAfterChanged:!0,$converter:mo,parentPropertyID:"formatValidation"}}};return(o=e.editor.formatValidation)!=null&&o.type&&((l=e.editor.formatValidation)==null?void 0:l.type)!=="none"&&(n.properties.message={title:"输入错误提示",type:"string",description:"输入错误提示",$converter:Kt,parentPropertyID:"formatValidation"}),((a=e.editor.formatValidation)==null?void 0:a.type)==="custom"&&(n.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:Kt,parentPropertyID:"formatValidation"}),n}}const lt=class lt{static getEditorTypesByMDataType(e,n=!1,i=""){if(n)return[{key:z.DgControl["language-textbox"].type,value:z.DgControl["language-textbox"].name}];let o=lt.fieldControlTypeMapping[e];if(i==="data-grid-column"&&(o!=null&&o.length)){const l=[z.DgControl["check-group"].type,z.DgControl["radio-group"].type,z.DgControl.image.type,z.DgControl["rich-text-editor"].type];o=o.filter(a=>!l.includes(a.key))}return o}static getAllInputTypes(){const e=[];for(const n in lt.fieldControlTypeMapping)lt.fieldControlTypeMapping[n].forEach(i=>{e.find(o=>o.key===i.key&&o.value===i.value)||e.push({key:i.key,value:i.value})});return e}static mappingDomPropAndSchemaProp(e,n){var l;const i=(l=e.editor)==null?void 0:l.type,o=[];return(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&n&&n.categoryId&&n.categoryId.indexOf("gridFieldEditor")<0&&o.push({domField:"title",schemaField:"name"}),o.push({domField:"label",schemaField:"name"}),o.push({domField:"editor.required",schemaField:"require"}),o.push({domField:"editor.readonly",schemaField:"readonly"}),(i===z.DgControl["input-group"].type||i===z.DgControl.textarea.type||i===z.DgControl["number-spinner"].type)&&o.push({domField:"editor.maxLength",schemaField:"type.length"}),i===z.DgControl["number-spinner"].type&&o.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.precision",schemaField:"type.precision"}),(i===z.DgControl["combo-list"].type||i===z.DgControl["radio-group"].type)&&o.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.data",schemaField:"type.enumValues"}),i===z.DgControl["date-picker"].type&&(o.push({domField:"editor.displayFormat",schemaField:"editor.format"}),o.push({domField:"editor.fieldType",schemaField:"type.name"})),i===z.DgControl["number-spinner"].type&&(o.push({domField:"editor.max",schemaField:"editor.maxValue"}),o.push({domField:"editor.min",schemaField:"editor.minValue"})),i===z.DgControl.lookup.type&&(o.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),o.push({domField:"editor.valueField",schemaField:"editor.valueField"}),o.push({domField:"editor.textField",schemaField:"editor.textField"}),o.push({domField:"editor.displayType",schemaField:"editor.displayType"}),o.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),o.push({domField:"editor.helpId",schemaField:"editor.helpId"})),o.push({domField:"path",schemaField:"bindingPath"}),o.push({domField:"binding.path",schemaField:"bindingField"}),o.push({domField:"binding.fullPath",schemaField:"path"}),(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&o.push({domField:"field",schemaField:"bindingPath"}),o}};ne(lt,"fieldControlTypeMapping",{String:[{key:z.DgControl["input-group"].type,value:z.DgControl["input-group"].name},{key:z.DgControl.lookup.type,value:z.DgControl.lookup.name},{key:z.DgControl.image.type,value:z.DgControl.image.name},{key:z.DgControl["date-picker"].type,value:z.DgControl["date-picker"].name},{key:z.DgControl.switch.type,value:z.DgControl.switch.name},{key:z.DgControl["check-box"].type,value:z.DgControl["check-box"].name},{key:z.DgControl["check-group"].type,value:z.DgControl["check-group"].name},{key:z.DgControl["radio-group"].type,value:z.DgControl["radio-group"].name},{key:z.DgControl["combo-list"].type,value:z.DgControl["combo-list"].name},{key:z.DgControl.textarea.type,value:z.DgControl.textarea.name},{key:z.DgControl["time-picker"].type,value:z.DgControl["time-picker"].name}],Text:[{key:z.DgControl.textarea.type,value:z.DgControl.textarea.name},{key:z.DgControl.lookup.type,value:z.DgControl.lookup.name},{key:z.DgControl.image.type,value:z.DgControl.image.name},{key:z.DgControl["rich-text-editor"].type,value:z.DgControl["rich-text-editor"].name}],Decimal:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name}],Integer:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name}],Number:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name},{key:z.DgControl.switch.type,value:z.DgControl.switch.name},{key:z.DgControl["check-box"].type,value:z.DgControl["check-box"].name}],BigNumber:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name}],Date:[{key:z.DgControl["date-picker"].type,value:z.DgControl["date-picker"].name}],DateTime:[{key:z.DgControl["date-picker"].type,value:z.DgControl["date-picker"].name}],Boolean:[{key:z.DgControl.switch.type,value:z.DgControl.switch.name},{key:z.DgControl["check-box"].type,value:z.DgControl["check-box"].name}],Enum:[{key:z.DgControl["combo-list"].type,value:z.DgControl["combo-list"].name},{key:z.DgControl["radio-group"].type,value:z.DgControl["radio-group"].name}],Object:[{key:z.DgControl.lookup.type,value:z.DgControl.lookup.name},{key:z.DgControl["combo-list"].type,value:z.DgControl["combo-list"].name},{key:z.DgControl["radio-group"].type,value:z.DgControl["radio-group"].name}]});let ct=lt;var rt=(t=>(t.Form="Form",t.Variable="Variable",t))(rt||{});class ho{constructor(){ne(this,"label","");ne(this,"id","");ne(this,"columnInSM",12);ne(this,"columnInMD",6);ne(this,"columnInLG",3);ne(this,"columnInEL",2);ne(this,"displayWidthInSM",1);ne(this,"displayWidthInMD",1);ne(this,"displayWidthInLG",1);ne(this,"displayWidthInEL",1);ne(this,"displayColumnCountAtBreakPoint","md");ne(this,"tagRow",0);ne(this,"showTopBorder",0);ne(this,"group",1);ne(this,"isSupportedClass",!0);ne(this,"fieldSetId","")}}function go(t){let e,n;const i=new Map;let o=[];function l(f,s){const g=f.split(" ").filter(F=>F.startsWith("col-"));if(g.length===0){s.isSupportedClass=!1;return}let u=g.find(F=>/^col-([1-9]|10|11|12)$/.test(F)),h=g.find(F=>/^col-md-([1-9]|10|11|12)$/.test(F)),b=g.find(F=>/^col-xl-([1-9]|10|11|12)$/.test(F)),C=g.find(F=>/^col-el-([1-9]|10|11|12)$/.test(F));u=u||"col-12",s.columnInSM=parseInt(u.replace("col-",""),10),s.displayWidthInSM=s.columnInSM/12,s.displayWidthInSM!==1&&(s.isSupportedClass=!1),h=h||"col-md-"+s.columnInSM,s.columnInMD=parseInt(h.replace("col-md-",""),10),s.displayWidthInMD=s.columnInMD/6,[1,2].includes(s.displayWidthInMD)||(s.isSupportedClass=!1),b=b||"col-xl-"+s.columnInMD,s.columnInLG=parseInt(b.replace("col-xl-",""),10),s.displayWidthInLG=s.columnInLG/3,[1,2,3,4].includes(s.displayWidthInLG)||(s.isSupportedClass=!1),C=C||"col-el-"+s.columnInLG,s.columnInEL=parseInt(C.replace("col-el-",""),10),s.displayWidthInEL=s.columnInEL/2,[1,2,3,4,5,6].includes(s.displayWidthInEL)||(s.isSupportedClass=!1)}function a(f,s,m,g=!1){let u=!1;f.contents.forEach(h=>{if(h.type==="fieldset"){m+=1,a(h,s,m,!0),u=!0;return}u&&(m+=1,u=!1);const b=h.appearance&&h.appearance.class,C=new ho;b?l(b,C):C.isSupportedClass=!1,C.label=h.label||h.id,C.id=h.id,C.group=m,g&&(C.fieldSetId=f.id),n===h.id&&(e=m),i.set(h.id,h),s.push(C)})}function d(f){const s=t.getComponentById(f);if(!s||!s.componentType||!s.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const m=t.selectNode(s,g=>g.type===z.DgControl["response-form"].type);return!m||!m.contents||m.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:m}}function c(f,s){s=s||f.id;const{result:m,message:g,formNode:u}=d(s);if(!m)return{result:m,message:g};n=f.id,o=[],i.clear();const h=u.contents[0].type===z.DgControl.fieldset.type?0:1;a(u,o,h);const b=o.find(F=>!F.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:b?"customize":"standard"},importData:o}}function p(f,s){s=s;const{result:m,formNode:g}=d(s);if(!m)return"";const u=[];return f.forEach(h=>{var F;const b=i.get(h.id),C=b.appearance&&b.appearance.class;if(C){const T=C.split(" ").filter(I=>!I.startsWith("col-")),v="col-"+h.columnInSM,w="col-md-"+h.columnInMD,y="col-xl-"+h.columnInLG,x="col-el-"+h.columnInEL,S=[v,w,y,x].concat(T);b.appearance.class=S.join(" ")}if(h.fieldSetId){const M=g.contents.find(v=>v.id===h.fieldSetId),T=u.find(v=>v.id===h.fieldSetId);T?(F=T.contents)==null||F.push(b):(u.push(M),M.contents=[b])}else u.push(b)}),g.contents=u,g.id}return{checkCanFindFormNode:d,checkCanOpenLayoutEditor:c,changeFormControlsByResponseLayoutConfig:p,getResonseFormLayoutConfig:a}}class pt extends Jt{constructor(n,i){super(n,i);ne(this,"responseLayoutEditorFunction");ne(this,"bindingVarible");ne(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=go(this.formSchemaUtils)}getCommonPropertyConfig(n,i,o="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(n,i,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n,i),this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"form-group")}getPropertyConfig(n,i){return this.getCommonPropertyConfig(n,i,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressions=this.getExpressionConfig(n,"Field"),this.propertyConfig.categories.eventsEditor=this.getEventPropertyConfig(n),this.propertyConfig}getGridFieldEdtiorPropConfig(n,i){return this.propertyConfig.categories={},this.getCommonPropertyConfig(n,i,"Grid"),this.getGridFieldEdtiorProperties?this.propertyConfig.categories.editor=this.getGridFieldEdtiorProperties(n):this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressons=this.getExpressionConfig(n,"Field"),this.propertyConfig.categories}getBasicProperties(n,i,o="Card"){var p;const l=this;this.setDesignViewModelField(n);const{canChangeControlType:a,editorTypeList:d}=this.getAvailableEditorType(n),c={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:d,readonly:!a}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},showLabelType:{description:"标签显示方式:1、显示:显示标签 2、占位:保留标签空间,但不显示文本 3、不显示:不显示标签",title:"标签显示",type:"enum",editor:{data:[{id:"visible",name:"显示"},{id:"reserve-space",name:"占位"},{id:"none",name:"不显示"}]},defaultValue:((p=n.editor)==null?void 0:p.type)==="image"?"none":"visible"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:n,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0,readonly:this.formSchemaUtils.designerMode==="PC_RTC"&&!n.isRtcControl}},setPropertyRelates(f,s,m){if(f)switch(f&&f.propertyID){case"type":{l.changeControlType(n,f,i);break}case"label":{f.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(n,f,m);break}}}};return o.toLocaleLowerCase()!=="card"&&delete c.properties.showLabelType,c}checkCanChangeControlType(n,i){if(!n.binding)return!1;if(n.binding.type==="Variable"){if(this.bindingVarible=this.formSchemaUtils.getVariableById(n.binding.field),!this.bindingVarible)return!1}else if(!this.designViewModelField||this.designViewModelField.$type!==Z.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(n){var l,a;const i=this.checkCanChangeControlType(n,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=z.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===Z.FormSchemaEntityField$Type.SimpleField?o=ct.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(o=ct.getEditorTypesByMDataType(this.bindingVarible.type,!!((a=this.designViewModelField)!=null&&a.multiLanguage))),{canChangeControlType:i,editorTypeList:o}}changeBindingField(n,i,o){i.needRefreshEntityTree=!0}getAppearanceProperties(n,i){const o=this;return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},fill:{title:"填充宽度",description:"启用后,控件占满父容器宽度",type:"boolean",parentPropertyID:"appearance"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(n,o.componentId)}}},setPropertyRelates(l,a){if(l)switch(l&&l.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,o.componentId||n.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(n.id,i),delete n.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(l.propertyValue,n.id,this.componentId),z.canvasChanged.value++;break;case"style":{z.canvasChanged.value++;break}}}}}getEditorProperties(n){return this.getComponentConfig(n)}changeControlType(n,i,o){const l=i.propertyValue,a=o&&o.parent&&o.parent.schema;if(!a)return;const d=a.contents.findIndex(f=>f.id===n.id);if(d===-1)return;const c=a.contents[d];let p;if(this.designViewModelField){const m=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(u=>u.id===this.designViewModelField.id).fieldSchema||{};m.editor||(m.editor={}),m.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,m,!1),p=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}p||(p=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(p,{id:c.id,appearance:c.appearance,size:c.size,label:c.label,binding:c.binding}),Object.prototype.hasOwnProperty.call(c,"visible")&&Object.assign(p,{visible:c.visible}),c.editor&&["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(c.editor,f)&&(p.editor[f]=c.editor[f])}),o!=null&&o.updateContextSchema?o.updateContextSchema(p):(o.schema=Object.assign(c,p),Object.assign(n,p)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(f=>f.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(f=>f.classList.remove("dgComponentFocused")),z.canvasChanged.value++,r.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(n,i={},o={},l){var m,g;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},i),d=(m=n.binding)!=null&&m.field?[]:["Const","Variable","StateMachine"],c=this.getPropertyEditorParams(n,d,"readonly"),p=this.getPropertyEditorParams(n,d,"required"),f={readonly:{description:"",title:"只读",editor:c},required:{description:"",title:"必填",type:"boolean",editor:p,visible:!!((g=n.binding)!=null&&g.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const u in o)f[u]=Object.assign(f[u]||{},o[u]);const s=this;return{...a,properties:{...f},setPropertyRelates(u,h){if(u){switch(u.propertyID){case"readonly":case"required":s.afterMutilEditorChanged(n,u);break}l&&l.bind(s)(u,n,h)}}}}updateUnifiedLayoutAfterControlChanged(n,i,o){const l=n.split(" ");let a=l.find(s=>/^col-([1-9]|10|11|12)$/.test(s)),d=l.find(s=>/^col-md-([1-9]|10|11|12)$/.test(s)),c=l.find(s=>/^col-xl-([1-9]|10|11|12)$/.test(s)),p=l.find(s=>/^col-el-([1-9]|10|11|12)$/.test(s));a=a||"col-12",d=d||"col-md-"+a.replace("col-",""),c=c||"col-xl-"+d.replace("col-md-",""),p=p||"col-el-"+c.replace("col-xl-","");const f={id:i,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(d.replace("col-md-",""),10),columnInLG:parseInt(c.replace("col-xl-",""),10),columnInEL:parseInt(p.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,f)}updateUnifiedLayoutAfterResponseLayoutChanged(n,i){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(n);if(!o||!o.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,l,1),i){const u=l.find(h=>h.id===i.id);Object.assign(u||{},i)}const a=l.map(u=>u.columnInSM),d=l.map(u=>u.columnInMD),c=l.map(u=>u.columnInLG),p=l.map(u=>u.columnInEL),f=this.checkIsUniqueColumn(a)?a[0]:null,s=this.checkIsUniqueColumn(d)?d[0]:null,m=this.checkIsUniqueColumn(c)?c[0]:null,g=this.checkIsUniqueColumn(p)?p[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:s,uniqueColClassInLG:m,uniqueColClassInEL:g})}checkIsUniqueColumn(n){const i=new Set(n);return Array.from(i).length===1}getItemCollectionEditor(n,i,o){return i=i||"value",o=o||"name",{editor:{columns:[{field:i,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:i,nameField:o,requiredFields:[i,o],uniqueFields:[i,o],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===Z.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(n,i){n.binding&&n.binding.type===rt.Form&&n.binding.field?(i.find(o=>o.label==="fieldValueChanging"),i.find(o=>o.label==="fieldValueChanged"),this.designViewModelField&&(n.fieldValueChanging=this.designViewModelField.valueChanging,n.fieldValueChanged=this.designViewModelField.valueChanged)):i=i.filter(o=>o.label!=="fieldValueChanging"&&o.label!=="fieldValueChanged")}getControlMethodType(n){if(!n.binding)return n.type;switch(n.binding.type){case rt.Form:return n.binding.path||n.type;case rt.Variable:return n.binding.fullPath||n.type}return n.type}getEventPropertyConfig(n,i="card",o,l){const a=this;let d=[];if(o&&(d=d.concat(o)),d.length===0)return{title:"事件",hideTitle:!0,properties:{},tabId:"commands",tabName:"交互",hide:!0};this.appendFieldValueChangeEvents(n,d);const c=a.eventsEditorUtils.formProperties(n,a.viewModelId,d);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(c),tabId:"commands",tabName:"交互",setPropertyRelates(s,m){const g=s.propertyValue;delete n[a.viewModelId],g&&(g.setPropertyRelates=this.setPropertyRelates,g.controlInfo={type:a.getControlMethodType(n),name:n.title},a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,g.events,g)),l&&l(s,m,g);const u=a.designViewModelUtils.getDgViewModel(a.viewModelId);u&&a.designViewModelField&&u.changeField(a.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged})}}}getExpressionConfig(n,i,o=["compute","dependency","validate"],l){return new Zt(this.formSchemaUtils).getExpressionConfig(n,i,o,l)}getBindingDataType(){return this.designViewModelField?this.designViewModelField.type.name==="Number"?"number":this.designViewModelField.type.name==="String"?"string":"boolean":"boolean"}getEditor(){return this.getBindingDataType()==="number"?this.numberEditorOptions:{}}updatePropertyValue(n,i,o){var l;n.editor[i]!==o?n.editor[i]=o:(l=this.getFormDesignerInstance())==null||l.reloadPropertyPanel()}setBooleanValue(n,i,o){let l=o;this.getBindingDataType()==="string"&&(l=(l||"").trim()||(i==="trueValue"?"true":"false"));const d=i==="trueValue"?"falseValue":"trueValue";n.editor[d]===l&&(l=l+1),this.updatePropertyValue(n,i,l)}getBooleanValueConverter(){return{convertFrom:(n,i)=>n.editor[i],convertTo:(n,i,o)=>{this.setBooleanValue(n,i,o)}}}}class yo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class vo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){const n=this;return n.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},(o,l)=>{if(o)switch(o.propertyID){case"dataSourceType":{o.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...o.propertyValue]);break}}})}}class bo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,i;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((n=this.designViewModelField)==null?void 0:n.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;if(e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)){let a,d;o.type.name===Z.FormSchemaEntityFieldTypeName.String&&(a="true",d="false"),o.type.name===Z.FormSchemaEntityFieldTypeName.Number&&(a=1,d=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&d!==void 0&&(e.editor.falseValue=d)}}}const en={convertFrom:(t,e)=>(t.editor.remote||{})[e],convertTo:(t,e,n)=>{t.editor.remote=t.editor.remote||{},t.editor.remote[e]=n}};class Co extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getCommonEditorProperties(e){var n,i,o;return{viewType:{visible:!!((n=e.editor)!=null&&n.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((i=e.editor)!=null&&i.multiSelect)&&((o=e.editor)==null?void 0:o.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(e){var c,p,f,s,m,g,u,h,b,C,F,M;const n=this;let i="";if(((c=e==null?void 0:e.binding)==null?void 0:c.type)==="Form"){const T=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(p=T==null?void 0:T.schemaField)!=null&&p.type&&(i=T.schemaField.type.$type)}const o=this.getPropertyEditorParams(e,["Variable"]),l=!e.editor.dataSourceType||e.editor.dataSourceType==="static",a=((s=(f=this.designViewModelField)==null?void 0:f.type)==null?void 0:s.$type)===Z.FormSchemaEntityFieldType$Type.StringType&&((m=e.editor)==null?void 0:m.type)==="combo-list"&&((g=e.editor)==null?void 0:g.dataSourceType)==="dynamic"&&!((h=(u=e.editor)==null?void 0:u.remote)!=null&&h.url)&&!((b=e.editor)!=null&&b.multiSelect);return n.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},dataSource:{description:"动态数据源绑定变量",visible:a,title:"数据",editor:{...o,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:l,...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic"&&!((C=e.editor)!=null&&C.dataSource),$converter:en,description:"",title:"服务端API",type:"string",refreshPanelAfterChanged:!0},body:{visible:!1,$converter:en,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!i||i==="StringType",readonly:((F=e.editor)==null?void 0:F.dataSourceType)==="dynamic"&&!!((M=e.editor)!=null&&M.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(T,v)=>{if(!T||!v.editor)return;const w=this;switch(T.propertyID){case"dataSourceType":{T.propertyValue==="static"?(v.editor.valueField="value",v.editor.textField="name",v.editor.remote=null):T.propertyValue==="dynamic"&&(v.editor.remote={method:"GET"},v.editor.valueField="value",v.editor.textField="name");break}case"data":{!w.checkEnumDataReadonly(v)&&v.formatter&&(v.formatter.data=[...T.propertyValue]);break}case"viewType":{T.propertyValue==="tag"&&(v.editor.editable=!1);break}case"dataSource":w.afterMutilEditorChanged(v,T)}})}getGridFieldEdtiorProperties(e,n){var c,p,f,s,m,g,u,h,b,C,F,M,T;const i=this;let o="";if(((c=e==null?void 0:e.binding)==null?void 0:c.type)==="Form"){const v=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(p=v==null?void 0:v.schemaField)!=null&&p.type&&(o=v.schemaField.type.$type)}const l=((s=(f=this.designViewModelField)==null?void 0:f.type)==null?void 0:s.$type)===Z.FormSchemaEntityFieldType$Type.StringType&&((m=e.editor)==null?void 0:m.type)==="combo-list"&&((g=e.editor)==null?void 0:g.dataSourceType)==="dynamic"&&!((u=e.editor)!=null&&u.multiSelect),a=this.getPropertyEditorParams(e,["Variable"]);return i.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},dataSource:{description:"动态数据源绑定变量",visible:l,title:"数据",editor:{...a,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!((h=e.editor)!=null&&h.dataSourceType)||((b=e.editor)==null?void 0:b.dataSourceType)==="static",...i.getItemCollectionEditor(e,(C=e.editor)==null?void 0:C.valueField,(F=e.editor)==null?void 0:F.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:o==="StringType",readonly:((M=e.editor)==null?void 0:M.dataSourceType)==="dynamic"&&!!((T=e.editor)!=null&&T.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(v,w)=>{if(!v||!w.editor)return;const y=this;switch(v.propertyID){case"dataSourceType":{v.propertyValue==="static"?(w.editor.valueField="value",w.editor.textField="name",w.editor.remote=null):v.propertyValue==="dynamic"&&(w.editor.remote={method:"GET"},w.editor.valueField="value",w.editor.textField="name");break}case"data":{!y.checkEnumDataReadonly(w)&&w.formatter&&(w.formatter.data=[...v.propertyValue]);break}case"dataSource":y.afterMutilEditorChanged(w,v)}})}setEditorPropertyRelates(e,n,i){if(!e||!n.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name",n.editor.remote={});break}case"data":{!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.$type)===Z.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}getEventPropertyConfig(e,n="card",i,o){const l=this;let a=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}];i&&(a=a.concat(i)),this.appendFieldValueChangeEvents(e,a);const d=l.eventsEditorUtils.formProperties(e,l.viewModelId,a);return{title:"事件",hideTitle:!0,properties:l.createBaseEventProperty(d),tabId:"commands",tabName:"交互",setPropertyRelates(f,s){const m=f.propertyValue;delete e[l.viewModelId],m&&(m.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(e,l.viewModelId,m.events,m)),o&&o(f,s,m);const g=l.designViewModelUtils.getDgViewModel(l.viewModelId);g&&l.designViewModelField&&g.changeField(l.designViewModelField.id,{valueChanging:e.fieldValueChanging,valueChanged:e.fieldValueChanged}),e.editor.beforeOpen!==e.beforeOpen&&(e.editor.beforeOpen=e.beforeOpen),e.editor.onChange!==e.onChange&&(e.editor.onChange=e.onChange),e.editor.onClear!==e.onClear&&(e.editor.onClear=e.onClear)}}}}class wo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{resizable:{description:"",title:"拖拽调整大小",type:"boolean"},autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}getGridFieldEdtiorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}}function So(){let t="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:t}=window.top.localStorage);const e=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],n=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],i=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],o=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],l=[{id:"yyyy",name:"yyyy"}];return t==="zh-CHS"&&(e.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),n.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),t==="zh-CHT"&&(e.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),n.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:i,yMdFormats:n,mdFormats:o,yFormats:l}}const xo=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],Mo=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"}],Fo=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],To=[{id:"yyyy",name:"yyyy"}],{timeFormats:_o,yMdFormats:ko,yMFormats:tn,mdFormats:Vo,yFormats:xt}=So();class Eo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getDatePickerModes(e){return e==="Date"||e==="DateTime"?[{label:"年月日",value:"day"}]:[{label:"年月日",value:"day"},{label:"年月",value:"month"},{label:"年",value:"year"}]}checkMaxMinDate(e){const{minDate:n,maxDate:i,showTime:o}=(e==null?void 0:e.editor)||{},{parseToDate:l,formatTo:a}=Z.useDateFormat();if(i){const d=l(i,"yyyy-MM-dd HH:mm:ss");d&&(e.editor.maxDate=a(d,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}if(n){const d=l(n,"yyyy-MM-dd HH:mm:ss");d&&(e.editor.minDate=a(d,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}}getEditorProperties(e){var d,c,p,f,s,m,g,u,h,b,C,F,M,T,v;const n=this.getDateFormatOptions(e==null?void 0:e.editor),i=this.getValueFormatOptions(e==null?void 0:e.editor),o=(c=(d=this.designViewModelField)==null?void 0:d.type)==null?void 0:c.name,l=this.getDatePickerModes(o),a=this.getExtremeDateFormat(e);return(p=e==null?void 0:e.editor)!=null&&p.selectMode||(e.editor.selectMode="day"),this.checkMaxMinDate(e),this.getComponentConfig(e,{type:"date-picker"},{enableClear:{description:"是否显示清除按钮",title:"启用清除",type:"boolean"},selectMode:{description:"",title:"显示类型",type:"string",refreshPanelAfterChanged:!0,editor:{type:"combo-list",idField:"value",textField:"label",valueField:"value",data:l}},showWeekNumber:{description:"",title:"显示第几周",type:"boolean",visible:((f=e==null?void 0:e.editor)==null?void 0:f.selectMode)==="day"},firstDayOfTheWeek:{description:"",title:"每周起始日",type:"string",editor:{type:"combo-list",idField:"value",valueField:"value",textField:"label",data:[{label:"星期日",value:"Sun"},{label:"星期一",value:"Mon"}]},visible:((s=e==null?void 0:e.editor)==null?void 0:s.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((m=e==null?void 0:e.editor)==null?void 0:m.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((g=e==null?void 0:e.editor)==null?void 0:g.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:n}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:i},visible:((u=e==null?void 0:e.editor)==null?void 0:u.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((h=e==null?void 0:e.editor)==null?void 0:h.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:"1900-01-01 00:00:00",maxDate:((b=e==null?void 0:e.editor)==null?void 0:b.maxDate)||"9999-12-31 23:59:59",showTime:(C=e==null?void 0:e.editor)==null?void 0:C.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((F=e==null?void 0:e.editor)==null?void 0:F.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:((M=e==null?void 0:e.editor)==null?void 0:M.minDate)||"1900-01-01 00:00:00",maxDate:"9999-12-31 23:59:59",showTime:(T=e==null?void 0:e.editor)==null?void 0:T.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((v=e==null?void 0:e.editor)==null?void 0:v.selectMode)==="day"}},this.setEditorPropertyRelates)}getExtremeDateFormat(e){var n,i,o,l;if(((n=e==null?void 0:e.editor)==null?void 0:n.selectMode)==="day")return"yyyy-MM-dd"+((i=e==null?void 0:e.editor)!=null&&i.showTime?" HH:mm:ss":"");if(((o=e==null?void 0:e.editor)==null?void 0:o.selectMode)==="month")return"yyyy-MM";if(((l=e==null?void 0:e.editor)==null?void 0:l.selectMode)==="year")return"yyyy"}getEventPropertyConfig(e){const n=this,i=[{label:"onDatePicked",name:"日期选择后事件"}],o=n.eventsEditorUtils.formProperties(e,n.viewModelId,i);return{title:"事件",hideTitle:!0,properties:n.createBaseEventProperty(o),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,d){const c=a.propertyValue;delete d[n.viewModelId],c&&n.eventsEditorUtils.saveRelatedParameters(d,n.viewModelId,c.events,c);const p=n.designViewModelUtils.getDgViewModel(n.viewModelId);p&&n.designViewModelField&&p.changeField(n.designViewModelField.id,{valueChanging:d.fieldValueChanging,valueChanged:d.fieldValueChanged})}}}setEditorPropertyRelates(e,n,i){if(!(!e||!n.editor))switch(e.propertyID){case"showTime":{const o=n.editor;e.propertyValue?(o.displayFormat="yyyy-MM-dd HH:mm:ss",o.valueFormat="yyyy-MM-dd HH:mm:ss"):(o.displayFormat="yyyy-MM-dd",o.valueFormat="yyyy-MM-dd"),n.formatter&&(n.formatter.dateFormat=o.displayFormat);break}case"displayFormat":{n.formatter&&(n.formatter.dateFormat=e.propertyValue);break}case"selectMode":{e.propertyValue!=="day"?(n.editor.showWeekNumber=!1,n.editor.showTime=!1,n.editor.enableQuickSelect=!1,e.propertyValue==="month"?(n.editor.displayFormat="yyyy-MM",n.editor.valueFormat="yyyy-MM"):(n.editor.displayFormat="yyyy",n.editor.valueFormat="yyyy")):(n.editor.displayFormat="yyyy-MM-dd",n.editor.valueFormat="yyyy-MM-dd");break}}}getDateFormatOptions(e){const n=e.selectMode||"day";let i=[];switch(n){case"day":{const o=[];e.showTime&&o.push(..._o),o.push(...ko,...tn,...xt,...Vo),i=o;break}case"month":{i=[...tn,...xt];break}case"year":{i=[...xt];break}}return i}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let i=[...xo];return e.showTime&&(i=[...Mo]),i}case"month":return Fo;case"year":return To;default:return[]}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)&&(e.editor.fieldType=o.type.name,o.type.name===Z.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const Io=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Po="";function ht(t){let e=[10,20,30,50,100];return t&&(typeof t=="string"&&(e=t.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(t)&&(e=t)),e.map(n=>({value:parseInt(n,10)})).sort((n,i)=>n.value-i.value)}const ge={convertFrom:(t,e)=>{const n=t.editor?t.editor:t;return e==="multiSelect"||e==="enableTitle"?!!n[e]:e==="separator"?n[e]||",":e==="onlySelectLeaf"?n[e]==null?!1:n[e]:e==="loadTreeDataType"?n[e]||"default":e==="placeholder"?je.isNil(n[e])?"请选择":n[e]:e==="openType"?n[e]||"Modal":n[e]},convertTo:(t,e,n)=>{const i=t.editor?t.editor:t;if(i[e]=n,e==="multiSelect"&&!n&&(i.enableCascade=!1),e==="openType"){if(n==="Popup")i.showSelections=!1,i.enableCascade=!1;else if(i.dialog){const{width:o}=i.dialog,{displayType:l}=i;l&&l.toUpperCase().indexOf("NAV")>-1&&(!o||o<520)&&(i.dialog.width=960)}}i.multiSelect&&i.openType==="Popup"&&(i.editable=!1,i.allowFreeInput=!1)}};function No(t){let e="form_group_"+Date.now();return t&&(e=t.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Bo(t,e){const{enablePager:n,pageSize:i,pageList:o}=e;t.pagination=t.pagination||{},Object.assign(t.pagination,{enable:n,sizeLimits:ht(o).map(l=>l.value),size:i,showLimits:!0,showGoto:!1,mode:"server"})}const nn={convertFrom:(t,e)=>{var i;return(i=(t.editor?t.editor:t).dataSource)==null?void 0:i.displayName},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=t.editor?t.editor:t,o=n[0],{name:l,id:a,metadataContent:d,code:c}=o;i.dataSource||(i.dataSource={}),i.dataSource.displayName=`${l}(${c})`,i.helpId=a;const{displayType:p,idField:f,textField:s}=d;i.displayType=p,i.dataSource.idField=f,i.textField=s,i.dataSource.type="ViewObject",i.enableEqualSearch=!1;const{pageInfo:m}=d.dataSource;Bo(i,m);const{treeInfo:g}=p.toUpperCase()==="NAVTREELIST"?d.navigation:d.dataSource;if(g){const{onlySelectLeaf:u,loadDataType:h}=g;i.loadTreeDataType="default",i.onlySelectLeaf=u??!1}if(i.dataSource.uri||(i.dataSource.uri=No(t.id)),i.dialog){const{width:u}=i.dialog;p&&p.toUpperCase().indexOf("NAV")>-1&&(!u||u<520)&&(i.dialog.width=960)}}}},Oo={convertFrom:(t,e)=>{var n;return(n=t.editor.dataSource)==null?void 0:n.idField},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},jo={convertFrom:(t,e)=>{var n;return(n=t.editor)==null?void 0:n.textField},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.editor.textField=i==null?void 0:i.bindingPath}}},Ro={convertFrom:(t,e)=>t.editor.displayType?t.editor.displayType.toUpperCase():"LIST",convertTo:(t,e,n)=>{t.editor.displayType=n}},Xe={convertFrom:(t,e)=>{var l;let n=t.editor?t.editor.dialog:t.dialog;const i=t.editor?t.editor.openType:t.openType;if(n||(n={}),e==="title")return n[e]||Po;if(!i||i==="Modal"){if(e==="width")return(l=n.displayType)!=null&&l.toUpperCase().startsWith("NAV")?n[e]||960:n[e]||590;if(e==="height")return n[e]||620;if(e==="navigatorWidth")return n[e]||320}else{if(e==="width")return n[e]||460;if(e==="height")return n[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return n[e]==null?!0:n[e]},convertTo:(t,e,n)=>{const i=t.editor?t.editor:t;i.dialog=i.dialog||{},i.dialog[e]=n}},Ao={convertFrom:(t,e)=>{const n=t.editor?t.editor:t;if(n.pagination=n.pagination||{},e==="enable"||e==="showLimits")return n.pagination[e]==null?!1:n.pagination[e];if(e==="sizeLimits"){const i=n.pagination[e];return ht(i)}if(e==="size")return n.pagination[e]||20},convertTo:(t,e,n)=>{var o;const i=t.editor?t.editor.pagination||{}:t;if(i.pagination=i.pagination||{},e==="sizeLimits"){const l=n.map(d=>d.value);i.pagination[e]=l;const a=((o=i.pagination)==null?void 0:o.size)??20;l.includes(a)||(i.pagination.size=l[0]);return}i.pagination[e]=n}},on=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Ho=Symbol("schema_repository_token");function Lo(t,e){const n=i=>i&&i.length?i.map(o=>`${o.name}[${o.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:e.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(i,o)=>`${i==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Ho},dataSourceConverter:nn,defaultConverter:ge,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ut.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ut.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:ut.FieldSelectorRepositoryToken,displayFormatter:n},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const i=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),o=e.schemaService.getPrimaryField();return o?i.filter(l=>l.data.bindingPath!==o):i},formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,displayFormatter:n}}}}function $o(t){var l,a;const e={type:"combo-list",enableClear:!1,editable:!1},n={type:"number-spinner",useThousands:!1},i=()=>t.displayType?t.displayType.toUpperCase():"",o=()=>i().startsWith("NAV")?t.showNavigation===void 0?!0:!!t.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:ge,editor:{...e,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:t.openType!=="Popup",$converter:Xe},width:{description:"窗口宽度,单位:px,最小值:300px",title:"宽度",type:"number",editor:{...n,min:o()?520:300,needValid:!0},$converter:Xe},height:{description:"窗口高度,单位:px,最小值:200px",title:"高度",type:"number",editor:{...n,min:200,needValid:!0},$converter:Xe},showNavigation:{description:"显示导航栏",$converter:ge,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:i().includes("NAV")&&t.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:o()&&t.openType!=="Popup",editor:{...n,min:200,max:(((l=t==null?void 0:t.dialog)==null?void 0:l.width)??960)-200,needValid:!0},$converter:Xe},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:t.openType!=="Popup",$converter:Xe},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!t.enableUserData&&(((a=t==null?void 0:t.dialog)==null?void 0:a.resizeable)??!0)&&t.openType!=="Popup",$converter:Xe},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:t.openType!=="Popup",$converter:Xe},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:t.openType!=="Popup",$converter:Xe},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:t.openType!=="Popup",$converter:Xe}}}function Wo(t,e=!0){var l,a,d,c;const n=!((l=t.pagination)!=null&&l.enable),i=()=>t.displayType?t.displayType.toUpperCase():"",o=(p,f)=>{const s=i()!=="TREELIST"||p.treeToList;return f&&s?p.pagination&&p.pagination[f]:s};return{hide:!o(t)||n,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Ao,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:o(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:o(t,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:ht((a=t.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:p,data:f})=>!f||!f.length?(p==null||p.warning({message:"每页显示条数不能为空!"}),!1):new Set(f.map(m=>parseInt(m.value,10))).size===f.length?!0:(p==null||p.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:o(t),editor:{type:"combo-list",enableClear:!1,editable:!1,data:ht((d=t.pagination)==null?void 0:d.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(c=t.pagination)==null?void 0:c.size}}}}}class zo extends $e.InputBaseProperty{constructor(){super(...arguments);ne(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});ne(this,"numberEditor",{type:"number-spinner",useThousands:!1});ne(this,"readonlyEditor",{...this.comboListEditor,editable:!0});ne(this,"visibleEditor",{...this.comboListEditor,editable:!1});ne(this,"requiredEditor",{...this.comboListEditor,editable:!1});ne(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(n,i){const o=["validate"];return n.type==="form-group"&&o.push("dataPicking"),new $e.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(n,"Field",o)}getPropertyConfig(n,i,o="Card"){var C;const l=(C=n.binding)!=null&&C.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(n,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(n,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(n,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(n,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(n,i,o),d=this.getBehaviorConfig(n),c=this.getAppearanceProperties(n,i),p=this.getLookupConfig(n),f=this.getEventPropConfig(n),s=this.getDialogPropertyConfig(n),m=this.getPageConfig(n.editor),g=this.getTreePropConfig(n.editor),u=this.getSearchConfig(n),h=this.getExpressionConfig(n,"Field"),b={basic:a,appearance:c,behavior:d,lookup:p,treeConfig:g,dialog:s,pager:m,searchConfig:u,expressions:h};return n.type==="form-group"&&(b.eventsEditor=f),{type:"object",categories:b}}getGridFieldEdtiorPropConfig(n){return this.getPropertyConfig(n,null,"Grid").categories}flattenTreeNodes(n){return n.reduce((i,o)=>{var l;return i.push(o),(l=o.children)!=null&&l.length&&i.push(...this.flattenTreeNodes(o.children)),i},[])}isSimpleStringField(){var d;const n=((d=this.designViewModelField)==null?void 0:d.path)||"";if(!n||!n.includes("."))return!0;const i=n.split("."),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(o!=null&&o.length))return!1;const l=o.find(c=>c.data.code===i[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!i.reduce((c,p,f)=>[...c,f?`${c[f-1]}.${p}`:p],[]).some(c=>{var p,f,s;return((s=(f=(p=a.find(m=>m.data.path===c))==null?void 0:p.data)==null?void 0:f.type)==null?void 0:s.$type)==="EntityType"})}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(i,o)=>{this.afterMutilEditorChanged(o,i)}}}changeBindingField(n,i){super.changeBindingField(n,i),n.editor.multiSelect=!1}getDisplayType(n){return n.displayType?n.displayType.toUpperCase():""}mapFieldsDisplayFormatter(n){return n&&n.length?n.map(i=>`${i.name}[${i.bindingPath}]`).join(","):""}getSearchConfig(n){var i;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:ge,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:ge,title:"允许查询所有列",type:"boolean",visible:n.editor.openType!=="Popup"&&n.editor.enableSearchBar==null?!0:!!n.editor.enableSearchBar},enableEqualSearch:{$converter:ge,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:n.editor.openType!=="Popup"&&(((i=n.editor)==null?void 0:i.enableSearchBar)??!0)!==!1&&this.getDisplayType(n.editor)!=="TREELIST"}},hide:n.editor.openType==="Popup"}}getLookupConfig(n){var p;const i=n.editor,o=()=>{const f=this.formSchemaUtils.getFormSchema().module.entity[0].id,s=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:i,formBasicInfo:s,viewModelId:f,dataSourceId:i.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:d,mappingFieldsEditor:c}=Lo(i,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(f,s)=>{if(f)switch(f.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(s,f);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,visible:!!((p=n.binding)!=null&&p.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:ge},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:ge,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:ge,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(i.multiSelect&&i.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:ge,editor:this.freeInputEditor,visible:!!i.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:ge},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:f=>f&&f.length?f.map(s=>`${s.name}(${s.code})`).join(","):"",validateFunction:async f=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(f,n),onSubmitModal:f=>{if(f){delete i.mappingFields;const s=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(s.relativePath,f[0].data).then(m=>JSON.parse(m==null?void 0:m.metadata.content))}}},$converter:nn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:ge,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:i,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:ut.FieldSelectorRepositoryToken,beforeOpen:async({repository:f,notifyService:s})=>{var C;if(!(i==null?void 0:i.helpId))return s==null||s.warning({message:"请先配置数据源!"}),!1;const g=o(),h=new $e.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let b={};if(f){const F=await f.getData(g),M=await f.getLookupConditions(g);b={fieldList:F,conditionList:M}}return(C=h.variables)!=null&&C.forms&&(h.variables.forms.items=h.variables.forms.items.filter(F=>F.category==="remote")),{...b,...h,isServerSide:!0}},onSubmitModal:async({loadingService:f,repository:s,conditions:m,originalConditions:g,FMessageBoxService:u})=>{if(s)try{const h=o(),b=await s.getLookupConditions(h)||[];return JSON.stringify(b)!==JSON.stringify(g.value)?(f==null||f.clearAll(),u.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{m.value=b,g.value=JSON.parse(JSON.stringify(m.value))},()=>{}),!1):(JSON.stringify(m.value)===JSON.stringify(g.value)||await s.saveFilterCondition(m.value,h,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return u==null||u.error("保存失败",""),!1}finally{f==null||f.clearAll()}}},visible:!!i.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ro,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:{...a},$converter:Oo},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:jo,editor:d},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ge,editor:{...c}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:ge,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:ge,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:ge,title:"显示已选记录",type:"boolean",visible:!!i.multiSelect&&i.openType!=="Popup"},separator:{description:"多选分隔符",$converter:ge,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:!!i.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:ge,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:ge,title:"启用收藏夹",type:"boolean",visible:i.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:ge,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:i.openType!=="Popup"}}}}showNavigatiorWidth(n){return this.getDisplayType(n).startsWith("NAV")&&n.openType!=="Popup"?n.showNavigation===void 0?!0:!!n.showNavigation:!1}getDialogPropertyConfig(n){const i=$o(n.editor);return i.openType.$converter=ge,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:Xe,properties:i}}showPagerProperty(n,i){const o=this.getDisplayType(n)!=="TREELIST"||n.treeToList;return i&&o?n.pagination&&n.pagination[i]:o}getPageConfig(n){return Wo(n)}showLoadType(n){const i=this.getDisplayType(n);return(i==="TREELIST"||i==="NAVTREELIST")&&!n.treeToList&&!n.navTreeToList}isTree(n){return this.getDisplayType(n)==="TREELIST"&&!n.treeToList}getTreePropConfig(n){return{hide:this.getDisplayType(n)!=="TREELIST"&&this.getDisplayType(n)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:ge,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:ge,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:ge,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(n)},enableFullTree:{description:"启用构造完整树",$converter:ge,title:"构造完整树",type:"boolean",visible:this.showLoadType(n)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:ge,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(n)},enableCascade:{description:"启用级联选择",$converter:ge,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(n)&&!!n.multiSelect&&n.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:ge,title:"显示级联状态",type:"boolean",visible:!!n.enableCascade&&this.isTree(n)},cascadeValue:{description:"缺省级联选择模式",$converter:ge,title:"缺省级联选择模式",type:"string",visible:!!n.enableCascade&&this.isTree(n),editor:{...this.comboListEditor,data:Io,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:ge,title:"默认展开层级",type:"number",visible:this.showLoadType(n),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(n){const i=this;let o=on;n.editor.openType==="Popup"&&(o=o.filter(d=>d.label!=="beforeSelectData"));const l=i.eventsEditorUtils.formProperties(n,i.viewModelId,o);return{title:"事件",hideTitle:!0,properties:i.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(d,c){const p=d.propertyValue;delete c[i.viewModelId],p&&i.eventsEditorUtils.saveRelatedParameters(c,i.viewModelId,p.events,p);const f=i.designViewModelUtils.getDgViewModel(i.viewModelId);f&&i.designViewModelField&&f.changeField(i.designViewModelField.id,{valueChanging:c.fieldValueChanging,valueChanged:c.fieldValueChanged})}}}async checkSameBESource(n,i){var o,l,a,d,c;if(n&&((o=i==null?void 0:i.editor)!=null&&o.helpId)&&!i.isRtcControl){if(n.data.id===i.editor.helpId)return!0;const p=await this.metadataService.getPickMetadata("",n.data).then(h=>{var b;if((b=h==null?void 0:h.metadata)!=null&&b.content)return JSON.parse(h.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:i.editor.helpId}).then(h=>{var b;if((b=h==null?void 0:h.metadata)!=null&&b.content)return JSON.parse(h.metadata.content)}),s=(l=p==null?void 0:p.dataSource)==null?void 0:l.sourceType,m=(a=f.dataSource)==null?void 0:a.sourceType,g=(d=p==null?void 0:p.dataSource)==null?void 0:d.sourceId,u=(c=f==null?void 0:f.dataSource)==null?void 0:c.sourceId;if(s==="BE"&&m==="BE"&&g!==u)return new Ct.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class qo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Go extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var l,a,d,c,p,f,s,m;let n,i=!1;if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const g=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=g==null?void 0:g.schemaField)!=null&&a.type&&(n=g.schemaField.type.precision,i=g.schemaField.type.name==="BigNumber")}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:n===0,min:0,max:n,needValid:!0},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,needValid:!0,precision:(d=e==null?void 0:e.editor)==null?void 0:d.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(c=e==null?void 0:e.editor)==null?void 0:c.max,precision:(p=e==null?void 0:e.editor)==null?void 0:p.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((f=e==null?void 0:e.editor)==null?void 0:f.min)===void 0||(s=e==null?void 0:e.editor)==null?void 0:s.min,precision:(m=e==null?void 0:e.editor)==null?void 0:m.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},bigNumber:{description:"",title:"支持大数字",type:"boolean",readonly:!0,visible:i},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(g,u,h){if(g)switch(g.propertyID){case"precision":{u.formatter&&(u.formatter.precision=g.propertyValue);break}}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.name)===Z.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=o.type.precision)}}class Uo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){const n=this;return n.getComponentConfig(e,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,n,i){if(!e||!n.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name");break}case"data":{!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.$type)===Z.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}}class Do extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,i;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((n=this.designViewModelField)==null?void 0:n.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;if(e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)){let a,d;o.type.name===Z.FormSchemaEntityFieldTypeName.String&&(a="true",d="false"),o.type.name===Z.FormSchemaEntityFieldTypeName.Number&&(a=1,d=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&d!==void 0&&(e.editor.falseValue=d)}}}class Yo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(n,i)=>{n.propertyID==="use12Hours"&&(i.editor.format=i.editor.format||"hh:mm:ss",i.editor.format=n.propertyValue?i.editor.format.replace("HH","hh"):i.editor.format.replace("hh","HH"))})}}class Xo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"language-textbox"},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:e.editor.maxLength,needValid:!0}}})}}class Zo extends Jt{constructor(n,i){super(n,i);ne(this,"dataGridProps",null);ne(this,"notifyService",new Ct.FNotifyService)}getPropertyConfig(n,i){var d,c,p;this.dataGridProps=i,this.getBasicPropConfig(n),this.getAppearanceProperties(n,i);const l={formatterEnumData:{description:"",title:"枚举数据",type:"array",visible:!!(((d=n.formatter)==null?void 0:d.type)==="enum"&&((c=n.editor)==null?void 0:c.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(n,"value","name"),refreshPanelAfterChanged:!0}},a=(f,s)=>{if(f)switch(f.propertyID){case"formatterEnumData":{n.formatter&&(n.formatter.data=[...f.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"gridFieldEditor",l,a),this.getFieldEditorProperties(n,i),this.propertyConfig.categories.templateFormat=this.getColumnTemplate(n),((p=n.formatter)==null?void 0:p.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(n)),this.getEventPropConfig(n),this.propertyConfig}getColumnTemplate(n){const i=n.columnTemplateType&&n.columnTemplateType==="custom"||!n.columnTemplateType&&n.columnTemplate&&!n.onClickLinkCommand,o=this;return{title:"列模板",description:"用于配置自定义列模板以及内置的格式化模板,如超链接、图片",properties:{columnTemplateType:{description:"列模板类型",title:"列模板类型",$converter:"/converter/change-formatter-type.converter",type:"enum",editor:{data:[{id:"default",name:"无"},{id:"hyperlink",name:"超链接"},{id:"custom",name:"自定义"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",visible:!!i,editor:{type:"code-editor",language:"html"}}},setPropertyRelates(l,a,d){var c;if(l){switch(l&&l.propertyID){case"columnTemplateType":{l.propertyValue==="custom"&&a.columnTemplate&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}case"columnTemplate":{l.propertyValue&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}}(c=o.getFormDesignerInstance())==null||c.reloadPropertyPanel()}}}}getItemCollectionEditor(n,i,o){const l=i||"value",a=o||"name";return{editor:{columns:[{field:l,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:l,nameField:a,requiredFields:[l,a],uniqueFields:[l,a],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===Z.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(n){var c,p,f;const i=n.columnTemplateType==="hyperlink"||!n.columnTemplateType&&n.columnTemplate&&n.onClickLinkCommand;let o=[];((c=n.editor)==null?void 0:c.type)==="combo-list"&&o.push({label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}),i&&o.push({label:"onClickLinkCommand",name:"超链接事件"}),((p=n==null?void 0:n.editor)==null?void 0:p.type)==="lookup"&&(o=[...o,...on],n.editor.openType==="Popup"&&(o=o.filter(s=>s.label!=="beforeSelectData"))),((f=n==null?void 0:n.editor)==null?void 0:f.type)==="date-picker"&&(o=[{label:"onDatePicked",name:"日期选择后事件"}]);const l=this,a=l.eventsEditorUtils.formProperties(n,l.viewModelId,o),d=l.createBaseEventProperty(a);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:d,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,m){var u,h,b,C;const g=s.propertyValue;delete n[l.viewModelId],g&&(g.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(n,l.viewModelId,g.events,g)),n.remoteSort=!!n.columnSorted,n.onClickLinkCommand&&!n.onClickLinkCommand.includes("communication:")&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
|
|
18
|
+
`,M.children[1].style.cssText="width: 30px;padding: 0 14px 0 0",M.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(M),M}function x(C,g,S){if(C.stopPropagation(),f(),g){if(y=b(C.target),C.dataTransfer){const M=new Image;M.src="",C.dataTransfer.setDragImage(M,0,0)}u=C.pageX,h=C.pageY,setTimeout(()=>{a.value=S,d.value=!0,g.moving=!0})}}function F(C,g){if(C.preventDefault(),a.value!==g){const S=l.value[a.value],M=l.value;M.splice(a.value,1),M.splice(g,0,S),a.value=g,w(C.pageX,C.pageY)}}function T(C){C.preventDefault(),C.dataTransfer&&(C.dataTransfer.dropEffect="move"),w(C.pageX,C.pageY)}function v(C,g){g&&(g.moving=!1,y&&(document.body.removeChild(y),y=null)),l.value.forEach((S,M)=>{S.__fv_index__=M}),d.value=!1,s(),c.value=g.raw.__fv_index__,m.value=g.raw.__fv_index__,p.value=g.raw[o.value],e.emit("change",l.value),e.emit("activeChange",[g.raw])}return{dragstart:x,dragenter:F,dragover:T,dragend:v,isDragging:d}}function io(t,e,n,i,o,l){const a=r.ref(t.idField),d=r.ref(t.disableField),m=r.ref(t.draggable);r.ref(t.itemClass);const p=r.ref(t.selection.multiSelect??!1),c=r.ref(t.selection.multiSelectMode),{isDragging:s}=i,{activeIndex:f,focusedItemId:y,hoverIndex:u}=o,{clearSelection:h,getSelectedItems:w,toggleSelectItem:b,currentSelectedDataId:x}=l,F=r.ref(w()),T=V=>F.value.length===0?!1:F.value.some(_=>{let k="";return _.data?k=_.data[a.value]:k=_[a.value],k===V});function v(){F.value=w()}function C(V,_){return V.raw[a.value]!=null?V.raw[a.value]:""}function g(V,_){const k={"f-list-view-group-item":!0,"f-list-view-draggable-item":m.value,"f-un-click":!V.checked,"f-un-select":!!V.raw[d.value],"f-listview-active":p.value&&T(C(V))||!p.value&&V.raw[a.value]===x.value,"f-listview-hover":!s.value&&_===u.value,moving:!!V.moving};if(typeof t.itemClass=="string")return X.getCustomClass(k,t.itemClass);if(typeof t.itemClass=="function"){const W=t.itemClass(V);return X.getCustomClass(k,W)}return k}function S(V,_){const k={};if(typeof t.itemStyle=="string")return X.getCustomStyle(k,t.itemStyle);if(typeof t.itemStyle=="function"){const W=t.itemStyle(V);return X.getCustomStyle(k,W)}return k}const M=r.computed(()=>!p.value);function E(V,_,k){V.checked=k,!V.raw[d.value]&&(M.value&&(y.value=V.raw[a.value]),b(V))}const N=r.computed(()=>p.value&&c.value==="OnCheckClearByClick"),I=r.computed(()=>!p.value||p.value&&(c.value==="OnCheckAndClick"||c.value==="OnClick"));function B(V,_,k){if(V.raw[d.value]){k==null||k.preventDefault(),k==null||k.stopPropagation();return}x.value=V.raw[a.value],y.value=V.raw[a.value],f.value=_,N.value&&h(),I.value&&(b(V),v()),e.emit("clickItem",{data:F.value,index:_,dataItem:V.raw}),e.emit("activeChange",F.value)}return{getKey:C,selectedItems:F,listViewItemClass:g,listViewItemStyle:S,updateSelectedItems:v,onCheckItem:E,onClickItem:B}}const Xt=r.defineComponent({name:"FListView",props:Di,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(t,e){const n=r.ref(),i=r.ref(!0),o=r.ref(!1),l=r.ref([]),a=0,d=r.ref(t.columns),m=Ee.useFilter(t,e),p=Ee.useIdentify(t),c=Ee.useHierarchy(t),s=Ee.useGroupData(t,p),f=Ee.useDataView(t,new Map,m,c,p),y=Ee.useSelection(t,f,p,l,e),u=Yi(t,n),h=Ee.usePagination(t,f),w=r.computed(()=>f.dataView.value.length),b=Ee.useRow(t,e,y,p),x=Ee.useEdit(t,e,p,b,l),F=Ee.useVisualDataBound(t),T=Ee.useVisualDataCell(t,{},F),v=Ee.useVisualDataRow(t,f,x,c,p,F,T),C=Ee.useVisualGroupRow(t,p,T,v),g=Ee.useVisualSummaryRow(t,p,T,v),S=Ee.useVisualData(t,d,f,w,a,v,C,g),{getVisualData:M}=S;l.value=M(0,w.value+a-1);const E=r.computed(()=>{const U={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&(U[`${t.size}-item`]=!0),X.getCustomClass(U,t.customClass)}),N=r.computed(()=>!!e.slots.footer||i.value);function I(){return t.header==="SearchBar"?Yt:t.header==="ContentHeader"?eo:Yt}const B=I(),{renderHeader:V}=B(t,e,u),_=to(),k=no(t,e,f,_),W=io(t,e,l,k,_,y),{renderListArea:P}=Ki(t,e,l,f,s,_,y,S,W,k);function A(U){u.search(U)}function Y(U){U&&(f.load(U),l.value=M(0,w.value+a-1))}function J(){y.clearSelection(),_.clearActiveItem()}function oe(){return W.selectedItems.value}function _e(){return W.selectedItems.value.map(U=>U[p.idField.value])}function Ce(U){y.selectedValues.value=U,W.updateSelectedItems()}function xe(){return y.currentSelectedDataId.value}function R(U){b.activeRowById(U)}function O(U){const ye=p.idField.value,be=l.value.find(Ze=>Ze.raw[ye]===U),Re=l.value.findIndex(Ze=>Ze.raw[ye]===U);be&&Re>-1&&W.onClickItem(be,Re)}function j(U){const ye=p.idField.value,be=l.value.find(Re=>Re.raw[ye]===U);be&&b.changeRow(be)}function z(U){h.updatePagination(U)}function G(U){return l.value.filter(ye=>U.includes(ye.raw[t.idField]))}e.expose({search:A,updateDataSource:Y,clearSelection:J,getSelections:oe,updateSelectionByIds:Ce,getSelectionIds:_e,activeRowById:R,getCurrentRowId:xe,clickRowItemById:O,updatePagination:z,getVisibleDataByIds:G,selectRowById:j});function ee(U){t.multiSelect&&(U.preventDefault(),U.stopPropagation())}r.watch(()=>t.selectionValues,(U,ye)=>{U!==ye&&Ce(U)});const se=Ee.useSidebar(t,y),{sidebarWidth:ce,showSidebarCheckBox:ue}=se,pe=Ee.useColumn(t,e),{applyColumnSorter:me,columnContext:Pe,updateColumnRenderContext:qe}=pe,we=Ee.useVirtualScroll(t,f,l,Pe,S,w,a,ce,x),{shouldRenderPagination:L}=h,{renderDataGridPagination:Q}=Ee.getPagination(t,e,f,we,h,y);return()=>r.createVNode("div",{class:E.value,onClick:ee},[V(),r.createVNode("div",{ref:n,class:"f-list-view-content",onMouseover:()=>{o.value=!0},onMouseleave:()=>{o.value=!1}},[P()]),N.value&&r.createVNode("div",{class:"f-list-view-footer"},[t.footerTemplate?t.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),oo=r.defineComponent({name:"FTransfer",props:Ut,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(t,e){const n=r.ref(t.identifyField),i=r.ref(t.displayType),o=r.ref(!1),l=r.ref(t.dataSource),a=r.ref(t.textField),d=r.ref(t.selections||[]),m=r.computed(()=>d.value.map(B=>B[n.value])),p=new Map,c=r.ref(),s=r.ref(),f=r.ref();let y;function u(){const B=new Map,V=t.selectionValues||[];V.length&&V.reduce((k,W)=>(k.set(W,!0),k),B);const _=t.selections||[];_.length&&(B.clear(),_.reduce((k,W)=>(k.set(W[n.value],!0),k),B)),d.value.length||(d.value=l.value.filter(k=>B.has(k[n.value])).map(k=>Object.assign({},k))),l.value.forEach(k=>{const W=k[n.value],P=B.has(W);k.checked=P,P&&p.set(W,k)})}u(),r.watch(()=>t.selections,B=>{d.value=B,u()});const h=r.computed(()=>i.value==="List"),w=r.computed(()=>i.value==="Tree");function b(B){const V=je.cloneDeep(d.value);d.value=B.map(_=>Object.assign({},_)),e.emit("change",d.value,V)}function x(B){e.emit("selectItem",B)}function F(B){e.emit("unSelectItem",B)}function T(){return r.createVNode(Xt,{class:"f-utils-fill",data:l.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:m.value,onSelectionUpdate:b},null)}function v(){return r.createVNode(Cn,{ref:f,data:l.value,columns:t.columns,virtualized:t.virtualized,rowOption:t.rowOption,textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:m.value,onSelectionUpdate:b,onSelectItem:x,onUnSelectItem:F},null)}function C(){return r.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[r.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[r.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[h.value&&T(),w.value&&v()])])])}function g(B){const V=B[n.value];if(V!==null||V!==void 0){d.value=d.value.filter(k=>k[n.value]!==V);const _=p.get(V);_&&(_.checked=!1,p.delete(V)),e.emit("change",d.value),e.emit("removeItem",B)}}r.watch(d,B=>{c.value.updateDataSource(je.cloneDeep(B));const V=y==null?void 0:y[n.value],_=B.find(k=>V===k[n.value]);_?c.value.activeRowById(_[n.value]):(y=null,c.value.activeRowById(""))});function S(B){const V=new Map;d.value.reduce((_,k)=>(_.set(k[n.value],k),_),V),d.value=B.map(_=>V.get(_[n.value])),e.emit("change",d.value)}function M(B){y=B[0],e.emit("activeChange",B)}function E(){var B;return r.createVNode(Xt,{ref:c,columns:t.columns,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:a.value,itemClass:t.selectedItemClass,onChange:S,onRemoveItem:g,onActiveChange:M,checkBeforeRemoveItem:t.checkBeforeRemoveItem},{itemContent:(B=e.slots)!=null&&B.text?V=>{var _;return((_=e.slots)==null?void 0:_.text)&&e.slots.text(V)}:null})}function N(){return r.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[r.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[r.createVNode("div",{class:"selection-pane-title"},[r.createVNode("span",{class:"selection-title"},[Le.LocaleService.getLocaleValue("transfer.selectedStart")]),r.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),r.createVNode("span",{class:"selection-item-title"},[Le.LocaleService.getLocaleValue("transfer.selectedEnd")])]),r.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[E()])])])}const I=r.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":o.value}));return r.onMounted(()=>{s.value&&s.value.parentElement&&getComputedStyle(s.value.parentElement).display==="flex"&&(o.value=!0)}),()=>r.createVNode("div",{ref:s,class:I.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:d.value}):C(),N()])}}),ro=r.defineComponent({name:"FGridFieldEditor",props:St,emits:["change"],setup(t,e){const n=r.ref(t.viewModelId),i=r.inject("designViewModelUtils"),o=r.inject("useFormSchema"),l=r.inject("schemaService"),a=r.inject("controlCreatorUtils"),d=r.inject("designerContext");let m=t.gridData.columns;const{fieldEditable:p}=t.gridData,c=r.ref(`共 ${(m||[]).length} 项`),s=r.ref([]),f=r.ref([]);let y=[];function u(V,_=!0){if(d.checkCanDeleteControl){const k=y.find(W=>{var P;return((P=W.data)==null?void 0:P.id)===V.id});return d.checkCanDeleteControl(k,_)}return!0}const h={customRowStatus:V=>{const _=V.raw;_.type&&_.type.fields&&_.type.fields.length>0&&(V.disabled=!0),u(_,!1)||(V.disabled=!0)}};function w(){if(s.value=[],!m||m.length===0)return[];const V="[绑定字段不存在,待移除]";m.forEach(_=>{if(_.binding&&_.binding.field){const k=y.find(W=>W.data.id===_.binding.field);k?k.data.$type===X.FormSchemaEntityField$Type.ComplexField?s.value.push(Object.assign({isInValidBinding:!0},k.data,{name:k.data.name+V})):s.value.push(Object.assign({},k.data)):s.value.push({id:_.binding.field,name:_.title+V,label:_.field,bindingField:null,isInValidBinding:!0})}}),c.value=`共 ${s.value.length} 项`}function b(V,_=[]){return V&&V.forEach(k=>{if(_.push(k),k.children&&b(k.children,_),d.appendIdentifyForNewControl){const W=m.find(P=>{var A;return((A=P.binding)==null?void 0:A.field)===k.data.id});(!W||W[d.identifyForNewControl])&&d.appendIdentifyForNewControl(k)}}),_}function x(){if(o.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const V=l.getTableInfoByViewModelId(n.value);if(V!=null&&V.id){const _=l.rtcAddedTreeNodes.value[V.id];_!=null&&_.length&&(f.value=f.value.concat(_))}}}function F(){f.value=i.getAllFields2TreeByVMId(n.value),x(),y=b(f.value)}function T(V,_,k){if(o.getComponents().find(P=>{let A=o.getControlsInCmpWidthBinding(P.viewModel,V);if(A=A.filter(Y=>{var oe;if(Y.id===k)return!1;const J=_.type==="visible"?Y[_.type]:(oe=Y.editor)==null?void 0:oe[_.type];if(J&&J.type==="Expression"&&J.expressionId===_.id)return!0}),A.length)return!0}))return!0}function v(V){V.map(_=>{var W;const k=m.find(P=>{var A;return((A=P.binding)==null?void 0:A.field)===_});if(k&&o.getExpressions().length){const P=o.getExpressions(),A=P.findIndex(Y=>Y.target===_);A>-1&&((W=P[A].rules)==null||W.map(Y=>{var J;switch(Y.type){case"visible":case"readonly":case"required":{const oe=Y.type==="visible"?k[Y.type]:(J=k.editor)==null?void 0:J[Y.type];oe&&oe.type==="Expression"&&oe.expressionId===Y.id&&(T(_,Y,k.id)||(Y.needDelete=!0));break}default:T(_,Y,k.id)||(Y.needDelete=!0)}}),P[A].rules=P[A].rules.filter(Y=>!Y.needDelete))}})}function C(){const V=i.getDgViewModel(n.value),_=[],k=[],W=s.value;W.forEach(A=>{const Y=m==null?void 0:m.find(J=>{if(J.binding&&J.binding.field)return J.binding.field===A.id});if(Y)_.push(Y);else{const J=a.setGridFieldProperty(t.gridType,A.data,null,p);V.addField(A),_.push(J)}k.push(A.id)});const P=V.fields.filter(A=>!k.includes(A.id));if(P&&P.length>0){const A=P.map(Y=>Y.id);V.removeField(A),v(A)}W.length!==s.value.length&&(s.value=W),c.value=`共 ${_.length} 项`,e.emit("change",_)}const g={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{C()},rejectCallback:()=>{}};function S(){return t.getLatestGridData?m=t.getLatestGridData().columns:m=t.gridData.columns,F(),w(),Promise.resolve(!0)}function M(V){s.value=[...s.value,V.raw]}function E(V){const _=s.value.findIndex(k=>k.id===V.raw.id);_>-1&&(s.value=[...s.value.slice(0,_),...s.value.slice(_+1)])}function N(V){const _=s.value.findIndex(k=>k.id===V.id);_>-1&&(s.value=[...s.value.slice(0,_),...s.value.slice(_+1)])}function I(V){const _=V[0].__fv_index__,k=s.value.findIndex(P=>P.id===V[0].id),W=s.value.find(P=>P.id===V[0].id);s.value.splice(k,1),s.value.splice(_,0,W)}const B=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(V,_)=>V.data+` [${_.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return r.onMounted(()=>{F()}),()=>r.createVNode(Li,{"button-behavior":"Modal","modal-options":g,modelValue:c.value,"onUpdate:modelValue":V=>c.value=V,editable:!1,beforeOpen:S},{default:()=>[r.createVNode("div",{class:"f-utils-absolute-all"},[r.createVNode(oo,{selections:s.value,"data-source":f.value,rowOption:h,class:"mx-2",columns:B,displayType:"Tree",onRemoveItem:N,onSelectItem:M,onUnSelectItem:E,onActiveChange:I,checkBeforeRemoveItem:u},{text:V=>r.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[V.data.name.data,r.createTextVNode(" ["),V.data.bindingField.data,r.createTextVNode("]")])})])]})}}),lo={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},enableGroup:{description:"",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string"}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},ao={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},formatterType:{description:"启用列格式化",type:"string",default:""},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string",default:"default"}},required:["id","type"]},xt={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},so=We.createPropsResolver(xt,lo,zt,qt),co=We.createPropsResolver(xt,ao,zt,qt);function uo(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function i(m,p=""){return{path:p+m.code,field:m.id,fullPath:m.code}}function o(m,p=""){const c=e.getViewModelById(m);return c?c.states.map(s=>i(s,p)):[]}function l(m){const p=e.getRootViewModelId(),c=o(m);if(m===p)return c;const s=o(p,"root-component.");return[...c,...s]}function a(m){return m.binding&&m.binding.path||m.id||""}function d(){return n&&n.getRenderStates()||[]}return{getVariables:l,getControlName:a,getStateMachines:d}}class Zt{constructor(e){ie(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);ie(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});ie(this,"getExpressionConverter",(e,n)=>({convertFrom:(i,o,l,a)=>{const d=l.getExpressionRuleValue(e,n||o);return d&&d.value||""},convertTo:(i,o,l,a,d)=>{var m;if(o==="dataPicking"&&(l!=null&&l.target)){const p=`${l.target}_dataPicking`;((m=l.rules)==null?void 0:m.some(s=>s.id===p&&s.value))?i.dictPickingExpressionId=p:delete i.dictPickingExpressionId}a.updateExpression(l)}}));this.formSchemaService=e}getExpressionRule(e,n){const i=this.formSchemaService.getExpressions();if(!i)return"";const o=i.find(a=>a.target===e);if(!o)return"";const l=o.rules.find(a=>a.type===n);return l||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const n=this.formSchemaService.getRootViewModelId(),i=this.formSchemaService.getViewModelById(n);if(!i||!i.states||i.states.length===0)return[];const o=[];return i.states.filter(l=>l.category==="remote").forEach(l=>{o.push({key:l.code,name:l.name,description:l.name,category:l.category})}),o}createTreeNode(e,n,i="label"){return{id:e.id,name:e.name,bindingPath:e[i],parents:n,type:"field"}}buildEntityFieldsTreeData(e=null,n){const i=[];return e==null||e.forEach(o=>{var d;const l=this.createTreeNode(o,n);let a=[];(d=o.type)!=null&&d.fields&&(a=this.buildEntityFieldsTreeData(o.type.fields,[...n,o.label])),i.push({data:l,children:a,expanded:!0})}),i}buildChildEntityTreeData(e=null,n){const i=[];return e==null||e.forEach(o=>{var m,p;const l=this.createTreeNode(o,n);l.type="entity";const a=this.buildEntityFieldsTreeData((m=o.type)==null?void 0:m.fields,[...n,o.label]),d=this.buildChildEntityTreeData((p=o.type)==null?void 0:p.entities,[...n,o.label]);d!=null&&d.length&&(a==null||a.push(...d)),i.push({data:l,children:a||[],expanded:!0})}),i}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const n=e[0];if(!(n!=null&&n.type))return[];const i=this.buildEntityFieldsTreeData(n.type.fields,[n.code]),o=this.buildChildEntityTreeData(n.type.entities,[n.code]);return o!=null&&o.length&&(i==null||i.push(...o)),{entityCode:n.code,fields:[{data:this.createTreeNode(n,[],"code"),children:i||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,n,i){const o=i==="Field"?e.binding.field:e.id,l=this.getExpressionRule(o,n),a=this.getEntitiesAndVariables(),d={message:["validate","required","dataPicking"].includes(n)&&l?l.message:"",...a};return l.messageType!=null&&(d.messageType=l.messageType),d}buildRule(e,n,i,o){const{expression:l,message:a,messageType:d}=n,m={id:`${e}_${i}`,type:i,value:l};return(i==="validate"||i==="dataPicking"||i==="required")&&(m.message=a),i==="dataPicking"&&(m.messageType=d),i==="validate"&&o&&(m.elementId=o),m}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,n,i,o){const l=n==="Field"?e.binding.field:e.id,a=this.buildRule(l,i,o,e.type==="form-group"?e.id:"");let m=this.getExpressionData().find(c=>c.targetType===n&&c.target===l);const p=c=>c.value.trim()==="";if(m){const c=m.rules.find(s=>s.id===a.id);if(c)p(a)?m.rules=m.rules.filter(s=>s.id!==a.id):(Object.assign(c,a),o==="validate"&&e.type==="form-group"&&(c.elementId=e.id));else{if(p(a))return null;m.rules=m.rules||[],m.rules.push(a)}}else{if(p(a))return null;m={target:`${l}`,rules:[a],targetType:n}}return m}getExpressionEditorOptions(e,n,i,o){return i.reduce((l,a)=>{var m,p;const d=n==="Field"?(m=e==null?void 0:e.binding)==null?void 0:m.field:e.id;return l[a]={hide:n==="Field"?!!((p=e==null?void 0:e.binding)!=null&&p.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(d),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,n),onSubmitModal:c=>{const s=this.updateExpression(e,n,c,a);if(o){const f=this.buildRule(d,c,a);o(f)}return s}}},l},{})}getExpressionInfo(e,n,i){const o=n==="Field"?e.binding.field:e.id,l=this.getExpressionRule(o,i),a={value:l&&l.value,targetId:o,targetType:n,expressionType:i};return l&&l.message&&(a.message=l.message),a}getExpressionConfig(e,n,i=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,n,i,o)}}}getExpressionOptions(e,n,i){const o=this.getExpressionInfo(e,n,i);return{dialogTitle:`${this.expressionNames[i]}编辑器`,singleExpand:!1,showMessage:i==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,i,n),expressionInfo:o}}}class Jt{constructor(e,n){ie(this,"componentId");ie(this,"viewModelId");ie(this,"eventsEditorUtils");ie(this,"formSchemaUtils");ie(this,"formMetadataConverter");ie(this,"designViewModelUtils");ie(this,"designViewModelField");ie(this,"controlCreatorUtils");ie(this,"designerHostService");ie(this,"designerContext");ie(this,"schemaService",null);ie(this,"metadataService",null);ie(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=e,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=n.designViewModelUtils,this.controlCreatorUtils=n.controlCreatorUtils,this.metadataService=n.metadataService,this.schemaService=n.schemaService,this.designerContext=n.designerContext}getFormDesignerInstance(){var e,n;return(n=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:n.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var i;const n=e.binding&&e.binding.type==="Form"&&e.binding.field;if(n){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(l=>l.id===n)}e.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:$.DgControl[e.type]&&$.DgControl[e.type].name}]}}}}}getAppearanceConfig(e=null,n={},i){const o={title:"外观",description:"Appearance"},l={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in n)l[a]=Object.assign(l[a]||{},n[a]);return{...o,properties:{...l},setPropertyRelates(a,d){if(a){switch(a&&a.propertyID){case"class":case"style":{$.canvasChanged.value++;break}}i&&i(a,e,d)}}}}getPropertyEditorParams(e,n=[],i="visible",o={},l={},a=""){const{getVariables:d,getControlName:m,getStateMachines:p}=uo(this.designerHostService),c=this.getRealTargetType(e),s=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],f={type:"property-editor",propertyTypes:s};return s.map(y=>{switch(y){case"Const":Object.assign(f,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":f.expressionConfig=this.getExpressionOptions(e,c,a||i);break;case"StateMachine":f.stateMachines=p();break;case"Variable":Object.assign(f,{controlName:m(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:d(this.viewModelId),parentComponentId:this.componentId==="root-component"?"":"root-component",onBeforeOpenVariables:u=>{u.value=d(this.viewModelId)}},l),this.designerContext.designerMode==="PC_RTC"&&(f.newVariablePrefix="ext_"+f.newVariablePrefix);break}}),f}getVisibleProperty(e,n=""){var l;let i=["Const","Variable","StateMachine","Expression"];return n==="gridFieldEditor"?i=["Const","Expression"]:n==="form-group"&&!((l=e.binding)!=null&&l.field)&&(i=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,i,"visible")}}}getBehaviorConfig(e,n="",i={},o){const l={title:"行为",description:""},a=this.getVisibleProperty(e,n);for(const m in i)a[m]=Object.assign(a[m]||{},i[m]);const d=this;return{...l,properties:{...a},setPropertyRelates(m,p){if(m){switch(m.propertyID){case"disabled":case"readonly":case"visible":d.afterMutilEditorChanged(e,m);break}o&&o(m,p)}}}}afterMutilEditorChanged(e,n){this.addNewVariableToViewModel(n,this.viewModelId),this.updateExpressionValue(n),this.clearExpression(n,e)}updateElementByParentContainer(e,n){const i=n&&n.parent&&n.parent.schema;if(!i)return;const o=i.contents.findIndex(a=>a.id===e),l=je.cloneDeep(i.contents[o]);i.contents.splice(o,1),i.contents.splice(o,0,l),$.refreshCanvas()}addNewVariableToViewModel(e,n){const i=e.propertyValue;if(!(i&&typeof i=="object")||!(i.type==="Variable"&&i.isNewVariable))return;const a={id:i.field,category:"locale",code:i.fullPath,name:i.fullPath,type:i.newVariableType||"String",isRtcVariable:this.designerContext.designerMode==="PC_RTC"?!0:void 0};delete i.newVariableType,delete i.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById("root-viewmodel").states.push(a)}updateExpressionValue(e){const n=e.propertyValue;if(!((n&&n.type)==="Expression"&&n.expressionInfo))return;const{expressionId:l,expressionInfo:a}=n,{targetId:d,targetType:m,expressionType:p,value:c,message:s}=a,f=this.formSchemaUtils.getModule();f.expressions=f.expressions||[];const{expressions:y}=f;let u=y.find(w=>w.target===d);u||(u={target:d,rules:[],targetType:m},y.push(u));const h=u.rules.find(w=>w.type===p);if(h)h.value=c,h.message=s;else{const w={id:l,type:p,value:c,message:s};u.rules.push(w)}delete n.expressionInfo}clearExpression(e,n){const i=e.propertyValue;if(i&&i.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),d=n.binding?n.binding.field:n.id,m=a.find(p=>p.target===d);!m||!m.rules||(m.rules=m.rules.filter(p=>p.type!==l))}getExpressionOptions(e,n,i){return new Zt(this.formSchemaUtils).getExpressionOptions(e,n,i)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item","drawer-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const n={};return n[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:i=>{var o;((o=i.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(i)}}},n}}const Qt=[{key:"none",value:"无"},{key:"cellNumber",value:"手机号"},{key:"tel",value:"座机号/传真号"},{key:"telOrCell",value:"手机号/座机号/传真号"},{key:"postCode",value:"邮编"},{key:"email",value:"电子邮箱"},{key:"idCode",value:"身份证号"},{key:"carCode",value:"车牌号"},{key:"subjectCode",value:"10位数字会计科目代码"},{key:"custom",value:"自定义"}];function fo(t){switch(t){case"none":return"";case"cellNumber":return"^1[0-9]{10}$";case"tel":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$";case"telOrCell":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$|^1[0-9]{10}$";case"postCode":return"^[1-9]\\d{5}(?!\\d)$";case"workCode":return"^\\d{8}$";case"email":return"^[A-Za-z\\d]+([-_.][A-Za-z\\d]+)*@([A-Za-z\\d]+[-.])+[A-Za-z]{2,5}$";case"idCode":return"^[1-9]\\d{5}[1-9]\\d{3}((0[1-9])|(1[0-2]))(0[1-9]|([1|2][0-9])|3[0-1])((\\d{4})|\\d{3}X)$";case"carCode":return"^([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][·\\s]?[A-HJ-NP-Z0-9]{4,5}[挂学警港澳]?|粤[Z港澳][·\\s]?[港澳][0-9A-HJ-NP-Z]{4}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?([DF][0-9A-HJ-NP-Z][0-9]{4}|[0-9]{5}[DF])[挂港澳]?|[使领][0-9]{3}[·\\s]?[0-9]{3}|临[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?[0-9A-Z]{4,5}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z]?[·\\s]?警[0-9A-Z]{4}|[军海空][A-Z][·\\s]?[0-9]{4,5}|WJ(?:[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]|\\d{2})[·\\s]?[0-9A-Z]{4,5})$";case"carCodeNew":return"^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF])|([DF][A-HJ-NP-Z0-9][0-9]{4}))$";case"subjectCode":return"^\\d{10}$"}return""}function mo(t){var e;return"请输入正确的"+((e=Qt.find(n=>n.key===t))==null?void 0:e.value)}const po={convertTo:(t,e,n,i)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation.type=n,t.editor.formatValidation.expression=fo(n),t.editor.formatValidation.message=mo(n)},convertFrom:(t,e,n)=>t.editor.formatValidation?e==="type"?t.editor.formatValidation[e]||"none":t.editor.formatValidation[e]:"none"},Kt={convertTo:(t,e,n,i)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation[e]=n},convertFrom:(t,e,n)=>t.editor.formatValidation?t.editor.formatValidation[e]:t.editor[e]};class ho extends He.InputBaseProperty{constructor(e,n){super(e,n)}getPropertyConfig(e,n){return super.getPropertyConfig(e,n),this.propertyConfig.categories.formatValidation=this.getFormatValidation(e),this.propertyConfig}getEditorProperties(e){var i,o;let n;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=l==null?void 0:l.schemaField)!=null&&o.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n,needValid:!0}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getGridFieldEdtiorProperties(e){var i,o;let n;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=l==null?void 0:l.schemaField)!=null&&o.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getFormatValidation(e){var i,o,l,a;const n={title:"输入格式校验",description:"输入校验",hide:!((i=e.binding)!=null&&i.field),properties:{type:{title:"格式类型",type:"enum",description:"格式类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:Qt},refreshPanelAfterChanged:!0,$converter:po,parentPropertyID:"formatValidation"}}};return(o=e.editor.formatValidation)!=null&&o.type&&((l=e.editor.formatValidation)==null?void 0:l.type)!=="none"&&(n.properties.message={title:"输入错误提示",type:"string",description:"输入错误提示",$converter:Kt,parentPropertyID:"formatValidation"}),((a=e.editor.formatValidation)==null?void 0:a.type)==="custom"&&(n.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:Kt,parentPropertyID:"formatValidation"}),n}}const ot=class ot{static getEditorTypesByMDataType(e,n=!1,i=""){if(n)return[{key:$.DgControl["language-textbox"].type,value:$.DgControl["language-textbox"].name}];let o=ot.fieldControlTypeMapping[e];if(i==="data-grid-column"&&(o!=null&&o.length)){const l=[$.DgControl["check-group"].type,$.DgControl["radio-group"].type,$.DgControl.image.type,$.DgControl["rich-text-editor"].type];o=o.filter(a=>!l.includes(a.key))}return o}static getAllInputTypes(){const e=[];for(const n in ot.fieldControlTypeMapping)ot.fieldControlTypeMapping[n].forEach(i=>{e.find(o=>o.key===i.key&&o.value===i.value)||e.push({key:i.key,value:i.value})});return e}static mappingDomPropAndSchemaProp(e,n){var l;const i=(l=e.editor)==null?void 0:l.type,o=[];return(e.type===$.DgControl["data-grid-column"].type||e.type===$.DgControl["tree-grid-column"].type)&&n&&n.categoryId&&n.categoryId.indexOf("gridFieldEditor")<0&&o.push({domField:"title",schemaField:"name"}),o.push({domField:"label",schemaField:"name"}),o.push({domField:"editor.required",schemaField:"require"}),o.push({domField:"editor.readonly",schemaField:"readonly"}),(i===$.DgControl["input-group"].type||i===$.DgControl.textarea.type||i===$.DgControl["number-spinner"].type)&&o.push({domField:"editor.maxLength",schemaField:"type.length"}),i===$.DgControl["number-spinner"].type&&o.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===$.DgControl["data-grid-column"].type||e.type===$.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.precision",schemaField:"type.precision"}),(i===$.DgControl["combo-list"].type||i===$.DgControl["radio-group"].type)&&o.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===$.DgControl["data-grid-column"].type||e.type===$.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.data",schemaField:"type.enumValues"}),i===$.DgControl["date-picker"].type&&(o.push({domField:"editor.displayFormat",schemaField:"editor.format"}),o.push({domField:"editor.fieldType",schemaField:"type.name"})),i===$.DgControl["number-spinner"].type&&(o.push({domField:"editor.max",schemaField:"editor.maxValue"}),o.push({domField:"editor.min",schemaField:"editor.minValue"})),i===$.DgControl.lookup.type&&(o.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),o.push({domField:"editor.valueField",schemaField:"editor.valueField"}),o.push({domField:"editor.textField",schemaField:"editor.textField"}),o.push({domField:"editor.displayType",schemaField:"editor.displayType"}),o.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),o.push({domField:"editor.helpId",schemaField:"editor.helpId"})),o.push({domField:"path",schemaField:"bindingPath"}),o.push({domField:"binding.path",schemaField:"bindingField"}),o.push({domField:"binding.fullPath",schemaField:"path"}),(e.type===$.DgControl["data-grid-column"].type||e.type===$.DgControl["tree-grid-column"].type)&&o.push({domField:"field",schemaField:"bindingPath"}),o}};ie(ot,"fieldControlTypeMapping",{String:[{key:$.DgControl["input-group"].type,value:$.DgControl["input-group"].name},{key:$.DgControl.lookup.type,value:$.DgControl.lookup.name},{key:$.DgControl.image.type,value:$.DgControl.image.name},{key:$.DgControl["date-picker"].type,value:$.DgControl["date-picker"].name},{key:$.DgControl.switch.type,value:$.DgControl.switch.name},{key:$.DgControl["check-box"].type,value:$.DgControl["check-box"].name},{key:$.DgControl["check-group"].type,value:$.DgControl["check-group"].name},{key:$.DgControl["radio-group"].type,value:$.DgControl["radio-group"].name},{key:$.DgControl["combo-list"].type,value:$.DgControl["combo-list"].name},{key:$.DgControl.textarea.type,value:$.DgControl.textarea.name},{key:$.DgControl["time-picker"].type,value:$.DgControl["time-picker"].name}],Text:[{key:$.DgControl.textarea.type,value:$.DgControl.textarea.name},{key:$.DgControl.lookup.type,value:$.DgControl.lookup.name},{key:$.DgControl.image.type,value:$.DgControl.image.name},{key:$.DgControl["rich-text-editor"].type,value:$.DgControl["rich-text-editor"].name}],Decimal:[{key:$.DgControl["number-spinner"].type,value:$.DgControl["number-spinner"].name}],Integer:[{key:$.DgControl["number-spinner"].type,value:$.DgControl["number-spinner"].name}],Number:[{key:$.DgControl["number-spinner"].type,value:$.DgControl["number-spinner"].name},{key:$.DgControl.switch.type,value:$.DgControl.switch.name},{key:$.DgControl["check-box"].type,value:$.DgControl["check-box"].name}],BigNumber:[{key:$.DgControl["number-spinner"].type,value:$.DgControl["number-spinner"].name}],Date:[{key:$.DgControl["date-picker"].type,value:$.DgControl["date-picker"].name}],DateTime:[{key:$.DgControl["date-picker"].type,value:$.DgControl["date-picker"].name}],Boolean:[{key:$.DgControl.switch.type,value:$.DgControl.switch.name},{key:$.DgControl["check-box"].type,value:$.DgControl["check-box"].name}],Enum:[{key:$.DgControl["combo-list"].type,value:$.DgControl["combo-list"].name},{key:$.DgControl["radio-group"].type,value:$.DgControl["radio-group"].name}],Object:[{key:$.DgControl.lookup.type,value:$.DgControl.lookup.name},{key:$.DgControl["combo-list"].type,value:$.DgControl["combo-list"].name},{key:$.DgControl["radio-group"].type,value:$.DgControl["radio-group"].name}]});let at=ot;var it=(t=>(t.Form="Form",t.Variable="Variable",t))(it||{});class en{constructor(){ie(this,"label","");ie(this,"id","");ie(this,"columnInSM",12);ie(this,"columnInMD",6);ie(this,"columnInLG",3);ie(this,"columnInEL",2);ie(this,"displayWidthInSM",1);ie(this,"displayWidthInMD",1);ie(this,"displayWidthInLG",1);ie(this,"displayWidthInEL",1);ie(this,"displayColumnCountAtBreakPoint","md");ie(this,"tagRow",0);ie(this,"showTopBorder",0);ie(this,"group",1);ie(this,"isSupportedClass",!0);ie(this,"fieldSetId","")}}function go(t){let e,n;const i=new Map;let o=[];function l(c,s){const y=((c==null?void 0:c.split(" "))||[]).filter(x=>x.startsWith("col-"));if(y.length===0){s.isSupportedClass=!1;return}let u=y.find(x=>/^col-([1-9]|10|11|12)$/.test(x)),h=y.find(x=>/^col-md-([1-9]|10|11|12)$/.test(x)),w=y.find(x=>/^col-xl-([1-9]|10|11|12)$/.test(x)),b=y.find(x=>/^col-el-([1-9]|10|11|12)$/.test(x));u=u||"col-12",s.columnInSM=parseInt(u.replace("col-",""),10),s.displayWidthInSM=s.columnInSM/12,s.displayWidthInSM!==1&&(s.isSupportedClass=!1),h=h||"col-md-"+s.columnInSM,s.columnInMD=parseInt(h.replace("col-md-",""),10),s.displayWidthInMD=s.columnInMD/6,[1,2].includes(s.displayWidthInMD)||(s.isSupportedClass=!1),w=w||"col-xl-"+s.columnInMD,s.columnInLG=parseInt(w.replace("col-xl-",""),10),s.displayWidthInLG=s.columnInLG/3,[1,2,3,4].includes(s.displayWidthInLG)||(s.isSupportedClass=!1),b=b||"col-el-"+s.columnInLG,s.columnInEL=parseInt(b.replace("col-el-",""),10),s.displayWidthInEL=s.columnInEL/2,[1,2,3,4,5,6].includes(s.displayWidthInEL)||(s.isSupportedClass=!1)}function a(c,s,f,y=!1){let u=!1;if(!c.contents||c.contents.length===0){const h=new en;l(c.layout,h),s.push(h);return}c.contents.forEach(h=>{if(h.type==="fieldset"){f+=1,a(h,s,f,!0),u=!0;return}if(h.type==="dynamic-form")return;u&&(f+=1,u=!1);const w=h.appearance&&h.appearance.class,b=new en;w?l(w,b):b.isSupportedClass=!1,b.label=h.label||h.id,b.id=h.id,b.group=f,y&&(b.fieldSetId=c.id),n===h.id&&(e=f),i.set(h.id,h),s.push(b)})}function d(c){const s=t.getComponentById(c);if(!s||!s.componentType||!s.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const f=t.selectNode(s,y=>y.type===$.DgControl["response-form"].type);return!f||!f.contents||f.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:f}}function m(c,s){s=s||c.id;const{result:f,message:y,formNode:u}=d(s);if(!f)return{result:f,message:y};n=c.id,o=[],i.clear();const h=u.contents[0].type===$.DgControl.fieldset.type?0:1;a(u,o,h);const w=o.find(x=>!x.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:w?"customize":"standard"},importData:o}}function p(c,s){s=s;const{result:f,formNode:y}=d(s);if(!f)return"";const u=[];return c.forEach(h=>{var x;const w=i.get(h.id),b=w.appearance&&w.appearance.class;if(b){const T=b.split(" ").filter(E=>!E.startsWith("col-")),v="col-"+h.columnInSM,C="col-md-"+h.columnInMD,g="col-xl-"+h.columnInLG,S="col-el-"+h.columnInEL,M=[v,C,g,S].concat(T);w.appearance.class=M.join(" ")}if(h.fieldSetId){const F=y.contents.find(v=>v.id===h.fieldSetId),T=u.find(v=>v.id===h.fieldSetId);T?(x=T.contents)==null||x.push(w):(u.push(F),F.contents=[w])}else u.push(w)}),y.contents=u,y.id}return{checkCanFindFormNode:d,checkCanOpenLayoutEditor:m,changeFormControlsByResponseLayoutConfig:p,getResonseFormLayoutConfig:a}}class ht extends Jt{constructor(n,i){super(n,i);ie(this,"responseLayoutEditorFunction");ie(this,"bindingVarible");ie(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=go(this.formSchemaUtils)}getCommonPropertyConfig(n,i,o="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(n,i,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n,i),this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"form-group")}getPropertyConfig(n,i){return this.getCommonPropertyConfig(n,i,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressions=this.getExpressionConfig(n,"Field"),this.propertyConfig.categories.eventsEditor=this.getEventPropertyConfig(n),this.propertyConfig}getGridFieldEdtiorPropConfig(n,i){return this.propertyConfig.categories={},this.getCommonPropertyConfig(n,i,"Grid"),this.getGridFieldEdtiorProperties?this.propertyConfig.categories.editor=this.getGridFieldEdtiorProperties(n):this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressons=this.getExpressionConfig(n,"Field"),this.propertyConfig.categories}getBasicProperties(n,i,o="Card"){var p;const l=this;this.setDesignViewModelField(n);const{canChangeControlType:a,editorTypeList:d}=this.getAvailableEditorType(n),m={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:d,readonly:!a}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},showLabelType:{description:"标签显示方式:1、显示:显示标签 2、占位:保留标签空间,但不显示文本 3、不显示:不显示标签",title:"标签显示",type:"enum",editor:{data:[{id:"visible",name:"显示"},{id:"reserve-space",name:"占位"},{id:"none",name:"不显示"}]},defaultValue:((p=n.editor)==null?void 0:p.type)==="image"?"none":"visible"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:n,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0,readonly:this.formSchemaUtils.designerMode==="PC_RTC"&&!n.isRtcControl}},setPropertyRelates(c,s,f){if(c)switch(c&&c.propertyID){case"type":{l.changeControlType(n,c,i);break}case"label":{c.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(n,c,f);break}}}};return o.toLocaleLowerCase()!=="card"&&delete m.properties.showLabelType,m}checkCanChangeControlType(n,i){if(!n.binding)return!1;if(n.binding.type==="Variable"){if(this.bindingVarible=this.formSchemaUtils.getVariableById(n.binding.field),!this.bindingVarible)return!1}else if(!this.designViewModelField||this.designViewModelField.$type!==X.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(n){var l,a;const i=this.checkCanChangeControlType(n,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=$.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===X.FormSchemaEntityField$Type.SimpleField?o=at.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(o=at.getEditorTypesByMDataType(this.bindingVarible.type,!!((a=this.designViewModelField)!=null&&a.multiLanguage))),{canChangeControlType:i,editorTypeList:o}}changeBindingField(n,i,o){i.needRefreshEntityTree=!0}getAppearanceProperties(n,i){const o=this;return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},fill:{title:"填充宽度",description:"启用后,控件占满父容器宽度",type:"boolean",parentPropertyID:"appearance"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(n,o.componentId)}}},setPropertyRelates(l,a){if(l)switch(l&&l.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,o.componentId||n.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(n.id,i),delete n.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(l.propertyValue,n.id,this.componentId),$.canvasChanged.value++;break;case"style":{$.canvasChanged.value++;break}}}}}getEditorProperties(n){return this.getComponentConfig(n)}changeControlType(n,i,o){const l=i.propertyValue,a=o&&o.parent&&o.parent.schema;if(!a)return;const d=a.contents.findIndex(c=>c.id===n.id);if(d===-1)return;const m=a.contents[d];let p;if(this.designViewModelField){const f=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(u=>u.id===this.designViewModelField.id).fieldSchema||{};f.editor||(f.editor={}),f.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,f,!1),p=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}p||(p=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(p,{id:m.id,appearance:m.appearance,size:m.size,label:m.label,binding:m.binding}),Object.prototype.hasOwnProperty.call(m,"visible")&&Object.assign(p,{visible:m.visible}),m.editor&&["readonly","required","placeholder"].map(c=>{Object.prototype.hasOwnProperty.call(m.editor,c)&&(p.editor[c]=m.editor[c])}),o!=null&&o.updateContextSchema?o.updateContextSchema(p):(o.schema=Object.assign(m,p),Object.assign(n,p)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(c=>c.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(c=>c.classList.remove("dgComponentFocused")),$.canvasChanged.value++,r.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(n,i={},o={},l){var f,y;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},i),d=(f=n.binding)!=null&&f.field?[]:["Const","Variable","StateMachine"],m=this.getPropertyEditorParams(n,d,"readonly"),p=this.getPropertyEditorParams(n,d,"required"),c={readonly:{description:"",title:"只读",editor:m},required:{description:"",title:"必填",type:"boolean",editor:p,visible:!!((y=n.binding)!=null&&y.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const u in o)c[u]=Object.assign(c[u]||{},o[u]);const s=this;return{...a,properties:{...c},setPropertyRelates(u,h){if(u){switch(u.propertyID){case"readonly":case"required":s.afterMutilEditorChanged(n,u);break}l&&l.bind(s)(u,n,h)}}}}updateUnifiedLayoutAfterControlChanged(n,i,o){const l=n.split(" ");let a=l.find(s=>/^col-([1-9]|10|11|12)$/.test(s)),d=l.find(s=>/^col-md-([1-9]|10|11|12)$/.test(s)),m=l.find(s=>/^col-xl-([1-9]|10|11|12)$/.test(s)),p=l.find(s=>/^col-el-([1-9]|10|11|12)$/.test(s));a=a||"col-12",d=d||"col-md-"+a.replace("col-",""),m=m||"col-xl-"+d.replace("col-md-",""),p=p||"col-el-"+m.replace("col-xl-","");const c={id:i,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(d.replace("col-md-",""),10),columnInLG:parseInt(m.replace("col-xl-",""),10),columnInEL:parseInt(p.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,c)}updateUnifiedLayoutAfterResponseLayoutChanged(n,i){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(n);if(!o||!o.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,l,1),i){const u=l.find(h=>h.id===i.id);Object.assign(u||{},i)}const a=l.map(u=>u.columnInSM),d=l.map(u=>u.columnInMD),m=l.map(u=>u.columnInLG),p=l.map(u=>u.columnInEL),c=this.checkIsUniqueColumn(a)?a[0]:null,s=this.checkIsUniqueColumn(d)?d[0]:null,f=this.checkIsUniqueColumn(m)?m[0]:null,y=this.checkIsUniqueColumn(p)?p[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:c,uniqueColClassInMD:s,uniqueColClassInLG:f,uniqueColClassInEL:y})}checkIsUniqueColumn(n){const i=new Set(n);return Array.from(i).length===1}getItemCollectionEditor(n,i,o){return i=i||"value",o=o||"name",{editor:{columns:[{field:i,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:i,nameField:o,requiredFields:[i,o],uniqueFields:[i,o],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===X.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(n,i){n.binding&&n.binding.type===it.Form&&n.binding.field?(i.find(o=>o.label==="fieldValueChanging"),i.find(o=>o.label==="fieldValueChanged"),this.designViewModelField&&(n.fieldValueChanging=this.designViewModelField.valueChanging,n.fieldValueChanged=this.designViewModelField.valueChanged)):i=i.filter(o=>o.label!=="fieldValueChanging"&&o.label!=="fieldValueChanged")}getControlMethodType(n){if(!n.binding)return n.type;switch(n.binding.type){case it.Form:return n.binding.path||n.type;case it.Variable:return n.binding.fullPath||n.type}return n.type}getEventPropertyConfig(n,i="card",o,l){const a=this;let d=[];if(o&&(d=d.concat(o)),d.length===0)return{title:"事件",hideTitle:!0,properties:{},tabId:"commands",tabName:"交互",hide:!0};this.appendFieldValueChangeEvents(n,d);const m=a.eventsEditorUtils.formProperties(n,a.viewModelId,d);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(m),tabId:"commands",tabName:"交互",setPropertyRelates(s,f){const y=s.propertyValue;delete n[a.viewModelId],y&&(y.setPropertyRelates=this.setPropertyRelates,y.controlInfo={type:a.getControlMethodType(n),name:n.title},a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,y.events,y)),l&&l(s,f,y);const u=a.designViewModelUtils.getDgViewModel(a.viewModelId);u&&a.designViewModelField&&u.changeField(a.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged})}}}getExpressionConfig(n,i,o=["compute","dependency","validate"],l){return new Zt(this.formSchemaUtils).getExpressionConfig(n,i,o,l)}getBindingDataType(){return this.designViewModelField?this.designViewModelField.type.name==="Number"?"number":this.designViewModelField.type.name==="String"?"string":"boolean":"boolean"}getEditor(){return this.getBindingDataType()==="number"?this.numberEditorOptions:{}}updatePropertyValue(n,i,o){var l;n.editor[i]!==o?n.editor[i]=o:(l=this.getFormDesignerInstance())==null||l.reloadPropertyPanel()}setBooleanValue(n,i,o){let l=o;this.getBindingDataType()==="string"&&(l=(l||"").trim()||(i==="trueValue"?"true":"false"));const d=i==="trueValue"?"falseValue":"trueValue";n.editor[d]===l&&(l=l+1),this.updatePropertyValue(n,i,l)}getBooleanValueConverter(){return{convertFrom:(n,i)=>n.editor[i],convertTo:(n,i,o)=>{this.setBooleanValue(n,i,o)}}}}class yo extends ht{constructor(e,n){super(e,n)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class vo extends He.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){const n=this;return n.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},(o,l)=>{if(o)switch(o.propertyID){case"dataSourceType":{o.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...o.propertyValue]);break}}})}}class bo extends He.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,i;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((n=this.designViewModelField)==null?void 0:n.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;if(e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)){let a,d;o.type.name===X.FormSchemaEntityFieldTypeName.String&&(a="true",d="false"),o.type.name===X.FormSchemaEntityFieldTypeName.Number&&(a=1,d=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&d!==void 0&&(e.editor.falseValue=d)}}}const tn={convertFrom:(t,e)=>(t.editor.remote||{})[e],convertTo:(t,e,n)=>{t.editor.remote=t.editor.remote||{},t.editor.remote[e]=n}};class Co extends He.InputBaseProperty{constructor(e,n){super(e,n)}getCommonEditorProperties(e){var n,i,o;return{viewType:{visible:!!((n=e.editor)!=null&&n.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((i=e.editor)!=null&&i.multiSelect)&&((o=e.editor)==null?void 0:o.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(e){var m,p,c,s,f,y,u,h,w,b,x,F;const n=this;let i="";if(((m=e==null?void 0:e.binding)==null?void 0:m.type)==="Form"){const T=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(p=T==null?void 0:T.schemaField)!=null&&p.type&&(i=T.schemaField.type.$type)}const o=this.getPropertyEditorParams(e,["Variable"]),l=!e.editor.dataSourceType||e.editor.dataSourceType==="static",a=((s=(c=this.designViewModelField)==null?void 0:c.type)==null?void 0:s.$type)===X.FormSchemaEntityFieldType$Type.StringType&&((f=e.editor)==null?void 0:f.type)==="combo-list"&&((y=e.editor)==null?void 0:y.dataSourceType)==="dynamic"&&!((h=(u=e.editor)==null?void 0:u.remote)!=null&&h.url)&&!((w=e.editor)!=null&&w.multiSelect);return n.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},dataSource:{description:"动态数据源绑定变量",visible:a,title:"数据",editor:{...o,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:l,...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic"&&!((b=e.editor)!=null&&b.dataSource),$converter:tn,description:"",title:"服务端API",type:"string",refreshPanelAfterChanged:!0},body:{visible:!1,$converter:tn,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!i||i==="StringType",readonly:((x=e.editor)==null?void 0:x.dataSourceType)==="dynamic"&&!!((F=e.editor)!=null&&F.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(T,v)=>{if(!T||!v.editor)return;const C=this;switch(T.propertyID){case"dataSourceType":{T.propertyValue==="static"?(v.editor.valueField="value",v.editor.textField="name",v.editor.remote=null):T.propertyValue==="dynamic"&&(v.editor.remote={method:"GET"},v.editor.valueField="value",v.editor.textField="name");break}case"data":{!C.checkEnumDataReadonly(v)&&v.formatter&&(v.formatter.data=[...T.propertyValue]);break}case"viewType":{T.propertyValue==="tag"&&(v.editor.editable=!1);break}case"dataSource":C.afterMutilEditorChanged(v,T)}})}getGridFieldEdtiorProperties(e,n){var m,p,c,s,f,y,u,h,w,b,x,F,T;const i=this;let o="";if(((m=e==null?void 0:e.binding)==null?void 0:m.type)==="Form"){const v=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(p=v==null?void 0:v.schemaField)!=null&&p.type&&(o=v.schemaField.type.$type)}const l=((s=(c=this.designViewModelField)==null?void 0:c.type)==null?void 0:s.$type)===X.FormSchemaEntityFieldType$Type.StringType&&((f=e.editor)==null?void 0:f.type)==="combo-list"&&((y=e.editor)==null?void 0:y.dataSourceType)==="dynamic"&&!((u=e.editor)!=null&&u.multiSelect),a=this.getPropertyEditorParams(e,["Variable"]);return i.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},dataSource:{description:"动态数据源绑定变量",visible:l,title:"数据",editor:{...a,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!((h=e.editor)!=null&&h.dataSourceType)||((w=e.editor)==null?void 0:w.dataSourceType)==="static",...i.getItemCollectionEditor(e,(b=e.editor)==null?void 0:b.valueField,(x=e.editor)==null?void 0:x.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:o==="StringType",readonly:((F=e.editor)==null?void 0:F.dataSourceType)==="dynamic"&&!!((T=e.editor)!=null&&T.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(v,C)=>{if(!v||!C.editor)return;const g=this;switch(v.propertyID){case"dataSourceType":{v.propertyValue==="static"?(C.editor.valueField="value",C.editor.textField="name",C.editor.remote=null):v.propertyValue==="dynamic"&&(C.editor.remote={method:"GET"},C.editor.valueField="value",C.editor.textField="name");break}case"data":{!g.checkEnumDataReadonly(C)&&C.formatter&&(C.formatter.data=[...v.propertyValue]);break}case"dataSource":g.afterMutilEditorChanged(C,v)}})}setEditorPropertyRelates(e,n,i){if(!e||!n.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name",n.editor.remote={});break}case"data":{!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.$type)===X.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}getEventPropertyConfig(e,n="card",i,o){const l=this;let a=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}];i&&(a=a.concat(i)),this.appendFieldValueChangeEvents(e,a);const d=l.eventsEditorUtils.formProperties(e,l.viewModelId,a);return{title:"事件",hideTitle:!0,properties:l.createBaseEventProperty(d),tabId:"commands",tabName:"交互",setPropertyRelates(c,s){const f=c.propertyValue;delete e[l.viewModelId],f&&(f.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(e,l.viewModelId,f.events,f)),o&&o(c,s,f);const y=l.designViewModelUtils.getDgViewModel(l.viewModelId);y&&l.designViewModelField&&y.changeField(l.designViewModelField.id,{valueChanging:e.fieldValueChanging,valueChanged:e.fieldValueChanged}),e.editor.beforeOpen!==e.beforeOpen&&(e.editor.beforeOpen=e.beforeOpen),e.editor.onChange!==e.onChange&&(e.editor.onChange=e.onChange),e.editor.onClear!==e.onClear&&(e.editor.onClear=e.onClear)}}}}class wo extends He.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{resizable:{description:"",title:"拖拽调整大小",type:"boolean"},autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}getGridFieldEdtiorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}}function So(){let t="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:t}=window.top.localStorage);const e=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],n=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],i=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],o=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],l=[{id:"yyyy",name:"yyyy"}];return t==="zh-CHS"&&(e.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),n.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),t==="zh-CHT"&&(e.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),n.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:i,yMdFormats:n,mdFormats:o,yFormats:l}}const xo=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],Mo=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"}],Fo=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],To=[{id:"yyyy",name:"yyyy"}],{timeFormats:_o,yMdFormats:ko,yMFormats:nn,mdFormats:Vo,yFormats:Mt}=So();class Eo extends He.InputBaseProperty{constructor(e,n){super(e,n)}getDatePickerModes(e){return e==="Date"||e==="DateTime"?[{label:"年月日",value:"day"}]:[{label:"年月日",value:"day"},{label:"年月",value:"month"},{label:"年",value:"year"}]}checkMaxMinDate(e){const{minDate:n,maxDate:i,showTime:o}=(e==null?void 0:e.editor)||{},{parseToDate:l,formatTo:a}=X.useDateFormat();if(i){const d=l(i,"yyyy-MM-dd HH:mm:ss");d&&(e.editor.maxDate=a(d,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}if(n){const d=l(n,"yyyy-MM-dd HH:mm:ss");d&&(e.editor.minDate=a(d,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}}getEditorProperties(e){var d,m,p,c,s,f,y,u,h,w,b,x,F,T,v;const n=this.getDateFormatOptions(e==null?void 0:e.editor),i=this.getValueFormatOptions(e==null?void 0:e.editor),o=(m=(d=this.designViewModelField)==null?void 0:d.type)==null?void 0:m.name,l=this.getDatePickerModes(o),a=this.getExtremeDateFormat(e);return(p=e==null?void 0:e.editor)!=null&&p.selectMode||(e.editor.selectMode="day"),this.checkMaxMinDate(e),this.getComponentConfig(e,{type:"date-picker"},{enableClear:{description:"是否显示清除按钮",title:"启用清除",type:"boolean"},selectMode:{description:"",title:"显示类型",type:"string",refreshPanelAfterChanged:!0,editor:{type:"combo-list",idField:"value",textField:"label",valueField:"value",data:l}},showWeekNumber:{description:"",title:"显示第几周",type:"boolean",visible:((c=e==null?void 0:e.editor)==null?void 0:c.selectMode)==="day"},firstDayOfTheWeek:{description:"",title:"每周起始日",type:"string",editor:{type:"combo-list",idField:"value",valueField:"value",textField:"label",data:[{label:"星期日",value:"Sun"},{label:"星期一",value:"Mon"}]},visible:((s=e==null?void 0:e.editor)==null?void 0:s.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((f=e==null?void 0:e.editor)==null?void 0:f.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((y=e==null?void 0:e.editor)==null?void 0:y.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:n}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:i},visible:((u=e==null?void 0:e.editor)==null?void 0:u.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((h=e==null?void 0:e.editor)==null?void 0:h.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:"1900-01-01 00:00:00",maxDate:((w=e==null?void 0:e.editor)==null?void 0:w.maxDate)||"9999-12-31 23:59:59",showTime:(b=e==null?void 0:e.editor)==null?void 0:b.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((x=e==null?void 0:e.editor)==null?void 0:x.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:((F=e==null?void 0:e.editor)==null?void 0:F.minDate)||"1900-01-01 00:00:00",maxDate:"9999-12-31 23:59:59",showTime:(T=e==null?void 0:e.editor)==null?void 0:T.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((v=e==null?void 0:e.editor)==null?void 0:v.selectMode)==="day"}},this.setEditorPropertyRelates)}getExtremeDateFormat(e){var n,i,o,l;if(((n=e==null?void 0:e.editor)==null?void 0:n.selectMode)==="day")return"yyyy-MM-dd"+((i=e==null?void 0:e.editor)!=null&&i.showTime?" HH:mm:ss":"");if(((o=e==null?void 0:e.editor)==null?void 0:o.selectMode)==="month")return"yyyy-MM";if(((l=e==null?void 0:e.editor)==null?void 0:l.selectMode)==="year")return"yyyy"}getEventPropertyConfig(e){const n=this,i=[{label:"onDatePicked",name:"日期选择后事件"}],o=n.eventsEditorUtils.formProperties(e,n.viewModelId,i);return{title:"事件",hideTitle:!0,properties:n.createBaseEventProperty(o),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,d){const m=a.propertyValue;delete d[n.viewModelId],m&&n.eventsEditorUtils.saveRelatedParameters(d,n.viewModelId,m.events,m);const p=n.designViewModelUtils.getDgViewModel(n.viewModelId);p&&n.designViewModelField&&p.changeField(n.designViewModelField.id,{valueChanging:d.fieldValueChanging,valueChanged:d.fieldValueChanged})}}}setEditorPropertyRelates(e,n,i){if(!(!e||!n.editor))switch(e.propertyID){case"showTime":{const o=n.editor;e.propertyValue?(o.displayFormat="yyyy-MM-dd HH:mm:ss",o.valueFormat="yyyy-MM-dd HH:mm:ss"):(o.displayFormat="yyyy-MM-dd",o.valueFormat="yyyy-MM-dd"),n.formatter&&(n.formatter.dateFormat=o.displayFormat);break}case"displayFormat":{n.formatter&&(n.formatter.dateFormat=e.propertyValue);break}case"selectMode":{e.propertyValue!=="day"?(n.editor.showWeekNumber=!1,n.editor.showTime=!1,n.editor.enableQuickSelect=!1,e.propertyValue==="month"?(n.editor.displayFormat="yyyy-MM",n.editor.valueFormat="yyyy-MM"):(n.editor.displayFormat="yyyy",n.editor.valueFormat="yyyy")):(n.editor.displayFormat="yyyy-MM-dd",n.editor.valueFormat="yyyy-MM-dd");break}}}getDateFormatOptions(e){const n=e.selectMode||"day";let i=[];switch(n){case"day":{const o=[];e.showTime&&o.push(..._o),o.push(...ko,...nn,...Mt,...Vo),i=o;break}case"month":{i=[...nn,...Mt];break}case"year":{i=[...Mt];break}}return i}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let i=[...xo];return e.showTime&&(i=[...Mo]),i}case"month":return Fo;case"year":return To;default:return[]}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)&&(e.editor.fieldType=o.type.name,o.type.name===X.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const Io=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Po="";function gt(t){let e=[10,20,30,50,100];return t&&(typeof t=="string"&&(e=t.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(t)&&(e=t)),e.map(n=>({value:parseInt(n,10)})).sort((n,i)=>n.value-i.value)}const ve={convertFrom:(t,e)=>{const n=t.editor?t.editor:t;return e==="multiSelect"||e==="enableTitle"?!!n[e]:e==="separator"?n[e]||",":e==="onlySelectLeaf"?n[e]==null?!1:n[e]:e==="loadTreeDataType"?n[e]||"default":e==="placeholder"?je.isNil(n[e])?"请选择":n[e]:e==="openType"?n[e]||"Modal":n[e]},convertTo:(t,e,n)=>{const i=t.editor?t.editor:t;if(i[e]=n,e==="multiSelect"&&!n&&(i.enableCascade=!1),e==="openType"){if(n==="Popup")i.showSelections=!1,i.enableCascade=!1;else if(i.dialog){const{width:o}=i.dialog,{displayType:l}=i;l&&l.toUpperCase().indexOf("NAV")>-1&&(!o||o<520)&&(i.dialog.width=960)}}i.multiSelect&&i.openType==="Popup"&&(i.editable=!1,i.allowFreeInput=!1)}};function No(t){let e="form_group_"+Date.now();return t&&(e=t.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Bo(t,e){const{enablePager:n,pageSize:i,pageList:o}=e;t.pagination=t.pagination||{},Object.assign(t.pagination,{enable:n,sizeLimits:gt(o).map(l=>l.value),size:i,showLimits:!0,showGoto:!1,mode:"server"})}const on={convertFrom:(t,e)=>{var i;return(i=(t.editor?t.editor:t).dataSource)==null?void 0:i.displayName},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=t.editor?t.editor:t,o=n[0],{name:l,id:a,metadataContent:d,code:m}=o;i.dataSource||(i.dataSource={}),i.dataSource.displayName=`${l}(${m})`,i.helpId=a;const{displayType:p,idField:c,textField:s}=d;i.displayType=p,i.dataSource.idField=c,i.textField=s,i.dataSource.type="ViewObject",i.enableEqualSearch=!1;const{pageInfo:f}=d.dataSource;Bo(i,f);const{treeInfo:y}=p.toUpperCase()==="NAVTREELIST"?d.navigation:d.dataSource;if(y){const{onlySelectLeaf:u,loadDataType:h}=y;i.loadTreeDataType="default",i.onlySelectLeaf=u??!1}if(i.dataSource.uri||(i.dataSource.uri=No(t.id)),i.dialog){const{width:u}=i.dialog;p&&p.toUpperCase().indexOf("NAV")>-1&&(!u||u<520)&&(i.dialog.width=960)}}}},Oo={convertFrom:(t,e)=>{var n;return(n=t.editor.dataSource)==null?void 0:n.idField},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},jo={convertFrom:(t,e)=>{var n;return(n=t.editor)==null?void 0:n.textField},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.editor.textField=i==null?void 0:i.bindingPath}}},Ro={convertFrom:(t,e)=>t.editor.displayType?t.editor.displayType.toUpperCase():"LIST",convertTo:(t,e,n)=>{t.editor.displayType=n}},De={convertFrom:(t,e)=>{var l;let n=t.editor?t.editor.dialog:t.dialog;const i=t.editor?t.editor.openType:t.openType;if(n||(n={}),e==="title")return n[e]||Po;if(!i||i==="Modal"){if(e==="width")return(l=n.displayType)!=null&&l.toUpperCase().startsWith("NAV")?n[e]||960:n[e]||590;if(e==="height")return n[e]||620;if(e==="navigatorWidth")return n[e]||320}else{if(e==="width")return n[e]||460;if(e==="height")return n[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return n[e]==null?!0:n[e]},convertTo:(t,e,n)=>{const i=t.editor?t.editor:t;i.dialog=i.dialog||{},i.dialog[e]=n}},Ao={convertFrom:(t,e)=>{const n=t.editor?t.editor:t;if(n.pagination=n.pagination||{},e==="enable"||e==="showLimits")return n.pagination[e]==null?!1:n.pagination[e];if(e==="sizeLimits"){const i=n.pagination[e];return gt(i)}if(e==="size")return n.pagination[e]||20},convertTo:(t,e,n)=>{var o;const i=t.editor?t.editor.pagination||{}:t;if(i.pagination=i.pagination||{},e==="sizeLimits"){const l=n.map(d=>d.value);i.pagination[e]=l;const a=((o=i.pagination)==null?void 0:o.size)??20;l.includes(a)||(i.pagination.size=l[0]);return}i.pagination[e]=n}},rn=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Lo=Symbol("schema_repository_token");function Ho(t,e){const n=i=>i&&i.length?i.map(o=>`${o.name}[${o.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:e.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(i,o)=>`${i==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Lo},dataSourceConverter:on,defaultConverter:ve,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ft.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ft.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:ft.FieldSelectorRepositoryToken,displayFormatter:n},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const i=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),o=e.schemaService.getPrimaryField();return o?i.filter(l=>l.data.bindingPath!==o):i},formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,displayFormatter:n}}}}function $o(t){var l,a;const e={type:"combo-list",enableClear:!1,editable:!1},n={type:"number-spinner",useThousands:!1},i=()=>t.displayType?t.displayType.toUpperCase():"",o=()=>i().startsWith("NAV")?t.showNavigation===void 0?!0:!!t.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:ve,editor:{...e,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:t.openType!=="Popup",$converter:De},width:{description:"窗口宽度,单位:px,最小值:300px",title:"宽度",type:"number",editor:{...n,min:o()?520:300,needValid:!0},$converter:De},height:{description:"窗口高度,单位:px,最小值:200px",title:"高度",type:"number",editor:{...n,min:200,needValid:!0},$converter:De},showNavigation:{description:"显示导航栏",$converter:ve,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:i().includes("NAV")&&t.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:o()&&t.openType!=="Popup",editor:{...n,min:200,max:(((l=t==null?void 0:t.dialog)==null?void 0:l.width)??960)-200,needValid:!0},$converter:De},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:t.openType!=="Popup",$converter:De},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!t.enableUserData&&(((a=t==null?void 0:t.dialog)==null?void 0:a.resizeable)??!0)&&t.openType!=="Popup",$converter:De},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:t.openType!=="Popup",$converter:De},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:t.openType!=="Popup",$converter:De},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:t.openType!=="Popup",$converter:De}}}function Wo(t,e=!0){var l,a,d,m;const n=!((l=t.pagination)!=null&&l.enable),i=()=>t.displayType?t.displayType.toUpperCase():"",o=(p,c)=>{const s=i()!=="TREELIST"||p.treeToList;return c&&s?p.pagination&&p.pagination[c]:s};return{hide:!o(t)||n,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Ao,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:o(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:o(t,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:gt((a=t.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:p,data:c})=>!c||!c.length?(p==null||p.warning({message:"每页显示条数不能为空!"}),!1):new Set(c.map(f=>parseInt(f.value,10))).size===c.length?!0:(p==null||p.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:o(t),editor:{type:"combo-list",enableClear:!1,editable:!1,data:gt((d=t.pagination)==null?void 0:d.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(m=t.pagination)==null?void 0:m.size}}}}}class zo extends He.InputBaseProperty{constructor(){super(...arguments);ie(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});ie(this,"numberEditor",{type:"number-spinner",useThousands:!1});ie(this,"readonlyEditor",{...this.comboListEditor,editable:!0});ie(this,"visibleEditor",{...this.comboListEditor,editable:!1});ie(this,"requiredEditor",{...this.comboListEditor,editable:!1});ie(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(n,i){const o=["validate"];return n.type==="form-group"&&o.push("dataPicking"),new He.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(n,"Field",o)}getPropertyConfig(n,i,o="Card"){var b;const l=(b=n.binding)!=null&&b.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(n,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(n,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(n,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(n,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(n,i,o),d=this.getBehaviorConfig(n),m=this.getAppearanceProperties(n,i),p=this.getLookupConfig(n),c=this.getEventPropConfig(n),s=this.getDialogPropertyConfig(n),f=this.getPageConfig(n.editor),y=this.getTreePropConfig(n.editor),u=this.getSearchConfig(n),h=this.getExpressionConfig(n,"Field"),w={basic:a,appearance:m,behavior:d,lookup:p,treeConfig:y,dialog:s,pager:f,searchConfig:u,expressions:h};return n.type==="form-group"&&(w.eventsEditor=c),{type:"object",categories:w}}getGridFieldEdtiorPropConfig(n){return this.getPropertyConfig(n,null,"Grid").categories}flattenTreeNodes(n){return n.reduce((i,o)=>{var l;return i.push(o),(l=o.children)!=null&&l.length&&i.push(...this.flattenTreeNodes(o.children)),i},[])}isSimpleStringField(){var d;const n=((d=this.designViewModelField)==null?void 0:d.path)||"";if(!n||!n.includes("."))return!0;const i=n.split("."),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(o!=null&&o.length))return!1;const l=o.find(m=>m.data.code===i[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!i.reduce((m,p,c)=>[...m,c?`${m[c-1]}.${p}`:p],[]).some(m=>{var p,c,s;return((s=(c=(p=a.find(f=>f.data.path===m))==null?void 0:p.data)==null?void 0:c.type)==null?void 0:s.$type)==="EntityType"})}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(i,o)=>{this.afterMutilEditorChanged(o,i)}}}changeBindingField(n,i){super.changeBindingField(n,i),n.editor.multiSelect=!1}getDisplayType(n){return n.displayType?n.displayType.toUpperCase():""}mapFieldsDisplayFormatter(n){return n&&n.length?n.map(i=>`${i.name}[${i.bindingPath}]`).join(","):""}getSearchConfig(n){var i;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:ve,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:ve,title:"允许查询所有列",type:"boolean",visible:n.editor.openType!=="Popup"&&n.editor.enableSearchBar==null?!0:!!n.editor.enableSearchBar},enableEqualSearch:{$converter:ve,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:n.editor.openType!=="Popup"&&(((i=n.editor)==null?void 0:i.enableSearchBar)??!0)!==!1&&this.getDisplayType(n.editor)!=="TREELIST"}},hide:n.editor.openType==="Popup"}}getLookupConfig(n){var p;const i=n.editor,o=()=>{const c=this.formSchemaUtils.getFormSchema().module.entity[0].id,s=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:i,formBasicInfo:s,viewModelId:c,dataSourceId:i.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:d,mappingFieldsEditor:m}=Ho(i,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(c,s)=>{if(c)switch(c.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(s,c);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,visible:!!((p=n.binding)!=null&&p.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:ve},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:ve,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:ve,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(i.multiSelect&&i.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:ve,editor:this.freeInputEditor,visible:!!i.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:ve},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:c=>c&&c.length?c.map(s=>`${s.name}(${s.code})`).join(","):"",validateFunction:async c=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(c,n),onSubmitModal:c=>{if(c){delete i.mappingFields;const s=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(s.relativePath,c[0].data).then(f=>JSON.parse(f==null?void 0:f.metadata.content))}}},$converter:on},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:ve,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:i,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:ft.FieldSelectorRepositoryToken,beforeOpen:async({repository:c,notifyService:s})=>{var b;if(!(i==null?void 0:i.helpId))return s==null||s.warning({message:"请先配置数据源!"}),!1;const y=o(),h=new He.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let w={};if(c){const x=await c.getData(y),F=await c.getLookupConditions(y);w={fieldList:x,conditionList:F}}return(b=h.variables)!=null&&b.forms&&(h.variables.forms.items=h.variables.forms.items.filter(x=>x.category==="remote")),{...w,...h,isServerSide:!0}},onSubmitModal:async({loadingService:c,repository:s,conditions:f,originalConditions:y,FMessageBoxService:u})=>{if(s)try{const h=o(),w=await s.getLookupConditions(h)||[];return JSON.stringify(w)!==JSON.stringify(y.value)?(c==null||c.clearAll(),u.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{f.value=w,y.value=JSON.parse(JSON.stringify(f.value))},()=>{}),!1):(JSON.stringify(f.value)===JSON.stringify(y.value)||await s.saveFilterCondition(f.value,h,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return u==null||u.error("保存失败",""),!1}finally{c==null||c.clearAll()}}},visible:!!i.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ro,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:{...a},$converter:Oo},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:jo,editor:d},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ve,editor:{...m}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:ve,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:ve,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:ve,title:"显示已选记录",type:"boolean",visible:!!i.multiSelect&&i.openType!=="Popup"},separator:{description:"多选分隔符",$converter:ve,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:!!i.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:ve,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:ve,title:"启用收藏夹",type:"boolean",visible:i.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:ve,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:i.openType!=="Popup"}}}}showNavigatiorWidth(n){return this.getDisplayType(n).startsWith("NAV")&&n.openType!=="Popup"?n.showNavigation===void 0?!0:!!n.showNavigation:!1}getDialogPropertyConfig(n){const i=$o(n.editor);return i.openType.$converter=ve,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:De,properties:i}}showPagerProperty(n,i){const o=this.getDisplayType(n)!=="TREELIST"||n.treeToList;return i&&o?n.pagination&&n.pagination[i]:o}getPageConfig(n){return Wo(n)}showLoadType(n){const i=this.getDisplayType(n);return(i==="TREELIST"||i==="NAVTREELIST")&&!n.treeToList&&!n.navTreeToList}isTree(n){return this.getDisplayType(n)==="TREELIST"&&!n.treeToList}getTreePropConfig(n){return{hide:this.getDisplayType(n)!=="TREELIST"&&this.getDisplayType(n)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:ve,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(n)},enableFullTree:{description:"启用构造完整树",$converter:ve,title:"构造完整树",type:"boolean",visible:this.showLoadType(n)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:ve,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(n)},enableCascade:{description:"启用级联选择",$converter:ve,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(n)&&!!n.multiSelect&&n.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:ve,title:"显示级联状态",type:"boolean",visible:!!n.enableCascade&&this.isTree(n)},cascadeValue:{description:"缺省级联选择模式",$converter:ve,title:"缺省级联选择模式",type:"string",visible:!!n.enableCascade&&this.isTree(n),editor:{...this.comboListEditor,data:Io,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:ve,title:"默认展开层级",type:"number",visible:this.showLoadType(n),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(n){const i=this;let o=rn;n.editor.openType==="Popup"&&(o=o.filter(d=>d.label!=="beforeSelectData"));const l=i.eventsEditorUtils.formProperties(n,i.viewModelId,o);return{title:"事件",hideTitle:!0,properties:i.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(d,m){const p=d.propertyValue;delete m[i.viewModelId],p&&i.eventsEditorUtils.saveRelatedParameters(m,i.viewModelId,p.events,p);const c=i.designViewModelUtils.getDgViewModel(i.viewModelId);c&&i.designViewModelField&&c.changeField(i.designViewModelField.id,{valueChanging:m.fieldValueChanging,valueChanged:m.fieldValueChanged})}}}async checkSameBESource(n,i){var o,l,a,d,m;if(n&&((o=i==null?void 0:i.editor)!=null&&o.helpId)&&!i.isRtcControl){if(n.data.id===i.editor.helpId)return!0;const p=await this.metadataService.getPickMetadata("",n.data).then(h=>{var w;if((w=h==null?void 0:h.metadata)!=null&&w.content)return JSON.parse(h.metadata.content)}),c=await this.metadataService.getPickMetadata("",{id:i.editor.helpId}).then(h=>{var w;if((w=h==null?void 0:h.metadata)!=null&&w.content)return JSON.parse(h.metadata.content)}),s=(l=p==null?void 0:p.dataSource)==null?void 0:l.sourceType,f=(a=c.dataSource)==null?void 0:a.sourceType,y=(d=p==null?void 0:p.dataSource)==null?void 0:d.sourceId,u=(m=c==null?void 0:c.dataSource)==null?void 0:m.sourceId;if(s==="BE"&&f==="BE"&&y!==u)return new wt.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class qo extends ht{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Go extends He.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var l,a,d,m,p,c,s,f;let n,i=!1;if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const y=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=y==null?void 0:y.schemaField)!=null&&a.type&&(n=y.schemaField.type.precision,i=y.schemaField.type.name==="BigNumber")}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:n===0,min:0,max:n,needValid:!0},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,needValid:!0,precision:(d=e==null?void 0:e.editor)==null?void 0:d.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(m=e==null?void 0:e.editor)==null?void 0:m.max,precision:(p=e==null?void 0:e.editor)==null?void 0:p.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((c=e==null?void 0:e.editor)==null?void 0:c.min)===void 0||(s=e==null?void 0:e.editor)==null?void 0:s.min,precision:(f=e==null?void 0:e.editor)==null?void 0:f.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},bigNumber:{description:"",title:"支持大数字",type:"boolean",readonly:!0,visible:i},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(y,u,h){if(y)switch(y.propertyID){case"precision":{u.formatter&&(u.formatter.precision=y.propertyValue);break}}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.name)===X.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=o.type.precision)}}class Uo extends ht{constructor(e,n){super(e,n)}getEditorProperties(e){const n=this;return n.getComponentConfig(e,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,n,i){if(!e||!n.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name");break}case"data":{!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.$type)===X.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}}class Do extends He.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,i;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((n=this.designViewModelField)==null?void 0:n.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;if(e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)){let a,d;o.type.name===X.FormSchemaEntityFieldTypeName.String&&(a="true",d="false"),o.type.name===X.FormSchemaEntityFieldTypeName.Number&&(a=1,d=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&d!==void 0&&(e.editor.falseValue=d)}}}class Yo extends ht{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(n,i)=>{n.propertyID==="use12Hours"&&(i.editor.format=i.editor.format||"hh:mm:ss",i.editor.format=n.propertyValue?i.editor.format.replace("HH","hh"):i.editor.format.replace("hh","HH"))})}}class Xo extends He.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"language-textbox"},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:e.editor.maxLength,needValid:!0}}})}}class Zo extends Jt{constructor(n,i){super(n,i);ie(this,"dataGridProps",null);ie(this,"notifyService",new wt.FNotifyService)}getPropertyConfig(n,i){var d,m,p;this.dataGridProps=i,this.getBasicPropConfig(n),this.getAppearanceProperties(n,i);const l={formatterEnumData:{description:"",title:"枚举数据",type:"array",visible:!!(((d=n.formatter)==null?void 0:d.type)==="enum"&&((m=n.editor)==null?void 0:m.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(n,"value","name"),refreshPanelAfterChanged:!0}},a=(c,s)=>{if(c)switch(c.propertyID){case"formatterEnumData":{n.formatter&&(n.formatter.data=[...c.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"gridFieldEditor",l,a),this.getFieldEditorProperties(n,i),this.propertyConfig.categories.templateFormat=this.getColumnTemplate(n),((p=n.formatter)==null?void 0:p.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(n)),this.getEventPropConfig(n),this.propertyConfig}getColumnTemplate(n){const i=n.columnTemplateType&&n.columnTemplateType==="custom"||!n.columnTemplateType&&n.columnTemplate&&!n.onClickLinkCommand,o=this;return{title:"列模板",description:"用于配置自定义列模板以及内置的格式化模板,如超链接、图片",properties:{columnTemplateType:{description:"列模板类型",title:"列模板类型",$converter:"/converter/change-formatter-type.converter",type:"enum",editor:{data:[{id:"default",name:"无"},{id:"hyperlink",name:"超链接"},{id:"custom",name:"自定义"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",visible:!!i,editor:{type:"code-editor",language:"html"}}},setPropertyRelates(l,a,d){var m;if(l){switch(l&&l.propertyID){case"columnTemplateType":{l.propertyValue==="custom"&&a.columnTemplate&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}case"columnTemplate":{l.propertyValue&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}}(m=o.getFormDesignerInstance())==null||m.reloadPropertyPanel()}}}}getItemCollectionEditor(n,i,o){const l=i||"value",a=o||"name";return{editor:{columns:[{field:l,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:l,nameField:a,requiredFields:[l,a],uniqueFields:[l,a],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===X.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(n){var m,p,c;const i=n.columnTemplateType==="hyperlink"||!n.columnTemplateType&&n.columnTemplate&&n.onClickLinkCommand;let o=[];((m=n.editor)==null?void 0:m.type)==="combo-list"&&o.push({label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}),i&&o.push({label:"onClickLinkCommand",name:"超链接事件"}),((p=n==null?void 0:n.editor)==null?void 0:p.type)==="lookup"&&(o=[...o,...rn],n.editor.openType==="Popup"&&(o=o.filter(s=>s.label!=="beforeSelectData"))),((c=n==null?void 0:n.editor)==null?void 0:c.type)==="date-picker"&&(o=[{label:"onDatePicked",name:"日期选择后事件"}]);const l=this,a=l.eventsEditorUtils.formProperties(n,l.viewModelId,o),d=l.createBaseEventProperty(a);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:d,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,f){var u,h,w,b;const y=s.propertyValue;delete n[l.viewModelId],y&&(y.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(n,l.viewModelId,y.events,y)),n.remoteSort=!!n.columnSorted,n.onClickLinkCommand&&!n.onClickLinkCommand.includes("communication:")&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
|
|
19
19
|
@click="(ctx)=>viewModel.current.${n.onClickLinkCommand}({id: rowData.id,context: ctx})">
|
|
20
20
|
{{rowData.${n.field}}}
|
|
21
21
|
</span>`,(u=l.getFormDesignerInstance())==null||u.reloadPropertyPanel()),!n.onClickLinkCommand&&n.columnTemplate&&n.columnTemplateType==="hyperlink"&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer">
|
|
22
22
|
{{rowData.${n.field}}}
|
|
23
|
-
</span>`,(h=l.getFormDesignerInstance())==null||h.reloadPropertyPanel()),((b=n.editor)==null?void 0:b.beforeOpen)!==n.beforeOpen&&(n.editor.beforeOpen=n.beforeOpen),((C=n.editor)==null?void 0:C.onChange)!==n.onChange&&(n.editor.onChange=n.onChange)}}}getBasicPropConfig(n){const i=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:n,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(o,l,a){if(o)switch(o&&o.propertyID){case"binding":{i.afterChangeBindingType(n,a),o.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(n,i){var o,l,a,d;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},filterable:{visible:n.dataType!=="enum",description:"启用过滤",title:"启用过滤",type:"boolean"},sortable:{description:"启用排序",title:"启用排序",type:"boolean",visible:i.type!=="tree-grid"},draggable:{description:"允许列拖拽",title:"启用拖拽",type:"boolean"},width:{description:"列宽",title:"列宽",type:"number"},showTips:{description:"启用鼠标悬浮提示",title:"鼠标悬浮提示",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((l=(o=this.dataGridProps)==null?void 0:o.summary)!=null&&l.enable)&&n.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0},enableGroup:{description:"启用分组",title:"分组",visible:!!((d=(a=this.dataGridProps)==null?void 0:a.group)!=null&&d.enable),type:"boolean",refreshPanelAfterChanged:!0}},setPropertyRelates(c,p,f){if(c)switch(c&&c.propertyID){case"width":{p.actualWidth=c.propertyValue;break}case"summaryType":{const{groupFields:s}=i.summary;!s.includes(p.field)&&c.propertyValue==="sum"&&s.push(p.field),s.includes(p.field)&&c.propertyValue==="none"&&s.splice(s.indexOf(p.field),1);break}case"columnTemplate":{c.propertyValue;break}case"enableGroup":c.propertyValue?i.group.groupFields=[p.field]:i.group.groupFields=[]}}}}getFieldEditorProperties(n,i){i.fieldEditable&&n.editor&&this.getFieldEditorProp(n)}setFormatterEnumData(n){var i,o;(i=n.formatter)!=null&&i.data&&!n.formatterEnumData&&(n.formatterEnumData=(o=n.formatter)==null?void 0:o.data)}getTemplateProperties(n){var l,a,d,c,p,f,s,m,g;const i=Object.prototype.hasOwnProperty;return{title:"格式化",description:"",properties:{type:{description:"",title:"类型",type:"enum",$converter:"/converter/change-formatter.converter",refreshPanelAfterChanged:!0,editor:{data:{enum:[{id:"enum",name:"枚举"},{id:"none",name:"无"}],boolean:[{id:"boolean",name:"布尔"},{id:"none",name:"无"}],number:[{id:"number",name:"数字"},{id:"none",name:"无"}],date:[{id:"date",name:"日期"},{id:"none",name:"无"}],datetime:[{id:"date",name:"日期"},{id:"none",name:"无"}],string:[{id:"enum",name:"枚举"},{id:"date",name:"日期"},{id:"none",name:"无"}]}[n.dataType]}},trueText:{title:"布尔为true时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((l=n.formatter)==null?void 0:l.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((a=n.formatter)==null?void 0:a.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((d=n.formatter)==null?void 0:d.type)==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((c=n.formatter)==null?void 0:c.type)==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:((p=n.formatter)==null?void 0:p.type)==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:((f=n.formatter)==null?void 0:f.type)==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:((s=n.formatter)==null?void 0:s.type)==="number",refreshPanelAfterChanged:!0,description:"千分位"},dateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:((m=n.formatter)==null?void 0:m.type)==="date"||((g=n.formatter)==null?void 0:g.type)==="datetime",refreshPanelAfterChanged:!0,description:"日期格式",type:"enum",editor:{data:[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"dd/MM/yyyy",name:"dd/MM/yyyy"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"},{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy年MM月",name:"yyyy年MM月"},{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"},{id:"MM月dd日",name:"MM月dd日"},{id:"yyyy",name:"yyyy"},{id:"yyyy年",name:"yyyy年"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"},{id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}]}}},setPropertyRelates(u,h,b){var C;if(u)switch(u&&u.propertyID){case"type":{u.propertyValue!=="none"&&h.columnTemplate,u.propertyValue==="boolean"&&(i.call(h.formatter,"trueText")||(h.formatter.trueText="是"),i.call(h.formatter,"falseText")||(h.formatter.falseText="否")),u.propertyValue==="number"&&(i.call(h.formatter,"prefix")||(h.formatter.prefix=""),i.call(h.formatter,"suffix")||(h.formatter.suffix=""),i.call(h.formatter,"precision")||(h.formatter.precision=0),i.call(h.formatter,"decimal")||(h.formatter.decimal="."),i.call(h.formatter,"thousand")||(h.formatter.thousand=",")),u.propertyValue==="date"&&(i.call(h.formatter,"dateFormat")||(h.formatter.dateFormat="yyyy-MM-dd")),u.propertyValue==="enum"&&(i.call(h.formatter,"data")||(h.formatter.data=[],(C=h.formatterEnumData)!=null&&C.length&&(h.formatterEnumData=[])));break}}}}}getFieldEditorProp(n,i="gridFieldEditor",o=!1){const l=this.formMetadataConverter.getRealEditorType(n.editor.type);let a;switch(l){case"avatar":a=new yo(this.componentId,this.designerHostService);break;case"check-group":a=new vo(this.componentId,this.designerHostService);break;case"check-box":a=new bo(this.componentId,this.designerHostService);break;case"combo-list":a=new Co(this.componentId,this.designerHostService);break;case"date-picker":a=new Eo(this.componentId,this.designerHostService);break;case"lookup":a=new zo(this.componentId,this.designerHostService);break;case"number-range":a=new qo(this.componentId,this.designerHostService);break;case"number-spinner":a=new Go(this.componentId,this.designerHostService);break;case"radio-group":a=new Uo(this.componentId,this.designerHostService);break;case"switch":a=new Do(this.componentId,this.designerHostService);break;case"textarea":a=new wo(this.componentId,this.designerHostService);break;case"time-picker":a=new Yo(this.componentId,this.designerHostService);break;case"language-textbox":a=new Xo(this.componentId,this.designerHostService);break;default:a=new po(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);const d=this,{canChangeControlType:c,editorTypeList:p}=this.getAvailableEditorType(n);this.propertyConfig.categories[`${i}_editorType`]={description:"",title:"编辑器类型",propertyData:n.editor,tabId:"gridFieldEditor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",data:p,readonly:!c}}},setPropertyRelates(m,g){if(m)switch(m&&m.propertyID){case"type":{d.changeFieldEditorType(n,m.propertyValue);break}}}};const f=["id","type","class","style","binding","label","responseLayout","visible","fill"],s=a.getGridFieldEdtiorPropConfig(n);Object.keys(s).map(m=>{const g=s[m],u={};if(Object.keys(g.properties).map(h=>{f.findIndex(b=>b===h)===-1&&g.properties[h]!==!1&&(u[h]=g.properties[h])}),Object.keys(u).length!==0){const h=g==null?void 0:g.title,b="gridFieldEditor",C="编辑器",F=g==null?void 0:g.description,M=(g==null?void 0:g.$converter)||"";d.propertyConfig.categories[i+"_"+m]={title:h,hide:Object.prototype.hasOwnProperty.call(g,"hide")?g.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(g,"hideTitle")?g.hideTitle:!1,tabId:g.tabId||b,tabName:g.tabName||C,description:F,$converter:M,parentPropertyID:"editor",propertyData:n,properties:u,setPropertyRelates:g==null?void 0:g.setPropertyRelates}}})}changeFieldEditorType(n,i){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);o.changeField(this.designViewModelField.id,{editor:{$type:i},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const l=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(l,s=>s.type===z.DgControl["data-grid"].type||s.type===z.DgControl["tree-grid"].type);if(!a)return;const d=o.fields.find(s=>s.id===this.designViewModelField.id),c=this.controlCreatorUtils.setGridFieldProperty(i,d,null,!0),p=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,f=p.findIndex(s=>s.id===n.id);if(f>-1&&p[f].editor){const s={};["readonly","required","placeholder"].map(m=>{Object.prototype.hasOwnProperty.call(p[f].editor,m)&&(s[m]=p[f].editor[m])}),p[f].editor=Object.assign(c.editor,s)}Object.assign(p[f],{dataType:c.dataType},c.formatter?{formatter:c.formatter}:{}),!c.formatter&&p[f].formatter&&delete p[f].formatter}checkCanChangeControlType(n,i){return!(!n.binding||!this.designViewModelField||this.designViewModelField.$type!==Z.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(n){var l;const i=this.checkCanChangeControlType(n,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=z.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===Z.FormSchemaEntityField$Type.SimpleField&&(o=ct.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,n.type)),{canChangeControlType:i,editorTypeList:o}}afterChangeBindingType(n,i){!n||!i||(n.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(i),this.controlCreatorUtils.setGridFieldFormatter(n.dataType,n,i))}}function Jo(t,e,n){const i=t.schema,o=r.ref(!0),l=r.ref(!0);function a(m){return!1}function d(){return!1}function c(){return!1}function p(){return!0}function f(m){var h,b;const g=new Zo(m,e),u=(h=t==null?void 0:t.parent)==null?void 0:h.schema;return u!=null&&u.groupFields&&u!=null&&u.groupFields.includes(i.field)&&(i.enableSummary=!0),g.getPropertyConfig(i,(b=t==null?void 0:t.parent)==null?void 0:b.schema)}function s(){var b,C;if(!e||!t)return;const{formSchemaUtils:m}=e;let g=st["data-grid"].name;const u=m.getControlBasicInfoMap(),h=u.get((C=(b=t.parent)==null?void 0:b.schema)==null?void 0:C.id);h&&h.parentPathName&&(g=h.parentPathName),u.set(i.id,{showName:i.title,parentPathName:`${g} > ${i.title}`,reliedComponentId:h.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:d,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:p,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:f,setComponentBasicInfoMap:s}}function Qo(t={}){function e(p,f,s,m){if(typeof s=="number")return m[p].length===s;if(typeof s=="object"){const g=Object.keys(s)[0],u=s[g];if(g==="not")return Number(m[p].length)!==Number(u);if(g==="moreThan")return Number(m[p].length)>=Number(u);if(g==="lessThan")return Number(m[p].length)<=Number(u)}return!1}function n(p,f,s,m){return m[p]&&m[p].propertyValue&&String(m[p].propertyValue.value)===String(s)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((p,f)=>(p.set(f,t[f]),p),i);function o(p,f){const s=p;return typeof f=="number"?[{target:s,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:s,operator:"getProperty",param:p,value:!!f}]:typeof f=="object"?Object.keys(f).map(m=>{if(m==="length")return{target:s,operator:"length",param:null,value:f[m]};const g=m,u=f[m];return{target:s,operator:"getProperty",param:g,value:u}}):[]}function l(p){return Object.keys(p).reduce((s,m)=>{const g=o(m,p[m]);return s.push(...g),s},[])}function a(p,f){if(i.has(p.operator)){const s=i.get(p.operator);return s&&s(p.target,p.param,p.value,f)||!1}return!1}function d(p,f){return l(p).reduce((g,u)=>g&&a(u,f),!0)}function c(p,f){const s=Object.keys(p),m=s.includes("allOf"),g=s.includes("anyOf"),u=m||g,C=(u?p[u?m?"allOf":"anyOf":"allOf"]:[p]).map(M=>d(M,f));return m?!C.includes(!1):C.includes(!0)}return{parseValueSchema:c}}const Ko={convertTo:(t,e,n,i)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},er={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},tr={convertTo:(t,e,n,i)=>{t.editor&&(t.editor[e]=n)},convertFrom:(t,e,n)=>t.editor&&Object.prototype.hasOwnProperty.call(t.editor,e)?t.editor[e]:t[e]},nr={convertFrom:(t,e,n)=>{var o;const i=t.editor&&t.editor[e]?t.editor[e]:t[e];return((o=st[i])==null?void 0:o.name)||i}},ir={convertTo:(t,e,n,i)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},or={convertTo:(t,e,n,i)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t.formatter?t.formatter[e]=n:t.formatter={[e]:n})},convertFrom:(t,e,n)=>{if(t.formatter){if(e==="trueText")return t.formatter.trueText;if(e==="falseText")return t.formatter.falseText;if(e==="prefix")return t.formatter.prefix;if(e==="suffix")return t.formatter.suffix;if(e==="precision")return t.formatter.precision;if(e==="decimal")return t.formatter.decimal;if(e==="thousand")return t.formatter.thousand;if(e==="dateFormat")return t.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return t.formatter.customFormat;if(e==="type")return t.formatter.type||"none"}return"none"}},rr={convertTo:(t,e,n,i)=>{t.command?t.command[e]=n:t.command={[e]:n},e==="enableType"&&n==="default"&&(t.command.enable=!0,t.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]),e==="enableType"&&n==="custom"&&(t.command.enable=!0,t.command.commands=[{value:"add",text:{en:"add","zh-CHS":"增加","zh-CHT":"增加"},type:"link"},{value:"edit",text:{en:"edit","zh-CHS":"编辑","zh-CHT":"編輯"},type:"danger"},{value:"remove",text:{en:"remove","zh-CHS":"删除","zh-CHT":"刪除"},type:"remove"}]),e==="enableType"&&n==="unable"&&(t.command.enable=!1)},convertFrom:(t,e,n)=>{var i,o;if(t.command){if(e==="enableType"){const l=(o=(i=t.command)==null?void 0:i.commands)==null?void 0:o.find(a=>a.command==="edit"&&a.type==="primary");return t.command.enable?l?"default":"custom":"unable"}if(e==="commands")return t.command.enableType==="custom"?t.command.commands:[];if(e==="formatter")return t.command.formatter;if(e==="count")return t.command.count}return""}},lr={convertTo:(t,e,n,i)=>{t.column?t.column[e]=n:t.column={[e]:n},e==="fitColumns"&&n&&(t.column.fitMode||(t.column.fitMode="average"))},convertFrom:(t,e,n)=>{if(t.column){if(e==="fitColumns")return t.column.fitColumns;if(e==="fitMode")return t.column.fitMode}return""}},ar={convertTo:(t,e,n,i)=>{t.summary?t.summary[e]=n:t.summary={[e]:n},e==="enable"&&n&&(t.summary?t.summary.groupFields||(t.summary.groupFields=[]):t.summary={enable:n,groupFields:[]})},convertFrom:(t,e,n)=>t.summary&&e==="enable"?t.summary.enable:t.type==="data-grid-column"?t.enableSummary===void 0?!1:t.enableSummary:""},sr={convertTo:(t,e,n,i)=>{t.group?t.group[e]=n:t.group={[e]:n},e==="enable"&&n&&(t.group?t.group.groupFields||(t.group.groupFields=[]):t.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(t,e,n)=>{if(t.group){if(e==="enable")return t.group.enable;if(e==="showSummary")return t.group.showSummary}}},dr={convertFrom:(t,e)=>t.binding?t.binding.path:"",convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.binding||(t.binding={}),t.binding.type="Form",t.binding.path=i.bindingField,t.binding.field=i.id,t.binding.fullPath=i.path,t.path=i.bindingPath}}},cr={convertTo:(t,e,n,i)=>{t.pagination||(t.pagination={}),t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?t.pagination[e]:t[e]},ur={convertTo:(t,e,n,i)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},fr={convertTo:(t,e,n,i)=>{t.selection||(t.selection={}),t.selection[e]=n},convertFrom:(t,e,n)=>{var i,o;return e==="showCheckbox"?(i=t.selection)!=null&&i.multiSelect?!0:(o=t.selection)==null?void 0:o.showCheckbox:t.selection?t.selection[e]:t[e]}},mr={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},pr={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},hr={convertTo:(t,e,n,i)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},gr={convertFrom:(t,e,n)=>{var i,o;return(i=t.formatter)!=null&&i.data&&e==="formatterEnumData"&&!t.formatterEnumData?(o=t.formatter)==null?void 0:o.data:t.formatterEnumData}},yr={convertTo:(t,e,n,i)=>{t.sort||(t.sort={}),t.sort[e]=n},convertFrom:(t,e,n)=>{var i,o;if(e==="mode")return((i=t.sort)==null?void 0:i.mode)||"client";if(e==="multiSort")return!!((o=t.sort)!=null&&o.multiSort)}},vr={convertTo:(t,e,n,i)=>{t.filter||(t.filter={}),t.filter[e]=n},convertFrom:(t,e,n)=>{var i;if(e==="mode")return((i=t.filter)==null?void 0:i.mode)||"client"}},br={convertTo:(t,e,n,i)=>{t.rowOption?t.rowOption[e]=n:t.rowOption={[e]:n}},convertFrom:(t,e,n)=>{if(t.rowOption){if(e==="customRowStyle")return t.rowOption.customRowStyle;if(e==="customCellStyle")return t.rowOption.customCellStyle}return""}},Cr={convertTo:(t,e,n,i)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t[e]=n,e==="columnTemplateType"&&n==="hyperlink"&&(t.onClickLinkCommand?t.columnTemplate=`
|
|
23
|
+
</span>`,(h=l.getFormDesignerInstance())==null||h.reloadPropertyPanel()),((w=n.editor)==null?void 0:w.beforeOpen)!==n.beforeOpen&&(n.editor.beforeOpen=n.beforeOpen),((b=n.editor)==null?void 0:b.onChange)!==n.onChange&&(n.editor.onChange=n.onChange)}}}getBasicPropConfig(n){const i=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:n,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(o,l,a){if(o)switch(o&&o.propertyID){case"binding":{i.afterChangeBindingType(n,a),o.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(n,i){var o,l,a,d;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},filterable:{visible:n.dataType!=="enum",description:"启用过滤",title:"启用过滤",type:"boolean"},sortable:{description:"启用排序",title:"启用排序",type:"boolean",visible:i.type!=="tree-grid"},draggable:{description:"允许列拖拽",title:"启用拖拽",type:"boolean"},width:{description:"列宽",title:"列宽",type:"number"},showTips:{description:"启用鼠标悬浮提示",title:"鼠标悬浮提示",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((l=(o=this.dataGridProps)==null?void 0:o.summary)!=null&&l.enable)&&n.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0},enableGroup:{description:"启用分组",title:"分组",visible:!!((d=(a=this.dataGridProps)==null?void 0:a.group)!=null&&d.enable),type:"boolean",refreshPanelAfterChanged:!0}},setPropertyRelates(m,p,c){if(m)switch(m&&m.propertyID){case"width":{p.actualWidth=m.propertyValue;break}case"summaryType":{const{groupFields:s}=i.summary;!s.includes(p.field)&&m.propertyValue==="sum"&&s.push(p.field),s.includes(p.field)&&m.propertyValue==="none"&&s.splice(s.indexOf(p.field),1);break}case"columnTemplate":{m.propertyValue;break}case"enableGroup":m.propertyValue?i.group.groupFields=[p.field]:i.group.groupFields=[]}}}}getFieldEditorProperties(n,i){i.fieldEditable&&n.editor&&this.getFieldEditorProp(n)}setFormatterEnumData(n){var i,o;(i=n.formatter)!=null&&i.data&&!n.formatterEnumData&&(n.formatterEnumData=(o=n.formatter)==null?void 0:o.data)}getTemplateProperties(n){var l,a,d,m,p,c,s,f,y;const i=Object.prototype.hasOwnProperty;return{title:"格式化",description:"",properties:{type:{description:"",title:"类型",type:"enum",$converter:"/converter/change-formatter.converter",refreshPanelAfterChanged:!0,editor:{data:{enum:[{id:"enum",name:"枚举"},{id:"none",name:"无"}],boolean:[{id:"boolean",name:"布尔"},{id:"none",name:"无"}],number:[{id:"number",name:"数字"},{id:"none",name:"无"}],date:[{id:"date",name:"日期"},{id:"none",name:"无"}],datetime:[{id:"date",name:"日期"},{id:"none",name:"无"}],string:[{id:"enum",name:"枚举"},{id:"date",name:"日期"},{id:"none",name:"无"}]}[n.dataType]}},trueText:{title:"布尔为true时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((l=n.formatter)==null?void 0:l.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((a=n.formatter)==null?void 0:a.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((d=n.formatter)==null?void 0:d.type)==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((m=n.formatter)==null?void 0:m.type)==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:((p=n.formatter)==null?void 0:p.type)==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:((c=n.formatter)==null?void 0:c.type)==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:((s=n.formatter)==null?void 0:s.type)==="number",refreshPanelAfterChanged:!0,description:"千分位"},dateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:((f=n.formatter)==null?void 0:f.type)==="date"||((y=n.formatter)==null?void 0:y.type)==="datetime",refreshPanelAfterChanged:!0,description:"日期格式",type:"enum",editor:{data:[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"dd/MM/yyyy",name:"dd/MM/yyyy"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"},{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy年MM月",name:"yyyy年MM月"},{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"},{id:"MM月dd日",name:"MM月dd日"},{id:"yyyy",name:"yyyy"},{id:"yyyy年",name:"yyyy年"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"},{id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}]}}},setPropertyRelates(u,h,w){var b;if(u)switch(u&&u.propertyID){case"type":{u.propertyValue!=="none"&&h.columnTemplate,u.propertyValue==="boolean"&&(i.call(h.formatter,"trueText")||(h.formatter.trueText="是"),i.call(h.formatter,"falseText")||(h.formatter.falseText="否")),u.propertyValue==="number"&&(i.call(h.formatter,"prefix")||(h.formatter.prefix=""),i.call(h.formatter,"suffix")||(h.formatter.suffix=""),i.call(h.formatter,"precision")||(h.formatter.precision=0),i.call(h.formatter,"decimal")||(h.formatter.decimal="."),i.call(h.formatter,"thousand")||(h.formatter.thousand=",")),u.propertyValue==="date"&&(i.call(h.formatter,"dateFormat")||(h.formatter.dateFormat="yyyy-MM-dd")),u.propertyValue==="enum"&&(i.call(h.formatter,"data")||(h.formatter.data=[],(b=h.formatterEnumData)!=null&&b.length&&(h.formatterEnumData=[])));break}}}}}getFieldEditorProp(n,i="gridFieldEditor",o=!1){const l=this.formMetadataConverter.getRealEditorType(n.editor.type);let a;switch(l){case"avatar":a=new yo(this.componentId,this.designerHostService);break;case"check-group":a=new vo(this.componentId,this.designerHostService);break;case"check-box":a=new bo(this.componentId,this.designerHostService);break;case"combo-list":a=new Co(this.componentId,this.designerHostService);break;case"date-picker":a=new Eo(this.componentId,this.designerHostService);break;case"lookup":a=new zo(this.componentId,this.designerHostService);break;case"number-range":a=new qo(this.componentId,this.designerHostService);break;case"number-spinner":a=new Go(this.componentId,this.designerHostService);break;case"radio-group":a=new Uo(this.componentId,this.designerHostService);break;case"switch":a=new Do(this.componentId,this.designerHostService);break;case"textarea":a=new wo(this.componentId,this.designerHostService);break;case"time-picker":a=new Yo(this.componentId,this.designerHostService);break;case"language-textbox":a=new Xo(this.componentId,this.designerHostService);break;default:a=new ho(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);const d=this,{canChangeControlType:m,editorTypeList:p}=this.getAvailableEditorType(n);this.propertyConfig.categories[`${i}_editorType`]={description:"",title:"编辑器类型",propertyData:n.editor,tabId:"gridFieldEditor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",data:p,readonly:!m}}},setPropertyRelates(f,y){if(f)switch(f&&f.propertyID){case"type":{d.changeFieldEditorType(n,f.propertyValue);break}}}};const c=["id","type","class","style","binding","label","responseLayout","visible","fill"],s=a.getGridFieldEdtiorPropConfig(n);Object.keys(s).map(f=>{const y=s[f],u={};if(Object.keys(y.properties).map(h=>{c.findIndex(w=>w===h)===-1&&y.properties[h]!==!1&&(u[h]=y.properties[h])}),Object.keys(u).length!==0){const h=y==null?void 0:y.title,w="gridFieldEditor",b="编辑器",x=y==null?void 0:y.description,F=(y==null?void 0:y.$converter)||"";d.propertyConfig.categories[i+"_"+f]={title:h,hide:Object.prototype.hasOwnProperty.call(y,"hide")?y.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(y,"hideTitle")?y.hideTitle:!1,tabId:y.tabId||w,tabName:y.tabName||b,description:x,$converter:F,parentPropertyID:"editor",propertyData:n,properties:u,setPropertyRelates:y==null?void 0:y.setPropertyRelates}}})}changeFieldEditorType(n,i){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);o.changeField(this.designViewModelField.id,{editor:{$type:i},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const l=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(l,s=>s.type===$.DgControl["data-grid"].type||s.type===$.DgControl["tree-grid"].type);if(!a)return;const d=o.fields.find(s=>s.id===this.designViewModelField.id),m=this.controlCreatorUtils.setGridFieldProperty(i,d,null,!0),p=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,c=p.findIndex(s=>s.id===n.id);if(c>-1&&p[c].editor){const s={};["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(p[c].editor,f)&&(s[f]=p[c].editor[f])}),p[c].editor=Object.assign(m.editor,s)}Object.assign(p[c],{dataType:m.dataType},m.formatter?{formatter:m.formatter}:{}),!m.formatter&&p[c].formatter&&delete p[c].formatter}checkCanChangeControlType(n,i){return!(!n.binding||!this.designViewModelField||this.designViewModelField.$type!==X.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(n){var l;const i=this.checkCanChangeControlType(n,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=$.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===X.FormSchemaEntityField$Type.SimpleField&&(o=at.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,n.type)),{canChangeControlType:i,editorTypeList:o}}afterChangeBindingType(n,i){!n||!i||(n.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(i),this.controlCreatorUtils.setGridFieldFormatter(n.dataType,n,i))}}function Jo(t,e,n){const i=t.schema,o=r.ref(!0),l=r.ref(!0);function a(f){return!1}function d(){return!1}function m(){return!1}function p(){return!0}function c(f){var h,w;const y=new Zo(f,e),u=(h=t==null?void 0:t.parent)==null?void 0:h.schema;return u!=null&&u.groupFields&&u!=null&&u.groupFields.includes(i.field)&&(i.enableSummary=!0),y.getPropertyConfig(i,(w=t==null?void 0:t.parent)==null?void 0:w.schema)}function s(){var w,b;if(!e||!t)return;const{formSchemaUtils:f}=e;let y=rt["data-grid"].name;const u=f.getControlBasicInfoMap(),h=u.get((b=(w=t.parent)==null?void 0:w.schema)==null?void 0:b.id);h&&h.parentPathName&&(y=h.parentPathName),u.set(i.id,{showName:i.title,parentPathName:`${y} > ${i.title}`,reliedComponentId:h.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:d,checkCanMoveComponent:m,hideNestedPaddingInDesginerView:p,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:c,setComponentBasicInfoMap:s}}function Qo(t={}){function e(p,c,s,f){if(typeof s=="number")return f[p].length===s;if(typeof s=="object"){const y=Object.keys(s)[0],u=s[y];if(y==="not")return Number(f[p].length)!==Number(u);if(y==="moreThan")return Number(f[p].length)>=Number(u);if(y==="lessThan")return Number(f[p].length)<=Number(u)}return!1}function n(p,c,s,f){return f[p]&&f[p].propertyValue&&String(f[p].propertyValue.value)===String(s)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((p,c)=>(p.set(c,t[c]),p),i);function o(p,c){const s=p;return typeof c=="number"?[{target:s,operator:"length",param:null,value:Number(c)}]:typeof c=="boolean"?[{target:s,operator:"getProperty",param:p,value:!!c}]:typeof c=="object"?Object.keys(c).map(f=>{if(f==="length")return{target:s,operator:"length",param:null,value:c[f]};const y=f,u=c[f];return{target:s,operator:"getProperty",param:y,value:u}}):[]}function l(p){return Object.keys(p).reduce((s,f)=>{const y=o(f,p[f]);return s.push(...y),s},[])}function a(p,c){if(i.has(p.operator)){const s=i.get(p.operator);return s&&s(p.target,p.param,p.value,c)||!1}return!1}function d(p,c){return l(p).reduce((y,u)=>y&&a(u,c),!0)}function m(p,c){const s=Object.keys(p),f=s.includes("allOf"),y=s.includes("anyOf"),u=f||y,b=(u?p[u?f?"allOf":"anyOf":"allOf"]:[p]).map(F=>d(F,c));return f?!b.includes(!1):b.includes(!0)}return{parseValueSchema:m}}const Ko={convertTo:(t,e,n,i)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},er={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},tr={convertTo:(t,e,n,i)=>{t.editor&&(t.editor[e]=n)},convertFrom:(t,e,n)=>t.editor&&Object.prototype.hasOwnProperty.call(t.editor,e)?t.editor[e]:t[e]},nr={convertFrom:(t,e,n)=>{var o;const i=t.editor&&t.editor[e]?t.editor[e]:t[e];return((o=rt[i])==null?void 0:o.name)||i}},ir={convertTo:(t,e,n,i)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},or={convertTo:(t,e,n,i)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t.formatter?t.formatter[e]=n:t.formatter={[e]:n})},convertFrom:(t,e,n)=>{if(t.formatter){if(e==="trueText")return t.formatter.trueText;if(e==="falseText")return t.formatter.falseText;if(e==="prefix")return t.formatter.prefix;if(e==="suffix")return t.formatter.suffix;if(e==="precision")return t.formatter.precision;if(e==="decimal")return t.formatter.decimal;if(e==="thousand")return t.formatter.thousand;if(e==="dateFormat")return t.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return t.formatter.customFormat;if(e==="type")return t.formatter.type||"none";if(e==="customFormat")return t.formmater.customFormat}return"none"}},rr={convertTo:(t,e,n,i)=>{t.command?t.command[e]=n:t.command={[e]:n},e==="enableType"&&n==="default"&&(t.command.enable=!0,t.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]),e==="enableType"&&n==="custom"&&(t.command.enable=!0,t.command.commands=[{value:"add",text:"增加",type:"link"},{value:"edit",text:"编辑",type:"danger"},{value:"remove",text:"删除",type:"remove"}]),e==="enableType"&&n==="unable"&&(t.command.enable=!1)},convertFrom:(t,e,n)=>{var i,o;if(t.command){if(e==="enableType"){const l=(o=(i=t.command)==null?void 0:i.commands)==null?void 0:o.find(a=>a.command==="edit"&&a.type==="primary");return t.command.enable?l?"default":"custom":"unable"}if(e==="commands")return t.command.enableType==="custom"?t.command.commands:[];if(e==="formatter")return t.command.formatter;if(e==="count")return t.command.count;if(e==="columnWidth")return t.command.columnWidth||150}return""}},lr={convertTo:(t,e,n,i)=>{t.column?t.column[e]=n:t.column={[e]:n},e==="fitColumns"&&n&&(t.column.fitMode||(t.column.fitMode="average"))},convertFrom:(t,e,n)=>{if(t.column){if(e==="fitColumns")return t.column.fitColumns;if(e==="fitMode")return t.column.fitMode}return""}},ar={convertTo:(t,e,n,i)=>{t.summary?t.summary[e]=n:t.summary={[e]:n},e==="enable"&&n&&(t.summary?t.summary.groupFields||(t.summary.groupFields=[]):t.summary={enable:n,groupFields:[]})},convertFrom:(t,e,n)=>{var i;return e==="customSummaryStyle"?t.summary.customSummaryStyle:e==="position"?((i=t.summary)==null?void 0:i[e])||"bottom":t.summary&&e==="enable"?t.summary.enable:t.type==="data-grid-column"?t.enableSummary===void 0?!1:t.enableSummary:""}},sr={convertTo:(t,e,n,i)=>{t.group?t.group[e]=n:t.group={[e]:n},e==="enable"&&n&&(t.group?t.group.groupFields||(t.group.groupFields=[]):t.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(t,e,n)=>{if(t.group){if(e==="enable")return t.group.enable;if(e==="showSummary")return t.group.showSummary}}},dr={convertFrom:(t,e)=>t.binding?t.binding.path:"",convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.binding||(t.binding={}),t.binding.type="Form",t.binding.path=i.bindingField,t.binding.field=i.id,t.binding.fullPath=i.path,t.path=i.bindingPath}}},cr={convertTo:(t,e,n,i)=>{t.pagination||(t.pagination={}),e==="sizeLimits"?t.pagination.sizeLimits=n.split(","):t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?e==="sizeLimits"?t.pagination.sizeLimits.join(","):t.pagination[e]:t[e]},ur={convertTo:(t,e,n,i)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},fr={convertTo:(t,e,n,i)=>{t.selection||(t.selection={}),t.selection[e]=n},convertFrom:(t,e,n)=>{var i,o;return e==="showCheckbox"?(i=t.selection)!=null&&i.multiSelect?!0:(o=t.selection)==null?void 0:o.showCheckbox:t.selection?t.selection[e]:t[e]}},mr={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},pr={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},hr={convertTo:(t,e,n,i)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},gr={convertFrom:(t,e,n)=>{var i,o;return(i=t.formatter)!=null&&i.data&&e==="formatterEnumData"&&!t.formatterEnumData?(o=t.formatter)==null?void 0:o.data:t.formatterEnumData}},yr={convertTo:(t,e,n,i)=>{t.sort||(t.sort={}),t.sort[e]=n},convertFrom:(t,e,n)=>{var i,o;if(e==="mode")return((i=t.sort)==null?void 0:i.mode)||"client";if(e==="multiSort")return!!((o=t.sort)!=null&&o.multiSort)}},vr={convertTo:(t,e,n,i)=>{t.filter||(t.filter={}),t.filter[e]=n},convertFrom:(t,e,n)=>{var i;if(e==="mode")return((i=t.filter)==null?void 0:i.mode)||"client"}},br={convertTo:(t,e,n,i)=>{t.rowOption?t.rowOption[e]=n:t.rowOption={[e]:n}},convertFrom:(t,e,n)=>{if(t.rowOption){if(e==="customRowStyle")return t.rowOption.customRowStyle;if(e==="customCellStyle")return t.rowOption.customCellStyle;if(e==="height")return t.rowOption.height}return""}},Cr={convertTo:(t,e,n,i)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t[e]=n,e==="columnTemplateType"&&n==="hyperlink"&&(t.onClickLinkCommand?t.columnTemplate=`
|
|
24
24
|
<span class="f-pretend-link f-cursor-pointer"
|
|
25
25
|
@click="(ctx)=>viewModel.current.${t.onClickLinkCommand||""}({id: rowData.id,context: ctx})">
|
|
26
26
|
{{rowData.${t.field}}}
|
|
27
27
|
</span>`:t.columnTemplate=`
|
|
28
28
|
<span class="f-pretend-link f-cursor-pointer">
|
|
29
29
|
{{rowData.${t.field}}}
|
|
30
|
-
</span>`),e==="columnTemplateType"&&n==="default"&&(t.columnTemplate=""),e==="columnTemplateType"&&n==="custom"&&(t.columnTemplate=""))},convertFrom:(t,e,n)=>e==="columnTemplate"?t.columnTemplate:e==="columnTemplateType"?t.columnTemplateType?t.columnTemplateType||"default":t.columnTemplate&&!t.onClickLinkCommand?"custom":t.columnTemplate&&t.onClickLinkCommand?"hyperlink":"default":""};function wr(t,e,n){const i=new Map([["/converter/appearance.converter",Ko],["/converter/buttons.converter",er],["/converter/property-editor.converter",tr],["/converter/items-count.converter",mr],["/converter/type.converter",nr],["/converter/change-editor.converter",ir],["/converter/change-formatter.converter",or],["/converter/column-command.converter",rr],["/converter/column-option.converter",lr],["/converter/summary.converter",ar],["/converter/group.converter",sr],["/converter/form-group-label.converter",pr],["/converter/field-selector.converter",dr],["/converter/pagination.converter",cr],["/converter/row-number.converter",ur],["/converter/grid-selection.converter",fr],["/converter/size.converter",hr],["/converter/change-formatter-enum.converter",gr],["/converter/grid-sort.converter",yr],["/converter/grid-filter.converter",vr],["/converter/row-option.converter",br],["/converter/change-formatter-type.converter",Cr]]),o=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),l=Qo();function a(u,h){return()=>l.parseValueSchema(u,h)}function d(u,h,b){return u.includes("visible")&&h.visible!==void 0?typeof h.visible=="boolean"?()=>!!h.visible:h.visible===void 0?!0:a(h.visible,b):()=>!0}function c(u,h,b){return u.includes("readonly")&&h.readonly!==void 0?typeof h.readonly=="boolean"?()=>!!h.readonly:a(h.readonly,b):()=>!1}function p(u,h){const b=u.$converter||h;return typeof b=="string"&&b&&i.has(b)?i.get(b)||null:b||null}function f(u,h,b,C,F,M="",T=""){return Object.keys(u).map(w=>{const y=r.ref(1),x=w,S=u[w],I=Object.keys(S),B=S.title,N=S.type,O=o.get(N)||{type:"input-group",enableClear:!1},_=S.editor?Object.assign({},O,S.editor):Object.assign({},O),k=d(I,S,h),V=c(I,S,h);_.readonly=_.readonly===void 0?V():_.readonly;const W=S.type==="cascade"?f(S.properties,h,b,C,F,M,T):[],P=!0;let H=p(S,T);const X=r.computed({get(){if(y.value){if(["class","style"].find(R=>R===x)&&!H&&(H=i.get("/converter/appearance.converter")||null),H&&H.convertFrom)return H.convertFrom(b,w,F,M);const L=b[w];return Object.prototype.hasOwnProperty.call(S,"defaultValue")&&(L===void 0||typeof L=="string"&&L==="")?S.type==="boolean"?S.defaultValue:S.defaultValue||"":L}return null},set(L){y.value+=1,H&&H.convertTo?(H.convertTo(C,w,L,F,M),H.convertTo(b,w,L,F,M)):(C[w]=L,b[w]=L)}}),{refreshPanelAfterChanged:J,description:oe,isExpand:Me,parentPropertyID:Ce}=S,ve={propertyID:x,propertyName:B,propertyType:N,propertyValue:X,editor:_,visible:k,readonly:V,cascadeConfig:W,hideCascadeTitle:P,refreshPanelAfterChanged:J,description:oe,isExpand:Me,parentPropertyID:Ce};return h[x]=ve,ve})}function s(u,h,b={}){const C={},F=t[u];return F&&F.categories?Object.keys(F.categories).map(T=>{const v=F.categories[T],w=v==null?void 0:v.title,y=f(v.properties||{},C,{},b,h);return{categoryId:T,categoryName:w,properties:y}}):[]}function m(u,h,b,C,F=""){const M=h.$ref.schema,T=h.$ref.converter,v=b[M],w=v.type,y=n(v),x={},S=t[w];if(S&&S.categories){const I=S.categories[u],B=I==null?void 0:I.title;T&&Object.keys(I.properties).forEach(_=>{I.properties[_].$converter=T});const N=(I==null?void 0:I.properties)||{},O=f(N,x,y,v,C,F);return{categoryId:u,categoryName:B,properties:O}}return{categoryId:u,categoryName:"",properties:[]}}function g(u,h,b,C,F){const M=u.type,T=n(u),v={};let w=F||t[M];if(!(w&&Object.keys(w).length>0)&&b&&b.getPropConfig&&(w=b.getPropConfig(C)),w&&w.categories){const x=[];return Object.keys(w.categories).map(S=>{const I=w.categories[S];if(I.$ref){x.push(m(S,I,u,h,C));return}const B=I==null?void 0:I.title,N=I==null?void 0:I.tabId,O=I==null?void 0:I.tabName,_=I==null?void 0:I.hide,k=I==null?void 0:I.hideTitle,V=f(I.properties||{},v,T,u,h,C,I.$converter),{setPropertyRelates:W}=I,P=I==null?void 0:I.parentPropertyID;x.push({categoryId:S,categoryName:B,tabId:N,tabName:O,hide:_,properties:V,hideTitle:k,setPropertyRelates:W,parentPropertyID:P})}),x}return[]}return{getPropertyConfigBySchema:g,getPropertyConfigByType:s,propertyConverterMap:i}}function Sr(t,e){let n;function i(s){const{properties:m,title:g,ignore:u}=s,h=u&&Array.isArray(u),b=Object.keys(m).reduce((C,F)=>((!h||!u.find(M=>M===F))&&(C[F]=m[F].type==="object"&&m[F].properties?i(m[F]):je.cloneDeep(m[F].default)),C),{});if(g&&(!h||!u.find(C=>C==="id"))){const C=g.toLowerCase().replace(/-/g,"_");b.id=`${C}_${Math.random().toString().slice(2,6)}`}return b}function o(s){const{properties:m,title:g,required:u}=s;if(u&&Array.isArray(u)){const h=u.reduce((b,C)=>(b[C]=m[C].type==="object"&&m[C].properties?i(m[C]):je.cloneDeep(m[C].default),b),{});if(g&&u.find(b=>b==="id")){const b=g.toLowerCase().replace(/-/g,"_");h.id=`${b}_${Math.random().toString().slice(2,6)}`}return h}return{type:g}}function l(s,m={},g){const u=t[s];if(u){let h=o(u);const b=e[s];return h=b?b({getSchemaByType:l},h,m,g):h,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(h),h}return null}function a(s,m){const g=i(m);return Object.keys(g).reduce((u,h)=>(Object.prototype.hasOwnProperty.call(s,h)&&(u[h]&&je.isPlainObject(u[h])&&je.isPlainObject(s[h]||!s[h])?Object.assign(u[h],s[h]||{}):u[h]=s[h]),u),g),g}function d(s,m){return Object.keys(s).filter(u=>s[u]!=null).reduce((u,h)=>{if(m.has(h)){const b=m.get(h);if(typeof b=="string")u[b]=s[h];else{const C=b(h,s[h],s);Object.assign(u,C)}}else u[h]=s[h];return u},{})}function c(s,m,g=new Map){const u=a(s,m);return d(u,g)}function p(s){var g;const m=s.type;if(m){const u=t[m];if(!u)return s;const h=a(s,u),b=((g=s.editor)==null?void 0:g.type)||"";if(b){const C=t[b],F=a(s.editor,C);h.editor=F}return h}return s}function f(s){n=s}return{getSchemaByType:l,resolveSchemaWithDefaultValue:p,resolveSchemaToProps:c,mappingSchemaToProps:d,setDesignerContext:f}}const xr={},Mr={},{resolveSchemaWithDefaultValue:Fr}=Sr(xr,Mr);wr({},{},Fr);const{globalStorageKey:Ml}=Z.useThirdComponent();var rn=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(rn||{});function Tr(t,e,n){function i(){const a=n.componentId;if(!a)return!1;const d=t.formSchemaUtils.getViewModelIdByComponentId(a);if(!d)return!1;const{schema:c}=e,{designViewModelUtils:p}=t,f=p.getDgViewModel(d),s=f==null?void 0:f.fields.find(m=>m.id===c.binding.field);return!(!s||s.$type!==rn.SimpleField)}function o(){const{schema:a}=e;return!!t.formSchemaUtils.getVariableById(a.binding.field)}function l(){var c;const{schema:a}=e;let d=!0;if(!t||!((c=a.binding)!=null&&c.field))return d;switch(a.binding.type){case rt.Form:{d=i();break}case rt.Variable:d=o()}return d}return{checkBindingFieldValidation:l}}const ln=r.defineComponent({name:"FDataGridColumnDesign",props:St,emits:[],setup(t,e){const n=r.ref(),i=r.inject("designer-host-service"),o=r.inject("design-item-context");r.inject("data-grid-context");const l=Jo(o,i),a=z.useDesignerComponent(n,o,l);r.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value);function d(s){var m;(m=o==null?void 0:o.setupContext)==null||m.emit("selectionChange",a.value.schema,o.schema,t.componentId,a.value)}const{checkBindingFieldValidation:c}=Tr(i,o,t),f=!r.inject("external-container-id");return()=>{var u;const s=f?c():!0,m="绑定信息已失效,请手动移除列",g=s?"":"color:red";return r.createVNode(r.Fragment,null,[s?"":r.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:m},null),r.createVNode("span",{class:"fv-column-title",style:g,ref:n,onClick:h=>d()},[((u=t.editor)==null?void 0:u.required)===!0&&r.createVNode("span",{class:"text-danger"},[r.createTextVNode("*")]),t.title])])}}}),an={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",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:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enableType:{type:"string",default:"unable"},enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""},onHandleAction:{description:"",type:"string",default:""},count:{description:"",type:"number",default:2}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"object",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!1},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"object"},customSummaryStyle:{description:"",type:"object"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},rowOption:{type:"object",properties:{customRowStyle:{description:"",type:"string",default:""},customCellStyle:{description:"",type:"string",default:""},disable:{description:"",type:"object"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showSelectAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},multiSelectMode:{description:"多选模式",type:"string",default:"DependOnCheck"},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"enum",default:"client"},multiSort:{description:"",type:"boolean",default:!0}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},emptyTemplate:{description:"",type:"string",default:""},beforeUpdate:{description:"",type:"string",default:""},beforeEditCell:{description:"",type:"string",default:""}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onDoubleClickRow:"行双击事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件",onFilterChanged:"过滤事件",onSortChanged:"排序事件",onSelectItem:"选中行事件",onUnSelectItem:"取消选中行事件",onSelectAll:"全选事件",onUnSelectAll:"取消全选事件",onEndEditCell:"单元格结束编辑事件"}};function _r(){function t(e,n){const i={};return i.beforeEditCell=o=>n.call("beforeEditCell",e,[o,e]),i.beforeUpdate=o=>n.call("beforeUpdate",e,[o,e]),i}return{resolve:t}}const sn=ze.getPropsResolverGenerator(Qe.dataGridProps,an,ft,mt),dn=ze.createPropsResolver(Qe.dataGridProps,an,ft,mt),cn=ze.createCollectionBindingResolver(),un=ze.createDataGridSelectionItemResolver(),fn=ze.createDataViewUpdateColumnsResolver(),mn=_r();Ke.install=t=>{t.component(Ke.name,Ke)},Ke.register=(t,e,n,i,o)=>{t["data-grid"]=Qe,e["data-grid"]=sn(o),t["grid-field-editor"]=oo,e["grid-field-editor"]=$i(o),i["data-grid"]={bindingResolver:cn,selectionItemResolver:un,updateColumnsResolver:fn,callbackResolver:mn}},Ke.registerDesigner=(t,e,n)=>{t["data-grid"]=Ke,e["data-grid"]=dn,e["data-grid-column"]=ao,t["data-grid-column"]=ln,e["tree-grid-column"]=so,t["tree-grid-column"]=ln};const kr=Z.withInstall(Ke);ae.FDataGridDesign=Ke,ae.bindingResolver=cn,ae.callbackResolver=mn,ae.default=kr,ae.getColumnHeader=At,ae.propsResolver=dn,ae.propsResolverGenerator=sn,ae.selectionItemResolver=un,ae.updateColumnsResolver=fn,Object.defineProperties(ae,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
30
|
+
</span>`),e==="columnTemplateType"&&n==="default"&&(t.columnTemplate=""),e==="columnTemplateType"&&n==="custom"&&(t.columnTemplate=""))},convertFrom:(t,e,n)=>e==="columnTemplate"?t.columnTemplate:e==="columnTemplateType"?t.columnTemplateType?t.columnTemplateType||"default":t.columnTemplate&&!t.onClickLinkCommand?"custom":t.columnTemplate&&t.onClickLinkCommand?"hyperlink":"default":""};function wr(t,e,n){const i=new Map([["/converter/appearance.converter",Ko],["/converter/buttons.converter",er],["/converter/property-editor.converter",tr],["/converter/items-count.converter",mr],["/converter/type.converter",nr],["/converter/change-editor.converter",ir],["/converter/change-formatter.converter",or],["/converter/column-command.converter",rr],["/converter/column-option.converter",lr],["/converter/summary.converter",ar],["/converter/group.converter",sr],["/converter/form-group-label.converter",pr],["/converter/field-selector.converter",dr],["/converter/pagination.converter",cr],["/converter/row-number.converter",ur],["/converter/grid-selection.converter",fr],["/converter/size.converter",hr],["/converter/change-formatter-enum.converter",gr],["/converter/grid-sort.converter",yr],["/converter/grid-filter.converter",vr],["/converter/row-option.converter",br],["/converter/change-formatter-type.converter",Cr]]),o=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),l=Qo();function a(u,h){return()=>l.parseValueSchema(u,h)}function d(u,h,w){return u.includes("visible")&&h.visible!==void 0?typeof h.visible=="boolean"?()=>!!h.visible:h.visible===void 0?!0:a(h.visible,w):()=>!0}function m(u,h,w){return u.includes("readonly")&&h.readonly!==void 0?typeof h.readonly=="boolean"?()=>!!h.readonly:a(h.readonly,w):()=>!1}function p(u,h){const w=u.$converter||h;return typeof w=="string"&&w&&i.has(w)?i.get(w)||null:w||null}function c(u,h,w,b,x,F="",T=""){return Object.keys(u).map(C=>{const g=r.ref(1),S=C,M=u[C],E=Object.keys(M),N=M.title,I=M.type,B=o.get(I)||{type:"input-group",enableClear:!1},V=M.editor?Object.assign({},B,M.editor):Object.assign({},B),_=d(E,M,h),k=m(E,M,h);V.readonly=V.readonly===void 0?k():V.readonly;const W=M.type==="cascade"?c(M.properties,h,w,b,x,F,T):[],P=!0;let A=p(M,T);const Y=r.computed({get(){if(g.value){if(["class","style"].find(O=>O===S)&&!A&&(A=i.get("/converter/appearance.converter")||null),A&&A.convertFrom)return A.convertFrom(w,C,x,F);const R=w[C];return Object.prototype.hasOwnProperty.call(M,"defaultValue")&&(R===void 0||typeof R=="string"&&R==="")?M.type==="boolean"?M.defaultValue:M.defaultValue||"":R}return null},set(R){g.value+=1,A&&A.convertTo?(A.convertTo(b,C,R,x,F),A.convertTo(w,C,R,x,F)):(b[C]=R,w[C]=R)}}),{refreshPanelAfterChanged:J,description:oe,isExpand:_e,parentPropertyID:Ce}=M,xe={propertyID:S,propertyName:N,propertyType:I,propertyValue:Y,editor:V,visible:_,readonly:k,cascadeConfig:W,hideCascadeTitle:P,refreshPanelAfterChanged:J,description:oe,isExpand:_e,parentPropertyID:Ce};return h[S]=xe,xe})}function s(u,h,w={}){const b={},x=t[u];return x&&x.categories?Object.keys(x.categories).map(T=>{const v=x.categories[T],C=v==null?void 0:v.title,g=c(v.properties||{},b,{},w,h);return{categoryId:T,categoryName:C,properties:g}}):[]}function f(u,h,w,b,x=""){const F=h.$ref.schema,T=h.$ref.converter,v=w[F],C=v.type,g=n(v),S={},M=t[C];if(M&&M.categories){const E=M.categories[u],N=E==null?void 0:E.title;T&&Object.keys(E.properties).forEach(V=>{E.properties[V].$converter=T});const I=(E==null?void 0:E.properties)||{},B=c(I,S,g,v,b,x);return{categoryId:u,categoryName:N,properties:B}}return{categoryId:u,categoryName:"",properties:[]}}function y(u,h,w,b,x){const F=u.type,T=n(u),v={};let C=x||t[F];if(!(C&&Object.keys(C).length>0)&&w&&w.getPropConfig&&(C=w.getPropConfig(b)),C&&C.categories){const S=[];return Object.keys(C.categories).map(M=>{const E=C.categories[M];if(E.$ref){S.push(f(M,E,u,h,b));return}const N=E==null?void 0:E.title,I=E==null?void 0:E.tabId,B=E==null?void 0:E.tabName,V=E==null?void 0:E.hide,_=E==null?void 0:E.hideTitle,k=c(E.properties||{},v,T,u,h,b,E.$converter),{setPropertyRelates:W}=E,P=E==null?void 0:E.parentPropertyID;S.push({categoryId:M,categoryName:N,tabId:I,tabName:B,hide:V,properties:k,hideTitle:_,setPropertyRelates:W,parentPropertyID:P})}),S}return[]}return{getPropertyConfigBySchema:y,getPropertyConfigByType:s,propertyConverterMap:i}}function Sr(t,e){let n;function i(s){const{properties:f,title:y,ignore:u}=s,h=u&&Array.isArray(u),w=Object.keys(f).reduce((b,x)=>((!h||!u.find(F=>F===x))&&(b[x]=f[x].type==="object"&&f[x].properties?i(f[x]):je.cloneDeep(f[x].default)),b),{});if(y&&(!h||!u.find(b=>b==="id"))){const b=y.toLowerCase().replace(/-/g,"_");w.id=`${b}_${Math.random().toString().slice(2,6)}`}return w}function o(s){const{properties:f,title:y,required:u}=s;if(u&&Array.isArray(u)){const h=u.reduce((w,b)=>(w[b]=f[b].type==="object"&&f[b].properties?i(f[b]):je.cloneDeep(f[b].default),w),{});if(y&&u.find(w=>w==="id")){const w=y.toLowerCase().replace(/-/g,"_");h.id=`${w}_${Math.random().toString().slice(2,6)}`}return h}return{type:y}}function l(s,f={},y){const u=t[s];if(u){let h=o(u);const w=e[s];return h=w?w({getSchemaByType:l},h,f,y):h,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(h),h}return null}function a(s,f){const y=i(f);return Object.keys(y).reduce((u,h)=>(Object.prototype.hasOwnProperty.call(s,h)&&(u[h]&&je.isPlainObject(u[h])&&je.isPlainObject(s[h]||!s[h])?Object.assign(u[h],s[h]||{}):u[h]=s[h]),u),y),y}function d(s,f){return Object.keys(s).filter(u=>s[u]!=null).reduce((u,h)=>{if(f.has(h)){const w=f.get(h);if(typeof w=="string")u[w]=s[h];else{const b=w(h,s[h],s);Object.assign(u,b)}}else u[h]=s[h];return u},{})}function m(s,f,y=new Map){const u=a(s,f);return d(u,y)}function p(s){var y;const f=s.type;if(f){const u=t[f];if(!u)return s;const h=a(s,u),w=((y=s.editor)==null?void 0:y.type)||"";if(w){const b=t[w],x=a(s.editor,b);h.editor=x}return h}return s}function c(s){n=s}return{getSchemaByType:l,resolveSchemaWithDefaultValue:p,resolveSchemaToProps:m,mappingSchemaToProps:d,setDesignerContext:c}}const xr={},Mr={},{resolveSchemaWithDefaultValue:Fr}=Sr(xr,Mr);wr({},{},Fr);const{globalStorageKey:Ml}=X.useThirdComponent();var ln=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(ln||{});function Tr(t,e,n){function i(){const a=n.componentId;if(!a)return!1;const d=t.formSchemaUtils.getViewModelIdByComponentId(a);if(!d)return!1;const{schema:m}=e,{designViewModelUtils:p}=t,c=p.getDgViewModel(d),s=c==null?void 0:c.fields.find(f=>f.id===m.binding.field);return!(!s||s.$type!==ln.SimpleField)}function o(){const{schema:a}=e;return!!t.formSchemaUtils.getVariableById(a.binding.field)}function l(){var m;const{schema:a}=e;let d=!0;if(!t||!((m=a.binding)!=null&&m.field))return d;switch(a.binding.type){case it.Form:{d=i();break}case it.Variable:d=o()}return d}return{checkBindingFieldValidation:l}}const an=r.defineComponent({name:"FDataGridColumnDesign",props:xt,emits:[],setup(t,e){const n=r.ref(),i=r.inject("designer-host-service"),o=r.inject("design-item-context");r.inject("data-grid-context");const l=Jo(o,i),a=$.useDesignerComponent(n,o,l);r.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value);function d(s){var f;(f=o==null?void 0:o.setupContext)==null||f.emit("selectionChange",a.value.schema,o.schema,t.componentId,a.value)}const{checkBindingFieldValidation:m}=Tr(i,o,t),c=!r.inject("external-container-id");return()=>{var u;const s=c?m():!0,f="绑定信息已失效,请手动移除列",y=s?"":"color:red";return r.createVNode(r.Fragment,null,[s?"":r.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:f},null),r.createVNode("span",{class:"fv-column-title",style:y,ref:n,onClick:h=>d()},[((u=t.editor)==null?void 0:u.required)===!0&&r.createVNode("span",{class:"text-danger"},[r.createTextVNode("*")]),t.title])])}}}),sn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",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:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enableType:{type:"string",default:"unable"},enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""},onHandleAction:{description:"",type:"string",default:""},count:{description:"",type:"number",default:2}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"object",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!1},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"object"},customSummaryStyle:{description:"",type:"object"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},rowOption:{type:"object",properties:{customRowStyle:{description:"",type:"string",default:""},customCellStyle:{description:"",type:"string",default:""},disable:{description:"",type:"object"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showSelectAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},multiSelectMode:{description:"多选模式",type:"string",default:"DependOnCheck"},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"enum",default:"client"},multiSort:{description:"",type:"boolean",default:!0}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},emptyTemplate:{description:"",type:"string",default:""},beforeUpdate:{description:"",type:"string",default:""},beforeEditCell:{description:"",type:"string",default:""}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onDoubleClickRow:"行双击事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件",onFilterChanged:"过滤事件",onSortChanged:"排序事件",onSelectItem:"选中行事件",onUnSelectItem:"取消选中行事件",onSelectAll:"全选事件",onUnSelectAll:"取消全选事件",onEndEditCell:"单元格结束编辑事件"}};function _r(){function t(e,n){const i={};return i.beforeEditCell=o=>n.call("beforeEditCell",e,[o,e]),i.beforeUpdate=o=>n.call("beforeUpdate",e,[o,e]),i}return{resolve:t}}const dn=We.getPropsResolverGenerator(Je.dataGridProps,sn,mt,pt),cn=We.createPropsResolver(Je.dataGridProps,sn,mt,pt),un=We.createCollectionBindingResolver(),fn=We.createDataGridSelectionItemResolver(),mn=We.createDataViewUpdateColumnsResolver(),pn=_r();Qe.install=t=>{t.component(Qe.name,Qe)},Qe.register=(t,e,n,i,o)=>{t["data-grid"]=Je,e["data-grid"]=dn(o),t["grid-field-editor"]=ro,e["grid-field-editor"]=Wi(o),i["data-grid"]={bindingResolver:un,selectionItemResolver:fn,updateColumnsResolver:mn,callbackResolver:pn}},Qe.registerDesigner=(t,e,n)=>{t["data-grid"]=Qe,e["data-grid"]=cn,e["data-grid-column"]=so,t["data-grid-column"]=an,e["tree-grid-column"]=co,t["tree-grid-column"]=an};const kr=X.withInstall(Qe);le.FDataGridDesign=Qe,le.bindingResolver=un,le.callbackResolver=pn,le.default=kr,le.getColumnHeader=At,le.propsResolver=cn,le.propsResolverGenerator=dn,le.selectionItemResolver=fn,le.updateColumnsResolver=mn,Object.defineProperties(le,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|