@farris/ui-vue 1.6.5-beta.3 → 1.6.5-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/accordion/package.json +1 -1
- package/components/avatar/index.esm.js +2873 -2509
- package/components/avatar/index.umd.cjs +1 -1
- package/components/avatar/package.json +1 -1
- package/components/binding-selector/package.json +1 -1
- package/components/border-editor/package.json +1 -1
- package/components/button/package.json +1 -1
- package/components/button-edit/index.esm.js +2245 -1881
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/button-edit/package.json +1 -1
- package/components/button-group/package.json +1 -1
- package/components/calculator/package.json +1 -1
- package/components/calendar/package.json +1 -1
- package/components/capsule/package.json +1 -1
- package/components/checkbox/package.json +1 -1
- package/components/checkbox-group/package.json +1 -1
- package/components/code-editor/package.json +1 -1
- package/components/collection-property-editor/package.json +1 -1
- package/components/color-picker/package.json +1 -1
- package/components/combo-list/package.json +1 -1
- package/components/combo-tree/package.json +1 -1
- package/components/common/package.json +1 -1
- package/components/component/index.esm.js +1998 -1886
- package/components/component/index.umd.cjs +1 -1
- package/components/component/package.json +1 -1
- package/components/condition/index.esm.js +3049 -2829
- package/components/condition/index.umd.cjs +1 -1
- package/components/condition/package.json +1 -1
- package/components/content-container/index.esm.js +1938 -1717
- package/components/content-container/index.umd.cjs +1 -1
- package/components/content-container/package.json +1 -1
- package/components/data-grid/package.json +1 -1
- package/components/data-view/package.json +1 -1
- package/components/date-picker/package.json +1 -1
- package/components/designer-canvas/index.esm.js +2212 -2100
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/designer-canvas/package.json +1 -1
- package/components/designer-outline/package.json +1 -1
- package/components/designer-toolbox/package.json +1 -1
- package/components/discussion-editor/package.json +1 -1
- package/components/discussion-list/package.json +1 -1
- package/components/drawer/package.json +1 -1
- package/components/dropdown/package.json +1 -1
- package/components/dynamic-form/index.esm.js +2368 -2148
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-form/package.json +1 -1
- package/components/dynamic-resolver/package.json +1 -1
- package/components/dynamic-view/package.json +1 -1
- package/components/enum-editor/package.json +1 -1
- package/components/event-parameter/package.json +1 -1
- package/components/events-editor/index.esm.js +3467 -3104
- package/components/events-editor/index.umd.cjs +3 -3
- package/components/events-editor/package.json +1 -1
- package/components/expression-editor/index.esm.js +2930 -2710
- package/components/expression-editor/index.umd.cjs +4 -4
- package/components/expression-editor/package.json +1 -1
- package/components/external-container/package.json +1 -1
- package/components/field-selector/package.json +1 -1
- package/components/fieldset/package.json +1 -1
- package/components/filter-bar/index.esm.js +2871 -2507
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/filter-bar/package.json +1 -1
- package/components/filter-condition-editor/index.esm.js +3323 -3102
- package/components/filter-condition-editor/index.umd.cjs +4 -4
- package/components/filter-condition-editor/package.json +1 -1
- package/components/flow-canvas/index.esm.js +2448 -2192
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/flow-canvas/package.json +1 -1
- package/components/html-template/package.json +1 -1
- package/components/image-cropper/package.json +1 -1
- package/components/input-group/package.json +1 -1
- package/components/json-editor/package.json +1 -1
- package/components/language-textbox/package.json +1 -1
- package/components/layout/package.json +1 -1
- package/components/list-nav/package.json +1 -1
- package/components/list-view/package.json +1 -1
- package/components/loading/package.json +1 -1
- package/components/locale/package.json +1 -1
- package/components/lookup/package.json +1 -1
- package/components/mapping-editor/index.esm.js +2578 -2214
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/mapping-editor/package.json +1 -1
- package/components/menu-lookup/package.json +1 -1
- package/components/message-box/index.esm.js +1930 -1566
- package/components/message-box/index.umd.cjs +1 -1
- package/components/message-box/package.json +1 -1
- package/components/modal/index.esm.js +1891 -1527
- package/components/modal/index.umd.cjs +1 -1
- package/components/modal/package.json +1 -1
- package/components/nav/package.json +1 -1
- package/components/notify/package.json +1 -1
- package/components/number-range/index.esm.js +1958 -1738
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-range/package.json +1 -1
- package/components/number-spinner/index.esm.js +2281 -2061
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/number-spinner/package.json +1 -1
- package/components/order/package.json +1 -1
- package/components/page-footer/package.json +1 -1
- package/components/page-header/package.json +1 -1
- package/components/pagination/package.json +1 -1
- package/components/popover/package.json +1 -1
- package/components/progress/package.json +1 -1
- package/components/property-editor/package.json +1 -1
- package/components/property-panel/index.esm.js +3146 -2782
- package/components/property-panel/index.umd.cjs +4 -4
- package/components/property-panel/package.json +1 -1
- package/components/query-solution/index.esm.js +5179 -4816
- package/components/query-solution/index.umd.cjs +6 -6
- package/components/query-solution/package.json +1 -1
- package/components/radio/package.json +1 -1
- package/components/radio-button/package.json +1 -1
- package/components/radio-group/package.json +1 -1
- package/components/rate/package.json +1 -1
- package/components/response-layout/index.esm.js +2134 -1914
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout/package.json +1 -1
- package/components/response-layout-editor/index.esm.js +2511 -2290
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-layout-editor/package.json +1 -1
- package/components/response-toolbar/package.json +1 -1
- package/components/schema-selector/index.esm.js +3662 -3442
- package/components/schema-selector/index.umd.cjs +7 -7
- package/components/schema-selector/package.json +1 -1
- package/components/search-box/package.json +1 -1
- package/components/section/index.esm.js +2301 -2080
- package/components/section/index.umd.cjs +1 -1
- package/components/section/package.json +1 -1
- package/components/smoke-detector/package.json +1 -1
- package/components/sort-condition-editor/index.esm.js +3374 -3153
- package/components/sort-condition-editor/index.umd.cjs +4 -4
- package/components/sort-condition-editor/package.json +1 -1
- package/components/spacing-editor/package.json +1 -1
- package/components/splitter/package.json +1 -1
- package/components/step/index.esm.js +26 -26
- package/components/step/index.umd.cjs +1 -1
- package/components/step/package.json +1 -1
- package/components/switch/package.json +1 -1
- package/components/tabs/index.esm.js +2797 -2577
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tabs/package.json +1 -1
- package/components/tags/package.json +1 -1
- package/components/text/package.json +1 -1
- package/components/textarea/index.esm.js +2748 -2528
- package/components/textarea/index.umd.cjs +2 -2
- package/components/textarea/package.json +1 -1
- package/components/time-picker/index.esm.js +3436 -3215
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/time-picker/package.json +1 -1
- package/components/tooltip/package.json +1 -1
- package/components/transfer/package.json +1 -1
- package/components/tree-grid/package.json +1 -1
- package/components/tree-view/package.json +1 -1
- package/components/uploader/package.json +1 -1
- package/components/verify-detail/package.json +1 -1
- package/components/video/index.esm.js +1766 -1654
- package/components/video/index.umd.cjs +1 -1
- package/components/video/package.json +1 -1
- package/components/weather/package.json +1 -1
- package/designer/button-edit/index.esm.js +1931 -1567
- package/designer/button-edit/index.umd.cjs +1 -1
- package/designer/data-grid/index.esm.js +3700 -3480
- package/designer/data-grid/index.umd.cjs +6 -6
- package/designer/farris-designer.all.esm.js +3083 -2971
- package/designer/farris-designer.all.umd.cjs +5 -5
- package/designer/radio-group/index.esm.js +2312 -2092
- package/designer/radio-group/index.umd.cjs +1 -1
- package/farris.all.esm.js +5414 -5415
- package/farris.all.umd.cjs +21 -21
- package/package.json +1 -1
- package/types/step/index.d.ts +32 -7
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(be,oe){typeof exports=="object"&&typeof module<"u"?oe(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/popover/index.umd.js"),require("vue-i18n"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/checkbox/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/button/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/tags/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/accordion/index.umd.js"),require("../../components/avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/calendar/index.umd.js"),require("../../components/capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../checkbox-group/index.umd.js"),require("../../components/color-picker/index.umd.js"),require("../../components/combo-list/index.umd.js"),require("../../components/content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../../components/dropdown/index.umd.js"),require("../../components/external-container/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/language-textbox/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-range/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("../../components/rate/index.umd.js"),require("../../components/response-toolbar/index.umd.js"),require("../../components/response-layout/index.umd.js"),require("../../components/response-layout-editor/index.umd.js"),require("../../components/section/index.umd.js"),require("../../components/smoke-detector/index.umd.js"),require("../../components/splitter/index.umd.js"),require("../../components/step/index.umd.js"),require("../../components/switch/index.umd.js"),require("../../components/text/index.umd.js"),require("../../components/time-picker/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/uploader/index.umd.js"),require("../../components/verify-detail/index.umd.js"),require("../../components/component/index.umd.js"),require("../../components/video/index.umd.js"),require("../../components/textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../../components/fieldset/index.umd.js"),require("../drawer/index.umd.js"),require("../../components/html-template/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/combo-tree/index.umd.js"),require("../../components/events-editor/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/binding-selector/index.umd.js"),require("../../components/mapping-editor/index.umd.js"),require("../../components/schema-selector/index.umd.js"),require("../../components/event-parameter/index.umd.js"),require("../../components/filter-condition-editor/index.umd.js"),require("../../components/sort-condition-editor/index.umd.js"),require("../../components/menu-lookup/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/collection-property-editor/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/notify/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/popover/index.umd.js","vue-i18n","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/checkbox/index.umd.js","../../components/filter-bar/index.umd.js","../../components/pagination/index.umd.js","../../components/button/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/tags/index.umd.js","../../components/locale/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/accordion/index.umd.js","../../components/avatar/index.umd.js","../button-edit/index.umd.js","../../components/button-group/index.umd.js","../../components/calendar/index.umd.js","../../components/capsule/index.umd.js","../checkbox/index.umd.js","../checkbox-group/index.umd.js","../../components/color-picker/index.umd.js","../../components/combo-list/index.umd.js","../../components/content-container/index.umd.js","../data-grid/index.umd.js","../../components/dropdown/index.umd.js","../../components/external-container/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/language-textbox/index.umd.js","../../components/nav/index.umd.js","../../components/number-range/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","../../components/rate/index.umd.js","../../components/response-toolbar/index.umd.js","../../components/response-layout/index.umd.js","../../components/response-layout-editor/index.umd.js","../../components/section/index.umd.js","../../components/smoke-detector/index.umd.js","../../components/splitter/index.umd.js","../../components/step/index.umd.js","../../components/switch/index.umd.js","../../components/text/index.umd.js","../../components/time-picker/index.umd.js","../../components/tree-view/index.umd.js","../../components/uploader/index.umd.js","../../components/verify-detail/index.umd.js","../../components/component/index.umd.js","../../components/video/index.umd.js","../../components/textarea/index.umd.js","../tree-grid/index.umd.js","../../components/fieldset/index.umd.js","../drawer/index.umd.js","../../components/html-template/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/combo-tree/index.umd.js","../../components/events-editor/index.umd.js","../../components/field-selector/index.umd.js","../../components/binding-selector/index.umd.js","../../components/mapping-editor/index.umd.js","../../components/schema-selector/index.umd.js","../../components/event-parameter/index.umd.js","../../components/filter-condition-editor/index.umd.js","../../components/sort-condition-editor/index.umd.js","../../components/menu-lookup/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/collection-property-editor/index.umd.js","../../components/designer-canvas/index.umd.js","../../components/data-view/index.umd.js","../../components/notify/index.umd.js"],oe):(be=typeof globalThis<"u"?globalThis:be||self,oe(be["data-grid"]={},be.common,be.FDataGrid,be.dynamicResolver,be.Vue,be.VueUseCore,be.FPopover,be.vueI18n,null,be.LodashES,null,null,be.checkbox,null,null,be.FButton,null,null,null,null,be.FTags,be.locale,be.condition,be.FDynamicForm,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,be.FTreeview,null,null,null,null,null,null,null,null,null,be.designer$1,be.propertyPanel,null,null,be.FFieldSelector,null,null,null,null,null,null,null,null,null,null,null,null,be.designerCanvas,be.dataView,be.notify))})(this,function(be,oe,bt,ut,i,Kt,Qn,ct,hl,je,gl,yl,zt,vl,bl,en,Cl,wl,Sl,xl,Kn,jt,_e,eo,Fl,Tl,Ml,_l,El,kl,Il,Vl,Pl,Nl,Bl,Ol,$l,jl,Rl,Al,Ll,Hl,Dl,Wl,ql,zl,Gl,Ul,Yl,Xl,Zl,Jl,Ql,Kl,es,ts,ns,os,is,rs,as,ls,ss,cs,to,ds,us,fs,ms,ps,hs,gs,ys,vs,et,tt,bs,Cs,Rt,ws,Ss,xs,Fs,Ts,Ms,_s,Es,ks,Is,Vs,Ps,ft,ce,tn){"use strict";var ml=Object.defineProperty;var pl=(be,oe,bt)=>oe in be?ml(be,oe,{enumerable:!0,configurable:!0,writable:!0,value:bt}):be[oe]=bt;var le=(be,oe,bt)=>pl(be,typeof oe!="symbol"?oe+"":oe,bt);const no={customClass:{type:String,default:""},appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:t=>!0},beforeEndEditCell:{type:Function,default:()=>!0},changePolicy:{type:String,default:"push"},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:32,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}},oo=oe.excludeProperties(Object.assign({},no,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function io(t,e,n,o,r){const{getGridHeaderCells:l}=r,a=120,s=50,u=i.computed(()=>{var g;return((g=t.rowNumber)==null?void 0:g.enable)||!1}),d=i.computed(()=>{var g,C;return((g=t.selection)==null?void 0:g.multiSelect)||((C=t.selection)==null?void 0:C.showCheckbox)||!1}),f=i.computed(()=>{var g;return 0+(u.value?((g=t.rowNumber)==null?void 0:g.width)||32:0)+(d.value?s:0)}),c=i.computed(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns}),m=i.computed(()=>{var g;return c.value&&((g=t.columnOption)==null?void 0:g.fitMode)||"none"});function p(g,C,I){const $=parseInt(g.width,10)/100;return I*$}function h(g,C,I){return typeof g.width=="string"?p(g,C,I):g.width||a}function y(g,C){const I=[],$=[];let E=0;g.value.primaryColumns.forEach(T=>{typeof T.width=="string"?$.push(T):(T.width=T.width||a,E+=T.width,I.push(T))});const B=C*(I.length/g.value.primaryColumns.length);I.forEach(T=>{const x=B*(T.width/E);T.actualWidth=x,g.value.primaryColumnsWidth+=T.actualWidth});const V=C-B;$.forEach(T=>{const x=p(T,g.value,V);T.actualWidth=x,g.value.primaryColumnsWidth+=T.actualWidth})}function F(g,C){const I=[],$=[],E=new WeakMap;let B=0,V=0;if(g.value.primaryColumns.forEach(x=>{if(typeof x.width=="string"){const O=p(x,g.value,C);E.set(x,O),B+=O,$.push(x)}else x.width=x.width||a,V+=x.width,I.push(x)}),C-B>V){const x=C-B;$.forEach(O=>{O.actualWidth=E.get(O)||a,g.value.primaryColumnsWidth+=O.actualWidth}),I.forEach(O=>{O.actualWidth=x*(O.width/V),g.value.primaryColumnsWidth+=O.actualWidth})}else y(g,C)}function _(g,C){g.value.primaryColumns.forEach(I=>{I.actualWidth=h(I,g.value,C),g.value.primaryColumnsWidth+=I.actualWidth})}const S={expand:F,none:_,percentage:y};function w(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 M(g){g.value.leftColumnsWidth=0,g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,g.value.leftColumns.forEach(C=>{g.value.leftColumnsWidth+=C.actualWidth||0}),g.value.primaryColumns.forEach(C=>{g.value.primaryColumnsWidth+=C.actualWidth||0}),g.value.rightColumns.forEach(C=>{g.value.rightColumnsWidth+=C.actualWidth||0}),g.value=Object.assign({},g.value)}function b(g,C,I){var O;let $=0;const E=g.value.primaryColumns,B=g.value.rightColumns;g.value.rightColumns.forEach(W=>{W.actualWidth=h(W,g.value,C),$+=W.actualWidth});const V=I-$,T=S[m.value];if(T&&T(g,V),g.value.primaryColumnsWidth+$<=I)return g.value.primaryColumns=[...E,...B],g.value.primaryColumnsWidth+=$,g.value.rightColumns=[],g.value.rightColumnsWidth=0,!0;const x=new Map;return x.set("primary",[]),x.set("right",[]),g.value.primaryColumns.reduce((W,P)=>{var R,A;return P.fixed==="right"?(R=W.get("right"))==null||R.push(P):(A=W.get("primary"))==null||A.push(P),W},x),(O=x.get("right"))!=null&&O.length&&(g.value.primaryColumns=[...x.get("primary")||[]],g.value.rightColumns=[...x.get("right")||[]]),g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,!1}function v(){if(n.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const g=n.value.clientWidth-f.value;e.value.leftColumns.forEach(I=>{I.actualWidth=h(I,e.value,g),e.value.leftColumnsWidth+=I.actualWidth});const C=g-e.value.leftColumnsWidth;if(b(e,g,C))o.value=C;else{e.value.rightColumns.forEach(E=>{E.actualWidth=h(E,e.value,g),e.value.rightColumnsWidth+=E.actualWidth});const I=g-e.value.leftColumnsWidth-e.value.rightColumnsWidth,$=S[m.value];$&&$(e,I),o.value=I}w(e),e.value=Object.assign({},e.value)}}return i.watch(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns},(g,C)=>{g!==C&&g&&v()}),i.watch(m,(g,C)=>{g!==C&&c.value&&v()}),{calculateColumnHeaders:w,calculateColumnsSize:v,calculateColumnsWidth:M}}const ro="";function ao(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:[]},o=i.ref(n);function r(){o.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=i.ref(t.summary),a=i.computed(()=>{const b=l.value;return(b==null?void 0:b.groupFields)||[]});function s(){o.value.rightColumns.forEach(g=>{g.showSetting=!1}),o.value.primaryColumns.forEach(g=>{g.showSetting=!1});const b=o.value.rightColumns,v=o.value.primaryColumns;b.length>0?b[b.length-1].showSetting=!0:v.length>0&&(v[v.length-1].showSetting=!0)}function u(b){r();const v=new Map;return a.value&&a.value.reduce((g,C)=>(g.set(C,!0),g),v),b.reduce((g,C)=>(C.filter=C.filter||ro,C.fixed==="left"?(o.value.leftColumns.push(C),o.value.leftColumnsMap.set(C.field,C),o.value.leftColumnsWidth+=C.actualWidth):C.fixed==="right"?(o.value.rightColumns.push(C),o.value.rightColumnsMap.set(C.field,C),o.value.rightColumnsWidth+=C.actualWidth):(o.value.primaryColumns.push(C),o.value.primaryColumnsMap.set(C.field,C),o.value.primaryColumnsWidth+=C.actualWidth),v.has(C.field)&&o.value.summaryColumns.push(C),g),o),s(),o}u(t.columns);const d=i.computed(()=>o.value.leftColumns.length>0),f=i.computed(()=>o.value.rightColumns.length>0);function c(b,v){return v.sortable&&v.sort&&v.sort!=="none"&&b.push(v),b}function m(b,v){return b.sortOrder=b.sortOrder||0,v.sortOrder=v.sortOrder||0,b.sortOrder===v.sortOrder?0:b.sortOrder<v.sortOrder?-1:1}function p(b,v){return b.sortOrder=b.sortOrder||0,v.sortOrder=v.sortOrder||0,b.sortOrder===v.sortOrder?0:b.sortOrder<v.sortOrder?1:-1}function h(b,v){return v.filterable&&b.push(v),b}function y(){const b=[];return o.value.leftColumns.reduce(h,b),o.value.primaryColumns.reduce(h,b),o.value.rightColumns.reduce(h,b),b}function F(){const b=[];o.value.leftColumns.reduce(c,b),o.value.primaryColumns.reduce(c,b),o.value.rightColumns.reduce(c,b);const v=Math.max(...b.map(g=>g.sortOrder||0));return b.sort(p).map(g=>{const C=g.sortOrder||v+1;return g.sortOrder=C,g}).sort(m).map((g,C)=>{const I=C+1;return g.sortOrder=I,g})}function _(b,v,g){const C=b.map(I=>{const $=g.getSorterByColumn(I),E=I.sort==="asc",B=I.sort==="desc",V=E?$.ascend:B?$.decend:void 0;return{field:I.field,compare:V}});v.setSorters(C)}function S(b,v){const g=F();_(g,b,v)}function w(b){}function M(b){}return{applyColumnSorter:S,collectionFilterableColumns:y,applySortableColumns:_,collectionSortableColumns:F,columnContext:o,hasLeftFixedColumn:d,hasRightFixedColumn:f,updateColumnRenderContext:u,updateColumnSettingIcon:s,sortFromServer:w,createSortConditions:M}}function lo(t,e,n,o,r,l,a,s){const u=i.ref(o.value-1+r),d=i.ref(0),{renderDataRow:f}=l,c=a?a.renderGroupRow:f,m=s?s.renderSummaryRow:f;function p(F){let _=f;return F.__fv_data_grid_group_row__&&(_=c),F.__fv_data_grid_group_summary__&&(_=m),_}function h(F,_,S,w){const{dataView:M}=n,b=[];if(M.value.length>0){const v=w?Date.now().toString():"";let g=F,C=0;const I=_-F+1;for(;b.length<I&&g<M.value.length;){const $=M.value[g],E=M.value[g-1]||S,B=b[C-1],V=E?(E.__fv_data_position__||0)+(E.__fv_data_height__||0):0,x=p($)($,E,B,g,V,e.value,b);x.refreshKey=v,b.push(x),C++,g++}}return d.value=b.length>0?b[0].index:0,u.value=b.length>0?b[b.length-1].index:0,b}function y(F,_,S){const w=_.groupField||"",{groupValue:M,raw:b}=_;n[F](w,M,b.groupParents||[]);const{dataView:v}=n,g=S[0].index,C=Math.min(g+o.value+r+1,v.value.length-1);return h(g,C)}return{getVisualData:h,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:y}}var Le=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(Le||{}),it=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(it||{}),Ct=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(Ct||{}),qe=(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))(qe||{}),rt=(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))(rt||{});const so="__command__",co=150,uo="right",nn="commands";function fo(t,e,n){const{horizontalScrollThumbStyle:o,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:l}=n;function a(){return l.value&&i.createVNode("div",{class:"fv-grid-horizontal-scroll"},[i.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:o.value,onMousedown:s=>r(s,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function mo(t){const{t:e}=ct.useI18n();function n(a,s){switch(a.command){case"edit":case"remove":return s.status===it.initial;case"accept":case"cancel":return s.status===it.editing;default:return!a.hidden}}function o(a,s,u,d){var f,c,m,p,h;switch((f=a.onClick)==null||f.call(a,s,u.dataIndex,u),a.command){case"edit":u.status,it.editing,(m=(c=t.commandOption)==null?void 0:c.onClickEditCommand)==null||m.call(c,d,u);break;case"accept":case"cancel":u.status,it.initial;break;case"remove":(h=(p=t.commandOption)==null?void 0:p.onClickDeleteCommand)==null||h.call(p,d,u);break}}function r(a){return a==="编辑"?e("datagrid.commandColumn.edit"):a==="确定"?e("datagrid.commandColumn.accept"):a==="取消"?e("datagrid.commandColumn.cancel"):a==="删除"?e("datagrid.commandColumn.remove"):a}function l(a,s){const{column:u}=a;return u.commands&&u.commands.map((d,f)=>f?n(d,s)&&i.createVNode(en,{class:"ml-1",type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}):n(d,s)&&i.createVNode(en,{type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}))}return{renderCommandColumn:l}}function po(t){const e=i.ref(t.minHeight),n=i.ref(t.minWidth),o=i.ref(t.height),r=i.ref(t.width),l=i.computed(()=>o.value<=0?0:Math.max(o.value,e.value)),a=i.computed(()=>r.value<=0?0:Math.max(r.value,n.value));return i.watch([()=>t.height,()=>t.width,()=>t.minHeight,()=>t.minWidth],([u,d,f,c])=>{e.value=Number(f),n.value=Number(c),o.value=Number(u),r.value=Number(d)}),{containerStyleObject:i.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 ho(t){var l,a;const{t:e}=ct.useI18n(),n=i.ref(((l=t.commandOption)==null?void 0:l.enable)||!1),o=i.ref(((a=t.commandOption)==null?void 0:a.commands)||[]);function r(s){var u;if(n.value&&!(s.value.findIndex(f=>f.dataType===nn)>-1)){const f={field:so,title:e("datagrid.commandColumn.title"),width:co,fixed:uo,dataType:nn,commands:o.value,resizable:!1,halign:((u=t.commandOption)==null?void 0:u.halign)||"left",visible:!0,formatter:t.commandOption.formatter?(c,m)=>t.commandOption.formatter(c,m):null};s.value.push(f)}}return{applyCommands:r}}function go(t,e){var d;const n=i.ref((d=t.columnOption)==null?void 0:d.groups);function o(f,c,m,p,h){const y={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:m,resizable:!0,title:f.title||"",status:qe.none,popoverRef:i.ref(),showPopover:!1,column:null,sortType:"none"},F=p||y;if(f.group){let _=1;f.group.reduce((S,w)=>{if(typeof w=="string"){const M=c.get(w);M&&(h.fieldToRootMap.set(w,F),S.actualWidth+=M.actualWidth,S.children.push(M))}else{const M=o(w,c,S,F,h);_=Math.max(_,M.depth),S.actualWidth+=M.actualWidth,S.children.push(M)}return S},y),y.depth+=_}return e.value.headerDepth=Math.max(e.value.headerDepth,y.depth),y}function r(f){const c={groupedCells:new Map,fieldToRootMap:new Map};return n.value&&n.value.reduce((m,p)=>{const h=o(p,f,null,null,c);return m.groupedCells.set(p.field,h),m},c),c}function l(f){if(!f||f.length===0)return 0;const c=f[0];return c.children&&c.children.length>0&&(c.left=l(c.children)),c.left}function a(f,c){const m=e.value.headerDepth;f.forEach(p=>{p.layer=c?c.layer+1:1;const h=p.children&&p.children.length===0;p.depth=h?m-(p.layer-1):1,p.left=h?p.left:l(p.children),p.children&&a(p.children,p)})}function s(f,c){const m=new Map;return f.forEach(p=>{const h=c.fieldToRootMap.get(p.field),y=h!=null;y&&!m.has(h.field)&&m.set(h.field,h),y||m.set(p.field,p)}),a(Array.from(m.values())),m}function u(f){let c=new Map,m=0;if(f.reduce((p,h)=>{let y=qe.none;y=h.sortable?y|qe.sortable:y,y=h.filterable?y|qe.filterable:y,y=h.sort&&h.sort!=="none"?y|qe.sorted|(h.sort==="asc"?qe.ascending:qe.descending):y;const F=h.field;return p.set(F,{actualWidth:h.actualWidth||0,children:[],depth:1,layer:1,left:m,field:F,parent:null,resizable:h.resizable===void 0?!0:h.resizable,title:h.title,status:y,popoverRef:i.ref(),showPopover:!1,column:h,filterValue:null,sortType:h.sort||"none",showSetting:h.showSetting,draggable:h.draggable}),m+=h.actualWidth||0,p},c),n.value){const p=r(c);c=s(c,p)}return c}return{getGridHeaderCells:u}}function yo(t,e){var S;oe.useGuid();const{idField:n}=e,o=i.ref(t.summary),r=i.ref(t.group),l=i.ref(((S=t.group)==null?void 0:S.groupFields)||[]),a=i.computed(()=>{var w;return(w=t.group)==null?void 0:w.enable}),s=i.computed(()=>{var w;return(w=t.group)==null?void 0:w.showGroupPanel}),u=i.computed(()=>{const w=o.value;return(w==null?void 0:w.groupFields)||[]}),d=i.computed(()=>{const w=r.value;return w&&w.showSummary}),f=i.ref(0),c=new Map;let m=[];function p(w,M,b,v,g){const C=v[b];C&&(M.reduce((I,$,E)=>{var T;const B=$[C];let V=I.get(B);if(!V){const x=u.value.reduce((O,W)=>(O.set(W,0),O),new Map);V={field:C,title:((T=g.get(C))==null?void 0:T.title)||C,value:B,layer:b,details:[],groupSummaries:x},I.set(B,V)}return u.value&&u.value.forEach(x=>{if(V){const O=V.groupSummaries.get(x)||0;V.groupSummaries.set(x,O+$[x])}}),u.value&&u.value.forEach(x=>{if(V){const O=V.groupSummaries.get(x)||0;V.groupSummaries.set(x,Number(O.toFixed(2)))}}),V.details.push($),I},w),b<v.length-1&&w.forEach((I,$)=>{I.nestGroup=new Map,p(I.nestGroup,I.details,b+1,v,g),I.details=[]}))}function h(w,M){return t.group&&t.group.formatter?t.group.formatter(w.value,{...w,total:M}):`${w.title}:${w.value} (${M})`}function y(w,M){const b=[];return w.forEach(v=>{const g={[n.value]:`group_of_${M?M[n.value]+"_":""}${v.field}_${v.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:v.field,__fv_data_grid_group_layer__:v.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:v.value,groupParents:[]};M&&(g.groupParents=[...M.groupParents,M]);let C=0;if(b.push(g),v.nestGroup){const I=y(v.nestGroup,g);b.push(...I),C+=I.length}if(v.details&&v.details.length&&(b.push(...v.details),C+=v.details.length),d.value){const I={__fv_data_grid_group_field__:v.field,__fv_data_grid_group_layer__:v.layer,__fv_data_grid_group_summary__:!0};I[n.value]=`summary_of_${v.field}_${v.value}`,I[v.field]=Array.from(v.groupSummaries.entries()).reduce(($,[E,B])=>`${$} ${E} total:${B} `,""),b.push(I)}v.groupSummaries&&v.groupSummaries.size&&v.groupSummaries.forEach((I,$)=>{g[$]=I}),g[v.field]=h(v,C),g.value=v.value}),b.forEach((v,g)=>{v.__fv_data_index__=g}),b}function F(w,M,b){return!w||w.length===0||!M.length?M:(w.join(","),c.clear(),m=[],M=M.filter(v=>!v.__fv_data_grid_group_row__),p(c,M,0,w,b),m=y(c),m)}function _(w){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":w.collapse}}return{collpaseGroupIconClass:_,generateGroupData:F,groupFields:l,shouldGroupingData:a,showGroupPanel:s,groupRowSize:f}}function on(t){const e="parent",n="layer",o="hasChildren",r=(a,s=1,u=[],d=null)=>(a=a||[],a.reduce((f,c)=>(c.id=c.id||c.data[t.idField],c[e]=d,c[n]=s,c[o]=c[o]===void 0?!1:c[o],c.data&&Object.keys(c.data).forEach(m=>{Object.keys(c).includes(m)||(c[m]=c.data[m])}),u.push(c),c.children&&c.children.length&&(c[o]=!0,r(c.children,s+1,u,c.id)),f),u),u);return{flatTreeData:r,isNestedTree:a=>a.some(s=>Array.isArray(s.children))}}function vo(t,e,n,o){const r=i.ref(0),l=i.ref(!!t.hierarchy),{idField:a}=o,{collapseField:s,hasChildrenField:u,parentIdField:d}=n,f=new Map,c=new Map,m=new Map,{flatTreeData:p,isNestedTree:h}=on(t);function y(z,q){c.clear(),z.reduce((L,U)=>{const se=U[d.value]!==void 0?U[d.value]:"";if(se&&q.has(se)){const me=q.get(se),de=isNaN(Number(me.__fv_layer__))?1:Number(me.__fv_layer__);U.__fv_layer__=de+1,U.__fv_parent_index__=me.__fv_index__,me.__fv_hasChildren__=!0}else U.__fv_layer__=1;const he=L.has(se)?L.get(se):[];return he.push(U),L.set(se,he),L},c)}function F(z){m.clear(),z.reduce((q,L)=>{const U=L[a.value];return q.set(U,L),q},m)}function _(z){z.forEach(q=>{const L=q[a.value];q.__fv_children_index__.map(se=>z[se]).forEach(se=>{se.__fv_parents__=new Map([...q.__fv_parents__.entries(),[L,!0]])})})}function S(z){z.forEach(q=>{const L=new Set(q.__fv_children_index__);q.__fv_children_index__=[...L].sort((U,se)=>U-se)})}function w(z){z.forEach(q=>{const L=q.__fv_parents__;Array.from(L.keys()).map(U=>m.get(U)).forEach(U=>{U.__fv_children_index__.push(q.__fv_index__)})}),S(z)}function M(z){z.forEach(q=>{q.__fv_child_with_lines__=[],q.__fv_child_length__=q.__fv_descendant_index__.length,q.__fv_descendant_index__.map(L=>z[L]).reduce((L,U)=>(L.__fv_child_length__+=U.__fv_children_index__.length,L.__fv_child_with_lines__.push(...U.__fv_children_index__,U.__fv_index__),L),q)})}function b(z,q){return{id:z,index:q,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function v(z,q,L){Array.from(q.keys()).forEach(U=>{q.get(U).reduce((he,me)=>{const de=me[a.value],Se=z.get(me[a.value]),Ve=z.get(U),ge=L.get(U);return Ve&&ge&&(Ve.children.set(de,Se),Ve.children.set(de,Se),Se.parentId=U,Se.parentIndex=Ve.index,Se.parents.set(U,Ve)),he},z)})}function g(z){z.children.forEach(L=>{L.parents=new Map([...z.parents.entries(),[z.id,z]]),g(L)})}function C(z,q){z.filter(L=>L[d.value]===void 0||L[d.value]==="").forEach(L=>{const U=L[a.value],se=q.get(U);g(se)})}function I(z){Array.from(z.values()).forEach(q=>{Array.from(q.parents.values()).forEach(L=>{L.descendant.set(q.id,q)})})}function $(z){f.clear(),z.forEach((q,L)=>{const U=q[a.value];f.set(U,b(U,L))}),F(z),y(z,m),v(f,c,m),C(z,f),I(f)}function E(z){const q=z[a.value],L=f.get(q);return L&&L.children.size>0}function B(z){return z[u.value]&&!E(z)}function V(z){const q=z[a.value],L=f.get(q);return L&&L.visibleInHierarchy}function T(){r.value=Date.now()}function x(z,q){q.forEach(L=>{const U=f.get(L[a.value]),se=f.get(z),he=m.get(z);se&&he&&(U.visibleInHierarchy=!he[s.value]&&se.visibleInHierarchy)}),T()}function O(z){if(c.has(z)){const L=c.get(z);x(z,L),L.map(U=>U[a.value]).forEach(U=>O(U))}}function W(z){const q=z[a.value];O(q)}function P(z,q,L=0){z.forEach(U=>{const se=B(U),he=U.__fv_layer__<=L,me=q==="ToCollapse"?U.__fv_layer__<=L:!(U.__fv_layer__<=L),de=he?me:U[s.value];U[s.value]=se||de});for(const[U,se]of c.entries())x(U,se);return z}function R(z,q){P(z,"ToCollapse",q)}function A(z,q){P(z,"ToExpand",q)}function N(z){z.forEach((q,L)=>{var me;const U=q[a.value],se=c.has(U)?(me=c.get(U))==null?void 0:me.map(de=>de.__fv_index__):[],he=b(U,L);q.__fv_graph_node__=he,q.__fv_children_index__=se,q.__fv_descendant_index__=[...se],q.__fv_parents__=new Map,B(q)&&(q[s.value]=!0)})}function D(z){var U,se;$(e.value),N(z),_(z),w(z),t.showLines&&M(z);const L=((U=t.hierarchy)==null?void 0:U.collapseTo)!==void 0?Number((se=t.hierarchy)==null?void 0:se.collapseTo):0;return P(z,"ToCollapse",L),z}function Z(z,q,L){const se=L.value[z][a.value],he=f.get(se);if(he){const me=f.get(he.parentId);let de=L.value.length-1;if(me){const Se=Array.from(me.children.keys()).indexOf(he.id);if(Se===me.children.size-1){const ge=Array.from(me.descendant.values())[me.descendant.size-1];de=L.value.findIndex(H=>H[a.value]===ge.id)+1}else{const ge=Array.from(me.children.values())[Se+1];de=L.value.findIndex(H=>H[a.value]===ge.id)}q[u.value]=!1,q[d.value]=me.id,L.value.splice(de,0,q)}}}function ee(z,q,L){const U=L.value[z],se=U[a.value];if(f.get(se)){const de=L.value.findIndex(Se=>Se[a.value]===se)+1;U[u.value]=!0,U[s.value]=!1,q[u.value]=!1,q[d.value]=se,L.value.splice(de,0,q)}}function Y(z,q,L){const se=L.value[z][a.value];if(f.get(se)){const de=L.value.findIndex(Ve=>Ve[a.value]===se)+1;let Se=q;h(q)&&(Se=p(q)),Se.forEach(Ve=>{Ve[d.value]=se}),L.value.splice(de,0,...Se)}}function ie(z,q){const L=z[a.value],U=f.get(L),se=Array.from(U.descendant.keys());se.unshift(L);const he=f.get(U.parentId);if(he&&(he.children.delete(L),he.children.size===0)){const de=q.find(Se=>Se[a.value]===U.parentId);de[u.value]=!1,de[s.value]=!1}return q.filter(de=>se.indexOf(de.id)===-1)}return{checkVisibleInHierarchy:r,collapseTo:R,expandTo:A,generateHierarchyData:D,hasRealChildren:E,insertSibling:Z,insertChild:ee,insertChildren:Y,isVisibleInTree:V,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:W,trimmedOriginalData:ie}}const bo={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object},safeHtml:{type:Boolean,default:!0}},Co={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Gt=i.defineComponent({name:"Toast",props:Co,emits:["close","click"],setup:(t,e)=>{const{locale:n,t:o}=ct.useI18n(),r=i.ref(t.animate),l="fadeOut",a=i.computed(()=>t.options),s=i.ref(!1),u=i.computed(()=>a.value.title&&a.value.message),d=i.computed(()=>!a.value.title&&a.value.message),f=i.computed(()=>{const M={animated:s.value,toast:!0,"toast--only-content":d.value};return M[t.animate]=!1,M[l]=s.value,M["toasty-type-"+a.value.type]=!0,a.value.theme&&(M[a.value.theme]=!0),M}),c=i.computed(()=>{const v=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,g={"f-icon":!0};return g[v]=!0,g}),m=i.computed(()=>a.value.title||a.value.message),p=i.computed(()=>t.showCloseButton),h=i.computed(()=>!!a.value.buttons||!!e.slots.default),y=i.computed(()=>n.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function F(M){M.stopPropagation(),M.preventDefault(),s.value=!1,setTimeout(()=>{e.emit("close",a.value)},200)}function _(M,b){}function S(M){return`f-preten-link ${M.customClass?M.customClass:""}`}i.watch(r,()=>{r.value});const w=()=>{var M;return i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((M=a.value.buttons)==null?void 0:M.map(b=>i.createVNode("span",{class:S(b),onClick:v=>void 0},[b.text]))),e.slots.default&&e.slots.default()])])};return()=>i.createVNode("div",{class:f.value,style:"min-height:44px"},[p.value&&i.createVNode("button",{title:o("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:F},[i.createVNode("span",{class:"f-icon modal_close"},null)]),m.value&&i.createVNode("section",{class:"modal-tips"},[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:c.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[u.value&&i.createVNode(i.Fragment,null,[i.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),i.createVNode("p",{class:"toast-msg",innerHTML:a.value.message,style:y.value},null),h.value&&w()]),d.value&&(a.value.buttons?i.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:y.value,innerHTML:a.value.message},null),i.createVNode("div",{class:"after-toast-title text-right ml-auto"},[w()])]):i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:y.value,innerHTML:a.value.message},null))])])])}}),At=i.defineComponent({name:"Notify",props:bo,emits:["close","empty"],setup(t,e){const n=i.computed(()=>({"farris-notify":!0})),o={left:12,right:12,top:20,bottom:12},r=i.ref(),l=i.ref(t.options),a=i.ref(t.showCloseButton),s=i.computed(()=>t.position||"bottom-right"),u=i.computed(()=>t.timeout!=null?t.timeout:3e3),d=i.computed(()=>{const m=t.bottom?t.bottom:o.bottom,p=t.top?t.top:o.top,h={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${t.left?t.left:o.left}px`:"",right:s.value.indexOf("right")>-1?`${t.right?t.right:o.right}px`:"",top:s.value.indexOf("top")>-1?`${p}px`:"",bottom:s.value.indexOf("bottom")>-1?`${m}px`:""};return s.value.indexOf("center")>-1&&(h.left="50%",h.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(h.top="50%",h.transform="translate(-50%, -50%)")),h});function f(m){e.emit("close")}u.value&&setTimeout(()=>{f()},u.value),e.expose({closeToast:f,container:r,notifyPosition:s});function c(m,p){f()}return()=>i.createVNode("div",{class:n.value,style:d.value,ref:r},[i.createVNode(Gt,{options:l.value,showCloseButton:a.value,animate:t.animate,onClose:m=>c(m,l.value)},null)])}});class rn{constructor(){le(this,"notifyRefs",[]);le(this,"globalConfig",i.reactive({}))}escapeAllHtml(e){if(typeof e!="string"||!e)return"";const n=document.createElement("div");return n.textContent=e||"",n.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(e){const n=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...e}),l=document.createElement("div");l.style.display="contents";const a=i.createApp({setup(){var d;const s=i.ref();function u(){s.value.container.style.transform="scale(0)",setTimeout(()=>{n.updateNotifyPositionForClose(r,s),a.unmount()},220)}if(r.position.indexOf("top")>-1){const f=n.getNotifyInstances(r.position),c=f[f.length-1];if(c){const m=c.value.container.getBoundingClientRect();r.top=m.bottom}}return r.safeHtml&&((d=r.options)!=null&&d.message)&&(r.options.message=n.escapeAllHtml(r.options.message)),i.onUnmounted(()=>{document.body.removeChild(l)}),i.onMounted(()=>{n.updateNotifyPositionForCreate(r,s)}),()=>i.createVNode(i.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[i.createVNode(At,i.mergeProps({ref:s},r,{onClose:u}),null)]})}});return a.provide("NotifyService",this),document.body.appendChild(l),a.use(jt.LocaleService.i18n),a.mount(l),a}getNotifyInstances(e){return this.notifyRefs.filter(n=>n.value.notifyPosition===e)}updateNotifyPositionForCreate(e,n){if(this.notifyRefs&&this.notifyRefs.length){const o=window.innerHeight;e.position.indexOf("bottom")>-1&&this.getNotifyInstances(e.position).forEach(r=>{const l=r.value.container.getBoundingClientRect();r.value.container.style.bottom=l.height+o-l.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,n]}updateNotifyPositionForClose(e,n){const o=this.notifyRefs.indexOf(n);if(e.position.indexOf("top")>-1){const r=this.getNotifyInstances(e.position),l=r.indexOf(n);r.slice(l+1).forEach(a=>{a.value.container.style.top=a.value.container.offsetTop-a.value.container.offsetHeight+"px"})}o>-1&&this.notifyRefs.splice(o,1)}show(e){return this.createNotifyInstance(e)}buildNotifyProps(e,n){let o="",r="",l,a,s;typeof n=="string"?o=n:n&&(o=n.message||"",r=n.title||"",a=n.position||null,s=n.showCloseButton!=null?n.showCloseButton:null,l=n.timeout!=null?n.timeout:null);const d={options:{type:e,message:o,title:r}};return a!=null&&(d.position=a),s!=null&&(d.showCloseButton=s),l!=null&&(d.timeout=l),d}info(e){const n=this.buildNotifyProps("info",e);return this.show(n)}success(e){const n=this.buildNotifyProps("success",e);return this.show(n)}warning(e){const n=this.buildNotifyProps("warning",e);return this.show(n)}error(e){const n=this.buildNotifyProps("error",e);return this.show(n)}close(e){e&&e.unmount()}closeAll(){this.notifyRefs.forEach(e=>{e==null||e.value.closeToast()}),this.notifyRefs.length=0}}const wo=Symbol("NOTIFY_SERVICE_TOKEN");At.install=t=>{t.component(At.name,At),t.component(Gt.name,Gt);const e=new rn;t.provide(wo,e),t.provide("FNotifyService",e)};function So(t,e,n,o,r){const{toNumber:l}=oe.useNumberFormat(),a=new Map,s=new Map,u=new Map,d=new Map,f=new Map,c=i.ref([]),m=i.ref([]),p=yo(t,r),{generateGroupData:h,groupFields:y,shouldGroupingData:F}=p,_=i.ref(t.data||[]),S=vo(t,_,o,r),{collapseTo:w,expandTo:M,generateHierarchyData:b,hasRealChildren:v,insertSibling:g,insertChild:C,insertChildren:I,isVisibleInTree:$,shouldStratifyData:E,toggleChildrenVisibiltyByCollapseStatus:B,trimmedOriginalData:V,checkVisibleInHierarchy:T}=S,{idField:x,reviseIdentifyField:O}=r,W=i.ref(t.newDataItem),P=i.ref(t.data||[]),R=i.ref(t.data),{flatTreeData:A,isNestedTree:N}=on(t);if(t.hierarchy&&N(t.data)){const k=A(t.data);_.value=k,P.value=k,R.value=k}const D=i.ref(t.summary),Z=i.computed(()=>{const k=D.value;return(k==null?void 0:k.groupFields)||[]});let ee=new Map;const Y=i.ref(P.value.length),ie=i.ref(t.pagination);function z(){return ie.value&&ie.value.enable&&ie.value.size>0?ie.value.size:P.value.length}const q=i.ref(1),L=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode!=="server"),U=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode==="server"),se=new rn;function he(k,j){const G=Math.ceil(k.length/j);let J=0;const ue=[],ye=[],$e=[];for(;J<G;){const Te=k.slice(J*j,(J+1)*j),we=h(y.value,Te,e);ye[J]=we.filter(Me=>Me.__fv_data_grid_group_row__).length,ue.push(...we),J++}return ye.reduce((Te,we,Me)=>(Te=Te+we,$e.push(Te),Te),0),{groupData:ue,groupRowSizeList:ye,accumulateGroupRowSize:$e}}function me(){var we;P.value=_.value,L.value&&(Y.value=P.value.length),F.value&&!L.value&&(P.value=h(y.value,_.value,e)),ee=Z.value.reduce((Me,Ce)=>(Me.set(Ce,0),Me),ee);const k=0,j=z(),G=(q.value-1)*j;let ue=G>P.value.length-1||U.value?k:G,ye=U.value?P.value.length:Math.min(ue+j,P.value.length);if(F.value&&L.value){const{accumulateGroupRowSize:Me,groupData:Ce,groupRowSizeList:Ie}=he(_.value,j);P.value=Ce;const Be=Ie[q.value-1];ue+=q.value-2<0?0:Me[q.value-2],ye=ue+j+Be}let $e=0;const Te=[];if(P.value.length){O(P.value);const Me=x.value!==t.idField;for(let Ce=ue;Ce<ye;Ce++){const Ie=P.value[Ce];Ie.__fv_data_grid_group_row__?($e=0,Ie.__fv_data_index__=""):Ie.__fv_data_grid_group_summary__?Ie.__fv_data_index__="":($e++,Ie.__fv_data_index__=$e+(q.value-1)*j),Ie.__fv_index__=Ce,Ie.__fv_visible_index__=Ce,t.rowOption&&t.rowOption.disabledField&&(Ie.__fv_disabled__=Ie[(we=t.rowOption)==null?void 0:we.disabledField]),Me&&(Ie[x.value]=Ce),Z.value.forEach(Be=>{const Oe=ee.get(Be)||0;ee.set(Be,Oe+oe.resolveField(Ie,Be))}),Te.push(Ie)}}return E.value&&b(Te),Z.value.forEach(Me=>{const Ce=ee.get(Me)||0;ee.set(Me,l(Ce.toFixed(2)))}),R.value=[...Te],Te}const de=i.ref(me()),Se=i.computed(()=>(T.value,de.value.filter(k=>E.value?k.__fv_visible__!==!1&&$(k):k.__fv_visible__!==!1)));function Ve(){Se.value.forEach((k,j)=>(k.__fv_visible_index__=j,k))}function ge(k,j,G=!1){var Te;const J=G?me():[...R.value];let ue=J;((Te=t.filter)==null?void 0:Te.mode)!=="server"&&(ue=J.filter(we=>n.apply(we)));const ye=k&&k.length?ue.filter(we=>k.reduce((Me,Ce)=>Me&&Ce.filter(we),!0)):ue,$e=j&&j.length?ye.sort((we,Me)=>{const Ce=[...j],Ie=Ce.shift();let Be=Ie.compare(we[Ie.field],Me[Ie.field]);for(;Be===0&&Ce.length!==0;){const Oe=Ce.shift();Oe&&(Be=Oe.compare(we[Oe.field],Me[Oe.field]))}return Be}):ye;return de.value=$e.map((we,Me)=>{if(we.__fv_data_grid_group_row__){const Ce=`group_of_${we.__fv_data_grid_group_field__}_${we.__fv_data_grid_group_value__}`;we.__fv_data_grid_group_collapse__=!!a.get(Ce)}return we.__fv_index__=Me,we.__fv_visible_index__=Me,we}),de.value}function He(k){return f.clear(),m.value=k,m.value.reduce((j,G)=>(j.set(G.field,G),j),f),ge([],m.value)}function H(k,j){return f.set(k,j),m.value=Array.from(f.values()),ge([],m.value)}function K(k){return f.delete(k),m.value=Array.from(f.values()),ge([],m.value)}function ne(k,j){return s.set(k,j),c.value=Array.from(s.values()),ge([],Array.from(f.values()))}function xe(k){return s.delete(k),c.value=Array.from(s.values()),ge([],Array.from(f.values()),!0)}function Ee(){return s.clear(),c.value=[],ge([],Array.from(f.values()),!0)}function ze(k,j,G){const J=`group_of_${k}_${j}`;a.set(J,!0);const ue=ye=>ye[k]===j;return u.set(`collapse_${k}_${j}`,{field:k,fieldName:k,fieldType:"string",filterValue:j,filter:ue}),ge(Array.from(u.values()),Array.from(f.values()))}function Ye(k){w(de.value,k)}function Qe(k){M(de.value,k)}function Xe(k,j,G){const J=`group_of_${k}_${j}`;return a.set(J,!1),u.delete(`collapse_${k}_${j}`),ge(Array.from(u.values()),Array.from(f.values()),!0)}function X(k){const j=k.raw[x.value],G=J=>!J.__fv_parents__.has(j);d.set(`fold_${j}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(j),filter:G}),ge(Array.from(d.values()),Array.from(f.values())),b(de.value)}function pe(k){const j=k[x.value];d.delete(`fold_${j}`)}function Ne(k){pe(k.raw),ge(Array.from(d.values()),Array.from(f.values()),!0),b(de.value)}function Fe(){const k=me();de.value=k,t.hierarchy&&(ge(Array.from(d.values()),Array.from(f.values())),b(de.value))}function Ke(k){const G=t.hierarchy&&N(k)?A(k):k;_.value=G,Fe()}function st(k,j,G){return(k&&k.length?de.value.filter((ue,ye)=>k.reduce(($e,Te)=>$e&&Te.filter(ue),!0)):de.value).slice(j,G)}function Ft(k){const j=z(),G=Math.ceil(Y.value/j);0<=k&&k<=G&&(q.value=k,Fe())}function yt(k){_.value.push(je.cloneDeep(k)),de.value=me()}function Tt(k=0){if(!(k>-1))return!1;const G=W.value();t.hierarchy?g(k,G,_):_.value.splice(k,0,G),Fe()}function Mt(k=0){if(!(k>-1&&t.hierarchy))return!1;const G=W.value(),J=_.value[k];pe(J),C(k,G,_),Fe()}function vt(k,j=0){if(!(j>-1&&t.hierarchy))return!1;const J=_.value[j];pe(J),I(j,k,_),Fe()}function te(k){const j=k?k-1:0;_.value.splice(j,1),Fe()}function ae(k){const j=_.value.findIndex(G=>G[x.value]===k);j!==-1&&(_.value.splice(j,1),Fe())}function fe(k){const j=k>-1?_.value[k]:null;if(!(j&&j.deletable!==!1))return!1;_.value=V(j,_.value),Fe()}function Pe(){const k=u.size>0?Array.from(u.values()):[];return ge(k,Array.from(f.values()))}function Re(k){ie.value.size=k}function Ue(k){ie.value&&(Re(k),Fe())}function Ze(k,j){const G=_.value[Number(k)-1];G.editable!==!1?(G.name=j,Fe()):se.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function dt(k){return k.map(G=>{const J=R.value.findIndex(ue=>""+ue[x.value]==""+G);return J>-1?R.value[J]:null}).filter(G=>G!=null)}function nt(){const k=t.summary.groupFields;ee=k.reduce((j,G)=>(j.set(G,0),j),ee);for(const j of P.value)k.forEach(G=>{const J=ee.get(G)||0;ee.set(G,J+oe.resolveField(j,G))});k.forEach(j=>{const G=ee.get(j)||0;ee.set(j,l(G.toFixed(2)))})}function ot(k){const j=t.summary.groupFields;ee=j.reduce((G,J)=>(G.set(J,0),G),ee);for(const G of k)j.forEach(J=>{const ue=ee.get(J)||0;ee.set(J,ue+oe.resolveField(G.raw,J))});j.forEach(G=>{const J=ee.get(G)||0;ee.set(G,l(J.toFixed(2)))})}return{addFilter:ne,addNewDataItem:yt,addSorter:H,updatePageSize:Re,changePageSizeTo:Ue,collapse:ze,collapseTo:Ye,dataView:de,editDataItem:Ze,expand:Xe,expandTo:Qe,filters:c,fold:X,getRange:st,getSelectionItems:dt,hasRealChildren:v,insertNewChildDataItem:Mt,insertNewChildDataItems:vt,insertNewDataItem:Tt,isVisibleInTree:$,load:Ke,navigatePageTo:Ft,pageIndex:q,rawView:R,refresh:Pe,removeAllFilter:Ee,removeDataItem:te,removeDataItemById:ae,removeFilter:xe,removeHierarchyDataItem:fe,removeSorter:K,reOrderVisibleIndex:Ve,setSorters:He,sorters:m,summaries:ee,updateSummary:nt,toggleChildrenVisibiltyByCollapseStatus:B,totalItems:Y,unFold:Ne,updateDataView:Fe,visibleDataItems:Se,shouldGroupingData:F,pagination:ie,updateVisibleDataSummary:ot}}const xo=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Fo={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},To={equal:(t,e,n)=>t&&t[e]===n,in:(t,e,n)=>{if(t){const o=t[e];return n.indexOf(o)>-1}return!1},notEqual:(t,e,n)=>t&&t[e]!==n},Mo={equal:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()===o}return!1},notEqual:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()!==o}return!1},greaterThan:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>o}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>=o}return!1},lessThan:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<o}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<=o}return!1}},_o={equal:(t,e,n)=>t?String(n).split(",").includes(String(t[e])):!1,in:(t,e,n)=>{if(t){const o=t[e];return n.indexOf(o)>-1}return!1},notEqual:(t,e,n)=>t?String(n).split(",").findIndex(r=>r===String(t[e]))===-1:!1},Eo={equal:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):o===r}return!1},notEqual:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?!0:o!==r}return!1},greaterThan:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r>o}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r>=o}return!1},lessThan:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r<o}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r<=o}return!1}},ko=new Map([["boolean",To],["datetime",Mo],["enum",_o],["number",Eo],["text",Fo]]);function Io(t,e){const n=i.ref([]),o=new Map,{loadConditionGroup:r}=_e.useCondition();function l(M,b){switch(M){case"check-box":return new _e.CheckBoxValue({value:b});case"combo-list":return new _e.ComboListValue({value:b});case"combo-lookup":return new _e.ComboLookupValue({value:b});case"input-group":return new _e.TextValue({value:b});case"date-picker":return new _e.DatePickerValue({value:b});case"date-range":return new _e.DateRangeValue({value:b});case"datetime-picker":return new _e.DateTimePickerValue({value:b});case"datetime-range":return new _e.DateRangeValue({value:b});case"lookup":return new _e.TextValue({value:b});case"month-picker":return new _e.MonthPickerValue({value:b});case"month-range":return new _e.MonthRangeValue({value:b});case"number-range":return new _e.NumberRangeValue({value:b});case"number-spinner":return new _e.NumberSpinnerValue({value:b});case"radio-group":return new _e.RadioGroupValue({value:b});default:return new _e.TextValue({value:b})}}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"]]),s=new Map([["boolean",_e.CompareType.In],["date",_e.CompareType.Equal],["datetime",_e.CompareType.Equal],["number",_e.CompareType.Equal],["string",_e.CompareType.Equal],["text",_e.CompareType.Equal],["enum",_e.CompareType.In],["reference",_e.CompareType.Equal]]);function u(){return n.value.map(M=>({filterField:M.fieldCode,compare:M.compareType||M.compareType===0?M.compareType:_e.CompareType.Like,value:M.value.value,relation:M.relation||M.relation===0?M.relation:1,expresstype:_e.ValueType.Value,lbracket:M.lBracket||null,rbracket:M.rBracket||null}))}function d(M){var v;const b=M.dataType||"string";return((v=M.editor)==null?void 0:v.type)||a.get(b)||"text"}function f(M){var T,x,O,W,P;const b=`field_filter_${M.field}`,v=Date.now(),g=M.field,C=((T=M.column)==null?void 0:T.title)||"",I=((x=M.column)==null?void 0:x.dataType)||"string",$=s.get(I)||_e.CompareType.Equal,E=((W=(O=M.column)==null?void 0:O.editor)==null?void 0:W.type)||a.get(I)||"text",B=l(E,(P=M.column)==null?void 0:P.filter),V=E==="lookup"||E==="combo-lookup"?_e.ValueType.SmartHelp:E==="combo-list"?_e.ValueType.Enum:_e.ValueType.Value;o.set(b,{id:b,fieldCode:g,fieldName:C,compareType:$,valueType:V,value:B,conditionId:v}),n.value=Array.from(o.values())}function c(M){const b=`field_filter_${M.field}`;o.delete(b),n.value=Array.from(o.values())}function m(M){o.delete(M),n.value=Array.from(o.values())}function p(){o.clear(),n.value=[]}function h(M){const{valueType:b}=M.value,v=M.compareType||"0",g=xo[Number(v)];return ko.get(b)[g]}function y(M){const b=M.relation===2?0:1,v=M.items.map(C=>{const I=h(C);return E=>I(E,C.fieldCode,C.value.getValue())}),g=M.children&&M.children.length?M.children.map(C=>y(C)):[];return{relation:b,filterFunctions:v,children:g}}function F(){const M=r(n.value);return y(M)}function _(M,b){const v=b.filterFunctions.map(C=>C(M)),g=b.children.map(C=>_(M,C));return b.relation===1?v.every(C=>C)&&g.every(C=>C):v.includes(!0)||g.includes(!0)}function S(M){const b=F();return _(M,b)}function w(M){e.emit("filterChanged",M)}return{addColumnFilter:f,apply:S,clearCondition:p,conditions:n,getFilterEditorType:d,removeColumnFilter:c,removeCondition:m,filterFromServer:w,createFilterConditions:u}}function Vo(t){i.ref(t.selection.showCheckbox||!1);const e=i.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),n=i.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),o=i.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.parentIdField)||"parent"}),r=i.computed(()=>t.hierarchy&&t.selection.showCheckbox),l=i.computed(()=>(t.treeNodeIconsData.fold||t.iconField)&&t.showTreeNodeIcons);return{collapseField:e,hasChildrenField:n,parentIdField:o,shouldShowCheckBox:r,shouldShowIcon:l}}function Po(t,e,n,o,r,l,a,s,u){var vt;const{dataView:d,visibleDataItems:f}=e,{getVisualData:c,maxVisibleRowIndex:m,minVisibleRowIndex:p}=r,h=i.computed(()=>o.value.primaryColumnsWidth),y=i.computed(()=>o.value.leftColumnsWidth),F=i.computed(()=>o.value.rightColumnsWidth),_=((vt=t.rowOption)==null?void 0:vt.height)||28,S=i.ref(0),w=i.ref(0);let M=0,b=l.value-1;const v=i.ref(0),g=i.ref(0),C=i.ref(0),I=i.ref(t.virtualized),$=24,E=1.5;let B=null;function V(){const te=f.value;if(te.length<=0)return 0;const ae=m.value<te.length?te[m.value]:te[te.length-1];return ae.__fv_data_position__>te.length*_?te.length*_:(ae.__fv_data_position__||0)+(ae.__fv_data_height__||0)+Math.max(te.length-1-m.value,0)*_}const T=i.computed(()=>{const te=V();f.value;let ae=g.value/Math.max(te,g.value),fe=Math.floor(ae*g.value);for(;g.value>0&&fe<$;)ae*=E,fe=Math.floor(ae*g.value);return fe}),x=i.computed(()=>Math.floor(C.value/Math.max(h.value,C.value)*v.value)),O=0,W=0,P=i.computed(()=>v.value-(y.value+h.value+F.value+s.value));function R(te){const fe=Math.floor(te/_)+1,Pe=f.value;return Pe.length>fe?Pe[fe].__fv_visible_index__-1:0}function A(te,ae,fe){let Pe=te,Re=ae;const Ue=ae-te+1;if(Ue<a+l.value+a){const Ze=a+l.value+a-Ue,dt=ae+Ze<=fe,nt=0+Ze<=te;if(dt)Re+=Ze,b=Re;else if(nt)Pe-=Ze,M=Pe;else{const ot=fe-ae,k=Ze-ot;Re=Math.min(ae+ot,fe),Pe=Math.max(te-k,0)}}return{actualStart:Pe,actualEnd:Re}}function N(te){var ot,k;const ae=f.value;if(!ae.length){n.value=[];return}const fe=(ot=t.pagination)!=null&&ot.enable?0:Math.max(M-a,0),Pe=ae[ae.length-1].__fv_visible_index__,Re=(k=t.pagination)!=null&&k.enable?ae.length-1:Math.min(b+a,Pe),{actualStart:Ue,actualEnd:Ze}=A(fe,Re,Pe),dt=ae[Ue-1],nt=c(Ue,Ze,dt,te);nt.length&&(n.value=[...nt])}const D=i.computed(()=>V()>g.value),Z=i.computed(()=>Math.floor(h.value)>C.value);function ee(te,ae){let fe=te;const Pe=fe>O,Re=D.value;Re&&fe<g.value-ae&&(fe=g.value-ae),(!Re||Pe)&&(fe=O),S.value!==fe&&(S.value=fe)}function Y(){I.value&&(M=R(Math.abs(S.value)),b=M+l.value-1,(M<p.value||b>m.value-a/2)&&N())}function ie(te){let ae=S.value+te;ae>O&&(ae=O);const fe=V();ee(ae,fe),Y()}function z(te){if(!Z.value){w.value=0;return}let ae=w.value+te;ae>W&&(ae=W),ae<P.value&&(ae=P.value),w.value!==ae&&(w.value=ae)}function q(){Math.abs(w.value)+C.value>h.value&&(w.value=Math.min(C.value-h.value,0))}function L(){S.value=0,M=0,b=l.value-1,N()}function U(){const te=V();ee(S.value,te)}i.watch([C,h],()=>{z(0)}),i.watch(g,(te,ae)=>{te!==ae&&te>=d.value.length*_&&ie(0)});function se(te){let{deltaX:ae}=te,fe=-1*te.deltaY;return typeof ae>"u"&&(ae=-1*te.wheelDeltaX/6),typeof fe>"u"&&(fe=te.wheelDeltaY/6),te.deltaMode&&te.deltaMode===1&&(ae*=10,fe*=10),te.shiftKey?{deltaY:-fe,deltaX:-ae}:{deltaX:ae,deltaY:fe}}function he(te){if(t.disabled||!D.value||te.target.tagName==="TEXTAREA")return;te.preventDefault(),te.stopPropagation();const{deltaX:ae,deltaY:fe}=se(te);ie(fe),z(ae)}const me=i.computed(()=>({height:`${d.value.length*_}px`,width:`${y.value}px`,transform:`translateY(${S.value}px)`})),de=i.computed(()=>({transform:`translateY(${S.value}px)`})),Se=i.computed(()=>({height:`${(t.autoHeight?f.value:d.value).length*_}px`,width:`${h.value}px`,transform:`translate(${w.value}px, ${S.value}px)`})),Ve=i.computed(()=>({transform:`translate(${w.value}px, ${S.value}px)`})),ge=i.computed(()=>({height:`${d.value.length*_}px`,width:`${F.value}px`,transform:`translateY(${S.value}px)`})),He=i.computed(()=>({transform:`translateY(${S.value}px)`})),H=i.computed(()=>({height:`${d.value.length*_}px`,width:`${s.value}px`,transform:`translateY(${S.value}px)`})),K=i.computed(()=>({width:`${y.value}px`})),ne=i.computed(()=>({transform:`translateX(${w.value}px)`})),xe=i.computed(()=>({width:`${F.value}px`})),Ee=i.computed(()=>{const te=V();return ee(S.value,te),S.value/(g.value-te)*(g.value-T.value)}),ze=i.computed(()=>({width:"8px",height:`${T.value}px`,top:`${Ee.value}px`,backgroundColor:"#cccccc !important"})),Ye=i.computed(()=>w.value/P.value*(v.value-x.value)),Qe=i.computed(()=>({height:"8px",width:`${x.value}px`,left:`${Ye.value}px`,backgroundColor:"#cccccc !important"})),Xe=i.ref(!1),X=i.ref(-1),pe=i.ref(-1),Ne=i.ref();function Fe(te){if(Xe.value&&pe.value!==-1){const ae=pe.value-te.pageX,fe=v.value-x.value;if(Math.abs(ae)<=fe){const Pe=ae/(C.value-x.value)*(h.value-C.value);z(Pe),pe.value=te.pageX}}}function Ke(te){if(Xe.value&&X.value!==-1){const ae=X.value-te.pageY,fe=V(),Pe=fe-T.value;if(Math.abs(ae)<=Pe){const Re=ae/(g.value-T.value)*(fe-g.value);ie(Re),X.value=te.pageY}}}function st(te){Xe.value=!1,X.value=-1,pe.value=-1,document.removeEventListener("mouseup",st),B&&(document.removeEventListener("mousemove",B),B=null),document.body.style.userSelect="",Ne.value&&(Ne.value.style.opacity=null)}function Ft(te,ae,fe){var Ue;Xe.value=!0;const Pe=(Ue=te.target)==null?void 0:Ue.parentElement;Pe&&(Pe.style.opacity="1",Ne.value=Pe);const Re=fe==="horizontal"?Fe:je.throttle(Ke,50);B||(B=Re),fe==="vertical"&&(X.value=te.pageY),fe==="horizontal"&&(pe.value=te.pageX),ae.value&&(ae.value,document.addEventListener("mousemove",B),document.addEventListener("mouseup",st),document.body.style.userSelect="none")}function yt(te){const ae=d.value.length*_-g.value;let fe=te*_;fe>=ae&&(fe=ae),ie(-fe-S.value)}function Tt(){yt(d.value.length)}function Mt(te){ie(te-S.value)}return{dataGridWidth:v,fitHorizontalScroll:q,gridDataStyle:Se,gridHeaderColumnsStyle:ne,gridMergedDataStyle:Ve,gridSideStyle:H,horizontalScrollThumbStyle:Qe,leftFixedGridDataStyle:me,leftFixedGridHeaderColumnsStyle:K,leftFixedGridMergedDataStyle:de,offsetX:w,offsetY:S,onMouseDownScrollThumb:Ft,onWheel:he,reCalculateVisualDataRows:N,resetScroll:L,rightFixedGridDataStyle:ge,rightFixedGridHeaderColumnsStyle:xe,rightFixedGridMergedDataStyle:He,shouldShowHorizontalScrollbar:Z,shouldShowVirticalScrollbar:D,updateVirticalScroll:U,updateVisibleRowsOnLatestVisibleScope:Y,verticalScrollThumbStyle:ze,viewPortWidth:C,viewPortHeight:g,scrollToBottom:Tt,scrollToRowByIndex:yt,scrollTo:Mt}}function No(t){var l;const{isUndefined:e}=oe.useCommonUtils(),n=((l=t.rowOption)==null?void 0:l.height)||28;function o(a,s){const u=a.pre;if(u){let d=u.__fv_data_position__,f=u.__fv_data_height__;(e(d)||t.virtualized&&t.hierarchy&&u.__fv_visible_index__*n!==d)&&(d=u.__fv_visible_index__*n),e(f)&&(f=n);const c=a.visible?d+f:u.__fv_data_position__;a.top=c,s.__fv_data_position__=c}else a.top=0,s.__fv_data_position__=0}function r(a,s,u){if(a&&!s.ref){s.ref=a;const d=s.parent;s.cellHeight!==a.offsetHeight&&(s.cellHeight=a.offsetHeight),s.cellHeight&&s.cellHeight>(d.height||0)&&(d.height=s.cellHeight,u.__fv_data_height__=d.height),o(d,u)}!a&&s.ref&&(s.ref=a)}return{updateRowPosition:o,updateVisualInfomation:r}}function Bo(){function t(e,n){var a,s;if(!n.data||!n.data.length)return"";const o=Object.prototype.hasOwnProperty.call(n,"valueField")&&n.valueField||"value",r=Object.prototype.hasOwnProperty.call(n,"textField")&&n.textField||"name";if(e!=null&&e.includes(",")){const u=e.split(",");if(!n.data.filter(m=>u.includes(m[o])).length)return"";const f=(a=n.data)==null?void 0:a.reduce((m,p)=>(m[p[o]]=p,m),{});return u.map(m=>{var p;return(p=f[m])==null?void 0:p[r]}).join(",")||e}const l=(s=n.data)==null?void 0:s.find(u=>u[o]===e);return(l==null?void 0:l[r])||e||""}return{renderEnumColumn:t}}function Oo(){function t(e,n){return e?n==null?void 0:n.trueText:n==null?void 0:n.falseText}return{renderText:t}}function $o(){const{formatTo:t}=oe.useDateFormat();function e(o,r){if(o){let l="yyyy-MM-dd";if(typeof r=="string"?l=r:typeof r=="object"&&(l=r.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof r=="object"&&r.dateRange){const a=r.dateRangeDatesDelimiter||"~";let[s,u]=o.split(a);return s=t(s,l),u=t(u,l),s+a+u}return t(o,l)}return o}function n(o,r){const l=r.dateFormat||"yyyy-MM-dd";return t(o,l)}return{renderDateColumn:n,renderDateTimeColumn:e}}function jo(){const{formatTo:t}=oe.useNumberFormat();function e(n,o){const r={precision:o.precision,prefix:o.prefix||"",suffix:o.suffix||"",decimalSeparator:o.decimal||".",groupSeparator:o.thousand||""};return t(n,r)||n}return{renderNumberColumn:e}}function Ro(){function t(e,n){if(e){const o={};return n!=null&&n.width&&(o.width=`${n.width}px`),n!=null&&n.height&&(o.height=`${n.height}px`),i.createVNode("img",{src:e,style:o},null)}return e}return{renderImageColumn:t}}function Ao(){const{locale:t}=ct.useI18n();function e(n,o){return(n==null?void 0:n[t.value||"zh-CHS"])||""}return{renderMultilingualColumn:e}}function Lo(){const{renderText:t}=Oo(),{renderEnumColumn:e}=Bo(),{renderNumberColumn:n}=jo(),{renderDateColumn:o,renderDateTimeColumn:r}=$o(),{renderImageColumn:l}=Ro(),{renderMultilingualColumn:a}=Ao();function s(f){return typeof f=="boolean"?f.toString():f}function u(f,c,m){return c.customFormat?c.customFormat(f,m.raw):s(f)}function d(f,c,m){const{column:p}=f,h=oe.resolveField(c.raw,p.field),y=m.options||m;return m.type===rt.NONE?s(h):m.type===rt.CUSTOM?u(h,m,c):m.type===rt.ENUM?e(h,y):m.type===rt.NUMBER?n(h,y):m.type===rt.BOOLEAN?t(h,y):m.type===rt.DATE?o(h,y):m.type===rt.DATE_TIME?r(h,m):m.type===rt.IMAGE?l(h,y):m.type===rt.MULTI_LINGUAL?a(h,y):s(h)}return{renderFormatColumn:d}}function Ho(t,e,n){var _;const{isUndefined:o}=oe.useCommonUtils(),r=i.ref(t.mergeCell);(_=i.ref(t.rowOption).value)!=null&&_.wrapContent;const{updateVisualInfomation:a}=n,{renderCommandColumn:s}=mo(t),{renderFormatColumn:u}=Lo();function d(S,w,M,b,v,g=1){const C={colSpan:g,rowSpan:1,index:M,field:S,data:oe.resolveField(b,S),editingData:oe.resolveField(b,S),parent:v,mode:w,align:"left",valign:"start",showEllipsis:!0,getEditor:I=>I.data,setRef:I=>a(I,C,b),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return C}function f(S,w,M){return S.getEditor=b=>e.getEditor(b,w,b.parent),S.setRef=b=>a(b,S,M),S.update=b=>{b!==void 0&&(S.editingData=b)},S.accept=()=>{oe.setFieldValue(S.editingData,M,w.field),S.data=oe.resolveField(M,w.field)},S.cancel=()=>{S.editingData=S.data},S.updateData=b=>{oe.setFieldValue(oe.resolveField(b,w.field),M,w.field),S.data=oe.resolveField(M,w.field),S.editingData=oe.resolveField(M,w.field)},S}function c(S,w){w.dataType==="commands"?S.formatter=(M,b)=>w.formatter?w.formatter(S,b):s(S,b):w.formatter&&(S.formatter=(M,b)=>typeof w.formatter=="function"?w.formatter(M,b):u(S,b,w.formatter))}function m(S,w,M){const b=w&&w.data[M];if(b&&b.data===S.data){const g=b&&b.spannedBy||b;g.rowSpan++,g.spanned=g.spanned||[],g.spanned.push(S),S.colSpan=0,S.rowSpan=0,S.spannedBy=g}}function p(S,w,M){r.value&&m(S,w,M.field)}function h(S,w){w.showEllipsis!==void 0&&(S.showEllipsis=w.showEllipsis),S.showTips=o(w.showTips)?!0:w.showTips,S.column=w,S.align=w.align||"left",S.valign=w.valign||"middle",S.mode=t.editable?Le.editable:Le.readonly}function y(S,w,M,b){h(S,w),f(S,w,b),c(S,w),p(S,M,w)}function F(S,w,M,b,v){const g=t.editable?Le.editable:Le.readonly,C=d(S.field,g,w,M,b);return y(C,S,v,M),C}return{createCellByColumn:F,createCellByField:d,updateCellByColumn:y}}function Do(t,e,n,o,r,l,a){var w,M;const s=i.ref(t.rowOption),u=((w=s.value)==null?void 0:w.height)||28,d=((M=s.value)==null?void 0:M.wrapContent)||!1,{idField:f}=r,{collapseField:c}=o,{updateRowPosition:m}=l,{createCellByColumn:p}=a,h=(b,v,g,C)=>{oe.setFieldValue(oe.resolveField(b,C),v,C),g.data[C].data=oe.resolveField(v,C),g.data[C].editingData=oe.resolveField(v,C)};function y(b,v,g,C,I,$){var Z,ee,Y;const{__fv_data_grid_group_field__:E,__fv_data_grid_group_value__:B,__fv_data_index__:V}=g,T=g.__fv_data_grid_group_layer__||(g.__fv_parents__?(Z=g.__fv_parents__)==null?void 0:Z.size:0)||0,x=typeof g.parent=="number"?Number(g.parent):-1,O=g.__fv_data_grid_group_collapse__||g[c.value],W=g.__fv_visible__===void 0?!0:g.__fv_visible__,P=g.__fv_checked__,R=g.__fv_indeterminate__,A=g.__fv_disabled__||g[((ee=t.rowOption)==null?void 0:ee.disabledField)||"disabled"],N=t.hierarchy&&e.isVisibleInTree(g),D={collapse:O,data:{},dataIndex:V,groupField:E,groupValue:B,layer:T,index:v,parentIndex:x,pre:C,top:$,type:b,raw:g,checked:P,disabled:A,indeterminate:R,setRef:ie=>{D.ref=ie},visible:W&&N||W&&!t.hierarchy,status:it.initial,updateCell:(ie,z)=>{h(ie,g,D,z),e.updateSummary()},updateCells:(ie,z)=>{z.forEach(q=>{h(ie,g,D,q)})}};return C||(g.__fv_data_position__=0),d||(D.height=u,g.__fv_data_height__=D.height,m(D,g)),(Y=s.value)!=null&&Y.customRowStatus&&(s.value.customRowStatus(D),g.__fv_disabled__=D.disabled),D}function F(b,v,g,C,I,$){const E=y(Ct.data,I,v,g,C,$);return b.forEach((B,V)=>{E.data[B.field]=p(B,V,v,E,C)}),E}function _(b,v,g,C,I){return Object.assign(b,{index:v,dataIndex:g,top:C,pre:I})}function S(b,v,g,C,I,$){const E=b.__fv_data_index__,B=b[f.value],V=n.getEditingSnapshot(B);return V===null?F($,b,v,g,C,I):_(V,C,E,I,v)}return{createEmptyRow:y,createNewRowFromDataItem:F,renderDataRow:S}}function Wo(t,e,n,o){const r=i.ref(t.summary),{idField:l}=e,{createCellByField:a}=n,{createEmptyRow:s}=o,u=i.computed(()=>{const m=r.value;return(m==null?void 0:m.groupFields)||[]}),d=i.computed(()=>{const m=r.value;return m&&m.enable&&m.groupFields&&m.groupFields.length>0});function f(m,p,h,y){if(d.value){const F=m.data[p];let _=F.colSpan;const S=u.value.reduce((w,M)=>(w.set(M,!0),w),new Map);y.reduce((w,M,b)=>{if(S.has(M.field)){const v=a(M.field,Le.readonly,b,h,m);m.data[M.field]=v,_-1>b&&(_=b)}return w},m),F.colSpan=_}}function c(m,p,h,y,F,_,S){const w=m.__fv_data_grid_group_field__,M=s(Ct.group,y,m,p,h,F);return M.data[l.value]=a(l.value,Le.readonly,-1,m,M,0),M.data[w]=a(w,Le.readonly,1,m,M,_.length),f(M,w,m,_),M}return{renderGroupRow:c}}function qo(t,e,n,o){const{idField:r}=e,{createCellByField:l}=n,{createEmptyRow:a}=o;function s(u,d,f,c,m,p,h){const y=u.__fv_data_grid_group_field__,F=a(Ct.summary,c,u,d,f,m);return F.data[r.value]=l(r.value,Le.readonly,-1,u,F),F.data[y]=l(y,Le.readonly,1,u,F,p.length),F}return{renderSummaryRow:s}}function zo(t,e,n,o,r){var A;const{idField:l}=n,a=i.ref(t.editable),s=i.ref(t.editOption),u=i.ref(((A=t.rowOption)==null?void 0:A.wrapContent)||!1),{onClickRow:d,onClickRowExcludeDblclick:f}=o,c=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let m,p,h,y,F;function _(N){return p&&p.raw[l.value]===N?p:null}const S=i.reactive({});function w(N,D,Z={}){N.mode=Le.editing,m=N,p=D,h=oe.resolveField(D==null?void 0:D.raw,N.field),y=Z;for(const ee in S)delete S[ee]}function M(N){N.accept(),N.mode=Le.editable,m=null;const D={};p&&(Object.keys(p).forEach(Z=>{D[Z]=p==null?void 0:p[Z]}),p=null),e.emit("endEditCell",{cell:N,row:D,newValue:oe.resolveField(D==null?void 0:D.raw,N.field),oldValue:h,column:y,editor:S})}function b(N){const D=Promise.resolve(!0);return N?D.then(()=>je.isUndefined(t.beforeEndEditCell)?!0:typeof t.beforeEndEditCell=="function"?t.beforeEndEditCell({cell:N,row:p,newValue:N.editingData,oldValue:h}):()=>!0).then(Z=>(Z&&(M(N),p&&(p=null)),Z)):D}function v(N){if(F&&F!==N.target){F=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const Z=N.target;if(!(Z!=null&&Z.closest(".popover"))){if(N instanceof MouseEvent||N.key!=="Enter"){const ee=Z.closest(".fv-grid-cell");if(m&&m.ref&&m.ref===ee)return}b(m).then(ee=>{ee&&document.body.removeEventListener("click",v,!0)})}}function g(N,D,Z){return Promise.resolve().then(()=>{var Y;const ee=(Y=Z.editor)==null?void 0:Y.readonly;return!je.isUndefined(t.beforeEditCell)&&typeof t.beforeEditCell=="function"?t.beforeEditCell({row:N,cell:D,rawData:N.raw,column:Z}):!ee}).then(ee=>{ee&&(w(D,N,Z),document.body.removeEventListener("click",v,!0),document.body.addEventListener("click",v,!0))})}function C(N,D,Z,ee={}){N.stopPropagation(),f(N,Z),a.value&&s.value.editMode==="cell"&&D.mode===Le.editable&&b(m).then(()=>{m||g(Z,D,ee)})}function I(N,D,Z,ee={}){N.stopPropagation(),d(N,Z),a.value&&s.value.editMode==="cell"&&D.mode===Le.editable&&b(m).then(()=>{m||g(Z,D,ee)})}function $(N){N.stopPropagation(),F=N.target}function E(N){N.stopPropagation(),F&&(F=null)}function B(N){Object.values(N.data).filter(D=>D.mode===Le.editable&&D.field!=="__commands__").forEach(D=>{D.mode=Le.editing}),N.status=it.editing,p=N}function V(N,D){Object.values(N.data).filter(Z=>Z.mode===Le.editing).forEach(Z=>{D?Z.accept():Z.cancel(),Z.mode=Le.editable}),N.status=it.initial,p===N&&(p=null)}function T(N){a.value&&s.value.editMode==="row"&&p!==N&&(p&&V(p,!1),B(N))}function x(N){V(N,!0),N.status=it.initial}function O(N){V(N,!1),N.status=it.initial}function W(N,D,Z){const ee=D.dataType,Y=D.editor||{type:c.get(ee)||"input-group"};return!u.value&&Y.type==="text"&&(Y.type="input-group"),Y?(Y.type==="input-group"&&(Y.textAlign=D.align!=="center"&&D.align!=="right"?"left":D.align,Y.updateOn="change"),Y.type==="number-spinner"&&(Y.updateOn="change"),Y.type==="textarea"&&(Y.lineBreak="alt enter"),Y.context={rowData:Z.raw,column:D,cell:N,editor:S},Y.readonly=!1,i.createVNode(eo.FDynamicFormInput,{focusOnCreated:t.focusOnEditingCell,selectOnCreated:t.selectOnEditingCell,editor:Y,modelValue:N.editingData,"onUpdate:modelValue":ie=>N.editingData=ie,id:D.id,onMousedown:ie=>$(ie),onMouseup:ie=>E(ie)},null)):N.data}function P(){b(m)}i.watch(()=>t.editable,()=>{a.value=t.editable}),i.watch(()=>{var N;return(N=t.editOption)==null?void 0:N.editMode},N=>{s.value.editMode=N});function R(){m=null,p=null,y=null,F=null,document.body.removeEventListener("click",v,!0)}return{clear:R,onClickOutOfCell:v,onClickCell:I,onClickCellByKeyboard:C,onEditingRow:T,acceptEditingRow:x,cancelEditingRow:O,getEditingSnapshot:_,getEditor:W,endEditCell:P,onMousedownCell:$,onMouseupCell:E}}function Go(t){const e=i.ref(t.idField);function n(o){if(o&&o.length){const r=o[0];Object.keys(r).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:n}}function Uo(t,e,n,o){const{idField:r}=o,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:s,selectItem:u,selectedValues:d,toggleSelectItem:f,updateSelectAllStatus:c,enableSelectRow:m,multiSelectMode:p,isSingleSelect:h}=n,y=i.ref(0),F=i.ref(-1);function _(T){l.value=T}function S(T){return m.value&&(s.value?d.value.includes(T.raw[r.value]):T.raw[r.value]===l.value)}function w(T,x){var P;const O=x??T.dataIndex,W={"fv-grid-row":T.type===Ct.data,"fv-grid-group-row":T.type===Ct.group,"fv-grid-summary-row":T.type===Ct.summary,"fv-grid-row-hover":O===F.value,"fv-grid-row-selected":S(T),"fv-grid-row-odd":O%2>0,"fv-grid-row-even":O%2===0,"fv-grid-disabled":T.disabled};if((P=t.rowOption)!=null&&P.customRowStyle){const R=t.rowOption.customRowStyle(T.raw)||{};return Object.assign({},W,R.class||{})}return W}function M(T){var O;const x={"fv-grid-cell":!0};if((O=t.rowOption)!=null&&O.customCellStyle){const W=t.rowOption.customCellStyle(T)||{};return Object.assign({},x,W.class||{})}return x}function b(T){var O;const x={"fv-grid-hierarchy-cell":!0};if((O=t.rowOption)!=null&&O.customCellStyle){const W=t.rowOption.customCellStyle(T)||{};return Object.assign({},x,W.class||{})}return x}function v(T,x){var P,R;if(s.value&&!(x!=null&&x.shiftKey)||h.value){(P=t.selection)!=null&&P.keepSelectingOnClick?u(T):f(T,(R=t.selection)==null?void 0:R.keepSelectingOnClick),c();return}if(s.value&&(x==null?void 0:x.shiftKey)||a.value){f(T),c();return}_(T.raw[r.value])}function g(T,x){x.disabled||(v(x,T),e.emit("clickRow",x.index,x.raw))}function C(T){y.value+=1,setTimeout(()=>{y.value===1&&e.emit("clickRow",T.index,T.raw),y.value=0},250),y.value>1&&(e.emit("doubleClickRow",T.index,T.raw),y.value=0)}function I(T,x){x.disabled||(v(x,T),C(x))}function $(T){T.disabled||C(T)}function E(T,x){}function B(T,x){}function V(T,x){var P;const O=x??T.dataIndex,W={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":O===F.value,"fv-grid-sidebar-row-selected":S(T),"fv-grid-sidebar-row-odd":O%2>0,"fv-grid-sidebar-row-even":O%2===0,"d-flex":!0,"align-items-center":!0};if((P=t.rowOption)!=null&&P.customRowStyle){const R=t.rowOption.customRowStyle(T.raw)||{};return Object.assign({},W,R.class||{})}return W}return{activeRowById:_,clickRowItem:$,selectRow:v,gridCellClass:M,gridHierarchyCellClass:b,gridRowClass:w,onClickRow:I,onClickRowExcludeDblclick:g,onMouseoverRow:E,sidebarRowClass:V,onMouseoutRow:B}}function Yo(t,e,n,o,r){const{idField:l}=n,{dataView:a,getSelectionItems:s}=e,u=i.ref(""),d=i.computed(()=>t.selection.enableSelectRow),f=i.ref(t.selection.multiSelect??!1),c=i.ref(t.selection.multiSelectMode||"DependOnCheck"),m=i.ref(t.selection.showCheckbox),p=i.ref(t.selection.showSelectAll),h=i.ref(t.selectionValues||[]),y=i.computed(()=>t.selection.showSelection),F=i.computed(()=>{var H;return((H=t.selection)==null?void 0:H.keepSelectingOnPaging)===void 0?!0:t.selection.keepSelectingOnPaging}),_=i.ref(!!h.value.length&&o.value.length===h.value.length),S=i.ref(!!h.value.length&&o.value.length!==h.value.length);i.watch(()=>t.selection.showSelectAll,(H,K)=>{H!==K&&(p.value=H)});function w(){if(!F.value){const H=a.value.map(K=>K[l.value]);h.value=h.value.filter(K=>H.includes(K))}}function M(){const H=a.value.every(ne=>h.value.includes(ne[l.value])),K=a.value.every(ne=>!h.value.includes(ne[l.value]));H&&(_.value=!0,S.value=!1),K&&(_.value=!1,S.value=!1),!H&&!K&&(_.value=!1,S.value=!0)}function b(){return s(h.value)}function v(){const H=o.value.reduce((ne,xe)=>(ne.set(xe.raw[l.value],xe),ne),new Map);return h.value.map(ne=>H.get(ne)).filter(ne=>!!ne)}function g(H){var ne;const K=H.raw.__fv_children_index__;if(K&&K.length){const xe=K.map(Ee=>a.value[Ee]);(ne=h.value)!=null&&ne.length&&xe.some(ze=>!h.value.includes(ze[l.value]))&&(H.indeterminate=!0,H.raw.__fv_indeterminate__=!0)}}const C=i.computed(()=>d.value&&f.value),I=i.computed(()=>d.value&&!f.value&&!m.value),$=i.computed(()=>!!t.hierarchy),E=i.computed(()=>{const H=m.value&&c.value==="DependOnCheck";return C.value&&H}),B=i.computed(()=>C.value&&!m.value),V=i.computed(()=>C.value&&m.value&&c.value==="OnCheckAndClick");i.computed(()=>V.value);function T(){const H=s(h.value);r.emit("selectionChange",H)}function x(H){r.emit("unSelectItem",H)}function O(H){r.emit("selectItem",H)}function W(){const H=o.value.filter(ne=>ne.indeterminate).map(ne=>ne.raw[l.value]);o.value.forEach(ne=>{ne.checked=!1,ne.indeterminate=!1,ne.raw.__fv_checked__=!1,ne.raw.__fv_indeterminate__=!1}),v().forEach(ne=>{ne.checked=!0,ne.raw.__fv_checked__=!0}),H.forEach(ne=>{const xe=o.value.find(Ee=>Ee.raw[l.value]===ne);g(xe)})}i.watch(()=>o.value,()=>{W()}),i.watch(()=>t.selectionValues,H=>{h.value=H,W()},{immediate:!0}),i.watch(()=>t.selection,H=>{f.value=!!H.multiSelect,c.value=H.multiSelectMode||"DependOnCheck",m.value=!!H.showCheckbox});const P=i.computed(()=>!f.value);function R(H){return H.raw[l.value]}function A(H){return h.value.findIndex(ne=>ne===R(H))}function N(){v().forEach(ne=>{ne.checked=!1}),s(h.value).forEach(ne=>{ne.__fv_checked__=!1}),h.value=[],u.value="",M()}function D(H){const K=H;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ne=new Set(h.value);ne.add(K[l.value]),h.value=Array.from(ne.values()),w()}function Z(H){const K=H;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,h.value=h.value.filter(ne=>ne!==K[l.value]),w()}function ee(H){const K=H.raw;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ne=new Set(h.value);ne.add(K[l.value]),h.value=Array.from(ne.values()),w(),H.checked=!0,H.indeterminate=!1}function Y(H){const K=H.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,h.value=h.value.filter(ne=>ne!==K[l.value]),w(),H.checked=!1,H.indeterminate=!1}function ie(H){ee(H),u.value=H.raw[l.value]}function z(H){Y(H),u.value=""}function q(H){H.__fv_checked__=!1,H.__fv_indeterminate__=!0,h.value=h.value.filter(K=>K!==H[l.value]),w()}function L(H){const K=H.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!0,h.value=h.value.filter(ne=>ne!==K[l.value]),w(),H.checked=!1,H.indeterminate=!0}function U(H){P.value&&N(),H.checked?Y(H):ee(H),T()}function se(H,K=!0){const ne=H.checked;P.value&&N(),K?H.checked?z(H):ie(H):ne?z(H):ie(H),T(),H.checked?O(H):x(H)}function he(H){H.raw[l.value]!==u.value&&(N(),ie(H),T())}function me(H){const K=o.value.find(ne=>ne.raw[l.value]===H);if(K)he(K);else{const ne=a.value.find(xe=>xe[l.value]===H);ne&&D(ne)}}function de(H){const K=o.value.filter(Ee=>H.includes(Ee.raw[l.value])),ne=K.map(Ee=>Ee.raw[l.value]),xe=a.value.filter(Ee=>{const ze=Ee[l.value];return!ne.includes(ze)&&H.includes(ze)});(K.length||xe.length)&&I.value&&(u.value=H[0]),K.forEach(Ee=>{ie(Ee)}),xe.forEach(Ee=>{D(Ee)}),T()}function Se(H){for(const K of H){if(!h.value.includes(K))continue;const ne=o.value.find(xe=>xe.raw[l.value]===K);if(ne)z(ne);else{const xe=a.value.find(Ee=>Ee[l.value]===K);xe&&Z(xe)}}h.value=h.value.filter(K=>!H.includes(K)),w()}function Ve(){o.value.forEach(H=>{ee(H)}),T()}function ge(){o.value.forEach(H=>{Y(H)}),T()}function He(){return o.value.find(H=>H.raw[l.value]===u.value)}return{clearSelection:N,currentSelectedDataId:u,enableMultiSelect:f,enableSelectRow:d,findIndexInSelectedItems:A,getSelectedItems:b,getSelectionRow:He,indeterminate:L,indeterminateDataItem:q,isSelectingHirarchyItem:$,multiSelectMode:c,multiSelectOnClickRow:V,multiSelectOnClickRowWithShift:B,multiSelectOnlyOnCheck:E,select:ie,selectAll:Ve,selectedValues:h,selectDataItem:D,selectItem:he,selectItemById:me,selectItemByIds:de,showCheckBox:m,showSelectAll:p,toggleSelectItem:se,toggleSelectItemWithoutRow:U,unSelect:z,unSelectAll:ge,unSelectDataItem:Z,unSelectItemByIds:Se,updateSelectAllStatus:M,selectAllStatus:_,indeterminateStatus:S,isSingleSelect:I,showSelection:y,keepSelectingOnPaging:F}}function Xo(t,e){var _,S;const{t:n}=ct.useI18n(),o=String(Date.now()),r=50,{showCheckBox:l,showSelectAll:a}=e,s=i.ref(((_=t.rowNumber)==null?void 0:_.enable)??!1),u=i.computed(()=>t.hierarchy&&l.value&&t.selection.enableSelectRow&&t.selection.multiSelect?!1:l.value),d=i.ref(s.value?((S=t.rowNumber)==null?void 0:S.width)??32:0),f=i.ref(u.value?r:0),c=i.computed(()=>{var w,M;return s.value?((w=t.rowNumber)==null?void 0:w.heading)==="序号"?n("datagrid.lineNumberTitle"):(M=t.rowNumber)==null?void 0:M.heading:""}),m=i.computed(()=>(u.value&&!t.hierarchy?Number(f.value):0)+(s.value?Number(d.value):0));i.watch(()=>t.rowNumber,w=>{w&&w.enable!==void 0&&(s.value=w.enable),w&&w.width!==void 0&&(d.value=w.width)});function p(w){return{top:`${w.top}px`,width:`${m.value}px`,height:`${w.height||""}px`}}const h=i.computed(()=>({width:`${m.value}px`}));function y(w){return`${o}_${w.type}_r_${w.index}_${w.refreshKey||""}`}function F(w){return`${o}_${w.type}_r_${w.index}_${w.refreshKey||""}`}return{showRowNumer:s,showSidebarCheckBox:u,sidebarCellPosition:p,sidebarCornerCellStyle:h,sidebarTitle:c,sidebarWidth:m,rowKey:F,cellKey:y}}const Zo={ascend:(t,e)=>t===e?0:t===!1?-1:1,decend:(t,e)=>t===e?0:t===!0?-1:1},Jo={ascend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),o=new Date(new Date(e).toLocaleDateString()).valueOf();return n===o?0:n<o?-1:1},decend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),o=new Date(new Date(e).toLocaleDateString()).valueOf();return n===o?0:n<o?1:-1}},Qo={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1},Ko={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1};function ei(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",Zo],["datetime-sorter",Jo],["numeric-sorter",Qo],["text-sorter",Ko]]);function o(a){const s=(a==null?void 0:a.dataType)||"string",u=e.get(s)||"text-sorter";return n.get(u)||(a==null?void 0:a.sorter)}function r(a){return o(a.column)}function l(a,s){const u=r(a),d=(a.status&qe.sortable)===qe.sortable&&(a.status&qe.sorted)===qe.sorted,f=(a.status&qe.ascending)===qe.ascending,c=(a.status&qe.descending)===qe.descending;if(d&&u){const m=f?u.ascend:c?u.decend:void 0;m?s.addSorter(a.field,{field:a.field,compare:m}):s.removeSorter(a.field)}else s.removeSorter(a.field)}return{getSorterByColumn:o,updateSorter:l}}const ti={id:{type:String,default:""},componentId:{type:String,default:""},type:{type:String,default:""},canDelete:{type:Boolean,default:!0},canMove:{type:Boolean,default:!0},canSelectParent:{type:Boolean,default:!0},customButtons:{type:Array,default:[]},customClass:{type:String,default:""},customStyle:{type:String,default:""},modelValue:{type:Object},ignore:{type:Boolean,default:!1}},ni={},oi={},ii={id:{type:String}},ri=i.defineComponent({name:"FDesignerPlaceholder",props:ii,emits:[],setup(t){const e=i.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),n=i.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>i.createVNode("div",{class:e.value,style:n.value,role:"alert","data-noattach":"true","data-position":"0"},[i.createTextVNode("拖拽组件到这里")])}}),mt=i.ref(0);function ai(t,e){const n=e.getBoundingClientRect(),o=t.getBoundingClientRect(),r=o.top>=n.top,l=o.top<=n.bottom;return r&&l}function li(t){const e=t.querySelector(".component-btn-group");if(!e)return;e.style.display="";const n=e.getBoundingClientRect();if(!(n.top===0&&n.left===0)){const o=e.querySelector("div");if(o){const r=o.getBoundingClientRect();o.style.top=n.top+"px";let l=n.left-r.width;const a=document.querySelector(".editorDiv");if(a){const s=a.getBoundingClientRect();l<s.left&&({left:l}=t.getBoundingClientRect())}o.style.left=l+"px"}}}function si(t){if(!window.scrollContainerList)return;const e=Array.from(window.scrollContainerList);if(e.length&&e.length===1){const n=e[0],o=document.querySelector(`[id=${n}]`);if(o&&o.contains(t))return o}}function an(t){if(!t)return;const e=t.getBoundingClientRect();if(e.width===0&&e.height===0)return;const n=t.querySelector(".component-btn-group");if(n){let o=!0;const r=si(t);if(r&&(o=ai(t,r)),!o){n.style.display="none";return}li(t)}}function ci(t){if(!t)return;let e;t.className.includes("dgComponentSelected")?e=t:e=t.querySelector(".dgComponentSelected"),e&&an(e)}function di(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!i.isVNode(t)}const Ut=i.defineComponent({name:"FDesignerItem",props:ti,emits:["selectionChange","dragEnd"],setup(t,e){const n=i.ref(`${t.modelValue.id}-component`),o=i.ref(t.canMove),r=i.ref(t.canDelete),l=i.ref(!1),a=i.ref(t.modelValue),s=i.ref(t.componentId||""),u=i.ref(""),d=i.ref(""),f=i.ref(t.customClass),c=i.ref(),m=i.inject("canvas-dragula"),p=i.ref(),h=i.inject("design-item-context");function y(A){A&&Object.assign(a.value,A)}const F={designerItemElementRef:c,componentInstance:p,schema:a.value,parent:h,setupContext:e,updateContextSchema:y};i.provide("design-item-context",F);const _=i.inject("useFormSchema"),S=i.inject("designer-host-service"),w=i.inject("external-container-id"),M=i.computed(()=>{var Z;const A=t.modelValue.appearance&&t.modelValue.appearance.class||"",N=((Z=p.value)==null?void 0:Z.getCustomButtons)&&p.value.getCustomButtons();let D={"farris-component":!0,"flex-fill":a.value.id==="root-component","position-relative":o.value&&r.value||(N==null?void 0:N.length),"farris-nested":l.value,"can-move":o.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return D[`farris-component-${a.value.type}`]=!0,D=oe.getCustomClass(D,A),D=oe.getCustomClass(D,d.value),D=oe.getCustomClass(D,f.value),D}),b=i.computed(()=>{const A={},N=t.modelValue.appearance&&t.modelValue.appearance.style||"";return N&&N.split(";").reduce((D,Z)=>{const[ee,Y]=Z.split(":");return D[ee]=Y,D},A),u.value&&u.value.split(";").reduce((D,Z)=>{const[ee,Y]=Z.split(":");return ee&&(D[ee]=Y),D},A),A});function v(A,N){var ee,Y,ie;if(A&&(A.preventDefault(),A.stopPropagation()),(ee=S==null?void 0:S.designerContext)!=null&&ee.checkCanDeleteControl&&!S.designerContext.checkCanDeleteControl(N))return;if(p.value.triggerBelongedComponentToDeleteWhenDeleted){const z=p.value.getBelongedComponentInstance(p);if(z&&z.parent){const q=i.ref(z==null?void 0:z.parent),L=q.value.contents.findIndex(U=>U.id===z.schema.id);(ie=(Y=q.value)==null?void 0:Y.contents)==null||ie.splice(L,1),mt.value++}return}p.value.onRemoveComponent(S);let D=h,Z=z=>z.id===N.id;if(N.type==="component"&&(D=h==null?void 0:h.parent,Z=z=>z.component===N.id),D&&D.schema.contents){const z=D.schema.contents.findIndex(Z);D.schema.contents.splice(z,1),mt.value++,e.emit("selectionChange")}}function g(A){return r.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:N=>{v(N,A)}},[i.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function C(){return o.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[i.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function I(){var N;const A=((N=p.value)==null?void 0:N.getCustomButtons)&&p.value.getCustomButtons();return A&&!!A.length&&A.map(D=>i.createVNode("div",{role:"button",class:`btn component-settings-button ${D.class||""}`,title:D.title,ref:D.id,onClick:Z=>D.onClick&&D.onClick(Z)},[i.createVNode("i",{class:D.icon},null)]))}function $(A){return i.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[i.createVNode("div",null,[g(A),C(),I()])])}function E(A,N,D,Z){e.emit("selectionChange",A,N,D,Z)}function B(){e.emit("dragEnd")}function V(A){let N;const D=A.type,Z=ni[D],ee=oi[D],Y=ee?ee(A):{};Y.customClass=t.ignore?Y.customClass:"",Y.componentId=s.value,Y.id=A.id;const ie=A.contents&&A.contents.length===0;return A.contents&&!!A.contents.length&&Z?i.createVNode(Z,i.mergeProps({ref:p},Y),di(N=A.contents.map(q=>i.createVNode(Ut,{key:q.id,modelValue:q,"onUpdate:modelValue":L=>q=L,componentId:s.value,onSelectionChange:E,onDragEnd:B},null)))?N:{default:()=>[N]}):Z?ie?i.createVNode(Z,i.mergeProps({ref:p},Y),{default:()=>[i.createVNode(ri,null,null)]}):i.createVNode(Z,i.mergeProps({ref:p},Y),null):i.createVNode("div",null,null)}function T(){const A=_.externalFormSchema.get(w);if(A!=null&&A.content)return A==null?void 0:A.content}function x(A){if(A.type==="component-ref"){const Z=(w?T():_==null?void 0:_.getFormSchema()).module.components.find(Y=>Y.id===A.component),ee=i.ref(Z);if(Z)return i.createVNode(Ut,{key:Z.id,modelValue:ee.value,"onUpdate:modelValue":Y=>ee.value=Y,componentId:Z.id,onSelectionChange:E,onDragEnd:B},null)}}i.watch([()=>t.modelValue,()=>t.componentId],([A,N])=>{a.value=A,n.value=`${A.id}-component`,N&&(s.value=N),i.triggerRef(c)},{deep:!0});function O(A){window.scrollContainerList||(window.scrollContainerList=new Set);const N=A.getAttribute("id");N&&window.scrollContainerList.add(N)}function W(A){const N=A==null?void 0:A.target;O(N),ci(N)}function P(){var A,N;if(c.value){(N=(A=a.value)==null?void 0:A.contents)!=null&&N.length&&c.value.addEventListener("scroll",W);const D=c.value.querySelector(".drag-container");D&&D.addEventListener("scroll",W)}}i.onMounted(()=>{if(c.value&&p.value&&p.value.schema){const A=c.value.querySelector(`[data-dragref='${p.value.schema.id}-container']`);m&&A&&m.attachComponents(A,a.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,r.value=p.value.canDelete!==void 0?p.value.canDelete:r.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,u.value=p.value.styles||"",d.value=p.value.designerClass||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=F),p.value.belongedComponentId=s.value,p.value.setComponentBasicInfoMap(S)}P(),mt.value++}),i.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",W)});function R(A){if(A&&(A.preventDefault(),A.stopPropagation()),w){const Z=document.getElementById(`${w}-design-item`);Z&&Z.click();return}let N=F.designerItemElementRef;const D=c.value;if(D){const Z=document.getElementsByClassName("dgComponentFocused");Z&&Z.length===1&&Z[0]===c.value||(Array.from(Z).forEach(Y=>Y.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(Y=>Y.classList.remove("dgComponentSelected")),D.classList.add("dgComponentFocused"),e.emit("selectionChange",a.value.type,a.value,s.value,p.value),p.value.getDraggableDesignItemElement&&(N=p.value.getDraggableDesignItemElement(F),N&&N.value&&N.value.classList.add("dgComponentSelected")))}an(N==null?void 0:N.value)}return()=>{const A=w?`${w}-`:"";return a.value.type==="component-ref"?x(a.value):i.createVNode("div",{id:`${A}${a.value.id}-design-item`,ref:c,class:M.value,style:b.value,onClick:R},[$(a.value),V(a.value)])}}});function ln(t,e,n,o,r="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:s}=n,{gridHeaderColumnsStyle:u,leftFixedGridHeaderColumnsStyle:d,rightFixedGridHeaderColumnsStyle:f}=o,c=l.value.defaultColumnWidth,m=32,p=new Map([[0,0]]);function h($,E){const B=p.get(E)||0,V={height:`${$.depth*m}px`,left:`${$.left}px`,top:`${($.layer-1)*m}px`,width:`${$.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(V["line-height"]=`${$.depth*m}px`),p.set(E+1,B+($.actualWidth||c)),V}const y=i.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),F=i.computed(()=>({height:`${l.value.headerDepth*m}px`})),_=function($){return e.showSetting&&!!$.showSetting};function S(){return i.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[i.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function w($,E,B,V){var T;(T=t==null?void 0:t.setupContext)==null||T.emit("selectionChange",$,E,B,V)}function M($){var B,V;return"w-100 d-flex align-items-center justify-content-"+(((B=$.column)==null?void 0:B.halign)==="center"?"center":((V=$.column)==null?void 0:V.halign)==="right"?"end pr-2":"start pl-2")}function b($,E,B){var T;const V=i.ref($.column);return i.createVNode("div",{class:"fv-grid-header-cell",style:h($,B)},[i.createVNode(Ut,{modelValue:V.value,"onUpdate:modelValue":x=>V.value=x,customClass:M($),canAdd:!1,canDelete:!1,canMove:!1,key:(T=V.value)==null?void 0:T.id,type:r,componentId:e.componentId,onSelectionChange:w},null),_($)&&S(),$.resizable&&i.createVNode("span",{class:"fv-column-resize-bar"},null)])}function v($){return $.map((E,B)=>{const V=[];if(V.push(b(E,$,B)),E.children&&E.children.length){const T=v(E.children);V.push(...T)}return V})}function g(){return i.createVNode("div",{class:"fv-grid-header-left-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:d.value},[v(l.value.leftHeaderColumns)])])}function C(){return i.createVNode("div",{class:"fv-grid-header-right-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[v(l.value.rightHeaderColumns)])])}function I(){return i.createVNode("div",{class:y.value,style:F.value},[a.value&&g(),i.createVNode("div",{class:"fv-grid-header-primary"},[i.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[v(l.value.primaryHeaderColumns)])]),s.value&&C()])}return{renderGridHeader:I}}const Q={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:"标签页工具栏按钮"},"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:"标签页工具栏"},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:"多语输入框"}};function sn(t,e,n){var E;const o=n&&n.getStyles&&n.getStyles()||"",r=n&&n.getDesignerClass&&n.getDesignerClass()||"",l=i.ref();let a;function s(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanMoveComponent?n.checkCanMoveComponent():!0}function u(){return!1}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanDeleteComponent?n.checkCanDeleteComponent():!0}function f(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:n&&n.hideNestedPaddingInDesginerView?n.hideNestedPaddingInDesginerView():!1}function c(B){if(!B||!B.value)return null;if(B.value.schema&&B.value.schema.type==="component")return B.value;const V=i.ref(B==null?void 0:B.value.parent),T=c(V);return T||null}function m(B=e){var O;if(n!=null&&n.getDraggableDesignItemElement)return n.getDraggableDesignItemElement(B);const{componentInstance:V,designerItemElementRef:T}=B;if(!V||!V.value)return null;const{getCustomButtons:x}=V.value;return V.value.canMove||x&&((O=x())!=null&&O.length)?T:m(B.parent)}function p(B){return!!n&&n.canAccepts(B)}function h(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function y(){}function F(B,V){var T;!B||!V||(n!=null&&n.onAcceptMovedChildElement&&n.onAcceptMovedChildElement(B,V),(T=e==null?void 0:e.setupContext)==null||T.emit("dragEnd"))}function _(B,V){const{componentType:T}=B;let x=ut.getSchemaByTypeForDesigner(T,B,V);n&&n.onResolveNewComponentSchema&&(x=n.onResolveNewComponentSchema(B,x));const O=T.toLowerCase().replace(/-/g,"_");return x&&!x.id&&x.type===T&&(x.id=`${O}_${Math.random().toString().slice(2,6)}`),x}function S(B){B&&n!=null&&n.onChildElementMovedOut&&n.onChildElementMovedOut(B)}function w(...B){if(n&&n.getPropsConfig)return n.getPropsConfig(...B)}function M(B){if(!B)return;const V=e==null?void 0:e.schema,{formSchemaUtils:T}=B;if(V&&T.getExpressions().length){const x=T.getExpressions().findIndex(O=>O.target===V.id);x>-1&&T.getExpressions().splice(x,1)}}function b(B){if(!B||!(e!=null&&e.schema))return;const V=e.schema,{formSchemaUtils:T}=B;T.removeCommunicationInComponent(V)}function v(B){n&&n.onRemoveComponent&&n.onRemoveComponent(),M(B),b(B),e!=null&&e.schema.contents&&e.schema.contents.map(V=>{let T=V.id;V.type==="component-ref"&&(T=V.component);const x=t.value.querySelectorAll(`#${T}-design-item`);x!=null&&x.length&&Array.from(x).map(O=>{var W;(W=O==null?void 0:O.componentInstance)!=null&&W.value.onRemoveComponent&&O.componentInstance.value.onRemoveComponent(B)})})}function g(){if(n&&n.getCustomButtons)return n.getCustomButtons()}function C(B){var T,x;if(!((T=e==null?void 0:e.schema)!=null&&T.id))return;if(!a&&B&&(a=B.formSchemaUtils),n!=null&&n.setComponentBasicInfoMap){n.setComponentBasicInfoMap();return}let V="";if(n!=null&&n.getComponentTitle)V=n.getComponentTitle();else{const{text:O,title:W,label:P,mainTitle:R,name:A,type:N}=e.schema;V=O||W||P||R||A||((x=Q[N])==null?void 0:x.name)}V&&a.getControlBasicInfoMap().set(e.schema.id,{componentTitle:V,parentPathName:V})}function I(B){var O;const{changeObject:V}=B,{propertyID:T,propertyValue:x}=V;if(["text","title","label","name","mainTitle"].includes((O=B==null?void 0:B.changeObject)==null?void 0:O.propertyID)&&T&&x&&(C(),a)){const W=a.getControlBasicInfoMap(),P=W.keys().toArray().filter(R=>{var A,N;return((A=W.get(R))==null?void 0:A.reliedComponentId)===((N=e==null?void 0:e.schema)==null?void 0:N.id)});P!=null&&P.length&&P.forEach(R=>{const A=W.get(R).parentPathName.split(" > ");A[0]=x,W.get(R).parentPathName=A.join(" > ")})}}function $(B){if(I(B),n&&n.onPropertyChanged)return n.onPropertyChanged(B)}return l.value={canMove:s(),canSelectParent:u(),canDelete:d(),canNested:!f(),contents:e==null?void 0:e.schema.contents,elementRef:t,parent:(E=e==null?void 0:e.parent)==null?void 0:E.componentInstance,schema:e==null?void 0:e.schema,styles:o,designerClass:r,canAccepts:p,getBelongedComponentInstance:c,getDraggableDesignItemElement:m,getDraggingDisplayText:h,getPropConfig:w,getDragScopeElement:y,onAcceptMovedChildElement:F,onChildElementMovedOut:S,addNewChildComponentSchema:_,triggerBelongedComponentToMoveWhenMoved:!!n&&n.triggerBelongedComponentToMoveWhenMoved||i.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!n&&n.triggerBelongedComponentToDeleteWhenDeleted||i.ref(!1),onRemoveComponent:v,getCustomButtons:g,onPropertyChanged:$,setComponentBasicInfoMap:C,updateContextSchema:e==null?void 0:e.updateContextSchema},l}class ui extends tt.BaseControlProperty{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=et.useCommandOption().getCommandColumnProperties(e),this.propertyConfig.categories.column=et.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=et.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=et.useSummary().getSummaryProperties(e),this.propertyConfig.categories.sort=et.useSort().getSort(e),this.propertyConfig.categories.filter=et.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,s,u;const n=(u=(s=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:s.entity[0])==null?void 0:u.entities[0],o=this.assembleSchemaEntityToTree(n,0),r=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:o,editable:!1},readonly:!0}},setPropertyRelates(d,f){switch(d&&d.propertyID){case"dataSource":{const c=r.formSchemaUtils.getViewModelById(r.viewModelId);if(c){const m=o.find(p=>p.label===d.propertyValue);c.bindTo=m.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,n,o,r="",l=[]){const a=r?`${r}/${e.label}`:"/";return l.push({id:e.id,name:e.name,label:e.label,layer:n,parent:o&&o.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(s=>this.assembleSchemaEntityToTree(s,n+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=et.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=et.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=et.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=et.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const n=[...et.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"结束编辑事件"}],o=this,r=o.eventsEditorUtils.formProperties(e,o.viewModelId,n),l=o.createBaseEventProperty(r);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const u=a.propertyValue;delete e[o.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,o.eventsEditorUtils.saveRelatedParameters(e,o.viewModelId,u.events,u)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function fi(t,e){const n=t.schema,o=i.ref(!0),r=i.ref(!0);function l(c){return c&&c.sourceType==="control"?c.componentCategory==="input":!1}function a(){return!1}function s(){return!1}function u(){return!0}function d(c){return new ui(c,e).getPropertyConfig(n)}function f(){var c,m,p,h;if(t&&e){const y=(c=t==null?void 0:t.componentInstance)==null?void 0:c.value.belongedComponentId;let F="",_="";const{formSchemaUtils:S}=e;if(y){const M=S.getRootViewModelId(),b=S.getComponentByViewModelId(M),v=S.selectNode(b,g=>g.contents&&g.contents.find(C=>C.component===y));(v==null?void 0:v.type)===((m=Q["tab-page"])==null?void 0:m.type)&&((p=v==null?void 0:v.contents)!=null&&p.length)&&(F=v.title||""),(v==null?void 0:v.type)===((h=Q.section)==null?void 0:h.type)&&(v==null?void 0:v.showHeader)!==!1&&(F=v.mainTitle||""),F=F?`${F} > `:"",_=F?v.id:""}const w=Q["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(t.schema.id,{componentTitle:w,parentPathName:`${F}${w}`,reliedComponentId:_})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:d,setComponentBasicInfoMap:f}}const pt=i.defineComponent({name:"FDataGridDesign",props:oo,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(t,e){var H;const n=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context"),l=fi(r,o),a=sn(n,r,l);a.value.styles="display:flex;flex:1;",i.onMounted(()=>{n.value.componentInstance=a}),i.provide("data-grid-context",{dataGridProps:t}),e.expose(a.value);const s=i.ref(t.columns),u=20,d=Go(t),f=0,c=i.ref(),m=i.ref(),p=i.ref(t.showStripe),h=i.ref([]),y=i.ref(!1),F=i.ref(((H=t.rowOption)==null?void 0:H.wrapContent)||!1),_=Io(t,e),S=Vo(t),w=So(t,new Map,_,S,d),M=Yo(t,w,d,h,e),b=i.computed(()=>w.totalItems.value<u?w.totalItems.value:u),{containerStyleObject:v}=po(t),g=ho(t),{applyCommands:C}=g;C(s);const I=ao(t),$=ei(),{applyColumnSorter:E,columnContext:B,updateColumnRenderContext:V}=I;E(w,$);const T=go(t,B),x=Uo(t,e,M,d),O=zo(t,e,d,x),W=No(t),P=Ho(t,O,W),R=Do(t,w,O,S,d,W,P),A=Wo(t,d,P,R),N=qo(t,d,P,R),D=lo(t,s,w,b,f,R,A,N),{getVisualData:Z}=D,ee=Xo(t,M),{sidebarWidth:Y}=ee;h.value=Z(0,b.value+f-1);const ie=Po(t,w,h,B,D,b,f,Y),{onWheel:z,dataGridWidth:q,viewPortHeight:L,viewPortWidth:U}=ie,se=io(t,B,c,U,T),{calculateColumnsSize:he}=se,me=i.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":p.value})),de=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":F.value})),{renderGridHeader:Se}=ln(r,t,I,ie),{renderHorizontalScrollbar:Ve}=fo(t,c,ie);function ge(){var K,ne;L.value=((K=m.value)==null?void 0:K.clientHeight)||0,q.value=((ne=c.value)==null?void 0:ne.clientWidth)||0,he()}i.onMounted(()=>{c.value&&(Kt.useResizeObserver(c.value,ge),he(),i.nextTick(()=>{c.value&&(q.value=c.value.clientWidth),m.value&&(U.value=m.value.clientWidth,L.value=m.value.clientHeight)}))});function He(K){K&&(s.value=K,C(s),V(s.value),E(w,$),he())}return i.watch(()=>t.columns,K=>{He(K),mt.value++}),i.watch(U,()=>{c.value&&he()}),()=>i.createVNode("div",{ref:n,class:me.value,style:v.value,onWheel:z},[Se(),i.createVNode("div",{ref:c,class:de.value,onMouseover:()=>{y.value=!0},onMouseleave:()=>{y.value=!1}},[Ve()])])}}),mi={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}},pi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},hi=i.defineComponent({name:"FOverlay",props:pi,emits:["click"],setup(t,e){const n=i.ref(t.popupContentPosition),o=i.ref(t.host),r=i.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function l(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}i.computed(()=>{const s=o.value;if(s){const u=s.getBoundingClientRect(),{left:d,top:f,height:c}=u;return{left:d,top:f+c}}return n.value});const a=i.computed(()=>({}));return()=>i.createVNode(i.Teleport,{to:"body"},{default:()=>{var s,u;return[i.createVNode("div",{class:"overlay-container",onClick:d=>l(d),style:r.value},[i.createVNode("div",{style:a.value},[(u=(s=e.slots).default)==null?void 0:u.call(s)])])]}})}});function gi(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function yi(t){const e=document.createElement("div");e.style.display="contents";let n;const o=t.onClickCallback||(()=>{}),r=()=>{o(),n&&n.unmount()};return n=i.createApp({setup(){i.onUnmounted(()=>{document.body.removeChild(e)});const l=gi(t);return()=>i.createVNode(hi,{"popup-content-position":t.popupPosition,host:t.host,onClick:r,backgroundColor:t.backgroundColor},{default:()=>[l&&l()]})}}),document.body.appendChild(e),n.mount(e),n}class vi{static show(e){return yi(e)}}const bi={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前回调",type:"object",default:null}},required:["id","type"],events:{onAccept:"确定事件",onCancel:"取消事件",beforeClose:"关闭前回调"}},Ci=new Map([["appearance",ut.resolveAppearance]]);function wi(t,e,n){return e}function Si(){function t(e,n){const o={};return o.beforeClose=r=>n.call("beforeClose",[r,e]),o}return{resolve:t}}const cn={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"}},xi=ut.createPropsResolver(cn,bi,Ci,wi),Fi=Si();class Ae{constructor(e,n){this.x=e,this.y=n}static getTransformInfo(e){const o=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(o.length>=6){const r=parseInt(o[4],10),l=parseInt(o[5],10);return{x:r,y:l}}return{x:0,y:0}}static fromEvent(e,n=null){if(this.isMouseEvent(e))return new Ae(e.clientX,e.clientY);if(n===null||e.changedTouches.length===1)return new Ae(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let o=0;o<e.changedTouches.length;o++)if(e.changedTouches[o].target===n)return new Ae(e.changedTouches[o].clientX,e.changedTouches[o].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 Ae(0,0);if(window){const o=window.getComputedStyle(e);if(o){const r=parseInt(o.getPropertyValue("left"),10),l=parseInt(o.getPropertyValue("top"),10);n.x=isNaN(r)?0:r,n.y=isNaN(l)?0:l}return n}return null}static copy(e){return new Ae(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 wt{constructor(e,n){this.width=e,this.height=n}static getCurrent(e){const n=new wt(0,0);if(window){const o=window.getComputedStyle(e);return o&&(n.width=parseInt(o.getPropertyValue("width"),10),n.height=parseInt(o.getPropertyValue("height"),10)),n}return null}static copy(e){return new wt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Ti(t,e){const n=i.ref(),o=i.ref(),r=i.ref(),l=i.ref(),a=i.ref(),s=i.ref(),u=i.ref(),d=i.ref(),f=i.ref(),c=i.ref(),m=i.ref(),p=i.ref(t.resizeable),h=i.ref(),y=i.ref(t.draggable),F=i.ref(!1);function _(){const P=o.value||document.body,R=window.getComputedStyle(P);if(!R||!n.value)return;const A=Ae.getTransformInfo(n.value),N={};u.value&&(N.deltaL=n.value.offsetLeft-u.value.x,N.deltaT=n.value.offsetTop-u.value.y);const D=R.getPropertyValue("position");N.width=P.clientWidth,N.height=P.clientHeight,N.pr=parseInt(R.getPropertyValue("padding-right"),10),N.pb=parseInt(R.getPropertyValue("padding-bottom"),10),N.position=R.getPropertyValue("position"),D==="static"&&(P.style.position="relative"),N.translateX=A.x,N.translateY=A.y,c.value=N}function S(P){if(n.value){l.value=wt.getCurrent(n.value),a.value=Ae.getCurrent(n.value),s.value=l.value?wt.copy(l.value):null,u.value=a.value?Ae.copy(a.value):null,_();const R=P.target.getAttribute("type")||"";d.value={n:!!R.match(/n/),s:!!R.match(/s/),w:!!R.match(/w/),e:!!R.match(/e/)}}}function w(){var P,R,A,N;if(n.value){const D=n.value;d.value&&((d.value.n||d.value.s)&&((P=s.value)!=null&&P.height)&&(D.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((R=s.value)!=null&&R.width)&&(D.style.width=s.value.width+"px"),u.value&&((A=u.value)!=null&&A.x&&(D.style.left=u.value.x+"px"),(N=u.value)!=null&&N.y&&(D.style.top=u.value.y+"px")))}}function M(){const P=t.minHeight?t.minHeight:1,R=t.minWidth?t.minWidth:1;s.value&&u.value&&d.value&&l.value&&(s.value.height<P&&(s.value.height=P,d.value.n&&a.value&&(u.value.y=a.value.y+(l.value.height-P))),s.value.width<R&&(s.value.width=R,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-R))),t.maxHeight&&s.value.height>t.maxHeight&&(s.value.height=t.maxHeight,a.value&&d.value.n&&(u.value.y=a.value.y+(l.value.height-t.maxHeight))),t.maxWidth&&s.value.width>t.maxWidth&&(s.value.width=t.maxWidth,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-t.maxWidth))))}function b(){if(o.value){const P=c.value;if(u.value&&s.value&&d.value&&l.value){const R=P.width-P.pr-P.deltaL-P.translateX-u.value.x,A=P.height-P.pb-P.deltaT-P.translateY-u.value.y;d.value.n&&u.value.y+P.translateY<0&&a.value&&(u.value.y=-P.translateY,s.value.height=l.value.height+a.value.y+P.translateY),d.value.w&&u.value.x+P.translateX<0&&a.value&&(u.value.x=-P.translateX,s.value.width=l.value.width+a.value.x+P.translateX),s.value.width>R&&(s.value.width=R),s.value.height>A&&(s.value.height=A)}}}function v(P){if(!r.value||!l.value||!a.value||!d.value)return;P.subtract(r.value);const R=P.x,A=P.y;d.value.n?(u.value.y=a.value.y+A,s.value.height=l.value.height-A):d.value.s&&(s.value.height=l.value.height+A),d.value.e?s.value.width=l.value.width+R:d.value.w&&(s.value.width=l.value.width-R,u.value.x=a.value.x+R),b(),M(),w()}function g(P){if(!f.value)return;const R=Ae.fromEvent(P);R&&v(R)}function C(){if(n.value){const{width:P,height:R,x:A,y:N}=n.value.getBoundingClientRect(),D=Ae.getTransformInfo(n.value);return{size:{width:P,height:R},position:{x:A-D.x,y:N-D.y}}}return null}function I(P){if(n.value){const R=C();m.value=R}r.value=void 0,l.value=null,a.value=null,s.value=null,u.value=null,d.value=null,f.value=null,document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",I)}function $(){document.addEventListener("mousemove",g),document.addEventListener("mouseup",I)}function E(P){P instanceof MouseEvent&&P.button===2||y.value&&(document.body.click(),P.stopPropagation(),P.preventDefault(),r.value=Ae.fromEvent(P),f.value=P.target,S(P),$())}function B(P){return n.value=P,p.value&&i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:R=>E(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:R=>E(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:R=>E(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:R=>E(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:R=>E(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:R=>E(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:R=>E(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:R=>E(R)},null)])}function V(P=!0){document.body.click();const R=o.value||document.body,A=wt.getCurrent(R),N=n.value;P&&N&&(h.value=C(),h.value.transform=N.style.transform),A&&N&&(s.value=A,s.value.height-=14,s.value.width-=14,N.style.height=s.value.height+"px",N.style.width=s.value.width+"px",N.style.left="7px",N.style.top="7px",N.style.transform="",m.value={size:s.value,position:{x:0,y:0}},y.value=!1,F.value=!0)}function T(){var P,R;if(document.body.click(),h.value){const A={width:h.value.size.width||0,height:h.value.size.height||0},N={x:(window.innerWidth-A.width)/2,y:(window.innerHeight-A.height)/2};(P=s.value)==null||P.set(A),(R=u.value)==null||R.set(N);const D=n.value;D.style.height=A.height+"px",D.style.width=A.width+"px",D.style.left=`${N.x}px`,D.style.top=`${N.y}px`,D.style.transform="",m.value={size:A,position:N},y.value=t.draggable,F.value=!1}}function x(){if(n.value){const P=wt.getCurrent(n.value);if(P){const{width:R,height:A}=P;n.value.style.left=`${(window.innerWidth-R)/2}px`,n.value.style.top=`${(window.innerHeight-A)/2}px`,n.value.style.transform=""}}}function O(){const P=()=>{F.value?V(!1):x(),document.body.click()};return window.addEventListener("resize",P),()=>{window.removeEventListener("resize",P)}}const W=O();return{renderResizeBar:B,boundingElement:o,resizedEventParam:m,maximize:V,restore:T,allowDrag:y,isMaximized:F,unWindowResizeHandle:W,moveToCenter:x}}function Mi(t,e,n){const o=i.ref(),r=i.ref(t.draggable),l=i.ref(t.lockAxis),a=i.ref(),s=i.ref(),u=i.ref(!1),d=i.ref(new Ae(0,0)),f=i.ref(new Ae(0,0)),c=i.ref(new Ae(0,0)),m=i.ref(new Ae(0,0));i.watch(()=>n.value,g=>{a.value.style.cursor=g?"move":"default"});function p(g,C){if(C.tagName==="BUTTON")return!1;if(C===g)return!0;for(const I in C.children)if(Object.prototype.hasOwnProperty.call(C.children,I)&&p(g,C.children[I]))return!0;return!1}function h(){var $,E;let g=c.value.x+f.value.x,C=c.value.y+f.value.y;l.value==="x"?(g=(($=d.value)==null?void 0:$.x)||0,c.value.x=0):l.value==="y"&&(C=((E=d.value)==null?void 0:E.y)||0,c.value.y=0);const I=`translate3d(${Math.round(g)}px, ${Math.round(C)}px, 0px)`;o.value&&(o.value.style.transform=I),m.value.x=g,m.value.y=C}function y(){if(!s.value||!o.value)return null;const g=s.value.getBoundingClientRect(),C=o.value.getBoundingClientRect(),I={top:g.top<C.top,right:g.right>C.right,bottom:g.bottom>C.bottom,left:g.left<C.left};return I.top||(c.value.y-=C.top-g.top),I.bottom||(c.value.y-=C.bottom-g.bottom),I.right||(c.value.x-=C.right-g.right),I.left||(c.value.x-=C.left-g.left),h(),I}function F(g){g&&(d.value&&g.subtract(d.value),c.value.set(g),h(),y())}function _(g){u.value&&r.value&&(g.stopPropagation(),g.preventDefault(),F(Ae.fromEvent(g,a.value)))}function S(){var g;u.value&&(u.value=!1,f.value.add(c.value),c.value.reset(),(g=o.value)==null||g.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",_),document.removeEventListener("mouseup",S))}function w(){!u.value&&a.value&&(u.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",_),document.addEventListener("mouseup",S))}function M(){if(o.value){const g=Ae.getTransformInfo(o.value);f.value.set(g);return}f.value.reset()}function b(g){if(!n.value||g instanceof MouseEvent&&g.button===2)return;const C=g.target||g.srcElement;a.value!==void 0&&C&&!p(C,a.value)||r.value!==!1&&(document.body.click(),g.stopPropagation(),g.preventDefault(),d.value=Ae.fromEvent(g,o.value),M(),w())}function v(g,C,I){if(r.value&&C){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 $=C.querySelector(t.dragHandle);$&&(a.value=$)}}o.value=C,s.value=I,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",b)):r.value=!1}}return{registerDraggle:v,resetTranslate:M}}function dn(t,e){if(t){const n=o=>{o.key.toLowerCase()===t.toLowerCase()&&e({event:o,key:t})};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}}function _i(t,e){const n=i.ref(t.enableEsc);let o=null;return n.value?(o=dn("Escape",r=>{e.emit("esc",{event:r.event,type:"esc"})}),{remove:o}):null}function Ei(t,e){const n=i.ref(t.enableEnter);let o=null;return n.value?(o=dn("Enter",r=>{e.emit("enter",{event:r.event,type:"enter"})}),{remove:o}):null}const St=i.defineComponent({name:"FModal",props:cn,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(t,e){const n=i.ref(t.width||300),o=i.ref(t.height||200),r=i.ref(t.modelValue),l=i.ref(""),a=i.ref(t.class),s=i.ref(t.fitContent),u=i.ref(t.showHeader),d=i.ref(""),f=i.ref(t.showCloseButton),c=i.ref(t.showMaxButton),m=i.ref(!1),p=i.ref(t.dialogType),h=i.ref(t.src),y=i.ref(""),F=i.ref(t.showButtons),_=i.ref(t.title),S=i.ref(t.containment||null),w=i.ref(),{t:M}=ct.useI18n();_.value==="错误提示"&&(_.value=M("messageBox.errorTitle"));const b=i.ref(!1);function v(X,pe){const Ne=pe?"accept":"cancel";Promise.resolve().then(()=>{var Fe;return(Fe=t.beforeClose)==null?void 0:Fe.call(t,{closeType:Ne})}).then(Fe=>{Fe&&(r.value=!1,e.emit("update:modelValue",!1),pe!=null&&e.emit(pe?"accept":"cancel"),e.emit("closed",X))})}const g=[{name:"cancel",text:M("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:X=>{v(X,!1)}},{name:"accept",text:M("messageBox.ok")||"确定",class:"btn btn-primary",handle:X=>{v(X,!0)}}],C=i.ref(t.buttons&&t.buttons.length?t.buttons:g),I=i.computed(()=>!!d.value),$=i.computed(()=>!!F.value&&!!C.value),E=i.ref(),B=i.ref(),V=i.ref(!1),{renderResizeBar:T,maximize:x,restore:O,boundingElement:W,resizedEventParam:P,allowDrag:R,unWindowResizeHandle:A,moveToCenter:N}=Ti(t),{registerDraggle:D}=Mi(t,e,R);function Z(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function ee(){const X=document.querySelectorAll(".farris-modal").length;(!X||X-1<=0)&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}i.watch(()=>t.title,(X,pe)=>{X!==pe&&(_.value=X)}),i.watch(()=>t.modelValue,(X,pe)=>{X!==pe&&(r.value=X,r.value&&t.draggable&&i.nextTick(()=>{B.value&&!S.value&&(S.value=B.value.parentElement,W.value=S.value,D(E.value,B.value,W.value),N())}),X||(S.value&&(S.value=null),ee())),r.value?b.value=Z():(V.value=!1,R.value=t.draggable)}),i.watch(()=>t.showHeader,(X,pe)=>{X!==pe&&(u.value=X)}),i.watch(()=>t.showButtons,(X,pe)=>{X!==pe&&(F.value=X)}),i.watch(()=>P.value,(X,pe)=>{const Ne=X||{},Fe=pe||{};JSON.stringify(Ne)!==JSON.stringify(Fe)&&e.emit("resize",{newSize:X,oldSize:pe,isMaximized:V.value})});const Y=i.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),ie=i.computed(()=>{var Ne;const X={modal:!0,"farris-modal":!0,fade:!0};X["f-modal-fitContent"]=!!s.value,X.show=!!Y.value;const pe=(Ne=t.maskClass)==null?void 0:Ne.split(" ");return pe==null||pe.reduce((Fe,Ke)=>(Fe[Ke]=!0,Fe),X),X}),z=i.computed(()=>{var Ne;const X={"modal-dialog":!0},pe=(Ne=a.value)==null?void 0:Ne.split(" ");return pe==null||pe.reduce((Fe,Ke)=>(Fe[Ke]=!0,Fe),X),X}),q=i.computed(()=>{const X={position:"absolute",top:`${(window.innerHeight-o.value)/2}px`,left:`${(window.innerWidth-n.value)/2}px`,width:`${n.value}px`,height:s.value?"auto":`${o.value}px`};return t.mask||(X.pointerEvents="auto"),X}),L=i.computed(()=>{const X={display:"block"};return t.mask||(X.pointerEvents="none",X.backgroundColor="transparent"),b.value&&(X.backgroundColor="transparent"),X}),U=i.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),se=i.computed(()=>{const X={display:u.value?"":"none"};return X["pointer-events"]=R.value?"auto":"none",X}),he=i.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:V.value})),me=i.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function de(){return{height:`${t.footerHeight||60}px`}}const Se=i.computed(()=>{const X={textAlgin:y.value},pe=de();return Object.assign(X,pe)});function Ve(X){if(X==null||X.stopPropagation(),V.value){V.value=!1,O();return}x(),V.value=!0}async function ge(X,pe){X.handle&&await X.handle(pe,X)&&e.emit("closed",pe)}function He(X){X.width&&(n.value=X.width),X.height&&(o.value=X.height),X.buttons&&(C.value=X.buttons),X.title&&(_.value=X.title)}let H=null,K=null;i.onBeforeMount(()=>{b.value=Z()}),i.onMounted(()=>{B.value&&!S.value&&(S.value=B.value.parentElement,W.value=S.value,D(E.value,B.value,W.value)),Y.value&&document.body.classList.add("modal-open"),H=_i(t,e),K=Ei(t,e)}),i.onUnmounted(()=>{A&&A(),H&&H.remove(),K&&K.remove()}),e.expose({modalElementRef:B,updateModalOptions:He,close:v,maxDialog:Ve,isMaximized:V});function ne(){return i.createVNode("ul",null,[m.value&&i.createVNode("li",{class:"f-btn-icon f-bare"},[i.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&i.createVNode("li",{onClick:Ve,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[i.createVNode("span",{class:he.value},null)]),f.value&&i.createVNode("li",{class:"f-btn-icon f-bare",onClick:X=>v(X,!1),style:"pointer-events: auto;"},[i.createVNode("span",{class:"f-icon modal_close"},null)])])}function xe(){return i.createVNode("div",{class:"modal-footer",style:Se.value},[C.value&&C.value.map(X=>{const pe=i.ref(X.disabled);return i.createVNode("button",{name:X.name,type:"button",disabled:pe.value,class:X.class+(X.iconClass?" btn-icontext":""),onClick:Ne=>{ge(X,Ne)}},[!!X.iconClass&&i.createVNode("i",{class:X.iconClass},null),X.text])})])}function Ee(){return i.createVNode("div",{ref:E,class:"modal-header",style:se.value},[e.slots.headerTemplate?e.slots.headerTemplate():i.createVNode("div",{class:"modal-title"},[I.value&&i.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),i.createVNode("span",{class:"modal-title-label"},[_.value])]),i.createVNode("div",{class:"actions"},[ne()])])}function ze(){return e.slots.footerTemplate?e.slots.footerTemplate():$.value&&xe()}function Ye(X){if(X.stopPropagation(),t.allowClickMaskToClose){if(X.target!==w.value)return;v(X,!1)}}function Qe(){var X,pe;return i.createVNode("div",{id:l.value,class:z.value,style:q.value,ref:B},[i.createVNode("div",{class:U.value},[u.value&&Ee(),i.createVNode("div",{class:me.value},[(pe=(X=e.slots).default)==null?void 0:pe.call(X),p.value==="iframe"&&i.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:h.value},null)]),ze()]),!s.value&&B.value&&!V.value&&T(B.value)])}function Xe(X){return X||"body"}return()=>i.createVNode(i.Teleport,{to:Xe(t.host)},{default:()=>[Y.value&&i.createVNode(i.Transition,{name:"fade",appear:!0},{default:()=>[i.createVNode("div",{ref:w,class:ie.value,style:L.value,onClick:Ye},[Qe()])]})]})}});function un(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=i.createApp({setup(o,r){i.onUnmounted(()=>{document.body.removeChild(e)});const l=i.ref(),a=i.ref(t.class||""),s=i.ref(!!t.showButtons),u=i.ref(!!t.showHeader),d=i.ref(t.showCloseButton==null?!0:t.showCloseButton),f=i.ref(!0),c=i.ref(t.title||""),m=t.acceptCallback||(()=>{}),p=t.rejectCallback||(()=>{}),h=t.closedCallback||(w=>{}),y=t.resizeHandle||(w=>{}),F=t.stopMoveHandle||(w=>{}),_=un(t),S=w=>{f.value=!1,n.unmount(),h(w)};return i.onMounted(()=>{}),r.expose({modalRef:l}),()=>i.createVNode(St,{ref:l,class:a.value,modelValue:f.value,"onUpdate:modelValue":w=>f.value=w,title:c.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:m,onCancel:p,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:S,onResize:y,onStopMove:F},{default:()=>[_&&_(n)]})}});return document.body.appendChild(e),n.use(jt.LocaleService.i18n),n.mount(e),n}class fn{constructor(e){le(this,"appContext",null);le(this,"modalRef",i.ref());le(this,"activeModalIndex",i.ref(0));le(this,"modalRefs",{});le(this,"isUseEscCloseModal",i.ref(!1));le(this,"activeModalInstance",i.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:o,height:r}={width:window.innerWidth,height:window.innerHeight};return o<e&&(e=o-14),r<n&&(n=r-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,o;e?(o=e.value)==null||o.close():(n=this.getCurrentModal())==null||n.close()}open(e){const n=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const o=i.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),r=i.ref(!0),l=o.value.acceptCallback||(()=>{}),a=o.value.rejectCallback||(()=>{}),s=o.value.closedCallback||((b,v)=>{}),u=o.value.resizeHandle||(b=>{}),d=e.stopMoveHandle||(b=>{});let f;const c=un(o.value),m=b=>{var g;r.value=!1;const v=(g=b==null?void 0:b.target)==null?void 0:g.classList.contains("modal_close");s(b,this.isUseEscCloseModal.value?"esc":v?"icon":"button")},p=b=>{m(b),f&&i.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],i.render(null,n),f=null,this.modalRef.value=null,this.modalRefs){const v=Object.keys(this.modalRefs).map(g=>Number(g));v.length>0?this.activeModalIndex.value=Math.max(...v):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},h=b=>{var v;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((v=this.activeModalInstance.value)==null||v.close(b==null?void 0:b.event))},{width:y,height:F}=o.value,_=this.adaptToWindow(y||500,F||320);Object.assign(o.value,_);const S=()=>i.createVNode(St,i.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":b=>r.value=b},o.value,{onAccept:l,onCancel:a,onClosed:p,onResize:u,onEsc:h,onStopMove:d}),{default:()=>[c&&c(this.app)]});return f=(b=>{const v=i.h(S,b);return v.appContext=this.appContext,i.render(v,n),v})({...o.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:b=>{o.value={...o.value,...b},f&&i.render(i.cloneVNode(f,{...o}),n)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}function Ii(t={}){function e(d,f,c,m){if(typeof c=="number")return m[d].length===c;if(typeof c=="object"){const p=Object.keys(c)[0],h=c[p];if(p==="not")return Number(m[d].length)!==Number(h);if(p==="moreThan")return Number(m[d].length)>=Number(h);if(p==="lessThan")return Number(m[d].length)<=Number(h)}return!1}function n(d,f,c,m){return m[d]&&m[d].propertyValue&&String(m[d].propertyValue.value)===String(c)}const o=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((d,f)=>(d.set(f,t[f]),d),o);function r(d,f){const c=d;return typeof f=="number"?[{target:c,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:c,operator:"getProperty",param:d,value:!!f}]:typeof f=="object"?Object.keys(f).map(m=>{if(m==="length")return{target:c,operator:"length",param:null,value:f[m]};const p=m,h=f[m];return{target:c,operator:"getProperty",param:p,value:h}}):[]}function l(d){return Object.keys(d).reduce((c,m)=>{const p=r(m,d[m]);return c.push(...p),c},[])}function a(d,f){if(o.has(d.operator)){const c=o.get(d.operator);return c&&c(d.target,d.param,d.value,f)||!1}return!1}function s(d,f){return l(d).reduce((p,h)=>p&&a(h,f),!0)}function u(d,f){const c=Object.keys(d),m=c.includes("allOf"),p=c.includes("anyOf"),h=m||p,_=(h?d[h?m?"allOf":"anyOf":"allOf"]:[d]).map(w=>s(w,f));return m?!_.includes(!1):_.includes(!0)}return{parseValueSchema:u}}const Vi={convertTo:(t,e,n,o)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},Pi={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},Ni={convertTo:(t,e,n,o)=>{t.editor&&(t.editor[e]=n)},convertFrom:(t,e,n)=>t.editor&&Object.prototype.hasOwnProperty.call(t.editor,e)?t.editor[e]:t[e]},Bi={convertFrom:(t,e,n)=>{var r;const o=t.editor&&t.editor[e]?t.editor[e]:t[e];return((r=Q[o])==null?void 0:r.name)||o}},Oi={convertTo:(t,e,n,o)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},$i={convertTo:(t,e,n,o)=>{(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==="tempDateFormat")return t.formatter.dateFormat==="yyyy年MM月dd日"?"yearMonthDay":t.formatter.dateFormat==="yyyy-MM-dd HH:mm:ss"?"yyyy-MM-ddTHH:mm:ss":t.formatter.dateFormat==="yyyy/MM/dd HH:mm:ss"?"yyyy/MM/ddTHH:mm:ss":t.formatter.dateFormat==="yyyy年MM月dd日 HH时mm分ss秒"?"yearMonthDayHourMinuteSecond":t.formatter.tempDateFormat||t.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return t.formatter.customFormat;if(e==="type")return t.formatter.type||"none"}return"none"}},ji={convertTo:(t,e,n,o)=>{t.command?t.command[e]=n:t.command={[e]:n},e==="enable"&&n&&(t.command.commands||(t.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(t,e,n)=>t.command&&e==="enable"?t.command.enable:""},Ri={convertTo:(t,e,n,o)=>{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""}},Ai={convertTo:(t,e,n,o)=>{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:""},Li={convertTo:(t,e,n,o)=>{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}}},Hi={convertFrom:(t,e)=>t.binding?t.binding.path:"",convertTo:(t,e,n)=>{if(n&&n.length>0){const o=n[0];t.binding||(t.binding={}),t.binding.type="Form",t.binding.path=o.bindingField,t.binding.field=o.id,t.binding.fullPath=o.path,t.path=o.bindingPath}}},Di={convertTo:(t,e,n,o)=>{t.pagination||(t.pagination={}),t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?t.pagination[e]:t[e]},Wi={convertTo:(t,e,n,o)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},qi={convertTo:(t,e,n,o)=>{t.selection||(t.selection={}),t.selection[e]=n},convertFrom:(t,e,n)=>t.selection?t.selection[e]:t[e]},zi={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},Gi={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},Ui={convertTo:(t,e,n,o)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},Yi={convertFrom:(t,e,n)=>{var o,r;return(o=t.formatter)!=null&&o.data&&e==="formatterEnumData"&&!t.formatterEnumData?(r=t.formatter)==null?void 0:r.data:t.formatterEnumData}},Xi={convertTo:(t,e,n,o)=>{t.sort||(t.sort={}),t.sort[e]=n},convertFrom:(t,e,n)=>{var o,r;if(e==="mode")return((o=t.sort)==null?void 0:o.mode)||"client";if(e==="multiSort")return!!((r=t.sort)!=null&&r.multiSort)}},Zi={convertTo:(t,e,n,o)=>{t.filter||(t.filter={}),t.filter[e]=n},convertFrom:(t,e,n)=>{var o;if(e==="mode")return((o=t.filter)==null?void 0:o.mode)||"client"}},Ji={convertTo:(t,e,n,o)=>{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""}};function mn(t,e,n){const o=new Map([["/converter/appearance.converter",Vi],["/converter/buttons.converter",Pi],["/converter/property-editor.converter",Ni],["/converter/items-count.converter",zi],["/converter/type.converter",Bi],["/converter/change-editor.converter",Oi],["/converter/change-formatter.converter",$i],["/converter/column-command.converter",ji],["/converter/column-option.converter",Ri],["/converter/summary.converter",Ai],["/converter/group.converter",Li],["/converter/form-group-label.converter",Gi],["/converter/field-selector.converter",Hi],["/converter/pagination.converter",Di],["/converter/row-number.converter",Wi],["/converter/grid-selection.converter",qi],["/converter/size.converter",Ui],["/converter/change-formatter-enum.converter",Yi],["/converter/grid-sort.converter",Xi],["/converter/grid-filter.converter",Zi],["/converter/row-option.converter",Ji]]),r=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=Ii();function a(h,y){return()=>l.parseValueSchema(h,y)}function s(h,y,F){return h.includes("visible")&&y.visible!==void 0?typeof y.visible=="boolean"?()=>!!y.visible:y.visible===void 0?!0:a(y.visible,F):()=>!0}function u(h,y,F){return h.includes("readonly")&&y.readonly!==void 0?typeof y.readonly=="boolean"?()=>!!y.readonly:a(y.readonly,F):()=>!1}function d(h,y){const F=h.$converter||y;return typeof F=="string"&&F&&o.has(F)?o.get(F)||null:F||null}function f(h,y,F,_,S,w="",M=""){return Object.keys(h).map(v=>{const g=i.ref(1),C=v,I=h[v],$=Object.keys(I),E=I.title,B=I.type,V=r.get(B)||{type:"input-group",enableClear:!1},T=I.editor?Object.assign({},V,I.editor):Object.assign({},V),x=s($,I,y),O=u($,I,y);T.readonly=T.readonly===void 0?O():T.readonly;const W=I.type==="cascade"?f(I.properties,y,F,_,S,w,M):[],P=!0;let R=d(I,M);const A=i.computed({get(){if(g.value){if(["class","style"].find(z=>z===C)&&!R&&(R=o.get("/converter/appearance.converter")||null),R&&R.convertFrom)return R.convertFrom(F,v,S,w);const ie=F[v];return Object.prototype.hasOwnProperty.call(I,"defaultValue")&&(ie===void 0||typeof ie=="string"&&ie==="")?I.type==="boolean"?I.defaultValue:I.defaultValue||"":ie}return null},set(ie){g.value+=1,R&&R.convertTo?(R.convertTo(_,v,ie,S,w),R.convertTo(F,v,ie,S,w)):(_[v]=ie,F[v]=ie)}}),{refreshPanelAfterChanged:N,description:D,isExpand:Z,parentPropertyID:ee}=I,Y={propertyID:C,propertyName:E,propertyType:B,propertyValue:A,editor:T,visible:x,readonly:O,cascadeConfig:W,hideCascadeTitle:P,refreshPanelAfterChanged:N,description:D,isExpand:Z,parentPropertyID:ee};return y[C]=Y,Y})}function c(h,y,F={}){const _={},S=t[h];return S&&S.categories?Object.keys(S.categories).map(M=>{const b=S.categories[M],v=b==null?void 0:b.title,g=f(b.properties||{},_,{},F,y);return{categoryId:M,categoryName:v,properties:g}}):[]}function m(h,y,F,_,S=""){const w=y.$ref.schema,M=y.$ref.converter,b=F[w],v=b.type,g=n(b),C={},I=t[v];if(I&&I.categories){const $=I.categories[h],E=$==null?void 0:$.title;M&&Object.keys($.properties).forEach(T=>{$.properties[T].$converter=M});const B=($==null?void 0:$.properties)||{},V=f(B,C,g,b,_,S);return{categoryId:h,categoryName:E,properties:V}}return{categoryId:h,categoryName:"",properties:[]}}function p(h,y,F,_,S){const w=h.type,M=n(h),b={};let v=S||t[w];if(v&&Object.keys(v).length===0&&F&&F.getPropConfig&&(v=F.getPropConfig(_)),v&&v.categories){const g=[];return Object.keys(v.categories).map(C=>{const I=v.categories[C];if(I.$ref){g.push(m(C,I,h,y,_));return}const $=I==null?void 0:I.title,E=I==null?void 0:I.tabId,B=I==null?void 0:I.tabName,V=I==null?void 0:I.hide,T=I==null?void 0:I.hideTitle,x=f(I.properties||{},b,M,h,y,_,I.$converter),{setPropertyRelates:O}=I,W=I==null?void 0:I.parentPropertyID;g.push({categoryId:C,categoryName:$,tabId:E,tabName:B,hide:V,properties:x,hideTitle:T,setPropertyRelates:O,parentPropertyID:W})}),g}return[]}return{getPropertyConfigBySchema:p,getPropertyConfigByType:c,propertyConverterMap:o}}function pn(t,e){let n;function o(c){const{properties:m,title:p,ignore:h}=c,y=h&&Array.isArray(h),F=Object.keys(m).reduce((_,S)=>((!y||!h.find(w=>w===S))&&(_[S]=m[S].type==="object"&&m[S].properties?o(m[S]):je.cloneDeep(m[S].default)),_),{});if(p&&(!y||!h.find(_=>_==="id"))){const _=p.toLowerCase().replace(/-/g,"_");F.id=`${_}_${Math.random().toString().slice(2,6)}`}return F}function r(c){const{properties:m,title:p,required:h}=c;if(h&&Array.isArray(h)){const y=h.reduce((F,_)=>(F[_]=m[_].type==="object"&&m[_].properties?o(m[_]):je.cloneDeep(m[_].default),F),{});if(p&&h.find(F=>F==="id")){const F=p.toLowerCase().replace(/-/g,"_");y.id=`${F}_${Math.random().toString().slice(2,6)}`}return y}return{type:p}}function l(c,m={},p){const h=t[c];if(h){let y=r(h);const F=e[c];return y=F?F({getSchemaByType:l},y,m,p):y,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(y),y}return null}function a(c,m){const p=o(m);return Object.keys(p).reduce((h,y)=>(Object.prototype.hasOwnProperty.call(c,y)&&(h[y]&&je.isPlainObject(h[y])&&je.isPlainObject(c[y]||!c[y])?Object.assign(h[y],c[y]||{}):h[y]=c[y]),h),p),p}function s(c,m){return Object.keys(c).filter(h=>c[h]!=null).reduce((h,y)=>{if(m.has(y)){const F=m.get(y);if(typeof F=="string")h[F]=c[y];else{const _=F(y,c[y],c);Object.assign(h,_)}}else h[y]=c[y];return h},{})}function u(c,m,p=new Map){const h=a(c,m);return s(h,p)}function d(c){var p;const m=c.type;if(m){const h=t[m];if(!h)return c;const y=a(c,h),F=((p=c.editor)==null?void 0:p.type)||"";if(F){const _=t[F],S=a(c.editor,_);y.editor=S}return y}return c}function f(c){n=c}return{getSchemaByType:l,resolveSchemaWithDefaultValue:d,resolveSchemaToProps:u,mappingSchemaToProps:s,setDesignerContext:f}}const hn={},gn={},{getSchemaByType:Hs,resolveSchemaWithDefaultValue:Qi,resolveSchemaToProps:Ds,mappingSchemaToProps:Ws,setDesignerContext:qs}=pn(hn,gn),yn={},vn={};mn(yn,vn,Qi);const bn={},Cn={},{getSchemaByType:zs,resolveSchemaWithDefaultValue:Ki,resolveSchemaToProps:er,mappingSchemaToProps:tr,setDesignerContext:Gs}=pn(bn,Cn),wn={},Sn={};mn(wn,Sn,Ki);function ht(t,e,n=new Map,o=(a,s,u,d)=>s,r={},l=a=>a){return bn[e.title]=e,Cn[e.title]=o,wn[e.title]=r,Sn[e.title]=l,hn[e.title]=e,gn[e.title]=o,yn[e.title]=r,vn[e.title]=l,(a={},s=!0)=>{if(!s)return tr(a,n);const u=er(a,e,n),d=Object.keys(t).reduce((f,c)=>(f[c]=t[c].default,f),{});return Object.assign(d,u)}}function Lt(t,e){return{customClass:e.class,customStyle:e.style}}const Yt=new Map([["appearance",Lt]]),nr=new Map([]),xn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/form-group.schema.json",title:"form-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"form-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},enableLinkLabel:{description:"",type:"boolean",default:!1},editor:{description:"",type:"obejct",default:null},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}},visible:{description:"",type:"boolean",default:!0},required:{description:"",type:"boolean",default:!1},errors:{description:"",type:"object",default:null},name:{description:"The name string of form group component",type:"string",default:"form group"},showLabelType:{description:"",type:"string",default:"visible"}},required:["id","type","editor"]};ht({id:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number]},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},showLabelType:{type:String,default:"visible"},type:{type:String,default:"input-group"},componentId:{type:String,default:""},errors:{type:Object,default:null}},xn,Yt,void 0);const or=i.ref(0);function ir(){or.value++}function rr(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function o(u,d=""){return{path:d+u.code,field:u.id,fullPath:u.code}}function r(u,d=""){return e.getViewModelById(u).states.map(c=>o(c,d))}function l(u){const d=e.getRootViewModelId(),f=r(u);if(u===d)return f;const c=r(d,"root-component.");return[...f,...c]}function a(u){return u.binding&&u.binding.path||u.id||""}function s(){return n&&n.getRenderStates()||[]}return{getVariables:l,getControlName:a,getStateMachines:s}}class Fn{constructor(e){le(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'"}]);le(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});le(this,"getExpressionConverter",(e,n)=>({convertFrom:(o,r,l,a)=>{const s=l.getExpressionRuleValue(e,n||r);return s&&s.value||""},convertTo:(o,r,l,a,s)=>{var u;if(r==="dataPicking"&&(l!=null&&l.target)){const d=`${l.target}_dataPicking`;((u=l.rules)==null?void 0:u.some(c=>c.id===d&&c.value))?o.dictPickingExpressionId=d:delete o.dictPickingExpressionId}a.updateExpression(l)}}));this.formSchemaService=e}getExpressionRule(e,n){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(a=>a.target===e);if(!r)return"";const l=r.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(),o=this.formSchemaService.getViewModelById(n);if(!o||!o.states||o.states.length===0)return[];const r=[];return o.states.forEach(l=>{r.push({key:l.code,name:l.name,description:l.name,category:l.category})}),r}createTreeNode(e,n,o="label"){return{id:e.id,name:e.name,bindingPath:e[o],parents:n,type:"field"}}buildEntityFieldsTreeData(e=null,n){const o=[];return e==null||e.forEach(r=>{var s;const l=this.createTreeNode(r,n);let a=[];(s=r.type)!=null&&s.fields&&(a=this.buildEntityFieldsTreeData(r.type.fields,[...n,r.label])),o.push({data:l,children:a,expanded:!0})}),o}buildChildEntityTreeData(e=null,n){const o=[];return e==null||e.forEach(r=>{var u,d;const l=this.createTreeNode(r,n);l.type="entity";const a=this.buildEntityFieldsTreeData((u=r.type)==null?void 0:u.fields,[...n,r.label]),s=this.buildChildEntityTreeData((d=r.type)==null?void 0:d.entities,[...n,r.label]);s!=null&&s.length&&(a==null||a.push(...s)),o.push({data:l,children:a||[],expanded:!0})}),o}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const n=e[0];if(!(n!=null&&n.type))return[];const o=this.buildEntityFieldsTreeData(n.type.fields,[n.code]),r=this.buildChildEntityTreeData(n.type.entities,[n.code]);return r!=null&&r.length&&(o==null||o.push(...r)),{entityCode:n.code,fields:[{data:this.createTreeNode(n,[],"code"),children:o||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,n,o){const r=o==="Field"?e.binding.field:e.id,l=this.getExpressionRule(r,n),a=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(n)&&l?l.message:"",...a};return l.messageType!=null&&(s.messageType=l.messageType),s}buildRule(e,n,o,r){const{expression:l,message:a,messageType:s}=n,u={id:`${e}_${o}`,type:o,value:l};return(o==="validate"||o==="dataPicking"||o==="required")&&(u.message=a),o==="dataPicking"&&(u.messageType=s),o==="validate"&&r&&(u.elementId=r),u}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,n,o,r){const l=n==="Field"?e.binding.field:e.id,a=this.buildRule(l,o,r,e.type==="form-group"?e.id:"");let u=this.getExpressionData().find(f=>f.targetType===n&&f.target===l);const d=f=>f.value.trim()==="";if(u){const f=u.rules.find(c=>c.id===a.id);if(f)d(a)?u.rules=u.rules.filter(c=>c.id!==a.id):(Object.assign(f,a),r==="validate"&&e.type==="form-group"&&(f.elementId=e.id));else{if(d(a))return null;u.rules=u.rules||[],u.rules.push(a)}}else{if(d(a))return null;u={target:`${l}`,rules:[a],targetType:n}}return u}getExpressionEditorOptions(e,n,o,r){return o.reduce((l,a)=>{var u,d;const s=n==="Field"?(u=e==null?void 0:e.binding)==null?void 0:u.field:e.id;return l[a]={hide:n==="Field"?!!((d=e==null?void 0:e.binding)!=null&&d.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(s),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 c=this.updateExpression(e,n,f,a);if(r){const m=this.buildRule(s,f,a);r(m)}return c}}},l},{})}getExpressionInfo(e,n,o){const r=n==="Field"?e.binding.field:e.id,l=this.getExpressionRule(r,o),a={value:l&&l.value,targetId:r,targetType:n,expressionType:o};return l&&l.message&&(a.message=l.message),a}getExpressionConfig(e,n,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,n,o,r)}}}getExpressionOptions(e,n,o){const r=this.getExpressionInfo(e,n,o);return{dialogTitle:`${this.expressionNames[o]}编辑器`,singleExpand:!1,showMessage:o==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,o,n),expressionInfo:r}}}class Tn{constructor(e,n){le(this,"componentId");le(this,"viewModelId");le(this,"eventsEditorUtils");le(this,"formSchemaUtils");le(this,"formMetadataConverter");le(this,"designViewModelUtils");le(this,"designViewModelField");le(this,"controlCreatorUtils");le(this,"designerHostService");le(this,"designerContext");le(this,"schemaService",null);le(this,"metadataService",null);le(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=e,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.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 o;const n=e.binding&&e.binding.type==="Form"&&e.binding.field;if(n){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(l=>l.id===n)}e.updateOn=(o=this.designViewModelField)==null?void 0:o.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:Q[e.type]&&Q[e.type].name}]}}}}}getAppearanceConfig(e=null,n={},o){const r={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{...r,properties:{...l},setPropertyRelates(a,s){if(a){switch(a&&a.propertyID){case"class":case"style":{mt.value++;break}}o&&o(a,e,s)}}}}getPropertyEditorParams(e,n=[],o="visible",r={},l={}){const{getVariables:a,getControlName:s,getStateMachines:u}=rr(this.designerHostService),d=this.getRealTargetType(e),f=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],c={type:"property-editor",propertyTypes:f};return f.map(m=>{switch(m){case"Const":Object.assign(c,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":c.expressionConfig=this.getExpressionOptions(e,d,o);break;case"StateMachine":c.stateMachines=u();break;case"Variable":Object.assign(c,{controlName:s(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:a(this.viewModelId),onBeforeOpenVariables:p=>{p.value=a(this.viewModelId)}},l);break}}),c}getVisibleProperty(e,n=""){var l;let o=["Const","Variable","StateMachine","Expression"];return n==="gridFieldEditor"?o=["Const","Expression"]:n==="form-group"&&!((l=e.binding)!=null&&l.field)&&(o=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,o,"visible")}}}getBehaviorConfig(e,n="",o={},r){const l={title:"行为",description:""},a=this.getVisibleProperty(e,n);for(const u in o)a[u]=Object.assign(a[u]||{},o[u]);const s=this;return{...l,properties:{...a},setPropertyRelates(u,d){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(e,u);break}r&&r(u,d)}}}}afterMutilEditorChanged(e,n){this.addNewVariableToViewModel(n,this.viewModelId),this.updateExpressionValue(n),this.clearExpression(n,e)}updateElementByParentContainer(e,n){const o=n&&n.parent&&n.parent.schema;if(!o)return;const r=o.contents.findIndex(a=>a.id===e),l=je.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,l),ir()}addNewVariableToViewModel(e,n){const o=e.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const a={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById(n).states.push(a)}updateExpressionValue(e){const n=e.propertyValue;if(!((n&&n.type)==="Expression"&&n.expressionInfo))return;const{expressionId:l,expressionInfo:a}=n,{targetId:s,targetType:u,expressionType:d,value:f,message:c}=a,m=this.formSchemaUtils.getModule();m.expressions=m.expressions||[];const{expressions:p}=m;let h=p.find(F=>F.target===s);h||(h={target:s,rules:[],targetType:u},p.push(h));const y=h.rules.find(F=>F.type===d);if(y)y.value=f,y.message=c;else{const F={id:l,type:d,value:f,message:c};h.rules.push(F)}delete n.expressionInfo}clearExpression(e,n){const o=e.propertyValue;if(o&&o.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),s=n.binding?n.binding.field:n.id,u=a.find(d=>d.target===s);!u||!u.rules||(u.rules=u.rules.filter(d=>d.type!==l))}getExpressionOptions(e,n,o){return new Fn(this.formSchemaUtils).getExpressionOptions(e,n,o)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-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:o=>{var r;((r=o.controller)==null?void 0:r.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(o)}}},n}}const Pt=class Pt{static getEditorTypesByMDataType(e,n=!1,o=""){if(n)return[{key:Q["language-textbox"].type,value:Q["language-textbox"].name}];let r=Pt.fieldControlTypeMapping[e];if(o==="data-grid-column"&&(r!=null&&r.length)){const l=[Q["check-group"].type,Q["radio-group"].type];r=r.filter(a=>!l.includes(a.key))}return r}static getAllInputTypes(){const e=[];for(const n in Pt.fieldControlTypeMapping)Pt.fieldControlTypeMapping[n].forEach(o=>{e.find(r=>r.key===o.key&&r.value===o.value)||e.push({key:o.key,value:o.value})});return e}static mappingDomPropAndSchemaProp(e,n){var l;const o=(l=e.editor)==null?void 0:l.type,r=[];return(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&n&&n.categoryId&&n.categoryId.indexOf("gridFieldEditor")<0&&r.push({domField:"title",schemaField:"name"}),r.push({domField:"label",schemaField:"name"}),r.push({domField:"editor.required",schemaField:"require"}),r.push({domField:"editor.readonly",schemaField:"readonly"}),(o===Q["input-group"].type||o===Q.textarea.type||o===Q["number-spinner"].type)&&r.push({domField:"editor.maxLength",schemaField:"type.length"}),o===Q["number-spinner"].type&&r.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&r.push({domField:"formatter.precision",schemaField:"type.precision"}),(o===Q["combo-list"].type||o===Q["radio-group"].type)&&r.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&r.push({domField:"formatter.data",schemaField:"type.enumValues"}),o===Q["date-picker"].type&&(r.push({domField:"editor.displayFormat",schemaField:"editor.format"}),r.push({domField:"editor.fieldType",schemaField:"type.name"})),o===Q["number-spinner"].type&&(r.push({domField:"editor.max",schemaField:"editor.maxValue"}),r.push({domField:"editor.min",schemaField:"editor.minValue"})),o===Q.lookup.type&&(r.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),r.push({domField:"editor.valueField",schemaField:"editor.valueField"}),r.push({domField:"editor.textField",schemaField:"editor.textField"}),r.push({domField:"editor.displayType",schemaField:"editor.displayType"}),r.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),r.push({domField:"editor.helpId",schemaField:"editor.helpId"})),r.push({domField:"path",schemaField:"bindingPath"}),r.push({domField:"binding.path",schemaField:"bindingField"}),r.push({domField:"binding.fullPath",schemaField:"path"}),(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&r.push({domField:"field",schemaField:"bindingPath"}),r}};le(Pt,"fieldControlTypeMapping",{String:[{key:Q["input-group"].type,value:Q["input-group"].name},{key:Q.lookup.type,value:Q.lookup.name},{key:Q["date-picker"].type,value:Q["date-picker"].name},{key:Q.switch.type,value:Q.switch.name},{key:Q["check-box"].type,value:Q["check-box"].name},{key:Q["check-group"].type,value:Q["check-group"].name},{key:Q["radio-group"].type,value:Q["radio-group"].name},{key:Q["combo-list"].type,value:Q["combo-list"].name},{key:Q.textarea.type,value:Q.textarea.name},{key:Q["time-picker"].type,value:Q["time-picker"].name}],Text:[{key:Q.textarea.type,value:Q.textarea.name},{key:Q.lookup.type,value:Q.lookup.name}],Decimal:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name}],Integer:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name}],Number:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name},{key:Q.switch.type,value:Q.switch.name},{key:Q["check-box"].type,value:Q["check-box"].name}],BigNumber:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name}],Date:[{key:Q["date-picker"].type,value:Q["date-picker"].name}],DateTime:[{key:Q["date-picker"].type,value:Q["date-picker"].name}],Boolean:[{key:Q.switch.type,value:Q.switch.name},{key:Q["check-box"].type,value:Q["check-box"].name}],Enum:[{key:Q["combo-list"].type,value:Q["combo-list"].name},{key:Q["radio-group"].type,value:Q["radio-group"].name}],Object:[{key:Q.lookup.type,value:Q.lookup.name},{key:Q["combo-list"].type,value:Q["combo-list"].name},{key:Q["radio-group"].type,value:Q["radio-group"].name}]});let Nt=Pt;var It=(t=>(t.Form="Form",t.Variable="Variable",t))(It||{});class ar{constructor(){le(this,"label","");le(this,"id","");le(this,"columnInSM",12);le(this,"columnInMD",6);le(this,"columnInLG",3);le(this,"columnInEL",2);le(this,"displayWidthInSM",1);le(this,"displayWidthInMD",1);le(this,"displayWidthInLG",1);le(this,"displayWidthInEL",1);le(this,"displayColumnCountAtBreakPoint","md");le(this,"tagRow",0);le(this,"showTopBorder",0);le(this,"group",1);le(this,"isSupportedClass",!0);le(this,"fieldSetId","")}}function lr(t){let e,n;const o=new Map;let r=[];function l(f,c){const p=f.split(" ").filter(S=>S.startsWith("col-"));if(p.length===0){c.isSupportedClass=!1;return}let h=p.find(S=>/^col-([1-9]|10|11|12)$/.test(S)),y=p.find(S=>/^col-md-([1-9]|10|11|12)$/.test(S)),F=p.find(S=>/^col-xl-([1-9]|10|11|12)$/.test(S)),_=p.find(S=>/^col-el-([1-9]|10|11|12)$/.test(S));h=h||"col-12",c.columnInSM=parseInt(h.replace("col-",""),10),c.displayWidthInSM=c.columnInSM/12,c.displayWidthInSM!==1&&(c.isSupportedClass=!1),y=y||"col-md-"+c.columnInSM,c.columnInMD=parseInt(y.replace("col-md-",""),10),c.displayWidthInMD=c.columnInMD/6,[1,2].includes(c.displayWidthInMD)||(c.isSupportedClass=!1),F=F||"col-xl-"+c.columnInMD,c.columnInLG=parseInt(F.replace("col-xl-",""),10),c.displayWidthInLG=c.columnInLG/3,[1,2,3,4].includes(c.displayWidthInLG)||(c.isSupportedClass=!1),_=_||"col-el-"+c.columnInLG,c.columnInEL=parseInt(_.replace("col-el-",""),10),c.displayWidthInEL=c.columnInEL/2,[1,2,3,4,5,6].includes(c.displayWidthInEL)||(c.isSupportedClass=!1)}function a(f,c,m,p=!1){let h=!1;f.contents.forEach(y=>{if(y.type==="fieldset"){m+=1,a(y,c,m,!0),h=!0;return}h&&(m+=1,h=!1);const F=y.appearance&&y.appearance.class,_=new ar;F?l(F,_):_.isSupportedClass=!1,_.label=y.label||y.id,_.id=y.id,_.group=m,p&&(_.fieldSetId=f.id),n===y.id&&(e=m),o.set(y.id,y),c.push(_)})}function s(f){const c=t.getComponentById(f);if(!c||!c.componentType||!c.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const m=t.selectNode(c,p=>p.type===ft.DgControl["response-form"].type);return!m||!m.contents||m.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:m}}function u(f,c){c=c||f.id;const{result:m,message:p,formNode:h}=s(c);if(!m)return{result:m,message:p};n=f.id,r=[],o.clear();const y=h.contents[0].type===ft.DgControl.fieldset.type?0:1;a(h,r,y);const F=r.find(S=>!S.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:F?"customize":"standard"},importData:r}}function d(f,c){c=c;const{result:m,formNode:p}=s(c);if(!m)return"";const h=[];return f.forEach(y=>{var S;const F=o.get(y.id),_=F.appearance&&F.appearance.class;if(_){const M=_.split(" ").filter($=>!$.startsWith("col-")),b="col-"+y.columnInSM,v="col-md-"+y.columnInMD,g="col-xl-"+y.columnInLG,C="col-el-"+y.columnInEL,I=[b,v,g,C].concat(M);F.appearance.class=I.join(" ")}if(y.fieldSetId){const w=p.contents.find(b=>b.id===y.fieldSetId),M=h.find(b=>b.id===y.fieldSetId);M?(S=M.contents)==null||S.push(F):(h.push(w),w.contents=[F])}else h.push(F)}),p.contents=h,p.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:u,changeFormControlsByResponseLayoutConfig:d,getResonseFormLayoutConfig:a}}var gt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ht(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var sr={exports:{}};(function(t,e){(function(n){t.exports=n()})(function(){return function(){function n(o,r,l){function a(d,f){if(!r[d]){if(!o[d]){var c=typeof Ht=="function"&&Ht;if(!f&&c)return c(d,!0);if(s)return s(d,!0);var m=new Error("Cannot find module '"+d+"'");throw m.code="MODULE_NOT_FOUND",m}var p=r[d]={exports:{}};o[d][0].call(p.exports,function(h){var y=o[d][1][h];return a(y||h)},p,p.exports,n,o,r,l)}return r[d].exports}for(var s=typeof Ht=="function"&&Ht,u=0;u<l.length;u++)a(l[u]);return a}return n}()({1:[function(n,o,r){var l={},a="(?:^|\\s)",s="(?:\\s|$)";function u(c){var m=l[c];return m?m.lastIndex=0:l[c]=m=new RegExp(a+c+s,"g"),m}function d(c,m){var p=c.className;p.length?u(m).test(p)||(c.className+=" "+m):c.className=m}function f(c,m){c.className=c.className.replace(u(m)," ").trim()}o.exports={add:d,rm:f}},{}],2:[function(n,o,r){(function(l){var a=n("contra/emitter"),s=n("crossvent"),u=n("./classes"),d=document,f=d.documentElement;function c(E,B){var V=arguments.length;V===1&&Array.isArray(E)===!1&&(B=E,E=[]);var T,x,O,W,P,R,A,N,D,Z=null,ee,Y,ie=!1,z=0,q,L=B||{};L.moves===void 0&&(L.moves=S),L.accepts===void 0&&(L.accepts=S),L.invalid===void 0&&(L.invalid=Ee),L.containers===void 0&&(L.containers=E||[]),L.isContainer===void 0&&(L.isContainer=_),L.copy===void 0&&(L.copy=!1),L.copySortSource===void 0&&(L.copySortSource=!1),L.revertOnSpill===void 0&&(L.revertOnSpill=!1),L.removeOnSpill===void 0&&(L.removeOnSpill=!1),L.direction===void 0&&(L.direction="vertical"),L.ignoreInputTextSelection===void 0&&(L.ignoreInputTextSelection=!0),L.mirrorContainer===void 0&&(L.mirrorContainer=d.body);var U=a({containers:L.containers,start:ne,end:ze,cancel:pe,remove:X,destroy:Se,canMove:K,dragging:!1});return L.removeOnSpill===!0&&U.on("over",yt).on("out",Tt),he(),U;function se(k){return U.containers.indexOf(k)!==-1||L.isContainer(k)}function he(k){var j=k?"remove":"add";h(f,j,"mousedown",ge),h(f,j,"mouseup",Qe)}function me(k){var j=k?"remove":"add";h(f,j,"mousemove",He)}function de(k){var j=k?"remove":"add";s[j](f,"selectstart",Ve),s[j](f,"click",Ve)}function Se(){he(!0),Qe({})}function Ve(k){ee&&k.preventDefault()}function ge(k){W=k.clientX,P=k.clientY;var j=y(k)!==1||k.metaKey||k.ctrlKey;if(!j){var G=k.target,J=H(G);J&&(ee=J,me(),k.type==="mousedown"&&(v(G)?G.focus():k.preventDefault()))}}function He(k){if(ee){if(y(k)===0){Qe({});return}if(!(k.clientX!==void 0&&Math.abs(k.clientX-W)<=(L.slideFactorX||0)&&k.clientY!==void 0&&Math.abs(k.clientY-P)<=(L.slideFactorY||0))){if(L.ignoreInputTextSelection){var j=$("clientX",k)||0,G=$("clientY",k)||0,J=d.elementFromPoint(j,G);if(v(J))return}var ue=ee;me(!0),de(),ze(),xe(ue),u.add(N||O,"gu-transit"),vt(),Mt(),z=0,st(k)}}}function H(k){if(!(U.dragging&&T)&&!se(k)){for(var j=k;b(k)&&se(b(k))===!1;)if(L.invalid(k,j)||(k=b(k),!k))return;var G=b(k);if(G&&!L.invalid(k,j)){var J=L.moves(k,G,j,C(k));if(J)return{item:k,source:G}}}}function K(k){return!!H(k)}function ne(k){var j=H(k);j&&xe(j)}function xe(k){ot(k.item,k.source)&&(N=k.item.cloneNode(!0),U.emit("cloned",N,k.item,"copy")),x=k.source,O=k.item,R=A=C(k.item),U.dragging=!0,U.emit("drag",O,x)}function Ee(){return!1}function ze(){if(U.dragging){var k=N||O;Xe(k,b(k))}}function Ye(){ee=!1,me(!0),de(!0)}function Qe(k){if(Ye(),!!U.dragging){var j=N||O,G=$("clientX",k)||0,J=$("clientY",k)||0,ue=F(T,G,J),ye=Ke(ue,G,J);ye&&(N&&L.copySortSource||!N||ye!==x)?Xe(j,ye):L.removeOnSpill?X():pe()}}function Xe(k,j){var G=b(k);N&&L.copySortSource&&j===x&&G.removeChild(O),Fe(j)?U.emit("cancel",k,x):U.emit("drop",k,j,x,A),Ne()}function X(){if(U.dragging){var k=N||O,j=b(k);j&&j.removeChild(k),U.emit(N?"cancel":"remove",k,j,x),Ne()}}function pe(k){if(U.dragging){var j=arguments.length>0?k:L.revertOnSpill,G=N||O,J=b(G),ue=Fe(J);ue===!1&&j&&(N?J&&J.removeChild(N):x.insertBefore(G,R)),ue||j?U.emit("cancel",G,x,x):U.emit("drop",G,J,x,A),Ne()}}function Ne(){var k=N||O;Ye(),te(),ae(),k&&u.rm(k,"gu-transit"),D&&clearTimeout(D),U.dragging=!1,Z&&U.emit("out",k,Z,x),U.emit("dragend",k,z),x=O=N=R=A=D=Z=null}function Fe(k,j){var G;return j!==void 0?G=j:T?G=A:G=C(N||O),k===x&&G===R}function Ke(k,j,G){for(var J=k;J&&!ue();)J=b(J);return J;function ue(){var ye=se(J);if(ye===!1)return!1;var $e=fe(J,k),Te=nt(J,$e,j,G),we=Fe(J,Te);return we?!0:L.accepts(O,J,x,Te)}}function st(k){if(!T)return;k.preventDefault();var j=$("clientX",k)||0,G=$("clientY",k)||0;T.style.left=j-2+"px",T.style.top=G-2+"px";var J=N||O,ue=F(T,j,G),ye=Ke(ue,j,G),$e=ye!==null&&ye!==Z;($e||ye===null)&&(Be(),Z=ye,Ie()),dt(ue,G);var Te=b(J);if(ye===x&&N&&!L.copySortSource){Te&&Te.removeChild(J);return}var we,Me=fe(ye,ue);if(ie=Pe(Me,ye),Me!==null)we=nt(ye,Me,j,G);else if(L.revertOnSpill===!0&&!N)we=R,ye=x;else{N&&Te&&Te.removeChild(J),N&&Y&&(Y.style.display="none");return}Y.style.display="block",Ft(we,J,$e),we?Ue(Me,we):Ze(ye);function Ce(Oe){U.emit(Oe,J,Z,x)}function Ie(){$e&&Ce("over")}function Be(){Z&&Ce("out")}}function Ft(k,j,G){(k===j||k===C(j))&&(A=C(j)),(k===null&&G||k!==j&&k!==C(j))&&(A=k)}function yt(k){u.rm(k,"gu-hide")}function Tt(k){U.dragging&&u.add(k,"gu-hide")}function Mt(){T||(T=document.createElement("div"),T.style="background: grey; color: white; height: 24px; text-align: center; padding: 3px 10px; min-width: 100px;border-radius: 4px; box-shadow: 0 0 6px grey;",T.innerHTML=L.getMirrorText&&L.getMirrorText(O)||"控件",u.add(T,"gu-mirror"),L.mirrorContainer.appendChild(T),h(f,"add","mousemove",st),u.add(L.mirrorContainer,"gu-unselectable"),U.emit("cloned",T,O,"mirror"))}function vt(){if(Y=document.createElement("div"),u.add(Y,"gu-insertion"),O){var k=O.getBoundingClientRect();Y.style.left=k.left+"px",Y.style.top=k.top+"px"}ie=!1,L.mirrorContainer.appendChild(Y)}function te(){T&&(u.rm(L.mirrorContainer,"gu-unselectable"),h(f,"remove","mousemove",st),b(T).removeChild(T),T=null)}function ae(){Y&&(b(Y).removeChild(Y),Y=null)}function fe(k,j){for(var G=j;G!==k&&b(G)!==k;)G=b(G);return G===f?null:G}function Pe(k,j){if(!j)return ie;var G=k||j&&j.lastElementChild;if(!G)return!0;var J=getComputedStyle(k),ue=/^inline/.test(J.getPropertyValue("display"))||/^(left|right)$/.test(J.getPropertyValue("float"));if(ue)return!0;if(j){var ye=getComputedStyle(j),$e=ye.getPropertyValue("display");if(/flex$/.test($e)){var Te=ye.getPropertyValue("flex-direction")||"row";if(Te==="row"||Te==="row-reverse")return!Re(j)}return!1}return!0}function Re(k){if(!k.children||!k.children.length)return!1;for(const j of Array.from(k.children)){const J=(j.className&&j.className.split(" ")||[]).filter(ue=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(ue));if(!J.length)return!1;for(const ue of J){const ye=ue.slice(ue.lastIndexOf("-")+1);if(parseInt(ye,10)!==12)return!1}}return!0}function Ue(k,j){const G=j.getBoundingClientRect();if(Y.style.left=G.left+"px",Y.style.top=G.top+"px",ie){if(Y.style.height=G.height+"px",Y.style.width="4px",k){const J=k.getBoundingClientRect();J.top!==G.top&&(Y.style.left=J.right+"px",Y.style.top=J.top+"px",Y.style.height=J.height+"px")}}else if(Y.style.height="4px",Y.style.width=G.width+"px",q){const J=q.getBoundingClientRect();G.top<J.top&&(Y.style.display="none")}j===O&&O&&(Y.style.display="none")}function Ze(k){A=null;var j=k.lastElementChild;if(j){var G=j.getBoundingClientRect();ie?(Y.style.left=G.right+"px",Y.style.top=G.top+"px",Y.style.height=G.height+"px",Y.style.width="4px"):(Y.style.left=G.left+"px",Y.style.top=G.bottom+"px",Y.style.height="4px",Y.style.width=G.width+"px"),j===O&&O&&(Y.style.display="none")}else Y.style.display="none"}function dt(k,j){if(!L.mirrorContainer.contains(k)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(q=m(k),!q||!q.contains(k)))return;const G=document.querySelector(".dgComponentSelected"),J=q.getBoundingClientRect();if(j-30<J.top&&q.scrollTop>0){let ue=q.scrollTop<10?q.scrollTop:10;q.scrollBy(0,-1*ue),G&&q.contains(G)&&(z=z+-1*ue)}if(j+30>J.bottom&&q.scrollTop<q.scrollHeight-q.clientHeight){const ue=q.scrollHeight-q.clientHeight-q.scrollTop;let ye=ue<10?ue:10;q.scrollBy(0,ye),G&&q.contains(G)&&(z=z+ye)}}function nt(k,j,G,J){var ue=L.direction==="horizontal",ye=L.direction==="mixed",$e=j!==k?we():Te();return $e;function Te(){var Ce=k.children.length,Ie,Be,Oe;for(Ie=0;Ie<Ce;Ie++)if(Be=k.children[Ie],Oe=Be.getBoundingClientRect(),ue&&Oe.left+Oe.width/2>G||!ye&&!ue&&Oe.top+Oe.height/2>J||ye&&Oe.left+Oe.width>G&&Oe.top+Oe.height>J)return Be;return null}function we(){var Ce=j.getBoundingClientRect();if(ye){var Ie=J-Ce.top,Be=G-Ce.left,Oe=Ce.bottom-J,Bt=Ce.right-G,Ot=Math.min(Be,Bt,Ie,Oe),$t;return ie?$t=Bt<Be:$t=Oe===Ot||Bt===Ot||Be===Ot,Me($t)}return Me(ue?G>Ce.left+w(Ce)/2:J>Ce.top+M(Ce)/2)}function Me(Ce){return Ce?C(j):j}}function ot(k,j){return typeof L.copy=="boolean"?L.copy:L.copy(k,j)}}function m(E){const B=Array.from(window.scrollContainerList);if(B.length===1){const T=Array.from(window.scrollContainerList)[0];return document.getElementById(T)}const V=p(B);for(const T of V)if(T.contains(E))return T;return null}function p(E){const B=[];return E.forEach(V=>{const T=document.getElementById(V);T&&B.push(T)}),B.sort((V,T)=>V.contains(T)?1:T.contains(V)?-1:0),B}function h(E,B,V,T){var x={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},O={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},W={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};l.navigator.pointerEnabled?s[B](E,O[V],T):l.navigator.msPointerEnabled?s[B](E,W[V],T):(s[B](E,x[V],T),s[B](E,V,T))}function y(E){if(E.touches!==void 0)return E.touches.length;if(E.which!==void 0&&E.which!==0)return E.which;if(E.buttons!==void 0)return E.buttons;var B=E.button;if(B!==void 0)return B&1?1:B&2?3:B&4?2:0}function F(E,B,V){E=E||{};var T=E.className||"",x;return E.className+=" gu-hide",x=d.elementFromPoint(B,V),E.className=T,x}function _(){return!1}function S(){return!0}function w(E){return E.width||E.right-E.left}function M(E){return E.height||E.bottom-E.top}function b(E){return E.parentNode===d?null:E.parentNode}function v(E){return E.tagName==="INPUT"||E.tagName==="TEXTAREA"||E.tagName==="SELECT"||g(E)}function g(E){return!E||E.contentEditable==="false"?!1:E.contentEditable==="true"?!0:g(b(E))}function C(E){return E.nextElementSibling||B();function B(){var V=E;do V=V.nextSibling;while(V&&V.nodeType!==1);return V}}function I(E){return E.targetTouches&&E.targetTouches.length?E.targetTouches[0]:E.changedTouches&&E.changedTouches.length?E.changedTouches[0]:E}function $(E,B){var V=I(B),T={pageX:"clientX",pageY:"clientY"};return E in T&&!(E in V)&&T[E]in V&&(E=T[E]),V[E]}o.exports=c}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(n,o,r){o.exports=function(a,s){return Array.prototype.slice.call(a,s)}},{}],4:[function(n,o,r){var l=n("ticky");o.exports=function(s,u,d){s&&l(function(){s.apply(d||null,u||[])})}},{ticky:10}],5:[function(n,o,r){var l=n("atoa"),a=n("./debounce");o.exports=function(u,d){var f=d||{},c={};return u===void 0&&(u={}),u.on=function(m,p){return c[m]?c[m].push(p):c[m]=[p],u},u.once=function(m,p){return p._once=!0,u.on(m,p),u},u.off=function(m,p){var h=arguments.length;if(h===1)delete c[m];else if(h===0)c={};else{var y=c[m];if(!y)return u;y.splice(y.indexOf(p),1)}return u},u.emit=function(){var m=l(arguments);return u.emitterSnapshot(m.shift()).apply(this,m)},u.emitterSnapshot=function(m){var p=(c[m]||[]).slice(0);return function(){var h=l(arguments),y=this||u;if(m==="error"&&f.throws!==!1&&!p.length)throw h.length===1?h[0]:h;return p.forEach(function(_){f.async?a(_,h,y):_.apply(y,h),_._once&&u.off(m,_)}),u}},u}},{"./debounce":4,atoa:3}],6:[function(n,o,r){(function(l){var a=n("custom-event"),s=n("./eventmap"),u=l.document,d=m,f=h,c=[];l.addEventListener||(d=p,f=y),o.exports={add:d,remove:f,fabricate:F};function m(b,v,g,C){return b.addEventListener(v,g,C)}function p(b,v,g){return b.attachEvent("on"+v,S(b,v,g))}function h(b,v,g,C){return b.removeEventListener(v,g,C)}function y(b,v,g){var C=w(b,v,g);if(C)return b.detachEvent("on"+v,C)}function F(b,v,g){var C=s.indexOf(v)===-1?$():I();b.dispatchEvent?b.dispatchEvent(C):b.fireEvent("on"+v,C);function I(){var E;return u.createEvent?(E=u.createEvent("Event"),E.initEvent(v,!0,!0)):u.createEventObject&&(E=u.createEventObject()),E}function $(){return new a(v,{detail:g})}}function _(b,v,g){return function(I){var $=I||l.event;$.target=$.target||$.srcElement,$.preventDefault=$.preventDefault||function(){$.returnValue=!1},$.stopPropagation=$.stopPropagation||function(){$.cancelBubble=!0},$.which=$.which||$.keyCode,g.call(b,$)}}function S(b,v,g){var C=w(b,v,g)||_(b,v,g);return c.push({wrapper:C,element:b,type:v,fn:g}),C}function w(b,v,g){var C=M(b,v,g);if(C){var I=c[C].wrapper;return c.splice(C,1),I}}function M(b,v,g){var C,I;for(C=0;C<c.length;C++)if(I=c[C],I.element===b&&I.type===v&&I.fn===g)return C}}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(n,o,r){(function(l){var a=[],s="",u=/^on/;for(s in l)u.test(s)&&a.push(s.slice(2));o.exports=a}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(n,o,r){(function(l){var a=l.CustomEvent;function s(){try{var u=new a("cat",{detail:{foo:"bar"}});return u.type==="cat"&&u.detail.foo==="bar"}catch{}return!1}o.exports=s()?a:typeof document<"u"&&typeof document.createEvent=="function"?function(d,f){var c=document.createEvent("CustomEvent");return f?c.initCustomEvent(d,f.bubbles,f.cancelable,f.detail):c.initCustomEvent(d,!1,!1,void 0),c}:function(d,f){var c=document.createEventObject();return c.type=d,f?(c.bubbles=!!f.bubbles,c.cancelable=!!f.cancelable,c.detail=f.detail):(c.bubbles=!1,c.cancelable=!1,c.detail=void 0),c}}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(n,o,r){var l=o.exports={},a,s;function u(){throw new Error("setTimeout has not been defined")}function d(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=u}catch{a=u}try{typeof clearTimeout=="function"?s=clearTimeout:s=d}catch{s=d}})();function f(M){if(a===setTimeout)return setTimeout(M,0);if((a===u||!a)&&setTimeout)return a=setTimeout,setTimeout(M,0);try{return a(M,0)}catch{try{return a.call(null,M,0)}catch{return a.call(this,M,0)}}}function c(M){if(s===clearTimeout)return clearTimeout(M);if((s===d||!s)&&clearTimeout)return s=clearTimeout,clearTimeout(M);try{return s(M)}catch{try{return s.call(null,M)}catch{return s.call(this,M)}}}var m=[],p=!1,h,y=-1;function F(){!p||!h||(p=!1,h.length?m=h.concat(m):y=-1,m.length&&_())}function _(){if(!p){var M=f(F);p=!0;for(var b=m.length;b;){for(h=m,m=[];++y<b;)h&&h[y].run();y=-1,b=m.length}h=null,p=!1,c(M)}}l.nextTick=function(M){var b=new Array(arguments.length-1);if(arguments.length>1)for(var v=1;v<arguments.length;v++)b[v-1]=arguments[v];m.push(new S(M,b)),m.length===1&&!p&&f(_)};function S(M,b){this.fun=M,this.array=b}S.prototype.run=function(){this.fun.apply(null,this.array)},l.title="browser",l.browser=!0,l.env={},l.argv=[],l.version="",l.versions={};function w(){}l.on=w,l.addListener=w,l.once=w,l.off=w,l.removeListener=w,l.removeAllListeners=w,l.emit=w,l.prependListener=w,l.prependOnceListener=w,l.listeners=function(M){return[]},l.binding=function(M){throw new Error("process.binding is not supported")},l.cwd=function(){return"/"},l.chdir=function(M){throw new Error("process.chdir is not supported")},l.umask=function(){return 0}},{}],10:[function(n,o,r){(function(l){var a=typeof l=="function",s;a?s=function(u){l(u)}:s=function(u){setTimeout(u,0)},o.exports=s}).call(this,n("timers").setImmediate)},{timers:11}],11:[function(n,o,r){(function(l,a){var s=n("process/browser.js").nextTick,u=Function.prototype.apply,d=Array.prototype.slice,f={},c=0;r.setTimeout=function(){return new m(u.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new m(u.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(p){p.close()};function m(p,h){this._id=p,this._clearFn=h}m.prototype.unref=m.prototype.ref=function(){},m.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(p,h){clearTimeout(p._idleTimeoutId),p._idleTimeout=h},r.unenroll=function(p){clearTimeout(p._idleTimeoutId),p._idleTimeout=-1},r._unrefActive=r.active=function(p){clearTimeout(p._idleTimeoutId);var h=p._idleTimeout;h>=0&&(p._idleTimeoutId=setTimeout(function(){p._onTimeout&&p._onTimeout()},h))},r.setImmediate=typeof l=="function"?l:function(p){var h=c++,y=arguments.length<2?!1:d.call(arguments,1);return f[h]=!0,s(function(){f[h]&&(y?p.apply(null,y):p.call(null),r.clearImmediate(h))}),h},r.clearImmediate=typeof a=="function"?a:function(p){delete f[p]}}).call(this,n("timers").setImmediate,n("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(sr),`${jt.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const cr={customClass:{type:String,default:""},sort:{type:Object},filter:{type:Object},autoCheckChildren:{type:Boolean,default:!1},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},displayField:{type:String,default:"name"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},hierarchy:{type:Object,default:{cascadeOption:{autoCancelParent:!0,autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loadData:{type:Function},loading:{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:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:jt.LocaleService.getLocaleValue("datagrid.lineNumberTitle")}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},showVerticallLines:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},virtualized:{type:Boolean,default:!1},emptyTemplate:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}}};function dr(t,e,n,o,r,l,a,s,u,d,f,c,m,p,h,y,F){const{calculateCellPositionInRow:_}=l,{columnContext:S,hasLeftFixedColumn:w,hasRightFixedColumn:M}=a,{gridDataStyle:b,leftFixedGridDataStyle:v,rightFixedGridDataStyle:g}=p,{renderDataRow:C}=ce.getHierarchyRow(t,e,S,F,s,u,d,f,c,m,p,h,y),I=[C];function $(x,O){const W=_(x);return F.value.filter(P=>P.visible!==!1).map((P,R)=>I[P.type](P,W,O,R))}function E(){return i.createVNode("div",{ref:o,class:"fv-grid-content-left-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:v.value},[$(S.value.leftColumns.filter(x=>x.visible),"left")])])}function B(){return i.createVNode("div",{ref:n,class:"fv-grid-content-primary"},[i.createVNode("div",{class:"fv-grid-data",style:b.value},[$(S.value.primaryColumns.filter(x=>x.visible),"primary")])])}function V(){return i.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:g.value},[$(S.value.rightColumns.filter(x=>x.visible),"right")])])}function T(){const x=[];return w.value&&x.push(E()),x.push(B()),M.value&&x.push(V()),x}return{renderDataArea:T}}const ur=i.defineComponent({name:"FTreeGrid",props:cr,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged"],setup(t,e){var Xn,Zn;const o=((Xn=t.rowOption)==null?void 0:Xn.height)||28,r=i.ref(20),l=i.ref(t.columns),a=ce.useIdentify(t),{idField:s}=a,u=i.ref(),d=i.ref(),f=i.ref(),c=i.ref(),m=i.ref(),p=i.ref([]),h=i.ref(!1),y=i.ref(((Zn=t.rowOption)==null?void 0:Zn.wrapContent)||!1),F=ce.useGroupData(t,a),_=ce.useFilter(t,e),S=ce.useHierarchy(t),{collapseField:w}=S,{showLoading:M,renderLoading:b}=ce.useLoading(t,u),v=ce.useDataView(t,new Map,_,S,a),{dataView:g}=v,C=ce.useSelection(t,v,a,p,e),{showSelection:I,selectedValues:$}=C,E=ce.useSelectHierarchyItem(t,p,v,a,C,e),B=i.computed(()=>t.disabled),V=i.computed(()=>t.virtualized?Math.min(v.dataView.value.length,r.value):v.dataView.value.length),T=ce.usePagination(t,v),{shouldRenderPagination:x}=T,{containerStyleObject:O}=ce.useDataViewContainerStyle(t),W=ce.useCommandColumn(t),{applyCommands:P}=W;P(l);const{applyColumnSetting:R,removeColumnSetting:A}=ce.useSettingColumn(t);t.showSetting&&R(l);const N=ce.useColumn(t,e),D=ce.useSort(t),{applyColumnSorter:Z,columnContext:ee,updateColumnRenderContext:Y}=N;Z(v,D);const ie=ce.useGroupColumn(t,ee),z=ce.useRow(t,e,C,a),q=ce.useEdit(t,e,a,z,p),L=ce.useVisualDataBound(t),U=ce.useVisualDataCell(t,q,L),se=ce.useVisualDataRow(t,v,q,S,a,L,U),he=ce.useVisualData(t,l,v,V,0,se),{getVisualData:me}=he,de=ce.useCellPosition(t,ee),Se=ce.useSidebar(t,C),{sidebarWidth:Ve}=Se,ge=ce.useVirtualScroll(t,v,p,ee,he,V,0,Ve),{onWheel:He,dataGridWidth:H,viewPortHeight:K,viewPortWidth:ne,resetScroll:xe,updateVisibleRowsOnLatestVisibleScope:Ee}=ge,ze=ce.useFitColumn(t,ee,d,ne,ie),{calculateColumnsSize:Ye}=ze,Qe=ce.useFilterHistory(),Xe=ce.useColumnFilter(d,m,v,Qe,ge),X=ce.useDragColumn(t,e,N,v,ie,F,ge),pe=i.computed(()=>{const re={"fv-grid":!0,"fv-grid-bordered":t.showBorder,"fv-grid-horizontal-bordered":t.showHorizontalLines,"fv-datagrid-strip":t.showStripe};return oe.getCustomClass(re,t.customClass)}),Ne=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":h.value,"fv-grid-wrap-content":y.value})),{renderDataArea:Fe}=dr(t,e,f,c,m,de,N,v,q,S,z,C,E,ge,he,L,p),{renderGridHeader:Ke,renderGridColumnResizeOverlay:st,shouldShowHeader:Ft}=ce.getColumnHeader(t,e,d,c,m,N,v,X,Xe,_,Qe,ze,ie,C,Se,D,ge,ne,p),{renderDataGridSidebar:yt}=ce.getSidebar(t,z,C,Se,ge),{renderDisableMask:Tt}=ce.getDisableMask(),{renderHorizontalScrollbar:Mt}=ce.getHorizontalScrollbar(t,d,ge),{renderVerticalScrollbar:vt}=ce.getVerticalScrollbar(t,d,ge);function te(){var re,ve,De;if(d.value&&d.value.clientHeight>0&&((re=d.value)==null?void 0:re.clientWidth)>0){const Ge=Math.ceil(d.value.clientHeight/o);Ge>r.value&&(r.value=Ge,Ee()),K.value=((ve=f.value)==null?void 0:ve.clientHeight)||0,H.value=((De=d.value)==null?void 0:De.clientWidth)||0,Ye()}}i.onMounted(()=>{d.value&&(r.value=Math.max(Math.ceil(d.value.clientHeight/o),r.value),p.value=me(0,V.value+0-1),Kt.useResizeObserver(d.value,te),Ye(),i.nextTick(()=>{d.value&&(H.value=d.value.clientWidth),f.value&&(ne.value=f.value.clientWidth,K.value=f.value.clientHeight)})),M.value&&b()}),i.onUnmounted(()=>{}),i.watch(ne,()=>{d.value&&Ye()});function ae(re){v.collapseTo(re),v.reOrderVisibleIndex(),xe()}function fe(re){v.expandTo(re),v.reOrderVisibleIndex(),xe()}function Pe(){const re=C.getSelectionRow();return re?re.dataIndex-1:-1}function Re(){const re=Pe();v.insertNewDataItem(re),p.value=me(0,V.value+0-1)}function Ue(){const re=Pe();v.insertNewChildDataItem(re),p.value=me(0,V.value+0-1)}function Ze(re,ve){const De=p.value.find(Je=>Je.raw[s.value]===ve),Ge=De?De.dataIndex-1:-1;v.insertNewChildDataItems(re,Ge)}function dt(){const re=Pe(),ve=E.getNextSelectableHierarchyItemId(re);v.removeHierarchyDataItem(re),p.value=me(0,V.value+0-1),ve&&C.selectItemById(ve)}function nt(re){q.onEditingRow(re)}function ot(re){q.acceptEditingRow(re)}function k(re){q.cancelEditingRow(re)}function j(re){re&&(l.value=re,P(l),Y(l.value),Z(v,D),Ye())}i.watch(()=>t.columns,re=>{j(re)});function G(re,ve){re&&(v.load(re),v.reOrderVisibleIndex(),ve!=null&&ve.keepScrollPosition?ge.scrollTo(ge.offsetY.value):xe())}function J(re){C.selectItemById(re)}function ue(re){const ve=p.value.find(De=>De.raw[a.idField.value]===re);ve&&z.clickRowItem(ve)}function ye(re){z.activeRowById(re)}function $e(re){C.selectItemByIds(re)}function Te(){return C.getSelectedItems()}function we(){C.clearSelection()}const Me=i.computed(()=>!p.value||!p.value.length),{renderEmpty:Ce}=ce.getEmpty(t,e);function Ie(){return C.getSelectionRow()}function Be(re){C.unSelectItemByIds(re)}function Oe(){return C.currentSelectedDataId.value}function Bt(re,ve,De){const Ge=g.value.find(Je=>Je[s.value]===re);if(Ge){if(Object.keys(Ge).forEach(We=>{Object.prototype.hasOwnProperty.call(ve,We)&&(Ge[We]=ve[We])}),De){const{collapseField:We,disabledField:_t,checkedField:Et,visibleField:kt}=De;We&&!je.isUndefined(ve[We])&&(Ge.__fv_collapse__=ve[We]),Et&&!je.isUndefined(ve[Et])&&(Ge.__fv_checked__=ve[Et]),_t&&!je.isUndefined(ve[_t])&&(Ge.__fv_disabled__=ve[_t]),kt&&!je.isUndefined(ve[kt])&&(Ge.__fv_visible__=ve[kt])}const Je=p.value.find(We=>We.raw[s.value]===re),Jn=p.value.findIndex(We=>We.raw[s.value]===re);if(Je){if(Je.raw=Ge,Object.keys(Je.data).forEach(We=>{Je.data[We].updateData(Ge)}),De){const{collapseField:We,disabledField:_t,checkedField:Et,visibleField:kt}=De;We&&!je.isUndefined(ve[We])&&(Je.collapse=ve[We]),Et&&!je.isUndefined(ve[Et])&&(Je.checked=ve[Et]),_t&&!je.isUndefined(ve[_t])&&(Je.disabled=ve[_t]),kt&&!je.isUndefined(ve[kt])&&(Je.visible=ve[kt])}p.value=[...p.value.slice(0,Jn),Je,...p.value.slice(Jn+1)],v.updateSummary()}}}function Ot(re){return Object.prototype.hasOwnProperty.call(re,"raw")?v.hasRealChildren(re.raw):v.hasRealChildren(re)}function $t(re){const ve=v.dataView.value.find(De=>De[s.value]===re);return ve?ve[w.value]:""}function il(){return w.value}i.watch(()=>t.showSetting,(re,ve)=>{re!==ve&&(re?R(l):A(l),j(l.value))});function rl(re){return p.value.filter(ve=>re.includes(ve.raw[t.idField]))}function al(re){const ve=a.idField.value,De=p.value.find(Ge=>Ge.raw[ve]===re);De&&z.selectRow(De)}function ll(){C.keepSelectingOnPaging.value||we(),v.updateVisibleDataSummary(p.value)}e.expose({activeRowById:ye,addNewDataItem:Re,addNewChildDataItem:Ue,addChildrenToNode:Ze,collapseTo:ae,expandTo:fe,removeDataItem:dt,editDataItem:nt,acceptDataItem:ot,cancelDataItem:k,updateColumns:j,updateDataSource:G,selectItemById:J,selectItemByIds:$e,getSelectedItems:Te,clearSelection:we,getSelectionRow:Ie,clickRowItemById:ue,unSelectItemByIds:Be,getCurrentRowId:Oe,reassignRowData:Bt,hasChildren:Ot,getCollapseField:il,getCollapseStatusById:$t,getVisibleDataByIds:rl,selectRowById:al,updateDerivedData:ll});const sl=i.computed(()=>{const re={};return ge.shouldShowHorizontalScrollbar.value&&(re.paddingBottom="10px"),ge.shouldShowVirticalScrollbar.value&&(re.paddingRight="10px"),re}),cl=i.computed(()=>({...O.value,borderRadius:"5px"}));ce.getPagination(t,e,v,ge,T,C);const dl=i.computed(()=>({"d-flex":!0,"justify-content-between":x.value&&I.value,"justify-content-end":x.value&&!I.value,"position-relative":!0})),ul=i.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:fl}=ce.getSummary(t,v,N);return()=>i.createVNode("div",{ref:u,class:pe.value,style:cl.value,onWheel:He},[d.value&&Ft.value&&Ke(),i.createVNode("div",{ref:d,class:Ne.value,onMouseover:()=>h.value=!0,onMouseleave:()=>h.value=!1,style:sl.value},[d.value&&yt(p),d.value&&Fe(),d.value&&Me.value&&Ce(),d.value&&Mt(),d.value&&vt()]),d.value&&fl(),I.value&&i.createVNode("div",{class:dl.value},[I.value&&i.createVNode("div",{class:ul.value},[i.createVNode("div",null,["已选:"+$.value.length,i.createTextVNode(" 条")])])]),st(),B.value&&Tt()])}});oe.withInstall(ur);const fr=new Map([["appearance",Lt]]);function mr(t,e,n){return e}ht({direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},fr,mr,{title:"step",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}});const pr="root-viewmodel";class hr{constructor(e,n){le(this,"formSchemaUtils");le(this,"controlCreatorUtils");le(this,"designViewModelUtils");this.resolver=e,this.designerHostService=n,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(e){const n=this.createComponentRefNode(e),o=this.createComponentNode(e),r=this.createViewModeNode(e),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),n}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"),o=this.createFormComponentContents(e);return Object.assign(n,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getFormComponentClass()},formColumns:e.formColumns,contents:o}),n}getFormComponentClass(){const{templateId:e}=this.formSchemaUtils.getFormSchema().module;return e==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(e){const n=this.resolver.getSchemaByType("section");Object.assign(n,{id:e.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:e.componentName});const o=this.resolver.getSchemaByType("response-form"),r=[];Object.assign(o,{id:e.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:r}),n.contents=[o];const{selectedFields:l}=e;l==null||l.forEach(s=>{if(s.$type===oe.FormSchemaEntityField$Type.SimpleField){const u=je.cloneDeep(s),d=this.resolveControlClassByFormColumns(e),f=this.controlCreatorUtils.setFormFieldProperty(u,"",d);f&&r.push(f)}});const{templateId:a}=this.formSchemaUtils.getFormSchema().module;return a==="double-list-in-tab-template"&&(n.appearance.class="f-section-grid f-section-in-main px-0 pt-0",n.fill=!0),[n]}resolveControlClassByFormColumns(e){let n="";switch(e.formColumns){case 1:{n="col-12";break}case 2:{n="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{n="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{n="col-12 col-md-6 col-xl-3 col-el-2";break}}return n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:pr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const n=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===oe.FormSchemaEntityField$Type.SimpleField){let l="blur";const a=r.type.name;(a===oe.FormSchemaEntityFieldTypeName.Enum||a===oe.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}}),n}}function gr(t,e,n,o){var l,a,s,u,d,f;const r=n.parentComponentInstance;if(r&&o){const c=(l=r.schema)==null?void 0:l.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((a=n.bindingSourceContext)==null?void 0:a.entityTitle)||((u=(s=n.bindingSourceContext)==null?void 0:s.bindingEntity)==null?void 0:u.name)||"标题",componentType:"form",formColumns:c==="splitter-pane"?1:4,parentContainerId:r.schema.id,bindTo:((d=n.bindingSourceContext)==null?void 0:d.bindTo)||"/",selectedFields:(f=n.bindingSourceContext)==null?void 0:f.bindingEntityFields};return new hr(t,o).createComponent(p)}else return e}function yr(t,e,n){return e}ht({customClass:{type:String,default:""},customStyle:{type:String,defaut:""},visible:{type:Boolean,default:!0},adaptForLanguage:{type:Boolean,default:!0}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0},labelAutoOverflow:{description:"",type:"boolean",default:!1},adaptForLanguage:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Yt,gr);const Mn=[{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 vr(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 br(t){var e;return"请输入正确的"+((e=Mn.find(n=>n.key===t))==null?void 0:e.value)}const Cr={convertTo:(t,e,n,o)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation.type=n,t.editor.formatValidation.expression=vr(n),t.editor.formatValidation.message=br(n)},convertFrom:(t,e,n)=>t.editor.formatValidation?e==="type"?t.editor.formatValidation[e]||"none":t.editor.formatValidation[e]:"none"},_n={convertTo:(t,e,n,o)=>{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 wr extends tt.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 o,r;let n;if(((o=e==null?void 0:e.binding)==null?void 0:o.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(r=l==null?void 0:l.schemaField)!=null&&r.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n}},enableViewPassword:{description:"",title:"启用密码",visible:!1,type:"boolean"}})}getFormatValidation(e){var o,r,l;const n={title:"输入格式校验",description:"输入格式校验",properties:{type:{title:"输入类型",type:"enum",description:"输入类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:Mn},refreshPanelAfterChanged:!0,$converter:Cr,parentPropertyID:"formatValidation"}}};return(o=e.editor.formatValidation)!=null&&o.type&&((r=e.editor.formatValidation)==null?void 0:r.type)!=="none"&&(n.properties.message={title:"输入错误提示",type:"string",description:"输入错误提示",$converter:_n,parentPropertyID:"formatValidation"}),((l=e.editor.formatValidation)==null?void 0:l.type)==="custom"&&(n.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:_n,parentPropertyID:"formatValidation"}),n}}var En=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(En||{});function Sr(t,e,n){function o(){const a=n.componentId;if(!a)return!1;const s=t.formSchemaUtils.getViewModelIdByComponentId(a);if(!s)return!1;const{schema:u}=e,{designViewModelUtils:d}=t,f=d.getDgViewModel(s),c=f==null?void 0:f.fields.find(m=>m.id===u.binding.field);return!(!c||c.$type!==En.SimpleField)}function r(){const{schema:a}=e;return!!t.formSchemaUtils.getVariableById(a.binding.field)}function l(){var u;const{schema:a}=e;let s=!0;if(!t||!((u=a.binding)!=null&&u.field))return s;switch(a.binding.type){case It.Form:{s=o();break}case It.Variable:s=r()}return s}return{checkBindingFieldValidation:l}}ht({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},xn,Yt,void 0);const xr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"response-form-layout-setting",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"response-form-layout-setting"},initialState:{description:"",type:"object"}},required:["id","type"]},Fr={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};ut.createPropsResolver(Fr,xr,nr,yr);const Tr={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function Xt(){return new DOMException("The request is not allowed","NotAllowedError")}async function Mr(t){if(!navigator.clipboard)throw Xt();return navigator.clipboard.writeText(t)}async function _r(t){const e=document.createElement("span");e.textContent=t,e.style.whiteSpace="pre",e.style.webkitUserSelect="auto",e.style.userSelect="all",document.body.appendChild(e);const n=window.getSelection(),o=window.document.createRange();n==null||n.removeAllRanges(),o.selectNode(e),n==null||n.addRange(o);let r=!1;try{r=window.document.execCommand("copy")}finally{n==null||n.removeAllRanges(),window.document.body.removeChild(e)}if(!r)throw Xt()}async function Er(t){try{await Mr(t)}catch(e){try{await _r(t)}catch(n){throw n||e||Xt()}}}function kr(){async function t(e){await Er(e)}return{onCopy:t}}function Ir(t,e,n,o){const r=i.ref(14),l=i.ref(140),a=i.ref(""),s=i.ref(o.value.length),u=i.computed(()=>o.value),d=i.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function f(c){if(c.currentTarget){const m=c.currentTarget.value||"";s.value=m.length}}return()=>i.createVNode(i.Fragment,null,[i.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:l.value,onInput:c=>f(c)},[u.value]),i.createVNode("span",{class:"textarea-wordcount",title:a.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+l.value])])}function Vr(t,e,n,o){const r=Ir(t,e,n,o),l=new Map([["text-area",r]]);function a(s){return l.get(s)||null}return{getEditorRender:a}}function Pr(){const t=i.ref(!1),e=i.ref("复制成功");return{feedbackStyle:i.computed(()=>{const o={position:"absolute",left:"50%",top:"50%","min-width":"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease",padding:"0 10px"};return o.opacity=t.value?"0.8":"0",o.display=t.value?"":"none",o}),feedbackMessage:e,toShowFeedback:t}}function Nr(t,e){const n=e.getEditorRender(t.promptEditorType);return()=>n&&n()}function Br(t,e){function n(p){if(p==null)return 0;let h=0;for(let y=0;y<p.length;y++){const F=p.charCodeAt(y);F>=0&&F<=128?h++:h=h+2}return h}function o(p,h){if(p!==""&&p!==void 0&&p!==null){p=""+p;const y=p.length;let F="",_=0;for(let S=0;S<y;S++){const w=p.charAt(S);if(_++,encodeURI(w).length>4&&_++,F=F.concat(w),_>=h)return F=F.concat("..."),F}if(_<h)return p}return""}const r=i.computed(()=>!!t.value&&!!t.value.date),l=i.computed(()=>{const p=t.value&&t.value.date||"";return`${e.exception.happend} : ${p}`}),a=i.computed(()=>!!t.value&&!!t.value.detail),s=i.computed(()=>t.value?n(t.value.detail)>160:!1),u=i.ref(!1),d=i.computed(()=>u.value?e.exception.collapse:e.exception.expand),f=i.computed(()=>{const p=e.exception.detail+" : "+(t.value&&t.value.detail)||"";return u.value?p:o(p,160)}),c=i.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function m(){u.value=!u.value}return()=>i.createVNode("div",{class:"toast-msg-detail"},[r.value&&i.createVNode("div",null,[l.value]),a.value&&i.createVNode("div",{class:"exception_wrap"},[i.createVNode("div",{class:"exception_error_msg"},[i.createVNode("div",{innerHTML:f.value},null),s.value&&i.createVNode("span",{style:c.value,onClick:m},[d.value])])])])}function Or(t){return()=>i.createVNode("p",{class:"toast-msg-detail",innerHTML:t.value},null)}function $r(t,e,n,o,r){const l=i.ref(t.exceptionInfo),a=i.computed(()=>{const h=e.value==="question"?"warning":e.value,y={"f-icon":!0},F=`f-icon-${h}`;return y[F]=!0,y}),s=i.computed(()=>n.value||l.value&&l.value.message),u=i.computed(()=>o.value),d=i.computed(()=>!!o.value),f=i.computed(()=>!!l.value);function c(){return f.value?Br(l,r):d.value?Or(u):()=>null}const m=c(),p=i.computed(()=>r.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:a.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[i.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),m()])])}function jr(t,e,n,o){const{onCopy:r}=e,{toShowFeedback:l}=n,a=i.ref(o.exception.copySuccess||"复制成功"),s=i.ref(o.exception.copy||"复制详细信息"),u=i.ref(t.exceptionInfo||{date:"",message:"",detail:""}),d=i.computed(()=>u.value&&u.value.detail||"");function f(c){r(d.value).catch(m=>{a.value=o.exception.copyFailed||"复制失败"}).finally(()=>{l.value=!0,setTimeout(()=>{l.value=!1},700)})}return()=>i.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[i.createVNode("span",{onClick:f,style:"cursor: pointer;"},[s.value])])}function Rr(t,e,n,o,r){const l=i.ref(t.type),a=i.ref(t.buttons),s=i.ref(t.exceptionInfo),u=i.ref(r.ok||t.okButtonText),d=i.ref(r.cancel||t.cancelButtonText),f=i.ref(t.showCancelButton),c=i.ref(t.showOkButton),m=i.computed(()=>!!(a.value&&a.value.length)),p=i.computed(()=>s.value&&s.value.message&&s.value.detail),h=i.computed(()=>!(a.value&&a.value.length)&&(c.value||f.value)),y=jr(t,n,o,r);u.value==="关闭"?u.value=r.close:u.value==="知道了"&&(u.value=r.exception.roger);function F(S){l.value==="question"&&e.emit("reject"),e.emit("close")}function _(S){l.value==="question"&&e.emit("accept"),e.emit("close")}return()=>i.createVNode("div",{class:"modal-footer"},[p.value&&y(),h.value&&f.value&&i.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:F},[d.value]),h.value&&c.value&&i.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:_},[u.value]),m.value&&a.value.length&&a.value.map(S=>i.createVNode("button",{type:"button",onClick:S.handle,class:S.class},[S.iconClass&&i.createVNode("span",{class:S.iconClass},null),S.text]))])}function Ar(t){const{t:e,locale:n}=ct.useI18n();function o(r,l,a){return l===a?e(r):l}return{yes:o("messageBox.yes")||"是",no:o("messageBox.no")||"否",close:o("messageBox.close")||"关闭",ok:o("messageBox.ok",t.okButtonText,"确定")||"确定",cancel:o("messageBox.cancel",t.cancelButtonText,"取消")||"取消",title:o("messageBox.title")||"系统提示",errorTitle:o("messageBox.errorTitle")||"错误提示",exception:{expand:o("messageBox.exception.expand")||"展开",collapse:o("messageBox.exception.collapse")||"收起",happend:o("messageBox.exception.happend")||"发生时间",detail:o("messageBox.exception.detail")||"详细信息",copy:o("messageBox.exception.copy")||"复制详细信息",copySuccess:o("messageBox.exception.copySuccess")||"复制成功",copyFailed:o("messageBox.exception.copyFailed")||"复制失败",roger:o("messageBox.exception.roger")||"知道了"},locale:n.value}}const Dt=i.defineComponent({name:"FMessageBox",props:Tr,emits:["accept","reject","close"],setup(t,e){const n=Ar(t),o=i.ref(t.type),r=i.ref(t.title),l=i.ref(t.detail),a=i.computed(()=>{const _={"modal-tips":!0,"d-flex":!0,"flex-row":!0},S=`messager-type-${o.value}`;return _[S]=!0,_}),s=i.computed(()=>{const _={cursor:"default"};return o.value==="prompt"?_.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(_.padding="0.5rem 1.5rem 1rem 1.5rem"),_}),u=kr(),d=Vr(t,o,r,l),f=Pr(),{feedbackStyle:c,feedbackMessage:m}=f;m.value=n.exception.copySuccess;function p(){return i.createVNode("div",{style:c.value},[m.value])}function h(){switch(o.value){case"prompt":return Nr(t,d);default:return $r(t,o,r,l,n)}}const y=h(),F=Rr(t,e,u,f,n);return()=>i.createVNode("div",{class:"farris-messager"},[!t.exceptionInfo&&i.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),i.createVNode("section",{class:a.value,style:s.value},[y()]),F(),p()])}}),lt=class lt{static show(e){const n=i.reactive({...e}),o=!1,r=n.type==="error"||n.type==="prompt",l=n.type==="error"?"错误提示":n.type==="prompt"&&n.title||"",a=n.acceptCallback||(()=>{}),s=n.rejectCallback||(()=>{});let u=null,d=new fn(lt.app);const f=()=>{u&&(u==null||u.destroy(),d=null)};return u=d==null?void 0:d.open({class:"modal-message modal-message-type-info",title:l,showButtons:o,showHeader:r,width:n.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>i.createVNode(Dt,i.mergeProps(n,{onAccept:a,onReject:s,onClose:f}),null)}),d==null?void 0:d.getCurrentModal()}static info(e,n){const o=i.reactive({type:"info",title:e,detail:n,okButtonText:"知道了",showCancelButton:!1});lt.show(o)}static warning(e,n){const o=i.reactive({type:"warning",title:e,detail:n,okButtonText:"知道了",showCancelButton:!1});lt.show(o)}static success(e,n){const o=i.reactive({type:"success",title:e,detail:n,okButtonText:"关闭",showCancelButton:!1});lt.show(o)}static error(e,n,o){const r=i.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:o,message:e,detail:n}});lt.show(r)}static prompt(e,n){const o=i.reactive({type:"prompt",title:e,detail:n,okButtonText:"确定",cancelButtonText:"取消"});lt.show(o)}static question(e,n,o,r){const l=i.reactive({type:"question",title:e,detail:n,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:o,rejectCallback:r});lt.show(l)}};le(lt,"app",null);let Wt=lt;Dt.install=t=>{t.component(Dt.name,Dt),Wt.app=t,t.provide("FMessageBoxService",Wt)};class Vt extends Tn{constructor(n,o){super(n,o);le(this,"responseLayoutEditorFunction");le(this,"bindingVarible");le(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=lr(this.formSchemaUtils)}getCommonPropertyConfig(n,o,r="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(n,o,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n,o),this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"form-group")}getPropertyConfig(n,o){return this.getCommonPropertyConfig(n,o,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressions=this.getExpressionConfig(n,"Field"),this.propertyConfig}getGridFieldEdtiorPropConfig(n,o){return this.propertyConfig.categories={},this.getCommonPropertyConfig(n,o,"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,o,r="Card"){const l=this;this.setDesignViewModelField(n);const{canChangeControlType:a,editorTypeList:s}=this.getAvailableEditorType(n),u={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:s,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:"不显示"}]}},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(d,f,c){if(d)switch(d&&d.propertyID){case"type":{l.changeControlType(n,d,o);break}case"label":{d.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(n,d,c);break}}}};return r.toLocaleLowerCase()!=="card"&&delete u.properties.showLabelType,u}checkCanChangeControlType(n,o){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!==oe.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(n){var l;const o=this.checkCanChangeControlType(n,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=Q[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===oe.FormSchemaEntityField$Type.SimpleField?r=Nt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(r=Nt.getEditorTypesByMDataType(this.bindingVarible.type,this.designViewModelField.multiLanguage)),{canChangeControlType:o,editorTypeList:r}}changeBindingField(n,o,r){o.needRefreshEntityTree=!0}getAppearanceProperties(n,o){const r=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"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(n,r.componentId)}}},setPropertyRelates(l,a){if(l)switch(l&&l.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,r.componentId||n.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(n.id,o),delete n.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(l.propertyValue,n.id,this.componentId),mt.value++;break;case"style":{mt.value++;break}}}}}getEditorProperties(n){return this.getComponentConfig(n)}changeControlType(n,o,r){const l=o.propertyValue,a=r&&r.parent&&r.parent.schema;if(!a)return;const s=a.contents.findIndex(f=>f.id===n.id);if(s===-1)return;const u=a.contents[s];let d;if(this.designViewModelField){const m=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(h=>h.id===this.designViewModelField.id).fieldSchema||{};m.editor||(m.editor={}),m.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,m,!1),d=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}d||(d=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(d,{id:u.id,appearance:u.appearance,size:u.size,label:u.label,binding:u.binding}),Object.prototype.hasOwnProperty.call(u,"visible")&&Object.assign(d,{visible:u.visible}),u.editor&&["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(u.editor,f)&&(d.editor[f]=u.editor[f])}),r!=null&&r.updateContextSchema?r.updateContextSchema(d):(r.schema=Object.assign(u,d),Object.assign(n,d)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(f=>f.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(f=>f.classList.remove("dgComponentFocused")),mt.value++,i.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(n,o={},r={},l){var m;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},o),s=(m=n.binding)!=null&&m.field?[]:["Const","Variable","StateMachine"],u=this.getPropertyEditorParams(n,s,"readonly"),d=this.getPropertyEditorParams(n,s,"required"),f={readonly:{description:"",title:"只读",editor:u},required:{description:"",title:"必填",type:"boolean",editor:d},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const p in r)f[p]=Object.assign(f[p]||{},r[p]);const c=this;return{...a,properties:{...f},setPropertyRelates(p,h){if(p){switch(p.propertyID){case"readonly":case"required":c.afterMutilEditorChanged(n,p);break}l&&l.bind(c)(p,n,h)}}}}updateUnifiedLayoutAfterControlChanged(n,o,r){const l=n.split(" ");let a=l.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),s=l.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),u=l.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),d=l.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));a=a||"col-12",s=s||"col-md-"+a.replace("col-",""),u=u||"col-xl-"+s.replace("col-md-",""),d=d||"col-el-"+u.replace("col-xl-","");const f={id:o,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(u.replace("col-xl-",""),10),columnInEL:parseInt(d.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,f)}updateUnifiedLayoutAfterResponseLayoutChanged(n,o){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(n);if(!r||!r.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,l,1),o){const h=l.find(y=>y.id===o.id);Object.assign(h||{},o)}const a=l.map(h=>h.columnInSM),s=l.map(h=>h.columnInMD),u=l.map(h=>h.columnInLG),d=l.map(h=>h.columnInEL),f=this.checkIsUniqueColumn(a)?a[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null,m=this.checkIsUniqueColumn(u)?u[0]:null,p=this.checkIsUniqueColumn(d)?d[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:c,uniqueColClassInLG:m,uniqueColClassInEL:p})}checkIsUniqueColumn(n){const o=new Set(n);return Array.from(o).length===1}getItemCollectionEditor(n,o,r){return o=o||"value",r=r||"name",{editor:{columns:[{field:o,title:"值",dataType:"string"},{field:r,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:o,nameField:r,requiredFields:[o,r],uniqueFields:[o,r],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===oe.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(n,o){n.binding&&n.binding.type===It.Form&&n.binding.field?(o.find(a=>a.label==="fieldValueChanging")||o.push({label:"fieldValueChanging",name:"绑定字段值变化前事件"}),o.find(a=>a.label==="fieldValueChanged")||o.push({label:"fieldValueChanged",name:"绑定字段值变化后事件"}),this.designViewModelField&&(n.fieldValueChanging=this.designViewModelField.valueChanging,n.fieldValueChanged=this.designViewModelField.valueChanged)):o=o.filter(r=>r.label!=="fieldValueChanging"&&r.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,o="card",r,l){const a=this;let s=[];r&&(s=s.concat(r)),this.appendFieldValueChangeEvents(n,s);const u=a.eventsEditorUtils.formProperties(n,a.viewModelId,s);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(u),tabId:"commands",tabName:"交互",setPropertyRelates(c,m){const p=c.propertyValue;delete n[a.viewModelId],p&&(p.setPropertyRelates=this.setPropertyRelates,p.controlInfo={type:a.getControlMethodType(n),name:n.title},a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,p.events,p)),l&&l(c,m,p);const h=a.designViewModelUtils.getDgViewModel(a.viewModelId);h&&a.designViewModelField&&h.changeField(a.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged})}}}getExpressionConfig(n,o,r=["compute","dependency","validate"],l){return new Fn(this.formSchemaUtils).getExpressionConfig(n,o,r,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,o,r){var l;n.editor[o]!==r?n.editor[o]=r:(l=this.getFormDesignerInstance())==null||l.reloadPropertyPanel()}setBooleanValue(n,o,r){let l=r;this.getBindingDataType()==="string"&&(l=(l||"").trim()||(o==="trueValue"?"true":"false"));const s=o==="trueValue"?"falseValue":"trueValue";n.editor[s]===l&&(l=l+1),this.updatePropertyValue(n,o,l)}getBooleanValueConverter(){return{convertFrom:(n,o)=>n.editor[o],convertTo:(n,o,r)=>{this.setBooleanValue(n,o,r)}}}}const kn=Symbol("FModalService");St.install=t=>{t.component(St.name,St);const e=new fn(t);t.provide(kn,e),t.provide("FModalService",e)},St.register=(t,e,n,o)=>{t.modal=St,e.modal=xi,o.modal={callbackResolver:Fi}};function In(t,e){function n(){const o=t.beforeOpen||t.beforeClickButton||null;let r=Promise.resolve(!0);if(o){const l=o(e.value);if(typeof l>"u")return r;typeof l=="boolean"?r=Promise.resolve(l):r=l}return r}return{judgeCanOpen:n}}function Lr(t,e,n,o,r){const l=i.ref(t.buttonBehavior),a=i.ref(t.popupOnInput),s=i.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:u}=In(t,r),d=i.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),f=i.inject(kn,null),c=i.ref();async function m(y){if(await u()&&d.value){const F=!!e.slots.default;if(l.value==="Modal"){const _=t.modalOptions,S=f==null?void 0:f.open({..._,render:()=>e.slots.default&&e.slots.default()});c.value=S==null?void 0:S.modalRef}l.value==="Overlay"&&vi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),F&&l.value==="Popup"&&o.togglePopup(!0),F&&a.value&&o.hidePopup(),e.emit("clickButton",{origin:y,value:t.modelValue})}}function p(y){e.emit("mouseEnterIcon",y)}function h(y){e.emit("mouseLeaveIcon",y)}return{buttonGroupClass:s,onClickButton:m,onMouseEnterButton:p,onMouseLeaveButton:h,modalRef:c}}function Hr(t,e,n,o,r,l){const a=i.ref(!1),s=i.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:u,hasClearClass:d}=l;function f(h){a.value=h,d.value=h}i.watch(r,()=>{f(!!r.value)});function c(h){const y=!t.readonly&&!t.disable&&t.editable,F=!t.editable;h.stopPropagation(),(y||F)&&(u(""),r.value="",f(!a.value),e.emit("clear"))}function m(h){if(s.value){if(!n.value){f(!1);return}!t.disable&&!t.readonly&&f(!0)}}function p(h){s.value&&f(!1)}return{enableClearButton:s,showClearButton:a,onClearValue:c,onMouseEnterTextBox:m,onMouseLeaveTextBox:p}}function Dr(t,e,n,o,r){const l=i.computed(()=>t.popupOnInput),a=i.computed(()=>t.popupOnFocus),{shouldPopupContent:s,closeAllPopover:u}=r,d=i.ref(!1),f=i.computed(()=>t.enableTitle?n.value:""),c=i.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),m=i.computed(()=>t.readonly||!t.editable),p=i.ref(!1),h=i.computed(()=>!t.disable&&p.value),y=i.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),F=i.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":h.value,"input-group--has-clear":t.enableClear&&d.value}));function _(E,B=!0){n.value=E,B&&(e.emit("change",E),e.emit("update:modelValue",E))}function S(E){s.value=!1,_(E,!0)}i.watch(()=>t.modelValue,E=>{n.value=E});function w(E){p.value=!1,e.emit("blur",E),E.stopPropagation()}function M(E){e.emit("click",E),u(),e.slots.default&&!t.disable&&!t.readonly&&t.popupOnClick&&r.togglePopup()}function b(E){!t.disable&&!t.readonly&&(p.value=!0,m.value||(e.emit("focus",E),a.value&&!s.value&&r.popup()))}function v(E){e.emit("input",E);const B=E.target.value;o.value=B,n.value!==B&&_(B,t.updateOn==="change"),l.value&&!s.value&&r.popup()}function g(E){E.target.tagName!=="INPUT"&&E.preventDefault(),E.stopPropagation()}function C(E){e.emit("keydown",E)}function I(E){E.key==="Enter"&&(l.value||a.value)&&r.hidePopup(),e.emit("keyup",E)}function $(E){const B=E.target.value;E.stopPropagation(),_(B)}return{hasFocusedTextBox:h,isTextBoxReadonly:m,textBoxClass:y,textBoxPlaceholder:c,textBoxTitle:f,inputGroupClass:F,hasClearClass:d,changeTextBoxValue:_,commitValue:S,onBlurTextBox:w,onClickTextBox:M,onFocusTextBox:b,onInput:v,onKeyDownTextBox:C,onKeyUpTextBox:I,onMouseDownTextBox:g,onTextBoxValueChange:$}}const xt="FarrisVue_PopoverInstancesKey";function Wr(t,e,n,o){const r=i.ref(),l=i.ref(!1),{judgeCanOpen:a}=In(t,o);i.watch(()=>r.value,(p,h)=>{window[xt]=window[xt]||new WeakMap,p?window[xt].set(n.value,p):window[xt].delete(n.value)});function s(){if(window[xt]){const p=window[xt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(h=>{const y=p.get(h);y&&h!==n.value&&!n.value.closest(".popover-fitcontent")&&y.hide()})}}function u(){const p=r.value;p&&p.show(n.value)}async function d(p=!1){if(!!e.slots.default){if(!p&&!l.value&&!await a())return;l.value=!l.value,await i.nextTick(),u()}}async function f(p=!1){if(!!e.slots.default){if(!p&&!await a())return;l.value=!0,await i.nextTick(),u()}}function c(){l.value=!1}function m(){l.value=!0,i.nextTick(()=>{u()})}return{hidePopup:c,showPopup:m,popup:f,shouldPopupContent:l,togglePopup:d,popoverRef:r,closeAllPopover:s}}function qr(t,e,n){const o=i.ref(),{isTextBoxReadonly:r,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:s,onBlurTextBox:u,onClickTextBox:d,onFocusTextBox:f,onInput:c,onKeyDownTextBox:m,onKeyUpTextBox:p,onMouseDownTextBox:h,onTextBoxValueChange:y}=n,F=i.ref(t.id),{uuid:_}=oe.useGuid();i.onMounted(()=>{var v,g;t.selectOnCreated&&((v=o.value)==null||v.select()),t.focusOnCreated&&((g=o.value)==null||g.focus({preventScroll:!0})),F.value||(F.value="button-edit_"+_(8)),F.value=F.value+"-textbox"});const S=i.ref(!1),w=v=>{v.preventDefault(),S.value=!0},M=v=>{v.preventDefault(),S.value=!1,c(v)};function b(v){S.value||c(v)}return()=>i.createVNode("input",{id:t.id?t.id+"-textbox":void 0,ref:o,name:"input-group-value",autocomplete:t.autoComplete?"on":"off",class:l.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:a.value,readonly:r.value,tabindex:t.tabIndex,title:s.value,type:t.inputType,value:e.value,onBlur:u,onChange:y,onClick:d,onFocus:f,onInput:b,onKeydown:m,onKeyup:p,onMousedown:h,onCompositionend:M,onCompositionstart:w},null)}function zr(t,e,n){const o=i.ref(t.separator),r=i.computed(()=>t.readonly||t.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:s,onClickTextBox:u,textBoxPlaceholder:d}=n,f=i.computed(()=>e.value?e.value.split(o.value).map(h=>({name:h,selectable:!0})):[]);function c(h){l(h.map(y=>y.name).join(o.value),!0)}i.watch(()=>t.separator,h=>{o.value=h});const m=i.ref(!t.disable&&!t.readonly);i.watch([()=>t.disable,()=>t.readonly],([h,y],[F,_])=>{m.value=!h&&!y});function p(h){u(h)}return()=>i.createVNode(Kn,{tabindex:t.tabIndex,onFocus:a,onBlur:s,id:`${t.id}-tag-editor`,class:"form-control",placeholder:d.value,data:f.value,showClose:!r.value,showInput:!0,disable:r.value,onChange:c,onClick:p},null)}function Gr(t,e,n,o){const{buttonGroupClass:r,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:s}=n,{enableClearButton:u,showClearButton:d,onClearValue:f}=o,c=i.ref(),m=je.debounce(h=>{l(h)},t.buttonBehavior==="Modal"?0:200),p=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>i.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:r.value},[u.value&&i.withDirectives(i.createVNode("span",{class:"input-group-text input-group-clear",onClick:f,onMousedown:p},[i.createVNode("i",{class:"f-icon modal_close"},null)]),[[i.vShow,d.value]]),e.slots.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",onClick:m,onMouseenter:a,onMouseleave:s},[e.slots.buttonContent()]):t.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:c,onClick:h=>m(h),onMouseenter:a,onMouseleave:s},null):null]),buttonHandleElement:c}}function Ur(t,e,n){const o=i.ref(t.popupMinWidth),{hidePopup:r,popoverRef:l}=n;return()=>i.createVNode(Qn,{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:o.value,class:t.popupClass,offsetX:t.popupOffsetX,onHidden:r,limitContentBySpace:t.limitContentBySpace},{default:()=>{var a,s;return[(s=(a=e.slots).default)==null?void 0:s.call(a)]}})}const Yr=i.defineComponent({name:"FButtonEdit",props:mi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(t,e){const n=i.ref(),o=i.ref(t.customClass),r=i.ref(t.modelValue),l=Wr(t,e,n,r),{shouldPopupContent:a,hidePopup:s,showPopup:u,togglePopup:d}=l,f=Lr(t,e,n,l,r),c=i.ref(""),m=Dr(t,e,r,c,l),{hasFocusedTextBox:p,commitValue:h,inputGroupClass:y}=m,F=Hr(t,e,r,p,c,m),{onMouseEnterTextBox:_,onMouseLeaveTextBox:S}=F,w=i.computed(()=>{const V={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return o.value&&o.value.split(" ").reduce((T,x)=>(T[x]=!0,T),V),V}),M=i.computed(()=>({overflow:t.wrapText?"hidden":""}));function b(){if(!t.multiSelect||t.inputType!=="tag"||!n.value)return 0;let V=0;const T=Array.from(n.value.querySelectorAll(".farris-tag-item"));return T&&T.length&&(V=T.map(x=>x.offsetTop).filter(x=>x>20).length),V}const v=i.ref(b());i.onUpdated(()=>{v.value=b()});function g(){return t.multiSelect&&t.inputType==="tag"?()=>i.createVNode(i.Fragment,null,[zr(t,r,m)(),!!v.value&&i.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[i.createVNode("span",{class:"multi--more-text"},[i.createTextVNode("+"),v.value])])]):qr(t,r,m)}let C=g();i.watch([()=>t.multiSelect,()=>t.inputType],()=>{C=g()});const{renderButtonGroup:I,buttonHandleElement:$}=Gr(t,e,f,F),E=Ur(t,e,l),B={displayText:c,commitValue:h,elementRef:n,hidePopup:s,showPopup:u,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:d,openDialog:()=>{$.value&&t.buttonBehavior==="Modal"&&$.value.click()},getModal:()=>{var V;return t.buttonBehavior==="Modal"?(V=f.modalRef.value)==null?void 0:V.value:null}};return i.onMounted(()=>{n.value.componentInstance=B,window.onresize=()=>{document.body.click()}}),i.onBeforeUnmount(()=>{var V;window.onresize=null,(V=window[xt])==null||V.delete(n.value)}),e.expose(B),()=>{var V,T;return i.createVNode(i.Fragment,null,[i.createVNode("div",i.mergeProps(e.attrs,{ref:n,class:w.value,id:t.id?t.id:void 0,style:M.value}),[i.createVNode("div",{id:t.id?`${t.id}-input-group`:void 0,class:y.value,onMouseenter:_,onMouseleave:S},[(T=(V=e.slots).precontent)==null?void 0:T.call(V),C(),I()])]),a.value&&E()])}}}),Vn=new Map([["appearance",Lt],["column","columnOption"],["command","commandOption"]]),Pn=new Map([]),Xr="root-viewmodel";class Zr{constructor(e,n){le(this,"formSchemaUtils");le(this,"controlCreatorUtils");le(this,"designViewModelUtils");le(this,"useFormCommand");le(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),o=this.createComponentNode(e),r=this.createViewModeNode(e),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(n,e,r)}wrapContainerSectionForComponent(e,n,o){var u,d,f,c,m,p,h,y,F,_,S;const r=(d=(u=n==null?void 0:n.parentComponentInstance)==null?void 0:u.schema)==null?void 0:d.type,l=(m=(c=(f=n==null?void 0:n.parentComponentInstance)==null?void 0:f.schema)==null?void 0:c.appearance)==null?void 0:m.class,a=(h=(p=this.formSchemaUtils.getFormSchema())==null?void 0:p.module)==null?void 0:h.templateId;if(r===ft.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const s=[ft.DgControl["content-container"].type,ft.DgControl["response-layout-item"].type,ft.DgControl["splitter-pane"].type];if(r&&s.includes(r)){const w=this.resolver.getSchemaByType("section",{parentComponentInstance:n.parentComponentInstance,mainTitle:n.componentName},this.designerHostService);if(w&&w.contents&&w.contents.length){const M=w.contents[0];return M.contents=[e],this.appendAddDeleteBtnToParentContainer(M,n,o),w}}return this.appendAddDeleteBtnToParentContainer((y=n==null?void 0:n.parentComponentInstance)==null?void 0:y.schema,n,o),r===ft.DgControl["tab-page"].type&&(F=n.parentComponentInstance)!=null&&F.parent&&(_=n.parentComponentInstance)!=null&&_.parent.updateToolbarItems&&((S=n.parentComponentInstance)==null||S.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,n,o){const r=e.type,l=o.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(),s=ft.DgControl["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",u=this.resolver.getSchemaByType(s),d=[Object.assign({},u,{id:`button-add-${n.componentId}`,type:s,text:"新增",disabled:a.find(f=>f.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,onClick:`root-viewModel.${o.id}.${l}AddItem1`}),Object.assign({},u,{id:`button-remove-${n.componentId}`,type:s,text:"删除",disabled:a.find(f=>f.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,onClick:`root-viewModel.${o.id}.${l}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(d),this.appendAddAndDeleteCommands(o),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var f;const n=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),o=oe.useGuid().guid(),r=oe.useGuid().guid(),l=this.resolveCommandController(),a={id:o,code:`${n}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},s={id:r,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(s)),e.commands.push(a,s),this.formSchemaUtils.getFormSchema().module.webcmds.find(c=>c.id===l).refedHandlers.push({host:o,handler:"AddItem"},{host:r,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"],o=e.find(l=>n.includes(l.id));if(o)return o.id;const r="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:r,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),r}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"),o=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:o}),n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Xr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var r,l,a;const{templateId:n}=this.formSchemaUtils.getFormSchema().module,o=(a=(l=(r=e.parentComponentInstance)==null?void 0:r.schema)==null?void 0:l.appearance)==null?void 0:a.class;return n==="double-list-in-tab-template"||["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,c,m;const n=(m=(c=(f=e.parentComponentInstance)==null?void 0:f.schema)==null?void 0:c.appearance)==null?void 0:m.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let r;if(o==="double-list-in-tab-template"){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),r=p}else if((o==="double-list-template"||o==="tree-list-template")&&(n!=null&&n.includes("f-page-content-main"))){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),r=p}else{const p=this.resolver.getSchemaByType("content-container");Object.assign(p,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),r=p}const l=this.resolver.getSchemaByType("data-grid"),a=[],s=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),u=e.editable&&s.length>0&&s.findIndex(p=>p.id==="editable")>-1;Object.assign(l,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:u,dataSource:e.dataSource||"",editable:u?"viewModel.stateMachine['editable']":!1,pagination:{enable:!e.editable}}),r.contents=[l];const{selectedFields:d}=e;return d==null||d.forEach(p=>{if(p.$type===oe.FormSchemaEntityField$Type.ComplexField)return;const h=je.cloneDeep(p),y=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",h,"",u);y&&a.push(y)}),[r]}assembleViewModelFields(e){const n=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===oe.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=r.type.name;(a===oe.FormSchemaEntityFieldTypeName.Enum||a===oe.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),n}}function Nn(t,e,n,o){var l,a,s,u,d,f,c;const r=n.parentComponentInstance;if(r&&o){const m=Math.random().toString(36).slice(2,6),p={componentId:`data-grid-${m}`,componentName:((l=n.bindingSourceContext)==null?void 0:l.entityTitle)||((s=(a=n.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:s.name)||`表格-${m}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((u=n.bindingSourceContext)==null?void 0:u.bindTo)||"",dataSource:(f=(d=n.bindingSourceContext)==null?void 0:d.bindingEntity)==null?void 0:f.label,selectedFields:(c=n.bindingSourceContext)==null?void 0:c.bindingEntityFields};return new Zr(t,o).createComponent(p)}else return e}function Bn(t,e,n){return e}const Jr={$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"]},On={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},Qr=ht(On,Jr,Vn,Nn),Kr=new Map([["appearance",Lt]]);function ea(t,e,n){return e}const ta={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:[]}}}}}},na={$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"]},$n={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"}};ht($n,na,Kr,ea,ta);const oa={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 ia(t,e){function n(l){const a=[];let s=l.nextNode();for(;s;)a.push(s),s=l.nextNode();return a}function o(l,a){const s=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return n(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:m})=>{const p=[];let h=0;for(;h<m.length;){const y=m.indexOf(a,h);if(y===-1)break;p.push(y),h=y+a.length}return p.map(y=>{const F=new Range;return F.setStart(c,y),F.setEnd(c,y+a.length),F})}).flat()}function r(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=o(e.value,l.toLocaleLowerCase()),s=new Highlight(...a);CSS.highlights.set("search-result",s)}return{search:r}}function jn(t,e,n,o,r,l,a,s,u,d){const f=i.ref(t.size),c=i.ref(t.textField),m=i.ref(t.titleField),p=i.ref(t.disableField),h=i.computed(()=>{var C,I;return((C=t.selection)==null?void 0:C.multiSelect)&&((I=t.selection)==null?void 0:I.showCheckbox)}),{onMouseenterItem:y,onMouseoverItem:F,onMouseoutItem:_}=l,{getKey:S,listViewItemClass:w,onCheckItem:M,onClickItem:b}=a,v=i.computed(()=>{const C={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return t.itemClass?C:{margin:f.value==="small"?"0.25rem 0":"8px 0",...C}});function g(C,I,$){return C.checked=s.findIndexInSelectedItems(C)>-1,i.createVNode("li",{class:w(C,I),id:S(C,I),key:S(C,I),onClick:E=>b(C,I,E),onMouseenter:E=>y(E,C,I),onMouseover:E=>F(E,C,I),onMouseout:E=>_(E,C,I)},[h.value&&i.createVNode("div",{class:"f-list-select",onClick:E=>E.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+S(C,I),customClass:"listview-checkbox float-left",disabled:C[p.value],checked:C.checked,"onUpdate:checked":E=>C.checked=E,onChange:E=>{M(C,I,!E.checked)}},null)]),i.createVNode("div",{class:"f-list-content"},[i.createVNode("div",{class:t.itemContentClass,style:v.value,title:C.raw[m.value]||C.raw[c.value]},[C.raw[c.value]])])])}return{renderItem:g}}function ra(t,e,n,o,r,l,a,s,u,d){const f=i.ref(t.multiSelect),c=i.ref(t.disableField),m=i.ref(t.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:y}=l,{getKey:F,listViewItemClass:_,listViewItemStyle:S,onCheckItem:w,onClickItem:M}=a;function b(g,C,I){return t.contentTemplate?i.createVNode(i.Fragment,null,[t.contentTemplate({item:g.raw,index:C,selectedItem:I})]):e.slots.content?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.content({item:g.raw,index:C,selectedItem:I})]):i.createVNode("div",{style:"margin: 10px 0;"},[g.raw[m.value||"name"]])}function v(g,C,I){return i.createVNode("li",{class:_(g,C),id:F(g,C),key:F(g,C),style:S(g,C),onClick:$=>M(g,C,$),onMouseenter:$=>p($,g,C),onMouseover:$=>h($,g,C),onMouseout:$=>y($,g,C)},[f.value&&i.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+F(g,C),customClass:"listview-checkbox",disabled:g[c.value]||!g.checked,checked:g.checked,"onUpdate:checked":$=>g.checked=$,onChange:$=>w(g,C,!$.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[b(g,C,I)])])}return{renderItem:v}}function aa(t,e,n,o,r,l,a,s,u,d){const f=i.ref(t.multiSelect),c=i.ref(t.disableField),m=i.ref(t.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:y}=l,{getKey:F,listViewItemClass:_,onCheckItem:S,onClickItem:w}=a,{dragstart:M,dragenter:b,dragover:v,dragend:g}=o,{removeItem:C}=u,I=i.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function $(x,O=""){const W=x.target;W.title=W.scrollWidth>W.clientWidth?O:""}function E(x){return i.createVNode("div",{style:I.value,onMouseenter:O=>$(O,x.raw[m.value||"name"])},[x.raw[m.value||"name"]])}function B(){return e.slots.itemContent?e.slots.itemContent:E}const V=B();function T(x,O,W){return i.createVNode("li",{class:_(x,O),id:F(x,O),key:F(x,O),onClick:P=>w(x,O,P),onMouseenter:P=>p(P,x,O),onMouseover:P=>h(P,x,O),onMouseout:P=>y(P,x,O),draggable:"true",onDragstart:P=>M(P,x,O),onDragenter:P=>b(P,O),onDragend:P=>g(P,x),onDragover:P=>v(P)},[f.value&&i.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+F(x,O),customClass:"listview-checkbox",disabled:x[c.value]||!x.checked,checked:x.checked,"onUpdate:checked":P=>x.checked=P,onChange:P=>S(x,O,!P.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[V(x)]),i.createVNode("div",{class:"f-list-remove",onClick:P=>C(O)},[i.createVNode("div",{class:"f-list-remove-icon"},[i.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),i.createVNode("div",{class:"f-list-handle"},[i.createVNode("div",null,[i.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:T}}function la(t,e,n,o,r,l,a,s,u,d){var F;const f=i.ref(((F=t.group)==null?void 0:F.groupFields)||[]),{collpaseGroupIconClass:c}=r,{toggleGroupRow:m}=d;function p(_,S){S.collapse=!S.collapse,n.value=m(S.collapse?"collapse":"expand",S,n.value)}function h(_,S,w){return e.slots.group?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.group({item:_.raw,index:S,selectedItem:w})]):i.createVNode("div",{class:"f-navlookup-recentHeader",onClick:M=>p(M,_)},[i.createVNode("div",{class:"fv-grid-group-row-icon"},[i.createVNode("span",{class:c(_)},null)]),i.createVNode("div",{class:"f-navlookup-recommandLabel"},[_.raw[f.value[_.layer]]])])}function y(_,S,w){return _.layer>-1&&h(_,S,w)}return{renderItem:y}}function sa(t,e,n,o){const{dataView:r}=n,{updateSelectedItems:l}=o;function a(s){if(s>-1&&s<r.value.length){if(t!=null&&t.checkBeforeRemoveItem&&!t.checkBeforeRemoveItem(r.value[s]))return;const u=r.value.splice(s,1);l(),e.emit("removeItem",u[0])}}return{removeItem:a}}function ca(t,e,n,o,r,l,a,s,u,d){const{t:f}=ct.useI18n(),c=i.ref(t.view),m=i.ref(t.view==="CardView"),p=i.ref({}),h=i.ref(f("listView.emptyMessage")),y=sa(t,e,o,u),F=i.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":m.value,"flex-wrap":m.value})),_=i.computed(()=>!!n.value&&n.value.length>0),S=i.computed(()=>n.value.length===0);i.computed(()=>S.value&&!e.slots.empty);function w(){return c.value==="SingleView"?jn:c.value==="DraggableView"?aa:(c.value==="ContentView"||c.value==="CardView")&&(t.contentTemplate||e.slots.content)?ra:jn}const M=w(),{renderItem:b}=M(t,e,n,d,r,l,u,a,y,s),{renderItem:v}=la(t,e,n,d,r,l,u,a,y,s),g=[b,v];function C(){return n.value.filter(E=>E.visible!==!1).map((E,B)=>g[E.type](E,B,p))}function I(){return i.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[i.createVNode("p",{class:"f-empty-title"},[t.emptyTemplate?t.emptyTemplate():e.slots.empty?e.slots.empty():h.value])])}function $(){return i.createVNode("ul",{class:F.value,style:"list-style: none;"},[_.value&&C(),S.value&&I()])}return{renderListArea:$}}function da(t,e,n){function o(){return e.slots.header&&i.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:o}}function Rn(t,e,n){const o=i.ref(t.headerClass),r=i.ref(t.placeholder),l=i.ref(""),a=i.computed(()=>!l.value),s=i.computed(()=>!!l.value);function u(m){l.value=""}i.watch(l,m=>{t.enableHighlightSearch&&n.search(m),e.emit("afterSearch",m)});const d=i.computed(()=>{const m={"form-group":!0,"farris-form-group":!0};return o.value&&o.value.split(" ").reduce((h,y)=>(h[y]=!0,h),m),m});function f(m){}function c(){return i.createVNode("div",{class:"f-list-view-header",onClick:i.withModifiers(()=>f,["prevent","stop"])},[i.createVNode("div",{class:d.value},[i.createVNode("div",{class:"farris-input-wrap"},[i.createVNode("div",{class:"f-cmp-inputgroup"},[i.createVNode("div",{class:"input-group f-state-editable"},[i.withDirectives(i.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":m=>l.value=m,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[i.vModelText,l.value]]),i.createVNode("div",{class:"input-group-append"},[s.value&&i.createVNode("span",{class:"input-group-text input-group-clear",onClick:m=>u()},[i.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&i.createVNode("span",{class:"input-group-text"},[i.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}function ua(){const t=i.ref(""),e=i.ref(-1),n=i.ref(""),o=i.ref(-1),r=i.ref(!1);function l(c,m,p){o.value=p}function a(c,m,p){r.value||(o.value=p)}function s(c,m,p){o.value=-1}function u(){r.value=!0}function d(){r.value=!1}function f(){e.value=-1,t.value=""}return{activeIndex:e,focusedItemId:n,hoverIndex:o,clearActiveItem:f,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:s,resumeHover:d,suspendHover:u}}function fa(t,e,n,o){const r=i.ref(t.idField),{dataView:l}=n,a=i.ref(-1),s=i.ref(!1),{activeIndex:u,focusedItemId:d,hoverIndex:f,resumeHover:c,suspendHover:m}=o;let p,h=0,y=0;function F(v,g){const C=v-h,I=g-y;p.style.left=parseInt(p.style.left)+C+"px",p.style.top=parseInt(p.style.top)+I+"px",h=v,y=g}function _(v){const{left:g,top:C}=v.getBoundingClientRect(),I=v.cloneNode(!0);return I.style.cssText=`
|
|
1
|
+
(function(be,ne){typeof exports=="object"&&typeof module<"u"?ne(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/popover/index.umd.js"),require("vue-i18n"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/checkbox/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/button/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/tags/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/accordion/index.umd.js"),require("../../components/avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/calendar/index.umd.js"),require("../../components/capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../checkbox-group/index.umd.js"),require("../../components/color-picker/index.umd.js"),require("../../components/combo-list/index.umd.js"),require("../../components/content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../../components/dropdown/index.umd.js"),require("../../components/external-container/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/language-textbox/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-range/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("../../components/rate/index.umd.js"),require("../../components/response-toolbar/index.umd.js"),require("../../components/response-layout/index.umd.js"),require("../../components/response-layout-editor/index.umd.js"),require("../../components/section/index.umd.js"),require("../../components/smoke-detector/index.umd.js"),require("../../components/splitter/index.umd.js"),require("../../components/step/index.umd.js"),require("../../components/switch/index.umd.js"),require("../../components/text/index.umd.js"),require("../../components/time-picker/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/uploader/index.umd.js"),require("../../components/verify-detail/index.umd.js"),require("../../components/component/index.umd.js"),require("../../components/video/index.umd.js"),require("../../components/textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../../components/fieldset/index.umd.js"),require("../drawer/index.umd.js"),require("../../components/html-template/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/combo-tree/index.umd.js"),require("../../components/events-editor/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/binding-selector/index.umd.js"),require("../../components/mapping-editor/index.umd.js"),require("../../components/schema-selector/index.umd.js"),require("../../components/event-parameter/index.umd.js"),require("../../components/filter-condition-editor/index.umd.js"),require("../../components/sort-condition-editor/index.umd.js"),require("../../components/menu-lookup/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/collection-property-editor/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/notify/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/popover/index.umd.js","vue-i18n","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/checkbox/index.umd.js","../../components/filter-bar/index.umd.js","../../components/pagination/index.umd.js","../../components/button/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/tags/index.umd.js","../../components/locale/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/accordion/index.umd.js","../../components/avatar/index.umd.js","../button-edit/index.umd.js","../../components/button-group/index.umd.js","../../components/calendar/index.umd.js","../../components/capsule/index.umd.js","../checkbox/index.umd.js","../checkbox-group/index.umd.js","../../components/color-picker/index.umd.js","../../components/combo-list/index.umd.js","../../components/content-container/index.umd.js","../data-grid/index.umd.js","../../components/dropdown/index.umd.js","../../components/external-container/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/language-textbox/index.umd.js","../../components/nav/index.umd.js","../../components/number-range/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","../../components/rate/index.umd.js","../../components/response-toolbar/index.umd.js","../../components/response-layout/index.umd.js","../../components/response-layout-editor/index.umd.js","../../components/section/index.umd.js","../../components/smoke-detector/index.umd.js","../../components/splitter/index.umd.js","../../components/step/index.umd.js","../../components/switch/index.umd.js","../../components/text/index.umd.js","../../components/time-picker/index.umd.js","../../components/tree-view/index.umd.js","../../components/uploader/index.umd.js","../../components/verify-detail/index.umd.js","../../components/component/index.umd.js","../../components/video/index.umd.js","../../components/textarea/index.umd.js","../tree-grid/index.umd.js","../../components/fieldset/index.umd.js","../drawer/index.umd.js","../../components/html-template/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/combo-tree/index.umd.js","../../components/events-editor/index.umd.js","../../components/field-selector/index.umd.js","../../components/binding-selector/index.umd.js","../../components/mapping-editor/index.umd.js","../../components/schema-selector/index.umd.js","../../components/event-parameter/index.umd.js","../../components/filter-condition-editor/index.umd.js","../../components/sort-condition-editor/index.umd.js","../../components/menu-lookup/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/collection-property-editor/index.umd.js","../../components/designer-canvas/index.umd.js","../../components/data-view/index.umd.js","../../components/notify/index.umd.js"],ne):(be=typeof globalThis<"u"?globalThis:be||self,ne(be["data-grid"]={},be.common,be.FDataGrid,be.dynamicResolver,be.Vue,be.VueUseCore,be.FPopover,be.vueI18n,null,be.LodashES,null,null,be.checkbox,null,null,be.FButton,null,null,null,null,be.FTags,be.locale,be.condition,be.FDynamicForm,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,be.FTreeview,null,null,null,null,null,null,null,null,null,be.designer$1,be.propertyPanel,null,null,be.FFieldSelector,null,null,null,null,null,null,null,null,null,null,null,null,be.designerCanvas,be.dataView,be.notify))})(this,function(be,ne,bt,ut,i,nn,to,ct,wl,$e,Sl,xl,Gt,Fl,Tl,on,Ml,_l,El,kl,no,Rt,_e,oo,Vl,Il,Pl,Nl,Bl,Ol,jl,$l,Rl,Al,Ll,Hl,Dl,Wl,ql,zl,Gl,Ul,Yl,Xl,Zl,Jl,Ql,Kl,es,ts,ns,os,is,rs,as,ls,ss,cs,ds,us,fs,ms,ps,hs,io,gs,ys,vs,bs,Cs,ws,Ss,xs,Fs,et,tt,Ts,Ms,At,_s,Es,ks,Vs,Is,Ps,Ns,Bs,Os,js,$s,Rs,ft,ce,rn){"use strict";var bl=Object.defineProperty;var Cl=(be,ne,bt)=>ne in be?bl(be,ne,{enumerable:!0,configurable:!0,writable:!0,value:bt}):be[ne]=bt;var le=(be,ne,bt)=>Cl(be,typeof ne!="symbol"?ne+"":ne,bt);const ro={customClass:{type:String,default:""},appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:t=>!0},beforeEndEditCell:{type:Function,default:()=>!0},changePolicy:{type:String,default:"push"},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:32,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}},ao=ne.excludeProperties(Object.assign({},ro,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function lo(t,e,n,o,r){const{getGridHeaderCells:l}=r,a=120,s=50,u=i.computed(()=>{var g;return((g=t.rowNumber)==null?void 0:g.enable)||!1}),d=i.computed(()=>{var g,C;return((g=t.selection)==null?void 0:g.multiSelect)||((C=t.selection)==null?void 0:C.showCheckbox)||!1}),f=i.computed(()=>{var g;return 0+(u.value?((g=t.rowNumber)==null?void 0:g.width)||32:0)+(d.value?s:0)}),c=i.computed(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns}),m=i.computed(()=>{var g;return c.value&&((g=t.columnOption)==null?void 0:g.fitMode)||"none"});function p(g,C,_){const P=parseInt(g.width,10)/100;return _*P}function h(g,C,_){return typeof g.width=="string"?p(g,C,_):g.width||a}function v(g,C){const _=[],P=[];let k=0;g.value.primaryColumns.forEach(M=>{typeof M.width=="string"?P.push(M):(M.width=M.width||a,k+=M.width,_.push(M))});const O=C*(_.length/g.value.primaryColumns.length);_.forEach(M=>{const T=O*(M.width/k);M.actualWidth=T,g.value.primaryColumnsWidth+=M.actualWidth});const I=C-O;P.forEach(M=>{const T=p(M,g.value,I);M.actualWidth=T,g.value.primaryColumnsWidth+=M.actualWidth})}function F(g,C){const _=[],P=[],k=new WeakMap;let O=0,I=0;if(g.value.primaryColumns.forEach(T=>{if(typeof T.width=="string"){const j=p(T,g.value,C);k.set(T,j),O+=j,P.push(T)}else T.width=T.width||a,I+=T.width,_.push(T)}),C-O>I){const T=C-O;P.forEach(j=>{j.actualWidth=k.get(j)||a,g.value.primaryColumnsWidth+=j.actualWidth}),_.forEach(j=>{j.actualWidth=T*(j.width/I),g.value.primaryColumnsWidth+=j.actualWidth})}else v(g,C)}function E(g,C){g.value.primaryColumns.forEach(_=>{_.actualWidth=h(_,g.value,C),g.value.primaryColumnsWidth+=_.actualWidth})}const x={expand:F,none:E,percentage:v};function S(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 w(g){g.value.leftColumnsWidth=0,g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,g.value.leftColumns.forEach(C=>{g.value.leftColumnsWidth+=C.actualWidth||0}),g.value.primaryColumns.forEach(C=>{g.value.primaryColumnsWidth+=C.actualWidth||0}),g.value.rightColumns.forEach(C=>{g.value.rightColumnsWidth+=C.actualWidth||0}),g.value=Object.assign({},g.value)}function y(g,C,_){var j;let P=0;const k=g.value.primaryColumns,O=g.value.rightColumns;g.value.rightColumns.forEach(W=>{W.actualWidth=h(W,g.value,C),P+=W.actualWidth});const I=_-P,M=x[m.value];if(M&&M(g,I),g.value.primaryColumnsWidth+P<=_)return g.value.primaryColumns=[...k,...O],g.value.primaryColumnsWidth+=P,g.value.rightColumns=[],g.value.rightColumnsWidth=0,!0;const T=new Map;return T.set("primary",[]),T.set("right",[]),g.value.primaryColumns.reduce((W,N)=>{var R,A;return N.fixed==="right"?(R=W.get("right"))==null||R.push(N):(A=W.get("primary"))==null||A.push(N),W},T),(j=T.get("right"))!=null&&j.length&&(g.value.primaryColumns=[...T.get("primary")||[]],g.value.rightColumns=[...T.get("right")||[]]),g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,!1}function b(){if(n.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const g=n.value.clientWidth-f.value;e.value.leftColumns.forEach(_=>{_.actualWidth=h(_,e.value,g),e.value.leftColumnsWidth+=_.actualWidth});const C=g-e.value.leftColumnsWidth;if(y(e,g,C))o.value=C;else{e.value.rightColumns.forEach(k=>{k.actualWidth=h(k,e.value,g),e.value.rightColumnsWidth+=k.actualWidth});const _=g-e.value.leftColumnsWidth-e.value.rightColumnsWidth,P=x[m.value];P&&P(e,_),o.value=_}S(e),e.value=Object.assign({},e.value)}}return i.watch(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns},(g,C)=>{g!==C&&g&&b()}),i.watch(m,(g,C)=>{g!==C&&c.value&&b()}),{calculateColumnHeaders:S,calculateColumnsSize:b,calculateColumnsWidth:w}}const so="";function co(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:[]},o=i.ref(n);function r(){o.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=i.ref(t.summary),a=i.computed(()=>{const y=l.value;return(y==null?void 0:y.groupFields)||[]});function s(){o.value.rightColumns.forEach(g=>{g.showSetting=!1}),o.value.primaryColumns.forEach(g=>{g.showSetting=!1});const y=o.value.rightColumns,b=o.value.primaryColumns;y.length>0?y[y.length-1].showSetting=!0:b.length>0&&(b[b.length-1].showSetting=!0)}function u(y){r();const b=new Map;return a.value&&a.value.reduce((g,C)=>(g.set(C,!0),g),b),y.reduce((g,C)=>(C.filter=C.filter||so,C.fixed==="left"?(o.value.leftColumns.push(C),o.value.leftColumnsMap.set(C.field,C),o.value.leftColumnsWidth+=C.actualWidth):C.fixed==="right"?(o.value.rightColumns.push(C),o.value.rightColumnsMap.set(C.field,C),o.value.rightColumnsWidth+=C.actualWidth):(o.value.primaryColumns.push(C),o.value.primaryColumnsMap.set(C.field,C),o.value.primaryColumnsWidth+=C.actualWidth),b.has(C.field)&&o.value.summaryColumns.push(C),g),o),s(),o}u(t.columns);const d=i.computed(()=>o.value.leftColumns.length>0),f=i.computed(()=>o.value.rightColumns.length>0);function c(y,b){return b.sortable&&b.sort&&b.sort!=="none"&&y.push(b),y}function m(y,b){return y.sortOrder=y.sortOrder||0,b.sortOrder=b.sortOrder||0,y.sortOrder===b.sortOrder?0:y.sortOrder<b.sortOrder?-1:1}function p(y,b){return y.sortOrder=y.sortOrder||0,b.sortOrder=b.sortOrder||0,y.sortOrder===b.sortOrder?0:y.sortOrder<b.sortOrder?1:-1}function h(y,b){return b.filterable&&y.push(b),y}function v(){const y=[];return o.value.leftColumns.reduce(h,y),o.value.primaryColumns.reduce(h,y),o.value.rightColumns.reduce(h,y),y}function F(){const y=[];o.value.leftColumns.reduce(c,y),o.value.primaryColumns.reduce(c,y),o.value.rightColumns.reduce(c,y);const b=Math.max(...y.map(g=>g.sortOrder||0));return y.sort(p).map(g=>{const C=g.sortOrder||b+1;return g.sortOrder=C,g}).sort(m).map((g,C)=>{const _=C+1;return g.sortOrder=_,g})}function E(y,b,g){const C=y.map(_=>{const P=g.getSorterByColumn(_),k=_.sort==="asc",O=_.sort==="desc",I=k?P.ascend:O?P.decend:void 0;return{field:_.field,compare:I}});b.setSorters(C)}function x(y,b){const g=F();E(g,y,b)}function S(y){}function w(y){}return{applyColumnSorter:x,collectionFilterableColumns:v,applySortableColumns:E,collectionSortableColumns:F,columnContext:o,hasLeftFixedColumn:d,hasRightFixedColumn:f,updateColumnRenderContext:u,updateColumnSettingIcon:s,sortFromServer:S,createSortConditions:w}}function uo(t,e,n,o,r,l,a,s){const u=i.ref(o.value-1+r),d=i.ref(0),{renderDataRow:f}=l,c=a?a.renderGroupRow:f,m=s?s.renderSummaryRow:f;function p(F){let E=f;return F.__fv_data_grid_group_row__&&(E=c),F.__fv_data_grid_group_summary__&&(E=m),E}function h(F,E,x,S){const{dataView:w}=n,y=[];if(w.value.length>0){const b=S?Date.now().toString():"";let g=F,C=0;const _=E-F+1;for(;y.length<_&&g<w.value.length;){const P=w.value[g],k=w.value[g-1]||x,O=y[C-1],I=k?(k.__fv_data_position__||0)+(k.__fv_data_height__||0):0,T=p(P)(P,k,O,g,I,e.value,y);T.refreshKey=b,y.push(T),C++,g++}}return d.value=y.length>0?y[0].index:0,u.value=y.length>0?y[y.length-1].index:0,y}function v(F,E,x){const S=E.groupField||"",{groupValue:w,raw:y}=E;n[F](S,w,y.groupParents||[]);const{dataView:b}=n,g=x[0].index,C=Math.min(g+o.value+r+1,b.value.length-1);return h(g,C)}return{getVisualData:h,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:v}}var Le=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(Le||{}),it=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(it||{}),Ct=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(Ct||{}),qe=(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))(qe||{}),rt=(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))(rt||{});const fo="__command__",mo=150,po="right",an="commands";function ho(t,e,n){const{horizontalScrollThumbStyle:o,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:l}=n;function a(){return l.value&&i.createVNode("div",{class:"fv-grid-horizontal-scroll"},[i.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:o.value,onMousedown:s=>r(s,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function go(t){const{t:e}=ct.useI18n();function n(a,s){switch(a.command){case"edit":case"remove":return s.status===it.initial;case"accept":case"cancel":return s.status===it.editing;default:return!a.hidden}}function o(a,s,u,d){var f,c,m,p,h;switch((f=a.onClick)==null||f.call(a,s,u.dataIndex,u),a.command){case"edit":u.status,it.editing,(m=(c=t.commandOption)==null?void 0:c.onClickEditCommand)==null||m.call(c,d,u);break;case"accept":case"cancel":u.status,it.initial;break;case"remove":(h=(p=t.commandOption)==null?void 0:p.onClickDeleteCommand)==null||h.call(p,d,u);break}}function r(a){return a==="编辑"?e("datagrid.commandColumn.edit"):a==="确定"?e("datagrid.commandColumn.accept"):a==="取消"?e("datagrid.commandColumn.cancel"):a==="删除"?e("datagrid.commandColumn.remove"):a}function l(a,s){const{column:u}=a;return u.commands&&u.commands.map((d,f)=>f?n(d,s)&&i.createVNode(on,{class:"ml-1",type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}):n(d,s)&&i.createVNode(on,{type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}))}return{renderCommandColumn:l}}function yo(t){const e=i.ref(t.minHeight),n=i.ref(t.minWidth),o=i.ref(t.height),r=i.ref(t.width),l=i.computed(()=>o.value<=0?0:Math.max(o.value,e.value)),a=i.computed(()=>r.value<=0?0:Math.max(r.value,n.value));return i.watch([()=>t.height,()=>t.width,()=>t.minHeight,()=>t.minWidth],([u,d,f,c])=>{e.value=Number(f),n.value=Number(c),o.value=Number(u),r.value=Number(d)}),{containerStyleObject:i.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 vo(t){var l,a;const{t:e}=ct.useI18n(),n=i.ref(((l=t.commandOption)==null?void 0:l.enable)||!1),o=i.ref(((a=t.commandOption)==null?void 0:a.commands)||[]);function r(s){var u;if(n.value&&!(s.value.findIndex(f=>f.dataType===an)>-1)){const f={field:fo,title:e("datagrid.commandColumn.title"),width:mo,fixed:po,dataType:an,commands:o.value,resizable:!1,halign:((u=t.commandOption)==null?void 0:u.halign)||"left",visible:!0,formatter:t.commandOption.formatter?(c,m)=>t.commandOption.formatter(c,m):null};s.value.push(f)}}return{applyCommands:r}}function bo(t,e){var d;const n=i.ref((d=t.columnOption)==null?void 0:d.groups);function o(f,c,m,p,h){const v={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:m,resizable:!0,title:f.title||"",status:qe.none,popoverRef:i.ref(),showPopover:!1,column:null,sortType:"none"},F=p||v;if(f.group){let E=1;f.group.reduce((x,S)=>{if(typeof S=="string"){const w=c.get(S);w&&(h.fieldToRootMap.set(S,F),x.actualWidth+=w.actualWidth,x.children.push(w))}else{const w=o(S,c,x,F,h);E=Math.max(E,w.depth),x.actualWidth+=w.actualWidth,x.children.push(w)}return x},v),v.depth+=E}return e.value.headerDepth=Math.max(e.value.headerDepth,v.depth),v}function r(f){const c={groupedCells:new Map,fieldToRootMap:new Map};return n.value&&n.value.reduce((m,p)=>{const h=o(p,f,null,null,c);return m.groupedCells.set(p.field,h),m},c),c}function l(f){if(!f||f.length===0)return 0;const c=f[0];return c.children&&c.children.length>0&&(c.left=l(c.children)),c.left}function a(f,c){const m=e.value.headerDepth;f.forEach(p=>{p.layer=c?c.layer+1:1;const h=p.children&&p.children.length===0;p.depth=h?m-(p.layer-1):1,p.left=h?p.left:l(p.children),p.children&&a(p.children,p)})}function s(f,c){const m=new Map;return f.forEach(p=>{const h=c.fieldToRootMap.get(p.field),v=h!=null;v&&!m.has(h.field)&&m.set(h.field,h),v||m.set(p.field,p)}),a(Array.from(m.values())),m}function u(f){let c=new Map,m=0;if(f.reduce((p,h)=>{let v=qe.none;v=h.sortable?v|qe.sortable:v,v=h.filterable?v|qe.filterable:v,v=h.sort&&h.sort!=="none"?v|qe.sorted|(h.sort==="asc"?qe.ascending:qe.descending):v;const F=h.field;return p.set(F,{actualWidth:h.actualWidth||0,children:[],depth:1,layer:1,left:m,field:F,parent:null,resizable:h.resizable===void 0?!0:h.resizable,title:h.title,status:v,popoverRef:i.ref(),showPopover:!1,column:h,filterValue:null,sortType:h.sort||"none",showSetting:h.showSetting,draggable:h.draggable}),m+=h.actualWidth||0,p},c),n.value){const p=r(c);c=s(c,p)}return c}return{getGridHeaderCells:u}}function Co(t,e){var x;ne.useGuid();const{idField:n}=e,o=i.ref(t.summary),r=i.ref(t.group),l=i.ref(((x=t.group)==null?void 0:x.groupFields)||[]),a=i.computed(()=>{var S;return(S=t.group)==null?void 0:S.enable}),s=i.computed(()=>{var S;return(S=t.group)==null?void 0:S.showGroupPanel}),u=i.computed(()=>{const S=o.value;return(S==null?void 0:S.groupFields)||[]}),d=i.computed(()=>{const S=r.value;return S&&S.showSummary}),f=i.ref(0),c=new Map;let m=[];function p(S,w,y,b,g){const C=b[y];C&&(w.reduce((_,P,k)=>{var M;const O=P[C];let I=_.get(O);if(!I){const T=u.value.reduce((j,W)=>(j.set(W,0),j),new Map);I={field:C,title:((M=g.get(C))==null?void 0:M.title)||C,value:O,layer:y,details:[],groupSummaries:T},_.set(O,I)}return u.value&&u.value.forEach(T=>{if(I){const j=I.groupSummaries.get(T)||0;I.groupSummaries.set(T,j+P[T])}}),u.value&&u.value.forEach(T=>{if(I){const j=I.groupSummaries.get(T)||0;I.groupSummaries.set(T,Number(j.toFixed(2)))}}),I.details.push(P),_},S),y<b.length-1&&S.forEach((_,P)=>{_.nestGroup=new Map,p(_.nestGroup,_.details,y+1,b,g),_.details=[]}))}function h(S,w){return t.group&&t.group.formatter?t.group.formatter(S.value,{...S,total:w}):`${S.title}:${S.value} (${w})`}function v(S,w){const y=[];return S.forEach(b=>{const g={[n.value]:`group_of_${w?w[n.value]+"_":""}${b.field}_${b.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:b.field,__fv_data_grid_group_layer__:b.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:b.value,groupParents:[]};w&&(g.groupParents=[...w.groupParents,w]);let C=0;if(y.push(g),b.nestGroup){const _=v(b.nestGroup,g);y.push(..._),C+=_.length}if(b.details&&b.details.length&&(y.push(...b.details),C+=b.details.length),d.value){const _={__fv_data_grid_group_field__:b.field,__fv_data_grid_group_layer__:b.layer,__fv_data_grid_group_summary__:!0};_[n.value]=`summary_of_${b.field}_${b.value}`,_[b.field]=Array.from(b.groupSummaries.entries()).reduce((P,[k,O])=>`${P} ${k} total:${O} `,""),y.push(_)}b.groupSummaries&&b.groupSummaries.size&&b.groupSummaries.forEach((_,P)=>{g[P]=_}),g[b.field]=h(b,C),g.value=b.value}),y.forEach((b,g)=>{b.__fv_data_index__=g}),y}function F(S,w,y){return!S||S.length===0||!w.length?w:(S.join(","),c.clear(),m=[],w=w.filter(b=>!b.__fv_data_grid_group_row__),p(c,w,0,S,y),m=v(c),m)}function E(S){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":S.collapse}}return{collpaseGroupIconClass:E,generateGroupData:F,groupFields:l,shouldGroupingData:a,showGroupPanel:s,groupRowSize:f}}function ln(t){const e="parent",n="layer",o="hasChildren",r=(a,s=1,u=[],d=null)=>(a=a||[],a.reduce((f,c)=>(c.id=c.id||c.data[t.idField],c[e]=d,c[n]=s,c[o]=c[o]===void 0?!1:c[o],c.data&&Object.keys(c.data).forEach(m=>{Object.keys(c).includes(m)||(c[m]=c.data[m])}),u.push(c),c.children&&c.children.length&&(c[o]=!0,r(c.children,s+1,u,c.id)),f),u),u);return{flatTreeData:r,isNestedTree:a=>a.some(s=>Array.isArray(s.children))}}function wo(t,e,n,o){const r=i.ref(0),l=i.ref(!!t.hierarchy),{idField:a}=o,{collapseField:s,hasChildrenField:u,parentIdField:d}=n,f=new Map,c=new Map,m=new Map,{flatTreeData:p,isNestedTree:h}=ln(t);function v(z,q){c.clear(),z.reduce((L,U)=>{const se=U[d.value]!==void 0?U[d.value]:"";if(se&&q.has(se)){const me=q.get(se),de=isNaN(Number(me.__fv_layer__))?1:Number(me.__fv_layer__);U.__fv_layer__=de+1,U.__fv_parent_index__=me.__fv_index__,me.__fv_hasChildren__=!0}else U.__fv_layer__=1;const he=L.has(se)?L.get(se):[];return he.push(U),L.set(se,he),L},c)}function F(z){m.clear(),z.reduce((q,L)=>{const U=L[a.value];return q.set(U,L),q},m)}function E(z){z.forEach(q=>{const L=q[a.value];q.__fv_children_index__.map(se=>z[se]).forEach(se=>{se.__fv_parents__=new Map([...q.__fv_parents__.entries(),[L,!0]])})})}function x(z){z.forEach(q=>{const L=new Set(q.__fv_children_index__);q.__fv_children_index__=[...L].sort((U,se)=>U-se)})}function S(z){z.forEach(q=>{const L=q.__fv_parents__;Array.from(L.keys()).map(U=>m.get(U)).forEach(U=>{U.__fv_children_index__.push(q.__fv_index__)})}),x(z)}function w(z){z.forEach(q=>{q.__fv_child_with_lines__=[],q.__fv_child_length__=q.__fv_descendant_index__.length,q.__fv_descendant_index__.map(L=>z[L]).reduce((L,U)=>(L.__fv_child_length__+=U.__fv_children_index__.length,L.__fv_child_with_lines__.push(...U.__fv_children_index__,U.__fv_index__),L),q)})}function y(z,q){return{id:z,index:q,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function b(z,q,L){Array.from(q.keys()).forEach(U=>{q.get(U).reduce((he,me)=>{const de=me[a.value],Se=z.get(me[a.value]),Ie=z.get(U),ge=L.get(U);return Ie&&ge&&(Ie.children.set(de,Se),Ie.children.set(de,Se),Se.parentId=U,Se.parentIndex=Ie.index,Se.parents.set(U,Ie)),he},z)})}function g(z){z.children.forEach(L=>{L.parents=new Map([...z.parents.entries(),[z.id,z]]),g(L)})}function C(z,q){z.filter(L=>L[d.value]===void 0||L[d.value]==="").forEach(L=>{const U=L[a.value],se=q.get(U);g(se)})}function _(z){Array.from(z.values()).forEach(q=>{Array.from(q.parents.values()).forEach(L=>{L.descendant.set(q.id,q)})})}function P(z){f.clear(),z.forEach((q,L)=>{const U=q[a.value];f.set(U,y(U,L))}),F(z),v(z,m),b(f,c,m),C(z,f),_(f)}function k(z){const q=z[a.value],L=f.get(q);return L&&L.children.size>0}function O(z){return z[u.value]&&!k(z)}function I(z){const q=z[a.value],L=f.get(q);return L&&L.visibleInHierarchy}function M(){r.value=Date.now()}function T(z,q){q.forEach(L=>{const U=f.get(L[a.value]),se=f.get(z),he=m.get(z);se&&he&&(U.visibleInHierarchy=!he[s.value]&&se.visibleInHierarchy)}),M()}function j(z){if(c.has(z)){const L=c.get(z);T(z,L),L.map(U=>U[a.value]).forEach(U=>j(U))}}function W(z){const q=z[a.value];j(q)}function N(z,q,L=0){z.forEach(U=>{const se=O(U),he=U.__fv_layer__<=L,me=q==="ToCollapse"?U.__fv_layer__<=L:!(U.__fv_layer__<=L),de=he?me:U[s.value];U[s.value]=se||de});for(const[U,se]of c.entries())T(U,se);return z}function R(z,q){N(z,"ToCollapse",q)}function A(z,q){N(z,"ToExpand",q)}function B(z){z.forEach((q,L)=>{var me;const U=q[a.value],se=c.has(U)?(me=c.get(U))==null?void 0:me.map(de=>de.__fv_index__):[],he=y(U,L);q.__fv_graph_node__=he,q.__fv_children_index__=se,q.__fv_descendant_index__=[...se],q.__fv_parents__=new Map,O(q)&&(q[s.value]=!0)})}function D(z){var U,se;P(e.value),B(z),E(z),S(z),t.showLines&&w(z);const L=((U=t.hierarchy)==null?void 0:U.collapseTo)!==void 0?Number((se=t.hierarchy)==null?void 0:se.collapseTo):0;return N(z,"ToCollapse",L),z}function Z(z,q,L){const se=L.value[z][a.value],he=f.get(se);if(he){const me=f.get(he.parentId);let de=L.value.length-1;if(me){const Se=Array.from(me.children.keys()).indexOf(he.id);if(Se===me.children.size-1){const ge=Array.from(me.descendant.values())[me.descendant.size-1];de=L.value.findIndex(H=>H[a.value]===ge.id)+1}else{const ge=Array.from(me.children.values())[Se+1];de=L.value.findIndex(H=>H[a.value]===ge.id)}q[u.value]=!1,q[d.value]=me.id,L.value.splice(de,0,q)}}}function ee(z,q,L){const U=L.value[z],se=U[a.value];if(f.get(se)){const de=L.value.findIndex(Se=>Se[a.value]===se)+1;U[u.value]=!0,U[s.value]=!1,q[u.value]=!1,q[d.value]=se,L.value.splice(de,0,q)}}function Y(z,q,L){const se=L.value[z][a.value];if(f.get(se)){const de=L.value.findIndex(Ie=>Ie[a.value]===se)+1;let Se=q;h(q)&&(Se=p(q)),Se.forEach(Ie=>{Ie[d.value]=se}),L.value.splice(de,0,...Se)}}function ie(z,q){const L=z[a.value],U=f.get(L),se=Array.from(U.descendant.keys());se.unshift(L);const he=f.get(U.parentId);if(he&&(he.children.delete(L),he.children.size===0)){const de=q.find(Se=>Se[a.value]===U.parentId);de[u.value]=!1,de[s.value]=!1}return q.filter(de=>se.indexOf(de.id)===-1)}return{checkVisibleInHierarchy:r,collapseTo:R,expandTo:A,generateHierarchyData:D,hasRealChildren:k,insertSibling:Z,insertChild:ee,insertChildren:Y,isVisibleInTree:I,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:W,trimmedOriginalData:ie}}const So={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object},safeHtml:{type:Boolean,default:!0}},xo={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Ut=i.defineComponent({name:"Toast",props:xo,emits:["close","click"],setup:(t,e)=>{const{locale:n,t:o}=ct.useI18n(),r=i.ref(t.animate),l="fadeOut",a=i.computed(()=>t.options),s=i.ref(!1),u=i.computed(()=>a.value.title&&a.value.message),d=i.computed(()=>!a.value.title&&a.value.message),f=i.computed(()=>{const w={animated:s.value,toast:!0,"toast--only-content":d.value};return w[t.animate]=!1,w[l]=s.value,w["toasty-type-"+a.value.type]=!0,a.value.theme&&(w[a.value.theme]=!0),w}),c=i.computed(()=>{const b=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,g={"f-icon":!0};return g[b]=!0,g}),m=i.computed(()=>a.value.title||a.value.message),p=i.computed(()=>t.showCloseButton),h=i.computed(()=>!!a.value.buttons||!!e.slots.default),v=i.computed(()=>n.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function F(w){w.stopPropagation(),w.preventDefault(),s.value=!1,setTimeout(()=>{e.emit("close",a.value)},200)}function E(w,y){}function x(w){return`f-preten-link ${w.customClass?w.customClass:""}`}i.watch(r,()=>{r.value});const S=()=>{var w;return i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((w=a.value.buttons)==null?void 0:w.map(y=>i.createVNode("span",{class:x(y),onClick:b=>void 0},[y.text]))),e.slots.default&&e.slots.default()])])};return()=>i.createVNode("div",{class:f.value,style:"min-height:44px"},[p.value&&i.createVNode("button",{title:o("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:F},[i.createVNode("span",{class:"f-icon modal_close"},null)]),m.value&&i.createVNode("section",{class:"modal-tips"},[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:c.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[u.value&&i.createVNode(i.Fragment,null,[i.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),i.createVNode("p",{class:"toast-msg",innerHTML:a.value.message,style:v.value},null),h.value&&S()]),d.value&&(a.value.buttons?i.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:v.value,innerHTML:a.value.message},null),i.createVNode("div",{class:"after-toast-title text-right ml-auto"},[S()])]):i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:v.value,innerHTML:a.value.message},null))])])])}}),Lt=i.defineComponent({name:"Notify",props:So,emits:["close","empty"],setup(t,e){const n=i.computed(()=>({"farris-notify":!0})),o={left:12,right:12,top:20,bottom:12},r=i.ref(),l=i.ref(t.options),a=i.ref(t.showCloseButton),s=i.computed(()=>t.position||"bottom-right"),u=i.computed(()=>t.timeout!=null?t.timeout:3e3),d=i.computed(()=>{const m=t.bottom?t.bottom:o.bottom,p=t.top?t.top:o.top,h={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${t.left?t.left:o.left}px`:"",right:s.value.indexOf("right")>-1?`${t.right?t.right:o.right}px`:"",top:s.value.indexOf("top")>-1?`${p}px`:"",bottom:s.value.indexOf("bottom")>-1?`${m}px`:""};return s.value.indexOf("center")>-1&&(h.left="50%",h.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(h.top="50%",h.transform="translate(-50%, -50%)")),h});function f(m){e.emit("close")}u.value&&setTimeout(()=>{f()},u.value),e.expose({closeToast:f,container:r,notifyPosition:s});function c(m,p){f()}return()=>i.createVNode("div",{class:n.value,style:d.value,ref:r},[i.createVNode(Ut,{options:l.value,showCloseButton:a.value,animate:t.animate,onClose:m=>c(m,l.value)},null)])}});class sn{constructor(){le(this,"notifyRefs",[]);le(this,"globalConfig",i.reactive({}))}escapeAllHtml(e){if(typeof e!="string"||!e)return"";const n=document.createElement("div");return n.textContent=e||"",n.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(e){const n=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...e}),l=document.createElement("div");l.style.display="contents";const a=i.createApp({setup(){var d;const s=i.ref();function u(){s.value.container.style.transform="scale(0)",setTimeout(()=>{n.updateNotifyPositionForClose(r,s),a.unmount()},220)}if(r.position.indexOf("top")>-1){const f=n.getNotifyInstances(r.position),c=f[f.length-1];if(c){const m=c.value.container.getBoundingClientRect();r.top=m.bottom}}return r.safeHtml&&((d=r.options)!=null&&d.message)&&(r.options.message=n.escapeAllHtml(r.options.message)),i.onUnmounted(()=>{document.body.removeChild(l)}),i.onMounted(()=>{n.updateNotifyPositionForCreate(r,s)}),()=>i.createVNode(i.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[i.createVNode(Lt,i.mergeProps({ref:s},r,{onClose:u}),null)]})}});return a.provide("NotifyService",this),document.body.appendChild(l),a.use(Rt.LocaleService.i18n),a.mount(l),a}getNotifyInstances(e){return this.notifyRefs.filter(n=>n.value.notifyPosition===e)}updateNotifyPositionForCreate(e,n){if(this.notifyRefs&&this.notifyRefs.length){const o=window.innerHeight;e.position.indexOf("bottom")>-1&&this.getNotifyInstances(e.position).forEach(r=>{const l=r.value.container.getBoundingClientRect();r.value.container.style.bottom=l.height+o-l.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,n]}updateNotifyPositionForClose(e,n){const o=this.notifyRefs.indexOf(n);if(e.position.indexOf("top")>-1){const r=this.getNotifyInstances(e.position),l=r.indexOf(n);r.slice(l+1).forEach(a=>{a.value.container.style.top=a.value.container.offsetTop-a.value.container.offsetHeight+"px"})}o>-1&&this.notifyRefs.splice(o,1)}show(e){return this.createNotifyInstance(e)}buildNotifyProps(e,n){let o="",r="",l,a,s;typeof n=="string"?o=n:n&&(o=n.message||"",r=n.title||"",a=n.position||null,s=n.showCloseButton!=null?n.showCloseButton:null,l=n.timeout!=null?n.timeout:null);const d={options:{type:e,message:o,title:r}};return a!=null&&(d.position=a),s!=null&&(d.showCloseButton=s),l!=null&&(d.timeout=l),d}info(e){const n=this.buildNotifyProps("info",e);return this.show(n)}success(e){const n=this.buildNotifyProps("success",e);return this.show(n)}warning(e){const n=this.buildNotifyProps("warning",e);return this.show(n)}error(e){const n=this.buildNotifyProps("error",e);return this.show(n)}close(e){e&&e.unmount()}closeAll(){this.notifyRefs.forEach(e=>{e==null||e.value.closeToast()}),this.notifyRefs.length=0}}const Fo=Symbol("NOTIFY_SERVICE_TOKEN");Lt.install=t=>{t.component(Lt.name,Lt),t.component(Ut.name,Ut);const e=new sn;t.provide(Fo,e),t.provide("FNotifyService",e)};function To(t,e,n,o,r){const{toNumber:l}=ne.useNumberFormat(),a=new Map,s=new Map,u=new Map,d=new Map,f=new Map,c=i.ref([]),m=i.ref([]),p=Co(t,r),{generateGroupData:h,groupFields:v,shouldGroupingData:F}=p,E=i.ref(t.data||[]),x=wo(t,E,o,r),{collapseTo:S,expandTo:w,generateHierarchyData:y,hasRealChildren:b,insertSibling:g,insertChild:C,insertChildren:_,isVisibleInTree:P,shouldStratifyData:k,toggleChildrenVisibiltyByCollapseStatus:O,trimmedOriginalData:I,checkVisibleInHierarchy:M}=x,{idField:T,reviseIdentifyField:j}=r,W=i.ref(t.newDataItem),N=i.ref(t.data||[]),R=i.ref(t.data),{flatTreeData:A,isNestedTree:B}=ln(t);if(t.hierarchy&&B(t.data)){const V=A(t.data);E.value=V,N.value=V,R.value=V}const D=i.ref(t.summary),Z=i.computed(()=>{const V=D.value;return(V==null?void 0:V.groupFields)||[]});let ee=new Map;const Y=i.ref(N.value.length),ie=i.ref(t.pagination);function z(){return ie.value&&ie.value.enable&&ie.value.size>0?ie.value.size:N.value.length}const q=i.ref(1),L=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode!=="server"),U=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode==="server"),se=new sn;function he(V,$){const G=Math.ceil(V.length/$);let J=0;const ue=[],ye=[],je=[];for(;J<G;){const Te=V.slice(J*$,(J+1)*$),we=h(v.value,Te,e);ye[J]=we.filter(Me=>Me.__fv_data_grid_group_row__).length,ue.push(...we),J++}return ye.reduce((Te,we,Me)=>(Te=Te+we,je.push(Te),Te),0),{groupData:ue,groupRowSizeList:ye,accumulateGroupRowSize:je}}function me(){var we;N.value=E.value,L.value&&(Y.value=N.value.length),F.value&&!L.value&&(N.value=h(v.value,E.value,e)),ee=Z.value.reduce((Me,Ce)=>(Me.set(Ce,0),Me),ee);const V=0,$=z(),G=(q.value-1)*$;let ue=G>N.value.length-1||U.value?V:G,ye=U.value?N.value.length:Math.min(ue+$,N.value.length);if(F.value&&L.value){const{accumulateGroupRowSize:Me,groupData:Ce,groupRowSizeList:Ve}=he(E.value,$);N.value=Ce;const Be=Ve[q.value-1];ue+=q.value-2<0?0:Me[q.value-2],ye=ue+$+Be}let je=0;const Te=[];if(N.value.length){j(N.value);const Me=T.value!==t.idField;for(let Ce=ue;Ce<ye;Ce++){const Ve=N.value[Ce];Ve.__fv_data_grid_group_row__?(je=0,Ve.__fv_data_index__=""):Ve.__fv_data_grid_group_summary__?Ve.__fv_data_index__="":(je++,Ve.__fv_data_index__=je+(q.value-1)*$),Ve.__fv_index__=Ce,Ve.__fv_visible_index__=Ce,t.rowOption&&t.rowOption.disabledField&&(Ve.__fv_disabled__=Ve[(we=t.rowOption)==null?void 0:we.disabledField]),Me&&(Ve[T.value]=Ce),Z.value.forEach(Be=>{const Oe=ee.get(Be)||0;ee.set(Be,Oe+ne.resolveField(Ve,Be))}),Te.push(Ve)}}return k.value&&y(Te),Z.value.forEach(Me=>{const Ce=ee.get(Me)||0;ee.set(Me,l(Ce.toFixed(2)))}),R.value=[...Te],Te}const de=i.ref(me()),Se=i.computed(()=>(M.value,de.value.filter(V=>k.value?V.__fv_visible__!==!1&&P(V):V.__fv_visible__!==!1)));function Ie(){Se.value.forEach((V,$)=>(V.__fv_visible_index__=$,V))}function ge(V,$,G=!1){var Te;const J=G?me():[...R.value];let ue=J;((Te=t.filter)==null?void 0:Te.mode)!=="server"&&(ue=J.filter(we=>n.apply(we)));const ye=V&&V.length?ue.filter(we=>V.reduce((Me,Ce)=>Me&&Ce.filter(we),!0)):ue,je=$&&$.length?ye.sort((we,Me)=>{const Ce=[...$],Ve=Ce.shift();let Be=Ve.compare(we[Ve.field],Me[Ve.field]);for(;Be===0&&Ce.length!==0;){const Oe=Ce.shift();Oe&&(Be=Oe.compare(we[Oe.field],Me[Oe.field]))}return Be}):ye;return de.value=je.map((we,Me)=>{if(we.__fv_data_grid_group_row__){const Ce=`group_of_${we.__fv_data_grid_group_field__}_${we.__fv_data_grid_group_value__}`;we.__fv_data_grid_group_collapse__=!!a.get(Ce)}return we.__fv_index__=Me,we.__fv_visible_index__=Me,we}),de.value}function He(V){return f.clear(),m.value=V,m.value.reduce(($,G)=>($.set(G.field,G),$),f),ge([],m.value)}function H(V,$){return f.set(V,$),m.value=Array.from(f.values()),ge([],m.value)}function K(V){return f.delete(V),m.value=Array.from(f.values()),ge([],m.value)}function oe(V,$){return s.set(V,$),c.value=Array.from(s.values()),ge([],Array.from(f.values()))}function xe(V){return s.delete(V),c.value=Array.from(s.values()),ge([],Array.from(f.values()),!0)}function Ee(){return s.clear(),c.value=[],ge([],Array.from(f.values()),!0)}function ze(V,$,G){const J=`group_of_${V}_${$}`;a.set(J,!0);const ue=ye=>ye[V]===$;return u.set(`collapse_${V}_${$}`,{field:V,fieldName:V,fieldType:"string",filterValue:$,filter:ue}),ge(Array.from(u.values()),Array.from(f.values()))}function Ye(V){S(de.value,V)}function Qe(V){w(de.value,V)}function Xe(V,$,G){const J=`group_of_${V}_${$}`;return a.set(J,!1),u.delete(`collapse_${V}_${$}`),ge(Array.from(u.values()),Array.from(f.values()),!0)}function X(V){const $=V.raw[T.value],G=J=>!J.__fv_parents__.has($);d.set(`fold_${$}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String($),filter:G}),ge(Array.from(d.values()),Array.from(f.values())),y(de.value)}function pe(V){const $=V[T.value];d.delete(`fold_${$}`)}function Ne(V){pe(V.raw),ge(Array.from(d.values()),Array.from(f.values()),!0),y(de.value)}function Fe(){const V=me();de.value=V,t.hierarchy&&(ge(Array.from(d.values()),Array.from(f.values())),y(de.value))}function Ke(V){const G=t.hierarchy&&B(V)?A(V):V;E.value=G,Fe()}function st(V,$,G){return(V&&V.length?de.value.filter((ue,ye)=>V.reduce((je,Te)=>je&&Te.filter(ue),!0)):de.value).slice($,G)}function Ft(V){const $=z(),G=Math.ceil(Y.value/$);0<=V&&V<=G&&(q.value=V,Fe())}function yt(V){E.value.push($e.cloneDeep(V)),de.value=me()}function Tt(V=0){if(!(V>-1))return!1;const G=W.value();t.hierarchy?g(V,G,E):E.value.splice(V,0,G),Fe()}function Mt(V=0){if(!(V>-1&&t.hierarchy))return!1;const G=W.value(),J=E.value[V];pe(J),C(V,G,E),Fe()}function vt(V,$=0){if(!($>-1&&t.hierarchy))return!1;const J=E.value[$];pe(J),_($,V,E),Fe()}function te(V){const $=V?V-1:0;E.value.splice($,1),Fe()}function ae(V){const $=E.value.findIndex(G=>G[T.value]===V);$!==-1&&(E.value.splice($,1),Fe())}function fe(V){const $=V>-1?E.value[V]:null;if(!($&&$.deletable!==!1))return!1;E.value=I($,E.value),Fe()}function Pe(){const V=u.size>0?Array.from(u.values()):[];return ge(V,Array.from(f.values()))}function Re(V){ie.value.size=V}function Ue(V){ie.value&&(Re(V),Fe())}function Ze(V,$){const G=E.value[Number(V)-1];G.editable!==!1?(G.name=$,Fe()):se.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function dt(V){return V.map(G=>{const J=R.value.findIndex(ue=>""+ue[T.value]==""+G);return J>-1?R.value[J]:null}).filter(G=>G!=null)}function nt(){const V=t.summary.groupFields;ee=V.reduce(($,G)=>($.set(G,0),$),ee);for(const $ of N.value)V.forEach(G=>{const J=ee.get(G)||0;ee.set(G,J+ne.resolveField($,G))});V.forEach($=>{const G=ee.get($)||0;ee.set($,l(G.toFixed(2)))})}function ot(V){const $=t.summary.groupFields;ee=$.reduce((G,J)=>(G.set(J,0),G),ee);for(const G of V)$.forEach(J=>{const ue=ee.get(J)||0;ee.set(J,ue+ne.resolveField(G.raw,J))});$.forEach(G=>{const J=ee.get(G)||0;ee.set(G,l(J.toFixed(2)))})}return{addFilter:oe,addNewDataItem:yt,addSorter:H,updatePageSize:Re,changePageSizeTo:Ue,collapse:ze,collapseTo:Ye,dataView:de,editDataItem:Ze,expand:Xe,expandTo:Qe,filters:c,fold:X,getRange:st,getSelectionItems:dt,hasRealChildren:b,insertNewChildDataItem:Mt,insertNewChildDataItems:vt,insertNewDataItem:Tt,isVisibleInTree:P,load:Ke,navigatePageTo:Ft,pageIndex:q,rawView:R,refresh:Pe,removeAllFilter:Ee,removeDataItem:te,removeDataItemById:ae,removeFilter:xe,removeHierarchyDataItem:fe,removeSorter:K,reOrderVisibleIndex:Ie,setSorters:He,sorters:m,summaries:ee,updateSummary:nt,toggleChildrenVisibiltyByCollapseStatus:O,totalItems:Y,unFold:Ne,updateDataView:Fe,visibleDataItems:Se,shouldGroupingData:F,pagination:ie,updateVisibleDataSummary:ot}}const Mo=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],_o={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},Eo={equal:(t,e,n)=>t&&t[e]===n,in:(t,e,n)=>{if(t){const o=t[e];return n.indexOf(o)>-1}return!1},notEqual:(t,e,n)=>t&&t[e]!==n},ko={equal:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()===o}return!1},notEqual:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()!==o}return!1},greaterThan:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>o}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>=o}return!1},lessThan:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<o}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const o=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<=o}return!1}},Vo={equal:(t,e,n)=>t?String(n).split(",").includes(String(t[e])):!1,in:(t,e,n)=>{if(t){const o=t[e];return n.indexOf(o)>-1}return!1},notEqual:(t,e,n)=>t?String(n).split(",").findIndex(r=>r===String(t[e]))===-1:!1},Io={equal:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):o===r}return!1},notEqual:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?!0:o!==r}return!1},greaterThan:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r>o}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r>=o}return!1},lessThan:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r<o}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const o=Number.parseFloat(String(n)),r=Number.parseFloat(String(t[e]));return isNaN(o)?isNaN(r):r<=o}return!1}},Po=new Map([["boolean",Eo],["datetime",ko],["enum",Vo],["number",Io],["text",_o]]);function No(t,e){const n=i.ref([]),o=new Map,{loadConditionGroup:r}=_e.useCondition();function l(w,y){switch(w){case"check-box":return new _e.CheckBoxValue({value:y});case"combo-list":return new _e.ComboListValue({value:y});case"combo-lookup":return new _e.ComboLookupValue({value:y});case"input-group":return new _e.TextValue({value:y});case"date-picker":return new _e.DatePickerValue({value:y});case"date-range":return new _e.DateRangeValue({value:y});case"datetime-picker":return new _e.DateTimePickerValue({value:y});case"datetime-range":return new _e.DateRangeValue({value:y});case"lookup":return new _e.TextValue({value:y});case"month-picker":return new _e.MonthPickerValue({value:y});case"month-range":return new _e.MonthRangeValue({value:y});case"number-range":return new _e.NumberRangeValue({value:y});case"number-spinner":return new _e.NumberSpinnerValue({value:y});case"radio-group":return new _e.RadioGroupValue({value:y});default:return new _e.TextValue({value:y})}}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"]]),s=new Map([["boolean",_e.CompareType.In],["date",_e.CompareType.Equal],["datetime",_e.CompareType.Equal],["number",_e.CompareType.Equal],["string",_e.CompareType.Equal],["text",_e.CompareType.Equal],["enum",_e.CompareType.In],["reference",_e.CompareType.Equal]]);function u(){return n.value.map(w=>({filterField:w.fieldCode,compare:w.compareType||w.compareType===0?w.compareType:_e.CompareType.Like,value:w.value.value,relation:w.relation||w.relation===0?w.relation:1,expresstype:_e.ValueType.Value,lbracket:w.lBracket||null,rbracket:w.rBracket||null}))}function d(w){var b;const y=w.dataType||"string";return((b=w.editor)==null?void 0:b.type)||a.get(y)||"text"}function f(w){var M,T,j,W,N;const y=`field_filter_${w.field}`,b=Date.now(),g=w.field,C=((M=w.column)==null?void 0:M.title)||"",_=((T=w.column)==null?void 0:T.dataType)||"string",P=s.get(_)||_e.CompareType.Equal,k=((W=(j=w.column)==null?void 0:j.editor)==null?void 0:W.type)||a.get(_)||"text",O=l(k,(N=w.column)==null?void 0:N.filter),I=k==="lookup"||k==="combo-lookup"?_e.ValueType.SmartHelp:k==="combo-list"?_e.ValueType.Enum:_e.ValueType.Value;o.set(y,{id:y,fieldCode:g,fieldName:C,compareType:P,valueType:I,value:O,conditionId:b}),n.value=Array.from(o.values())}function c(w){const y=`field_filter_${w.field}`;o.delete(y),n.value=Array.from(o.values())}function m(w){o.delete(w),n.value=Array.from(o.values())}function p(){o.clear(),n.value=[]}function h(w){const{valueType:y}=w.value,b=w.compareType||"0",g=Mo[Number(b)];return Po.get(y)[g]}function v(w){const y=w.relation===2?0:1,b=w.items.map(C=>{const _=h(C);return k=>_(k,C.fieldCode,C.value.getValue())}),g=w.children&&w.children.length?w.children.map(C=>v(C)):[];return{relation:y,filterFunctions:b,children:g}}function F(){const w=r(n.value);return v(w)}function E(w,y){const b=y.filterFunctions.map(C=>C(w)),g=y.children.map(C=>E(w,C));return y.relation===1?b.every(C=>C)&&g.every(C=>C):b.includes(!0)||g.includes(!0)}function x(w){const y=F();return E(w,y)}function S(w){e.emit("filterChanged",w)}return{addColumnFilter:f,apply:x,clearCondition:p,conditions:n,getFilterEditorType:d,removeColumnFilter:c,removeCondition:m,filterFromServer:S,createFilterConditions:u}}function Bo(t){i.ref(t.selection.showCheckbox||!1);const e=i.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),n=i.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),o=i.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.parentIdField)||"parent"}),r=i.computed(()=>t.hierarchy&&t.selection.showCheckbox),l=i.computed(()=>(t.treeNodeIconsData.fold||t.iconField)&&t.showTreeNodeIcons);return{collapseField:e,hasChildrenField:n,parentIdField:o,shouldShowCheckBox:r,shouldShowIcon:l}}function Oo(t,e,n,o,r,l,a,s,u){var vt;const{dataView:d,visibleDataItems:f}=e,{getVisualData:c,maxVisibleRowIndex:m,minVisibleRowIndex:p}=r,h=i.computed(()=>o.value.primaryColumnsWidth),v=i.computed(()=>o.value.leftColumnsWidth),F=i.computed(()=>o.value.rightColumnsWidth),E=((vt=t.rowOption)==null?void 0:vt.height)||28,x=i.ref(0),S=i.ref(0);let w=0,y=l.value-1;const b=i.ref(0),g=i.ref(0),C=i.ref(0),_=i.ref(t.virtualized),P=24,k=1.5;let O=null;function I(){const te=f.value;if(te.length<=0)return 0;const ae=m.value<te.length?te[m.value]:te[te.length-1];return ae.__fv_data_position__>te.length*E?te.length*E:(ae.__fv_data_position__||0)+(ae.__fv_data_height__||0)+Math.max(te.length-1-m.value,0)*E}const M=i.computed(()=>{const te=I();f.value;let ae=g.value/Math.max(te,g.value),fe=Math.floor(ae*g.value);for(;g.value>0&&fe<P;)ae*=k,fe=Math.floor(ae*g.value);return fe}),T=i.computed(()=>Math.floor(C.value/Math.max(h.value,C.value)*b.value)),j=0,W=0,N=i.computed(()=>b.value-(v.value+h.value+F.value+s.value));function R(te){const fe=Math.floor(te/E)+1,Pe=f.value;return Pe.length>fe?Pe[fe].__fv_visible_index__-1:0}function A(te,ae,fe){let Pe=te,Re=ae;const Ue=ae-te+1;if(Ue<a+l.value+a){const Ze=a+l.value+a-Ue,dt=ae+Ze<=fe,nt=0+Ze<=te;if(dt)Re+=Ze,y=Re;else if(nt)Pe-=Ze,w=Pe;else{const ot=fe-ae,V=Ze-ot;Re=Math.min(ae+ot,fe),Pe=Math.max(te-V,0)}}return{actualStart:Pe,actualEnd:Re}}function B(te){var ot,V;const ae=f.value;if(!ae.length){n.value=[];return}const fe=(ot=t.pagination)!=null&&ot.enable?0:Math.max(w-a,0),Pe=ae[ae.length-1].__fv_visible_index__,Re=(V=t.pagination)!=null&&V.enable?ae.length-1:Math.min(y+a,Pe),{actualStart:Ue,actualEnd:Ze}=A(fe,Re,Pe),dt=ae[Ue-1],nt=c(Ue,Ze,dt,te);nt.length&&(n.value=[...nt])}const D=i.computed(()=>I()>g.value),Z=i.computed(()=>Math.floor(h.value)>C.value);function ee(te,ae){let fe=te;const Pe=fe>j,Re=D.value;Re&&fe<g.value-ae&&(fe=g.value-ae),(!Re||Pe)&&(fe=j),x.value!==fe&&(x.value=fe)}function Y(){_.value&&(w=R(Math.abs(x.value)),y=w+l.value-1,(w<p.value||y>m.value-a/2)&&B())}function ie(te){let ae=x.value+te;ae>j&&(ae=j);const fe=I();ee(ae,fe),Y()}function z(te){if(!Z.value){S.value=0;return}let ae=S.value+te;ae>W&&(ae=W),ae<N.value&&(ae=N.value),S.value!==ae&&(S.value=ae)}function q(){Math.abs(S.value)+C.value>h.value&&(S.value=Math.min(C.value-h.value,0))}function L(){x.value=0,w=0,y=l.value-1,B()}function U(){const te=I();ee(x.value,te)}i.watch([C,h],()=>{z(0)}),i.watch(g,(te,ae)=>{te!==ae&&te>=d.value.length*E&&ie(0)});function se(te){let{deltaX:ae}=te,fe=-1*te.deltaY;return typeof ae>"u"&&(ae=-1*te.wheelDeltaX/6),typeof fe>"u"&&(fe=te.wheelDeltaY/6),te.deltaMode&&te.deltaMode===1&&(ae*=10,fe*=10),te.shiftKey?{deltaY:-fe,deltaX:-ae}:{deltaX:ae,deltaY:fe}}function he(te){if(t.disabled||!D.value||te.target.tagName==="TEXTAREA")return;te.preventDefault(),te.stopPropagation();const{deltaX:ae,deltaY:fe}=se(te);ie(fe),z(ae)}const me=i.computed(()=>({height:`${d.value.length*E}px`,width:`${v.value}px`,transform:`translateY(${x.value}px)`})),de=i.computed(()=>({transform:`translateY(${x.value}px)`})),Se=i.computed(()=>({height:`${(t.autoHeight?f.value:d.value).length*E}px`,width:`${h.value}px`,transform:`translate(${S.value}px, ${x.value}px)`})),Ie=i.computed(()=>({transform:`translate(${S.value}px, ${x.value}px)`})),ge=i.computed(()=>({height:`${d.value.length*E}px`,width:`${F.value}px`,transform:`translateY(${x.value}px)`})),He=i.computed(()=>({transform:`translateY(${x.value}px)`})),H=i.computed(()=>({height:`${d.value.length*E}px`,width:`${s.value}px`,transform:`translateY(${x.value}px)`})),K=i.computed(()=>({width:`${v.value}px`})),oe=i.computed(()=>({transform:`translateX(${S.value}px)`})),xe=i.computed(()=>({width:`${F.value}px`})),Ee=i.computed(()=>{const te=I();return ee(x.value,te),x.value/(g.value-te)*(g.value-M.value)}),ze=i.computed(()=>({width:"8px",height:`${M.value}px`,top:`${Ee.value}px`,backgroundColor:"#cccccc !important"})),Ye=i.computed(()=>S.value/N.value*(b.value-T.value)),Qe=i.computed(()=>({height:"8px",width:`${T.value}px`,left:`${Ye.value}px`,backgroundColor:"#cccccc !important"})),Xe=i.ref(!1),X=i.ref(-1),pe=i.ref(-1),Ne=i.ref();function Fe(te){if(Xe.value&&pe.value!==-1){const ae=pe.value-te.pageX,fe=b.value-T.value;if(Math.abs(ae)<=fe){const Pe=ae/(C.value-T.value)*(h.value-C.value);z(Pe),pe.value=te.pageX}}}function Ke(te){if(Xe.value&&X.value!==-1){const ae=X.value-te.pageY,fe=I(),Pe=fe-M.value;if(Math.abs(ae)<=Pe){const Re=ae/(g.value-M.value)*(fe-g.value);ie(Re),X.value=te.pageY}}}function st(te){Xe.value=!1,X.value=-1,pe.value=-1,document.removeEventListener("mouseup",st),O&&(document.removeEventListener("mousemove",O),O=null),document.body.style.userSelect="",Ne.value&&(Ne.value.style.opacity=null)}function Ft(te,ae,fe){var Ue;Xe.value=!0;const Pe=(Ue=te.target)==null?void 0:Ue.parentElement;Pe&&(Pe.style.opacity="1",Ne.value=Pe);const Re=fe==="horizontal"?Fe:$e.throttle(Ke,50);O||(O=Re),fe==="vertical"&&(X.value=te.pageY),fe==="horizontal"&&(pe.value=te.pageX),ae.value&&(ae.value,document.addEventListener("mousemove",O),document.addEventListener("mouseup",st),document.body.style.userSelect="none")}function yt(te){const ae=d.value.length*E-g.value;let fe=te*E;fe>=ae&&(fe=ae),ie(-fe-x.value)}function Tt(){yt(d.value.length)}function Mt(te){ie(te-x.value)}return{dataGridWidth:b,fitHorizontalScroll:q,gridDataStyle:Se,gridHeaderColumnsStyle:oe,gridMergedDataStyle:Ie,gridSideStyle:H,horizontalScrollThumbStyle:Qe,leftFixedGridDataStyle:me,leftFixedGridHeaderColumnsStyle:K,leftFixedGridMergedDataStyle:de,offsetX:S,offsetY:x,onMouseDownScrollThumb:Ft,onWheel:he,reCalculateVisualDataRows:B,resetScroll:L,rightFixedGridDataStyle:ge,rightFixedGridHeaderColumnsStyle:xe,rightFixedGridMergedDataStyle:He,shouldShowHorizontalScrollbar:Z,shouldShowVirticalScrollbar:D,updateVirticalScroll:U,updateVisibleRowsOnLatestVisibleScope:Y,verticalScrollThumbStyle:ze,viewPortWidth:C,viewPortHeight:g,scrollToBottom:Tt,scrollToRowByIndex:yt,scrollTo:Mt}}function jo(t){var l;const{isUndefined:e}=ne.useCommonUtils(),n=((l=t.rowOption)==null?void 0:l.height)||28;function o(a,s){const u=a.pre;if(u){let d=u.__fv_data_position__,f=u.__fv_data_height__;(e(d)||t.virtualized&&t.hierarchy&&u.__fv_visible_index__*n!==d)&&(d=u.__fv_visible_index__*n),e(f)&&(f=n);const c=a.visible?d+f:u.__fv_data_position__;a.top=c,s.__fv_data_position__=c}else a.top=0,s.__fv_data_position__=0}function r(a,s,u){if(a&&!s.ref){s.ref=a;const d=s.parent;s.cellHeight!==a.offsetHeight&&(s.cellHeight=a.offsetHeight),s.cellHeight&&s.cellHeight>(d.height||0)&&(d.height=s.cellHeight,u.__fv_data_height__=d.height),o(d,u)}!a&&s.ref&&(s.ref=a)}return{updateRowPosition:o,updateVisualInfomation:r}}function $o(){function t(e,n){var a,s;if(!n.data||!n.data.length)return"";const o=Object.prototype.hasOwnProperty.call(n,"valueField")&&n.valueField||"value",r=Object.prototype.hasOwnProperty.call(n,"textField")&&n.textField||"name";if(e!=null&&e.includes(",")){const u=e.split(",");if(!n.data.filter(m=>u.includes(m[o])).length)return"";const f=(a=n.data)==null?void 0:a.reduce((m,p)=>(m[p[o]]=p,m),{});return u.map(m=>{var p;return(p=f[m])==null?void 0:p[r]}).join(",")||e}const l=(s=n.data)==null?void 0:s.find(u=>u[o]===e);return(l==null?void 0:l[r])||e||""}return{renderEnumColumn:t}}function Ro(){function t(e,n){return e?n==null?void 0:n.trueText:n==null?void 0:n.falseText}return{renderText:t}}function Ao(){const{formatTo:t}=ne.useDateFormat();function e(o,r){if(o){let l="yyyy-MM-dd";if(typeof r=="string"?l=r:typeof r=="object"&&(l=r.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof r=="object"&&r.dateRange){const a=r.dateRangeDatesDelimiter||"~";let[s,u]=o.split(a);return s=t(s,l),u=t(u,l),s+a+u}return t(o,l)}return o}function n(o,r){const l=r.dateFormat||"yyyy-MM-dd";return t(o,l)}return{renderDateColumn:n,renderDateTimeColumn:e}}function Lo(){const{formatTo:t}=ne.useNumberFormat();function e(n,o){const r={precision:o.precision,prefix:o.prefix||"",suffix:o.suffix||"",decimalSeparator:o.decimal||".",groupSeparator:o.thousand||""};return t(n,r)||n}return{renderNumberColumn:e}}function Ho(){function t(e,n){if(e){const o={};return n!=null&&n.width&&(o.width=`${n.width}px`),n!=null&&n.height&&(o.height=`${n.height}px`),i.createVNode("img",{src:e,style:o},null)}return e}return{renderImageColumn:t}}function Do(){const{locale:t}=ct.useI18n();function e(n,o){return(n==null?void 0:n[t.value||"zh-CHS"])||""}return{renderMultilingualColumn:e}}function Wo(){const{renderText:t}=Ro(),{renderEnumColumn:e}=$o(),{renderNumberColumn:n}=Lo(),{renderDateColumn:o,renderDateTimeColumn:r}=Ao(),{renderImageColumn:l}=Ho(),{renderMultilingualColumn:a}=Do();function s(f){return typeof f=="boolean"?f.toString():f}function u(f,c,m){return c.customFormat?c.customFormat(f,m.raw):s(f)}function d(f,c,m){const{column:p}=f,h=ne.resolveField(c.raw,p.field),v=m.options||m;return m.type===rt.NONE?s(h):m.type===rt.CUSTOM?u(h,m,c):m.type===rt.ENUM?e(h,v):m.type===rt.NUMBER?n(h,v):m.type===rt.BOOLEAN?t(h,v):m.type===rt.DATE?o(h,v):m.type===rt.DATE_TIME?r(h,m):m.type===rt.IMAGE?l(h,v):m.type===rt.MULTI_LINGUAL?a(h,v):s(h)}return{renderFormatColumn:d}}function qo(t,e,n){var E;const{isUndefined:o}=ne.useCommonUtils(),r=i.ref(t.mergeCell);(E=i.ref(t.rowOption).value)!=null&&E.wrapContent;const{updateVisualInfomation:a}=n,{renderCommandColumn:s}=go(t),{renderFormatColumn:u}=Wo();function d(x,S,w,y,b,g=1){const C={colSpan:g,rowSpan:1,index:w,field:x,data:ne.resolveField(y,x),editingData:ne.resolveField(y,x),parent:b,mode:S,align:"left",valign:"start",showEllipsis:!0,getEditor:_=>_.data,setRef:_=>a(_,C,y),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return C}function f(x,S,w){return x.getEditor=y=>e.getEditor(y,S,y.parent),x.setRef=y=>a(y,x,w),x.update=y=>{y!==void 0&&(x.editingData=y)},x.accept=()=>{ne.setFieldValue(x.editingData,w,S.field),x.data=ne.resolveField(w,S.field)},x.cancel=()=>{x.editingData=x.data},x.updateData=y=>{ne.setFieldValue(ne.resolveField(y,S.field),w,S.field),x.data=ne.resolveField(w,S.field),x.editingData=ne.resolveField(w,S.field)},x}function c(x,S){S.dataType==="commands"?x.formatter=(w,y)=>S.formatter?S.formatter(x,y):s(x,y):S.formatter&&(x.formatter=(w,y)=>typeof S.formatter=="function"?S.formatter(w,y):u(x,y,S.formatter))}function m(x,S,w){const y=S&&S.data[w];if(y&&y.data===x.data){const g=y&&y.spannedBy||y;g.rowSpan++,g.spanned=g.spanned||[],g.spanned.push(x),x.colSpan=0,x.rowSpan=0,x.spannedBy=g}}function p(x,S,w){r.value&&m(x,S,w.field)}function h(x,S){S.showEllipsis!==void 0&&(x.showEllipsis=S.showEllipsis),x.showTips=o(S.showTips)?!0:S.showTips,x.column=S,x.align=S.align||"left",x.valign=S.valign||"middle",x.mode=t.editable?Le.editable:Le.readonly}function v(x,S,w,y){h(x,S),f(x,S,y),c(x,S),p(x,w,S)}function F(x,S,w,y,b){const g=t.editable?Le.editable:Le.readonly,C=d(x.field,g,S,w,y);return v(C,x,b,w),C}return{createCellByColumn:F,createCellByField:d,updateCellByColumn:v}}function zo(t,e,n,o,r,l,a){var S,w;const s=i.ref(t.rowOption),u=((S=s.value)==null?void 0:S.height)||28,d=((w=s.value)==null?void 0:w.wrapContent)||!1,{idField:f}=r,{collapseField:c}=o,{updateRowPosition:m}=l,{createCellByColumn:p}=a,h=(y,b,g,C)=>{ne.setFieldValue(ne.resolveField(y,C),b,C),g.data[C].data=ne.resolveField(b,C),g.data[C].editingData=ne.resolveField(b,C)};function v(y,b,g,C,_,P){var Z,ee,Y;const{__fv_data_grid_group_field__:k,__fv_data_grid_group_value__:O,__fv_data_index__:I}=g,M=g.__fv_data_grid_group_layer__||(g.__fv_parents__?(Z=g.__fv_parents__)==null?void 0:Z.size:0)||0,T=typeof g.parent=="number"?Number(g.parent):-1,j=g.__fv_data_grid_group_collapse__||g[c.value],W=g.__fv_visible__===void 0?!0:g.__fv_visible__,N=g.__fv_checked__,R=g.__fv_indeterminate__,A=g.__fv_disabled__||g[((ee=t.rowOption)==null?void 0:ee.disabledField)||"disabled"],B=t.hierarchy&&e.isVisibleInTree(g),D={collapse:j,data:{},dataIndex:I,groupField:k,groupValue:O,layer:M,index:b,parentIndex:T,pre:C,top:P,type:y,raw:g,checked:N,disabled:A,indeterminate:R,setRef:ie=>{D.ref=ie},visible:W&&B||W&&!t.hierarchy,status:it.initial,updateCell:(ie,z)=>{h(ie,g,D,z),e.updateSummary()},updateCells:(ie,z)=>{z.forEach(q=>{h(ie,g,D,q)})}};return C||(g.__fv_data_position__=0),d||(D.height=u,g.__fv_data_height__=D.height,m(D,g)),(Y=s.value)!=null&&Y.customRowStatus&&(s.value.customRowStatus(D),g.__fv_disabled__=D.disabled),D}function F(y,b,g,C,_,P){const k=v(Ct.data,_,b,g,C,P);return y.forEach((O,I)=>{k.data[O.field]=p(O,I,b,k,C)}),k}function E(y,b,g,C,_){return Object.assign(y,{index:b,dataIndex:g,top:C,pre:_})}function x(y,b,g,C,_,P){const k=y.__fv_data_index__,O=y[f.value],I=n.getEditingSnapshot(O);return I===null?F(P,y,b,g,C,_):E(I,C,k,_,b)}return{createEmptyRow:v,createNewRowFromDataItem:F,renderDataRow:x}}function Go(t,e,n,o){const r=i.ref(t.summary),{idField:l}=e,{createCellByField:a}=n,{createEmptyRow:s}=o,u=i.computed(()=>{const m=r.value;return(m==null?void 0:m.groupFields)||[]}),d=i.computed(()=>{const m=r.value;return m&&m.enable&&m.groupFields&&m.groupFields.length>0});function f(m,p,h,v){if(d.value){const F=m.data[p];let E=F.colSpan;const x=u.value.reduce((S,w)=>(S.set(w,!0),S),new Map);v.reduce((S,w,y)=>{if(x.has(w.field)){const b=a(w.field,Le.readonly,y,h,m);m.data[w.field]=b,E-1>y&&(E=y)}return S},m),F.colSpan=E}}function c(m,p,h,v,F,E,x){const S=m.__fv_data_grid_group_field__,w=s(Ct.group,v,m,p,h,F);return w.data[l.value]=a(l.value,Le.readonly,-1,m,w,0),w.data[S]=a(S,Le.readonly,1,m,w,E.length),f(w,S,m,E),w}return{renderGroupRow:c}}function Uo(t,e,n,o){const{idField:r}=e,{createCellByField:l}=n,{createEmptyRow:a}=o;function s(u,d,f,c,m,p,h){const v=u.__fv_data_grid_group_field__,F=a(Ct.summary,c,u,d,f,m);return F.data[r.value]=l(r.value,Le.readonly,-1,u,F),F.data[v]=l(v,Le.readonly,1,u,F,p.length),F}return{renderSummaryRow:s}}function Yo(t,e,n,o,r){var A;const{idField:l}=n,a=i.ref(t.editable),s=i.ref(t.editOption),u=i.ref(((A=t.rowOption)==null?void 0:A.wrapContent)||!1),{onClickRow:d,onClickRowExcludeDblclick:f}=o,c=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let m,p,h,v,F;function E(B){return p&&p.raw[l.value]===B?p:null}const x=i.reactive({});function S(B,D,Z={}){B.mode=Le.editing,m=B,p=D,h=ne.resolveField(D==null?void 0:D.raw,B.field),v=Z;for(const ee in x)delete x[ee]}function w(B){B.accept(),B.mode=Le.editable,m=null;const D={};p&&(Object.keys(p).forEach(Z=>{D[Z]=p==null?void 0:p[Z]}),p=null),e.emit("endEditCell",{cell:B,row:D,newValue:ne.resolveField(D==null?void 0:D.raw,B.field),oldValue:h,column:v,editor:x})}function y(B){const D=Promise.resolve(!0);return B?D.then(()=>$e.isUndefined(t.beforeEndEditCell)?!0:typeof t.beforeEndEditCell=="function"?t.beforeEndEditCell({cell:B,row:p,newValue:B.editingData,oldValue:h}):()=>!0).then(Z=>(Z&&(w(B),p&&(p=null)),Z)):D}function b(B){if(F&&F!==B.target){F=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const Z=B.target;if(!(Z!=null&&Z.closest(".popover"))){if(B instanceof MouseEvent||B.key!=="Enter"){const ee=Z.closest(".fv-grid-cell");if(m&&m.ref&&m.ref===ee)return}y(m).then(ee=>{ee&&document.body.removeEventListener("click",b,!0)})}}function g(B,D,Z){return Promise.resolve().then(()=>{var Y;const ee=(Y=Z.editor)==null?void 0:Y.readonly;return!$e.isUndefined(t.beforeEditCell)&&typeof t.beforeEditCell=="function"?t.beforeEditCell({row:B,cell:D,rawData:B.raw,column:Z}):!ee}).then(ee=>{ee&&(S(D,B,Z),document.body.removeEventListener("click",b,!0),document.body.addEventListener("click",b,!0))})}function C(B,D,Z,ee={}){B.stopPropagation(),f(B,Z),a.value&&s.value.editMode==="cell"&&D.mode===Le.editable&&y(m).then(()=>{m||g(Z,D,ee)})}function _(B,D,Z,ee={}){B.stopPropagation(),d(B,Z),a.value&&s.value.editMode==="cell"&&D.mode===Le.editable&&y(m).then(()=>{m||g(Z,D,ee)})}function P(B){B.stopPropagation(),F=B.target}function k(B){B.stopPropagation(),F&&(F=null)}function O(B){Object.values(B.data).filter(D=>D.mode===Le.editable&&D.field!=="__commands__").forEach(D=>{D.mode=Le.editing}),B.status=it.editing,p=B}function I(B,D){Object.values(B.data).filter(Z=>Z.mode===Le.editing).forEach(Z=>{D?Z.accept():Z.cancel(),Z.mode=Le.editable}),B.status=it.initial,p===B&&(p=null)}function M(B){a.value&&s.value.editMode==="row"&&p!==B&&(p&&I(p,!1),O(B))}function T(B){I(B,!0),B.status=it.initial}function j(B){I(B,!1),B.status=it.initial}function W(B,D,Z){const ee=D.dataType,Y=D.editor||{type:c.get(ee)||"input-group"};return!u.value&&Y.type==="text"&&(Y.type="input-group"),Y?(Y.type==="input-group"&&(Y.textAlign=D.align!=="center"&&D.align!=="right"?"left":D.align,Y.updateOn="change"),Y.type==="number-spinner"&&(Y.updateOn="change"),Y.type==="textarea"&&(Y.lineBreak="alt enter"),Y.context={rowData:Z.raw,column:D,cell:B,editor:x},Y.readonly=!1,i.createVNode(oo.FDynamicFormInput,{focusOnCreated:t.focusOnEditingCell,selectOnCreated:t.selectOnEditingCell,editor:Y,modelValue:B.editingData,"onUpdate:modelValue":ie=>B.editingData=ie,id:D.id,onMousedown:ie=>P(ie),onMouseup:ie=>k(ie)},null)):B.data}function N(){y(m)}i.watch(()=>t.editable,()=>{a.value=t.editable}),i.watch(()=>{var B;return(B=t.editOption)==null?void 0:B.editMode},B=>{s.value.editMode=B});function R(){m=null,p=null,v=null,F=null,document.body.removeEventListener("click",b,!0)}return{clear:R,onClickOutOfCell:b,onClickCell:_,onClickCellByKeyboard:C,onEditingRow:M,acceptEditingRow:T,cancelEditingRow:j,getEditingSnapshot:E,getEditor:W,endEditCell:N,onMousedownCell:P,onMouseupCell:k}}function Xo(t){const e=i.ref(t.idField);function n(o){if(o&&o.length){const r=o[0];Object.keys(r).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:n}}function Zo(t,e,n,o){const{idField:r}=o,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:s,selectItem:u,selectedValues:d,toggleSelectItem:f,updateSelectAllStatus:c,enableSelectRow:m,multiSelectMode:p,isSingleSelect:h}=n,v=i.ref(0),F=i.ref(-1);function E(M){l.value=M}function x(M){return m.value&&(s.value?d.value.includes(M.raw[r.value]):M.raw[r.value]===l.value)}function S(M,T){var N;const j=T??M.dataIndex,W={"fv-grid-row":M.type===Ct.data,"fv-grid-group-row":M.type===Ct.group,"fv-grid-summary-row":M.type===Ct.summary,"fv-grid-row-hover":j===F.value,"fv-grid-row-selected":x(M),"fv-grid-row-odd":j%2>0,"fv-grid-row-even":j%2===0,"fv-grid-disabled":M.disabled};if((N=t.rowOption)!=null&&N.customRowStyle){const R=t.rowOption.customRowStyle(M.raw)||{};return Object.assign({},W,R.class||{})}return W}function w(M){var j;const T={"fv-grid-cell":!0};if((j=t.rowOption)!=null&&j.customCellStyle){const W=t.rowOption.customCellStyle(M)||{};return Object.assign({},T,W.class||{})}return T}function y(M){var j;const T={"fv-grid-hierarchy-cell":!0};if((j=t.rowOption)!=null&&j.customCellStyle){const W=t.rowOption.customCellStyle(M)||{};return Object.assign({},T,W.class||{})}return T}function b(M,T){var N,R;if(s.value&&!(T!=null&&T.shiftKey)||h.value){(N=t.selection)!=null&&N.keepSelectingOnClick?u(M):f(M,(R=t.selection)==null?void 0:R.keepSelectingOnClick),c();return}if(s.value&&(T==null?void 0:T.shiftKey)||a.value){f(M),c();return}E(M.raw[r.value])}function g(M,T){T.disabled||(b(T,M),e.emit("clickRow",T.index,T.raw))}function C(M){v.value+=1,setTimeout(()=>{v.value===1&&e.emit("clickRow",M.index,M.raw),v.value=0},250),v.value>1&&(e.emit("doubleClickRow",M.index,M.raw),v.value=0)}function _(M,T){T.disabled||(b(T,M),C(T))}function P(M){M.disabled||C(M)}function k(M,T){}function O(M,T){}function I(M,T){var N;const j=T??M.dataIndex,W={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":j===F.value,"fv-grid-sidebar-row-selected":x(M),"fv-grid-sidebar-row-odd":j%2>0,"fv-grid-sidebar-row-even":j%2===0,"d-flex":!0,"align-items-center":!0};if((N=t.rowOption)!=null&&N.customRowStyle){const R=t.rowOption.customRowStyle(M.raw)||{};return Object.assign({},W,R.class||{})}return W}return{activeRowById:E,clickRowItem:P,selectRow:b,gridCellClass:w,gridHierarchyCellClass:y,gridRowClass:S,onClickRow:_,onClickRowExcludeDblclick:g,onMouseoverRow:k,sidebarRowClass:I,onMouseoutRow:O}}function Jo(t,e,n,o,r){const{idField:l}=n,{dataView:a,getSelectionItems:s}=e,u=i.ref(""),d=i.computed(()=>t.selection.enableSelectRow),f=i.ref(t.selection.multiSelect??!1),c=i.ref(t.selection.multiSelectMode||"DependOnCheck"),m=i.ref(t.selection.showCheckbox),p=i.ref(t.selection.showSelectAll),h=i.ref(t.selectionValues||[]),v=i.computed(()=>t.selection.showSelection),F=i.computed(()=>{var H;return((H=t.selection)==null?void 0:H.keepSelectingOnPaging)===void 0?!0:t.selection.keepSelectingOnPaging}),E=i.ref(!!h.value.length&&o.value.length===h.value.length),x=i.ref(!!h.value.length&&o.value.length!==h.value.length);i.watch(()=>t.selection.showSelectAll,(H,K)=>{H!==K&&(p.value=H)});function S(){if(!F.value){const H=a.value.map(K=>K[l.value]);h.value=h.value.filter(K=>H.includes(K))}}function w(){const H=a.value.every(oe=>h.value.includes(oe[l.value])),K=a.value.every(oe=>!h.value.includes(oe[l.value]));H&&(E.value=!0,x.value=!1),K&&(E.value=!1,x.value=!1),!H&&!K&&(E.value=!1,x.value=!0)}function y(){return s(h.value)}function b(){const H=o.value.reduce((oe,xe)=>(oe.set(xe.raw[l.value],xe),oe),new Map);return h.value.map(oe=>H.get(oe)).filter(oe=>!!oe)}function g(H){var oe;const K=H.raw.__fv_children_index__;if(K&&K.length){const xe=K.map(Ee=>a.value[Ee]);(oe=h.value)!=null&&oe.length&&xe.some(ze=>!h.value.includes(ze[l.value]))&&(H.indeterminate=!0,H.raw.__fv_indeterminate__=!0)}}const C=i.computed(()=>d.value&&f.value),_=i.computed(()=>d.value&&!f.value&&!m.value),P=i.computed(()=>!!t.hierarchy),k=i.computed(()=>{const H=m.value&&c.value==="DependOnCheck";return C.value&&H}),O=i.computed(()=>C.value&&!m.value),I=i.computed(()=>C.value&&m.value&&c.value==="OnCheckAndClick");i.computed(()=>I.value);function M(){const H=s(h.value);r.emit("selectionChange",H)}function T(H){r.emit("unSelectItem",H)}function j(H){r.emit("selectItem",H)}function W(){const H=o.value.filter(oe=>oe.indeterminate).map(oe=>oe.raw[l.value]);o.value.forEach(oe=>{oe.checked=!1,oe.indeterminate=!1,oe.raw.__fv_checked__=!1,oe.raw.__fv_indeterminate__=!1}),b().forEach(oe=>{oe.checked=!0,oe.raw.__fv_checked__=!0}),H.forEach(oe=>{const xe=o.value.find(Ee=>Ee.raw[l.value]===oe);g(xe)})}i.watch(()=>o.value,()=>{W()}),i.watch(()=>t.selectionValues,H=>{h.value=H,W()},{immediate:!0}),i.watch(()=>t.selection,H=>{f.value=!!H.multiSelect,c.value=H.multiSelectMode||"DependOnCheck",m.value=!!H.showCheckbox});const N=i.computed(()=>!f.value);function R(H){return H.raw[l.value]}function A(H){return h.value.findIndex(oe=>oe===R(H))}function B(){b().forEach(oe=>{oe.checked=!1}),s(h.value).forEach(oe=>{oe.__fv_checked__=!1}),h.value=[],u.value="",w()}function D(H){const K=H;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const oe=new Set(h.value);oe.add(K[l.value]),h.value=Array.from(oe.values()),S()}function Z(H){const K=H;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,h.value=h.value.filter(oe=>oe!==K[l.value]),S()}function ee(H){const K=H.raw;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const oe=new Set(h.value);oe.add(K[l.value]),h.value=Array.from(oe.values()),S(),H.checked=!0,H.indeterminate=!1}function Y(H){const K=H.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,h.value=h.value.filter(oe=>oe!==K[l.value]),S(),H.checked=!1,H.indeterminate=!1}function ie(H){ee(H),u.value=H.raw[l.value]}function z(H){Y(H),u.value=""}function q(H){H.__fv_checked__=!1,H.__fv_indeterminate__=!0,h.value=h.value.filter(K=>K!==H[l.value]),S()}function L(H){const K=H.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!0,h.value=h.value.filter(oe=>oe!==K[l.value]),S(),H.checked=!1,H.indeterminate=!0}function U(H){N.value&&B(),H.checked?Y(H):ee(H),M()}function se(H,K=!0){const oe=H.checked;N.value&&B(),K?H.checked?z(H):ie(H):oe?z(H):ie(H),M(),H.checked?j(H):T(H)}function he(H){H.raw[l.value]!==u.value&&(B(),ie(H),M())}function me(H){const K=o.value.find(oe=>oe.raw[l.value]===H);if(K)he(K);else{const oe=a.value.find(xe=>xe[l.value]===H);oe&&D(oe)}}function de(H){const K=o.value.filter(Ee=>H.includes(Ee.raw[l.value])),oe=K.map(Ee=>Ee.raw[l.value]),xe=a.value.filter(Ee=>{const ze=Ee[l.value];return!oe.includes(ze)&&H.includes(ze)});(K.length||xe.length)&&_.value&&(u.value=H[0]),K.forEach(Ee=>{ie(Ee)}),xe.forEach(Ee=>{D(Ee)}),M()}function Se(H){for(const K of H){if(!h.value.includes(K))continue;const oe=o.value.find(xe=>xe.raw[l.value]===K);if(oe)z(oe);else{const xe=a.value.find(Ee=>Ee[l.value]===K);xe&&Z(xe)}}h.value=h.value.filter(K=>!H.includes(K)),S()}function Ie(){o.value.forEach(H=>{ee(H)}),M()}function ge(){o.value.forEach(H=>{Y(H)}),M()}function He(){return o.value.find(H=>H.raw[l.value]===u.value)}return{clearSelection:B,currentSelectedDataId:u,enableMultiSelect:f,enableSelectRow:d,findIndexInSelectedItems:A,getSelectedItems:y,getSelectionRow:He,indeterminate:L,indeterminateDataItem:q,isSelectingHirarchyItem:P,multiSelectMode:c,multiSelectOnClickRow:I,multiSelectOnClickRowWithShift:O,multiSelectOnlyOnCheck:k,select:ie,selectAll:Ie,selectedValues:h,selectDataItem:D,selectItem:he,selectItemById:me,selectItemByIds:de,showCheckBox:m,showSelectAll:p,toggleSelectItem:se,toggleSelectItemWithoutRow:U,unSelect:z,unSelectAll:ge,unSelectDataItem:Z,unSelectItemByIds:Se,updateSelectAllStatus:w,selectAllStatus:E,indeterminateStatus:x,isSingleSelect:_,showSelection:v,keepSelectingOnPaging:F}}function Qo(t,e){var E,x;const{t:n}=ct.useI18n(),o=String(Date.now()),r=50,{showCheckBox:l,showSelectAll:a}=e,s=i.ref(((E=t.rowNumber)==null?void 0:E.enable)??!1),u=i.computed(()=>t.hierarchy&&l.value&&t.selection.enableSelectRow&&t.selection.multiSelect?!1:l.value),d=i.ref(s.value?((x=t.rowNumber)==null?void 0:x.width)??32:0),f=i.ref(u.value?r:0),c=i.computed(()=>{var S,w;return s.value?((S=t.rowNumber)==null?void 0:S.heading)==="序号"?n("datagrid.lineNumberTitle"):(w=t.rowNumber)==null?void 0:w.heading:""}),m=i.computed(()=>(u.value&&!t.hierarchy?Number(f.value):0)+(s.value?Number(d.value):0));i.watch(()=>t.rowNumber,S=>{S&&S.enable!==void 0&&(s.value=S.enable),S&&S.width!==void 0&&(d.value=S.width)});function p(S){return{top:`${S.top}px`,width:`${m.value}px`,height:`${S.height||""}px`}}const h=i.computed(()=>({width:`${m.value}px`}));function v(S){return`${o}_${S.type}_r_${S.index}_${S.refreshKey||""}`}function F(S){return`${o}_${S.type}_r_${S.index}_${S.refreshKey||""}`}return{showRowNumer:s,showSidebarCheckBox:u,sidebarCellPosition:p,sidebarCornerCellStyle:h,sidebarTitle:c,sidebarWidth:m,rowKey:F,cellKey:v}}const Ko={ascend:(t,e)=>t===e?0:t===!1?-1:1,decend:(t,e)=>t===e?0:t===!0?-1:1},ei={ascend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),o=new Date(new Date(e).toLocaleDateString()).valueOf();return n===o?0:n<o?-1:1},decend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),o=new Date(new Date(e).toLocaleDateString()).valueOf();return n===o?0:n<o?1:-1}},ti={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1},ni={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1};function oi(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",Ko],["datetime-sorter",ei],["numeric-sorter",ti],["text-sorter",ni]]);function o(a){const s=(a==null?void 0:a.dataType)||"string",u=e.get(s)||"text-sorter";return n.get(u)||(a==null?void 0:a.sorter)}function r(a){return o(a.column)}function l(a,s){const u=r(a),d=(a.status&qe.sortable)===qe.sortable&&(a.status&qe.sorted)===qe.sorted,f=(a.status&qe.ascending)===qe.ascending,c=(a.status&qe.descending)===qe.descending;if(d&&u){const m=f?u.ascend:c?u.decend:void 0;m?s.addSorter(a.field,{field:a.field,compare:m}):s.removeSorter(a.field)}else s.removeSorter(a.field)}return{getSorterByColumn:o,updateSorter:l}}const ii={id:{type:String,default:""},componentId:{type:String,default:""},type:{type:String,default:""},canDelete:{type:Boolean,default:!0},canMove:{type:Boolean,default:!0},canSelectParent:{type:Boolean,default:!0},customButtons:{type:Array,default:[]},customClass:{type:String,default:""},customStyle:{type:String,default:""},modelValue:{type:Object},ignore:{type:Boolean,default:!1}},ri={},ai={},li={id:{type:String}},si=i.defineComponent({name:"FDesignerPlaceholder",props:li,emits:[],setup(t){const e=i.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),n=i.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>i.createVNode("div",{class:e.value,style:n.value,role:"alert","data-noattach":"true","data-position":"0"},[i.createTextVNode("拖拽组件到这里")])}}),mt=i.ref(0);function ci(t,e){const n=e.getBoundingClientRect(),o=t.getBoundingClientRect(),r=o.top>=n.top,l=o.top<=n.bottom;return r&&l}function di(t){const e=t.querySelector(".component-btn-group");if(!e)return;e.style.display="";const n=e.getBoundingClientRect();if(!(n.top===0&&n.left===0)){const o=e.querySelector("div");if(o){const r=o.getBoundingClientRect();o.style.top=n.top+"px";let l=n.left-r.width;const a=document.querySelector(".editorDiv");if(a){const s=a.getBoundingClientRect();l<s.left&&({left:l}=t.getBoundingClientRect())}o.style.left=l+"px"}}}function ui(t){if(!window.scrollContainerList)return;const e=Array.from(window.scrollContainerList);if(e.length&&e.length===1){const n=e[0],o=document.querySelector(`[id=${n}]`);if(o&&o.contains(t))return o}}function cn(t){if(!t)return;const e=t.getBoundingClientRect();if(e.width===0&&e.height===0)return;const n=t.querySelector(".component-btn-group");if(n){let o=!0;const r=ui(t);if(r&&(o=ci(t,r)),!o){n.style.display="none";return}di(t)}}function fi(t){if(!t)return;let e;t.className.includes("dgComponentSelected")?e=t:e=t.querySelector(".dgComponentSelected"),e&&cn(e)}function mi(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!i.isVNode(t)}const Yt=i.defineComponent({name:"FDesignerItem",props:ii,emits:["selectionChange","dragEnd"],setup(t,e){const n=i.ref(`${t.modelValue.id}-component`),o=i.ref(t.canMove),r=i.ref(t.canDelete),l=i.ref(!1),a=i.ref(t.modelValue),s=i.ref(t.componentId||""),u=i.ref(""),d=i.ref(""),f=i.ref(t.customClass),c=i.ref(),m=i.inject("canvas-dragula"),p=i.ref(),h=i.inject("design-item-context");function v(A){A&&Object.assign(a.value,A)}const F={designerItemElementRef:c,componentInstance:p,schema:a.value,parent:h,setupContext:e,updateContextSchema:v};i.provide("design-item-context",F);const E=i.inject("useFormSchema"),x=i.inject("designer-host-service"),S=i.inject("external-container-id"),w=i.computed(()=>{var Z;const A=t.modelValue.appearance&&t.modelValue.appearance.class||"",B=((Z=p.value)==null?void 0:Z.getCustomButtons)&&p.value.getCustomButtons();let D={"farris-component":!0,"flex-fill":a.value.id==="root-component","position-relative":o.value&&r.value||(B==null?void 0:B.length),"farris-nested":l.value,"can-move":o.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return D[`farris-component-${a.value.type}`]=!0,D=ne.getCustomClass(D,A),D=ne.getCustomClass(D,d.value),D=ne.getCustomClass(D,f.value),D}),y=i.computed(()=>{const A={},B=t.modelValue.appearance&&t.modelValue.appearance.style||"";return B&&B.split(";").reduce((D,Z)=>{const[ee,Y]=Z.split(":");return D[ee]=Y,D},A),u.value&&u.value.split(";").reduce((D,Z)=>{const[ee,Y]=Z.split(":");return ee&&(D[ee]=Y),D},A),A});function b(A,B){var ee,Y,ie;if(A&&(A.preventDefault(),A.stopPropagation()),(ee=x==null?void 0:x.designerContext)!=null&&ee.checkCanDeleteControl&&!x.designerContext.checkCanDeleteControl(B))return;if(p.value.triggerBelongedComponentToDeleteWhenDeleted){const z=p.value.getBelongedComponentInstance(p);if(z&&z.parent){const q=i.ref(z==null?void 0:z.parent),L=q.value.contents.findIndex(U=>U.id===z.schema.id);(ie=(Y=q.value)==null?void 0:Y.contents)==null||ie.splice(L,1),mt.value++}return}p.value.onRemoveComponent(x);let D=h,Z=z=>z.id===B.id;if(B.type==="component"&&(D=h==null?void 0:h.parent,Z=z=>z.component===B.id),D&&D.schema.contents){const z=D.schema.contents.findIndex(Z);D.schema.contents.splice(z,1),mt.value++,e.emit("selectionChange")}}function g(A){return r.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:B=>{b(B,A)}},[i.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function C(){return o.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[i.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function _(){var B;const A=((B=p.value)==null?void 0:B.getCustomButtons)&&p.value.getCustomButtons();return A&&!!A.length&&A.map(D=>i.createVNode("div",{role:"button",class:`btn component-settings-button ${D.class||""}`,title:D.title,ref:D.id,onClick:Z=>D.onClick&&D.onClick(Z)},[i.createVNode("i",{class:D.icon},null)]))}function P(A){return i.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[i.createVNode("div",null,[g(A),C(),_()])])}function k(A,B,D,Z){e.emit("selectionChange",A,B,D,Z)}function O(){e.emit("dragEnd")}function I(A){let B;const D=A.type,Z=ri[D],ee=ai[D],Y=ee?ee(A):{};Y.customClass=t.ignore?Y.customClass:"",Y.componentId=s.value,Y.id=A.id;const ie=A.contents&&A.contents.length===0;return A.contents&&!!A.contents.length&&Z?i.createVNode(Z,i.mergeProps({ref:p},Y),mi(B=A.contents.map(q=>i.createVNode(Yt,{key:q.id,modelValue:q,"onUpdate:modelValue":L=>q=L,componentId:s.value,onSelectionChange:k,onDragEnd:O},null)))?B:{default:()=>[B]}):Z?ie?i.createVNode(Z,i.mergeProps({ref:p},Y),{default:()=>[i.createVNode(si,null,null)]}):i.createVNode(Z,i.mergeProps({ref:p},Y),null):i.createVNode("div",null,null)}function M(){const A=E.externalFormSchema.get(S);if(A!=null&&A.content)return A==null?void 0:A.content}function T(A){if(A.type==="component-ref"){const Z=(S?M():E==null?void 0:E.getFormSchema()).module.components.find(Y=>Y.id===A.component),ee=i.ref(Z);if(Z)return i.createVNode(Yt,{key:Z.id,modelValue:ee.value,"onUpdate:modelValue":Y=>ee.value=Y,componentId:Z.id,onSelectionChange:k,onDragEnd:O},null)}}i.watch([()=>t.modelValue,()=>t.componentId],([A,B])=>{a.value=A,n.value=`${A.id}-component`,B&&(s.value=B),i.triggerRef(c)},{deep:!0});function j(A){window.scrollContainerList||(window.scrollContainerList=new Set);const B=A.getAttribute("id");B&&window.scrollContainerList.add(B)}function W(A){const B=A==null?void 0:A.target;j(B),fi(B)}function N(){var A,B;if(c.value){(B=(A=a.value)==null?void 0:A.contents)!=null&&B.length&&c.value.addEventListener("scroll",W);const D=c.value.querySelector(".drag-container");D&&D.addEventListener("scroll",W)}}i.onMounted(()=>{if(c.value&&p.value&&p.value.schema){const A=c.value.querySelector(`[data-dragref='${p.value.schema.id}-container']`);m&&A&&m.attachComponents(A,a.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,r.value=p.value.canDelete!==void 0?p.value.canDelete:r.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,u.value=p.value.styles||"",d.value=p.value.designerClass||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=F),p.value.belongedComponentId=s.value,p.value.setComponentBasicInfoMap(x)}N(),mt.value++}),i.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",W)});function R(A){if(A&&(A.preventDefault(),A.stopPropagation()),S){const Z=document.getElementById(`${S}-design-item`);Z&&Z.click();return}let B=F.designerItemElementRef;const D=c.value;if(D){const Z=document.getElementsByClassName("dgComponentFocused");Z&&Z.length===1&&Z[0]===c.value||(Array.from(Z).forEach(Y=>Y.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(Y=>Y.classList.remove("dgComponentSelected")),D.classList.add("dgComponentFocused"),e.emit("selectionChange",a.value.type,a.value,s.value,p.value),p.value.getDraggableDesignItemElement&&(B=p.value.getDraggableDesignItemElement(F),B&&B.value&&B.value.classList.add("dgComponentSelected")))}cn(B==null?void 0:B.value)}return()=>{const A=S?`${S}-`:"";return a.value.type==="component-ref"?T(a.value):i.createVNode("div",{id:`${A}${a.value.id}-design-item`,ref:c,class:w.value,style:y.value,onClick:R},[P(a.value),I(a.value)])}}});function dn(t,e,n,o,r="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:s}=n,{gridHeaderColumnsStyle:u,leftFixedGridHeaderColumnsStyle:d,rightFixedGridHeaderColumnsStyle:f}=o,c=l.value.defaultColumnWidth,m=32,p=new Map([[0,0]]);function h(P,k){const O=p.get(k)||0,I={height:`${P.depth*m}px`,left:`${P.left}px`,top:`${(P.layer-1)*m}px`,width:`${P.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(I["line-height"]=`${P.depth*m}px`),p.set(k+1,O+(P.actualWidth||c)),I}const v=i.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),F=i.computed(()=>({height:`${l.value.headerDepth*m}px`})),E=function(P){return e.showSetting&&!!P.showSetting};function x(){return i.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[i.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function S(P,k,O,I){var M;(M=t==null?void 0:t.setupContext)==null||M.emit("selectionChange",P,k,O,I)}function w(P){var O,I;return"w-100 d-flex align-items-center justify-content-"+(((O=P.column)==null?void 0:O.halign)==="center"?"center":((I=P.column)==null?void 0:I.halign)==="right"?"end pr-2":"start pl-2")}function y(P,k,O){var M;const I=i.ref(P.column);return i.createVNode("div",{class:"fv-grid-header-cell",style:h(P,O)},[i.createVNode(Yt,{modelValue:I.value,"onUpdate:modelValue":T=>I.value=T,customClass:w(P),canAdd:!1,canDelete:!1,canMove:!1,key:(M=I.value)==null?void 0:M.id,type:r,componentId:e.componentId,onSelectionChange:S},null),E(P)&&x(),P.resizable&&i.createVNode("span",{class:"fv-column-resize-bar"},null)])}function b(P){return P.map((k,O)=>{const I=[];if(I.push(y(k,P,O)),k.children&&k.children.length){const M=b(k.children);I.push(...M)}return I})}function g(){return i.createVNode("div",{class:"fv-grid-header-left-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:d.value},[b(l.value.leftHeaderColumns)])])}function C(){return i.createVNode("div",{class:"fv-grid-header-right-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[b(l.value.rightHeaderColumns)])])}function _(){return i.createVNode("div",{class:v.value,style:F.value},[a.value&&g(),i.createVNode("div",{class:"fv-grid-header-primary"},[i.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[b(l.value.primaryHeaderColumns)])]),s.value&&C()])}return{renderGridHeader:_}}const Q={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:"标签页工具栏按钮"},"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:"标签页工具栏"},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:"多语输入框"}};function Xt(t,e,n){var k;const o=n&&n.getStyles&&n.getStyles()||"",r=n&&n.getDesignerClass&&n.getDesignerClass()||"",l=i.ref();let a;function s(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanMoveComponent?n.checkCanMoveComponent():!0}function u(){return!1}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanDeleteComponent?n.checkCanDeleteComponent():!0}function f(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:n&&n.hideNestedPaddingInDesginerView?n.hideNestedPaddingInDesginerView():!1}function c(O){if(!O||!O.value)return null;if(O.value.schema&&O.value.schema.type==="component")return O.value;const I=i.ref(O==null?void 0:O.value.parent),M=c(I);return M||null}function m(O=e){var j;if(n!=null&&n.getDraggableDesignItemElement)return n.getDraggableDesignItemElement(O);const{componentInstance:I,designerItemElementRef:M}=O;if(!I||!I.value)return null;const{getCustomButtons:T}=I.value;return I.value.canMove||T&&((j=T())!=null&&j.length)?M:m(O.parent)}function p(O){return!!n&&n.canAccepts(O)}function h(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function v(){}function F(O,I){var M;!O||!I||(n!=null&&n.onAcceptMovedChildElement&&n.onAcceptMovedChildElement(O,I),(M=e==null?void 0:e.setupContext)==null||M.emit("dragEnd"))}function E(O,I){const{componentType:M}=O;let T=ut.getSchemaByTypeForDesigner(M,O,I);n&&n.onResolveNewComponentSchema&&(T=n.onResolveNewComponentSchema(O,T));const j=M.toLowerCase().replace(/-/g,"_");return T&&!T.id&&T.type===M&&(T.id=`${j}_${Math.random().toString().slice(2,6)}`),T}function x(O){O&&n!=null&&n.onChildElementMovedOut&&n.onChildElementMovedOut(O)}function S(...O){if(n&&n.getPropsConfig)return n.getPropsConfig(...O)}function w(O){if(!O)return;const I=e==null?void 0:e.schema,{formSchemaUtils:M}=O;if(I&&M.getExpressions().length){const T=M.getExpressions().findIndex(j=>j.target===I.id);T>-1&&M.getExpressions().splice(T,1)}}function y(O){if(!O||!(e!=null&&e.schema))return;const I=e.schema,{formSchemaUtils:M}=O;M.removeCommunicationInComponent(I)}function b(O){n&&n.onRemoveComponent&&n.onRemoveComponent(),w(O),y(O),e!=null&&e.schema.contents&&e.schema.contents.map(I=>{let M=I.id;I.type==="component-ref"&&(M=I.component);const T=t.value.querySelectorAll(`#${M}-design-item`);T!=null&&T.length&&Array.from(T).map(j=>{var W;(W=j==null?void 0:j.componentInstance)!=null&&W.value.onRemoveComponent&&j.componentInstance.value.onRemoveComponent(O)})})}function g(){if(n&&n.getCustomButtons)return n.getCustomButtons()}function C(O){var M,T;if(!((M=e==null?void 0:e.schema)!=null&&M.id))return;if(!a&&O&&(a=O.formSchemaUtils),n!=null&&n.setComponentBasicInfoMap){n.setComponentBasicInfoMap();return}let I="";if(n!=null&&n.getComponentTitle)I=n.getComponentTitle();else{const{text:j,title:W,label:N,mainTitle:R,name:A,type:B}=e.schema;I=j||W||N||R||A||((T=Q[B])==null?void 0:T.name)}I&&a.getControlBasicInfoMap().set(e.schema.id,{componentTitle:I,parentPathName:I})}function _(O){var j;const{changeObject:I}=O,{propertyID:M,propertyValue:T}=I;if(["text","title","label","name","mainTitle"].includes((j=O==null?void 0:O.changeObject)==null?void 0:j.propertyID)&&M&&T&&(C(),a)){const W=a.getControlBasicInfoMap(),N=W.keys().toArray().filter(R=>{var A,B;return((A=W.get(R))==null?void 0:A.reliedComponentId)===((B=e==null?void 0:e.schema)==null?void 0:B.id)});N!=null&&N.length&&N.forEach(R=>{const A=W.get(R).parentPathName.split(" > ");A[0]=T,W.get(R).parentPathName=A.join(" > ")})}}function P(O){if(_(O),n&&n.onPropertyChanged)return n.onPropertyChanged(O)}return l.value={canMove:s(),canSelectParent:u(),canDelete:d(),canNested:!f(),contents:e==null?void 0:e.schema.contents,elementRef:t,parent:(k=e==null?void 0:e.parent)==null?void 0:k.componentInstance,schema:e==null?void 0:e.schema,styles:o,designerClass:r,canAccepts:p,getBelongedComponentInstance:c,getDraggableDesignItemElement:m,getDraggingDisplayText:h,getPropConfig:S,getDragScopeElement:v,onAcceptMovedChildElement:F,onChildElementMovedOut:x,addNewChildComponentSchema:E,triggerBelongedComponentToMoveWhenMoved:!!n&&n.triggerBelongedComponentToMoveWhenMoved||i.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!n&&n.triggerBelongedComponentToDeleteWhenDeleted||i.ref(!1),onRemoveComponent:b,getCustomButtons:g,onPropertyChanged:P,setComponentBasicInfoMap:C,updateContextSchema:e==null?void 0:e.updateContextSchema},l}class pi extends tt.BaseControlProperty{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=et.useCommandOption().getCommandColumnProperties(e),this.propertyConfig.categories.column=et.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=et.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=et.useSummary().getSummaryProperties(e),this.propertyConfig.categories.sort=et.useSort().getSort(e),this.propertyConfig.categories.filter=et.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,s,u;const n=(u=(s=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:s.entity[0])==null?void 0:u.entities[0],o=this.assembleSchemaEntityToTree(n,0),r=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:o,editable:!1},readonly:!0}},setPropertyRelates(d,f){switch(d&&d.propertyID){case"dataSource":{const c=r.formSchemaUtils.getViewModelById(r.viewModelId);if(c){const m=o.find(p=>p.label===d.propertyValue);c.bindTo=m.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,n,o,r="",l=[]){const a=r?`${r}/${e.label}`:"/";return l.push({id:e.id,name:e.name,label:e.label,layer:n,parent:o&&o.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(s=>this.assembleSchemaEntityToTree(s,n+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=et.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=et.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=et.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=et.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const n=[...et.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"结束编辑事件"}],o=this,r=o.eventsEditorUtils.formProperties(e,o.viewModelId,n),l=o.createBaseEventProperty(r);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const u=a.propertyValue;delete e[o.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,o.eventsEditorUtils.saveRelatedParameters(e,o.viewModelId,u.events,u)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function hi(t,e){const n=t.schema,o=i.ref(!0),r=i.ref(!0);function l(c){return c&&c.sourceType==="control"?c.componentCategory==="input":!1}function a(){return!1}function s(){return!1}function u(){return!0}function d(c){return new pi(c,e).getPropertyConfig(n)}function f(){var c,m,p,h;if(t&&e){const v=(c=t==null?void 0:t.componentInstance)==null?void 0:c.value.belongedComponentId;let F="",E="";const{formSchemaUtils:x}=e;if(v){const w=x.getRootViewModelId(),y=x.getComponentByViewModelId(w),b=x.selectNode(y,g=>g.contents&&g.contents.find(C=>C.component===v));(b==null?void 0:b.type)===((m=Q["tab-page"])==null?void 0:m.type)&&((p=b==null?void 0:b.contents)!=null&&p.length)&&(F=b.title||""),(b==null?void 0:b.type)===((h=Q.section)==null?void 0:h.type)&&(b==null?void 0:b.showHeader)!==!1&&(F=b.mainTitle||""),F=F?`${F} > `:"",E=F?b.id:""}const S=Q["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(t.schema.id,{componentTitle:S,parentPathName:`${F}${S}`,reliedComponentId:E})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:d,setComponentBasicInfoMap:f}}const pt=i.defineComponent({name:"FDataGridDesign",props:ao,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(t,e){var H;const n=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context"),l=hi(r,o),a=Xt(n,r,l);a.value.styles="display:flex;flex:1;",i.onMounted(()=>{n.value.componentInstance=a}),i.provide("data-grid-context",{dataGridProps:t}),e.expose(a.value);const s=i.ref(t.columns),u=20,d=Xo(t),f=0,c=i.ref(),m=i.ref(),p=i.ref(t.showStripe),h=i.ref([]),v=i.ref(!1),F=i.ref(((H=t.rowOption)==null?void 0:H.wrapContent)||!1),E=No(t,e),x=Bo(t),S=To(t,new Map,E,x,d),w=Jo(t,S,d,h,e),y=i.computed(()=>S.totalItems.value<u?S.totalItems.value:u),{containerStyleObject:b}=yo(t),g=vo(t),{applyCommands:C}=g;C(s);const _=co(t),P=oi(),{applyColumnSorter:k,columnContext:O,updateColumnRenderContext:I}=_;k(S,P);const M=bo(t,O),T=Zo(t,e,w,d),j=Yo(t,e,d,T),W=jo(t),N=qo(t,j,W),R=zo(t,S,j,x,d,W,N),A=Go(t,d,N,R),B=Uo(t,d,N,R),D=uo(t,s,S,y,f,R,A,B),{getVisualData:Z}=D,ee=Qo(t,w),{sidebarWidth:Y}=ee;h.value=Z(0,y.value+f-1);const ie=Oo(t,S,h,O,D,y,f,Y),{onWheel:z,dataGridWidth:q,viewPortHeight:L,viewPortWidth:U}=ie,se=lo(t,O,c,U,M),{calculateColumnsSize:he}=se,me=i.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":p.value})),de=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":v.value,"fv-grid-wrap-content":F.value})),{renderGridHeader:Se}=dn(r,t,_,ie),{renderHorizontalScrollbar:Ie}=ho(t,c,ie);function ge(){var K,oe;L.value=((K=m.value)==null?void 0:K.clientHeight)||0,q.value=((oe=c.value)==null?void 0:oe.clientWidth)||0,he()}i.onMounted(()=>{c.value&&(nn.useResizeObserver(c.value,ge),he(),i.nextTick(()=>{c.value&&(q.value=c.value.clientWidth),m.value&&(U.value=m.value.clientWidth,L.value=m.value.clientHeight)}))});function He(K){K&&(s.value=K,C(s),I(s.value),k(S,P),he())}return i.watch(()=>t.columns,K=>{He(K),mt.value++}),i.watch(U,()=>{c.value&&he()}),()=>i.createVNode("div",{ref:n,class:me.value,style:b.value,onWheel:z},[Se(),i.createVNode("div",{ref:c,class:de.value,onMouseover:()=>{v.value=!0},onMouseleave:()=>{v.value=!1}},[Ie()])])}}),gi={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}},yi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},vi=i.defineComponent({name:"FOverlay",props:yi,emits:["click"],setup(t,e){const n=i.ref(t.popupContentPosition),o=i.ref(t.host),r=i.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function l(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}i.computed(()=>{const s=o.value;if(s){const u=s.getBoundingClientRect(),{left:d,top:f,height:c}=u;return{left:d,top:f+c}}return n.value});const a=i.computed(()=>({}));return()=>i.createVNode(i.Teleport,{to:"body"},{default:()=>{var s,u;return[i.createVNode("div",{class:"overlay-container",onClick:d=>l(d),style:r.value},[i.createVNode("div",{style:a.value},[(u=(s=e.slots).default)==null?void 0:u.call(s)])])]}})}});function bi(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function Ci(t){const e=document.createElement("div");e.style.display="contents";let n;const o=t.onClickCallback||(()=>{}),r=()=>{o(),n&&n.unmount()};return n=i.createApp({setup(){i.onUnmounted(()=>{document.body.removeChild(e)});const l=bi(t);return()=>i.createVNode(vi,{"popup-content-position":t.popupPosition,host:t.host,onClick:r,backgroundColor:t.backgroundColor},{default:()=>[l&&l()]})}}),document.body.appendChild(e),n.mount(e),n}class wi{static show(e){return Ci(e)}}const Si={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前回调",type:"object",default:null}},required:["id","type"],events:{onAccept:"确定事件",onCancel:"取消事件",beforeClose:"关闭前回调"}},xi=new Map([["appearance",ut.resolveAppearance]]);function Fi(t,e,n){return e}function Ti(){function t(e,n){const o={};return o.beforeClose=r=>n.call("beforeClose",[r,e]),o}return{resolve:t}}const un={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"}},Mi=ut.createPropsResolver(un,Si,xi,Fi),_i=Ti();class Ae{constructor(e,n){this.x=e,this.y=n}static getTransformInfo(e){const o=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(o.length>=6){const r=parseInt(o[4],10),l=parseInt(o[5],10);return{x:r,y:l}}return{x:0,y:0}}static fromEvent(e,n=null){if(this.isMouseEvent(e))return new Ae(e.clientX,e.clientY);if(n===null||e.changedTouches.length===1)return new Ae(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let o=0;o<e.changedTouches.length;o++)if(e.changedTouches[o].target===n)return new Ae(e.changedTouches[o].clientX,e.changedTouches[o].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 Ae(0,0);if(window){const o=window.getComputedStyle(e);if(o){const r=parseInt(o.getPropertyValue("left"),10),l=parseInt(o.getPropertyValue("top"),10);n.x=isNaN(r)?0:r,n.y=isNaN(l)?0:l}return n}return null}static copy(e){return new Ae(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 wt{constructor(e,n){this.width=e,this.height=n}static getCurrent(e){const n=new wt(0,0);if(window){const o=window.getComputedStyle(e);return o&&(n.width=parseInt(o.getPropertyValue("width"),10),n.height=parseInt(o.getPropertyValue("height"),10)),n}return null}static copy(e){return new wt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Ei(t,e){const n=i.ref(),o=i.ref(),r=i.ref(),l=i.ref(),a=i.ref(),s=i.ref(),u=i.ref(),d=i.ref(),f=i.ref(),c=i.ref(),m=i.ref(),p=i.ref(t.resizeable),h=i.ref(),v=i.ref(t.draggable),F=i.ref(!1);function E(){const N=o.value||document.body,R=window.getComputedStyle(N);if(!R||!n.value)return;const A=Ae.getTransformInfo(n.value),B={};u.value&&(B.deltaL=n.value.offsetLeft-u.value.x,B.deltaT=n.value.offsetTop-u.value.y);const D=R.getPropertyValue("position");B.width=N.clientWidth,B.height=N.clientHeight,B.pr=parseInt(R.getPropertyValue("padding-right"),10),B.pb=parseInt(R.getPropertyValue("padding-bottom"),10),B.position=R.getPropertyValue("position"),D==="static"&&(N.style.position="relative"),B.translateX=A.x,B.translateY=A.y,c.value=B}function x(N){if(n.value){l.value=wt.getCurrent(n.value),a.value=Ae.getCurrent(n.value),s.value=l.value?wt.copy(l.value):null,u.value=a.value?Ae.copy(a.value):null,E();const R=N.target.getAttribute("type")||"";d.value={n:!!R.match(/n/),s:!!R.match(/s/),w:!!R.match(/w/),e:!!R.match(/e/)}}}function S(){var N,R,A,B;if(n.value){const D=n.value;d.value&&((d.value.n||d.value.s)&&((N=s.value)!=null&&N.height)&&(D.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((R=s.value)!=null&&R.width)&&(D.style.width=s.value.width+"px"),u.value&&((A=u.value)!=null&&A.x&&(D.style.left=u.value.x+"px"),(B=u.value)!=null&&B.y&&(D.style.top=u.value.y+"px")))}}function w(){const N=t.minHeight?t.minHeight:1,R=t.minWidth?t.minWidth:1;s.value&&u.value&&d.value&&l.value&&(s.value.height<N&&(s.value.height=N,d.value.n&&a.value&&(u.value.y=a.value.y+(l.value.height-N))),s.value.width<R&&(s.value.width=R,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-R))),t.maxHeight&&s.value.height>t.maxHeight&&(s.value.height=t.maxHeight,a.value&&d.value.n&&(u.value.y=a.value.y+(l.value.height-t.maxHeight))),t.maxWidth&&s.value.width>t.maxWidth&&(s.value.width=t.maxWidth,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-t.maxWidth))))}function y(){if(o.value){const N=c.value;if(u.value&&s.value&&d.value&&l.value){const R=N.width-N.pr-N.deltaL-N.translateX-u.value.x,A=N.height-N.pb-N.deltaT-N.translateY-u.value.y;d.value.n&&u.value.y+N.translateY<0&&a.value&&(u.value.y=-N.translateY,s.value.height=l.value.height+a.value.y+N.translateY),d.value.w&&u.value.x+N.translateX<0&&a.value&&(u.value.x=-N.translateX,s.value.width=l.value.width+a.value.x+N.translateX),s.value.width>R&&(s.value.width=R),s.value.height>A&&(s.value.height=A)}}}function b(N){if(!r.value||!l.value||!a.value||!d.value)return;N.subtract(r.value);const R=N.x,A=N.y;d.value.n?(u.value.y=a.value.y+A,s.value.height=l.value.height-A):d.value.s&&(s.value.height=l.value.height+A),d.value.e?s.value.width=l.value.width+R:d.value.w&&(s.value.width=l.value.width-R,u.value.x=a.value.x+R),y(),w(),S()}function g(N){if(!f.value)return;const R=Ae.fromEvent(N);R&&b(R)}function C(){if(n.value){const{width:N,height:R,x:A,y:B}=n.value.getBoundingClientRect(),D=Ae.getTransformInfo(n.value);return{size:{width:N,height:R},position:{x:A-D.x,y:B-D.y}}}return null}function _(N){if(n.value){const R=C();m.value=R}r.value=void 0,l.value=null,a.value=null,s.value=null,u.value=null,d.value=null,f.value=null,document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",_)}function P(){document.addEventListener("mousemove",g),document.addEventListener("mouseup",_)}function k(N){N instanceof MouseEvent&&N.button===2||v.value&&(document.body.click(),N.stopPropagation(),N.preventDefault(),r.value=Ae.fromEvent(N),f.value=N.target,x(N),P())}function O(N){return n.value=N,p.value&&i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:R=>k(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:R=>k(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:R=>k(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:R=>k(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:R=>k(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:R=>k(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:R=>k(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:R=>k(R)},null)])}function I(N=!0){document.body.click();const R=o.value||document.body,A=wt.getCurrent(R),B=n.value;N&&B&&(h.value=C(),h.value.transform=B.style.transform),A&&B&&(s.value=A,s.value.height-=14,s.value.width-=14,B.style.height=s.value.height+"px",B.style.width=s.value.width+"px",B.style.left="7px",B.style.top="7px",B.style.transform="",m.value={size:s.value,position:{x:0,y:0}},v.value=!1,F.value=!0)}function M(){var N,R;if(document.body.click(),h.value){const A={width:h.value.size.width||0,height:h.value.size.height||0},B={x:(window.innerWidth-A.width)/2,y:(window.innerHeight-A.height)/2};(N=s.value)==null||N.set(A),(R=u.value)==null||R.set(B);const D=n.value;D.style.height=A.height+"px",D.style.width=A.width+"px",D.style.left=`${B.x}px`,D.style.top=`${B.y}px`,D.style.transform="",m.value={size:A,position:B},v.value=t.draggable,F.value=!1}}function T(){if(n.value){const N=wt.getCurrent(n.value);if(N){const{width:R,height:A}=N;n.value.style.left=`${(window.innerWidth-R)/2}px`,n.value.style.top=`${(window.innerHeight-A)/2}px`,n.value.style.transform=""}}}function j(){const N=()=>{F.value?I(!1):T(),document.body.click()};return window.addEventListener("resize",N),()=>{window.removeEventListener("resize",N)}}const W=j();return{renderResizeBar:O,boundingElement:o,resizedEventParam:m,maximize:I,restore:M,allowDrag:v,isMaximized:F,unWindowResizeHandle:W,moveToCenter:T}}function ki(t,e,n){const o=i.ref(),r=i.ref(t.draggable),l=i.ref(t.lockAxis),a=i.ref(),s=i.ref(),u=i.ref(!1),d=i.ref(new Ae(0,0)),f=i.ref(new Ae(0,0)),c=i.ref(new Ae(0,0)),m=i.ref(new Ae(0,0));i.watch(()=>n.value,g=>{a.value.style.cursor=g?"move":"default"});function p(g,C){if(C.tagName==="BUTTON")return!1;if(C===g)return!0;for(const _ in C.children)if(Object.prototype.hasOwnProperty.call(C.children,_)&&p(g,C.children[_]))return!0;return!1}function h(){var P,k;let g=c.value.x+f.value.x,C=c.value.y+f.value.y;l.value==="x"?(g=((P=d.value)==null?void 0:P.x)||0,c.value.x=0):l.value==="y"&&(C=((k=d.value)==null?void 0:k.y)||0,c.value.y=0);const _=`translate3d(${Math.round(g)}px, ${Math.round(C)}px, 0px)`;o.value&&(o.value.style.transform=_),m.value.x=g,m.value.y=C}function v(){if(!s.value||!o.value)return null;const g=s.value.getBoundingClientRect(),C=o.value.getBoundingClientRect(),_={top:g.top<C.top,right:g.right>C.right,bottom:g.bottom>C.bottom,left:g.left<C.left};return _.top||(c.value.y-=C.top-g.top),_.bottom||(c.value.y-=C.bottom-g.bottom),_.right||(c.value.x-=C.right-g.right),_.left||(c.value.x-=C.left-g.left),h(),_}function F(g){g&&(d.value&&g.subtract(d.value),c.value.set(g),h(),v())}function E(g){u.value&&r.value&&(g.stopPropagation(),g.preventDefault(),F(Ae.fromEvent(g,a.value)))}function x(){var g;u.value&&(u.value=!1,f.value.add(c.value),c.value.reset(),(g=o.value)==null||g.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",E),document.removeEventListener("mouseup",x))}function S(){!u.value&&a.value&&(u.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",E),document.addEventListener("mouseup",x))}function w(){if(o.value){const g=Ae.getTransformInfo(o.value);f.value.set(g);return}f.value.reset()}function y(g){if(!n.value||g instanceof MouseEvent&&g.button===2)return;const C=g.target||g.srcElement;a.value!==void 0&&C&&!p(C,a.value)||r.value!==!1&&(document.body.click(),g.stopPropagation(),g.preventDefault(),d.value=Ae.fromEvent(g,o.value),w(),S())}function b(g,C,_){if(r.value&&C){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 P=C.querySelector(t.dragHandle);P&&(a.value=P)}}o.value=C,s.value=_,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",y)):r.value=!1}}return{registerDraggle:b,resetTranslate:w}}function fn(t,e){if(t){const n=o=>{o.key.toLowerCase()===t.toLowerCase()&&e({event:o,key:t})};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}}function Vi(t,e){const n=i.ref(t.enableEsc);let o=null;return n.value?(o=fn("Escape",r=>{e.emit("esc",{event:r.event,type:"esc"})}),{remove:o}):null}function Ii(t,e){const n=i.ref(t.enableEnter);let o=null;return n.value?(o=fn("Enter",r=>{e.emit("enter",{event:r.event,type:"enter"})}),{remove:o}):null}const St=i.defineComponent({name:"FModal",props:un,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(t,e){const n=i.ref(t.width||300),o=i.ref(t.height||200),r=i.ref(t.modelValue),l=i.ref(""),a=i.ref(t.class),s=i.ref(t.fitContent),u=i.ref(t.showHeader),d=i.ref(""),f=i.ref(t.showCloseButton),c=i.ref(t.showMaxButton),m=i.ref(!1),p=i.ref(t.dialogType),h=i.ref(t.src),v=i.ref(""),F=i.ref(t.showButtons),E=i.ref(t.title),x=i.ref(t.containment||null),S=i.ref(),{t:w}=ct.useI18n();E.value==="错误提示"&&(E.value=w("messageBox.errorTitle"));const y=i.ref(!1);function b(X,pe){const Ne=pe?"accept":"cancel";Promise.resolve().then(()=>{var Fe;return(Fe=t.beforeClose)==null?void 0:Fe.call(t,{closeType:Ne})}).then(Fe=>{Fe&&(r.value=!1,e.emit("update:modelValue",!1),pe!=null&&e.emit(pe?"accept":"cancel"),e.emit("closed",X))})}const g=[{name:"cancel",text:w("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:X=>{b(X,!1)}},{name:"accept",text:w("messageBox.ok")||"确定",class:"btn btn-primary",handle:X=>{b(X,!0)}}],C=i.ref(t.buttons&&t.buttons.length?t.buttons:g),_=i.computed(()=>!!d.value),P=i.computed(()=>!!F.value&&!!C.value),k=i.ref(),O=i.ref(),I=i.ref(!1),{renderResizeBar:M,maximize:T,restore:j,boundingElement:W,resizedEventParam:N,allowDrag:R,unWindowResizeHandle:A,moveToCenter:B}=Ei(t),{registerDraggle:D}=ki(t,e,R);function Z(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function ee(){const X=document.querySelectorAll(".farris-modal").length;(!X||X-1<=0)&&document.body.classList.remove("modal-open"),S.value&&S.value.classList.remove("show")}i.watch(()=>t.title,(X,pe)=>{X!==pe&&(E.value=X)}),i.watch(()=>t.modelValue,(X,pe)=>{X!==pe&&(r.value=X,r.value&&t.draggable&&i.nextTick(()=>{O.value&&!x.value&&(x.value=O.value.parentElement,W.value=x.value,D(k.value,O.value,W.value),B())}),X||(x.value&&(x.value=null),ee())),r.value?y.value=Z():(I.value=!1,R.value=t.draggable)}),i.watch(()=>t.showHeader,(X,pe)=>{X!==pe&&(u.value=X)}),i.watch(()=>t.showButtons,(X,pe)=>{X!==pe&&(F.value=X)}),i.watch(()=>N.value,(X,pe)=>{const Ne=X||{},Fe=pe||{};JSON.stringify(Ne)!==JSON.stringify(Fe)&&e.emit("resize",{newSize:X,oldSize:pe,isMaximized:I.value})});const Y=i.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),ie=i.computed(()=>{var Ne;const X={modal:!0,"farris-modal":!0,fade:!0};X["f-modal-fitContent"]=!!s.value,X.show=!!Y.value;const pe=(Ne=t.maskClass)==null?void 0:Ne.split(" ");return pe==null||pe.reduce((Fe,Ke)=>(Fe[Ke]=!0,Fe),X),X}),z=i.computed(()=>{var Ne;const X={"modal-dialog":!0},pe=(Ne=a.value)==null?void 0:Ne.split(" ");return pe==null||pe.reduce((Fe,Ke)=>(Fe[Ke]=!0,Fe),X),X}),q=i.computed(()=>{const X={position:"absolute",top:`${(window.innerHeight-o.value)/2}px`,left:`${(window.innerWidth-n.value)/2}px`,width:`${n.value}px`,height:s.value?"auto":`${o.value}px`};return t.mask||(X.pointerEvents="auto"),X}),L=i.computed(()=>{const X={display:"block"};return t.mask||(X.pointerEvents="none",X.backgroundColor="transparent"),y.value&&(X.backgroundColor="transparent"),X}),U=i.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),se=i.computed(()=>{const X={display:u.value?"":"none"};return X["pointer-events"]=R.value?"auto":"none",X}),he=i.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:I.value})),me=i.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function de(){return{height:`${t.footerHeight||60}px`}}const Se=i.computed(()=>{const X={textAlgin:v.value},pe=de();return Object.assign(X,pe)});function Ie(X){if(X==null||X.stopPropagation(),I.value){I.value=!1,j();return}T(),I.value=!0}async function ge(X,pe){X.handle&&await X.handle(pe,X)&&e.emit("closed",pe)}function He(X){X.width&&(n.value=X.width),X.height&&(o.value=X.height),X.buttons&&(C.value=X.buttons),X.title&&(E.value=X.title)}let H=null,K=null;i.onBeforeMount(()=>{y.value=Z()}),i.onMounted(()=>{O.value&&!x.value&&(x.value=O.value.parentElement,W.value=x.value,D(k.value,O.value,W.value)),Y.value&&document.body.classList.add("modal-open"),H=Vi(t,e),K=Ii(t,e)}),i.onUnmounted(()=>{A&&A(),H&&H.remove(),K&&K.remove()}),e.expose({modalElementRef:O,updateModalOptions:He,close:b,maxDialog:Ie,isMaximized:I});function oe(){return i.createVNode("ul",null,[m.value&&i.createVNode("li",{class:"f-btn-icon f-bare"},[i.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&i.createVNode("li",{onClick:Ie,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[i.createVNode("span",{class:he.value},null)]),f.value&&i.createVNode("li",{class:"f-btn-icon f-bare",onClick:X=>b(X,!1),style:"pointer-events: auto;"},[i.createVNode("span",{class:"f-icon modal_close"},null)])])}function xe(){return i.createVNode("div",{class:"modal-footer",style:Se.value},[C.value&&C.value.map(X=>{const pe=i.ref(X.disabled);return i.createVNode("button",{name:X.name,type:"button",disabled:pe.value,class:X.class+(X.iconClass?" btn-icontext":""),onClick:Ne=>{ge(X,Ne)}},[!!X.iconClass&&i.createVNode("i",{class:X.iconClass},null),X.text])})])}function Ee(){return i.createVNode("div",{ref:k,class:"modal-header",style:se.value},[e.slots.headerTemplate?e.slots.headerTemplate():i.createVNode("div",{class:"modal-title"},[_.value&&i.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),i.createVNode("span",{class:"modal-title-label"},[E.value])]),i.createVNode("div",{class:"actions"},[oe()])])}function ze(){return e.slots.footerTemplate?e.slots.footerTemplate():P.value&&xe()}function Ye(X){if(X.stopPropagation(),t.allowClickMaskToClose){if(X.target!==S.value)return;b(X,!1)}}function Qe(){var X,pe;return i.createVNode("div",{id:l.value,class:z.value,style:q.value,ref:O},[i.createVNode("div",{class:U.value},[u.value&&Ee(),i.createVNode("div",{class:me.value},[(pe=(X=e.slots).default)==null?void 0:pe.call(X),p.value==="iframe"&&i.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:h.value},null)]),ze()]),!s.value&&O.value&&!I.value&&M(O.value)])}function Xe(X){return X||"body"}return()=>i.createVNode(i.Teleport,{to:Xe(t.host)},{default:()=>[Y.value&&i.createVNode(i.Transition,{name:"fade",appear:!0},{default:()=>[i.createVNode("div",{ref:S,class:ie.value,style:L.value,onClick:Ye},[Qe()])]})]})}});function mn(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function Pi(t){const e=document.createElement("div");e.style.display="contents";const n=i.createApp({setup(o,r){i.onUnmounted(()=>{document.body.removeChild(e)});const l=i.ref(),a=i.ref(t.class||""),s=i.ref(!!t.showButtons),u=i.ref(!!t.showHeader),d=i.ref(t.showCloseButton==null?!0:t.showCloseButton),f=i.ref(!0),c=i.ref(t.title||""),m=t.acceptCallback||(()=>{}),p=t.rejectCallback||(()=>{}),h=t.closedCallback||(S=>{}),v=t.resizeHandle||(S=>{}),F=t.stopMoveHandle||(S=>{}),E=mn(t),x=S=>{f.value=!1,n.unmount(),h(S)};return i.onMounted(()=>{}),r.expose({modalRef:l}),()=>i.createVNode(St,{ref:l,class:a.value,modelValue:f.value,"onUpdate:modelValue":S=>f.value=S,title:c.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:m,onCancel:p,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:x,onResize:v,onStopMove:F},{default:()=>[E&&E(n)]})}});return document.body.appendChild(e),n.use(Rt.LocaleService.i18n),n.mount(e),n}class pn{constructor(e){le(this,"appContext",null);le(this,"modalRef",i.ref());le(this,"activeModalIndex",i.ref(0));le(this,"modalRefs",{});le(this,"isUseEscCloseModal",i.ref(!1));le(this,"activeModalInstance",i.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:o,height:r}={width:window.innerWidth,height:window.innerHeight};return o<e&&(e=o-14),r<n&&(n=r-14),{width:e,height:n}}static show(e){const n=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return Pi(n)}close(e){var n,o;e?(o=e.value)==null||o.close():(n=this.getCurrentModal())==null||n.close()}open(e){const n=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const o=i.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),r=i.ref(!0),l=o.value.acceptCallback||(()=>{}),a=o.value.rejectCallback||(()=>{}),s=o.value.closedCallback||((y,b)=>{}),u=o.value.resizeHandle||(y=>{}),d=e.stopMoveHandle||(y=>{});let f;const c=mn(o.value),m=y=>{var g;r.value=!1;const b=(g=y==null?void 0:y.target)==null?void 0:g.classList.contains("modal_close");s(y,this.isUseEscCloseModal.value?"esc":b?"icon":"button")},p=y=>{m(y),f&&i.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],i.render(null,n),f=null,this.modalRef.value=null,this.modalRefs){const b=Object.keys(this.modalRefs).map(g=>Number(g));b.length>0?this.activeModalIndex.value=Math.max(...b):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},h=y=>{var b;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((b=this.activeModalInstance.value)==null||b.close(y==null?void 0:y.event))},{width:v,height:F}=o.value,E=this.adaptToWindow(v||500,F||320);Object.assign(o.value,E);const x=()=>i.createVNode(St,i.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":y=>r.value=y},o.value,{onAccept:l,onCancel:a,onClosed:p,onResize:u,onEsc:h,onStopMove:d}),{default:()=>[c&&c(this.app)]});return f=(y=>{const b=i.h(x,y);return b.appContext=this.appContext,i.render(b,n),b})({...o.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:y=>{o.value={...o.value,...y},f&&i.render(i.cloneVNode(f,{...o}),n)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}function Ni(t={}){function e(d,f,c,m){if(typeof c=="number")return m[d].length===c;if(typeof c=="object"){const p=Object.keys(c)[0],h=c[p];if(p==="not")return Number(m[d].length)!==Number(h);if(p==="moreThan")return Number(m[d].length)>=Number(h);if(p==="lessThan")return Number(m[d].length)<=Number(h)}return!1}function n(d,f,c,m){return m[d]&&m[d].propertyValue&&String(m[d].propertyValue.value)===String(c)}const o=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((d,f)=>(d.set(f,t[f]),d),o);function r(d,f){const c=d;return typeof f=="number"?[{target:c,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:c,operator:"getProperty",param:d,value:!!f}]:typeof f=="object"?Object.keys(f).map(m=>{if(m==="length")return{target:c,operator:"length",param:null,value:f[m]};const p=m,h=f[m];return{target:c,operator:"getProperty",param:p,value:h}}):[]}function l(d){return Object.keys(d).reduce((c,m)=>{const p=r(m,d[m]);return c.push(...p),c},[])}function a(d,f){if(o.has(d.operator)){const c=o.get(d.operator);return c&&c(d.target,d.param,d.value,f)||!1}return!1}function s(d,f){return l(d).reduce((p,h)=>p&&a(h,f),!0)}function u(d,f){const c=Object.keys(d),m=c.includes("allOf"),p=c.includes("anyOf"),h=m||p,E=(h?d[h?m?"allOf":"anyOf":"allOf"]:[d]).map(S=>s(S,f));return m?!E.includes(!1):E.includes(!0)}return{parseValueSchema:u}}const Bi={convertTo:(t,e,n,o)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},Oi={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},ji={convertTo:(t,e,n,o)=>{t.editor&&(t.editor[e]=n)},convertFrom:(t,e,n)=>t.editor&&Object.prototype.hasOwnProperty.call(t.editor,e)?t.editor[e]:t[e]},$i={convertFrom:(t,e,n)=>{var r;const o=t.editor&&t.editor[e]?t.editor[e]:t[e];return((r=Q[o])==null?void 0:r.name)||o}},Ri={convertTo:(t,e,n,o)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},Ai={convertTo:(t,e,n,o)=>{(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==="tempDateFormat")return t.formatter.dateFormat==="yyyy年MM月dd日"?"yearMonthDay":t.formatter.dateFormat==="yyyy-MM-dd HH:mm:ss"?"yyyy-MM-ddTHH:mm:ss":t.formatter.dateFormat==="yyyy/MM/dd HH:mm:ss"?"yyyy/MM/ddTHH:mm:ss":t.formatter.dateFormat==="yyyy年MM月dd日 HH时mm分ss秒"?"yearMonthDayHourMinuteSecond":t.formatter.tempDateFormat||t.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return t.formatter.customFormat;if(e==="type")return t.formatter.type||"none"}return"none"}},Li={convertTo:(t,e,n,o)=>{t.command?t.command[e]=n:t.command={[e]:n},e==="enable"&&n&&(t.command.commands||(t.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(t,e,n)=>t.command&&e==="enable"?t.command.enable:""},Hi={convertTo:(t,e,n,o)=>{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""}},Di={convertTo:(t,e,n,o)=>{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:""},Wi={convertTo:(t,e,n,o)=>{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}}},qi={convertFrom:(t,e)=>t.binding?t.binding.path:"",convertTo:(t,e,n)=>{if(n&&n.length>0){const o=n[0];t.binding||(t.binding={}),t.binding.type="Form",t.binding.path=o.bindingField,t.binding.field=o.id,t.binding.fullPath=o.path,t.path=o.bindingPath}}},zi={convertTo:(t,e,n,o)=>{t.pagination||(t.pagination={}),t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?t.pagination[e]:t[e]},Gi={convertTo:(t,e,n,o)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},Ui={convertTo:(t,e,n,o)=>{t.selection||(t.selection={}),t.selection[e]=n},convertFrom:(t,e,n)=>t.selection?t.selection[e]:t[e]},Yi={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},Xi={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},Zi={convertTo:(t,e,n,o)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},Ji={convertFrom:(t,e,n)=>{var o,r;return(o=t.formatter)!=null&&o.data&&e==="formatterEnumData"&&!t.formatterEnumData?(r=t.formatter)==null?void 0:r.data:t.formatterEnumData}},Qi={convertTo:(t,e,n,o)=>{t.sort||(t.sort={}),t.sort[e]=n},convertFrom:(t,e,n)=>{var o,r;if(e==="mode")return((o=t.sort)==null?void 0:o.mode)||"client";if(e==="multiSort")return!!((r=t.sort)!=null&&r.multiSort)}},Ki={convertTo:(t,e,n,o)=>{t.filter||(t.filter={}),t.filter[e]=n},convertFrom:(t,e,n)=>{var o;if(e==="mode")return((o=t.filter)==null?void 0:o.mode)||"client"}},er={convertTo:(t,e,n,o)=>{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""}};function hn(t,e,n){const o=new Map([["/converter/appearance.converter",Bi],["/converter/buttons.converter",Oi],["/converter/property-editor.converter",ji],["/converter/items-count.converter",Yi],["/converter/type.converter",$i],["/converter/change-editor.converter",Ri],["/converter/change-formatter.converter",Ai],["/converter/column-command.converter",Li],["/converter/column-option.converter",Hi],["/converter/summary.converter",Di],["/converter/group.converter",Wi],["/converter/form-group-label.converter",Xi],["/converter/field-selector.converter",qi],["/converter/pagination.converter",zi],["/converter/row-number.converter",Gi],["/converter/grid-selection.converter",Ui],["/converter/size.converter",Zi],["/converter/change-formatter-enum.converter",Ji],["/converter/grid-sort.converter",Qi],["/converter/grid-filter.converter",Ki],["/converter/row-option.converter",er]]),r=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=Ni();function a(h,v){return()=>l.parseValueSchema(h,v)}function s(h,v,F){return h.includes("visible")&&v.visible!==void 0?typeof v.visible=="boolean"?()=>!!v.visible:v.visible===void 0?!0:a(v.visible,F):()=>!0}function u(h,v,F){return h.includes("readonly")&&v.readonly!==void 0?typeof v.readonly=="boolean"?()=>!!v.readonly:a(v.readonly,F):()=>!1}function d(h,v){const F=h.$converter||v;return typeof F=="string"&&F&&o.has(F)?o.get(F)||null:F||null}function f(h,v,F,E,x,S="",w=""){return Object.keys(h).map(b=>{const g=i.ref(1),C=b,_=h[b],P=Object.keys(_),k=_.title,O=_.type,I=r.get(O)||{type:"input-group",enableClear:!1},M=_.editor?Object.assign({},I,_.editor):Object.assign({},I),T=s(P,_,v),j=u(P,_,v);M.readonly=M.readonly===void 0?j():M.readonly;const W=_.type==="cascade"?f(_.properties,v,F,E,x,S,w):[],N=!0;let R=d(_,w);const A=i.computed({get(){if(g.value){if(["class","style"].find(z=>z===C)&&!R&&(R=o.get("/converter/appearance.converter")||null),R&&R.convertFrom)return R.convertFrom(F,b,x,S);const ie=F[b];return Object.prototype.hasOwnProperty.call(_,"defaultValue")&&(ie===void 0||typeof ie=="string"&&ie==="")?_.type==="boolean"?_.defaultValue:_.defaultValue||"":ie}return null},set(ie){g.value+=1,R&&R.convertTo?(R.convertTo(E,b,ie,x,S),R.convertTo(F,b,ie,x,S)):(E[b]=ie,F[b]=ie)}}),{refreshPanelAfterChanged:B,description:D,isExpand:Z,parentPropertyID:ee}=_,Y={propertyID:C,propertyName:k,propertyType:O,propertyValue:A,editor:M,visible:T,readonly:j,cascadeConfig:W,hideCascadeTitle:N,refreshPanelAfterChanged:B,description:D,isExpand:Z,parentPropertyID:ee};return v[C]=Y,Y})}function c(h,v,F={}){const E={},x=t[h];return x&&x.categories?Object.keys(x.categories).map(w=>{const y=x.categories[w],b=y==null?void 0:y.title,g=f(y.properties||{},E,{},F,v);return{categoryId:w,categoryName:b,properties:g}}):[]}function m(h,v,F,E,x=""){const S=v.$ref.schema,w=v.$ref.converter,y=F[S],b=y.type,g=n(y),C={},_=t[b];if(_&&_.categories){const P=_.categories[h],k=P==null?void 0:P.title;w&&Object.keys(P.properties).forEach(M=>{P.properties[M].$converter=w});const O=(P==null?void 0:P.properties)||{},I=f(O,C,g,y,E,x);return{categoryId:h,categoryName:k,properties:I}}return{categoryId:h,categoryName:"",properties:[]}}function p(h,v,F,E,x){const S=h.type,w=n(h),y={};let b=x||t[S];if(b&&Object.keys(b).length===0&&F&&F.getPropConfig&&(b=F.getPropConfig(E)),b&&b.categories){const g=[];return Object.keys(b.categories).map(C=>{const _=b.categories[C];if(_.$ref){g.push(m(C,_,h,v,E));return}const P=_==null?void 0:_.title,k=_==null?void 0:_.tabId,O=_==null?void 0:_.tabName,I=_==null?void 0:_.hide,M=_==null?void 0:_.hideTitle,T=f(_.properties||{},y,w,h,v,E,_.$converter),{setPropertyRelates:j}=_,W=_==null?void 0:_.parentPropertyID;g.push({categoryId:C,categoryName:P,tabId:k,tabName:O,hide:I,properties:T,hideTitle:M,setPropertyRelates:j,parentPropertyID:W})}),g}return[]}return{getPropertyConfigBySchema:p,getPropertyConfigByType:c,propertyConverterMap:o}}function gn(t,e){let n;function o(c){const{properties:m,title:p,ignore:h}=c,v=h&&Array.isArray(h),F=Object.keys(m).reduce((E,x)=>((!v||!h.find(S=>S===x))&&(E[x]=m[x].type==="object"&&m[x].properties?o(m[x]):$e.cloneDeep(m[x].default)),E),{});if(p&&(!v||!h.find(E=>E==="id"))){const E=p.toLowerCase().replace(/-/g,"_");F.id=`${E}_${Math.random().toString().slice(2,6)}`}return F}function r(c){const{properties:m,title:p,required:h}=c;if(h&&Array.isArray(h)){const v=h.reduce((F,E)=>(F[E]=m[E].type==="object"&&m[E].properties?o(m[E]):$e.cloneDeep(m[E].default),F),{});if(p&&h.find(F=>F==="id")){const F=p.toLowerCase().replace(/-/g,"_");v.id=`${F}_${Math.random().toString().slice(2,6)}`}return v}return{type:p}}function l(c,m={},p){const h=t[c];if(h){let v=r(h);const F=e[c];return v=F?F({getSchemaByType:l},v,m,p):v,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(v),v}return null}function a(c,m){const p=o(m);return Object.keys(p).reduce((h,v)=>(Object.prototype.hasOwnProperty.call(c,v)&&(h[v]&&$e.isPlainObject(h[v])&&$e.isPlainObject(c[v]||!c[v])?Object.assign(h[v],c[v]||{}):h[v]=c[v]),h),p),p}function s(c,m){return Object.keys(c).filter(h=>c[h]!=null).reduce((h,v)=>{if(m.has(v)){const F=m.get(v);if(typeof F=="string")h[F]=c[v];else{const E=F(v,c[v],c);Object.assign(h,E)}}else h[v]=c[v];return h},{})}function u(c,m,p=new Map){const h=a(c,m);return s(h,p)}function d(c){var p;const m=c.type;if(m){const h=t[m];if(!h)return c;const v=a(c,h),F=((p=c.editor)==null?void 0:p.type)||"";if(F){const E=t[F],x=a(c.editor,E);v.editor=x}return v}return c}function f(c){n=c}return{getSchemaByType:l,resolveSchemaWithDefaultValue:d,resolveSchemaToProps:u,mappingSchemaToProps:s,setDesignerContext:f}}const yn={},vn={},{getSchemaByType:Us,resolveSchemaWithDefaultValue:tr,resolveSchemaToProps:Ys,mappingSchemaToProps:Xs,setDesignerContext:Zs}=gn(yn,vn),bn={},Cn={};hn(bn,Cn,tr);const wn={},Sn={},{getSchemaByType:Js,resolveSchemaWithDefaultValue:nr,resolveSchemaToProps:or,mappingSchemaToProps:ir,setDesignerContext:Qs}=gn(wn,Sn),xn={},Fn={};hn(xn,Fn,nr);function ht(t,e,n=new Map,o=(a,s,u,d)=>s,r={},l=a=>a){return wn[e.title]=e,Sn[e.title]=o,xn[e.title]=r,Fn[e.title]=l,yn[e.title]=e,vn[e.title]=o,bn[e.title]=r,Cn[e.title]=l,(a={},s=!0)=>{if(!s)return ir(a,n);const u=or(a,e,n),d=Object.keys(t).reduce((f,c)=>(f[c]=t[c].default,f),{});return Object.assign(d,u)}}function Ht(t,e){return{customClass:e.class,customStyle:e.style}}const Zt=new Map([["appearance",Ht]]),rr=new Map([]),Tn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/form-group.schema.json",title:"form-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"form-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},enableLinkLabel:{description:"",type:"boolean",default:!1},editor:{description:"",type:"obejct",default:null},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}},visible:{description:"",type:"boolean",default:!0},required:{description:"",type:"boolean",default:!1},errors:{description:"",type:"object",default:null},name:{description:"The name string of form group component",type:"string",default:"form group"},showLabelType:{description:"",type:"string",default:"visible"}},required:["id","type","editor"]};ht({id:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number]},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},showLabelType:{type:String,default:"visible"},type:{type:String,default:"input-group"},componentId:{type:String,default:""},errors:{type:Object,default:null}},Tn,Zt,void 0);const ar=i.ref(0);function lr(){ar.value++}function sr(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function o(u,d=""){return{path:d+u.code,field:u.id,fullPath:u.code}}function r(u,d=""){return e.getViewModelById(u).states.map(c=>o(c,d))}function l(u){const d=e.getRootViewModelId(),f=r(u);if(u===d)return f;const c=r(d,"root-component.");return[...f,...c]}function a(u){return u.binding&&u.binding.path||u.id||""}function s(){return n&&n.getRenderStates()||[]}return{getVariables:l,getControlName:a,getStateMachines:s}}class Mn{constructor(e){le(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'"}]);le(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});le(this,"getExpressionConverter",(e,n)=>({convertFrom:(o,r,l,a)=>{const s=l.getExpressionRuleValue(e,n||r);return s&&s.value||""},convertTo:(o,r,l,a,s)=>{var u;if(r==="dataPicking"&&(l!=null&&l.target)){const d=`${l.target}_dataPicking`;((u=l.rules)==null?void 0:u.some(c=>c.id===d&&c.value))?o.dictPickingExpressionId=d:delete o.dictPickingExpressionId}a.updateExpression(l)}}));this.formSchemaService=e}getExpressionRule(e,n){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(a=>a.target===e);if(!r)return"";const l=r.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(),o=this.formSchemaService.getViewModelById(n);if(!o||!o.states||o.states.length===0)return[];const r=[];return o.states.forEach(l=>{r.push({key:l.code,name:l.name,description:l.name,category:l.category})}),r}createTreeNode(e,n,o="label"){return{id:e.id,name:e.name,bindingPath:e[o],parents:n,type:"field"}}buildEntityFieldsTreeData(e=null,n){const o=[];return e==null||e.forEach(r=>{var s;const l=this.createTreeNode(r,n);let a=[];(s=r.type)!=null&&s.fields&&(a=this.buildEntityFieldsTreeData(r.type.fields,[...n,r.label])),o.push({data:l,children:a,expanded:!0})}),o}buildChildEntityTreeData(e=null,n){const o=[];return e==null||e.forEach(r=>{var u,d;const l=this.createTreeNode(r,n);l.type="entity";const a=this.buildEntityFieldsTreeData((u=r.type)==null?void 0:u.fields,[...n,r.label]),s=this.buildChildEntityTreeData((d=r.type)==null?void 0:d.entities,[...n,r.label]);s!=null&&s.length&&(a==null||a.push(...s)),o.push({data:l,children:a||[],expanded:!0})}),o}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const n=e[0];if(!(n!=null&&n.type))return[];const o=this.buildEntityFieldsTreeData(n.type.fields,[n.code]),r=this.buildChildEntityTreeData(n.type.entities,[n.code]);return r!=null&&r.length&&(o==null||o.push(...r)),{entityCode:n.code,fields:[{data:this.createTreeNode(n,[],"code"),children:o||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,n,o){const r=o==="Field"?e.binding.field:e.id,l=this.getExpressionRule(r,n),a=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(n)&&l?l.message:"",...a};return l.messageType!=null&&(s.messageType=l.messageType),s}buildRule(e,n,o,r){const{expression:l,message:a,messageType:s}=n,u={id:`${e}_${o}`,type:o,value:l};return(o==="validate"||o==="dataPicking"||o==="required")&&(u.message=a),o==="dataPicking"&&(u.messageType=s),o==="validate"&&r&&(u.elementId=r),u}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,n,o,r){const l=n==="Field"?e.binding.field:e.id,a=this.buildRule(l,o,r,e.type==="form-group"?e.id:"");let u=this.getExpressionData().find(f=>f.targetType===n&&f.target===l);const d=f=>f.value.trim()==="";if(u){const f=u.rules.find(c=>c.id===a.id);if(f)d(a)?u.rules=u.rules.filter(c=>c.id!==a.id):(Object.assign(f,a),r==="validate"&&e.type==="form-group"&&(f.elementId=e.id));else{if(d(a))return null;u.rules=u.rules||[],u.rules.push(a)}}else{if(d(a))return null;u={target:`${l}`,rules:[a],targetType:n}}return u}getExpressionEditorOptions(e,n,o,r){return o.reduce((l,a)=>{var u,d;const s=n==="Field"?(u=e==null?void 0:e.binding)==null?void 0:u.field:e.id;return l[a]={hide:n==="Field"?!!((d=e==null?void 0:e.binding)!=null&&d.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(s),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 c=this.updateExpression(e,n,f,a);if(r){const m=this.buildRule(s,f,a);r(m)}return c}}},l},{})}getExpressionInfo(e,n,o){const r=n==="Field"?e.binding.field:e.id,l=this.getExpressionRule(r,o),a={value:l&&l.value,targetId:r,targetType:n,expressionType:o};return l&&l.message&&(a.message=l.message),a}getExpressionConfig(e,n,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,n,o,r)}}}getExpressionOptions(e,n,o){const r=this.getExpressionInfo(e,n,o);return{dialogTitle:`${this.expressionNames[o]}编辑器`,singleExpand:!1,showMessage:o==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,o,n),expressionInfo:r}}}class _n{constructor(e,n){le(this,"componentId");le(this,"viewModelId");le(this,"eventsEditorUtils");le(this,"formSchemaUtils");le(this,"formMetadataConverter");le(this,"designViewModelUtils");le(this,"designViewModelField");le(this,"controlCreatorUtils");le(this,"designerHostService");le(this,"designerContext");le(this,"schemaService",null);le(this,"metadataService",null);le(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=e,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.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 o;const n=e.binding&&e.binding.type==="Form"&&e.binding.field;if(n){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(l=>l.id===n)}e.updateOn=(o=this.designViewModelField)==null?void 0:o.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:Q[e.type]&&Q[e.type].name}]}}}}}getAppearanceConfig(e=null,n={},o){const r={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{...r,properties:{...l},setPropertyRelates(a,s){if(a){switch(a&&a.propertyID){case"class":case"style":{mt.value++;break}}o&&o(a,e,s)}}}}getPropertyEditorParams(e,n=[],o="visible",r={},l={}){const{getVariables:a,getControlName:s,getStateMachines:u}=sr(this.designerHostService),d=this.getRealTargetType(e),f=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],c={type:"property-editor",propertyTypes:f};return f.map(m=>{switch(m){case"Const":Object.assign(c,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":c.expressionConfig=this.getExpressionOptions(e,d,o);break;case"StateMachine":c.stateMachines=u();break;case"Variable":Object.assign(c,{controlName:s(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:a(this.viewModelId),onBeforeOpenVariables:p=>{p.value=a(this.viewModelId)}},l);break}}),c}getVisibleProperty(e,n=""){var l;let o=["Const","Variable","StateMachine","Expression"];return n==="gridFieldEditor"?o=["Const","Expression"]:n==="form-group"&&!((l=e.binding)!=null&&l.field)&&(o=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,o,"visible")}}}getBehaviorConfig(e,n="",o={},r){const l={title:"行为",description:""},a=this.getVisibleProperty(e,n);for(const u in o)a[u]=Object.assign(a[u]||{},o[u]);const s=this;return{...l,properties:{...a},setPropertyRelates(u,d){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(e,u);break}r&&r(u,d)}}}}afterMutilEditorChanged(e,n){this.addNewVariableToViewModel(n,this.viewModelId),this.updateExpressionValue(n),this.clearExpression(n,e)}updateElementByParentContainer(e,n){const o=n&&n.parent&&n.parent.schema;if(!o)return;const r=o.contents.findIndex(a=>a.id===e),l=$e.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,l),lr()}addNewVariableToViewModel(e,n){const o=e.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const a={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById(n).states.push(a)}updateExpressionValue(e){const n=e.propertyValue;if(!((n&&n.type)==="Expression"&&n.expressionInfo))return;const{expressionId:l,expressionInfo:a}=n,{targetId:s,targetType:u,expressionType:d,value:f,message:c}=a,m=this.formSchemaUtils.getModule();m.expressions=m.expressions||[];const{expressions:p}=m;let h=p.find(F=>F.target===s);h||(h={target:s,rules:[],targetType:u},p.push(h));const v=h.rules.find(F=>F.type===d);if(v)v.value=f,v.message=c;else{const F={id:l,type:d,value:f,message:c};h.rules.push(F)}delete n.expressionInfo}clearExpression(e,n){const o=e.propertyValue;if(o&&o.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),s=n.binding?n.binding.field:n.id,u=a.find(d=>d.target===s);!u||!u.rules||(u.rules=u.rules.filter(d=>d.type!==l))}getExpressionOptions(e,n,o){return new Mn(this.formSchemaUtils).getExpressionOptions(e,n,o)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-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:o=>{var r;((r=o.controller)==null?void 0:r.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(o)}}},n}}const Nt=class Nt{static getEditorTypesByMDataType(e,n=!1,o=""){if(n)return[{key:Q["language-textbox"].type,value:Q["language-textbox"].name}];let r=Nt.fieldControlTypeMapping[e];if(o==="data-grid-column"&&(r!=null&&r.length)){const l=[Q["check-group"].type,Q["radio-group"].type];r=r.filter(a=>!l.includes(a.key))}return r}static getAllInputTypes(){const e=[];for(const n in Nt.fieldControlTypeMapping)Nt.fieldControlTypeMapping[n].forEach(o=>{e.find(r=>r.key===o.key&&r.value===o.value)||e.push({key:o.key,value:o.value})});return e}static mappingDomPropAndSchemaProp(e,n){var l;const o=(l=e.editor)==null?void 0:l.type,r=[];return(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&n&&n.categoryId&&n.categoryId.indexOf("gridFieldEditor")<0&&r.push({domField:"title",schemaField:"name"}),r.push({domField:"label",schemaField:"name"}),r.push({domField:"editor.required",schemaField:"require"}),r.push({domField:"editor.readonly",schemaField:"readonly"}),(o===Q["input-group"].type||o===Q.textarea.type||o===Q["number-spinner"].type)&&r.push({domField:"editor.maxLength",schemaField:"type.length"}),o===Q["number-spinner"].type&&r.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&r.push({domField:"formatter.precision",schemaField:"type.precision"}),(o===Q["combo-list"].type||o===Q["radio-group"].type)&&r.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&r.push({domField:"formatter.data",schemaField:"type.enumValues"}),o===Q["date-picker"].type&&(r.push({domField:"editor.displayFormat",schemaField:"editor.format"}),r.push({domField:"editor.fieldType",schemaField:"type.name"})),o===Q["number-spinner"].type&&(r.push({domField:"editor.max",schemaField:"editor.maxValue"}),r.push({domField:"editor.min",schemaField:"editor.minValue"})),o===Q.lookup.type&&(r.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),r.push({domField:"editor.valueField",schemaField:"editor.valueField"}),r.push({domField:"editor.textField",schemaField:"editor.textField"}),r.push({domField:"editor.displayType",schemaField:"editor.displayType"}),r.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),r.push({domField:"editor.helpId",schemaField:"editor.helpId"})),r.push({domField:"path",schemaField:"bindingPath"}),r.push({domField:"binding.path",schemaField:"bindingField"}),r.push({domField:"binding.fullPath",schemaField:"path"}),(e.type===Q["data-grid-column"].type||e.type===Q["tree-grid-column"].type)&&r.push({domField:"field",schemaField:"bindingPath"}),r}};le(Nt,"fieldControlTypeMapping",{String:[{key:Q["input-group"].type,value:Q["input-group"].name},{key:Q.lookup.type,value:Q.lookup.name},{key:Q["date-picker"].type,value:Q["date-picker"].name},{key:Q.switch.type,value:Q.switch.name},{key:Q["check-box"].type,value:Q["check-box"].name},{key:Q["check-group"].type,value:Q["check-group"].name},{key:Q["radio-group"].type,value:Q["radio-group"].name},{key:Q["combo-list"].type,value:Q["combo-list"].name},{key:Q.textarea.type,value:Q.textarea.name},{key:Q["time-picker"].type,value:Q["time-picker"].name}],Text:[{key:Q.textarea.type,value:Q.textarea.name},{key:Q.lookup.type,value:Q.lookup.name}],Decimal:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name}],Integer:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name}],Number:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name},{key:Q.switch.type,value:Q.switch.name},{key:Q["check-box"].type,value:Q["check-box"].name}],BigNumber:[{key:Q["number-spinner"].type,value:Q["number-spinner"].name}],Date:[{key:Q["date-picker"].type,value:Q["date-picker"].name}],DateTime:[{key:Q["date-picker"].type,value:Q["date-picker"].name}],Boolean:[{key:Q.switch.type,value:Q.switch.name},{key:Q["check-box"].type,value:Q["check-box"].name}],Enum:[{key:Q["combo-list"].type,value:Q["combo-list"].name},{key:Q["radio-group"].type,value:Q["radio-group"].name}],Object:[{key:Q.lookup.type,value:Q.lookup.name},{key:Q["combo-list"].type,value:Q["combo-list"].name},{key:Q["radio-group"].type,value:Q["radio-group"].name}]});let Bt=Nt;var Vt=(t=>(t.Form="Form",t.Variable="Variable",t))(Vt||{});class cr{constructor(){le(this,"label","");le(this,"id","");le(this,"columnInSM",12);le(this,"columnInMD",6);le(this,"columnInLG",3);le(this,"columnInEL",2);le(this,"displayWidthInSM",1);le(this,"displayWidthInMD",1);le(this,"displayWidthInLG",1);le(this,"displayWidthInEL",1);le(this,"displayColumnCountAtBreakPoint","md");le(this,"tagRow",0);le(this,"showTopBorder",0);le(this,"group",1);le(this,"isSupportedClass",!0);le(this,"fieldSetId","")}}function dr(t){let e,n;const o=new Map;let r=[];function l(f,c){const p=f.split(" ").filter(x=>x.startsWith("col-"));if(p.length===0){c.isSupportedClass=!1;return}let h=p.find(x=>/^col-([1-9]|10|11|12)$/.test(x)),v=p.find(x=>/^col-md-([1-9]|10|11|12)$/.test(x)),F=p.find(x=>/^col-xl-([1-9]|10|11|12)$/.test(x)),E=p.find(x=>/^col-el-([1-9]|10|11|12)$/.test(x));h=h||"col-12",c.columnInSM=parseInt(h.replace("col-",""),10),c.displayWidthInSM=c.columnInSM/12,c.displayWidthInSM!==1&&(c.isSupportedClass=!1),v=v||"col-md-"+c.columnInSM,c.columnInMD=parseInt(v.replace("col-md-",""),10),c.displayWidthInMD=c.columnInMD/6,[1,2].includes(c.displayWidthInMD)||(c.isSupportedClass=!1),F=F||"col-xl-"+c.columnInMD,c.columnInLG=parseInt(F.replace("col-xl-",""),10),c.displayWidthInLG=c.columnInLG/3,[1,2,3,4].includes(c.displayWidthInLG)||(c.isSupportedClass=!1),E=E||"col-el-"+c.columnInLG,c.columnInEL=parseInt(E.replace("col-el-",""),10),c.displayWidthInEL=c.columnInEL/2,[1,2,3,4,5,6].includes(c.displayWidthInEL)||(c.isSupportedClass=!1)}function a(f,c,m,p=!1){let h=!1;f.contents.forEach(v=>{if(v.type==="fieldset"){m+=1,a(v,c,m,!0),h=!0;return}h&&(m+=1,h=!1);const F=v.appearance&&v.appearance.class,E=new cr;F?l(F,E):E.isSupportedClass=!1,E.label=v.label||v.id,E.id=v.id,E.group=m,p&&(E.fieldSetId=f.id),n===v.id&&(e=m),o.set(v.id,v),c.push(E)})}function s(f){const c=t.getComponentById(f);if(!c||!c.componentType||!c.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const m=t.selectNode(c,p=>p.type===ft.DgControl["response-form"].type);return!m||!m.contents||m.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:m}}function u(f,c){c=c||f.id;const{result:m,message:p,formNode:h}=s(c);if(!m)return{result:m,message:p};n=f.id,r=[],o.clear();const v=h.contents[0].type===ft.DgControl.fieldset.type?0:1;a(h,r,v);const F=r.find(x=>!x.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:F?"customize":"standard"},importData:r}}function d(f,c){c=c;const{result:m,formNode:p}=s(c);if(!m)return"";const h=[];return f.forEach(v=>{var x;const F=o.get(v.id),E=F.appearance&&F.appearance.class;if(E){const w=E.split(" ").filter(P=>!P.startsWith("col-")),y="col-"+v.columnInSM,b="col-md-"+v.columnInMD,g="col-xl-"+v.columnInLG,C="col-el-"+v.columnInEL,_=[y,b,g,C].concat(w);F.appearance.class=_.join(" ")}if(v.fieldSetId){const S=p.contents.find(y=>y.id===v.fieldSetId),w=h.find(y=>y.id===v.fieldSetId);w?(x=w.contents)==null||x.push(F):(h.push(S),S.contents=[F])}else h.push(F)}),p.contents=h,p.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:u,changeFormControlsByResponseLayoutConfig:d,getResonseFormLayoutConfig:a}}var gt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Dt(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var ur={exports:{}};(function(t,e){(function(n){t.exports=n()})(function(){return function(){function n(o,r,l){function a(d,f){if(!r[d]){if(!o[d]){var c=typeof Dt=="function"&&Dt;if(!f&&c)return c(d,!0);if(s)return s(d,!0);var m=new Error("Cannot find module '"+d+"'");throw m.code="MODULE_NOT_FOUND",m}var p=r[d]={exports:{}};o[d][0].call(p.exports,function(h){var v=o[d][1][h];return a(v||h)},p,p.exports,n,o,r,l)}return r[d].exports}for(var s=typeof Dt=="function"&&Dt,u=0;u<l.length;u++)a(l[u]);return a}return n}()({1:[function(n,o,r){var l={},a="(?:^|\\s)",s="(?:\\s|$)";function u(c){var m=l[c];return m?m.lastIndex=0:l[c]=m=new RegExp(a+c+s,"g"),m}function d(c,m){var p=c.className;p.length?u(m).test(p)||(c.className+=" "+m):c.className=m}function f(c,m){c.className=c.className.replace(u(m)," ").trim()}o.exports={add:d,rm:f}},{}],2:[function(n,o,r){(function(l){var a=n("contra/emitter"),s=n("crossvent"),u=n("./classes"),d=document,f=d.documentElement;function c(k,O){var I=arguments.length;I===1&&Array.isArray(k)===!1&&(O=k,k=[]);var M,T,j,W,N,R,A,B,D,Z=null,ee,Y,ie=!1,z=0,q,L=O||{};L.moves===void 0&&(L.moves=x),L.accepts===void 0&&(L.accepts=x),L.invalid===void 0&&(L.invalid=Ee),L.containers===void 0&&(L.containers=k||[]),L.isContainer===void 0&&(L.isContainer=E),L.copy===void 0&&(L.copy=!1),L.copySortSource===void 0&&(L.copySortSource=!1),L.revertOnSpill===void 0&&(L.revertOnSpill=!1),L.removeOnSpill===void 0&&(L.removeOnSpill=!1),L.direction===void 0&&(L.direction="vertical"),L.ignoreInputTextSelection===void 0&&(L.ignoreInputTextSelection=!0),L.mirrorContainer===void 0&&(L.mirrorContainer=d.body);var U=a({containers:L.containers,start:oe,end:ze,cancel:pe,remove:X,destroy:Se,canMove:K,dragging:!1});return L.removeOnSpill===!0&&U.on("over",yt).on("out",Tt),he(),U;function se(V){return U.containers.indexOf(V)!==-1||L.isContainer(V)}function he(V){var $=V?"remove":"add";h(f,$,"mousedown",ge),h(f,$,"mouseup",Qe)}function me(V){var $=V?"remove":"add";h(f,$,"mousemove",He)}function de(V){var $=V?"remove":"add";s[$](f,"selectstart",Ie),s[$](f,"click",Ie)}function Se(){he(!0),Qe({})}function Ie(V){ee&&V.preventDefault()}function ge(V){W=V.clientX,N=V.clientY;var $=v(V)!==1||V.metaKey||V.ctrlKey;if(!$){var G=V.target,J=H(G);J&&(ee=J,me(),V.type==="mousedown"&&(b(G)?G.focus():V.preventDefault()))}}function He(V){if(ee){if(v(V)===0){Qe({});return}if(!(V.clientX!==void 0&&Math.abs(V.clientX-W)<=(L.slideFactorX||0)&&V.clientY!==void 0&&Math.abs(V.clientY-N)<=(L.slideFactorY||0))){if(L.ignoreInputTextSelection){var $=P("clientX",V)||0,G=P("clientY",V)||0,J=d.elementFromPoint($,G);if(b(J))return}var ue=ee;me(!0),de(),ze(),xe(ue),u.add(B||j,"gu-transit"),vt(),Mt(),z=0,st(V)}}}function H(V){if(!(U.dragging&&M)&&!se(V)){for(var $=V;y(V)&&se(y(V))===!1;)if(L.invalid(V,$)||(V=y(V),!V))return;var G=y(V);if(G&&!L.invalid(V,$)){var J=L.moves(V,G,$,C(V));if(J)return{item:V,source:G}}}}function K(V){return!!H(V)}function oe(V){var $=H(V);$&&xe($)}function xe(V){ot(V.item,V.source)&&(B=V.item.cloneNode(!0),U.emit("cloned",B,V.item,"copy")),T=V.source,j=V.item,R=A=C(V.item),U.dragging=!0,U.emit("drag",j,T)}function Ee(){return!1}function ze(){if(U.dragging){var V=B||j;Xe(V,y(V))}}function Ye(){ee=!1,me(!0),de(!0)}function Qe(V){if(Ye(),!!U.dragging){var $=B||j,G=P("clientX",V)||0,J=P("clientY",V)||0,ue=F(M,G,J),ye=Ke(ue,G,J);ye&&(B&&L.copySortSource||!B||ye!==T)?Xe($,ye):L.removeOnSpill?X():pe()}}function Xe(V,$){var G=y(V);B&&L.copySortSource&&$===T&&G.removeChild(j),Fe($)?U.emit("cancel",V,T):U.emit("drop",V,$,T,A),Ne()}function X(){if(U.dragging){var V=B||j,$=y(V);$&&$.removeChild(V),U.emit(B?"cancel":"remove",V,$,T),Ne()}}function pe(V){if(U.dragging){var $=arguments.length>0?V:L.revertOnSpill,G=B||j,J=y(G),ue=Fe(J);ue===!1&&$&&(B?J&&J.removeChild(B):T.insertBefore(G,R)),ue||$?U.emit("cancel",G,T,T):U.emit("drop",G,J,T,A),Ne()}}function Ne(){var V=B||j;Ye(),te(),ae(),V&&u.rm(V,"gu-transit"),D&&clearTimeout(D),U.dragging=!1,Z&&U.emit("out",V,Z,T),U.emit("dragend",V,z),T=j=B=R=A=D=Z=null}function Fe(V,$){var G;return $!==void 0?G=$:M?G=A:G=C(B||j),V===T&&G===R}function Ke(V,$,G){for(var J=V;J&&!ue();)J=y(J);return J;function ue(){var ye=se(J);if(ye===!1)return!1;var je=fe(J,V),Te=nt(J,je,$,G),we=Fe(J,Te);return we?!0:L.accepts(j,J,T,Te)}}function st(V){if(!M)return;V.preventDefault();var $=P("clientX",V)||0,G=P("clientY",V)||0;M.style.left=$-2+"px",M.style.top=G-2+"px";var J=B||j,ue=F(M,$,G),ye=Ke(ue,$,G),je=ye!==null&&ye!==Z;(je||ye===null)&&(Be(),Z=ye,Ve()),dt(ue,G);var Te=y(J);if(ye===T&&B&&!L.copySortSource){Te&&Te.removeChild(J);return}var we,Me=fe(ye,ue);if(ie=Pe(Me,ye),Me!==null)we=nt(ye,Me,$,G);else if(L.revertOnSpill===!0&&!B)we=R,ye=T;else{B&&Te&&Te.removeChild(J),B&&Y&&(Y.style.display="none");return}Y.style.display="block",Ft(we,J,je),we?Ue(Me,we):Ze(ye);function Ce(Oe){U.emit(Oe,J,Z,T)}function Ve(){je&&Ce("over")}function Be(){Z&&Ce("out")}}function Ft(V,$,G){(V===$||V===C($))&&(A=C($)),(V===null&&G||V!==$&&V!==C($))&&(A=V)}function yt(V){u.rm(V,"gu-hide")}function Tt(V){U.dragging&&u.add(V,"gu-hide")}function Mt(){M||(M=document.createElement("div"),M.style="background: grey; color: white; height: 24px; text-align: center; padding: 3px 10px; min-width: 100px;border-radius: 4px; box-shadow: 0 0 6px grey;",M.innerHTML=L.getMirrorText&&L.getMirrorText(j)||"控件",u.add(M,"gu-mirror"),L.mirrorContainer.appendChild(M),h(f,"add","mousemove",st),u.add(L.mirrorContainer,"gu-unselectable"),U.emit("cloned",M,j,"mirror"))}function vt(){if(Y=document.createElement("div"),u.add(Y,"gu-insertion"),j){var V=j.getBoundingClientRect();Y.style.left=V.left+"px",Y.style.top=V.top+"px"}ie=!1,L.mirrorContainer.appendChild(Y)}function te(){M&&(u.rm(L.mirrorContainer,"gu-unselectable"),h(f,"remove","mousemove",st),y(M).removeChild(M),M=null)}function ae(){Y&&(y(Y).removeChild(Y),Y=null)}function fe(V,$){for(var G=$;G!==V&&y(G)!==V;)G=y(G);return G===f?null:G}function Pe(V,$){if(!$)return ie;var G=V||$&&$.lastElementChild;if(!G)return!0;var J=getComputedStyle(V),ue=/^inline/.test(J.getPropertyValue("display"))||/^(left|right)$/.test(J.getPropertyValue("float"));if(ue)return!0;if($){var ye=getComputedStyle($),je=ye.getPropertyValue("display");if(/flex$/.test(je)){var Te=ye.getPropertyValue("flex-direction")||"row";if(Te==="row"||Te==="row-reverse")return!Re($)}return!1}return!0}function Re(V){if(!V.children||!V.children.length)return!1;for(const $ of Array.from(V.children)){const J=($.className&&$.className.split(" ")||[]).filter(ue=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(ue));if(!J.length)return!1;for(const ue of J){const ye=ue.slice(ue.lastIndexOf("-")+1);if(parseInt(ye,10)!==12)return!1}}return!0}function Ue(V,$){const G=$.getBoundingClientRect();if(Y.style.left=G.left+"px",Y.style.top=G.top+"px",ie){if(Y.style.height=G.height+"px",Y.style.width="4px",V){const J=V.getBoundingClientRect();J.top!==G.top&&(Y.style.left=J.right+"px",Y.style.top=J.top+"px",Y.style.height=J.height+"px")}}else if(Y.style.height="4px",Y.style.width=G.width+"px",q){const J=q.getBoundingClientRect();G.top<J.top&&(Y.style.display="none")}$===j&&j&&(Y.style.display="none")}function Ze(V){A=null;var $=V.lastElementChild;if($){var G=$.getBoundingClientRect();ie?(Y.style.left=G.right+"px",Y.style.top=G.top+"px",Y.style.height=G.height+"px",Y.style.width="4px"):(Y.style.left=G.left+"px",Y.style.top=G.bottom+"px",Y.style.height="4px",Y.style.width=G.width+"px"),$===j&&j&&(Y.style.display="none")}else Y.style.display="none"}function dt(V,$){if(!L.mirrorContainer.contains(V)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(q=m(V),!q||!q.contains(V)))return;const G=document.querySelector(".dgComponentSelected"),J=q.getBoundingClientRect();if($-30<J.top&&q.scrollTop>0){let ue=q.scrollTop<10?q.scrollTop:10;q.scrollBy(0,-1*ue),G&&q.contains(G)&&(z=z+-1*ue)}if($+30>J.bottom&&q.scrollTop<q.scrollHeight-q.clientHeight){const ue=q.scrollHeight-q.clientHeight-q.scrollTop;let ye=ue<10?ue:10;q.scrollBy(0,ye),G&&q.contains(G)&&(z=z+ye)}}function nt(V,$,G,J){var ue=L.direction==="horizontal",ye=L.direction==="mixed",je=$!==V?we():Te();return je;function Te(){var Ce=V.children.length,Ve,Be,Oe;for(Ve=0;Ve<Ce;Ve++)if(Be=V.children[Ve],Oe=Be.getBoundingClientRect(),ue&&Oe.left+Oe.width/2>G||!ye&&!ue&&Oe.top+Oe.height/2>J||ye&&Oe.left+Oe.width>G&&Oe.top+Oe.height>J)return Be;return null}function we(){var Ce=$.getBoundingClientRect();if(ye){var Ve=J-Ce.top,Be=G-Ce.left,Oe=Ce.bottom-J,Ot=Ce.right-G,jt=Math.min(Be,Ot,Ve,Oe),$t;return ie?$t=Ot<Be:$t=Oe===jt||Ot===jt||Be===jt,Me($t)}return Me(ue?G>Ce.left+S(Ce)/2:J>Ce.top+w(Ce)/2)}function Me(Ce){return Ce?C($):$}}function ot(V,$){return typeof L.copy=="boolean"?L.copy:L.copy(V,$)}}function m(k){const O=Array.from(window.scrollContainerList);if(O.length===1){const M=Array.from(window.scrollContainerList)[0];return document.getElementById(M)}const I=p(O);for(const M of I)if(M.contains(k))return M;return null}function p(k){const O=[];return k.forEach(I=>{const M=document.getElementById(I);M&&O.push(M)}),O.sort((I,M)=>I.contains(M)?1:M.contains(I)?-1:0),O}function h(k,O,I,M){var T={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},j={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},W={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};l.navigator.pointerEnabled?s[O](k,j[I],M):l.navigator.msPointerEnabled?s[O](k,W[I],M):(s[O](k,T[I],M),s[O](k,I,M))}function v(k){if(k.touches!==void 0)return k.touches.length;if(k.which!==void 0&&k.which!==0)return k.which;if(k.buttons!==void 0)return k.buttons;var O=k.button;if(O!==void 0)return O&1?1:O&2?3:O&4?2:0}function F(k,O,I){k=k||{};var M=k.className||"",T;return k.className+=" gu-hide",T=d.elementFromPoint(O,I),k.className=M,T}function E(){return!1}function x(){return!0}function S(k){return k.width||k.right-k.left}function w(k){return k.height||k.bottom-k.top}function y(k){return k.parentNode===d?null:k.parentNode}function b(k){return k.tagName==="INPUT"||k.tagName==="TEXTAREA"||k.tagName==="SELECT"||g(k)}function g(k){return!k||k.contentEditable==="false"?!1:k.contentEditable==="true"?!0:g(y(k))}function C(k){return k.nextElementSibling||O();function O(){var I=k;do I=I.nextSibling;while(I&&I.nodeType!==1);return I}}function _(k){return k.targetTouches&&k.targetTouches.length?k.targetTouches[0]:k.changedTouches&&k.changedTouches.length?k.changedTouches[0]:k}function P(k,O){var I=_(O),M={pageX:"clientX",pageY:"clientY"};return k in M&&!(k in I)&&M[k]in I&&(k=M[k]),I[k]}o.exports=c}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(n,o,r){o.exports=function(a,s){return Array.prototype.slice.call(a,s)}},{}],4:[function(n,o,r){var l=n("ticky");o.exports=function(s,u,d){s&&l(function(){s.apply(d||null,u||[])})}},{ticky:10}],5:[function(n,o,r){var l=n("atoa"),a=n("./debounce");o.exports=function(u,d){var f=d||{},c={};return u===void 0&&(u={}),u.on=function(m,p){return c[m]?c[m].push(p):c[m]=[p],u},u.once=function(m,p){return p._once=!0,u.on(m,p),u},u.off=function(m,p){var h=arguments.length;if(h===1)delete c[m];else if(h===0)c={};else{var v=c[m];if(!v)return u;v.splice(v.indexOf(p),1)}return u},u.emit=function(){var m=l(arguments);return u.emitterSnapshot(m.shift()).apply(this,m)},u.emitterSnapshot=function(m){var p=(c[m]||[]).slice(0);return function(){var h=l(arguments),v=this||u;if(m==="error"&&f.throws!==!1&&!p.length)throw h.length===1?h[0]:h;return p.forEach(function(E){f.async?a(E,h,v):E.apply(v,h),E._once&&u.off(m,E)}),u}},u}},{"./debounce":4,atoa:3}],6:[function(n,o,r){(function(l){var a=n("custom-event"),s=n("./eventmap"),u=l.document,d=m,f=h,c=[];l.addEventListener||(d=p,f=v),o.exports={add:d,remove:f,fabricate:F};function m(y,b,g,C){return y.addEventListener(b,g,C)}function p(y,b,g){return y.attachEvent("on"+b,x(y,b,g))}function h(y,b,g,C){return y.removeEventListener(b,g,C)}function v(y,b,g){var C=S(y,b,g);if(C)return y.detachEvent("on"+b,C)}function F(y,b,g){var C=s.indexOf(b)===-1?P():_();y.dispatchEvent?y.dispatchEvent(C):y.fireEvent("on"+b,C);function _(){var k;return u.createEvent?(k=u.createEvent("Event"),k.initEvent(b,!0,!0)):u.createEventObject&&(k=u.createEventObject()),k}function P(){return new a(b,{detail:g})}}function E(y,b,g){return function(_){var P=_||l.event;P.target=P.target||P.srcElement,P.preventDefault=P.preventDefault||function(){P.returnValue=!1},P.stopPropagation=P.stopPropagation||function(){P.cancelBubble=!0},P.which=P.which||P.keyCode,g.call(y,P)}}function x(y,b,g){var C=S(y,b,g)||E(y,b,g);return c.push({wrapper:C,element:y,type:b,fn:g}),C}function S(y,b,g){var C=w(y,b,g);if(C){var _=c[C].wrapper;return c.splice(C,1),_}}function w(y,b,g){var C,_;for(C=0;C<c.length;C++)if(_=c[C],_.element===y&&_.type===b&&_.fn===g)return C}}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(n,o,r){(function(l){var a=[],s="",u=/^on/;for(s in l)u.test(s)&&a.push(s.slice(2));o.exports=a}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(n,o,r){(function(l){var a=l.CustomEvent;function s(){try{var u=new a("cat",{detail:{foo:"bar"}});return u.type==="cat"&&u.detail.foo==="bar"}catch{}return!1}o.exports=s()?a:typeof document<"u"&&typeof document.createEvent=="function"?function(d,f){var c=document.createEvent("CustomEvent");return f?c.initCustomEvent(d,f.bubbles,f.cancelable,f.detail):c.initCustomEvent(d,!1,!1,void 0),c}:function(d,f){var c=document.createEventObject();return c.type=d,f?(c.bubbles=!!f.bubbles,c.cancelable=!!f.cancelable,c.detail=f.detail):(c.bubbles=!1,c.cancelable=!1,c.detail=void 0),c}}).call(this,typeof gt<"u"?gt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(n,o,r){var l=o.exports={},a,s;function u(){throw new Error("setTimeout has not been defined")}function d(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=u}catch{a=u}try{typeof clearTimeout=="function"?s=clearTimeout:s=d}catch{s=d}})();function f(w){if(a===setTimeout)return setTimeout(w,0);if((a===u||!a)&&setTimeout)return a=setTimeout,setTimeout(w,0);try{return a(w,0)}catch{try{return a.call(null,w,0)}catch{return a.call(this,w,0)}}}function c(w){if(s===clearTimeout)return clearTimeout(w);if((s===d||!s)&&clearTimeout)return s=clearTimeout,clearTimeout(w);try{return s(w)}catch{try{return s.call(null,w)}catch{return s.call(this,w)}}}var m=[],p=!1,h,v=-1;function F(){!p||!h||(p=!1,h.length?m=h.concat(m):v=-1,m.length&&E())}function E(){if(!p){var w=f(F);p=!0;for(var y=m.length;y;){for(h=m,m=[];++v<y;)h&&h[v].run();v=-1,y=m.length}h=null,p=!1,c(w)}}l.nextTick=function(w){var y=new Array(arguments.length-1);if(arguments.length>1)for(var b=1;b<arguments.length;b++)y[b-1]=arguments[b];m.push(new x(w,y)),m.length===1&&!p&&f(E)};function x(w,y){this.fun=w,this.array=y}x.prototype.run=function(){this.fun.apply(null,this.array)},l.title="browser",l.browser=!0,l.env={},l.argv=[],l.version="",l.versions={};function S(){}l.on=S,l.addListener=S,l.once=S,l.off=S,l.removeListener=S,l.removeAllListeners=S,l.emit=S,l.prependListener=S,l.prependOnceListener=S,l.listeners=function(w){return[]},l.binding=function(w){throw new Error("process.binding is not supported")},l.cwd=function(){return"/"},l.chdir=function(w){throw new Error("process.chdir is not supported")},l.umask=function(){return 0}},{}],10:[function(n,o,r){(function(l){var a=typeof l=="function",s;a?s=function(u){l(u)}:s=function(u){setTimeout(u,0)},o.exports=s}).call(this,n("timers").setImmediate)},{timers:11}],11:[function(n,o,r){(function(l,a){var s=n("process/browser.js").nextTick,u=Function.prototype.apply,d=Array.prototype.slice,f={},c=0;r.setTimeout=function(){return new m(u.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new m(u.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(p){p.close()};function m(p,h){this._id=p,this._clearFn=h}m.prototype.unref=m.prototype.ref=function(){},m.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(p,h){clearTimeout(p._idleTimeoutId),p._idleTimeout=h},r.unenroll=function(p){clearTimeout(p._idleTimeoutId),p._idleTimeout=-1},r._unrefActive=r.active=function(p){clearTimeout(p._idleTimeoutId);var h=p._idleTimeout;h>=0&&(p._idleTimeoutId=setTimeout(function(){p._onTimeout&&p._onTimeout()},h))},r.setImmediate=typeof l=="function"?l:function(p){var h=c++,v=arguments.length<2?!1:d.call(arguments,1);return f[h]=!0,s(function(){f[h]&&(v?p.apply(null,v):p.call(null),r.clearImmediate(h))}),h},r.clearImmediate=typeof a=="function"?a:function(p){delete f[p]}}).call(this,n("timers").setImmediate,n("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(ur),`${Rt.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const fr={customClass:{type:String,default:""},sort:{type:Object},filter:{type:Object},autoCheckChildren:{type:Boolean,default:!1},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},displayField:{type:String,default:"name"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},hierarchy:{type:Object,default:{cascadeOption:{autoCancelParent:!0,autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loadData:{type:Function},loading:{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:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:Rt.LocaleService.getLocaleValue("datagrid.lineNumberTitle")}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},showVerticallLines:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},virtualized:{type:Boolean,default:!1},emptyTemplate:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}}};function mr(t,e,n,o,r,l,a,s,u,d,f,c,m,p,h,v,F){const{calculateCellPositionInRow:E}=l,{columnContext:x,hasLeftFixedColumn:S,hasRightFixedColumn:w}=a,{gridDataStyle:y,leftFixedGridDataStyle:b,rightFixedGridDataStyle:g}=p,{renderDataRow:C}=ce.getHierarchyRow(t,e,x,F,s,u,d,f,c,m,p,h,v),_=[C];function P(T,j){const W=E(T);return F.value.filter(N=>N.visible!==!1).map((N,R)=>_[N.type](N,W,j,R))}function k(){return i.createVNode("div",{ref:o,class:"fv-grid-content-left-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:b.value},[P(x.value.leftColumns.filter(T=>T.visible),"left")])])}function O(){return i.createVNode("div",{ref:n,class:"fv-grid-content-primary"},[i.createVNode("div",{class:"fv-grid-data",style:y.value},[P(x.value.primaryColumns.filter(T=>T.visible),"primary")])])}function I(){return i.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:g.value},[P(x.value.rightColumns.filter(T=>T.visible),"right")])])}function M(){const T=[];return S.value&&T.push(k()),T.push(O()),w.value&&T.push(I()),T}return{renderDataArea:M}}const pr=i.defineComponent({name:"FTreeGrid",props:fr,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged"],setup(t,e){var Qn,Kn;const o=((Qn=t.rowOption)==null?void 0:Qn.height)||28,r=i.ref(20),l=i.ref(t.columns),a=ce.useIdentify(t),{idField:s}=a,u=i.ref(),d=i.ref(),f=i.ref(),c=i.ref(),m=i.ref(),p=i.ref([]),h=i.ref(!1),v=i.ref(((Kn=t.rowOption)==null?void 0:Kn.wrapContent)||!1),F=ce.useGroupData(t,a),E=ce.useFilter(t,e),x=ce.useHierarchy(t),{collapseField:S}=x,{showLoading:w,renderLoading:y}=ce.useLoading(t,u),b=ce.useDataView(t,new Map,E,x,a),{dataView:g}=b,C=ce.useSelection(t,b,a,p,e),{showSelection:_,selectedValues:P}=C,k=ce.useSelectHierarchyItem(t,p,b,a,C,e),O=i.computed(()=>t.disabled),I=i.computed(()=>t.virtualized?Math.min(b.dataView.value.length,r.value):b.dataView.value.length),M=ce.usePagination(t,b),{shouldRenderPagination:T}=M,{containerStyleObject:j}=ce.useDataViewContainerStyle(t),W=ce.useCommandColumn(t),{applyCommands:N}=W;N(l);const{applyColumnSetting:R,removeColumnSetting:A}=ce.useSettingColumn(t);t.showSetting&&R(l);const B=ce.useColumn(t,e),D=ce.useSort(t),{applyColumnSorter:Z,columnContext:ee,updateColumnRenderContext:Y}=B;Z(b,D);const ie=ce.useGroupColumn(t,ee),z=ce.useRow(t,e,C,a),q=ce.useEdit(t,e,a,z,p),L=ce.useVisualDataBound(t),U=ce.useVisualDataCell(t,q,L),se=ce.useVisualDataRow(t,b,q,x,a,L,U),he=ce.useVisualData(t,l,b,I,0,se),{getVisualData:me}=he,de=ce.useCellPosition(t,ee),Se=ce.useSidebar(t,C),{sidebarWidth:Ie}=Se,ge=ce.useVirtualScroll(t,b,p,ee,he,I,0,Ie),{onWheel:He,dataGridWidth:H,viewPortHeight:K,viewPortWidth:oe,resetScroll:xe,updateVisibleRowsOnLatestVisibleScope:Ee}=ge,ze=ce.useFitColumn(t,ee,d,oe,ie),{calculateColumnsSize:Ye}=ze,Qe=ce.useFilterHistory(),Xe=ce.useColumnFilter(d,m,b,Qe,ge),X=ce.useDragColumn(t,e,B,b,ie,F,ge),pe=i.computed(()=>{const re={"fv-grid":!0,"fv-grid-bordered":t.showBorder,"fv-grid-horizontal-bordered":t.showHorizontalLines,"fv-datagrid-strip":t.showStripe};return ne.getCustomClass(re,t.customClass)}),Ne=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":h.value,"fv-grid-wrap-content":v.value})),{renderDataArea:Fe}=mr(t,e,f,c,m,de,B,b,q,x,z,C,k,ge,he,L,p),{renderGridHeader:Ke,renderGridColumnResizeOverlay:st,shouldShowHeader:Ft}=ce.getColumnHeader(t,e,d,c,m,B,b,X,Xe,E,Qe,ze,ie,C,Se,D,ge,oe,p),{renderDataGridSidebar:yt}=ce.getSidebar(t,z,C,Se,ge),{renderDisableMask:Tt}=ce.getDisableMask(),{renderHorizontalScrollbar:Mt}=ce.getHorizontalScrollbar(t,d,ge),{renderVerticalScrollbar:vt}=ce.getVerticalScrollbar(t,d,ge);function te(){var re,ve,De;if(d.value&&d.value.clientHeight>0&&((re=d.value)==null?void 0:re.clientWidth)>0){const Ge=Math.ceil(d.value.clientHeight/o);Ge>r.value&&(r.value=Ge,Ee()),K.value=((ve=f.value)==null?void 0:ve.clientHeight)||0,H.value=((De=d.value)==null?void 0:De.clientWidth)||0,Ye()}}i.onMounted(()=>{d.value&&(r.value=Math.max(Math.ceil(d.value.clientHeight/o),r.value),p.value=me(0,I.value+0-1),nn.useResizeObserver(d.value,te),Ye(),i.nextTick(()=>{d.value&&(H.value=d.value.clientWidth),f.value&&(oe.value=f.value.clientWidth,K.value=f.value.clientHeight)})),w.value&&y()}),i.onUnmounted(()=>{}),i.watch(oe,()=>{d.value&&Ye()});function ae(re){b.collapseTo(re),b.reOrderVisibleIndex(),xe()}function fe(re){b.expandTo(re),b.reOrderVisibleIndex(),xe()}function Pe(){const re=C.getSelectionRow();return re?re.dataIndex-1:-1}function Re(){const re=Pe();b.insertNewDataItem(re),p.value=me(0,I.value+0-1)}function Ue(){const re=Pe();b.insertNewChildDataItem(re),p.value=me(0,I.value+0-1)}function Ze(re,ve){const De=p.value.find(Je=>Je.raw[s.value]===ve),Ge=De?De.dataIndex-1:-1;b.insertNewChildDataItems(re,Ge)}function dt(){const re=Pe(),ve=k.getNextSelectableHierarchyItemId(re);b.removeHierarchyDataItem(re),p.value=me(0,I.value+0-1),ve&&C.selectItemById(ve)}function nt(re){q.onEditingRow(re)}function ot(re){q.acceptEditingRow(re)}function V(re){q.cancelEditingRow(re)}function $(re){re&&(l.value=re,N(l),Y(l.value),Z(b,D),Ye())}i.watch(()=>t.columns,re=>{$(re)});function G(re,ve){re&&(b.load(re),b.reOrderVisibleIndex(),ve!=null&&ve.keepScrollPosition?ge.scrollTo(ge.offsetY.value):xe())}function J(re){C.selectItemById(re)}function ue(re){const ve=p.value.find(De=>De.raw[a.idField.value]===re);ve&&z.clickRowItem(ve)}function ye(re){z.activeRowById(re)}function je(re){C.selectItemByIds(re)}function Te(){return C.getSelectedItems()}function we(){C.clearSelection()}const Me=i.computed(()=>!p.value||!p.value.length),{renderEmpty:Ce}=ce.getEmpty(t,e);function Ve(){return C.getSelectionRow()}function Be(re){C.unSelectItemByIds(re)}function Oe(){return C.currentSelectedDataId.value}function Ot(re,ve,De){const Ge=g.value.find(Je=>Je[s.value]===re);if(Ge){if(Object.keys(Ge).forEach(We=>{Object.prototype.hasOwnProperty.call(ve,We)&&(Ge[We]=ve[We])}),De){const{collapseField:We,disabledField:_t,checkedField:Et,visibleField:kt}=De;We&&!$e.isUndefined(ve[We])&&(Ge.__fv_collapse__=ve[We]),Et&&!$e.isUndefined(ve[Et])&&(Ge.__fv_checked__=ve[Et]),_t&&!$e.isUndefined(ve[_t])&&(Ge.__fv_disabled__=ve[_t]),kt&&!$e.isUndefined(ve[kt])&&(Ge.__fv_visible__=ve[kt])}const Je=p.value.find(We=>We.raw[s.value]===re),eo=p.value.findIndex(We=>We.raw[s.value]===re);if(Je){if(Je.raw=Ge,Object.keys(Je.data).forEach(We=>{Je.data[We].updateData(Ge)}),De){const{collapseField:We,disabledField:_t,checkedField:Et,visibleField:kt}=De;We&&!$e.isUndefined(ve[We])&&(Je.collapse=ve[We]),Et&&!$e.isUndefined(ve[Et])&&(Je.checked=ve[Et]),_t&&!$e.isUndefined(ve[_t])&&(Je.disabled=ve[_t]),kt&&!$e.isUndefined(ve[kt])&&(Je.visible=ve[kt])}p.value=[...p.value.slice(0,eo),Je,...p.value.slice(eo+1)],b.updateSummary()}}}function jt(re){return Object.prototype.hasOwnProperty.call(re,"raw")?b.hasRealChildren(re.raw):b.hasRealChildren(re)}function $t(re){const ve=b.dataView.value.find(De=>De[s.value]===re);return ve?ve[S.value]:""}function dl(){return S.value}i.watch(()=>t.showSetting,(re,ve)=>{re!==ve&&(re?R(l):A(l),$(l.value))});function ul(re){return p.value.filter(ve=>re.includes(ve.raw[t.idField]))}function fl(re){const ve=a.idField.value,De=p.value.find(Ge=>Ge.raw[ve]===re);De&&z.selectRow(De)}function ml(){C.keepSelectingOnPaging.value||we(),b.updateVisibleDataSummary(p.value)}e.expose({activeRowById:ye,addNewDataItem:Re,addNewChildDataItem:Ue,addChildrenToNode:Ze,collapseTo:ae,expandTo:fe,removeDataItem:dt,editDataItem:nt,acceptDataItem:ot,cancelDataItem:V,updateColumns:$,updateDataSource:G,selectItemById:J,selectItemByIds:je,getSelectedItems:Te,clearSelection:we,getSelectionRow:Ve,clickRowItemById:ue,unSelectItemByIds:Be,getCurrentRowId:Oe,reassignRowData:Ot,hasChildren:jt,getCollapseField:dl,getCollapseStatusById:$t,getVisibleDataByIds:ul,selectRowById:fl,updateDerivedData:ml});const pl=i.computed(()=>{const re={};return ge.shouldShowHorizontalScrollbar.value&&(re.paddingBottom="10px"),ge.shouldShowVirticalScrollbar.value&&(re.paddingRight="10px"),re}),hl=i.computed(()=>({...j.value,borderRadius:"5px"}));ce.getPagination(t,e,b,ge,M,C);const gl=i.computed(()=>({"d-flex":!0,"justify-content-between":T.value&&_.value,"justify-content-end":T.value&&!_.value,"position-relative":!0})),yl=i.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:vl}=ce.getSummary(t,b,B);return()=>i.createVNode("div",{ref:u,class:pe.value,style:hl.value,onWheel:He},[d.value&&Ft.value&&Ke(),i.createVNode("div",{ref:d,class:Ne.value,onMouseover:()=>h.value=!0,onMouseleave:()=>h.value=!1,style:pl.value},[d.value&&yt(p),d.value&&Fe(),d.value&&Me.value&&Ce(),d.value&&Mt(),d.value&&vt()]),d.value&&vl(),_.value&&i.createVNode("div",{class:gl.value},[_.value&&i.createVNode("div",{class:yl.value},[i.createVNode("div",null,["已选:"+P.value.length,i.createTextVNode(" 条")])])]),st(),O.value&&Tt()])}});ne.withInstall(pr);const hr=new Map([["appearance",Ht]]);function gr(t,e,n){return e}const yr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},vr={title:"step",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Jt={direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}},En=ht(Jt,yr,hr,gr,vr),It=i.defineComponent({name:"FStep",props:Jt,emits:["click"],setup(t,e){const n=i.ref(t.direction),o=i.ref(t.fill),r=i.ref(t.height),l=i.ref(t.steps),a=i.ref(t.activeIndex),s=i.computed(()=>({"f-progress-step-list":n.value==="horizontal","f-progress-step-list-block":n.value==="vertical","f-progress-step-horizontal-fill":n.value==="horizontal"&&o.value,"f-progress-step-vertical-fill":n.value==="vertical"&&o.value})),u=i.computed(()=>({height:n.value==="vertical"?`${r.value}px`:""}));function d(w,y){const b={step:!0,active:y===a.value,clickable:t.clickable,current:y===a.value,finish:y<a.value};return w.status&&(b[w.status]=!0),ne.getCustomClass(b,w.class||"")}function f(w,y){if(!t.clickable)return;const b={step:w,stepIndex:y};e.emit("click",b)}function c(w,y){const b={"f-progressstep-row":!0,"step-active":y===a.value,"step-current":y===a.value,"step-finish":y<a.value};return w.status&&(b["step-"+w.status]=!0),b}function m(w,y){const b={"step-icon":!0,"step-success":y,"f-icon":y,"f-icon-check":y};return ne.getCustomClass(b,w.icon||"")}function p(w,y){const b=[];return w.icon?b.push(i.createVNode("span",{class:m(w,!1)},null)):y>=a.value?b.push(i.createVNode("span",{class:"step-icon"},[y+1])):b.push(i.createVNode("span",{class:m(w,!0)},null)),b}function h(w,y){return{"step-name":!0,"step-name-success":y<a.value}}function v(w,y){return i.createVNode("div",{class:"f-progress-step-title"},[i.createVNode("p",{class:h(w,y)},[w.title])])}function F(w,y){return{"f-progress-step-line":!0,"f-progress-step-line-success":y===a.value}}function E(w,y){return y!==l.value.length-1}const x=i.computed(()=>({triangle:!0,"":n.value==="vertical"}));function S(){return l.value.map((w,y)=>i.createVNode("li",{class:d(w,y),onClick:b=>f(w,y)},[i.createVNode("div",{class:c(w,y)},[i.createVNode("div",{class:"f-progress-step-content"},[p(w,y),v(w,y)]),E(w,y)&&i.createVNode("div",{class:F(w,y)},[i.createVNode("span",{class:x.value},null)])])]))}return i.watch(()=>t.activeIndex,()=>{t.activeIndex>-1&&t.activeIndex<=l.value.length&&(a.value=t.activeIndex,S())}),()=>i.createVNode("div",{class:"f-progress-step"},[i.createVNode("ul",{class:s.value,style:u.value},[S()])])}}),br=i.defineComponent({name:"FStepDesign",props:Jt,emits:[],setup(t,e){const n=i.ref(t.direction),o=i.ref(t.fill),r=i.ref(t.height),l=i.ref(t.steps),a=i.ref(0),s=i.ref(t.clickable),u=i.ref(0),d=i.ref(),f=i.inject("design-item-context"),c=Xt(d,f);i.onMounted(()=>{d.value.componentInstance=c}),e.expose(c.value);const m=i.computed(()=>({"f-progress-step-list":n.value==="horizontal","f-progress-step-list-block":n.value==="vertical","f-progress-step-horizontal-fill":n.value==="horizontal"&&o.value,"f-progress-step-vertical-fill":n.value==="vertical"&&o.value})),p=i.computed(()=>({height:n.value==="vertical"?`${r.value}px`:""}));function h(_,P){const k={step:!0,active:P===a.value,clickable:s.value,"click-disable":_.disable,current:P===a.value};return P<a.value&&(k.finish=!0),_.status&&(k[_.status]=!0),_.hasOwnProperty("class")&&_.class.split(" ").reduce((O,I)=>(O[I]=!0,O),k),k}function v(_,P){}function F(_,P){const k={"f-progressstep-row":!0,"step-active":P===a.value,"step-current":P===a.value};return P<a.value&&(k["step-finish"]=!0),_.status&&(k["step-"+_.status]=!0),k}function E(_,P){const k={"step-icon":!0,"step-success":P,"k-icon":P,"k-i-check":P};return _.hasOwnProperty("icon")&&_.class.split(" ").reduce((O,I)=>(O[I]=!0,O),k),k}function x(_,P){const k=[];return _.icon?k.push(i.createVNode("span",{class:E(_,!1)},null)):P>=a.value||P===u.value?k.push(i.createVNode("span",{class:"step-icon"},[P+1])):k.push(i.createVNode("span",{class:E(_,!0)},null)),k}function S(_,P){return{"step-name":!0,"step-name-success":P<a.value}}function w(_,P){return i.createVNode("div",{class:"f-progress-step-title"},[i.createVNode("p",{class:S(_,P)},[_.title])])}function y(_,P){return{"f-progress-step-line":!0,"f-progress-step-line-success":P===a.value}}function b(_,P){return P!==l.value.length-1}const g=i.computed(()=>({triangle:!0,"":n.value==="vertical"}));function C(){return l.value.map((_,P)=>i.createVNode("li",{class:h(_,P),onClick:k=>void 0},[i.createVNode("div",{class:F(_,P)},[i.createVNode("div",{class:"f-progress-step-content"},[x(_,P),w(_,P)]),b(_,P)&&i.createVNode("div",{class:y(_,P)},[i.createVNode("span",{class:g.value},null)])])]))}return()=>i.createVNode("div",{ref:d,class:"f-progress-step"},[i.createVNode("ul",{class:m.value,style:p.value},[C()])])}});It.install=t=>{t.component(It.name,It)},It.register=(t,e,n,o)=>{t.step=It,e.step=En},It.registerDesigner=(t,e,n)=>{t.step=br,e.step=En};const Cr="root-viewmodel";class wr{constructor(e,n){le(this,"formSchemaUtils");le(this,"controlCreatorUtils");le(this,"designViewModelUtils");this.resolver=e,this.designerHostService=n,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(e){const n=this.createComponentRefNode(e),o=this.createComponentNode(e),r=this.createViewModeNode(e),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),n}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"),o=this.createFormComponentContents(e);return Object.assign(n,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getFormComponentClass()},formColumns:e.formColumns,contents:o}),n}getFormComponentClass(){const{templateId:e}=this.formSchemaUtils.getFormSchema().module;return e==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(e){const n=this.resolver.getSchemaByType("section");Object.assign(n,{id:e.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:e.componentName});const o=this.resolver.getSchemaByType("response-form"),r=[];Object.assign(o,{id:e.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:r}),n.contents=[o];const{selectedFields:l}=e;l==null||l.forEach(s=>{if(s.$type===ne.FormSchemaEntityField$Type.SimpleField){const u=$e.cloneDeep(s),d=this.resolveControlClassByFormColumns(e),f=this.controlCreatorUtils.setFormFieldProperty(u,"",d);f&&r.push(f)}});const{templateId:a}=this.formSchemaUtils.getFormSchema().module;return a==="double-list-in-tab-template"&&(n.appearance.class="f-section-grid f-section-in-main px-0 pt-0",n.fill=!0),[n]}resolveControlClassByFormColumns(e){let n="";switch(e.formColumns){case 1:{n="col-12";break}case 2:{n="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{n="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{n="col-12 col-md-6 col-xl-3 col-el-2";break}}return n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Cr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const n=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===ne.FormSchemaEntityField$Type.SimpleField){let l="blur";const a=r.type.name;(a===ne.FormSchemaEntityFieldTypeName.Enum||a===ne.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}}),n}}function Sr(t,e,n,o){var l,a,s,u,d,f;const r=n.parentComponentInstance;if(r&&o){const c=(l=r.schema)==null?void 0:l.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((a=n.bindingSourceContext)==null?void 0:a.entityTitle)||((u=(s=n.bindingSourceContext)==null?void 0:s.bindingEntity)==null?void 0:u.name)||"标题",componentType:"form",formColumns:c==="splitter-pane"?1:4,parentContainerId:r.schema.id,bindTo:((d=n.bindingSourceContext)==null?void 0:d.bindTo)||"/",selectedFields:(f=n.bindingSourceContext)==null?void 0:f.bindingEntityFields};return new wr(t,o).createComponent(p)}else return e}function xr(t,e,n){return e}ht({customClass:{type:String,default:""},customStyle:{type:String,defaut:""},visible:{type:Boolean,default:!0},adaptForLanguage:{type:Boolean,default:!0}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0},labelAutoOverflow:{description:"",type:"boolean",default:!1},adaptForLanguage:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Zt,Sr);const kn=[{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 Fr(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 Tr(t){var e;return"请输入正确的"+((e=kn.find(n=>n.key===t))==null?void 0:e.value)}const Mr={convertTo:(t,e,n,o)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation.type=n,t.editor.formatValidation.expression=Fr(n),t.editor.formatValidation.message=Tr(n)},convertFrom:(t,e,n)=>t.editor.formatValidation?e==="type"?t.editor.formatValidation[e]||"none":t.editor.formatValidation[e]:"none"},Vn={convertTo:(t,e,n,o)=>{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 _r extends tt.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 o,r;let n;if(((o=e==null?void 0:e.binding)==null?void 0:o.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(r=l==null?void 0:l.schemaField)!=null&&r.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n}},enableViewPassword:{description:"",title:"启用密码",visible:!1,type:"boolean"}})}getFormatValidation(e){var o,r,l;const n={title:"输入格式校验",description:"输入格式校验",properties:{type:{title:"输入类型",type:"enum",description:"输入类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:kn},refreshPanelAfterChanged:!0,$converter:Mr,parentPropertyID:"formatValidation"}}};return(o=e.editor.formatValidation)!=null&&o.type&&((r=e.editor.formatValidation)==null?void 0:r.type)!=="none"&&(n.properties.message={title:"输入错误提示",type:"string",description:"输入错误提示",$converter:Vn,parentPropertyID:"formatValidation"}),((l=e.editor.formatValidation)==null?void 0:l.type)==="custom"&&(n.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:Vn,parentPropertyID:"formatValidation"}),n}}var In=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(In||{});function Er(t,e,n){function o(){const a=n.componentId;if(!a)return!1;const s=t.formSchemaUtils.getViewModelIdByComponentId(a);if(!s)return!1;const{schema:u}=e,{designViewModelUtils:d}=t,f=d.getDgViewModel(s),c=f==null?void 0:f.fields.find(m=>m.id===u.binding.field);return!(!c||c.$type!==In.SimpleField)}function r(){const{schema:a}=e;return!!t.formSchemaUtils.getVariableById(a.binding.field)}function l(){var u;const{schema:a}=e;let s=!0;if(!t||!((u=a.binding)!=null&&u.field))return s;switch(a.binding.type){case Vt.Form:{s=o();break}case Vt.Variable:s=r()}return s}return{checkBindingFieldValidation:l}}ht({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Tn,Zt,void 0);const kr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"response-form-layout-setting",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"response-form-layout-setting"},initialState:{description:"",type:"object"}},required:["id","type"]},Vr={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};ut.createPropsResolver(Vr,kr,rr,xr);const Ir={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function Qt(){return new DOMException("The request is not allowed","NotAllowedError")}async function Pr(t){if(!navigator.clipboard)throw Qt();return navigator.clipboard.writeText(t)}async function Nr(t){const e=document.createElement("span");e.textContent=t,e.style.whiteSpace="pre",e.style.webkitUserSelect="auto",e.style.userSelect="all",document.body.appendChild(e);const n=window.getSelection(),o=window.document.createRange();n==null||n.removeAllRanges(),o.selectNode(e),n==null||n.addRange(o);let r=!1;try{r=window.document.execCommand("copy")}finally{n==null||n.removeAllRanges(),window.document.body.removeChild(e)}if(!r)throw Qt()}async function Br(t){try{await Pr(t)}catch(e){try{await Nr(t)}catch(n){throw n||e||Qt()}}}function Or(){async function t(e){await Br(e)}return{onCopy:t}}function jr(t,e,n,o){const r=i.ref(14),l=i.ref(140),a=i.ref(""),s=i.ref(o.value.length),u=i.computed(()=>o.value),d=i.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function f(c){if(c.currentTarget){const m=c.currentTarget.value||"";s.value=m.length}}return()=>i.createVNode(i.Fragment,null,[i.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:l.value,onInput:c=>f(c)},[u.value]),i.createVNode("span",{class:"textarea-wordcount",title:a.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+l.value])])}function $r(t,e,n,o){const r=jr(t,e,n,o),l=new Map([["text-area",r]]);function a(s){return l.get(s)||null}return{getEditorRender:a}}function Rr(){const t=i.ref(!1),e=i.ref("复制成功");return{feedbackStyle:i.computed(()=>{const o={position:"absolute",left:"50%",top:"50%","min-width":"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease",padding:"0 10px"};return o.opacity=t.value?"0.8":"0",o.display=t.value?"":"none",o}),feedbackMessage:e,toShowFeedback:t}}function Ar(t,e){const n=e.getEditorRender(t.promptEditorType);return()=>n&&n()}function Lr(t,e){function n(p){if(p==null)return 0;let h=0;for(let v=0;v<p.length;v++){const F=p.charCodeAt(v);F>=0&&F<=128?h++:h=h+2}return h}function o(p,h){if(p!==""&&p!==void 0&&p!==null){p=""+p;const v=p.length;let F="",E=0;for(let x=0;x<v;x++){const S=p.charAt(x);if(E++,encodeURI(S).length>4&&E++,F=F.concat(S),E>=h)return F=F.concat("..."),F}if(E<h)return p}return""}const r=i.computed(()=>!!t.value&&!!t.value.date),l=i.computed(()=>{const p=t.value&&t.value.date||"";return`${e.exception.happend} : ${p}`}),a=i.computed(()=>!!t.value&&!!t.value.detail),s=i.computed(()=>t.value?n(t.value.detail)>160:!1),u=i.ref(!1),d=i.computed(()=>u.value?e.exception.collapse:e.exception.expand),f=i.computed(()=>{const p=e.exception.detail+" : "+(t.value&&t.value.detail)||"";return u.value?p:o(p,160)}),c=i.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function m(){u.value=!u.value}return()=>i.createVNode("div",{class:"toast-msg-detail"},[r.value&&i.createVNode("div",null,[l.value]),a.value&&i.createVNode("div",{class:"exception_wrap"},[i.createVNode("div",{class:"exception_error_msg"},[i.createVNode("div",{innerHTML:f.value},null),s.value&&i.createVNode("span",{style:c.value,onClick:m},[d.value])])])])}function Hr(t){return()=>i.createVNode("p",{class:"toast-msg-detail",innerHTML:t.value},null)}function Dr(t,e,n,o,r){const l=i.ref(t.exceptionInfo),a=i.computed(()=>{const h=e.value==="question"?"warning":e.value,v={"f-icon":!0},F=`f-icon-${h}`;return v[F]=!0,v}),s=i.computed(()=>n.value||l.value&&l.value.message),u=i.computed(()=>o.value),d=i.computed(()=>!!o.value),f=i.computed(()=>!!l.value);function c(){return f.value?Lr(l,r):d.value?Hr(u):()=>null}const m=c(),p=i.computed(()=>r.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:a.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[i.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),m()])])}function Wr(t,e,n,o){const{onCopy:r}=e,{toShowFeedback:l}=n,a=i.ref(o.exception.copySuccess||"复制成功"),s=i.ref(o.exception.copy||"复制详细信息"),u=i.ref(t.exceptionInfo||{date:"",message:"",detail:""}),d=i.computed(()=>u.value&&u.value.detail||"");function f(c){r(d.value).catch(m=>{a.value=o.exception.copyFailed||"复制失败"}).finally(()=>{l.value=!0,setTimeout(()=>{l.value=!1},700)})}return()=>i.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[i.createVNode("span",{onClick:f,style:"cursor: pointer;"},[s.value])])}function qr(t,e,n,o,r){const l=i.ref(t.type),a=i.ref(t.buttons),s=i.ref(t.exceptionInfo),u=i.ref(r.ok||t.okButtonText),d=i.ref(r.cancel||t.cancelButtonText),f=i.ref(t.showCancelButton),c=i.ref(t.showOkButton),m=i.computed(()=>!!(a.value&&a.value.length)),p=i.computed(()=>s.value&&s.value.message&&s.value.detail),h=i.computed(()=>!(a.value&&a.value.length)&&(c.value||f.value)),v=Wr(t,n,o,r);u.value==="关闭"?u.value=r.close:u.value==="知道了"&&(u.value=r.exception.roger);function F(x){l.value==="question"&&e.emit("reject"),e.emit("close")}function E(x){l.value==="question"&&e.emit("accept"),e.emit("close")}return()=>i.createVNode("div",{class:"modal-footer"},[p.value&&v(),h.value&&f.value&&i.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:F},[d.value]),h.value&&c.value&&i.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:E},[u.value]),m.value&&a.value.length&&a.value.map(x=>i.createVNode("button",{type:"button",onClick:x.handle,class:x.class},[x.iconClass&&i.createVNode("span",{class:x.iconClass},null),x.text]))])}function zr(t){const{t:e,locale:n}=ct.useI18n();function o(r,l,a){return l===a?e(r):l}return{yes:o("messageBox.yes")||"是",no:o("messageBox.no")||"否",close:o("messageBox.close")||"关闭",ok:o("messageBox.ok",t.okButtonText,"确定")||"确定",cancel:o("messageBox.cancel",t.cancelButtonText,"取消")||"取消",title:o("messageBox.title")||"系统提示",errorTitle:o("messageBox.errorTitle")||"错误提示",exception:{expand:o("messageBox.exception.expand")||"展开",collapse:o("messageBox.exception.collapse")||"收起",happend:o("messageBox.exception.happend")||"发生时间",detail:o("messageBox.exception.detail")||"详细信息",copy:o("messageBox.exception.copy")||"复制详细信息",copySuccess:o("messageBox.exception.copySuccess")||"复制成功",copyFailed:o("messageBox.exception.copyFailed")||"复制失败",roger:o("messageBox.exception.roger")||"知道了"},locale:n.value}}const Wt=i.defineComponent({name:"FMessageBox",props:Ir,emits:["accept","reject","close"],setup(t,e){const n=zr(t),o=i.ref(t.type),r=i.ref(t.title),l=i.ref(t.detail),a=i.computed(()=>{const E={"modal-tips":!0,"d-flex":!0,"flex-row":!0},x=`messager-type-${o.value}`;return E[x]=!0,E}),s=i.computed(()=>{const E={cursor:"default"};return o.value==="prompt"?E.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(E.padding="0.5rem 1.5rem 1rem 1.5rem"),E}),u=Or(),d=$r(t,o,r,l),f=Rr(),{feedbackStyle:c,feedbackMessage:m}=f;m.value=n.exception.copySuccess;function p(){return i.createVNode("div",{style:c.value},[m.value])}function h(){switch(o.value){case"prompt":return Ar(t,d);default:return Dr(t,o,r,l,n)}}const v=h(),F=qr(t,e,u,f,n);return()=>i.createVNode("div",{class:"farris-messager"},[!t.exceptionInfo&&i.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),i.createVNode("section",{class:a.value,style:s.value},[v()]),F(),p()])}}),lt=class lt{static show(e){const n=i.reactive({...e}),o=!1,r=n.type==="error"||n.type==="prompt",l=n.type==="error"?"错误提示":n.type==="prompt"&&n.title||"",a=n.acceptCallback||(()=>{}),s=n.rejectCallback||(()=>{});let u=null,d=new pn(lt.app);const f=()=>{u&&(u==null||u.destroy(),d=null)};return u=d==null?void 0:d.open({class:"modal-message modal-message-type-info",title:l,showButtons:o,showHeader:r,width:n.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>i.createVNode(Wt,i.mergeProps(n,{onAccept:a,onReject:s,onClose:f}),null)}),d==null?void 0:d.getCurrentModal()}static info(e,n){const o=i.reactive({type:"info",title:e,detail:n,okButtonText:"知道了",showCancelButton:!1});lt.show(o)}static warning(e,n){const o=i.reactive({type:"warning",title:e,detail:n,okButtonText:"知道了",showCancelButton:!1});lt.show(o)}static success(e,n){const o=i.reactive({type:"success",title:e,detail:n,okButtonText:"关闭",showCancelButton:!1});lt.show(o)}static error(e,n,o){const r=i.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:o,message:e,detail:n}});lt.show(r)}static prompt(e,n){const o=i.reactive({type:"prompt",title:e,detail:n,okButtonText:"确定",cancelButtonText:"取消"});lt.show(o)}static question(e,n,o,r){const l=i.reactive({type:"question",title:e,detail:n,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:o,rejectCallback:r});lt.show(l)}};le(lt,"app",null);let qt=lt;Wt.install=t=>{t.component(Wt.name,Wt),qt.app=t,t.provide("FMessageBoxService",qt)};class Pt extends _n{constructor(n,o){super(n,o);le(this,"responseLayoutEditorFunction");le(this,"bindingVarible");le(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=dr(this.formSchemaUtils)}getCommonPropertyConfig(n,o,r="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(n,o,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n,o),this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"form-group")}getPropertyConfig(n,o){return this.getCommonPropertyConfig(n,o,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressions=this.getExpressionConfig(n,"Field"),this.propertyConfig}getGridFieldEdtiorPropConfig(n,o){return this.propertyConfig.categories={},this.getCommonPropertyConfig(n,o,"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,o,r="Card"){const l=this;this.setDesignViewModelField(n);const{canChangeControlType:a,editorTypeList:s}=this.getAvailableEditorType(n),u={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:s,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:"不显示"}]}},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(d,f,c){if(d)switch(d&&d.propertyID){case"type":{l.changeControlType(n,d,o);break}case"label":{d.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(n,d,c);break}}}};return r.toLocaleLowerCase()!=="card"&&delete u.properties.showLabelType,u}checkCanChangeControlType(n,o){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!==ne.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(n){var l;const o=this.checkCanChangeControlType(n,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=Q[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===ne.FormSchemaEntityField$Type.SimpleField?r=Bt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(r=Bt.getEditorTypesByMDataType(this.bindingVarible.type,this.designViewModelField.multiLanguage)),{canChangeControlType:o,editorTypeList:r}}changeBindingField(n,o,r){o.needRefreshEntityTree=!0}getAppearanceProperties(n,o){const r=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"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(n,r.componentId)}}},setPropertyRelates(l,a){if(l)switch(l&&l.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,r.componentId||n.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(n.id,o),delete n.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(l.propertyValue,n.id,this.componentId),mt.value++;break;case"style":{mt.value++;break}}}}}getEditorProperties(n){return this.getComponentConfig(n)}changeControlType(n,o,r){const l=o.propertyValue,a=r&&r.parent&&r.parent.schema;if(!a)return;const s=a.contents.findIndex(f=>f.id===n.id);if(s===-1)return;const u=a.contents[s];let d;if(this.designViewModelField){const m=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(h=>h.id===this.designViewModelField.id).fieldSchema||{};m.editor||(m.editor={}),m.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,m,!1),d=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}d||(d=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(d,{id:u.id,appearance:u.appearance,size:u.size,label:u.label,binding:u.binding}),Object.prototype.hasOwnProperty.call(u,"visible")&&Object.assign(d,{visible:u.visible}),u.editor&&["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(u.editor,f)&&(d.editor[f]=u.editor[f])}),r!=null&&r.updateContextSchema?r.updateContextSchema(d):(r.schema=Object.assign(u,d),Object.assign(n,d)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(f=>f.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(f=>f.classList.remove("dgComponentFocused")),mt.value++,i.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(n,o={},r={},l){var m;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},o),s=(m=n.binding)!=null&&m.field?[]:["Const","Variable","StateMachine"],u=this.getPropertyEditorParams(n,s,"readonly"),d=this.getPropertyEditorParams(n,s,"required"),f={readonly:{description:"",title:"只读",editor:u},required:{description:"",title:"必填",type:"boolean",editor:d},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const p in r)f[p]=Object.assign(f[p]||{},r[p]);const c=this;return{...a,properties:{...f},setPropertyRelates(p,h){if(p){switch(p.propertyID){case"readonly":case"required":c.afterMutilEditorChanged(n,p);break}l&&l.bind(c)(p,n,h)}}}}updateUnifiedLayoutAfterControlChanged(n,o,r){const l=n.split(" ");let a=l.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),s=l.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),u=l.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),d=l.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));a=a||"col-12",s=s||"col-md-"+a.replace("col-",""),u=u||"col-xl-"+s.replace("col-md-",""),d=d||"col-el-"+u.replace("col-xl-","");const f={id:o,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(u.replace("col-xl-",""),10),columnInEL:parseInt(d.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,f)}updateUnifiedLayoutAfterResponseLayoutChanged(n,o){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(n);if(!r||!r.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,l,1),o){const h=l.find(v=>v.id===o.id);Object.assign(h||{},o)}const a=l.map(h=>h.columnInSM),s=l.map(h=>h.columnInMD),u=l.map(h=>h.columnInLG),d=l.map(h=>h.columnInEL),f=this.checkIsUniqueColumn(a)?a[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null,m=this.checkIsUniqueColumn(u)?u[0]:null,p=this.checkIsUniqueColumn(d)?d[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:c,uniqueColClassInLG:m,uniqueColClassInEL:p})}checkIsUniqueColumn(n){const o=new Set(n);return Array.from(o).length===1}getItemCollectionEditor(n,o,r){return o=o||"value",r=r||"name",{editor:{columns:[{field:o,title:"值",dataType:"string"},{field:r,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:o,nameField:r,requiredFields:[o,r],uniqueFields:[o,r],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===ne.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(n,o){n.binding&&n.binding.type===Vt.Form&&n.binding.field?(o.find(a=>a.label==="fieldValueChanging")||o.push({label:"fieldValueChanging",name:"绑定字段值变化前事件"}),o.find(a=>a.label==="fieldValueChanged")||o.push({label:"fieldValueChanged",name:"绑定字段值变化后事件"}),this.designViewModelField&&(n.fieldValueChanging=this.designViewModelField.valueChanging,n.fieldValueChanged=this.designViewModelField.valueChanged)):o=o.filter(r=>r.label!=="fieldValueChanging"&&r.label!=="fieldValueChanged")}getControlMethodType(n){if(!n.binding)return n.type;switch(n.binding.type){case Vt.Form:return n.binding.path||n.type;case Vt.Variable:return n.binding.fullPath||n.type}return n.type}getEventPropertyConfig(n,o="card",r,l){const a=this;let s=[];r&&(s=s.concat(r)),this.appendFieldValueChangeEvents(n,s);const u=a.eventsEditorUtils.formProperties(n,a.viewModelId,s);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(u),tabId:"commands",tabName:"交互",setPropertyRelates(c,m){const p=c.propertyValue;delete n[a.viewModelId],p&&(p.setPropertyRelates=this.setPropertyRelates,p.controlInfo={type:a.getControlMethodType(n),name:n.title},a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,p.events,p)),l&&l(c,m,p);const h=a.designViewModelUtils.getDgViewModel(a.viewModelId);h&&a.designViewModelField&&h.changeField(a.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged})}}}getExpressionConfig(n,o,r=["compute","dependency","validate"],l){return new Mn(this.formSchemaUtils).getExpressionConfig(n,o,r,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,o,r){var l;n.editor[o]!==r?n.editor[o]=r:(l=this.getFormDesignerInstance())==null||l.reloadPropertyPanel()}setBooleanValue(n,o,r){let l=r;this.getBindingDataType()==="string"&&(l=(l||"").trim()||(o==="trueValue"?"true":"false"));const s=o==="trueValue"?"falseValue":"trueValue";n.editor[s]===l&&(l=l+1),this.updatePropertyValue(n,o,l)}getBooleanValueConverter(){return{convertFrom:(n,o)=>n.editor[o],convertTo:(n,o,r)=>{this.setBooleanValue(n,o,r)}}}}const Pn=Symbol("FModalService");St.install=t=>{t.component(St.name,St);const e=new pn(t);t.provide(Pn,e),t.provide("FModalService",e)},St.register=(t,e,n,o)=>{t.modal=St,e.modal=Mi,o.modal={callbackResolver:_i}};function Nn(t,e){function n(){const o=t.beforeOpen||t.beforeClickButton||null;let r=Promise.resolve(!0);if(o){const l=o(e.value);if(typeof l>"u")return r;typeof l=="boolean"?r=Promise.resolve(l):r=l}return r}return{judgeCanOpen:n}}function Gr(t,e,n,o,r){const l=i.ref(t.buttonBehavior),a=i.ref(t.popupOnInput),s=i.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:u}=Nn(t,r),d=i.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),f=i.inject(Pn,null),c=i.ref();async function m(v){if(await u()&&d.value){const F=!!e.slots.default;if(l.value==="Modal"){const E=t.modalOptions,x=f==null?void 0:f.open({...E,render:()=>e.slots.default&&e.slots.default()});c.value=x==null?void 0:x.modalRef}l.value==="Overlay"&&wi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),F&&l.value==="Popup"&&o.togglePopup(!0),F&&a.value&&o.hidePopup(),e.emit("clickButton",{origin:v,value:t.modelValue})}}function p(v){e.emit("mouseEnterIcon",v)}function h(v){e.emit("mouseLeaveIcon",v)}return{buttonGroupClass:s,onClickButton:m,onMouseEnterButton:p,onMouseLeaveButton:h,modalRef:c}}function Ur(t,e,n,o,r,l){const a=i.ref(!1),s=i.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:u,hasClearClass:d}=l;function f(h){a.value=h,d.value=h}i.watch(r,()=>{f(!!r.value)});function c(h){const v=!t.readonly&&!t.disable&&t.editable,F=!t.editable;h.stopPropagation(),(v||F)&&(u(""),r.value="",f(!a.value),e.emit("clear"))}function m(h){if(s.value){if(!n.value){f(!1);return}!t.disable&&!t.readonly&&f(!0)}}function p(h){s.value&&f(!1)}return{enableClearButton:s,showClearButton:a,onClearValue:c,onMouseEnterTextBox:m,onMouseLeaveTextBox:p}}function Yr(t,e,n,o,r){const l=i.computed(()=>t.popupOnInput),a=i.computed(()=>t.popupOnFocus),{shouldPopupContent:s,closeAllPopover:u}=r,d=i.ref(!1),f=i.computed(()=>t.enableTitle?n.value:""),c=i.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),m=i.computed(()=>t.readonly||!t.editable),p=i.ref(!1),h=i.computed(()=>!t.disable&&p.value),v=i.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),F=i.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":h.value,"input-group--has-clear":t.enableClear&&d.value}));function E(k,O=!0){n.value=k,O&&(e.emit("change",k),e.emit("update:modelValue",k))}function x(k){s.value=!1,E(k,!0)}i.watch(()=>t.modelValue,k=>{n.value=k});function S(k){p.value=!1,e.emit("blur",k),k.stopPropagation()}function w(k){e.emit("click",k),u(),e.slots.default&&!t.disable&&!t.readonly&&t.popupOnClick&&r.togglePopup()}function y(k){!t.disable&&!t.readonly&&(p.value=!0,m.value||(e.emit("focus",k),a.value&&!s.value&&r.popup()))}function b(k){e.emit("input",k);const O=k.target.value;o.value=O,n.value!==O&&E(O,t.updateOn==="change"),l.value&&!s.value&&r.popup()}function g(k){k.target.tagName!=="INPUT"&&k.preventDefault(),k.stopPropagation()}function C(k){e.emit("keydown",k)}function _(k){k.key==="Enter"&&(l.value||a.value)&&r.hidePopup(),e.emit("keyup",k)}function P(k){const O=k.target.value;k.stopPropagation(),E(O)}return{hasFocusedTextBox:h,isTextBoxReadonly:m,textBoxClass:v,textBoxPlaceholder:c,textBoxTitle:f,inputGroupClass:F,hasClearClass:d,changeTextBoxValue:E,commitValue:x,onBlurTextBox:S,onClickTextBox:w,onFocusTextBox:y,onInput:b,onKeyDownTextBox:C,onKeyUpTextBox:_,onMouseDownTextBox:g,onTextBoxValueChange:P}}const xt="FarrisVue_PopoverInstancesKey";function Xr(t,e,n,o){const r=i.ref(),l=i.ref(!1),{judgeCanOpen:a}=Nn(t,o);i.watch(()=>r.value,(p,h)=>{window[xt]=window[xt]||new WeakMap,p?window[xt].set(n.value,p):window[xt].delete(n.value)});function s(){if(window[xt]){const p=window[xt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(h=>{const v=p.get(h);v&&h!==n.value&&!n.value.closest(".popover-fitcontent")&&v.hide()})}}function u(){const p=r.value;p&&p.show(n.value)}async function d(p=!1){if(!!e.slots.default){if(!p&&!l.value&&!await a())return;l.value=!l.value,await i.nextTick(),u()}}async function f(p=!1){if(!!e.slots.default){if(!p&&!await a())return;l.value=!0,await i.nextTick(),u()}}function c(){l.value=!1}function m(){l.value=!0,i.nextTick(()=>{u()})}return{hidePopup:c,showPopup:m,popup:f,shouldPopupContent:l,togglePopup:d,popoverRef:r,closeAllPopover:s}}function Zr(t,e,n){const o=i.ref(),{isTextBoxReadonly:r,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:s,onBlurTextBox:u,onClickTextBox:d,onFocusTextBox:f,onInput:c,onKeyDownTextBox:m,onKeyUpTextBox:p,onMouseDownTextBox:h,onTextBoxValueChange:v}=n,F=i.ref(t.id),{uuid:E}=ne.useGuid();i.onMounted(()=>{var b,g;t.selectOnCreated&&((b=o.value)==null||b.select()),t.focusOnCreated&&((g=o.value)==null||g.focus({preventScroll:!0})),F.value||(F.value="button-edit_"+E(8)),F.value=F.value+"-textbox"});const x=i.ref(!1),S=b=>{b.preventDefault(),x.value=!0},w=b=>{b.preventDefault(),x.value=!1,c(b)};function y(b){x.value||c(b)}return()=>i.createVNode("input",{id:t.id?t.id+"-textbox":void 0,ref:o,name:"input-group-value",autocomplete:t.autoComplete?"on":"off",class:l.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:a.value,readonly:r.value,tabindex:t.tabIndex,title:s.value,type:t.inputType,value:e.value,onBlur:u,onChange:v,onClick:d,onFocus:f,onInput:y,onKeydown:m,onKeyup:p,onMousedown:h,onCompositionend:w,onCompositionstart:S},null)}function Jr(t,e,n){const o=i.ref(t.separator),r=i.computed(()=>t.readonly||t.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:s,onClickTextBox:u,textBoxPlaceholder:d}=n,f=i.computed(()=>e.value?e.value.split(o.value).map(h=>({name:h,selectable:!0})):[]);function c(h){l(h.map(v=>v.name).join(o.value),!0)}i.watch(()=>t.separator,h=>{o.value=h});const m=i.ref(!t.disable&&!t.readonly);i.watch([()=>t.disable,()=>t.readonly],([h,v],[F,E])=>{m.value=!h&&!v});function p(h){u(h)}return()=>i.createVNode(no,{tabindex:t.tabIndex,onFocus:a,onBlur:s,id:`${t.id}-tag-editor`,class:"form-control",placeholder:d.value,data:f.value,showClose:!r.value,showInput:!0,disable:r.value,onChange:c,onClick:p},null)}function Qr(t,e,n,o){const{buttonGroupClass:r,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:s}=n,{enableClearButton:u,showClearButton:d,onClearValue:f}=o,c=i.ref(),m=$e.debounce(h=>{l(h)},t.buttonBehavior==="Modal"?0:200),p=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>i.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:r.value},[u.value&&i.withDirectives(i.createVNode("span",{class:"input-group-text input-group-clear",onClick:f,onMousedown:p},[i.createVNode("i",{class:"f-icon modal_close"},null)]),[[i.vShow,d.value]]),e.slots.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",onClick:m,onMouseenter:a,onMouseleave:s},[e.slots.buttonContent()]):t.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:c,onClick:h=>m(h),onMouseenter:a,onMouseleave:s},null):null]),buttonHandleElement:c}}function Kr(t,e,n){const o=i.ref(t.popupMinWidth),{hidePopup:r,popoverRef:l}=n;return()=>i.createVNode(to,{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:o.value,class:t.popupClass,offsetX:t.popupOffsetX,onHidden:r,limitContentBySpace:t.limitContentBySpace},{default:()=>{var a,s;return[(s=(a=e.slots).default)==null?void 0:s.call(a)]}})}const ea=i.defineComponent({name:"FButtonEdit",props:gi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(t,e){const n=i.ref(),o=i.ref(t.customClass),r=i.ref(t.modelValue),l=Xr(t,e,n,r),{shouldPopupContent:a,hidePopup:s,showPopup:u,togglePopup:d}=l,f=Gr(t,e,n,l,r),c=i.ref(""),m=Yr(t,e,r,c,l),{hasFocusedTextBox:p,commitValue:h,inputGroupClass:v}=m,F=Ur(t,e,r,p,c,m),{onMouseEnterTextBox:E,onMouseLeaveTextBox:x}=F,S=i.computed(()=>{const I={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return o.value&&o.value.split(" ").reduce((M,T)=>(M[T]=!0,M),I),I}),w=i.computed(()=>({overflow:t.wrapText?"hidden":""}));function y(){if(!t.multiSelect||t.inputType!=="tag"||!n.value)return 0;let I=0;const M=Array.from(n.value.querySelectorAll(".farris-tag-item"));return M&&M.length&&(I=M.map(T=>T.offsetTop).filter(T=>T>20).length),I}const b=i.ref(y());i.onUpdated(()=>{b.value=y()});function g(){return t.multiSelect&&t.inputType==="tag"?()=>i.createVNode(i.Fragment,null,[Jr(t,r,m)(),!!b.value&&i.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[i.createVNode("span",{class:"multi--more-text"},[i.createTextVNode("+"),b.value])])]):Zr(t,r,m)}let C=g();i.watch([()=>t.multiSelect,()=>t.inputType],()=>{C=g()});const{renderButtonGroup:_,buttonHandleElement:P}=Qr(t,e,f,F),k=Kr(t,e,l),O={displayText:c,commitValue:h,elementRef:n,hidePopup:s,showPopup:u,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:d,openDialog:()=>{P.value&&t.buttonBehavior==="Modal"&&P.value.click()},getModal:()=>{var I;return t.buttonBehavior==="Modal"?(I=f.modalRef.value)==null?void 0:I.value:null}};return i.onMounted(()=>{n.value.componentInstance=O,window.onresize=()=>{document.body.click()}}),i.onBeforeUnmount(()=>{var I;window.onresize=null,(I=window[xt])==null||I.delete(n.value)}),e.expose(O),()=>{var I,M;return i.createVNode(i.Fragment,null,[i.createVNode("div",i.mergeProps(e.attrs,{ref:n,class:S.value,id:t.id?t.id:void 0,style:w.value}),[i.createVNode("div",{id:t.id?`${t.id}-input-group`:void 0,class:v.value,onMouseenter:E,onMouseleave:x},[(M=(I=e.slots).precontent)==null?void 0:M.call(I),C(),_()])]),a.value&&k()])}}}),Bn=new Map([["appearance",Ht],["column","columnOption"],["command","commandOption"]]),On=new Map([]),ta="root-viewmodel";class na{constructor(e,n){le(this,"formSchemaUtils");le(this,"controlCreatorUtils");le(this,"designViewModelUtils");le(this,"useFormCommand");le(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),o=this.createComponentNode(e),r=this.createViewModeNode(e),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(n,e,r)}wrapContainerSectionForComponent(e,n,o){var u,d,f,c,m,p,h,v,F,E,x;const r=(d=(u=n==null?void 0:n.parentComponentInstance)==null?void 0:u.schema)==null?void 0:d.type,l=(m=(c=(f=n==null?void 0:n.parentComponentInstance)==null?void 0:f.schema)==null?void 0:c.appearance)==null?void 0:m.class,a=(h=(p=this.formSchemaUtils.getFormSchema())==null?void 0:p.module)==null?void 0:h.templateId;if(r===ft.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const s=[ft.DgControl["content-container"].type,ft.DgControl["response-layout-item"].type,ft.DgControl["splitter-pane"].type];if(r&&s.includes(r)){const S=this.resolver.getSchemaByType("section",{parentComponentInstance:n.parentComponentInstance,mainTitle:n.componentName},this.designerHostService);if(S&&S.contents&&S.contents.length){const w=S.contents[0];return w.contents=[e],this.appendAddDeleteBtnToParentContainer(w,n,o),S}}return this.appendAddDeleteBtnToParentContainer((v=n==null?void 0:n.parentComponentInstance)==null?void 0:v.schema,n,o),r===ft.DgControl["tab-page"].type&&(F=n.parentComponentInstance)!=null&&F.parent&&(E=n.parentComponentInstance)!=null&&E.parent.updateToolbarItems&&((x=n.parentComponentInstance)==null||x.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,n,o){const r=e.type,l=o.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(),s=ft.DgControl["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",u=this.resolver.getSchemaByType(s),d=[Object.assign({},u,{id:`button-add-${n.componentId}`,type:s,text:"新增",disabled:a.find(f=>f.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,onClick:`root-viewModel.${o.id}.${l}AddItem1`}),Object.assign({},u,{id:`button-remove-${n.componentId}`,type:s,text:"删除",disabled:a.find(f=>f.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,onClick:`root-viewModel.${o.id}.${l}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(d),this.appendAddAndDeleteCommands(o),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var f;const n=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),o=ne.useGuid().guid(),r=ne.useGuid().guid(),l=this.resolveCommandController(),a={id:o,code:`${n}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},s={id:r,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(s)),e.commands.push(a,s),this.formSchemaUtils.getFormSchema().module.webcmds.find(c=>c.id===l).refedHandlers.push({host:o,handler:"AddItem"},{host:r,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"],o=e.find(l=>n.includes(l.id));if(o)return o.id;const r="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:r,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),r}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"),o=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:o}),n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:ta,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var r,l,a;const{templateId:n}=this.formSchemaUtils.getFormSchema().module,o=(a=(l=(r=e.parentComponentInstance)==null?void 0:r.schema)==null?void 0:l.appearance)==null?void 0:a.class;return n==="double-list-in-tab-template"||["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,c,m;const n=(m=(c=(f=e.parentComponentInstance)==null?void 0:f.schema)==null?void 0:c.appearance)==null?void 0:m.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let r;if(o==="double-list-in-tab-template"){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),r=p}else if((o==="double-list-template"||o==="tree-list-template")&&(n!=null&&n.includes("f-page-content-main"))){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),r=p}else{const p=this.resolver.getSchemaByType("content-container");Object.assign(p,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),r=p}const l=this.resolver.getSchemaByType("data-grid"),a=[],s=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),u=e.editable&&s.length>0&&s.findIndex(p=>p.id==="editable")>-1;Object.assign(l,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:u,dataSource:e.dataSource||"",editable:u?"viewModel.stateMachine['editable']":!1,pagination:{enable:!e.editable}}),r.contents=[l];const{selectedFields:d}=e;return d==null||d.forEach(p=>{if(p.$type===ne.FormSchemaEntityField$Type.ComplexField)return;const h=$e.cloneDeep(p),v=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",h,"",u);v&&a.push(v)}),[r]}assembleViewModelFields(e){const n=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===ne.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=r.type.name;(a===ne.FormSchemaEntityFieldTypeName.Enum||a===ne.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),n}}function jn(t,e,n,o){var l,a,s,u,d,f,c;const r=n.parentComponentInstance;if(r&&o){const m=Math.random().toString(36).slice(2,6),p={componentId:`data-grid-${m}`,componentName:((l=n.bindingSourceContext)==null?void 0:l.entityTitle)||((s=(a=n.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:s.name)||`表格-${m}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((u=n.bindingSourceContext)==null?void 0:u.bindTo)||"",dataSource:(f=(d=n.bindingSourceContext)==null?void 0:d.bindingEntity)==null?void 0:f.label,selectedFields:(c=n.bindingSourceContext)==null?void 0:c.bindingEntityFields};return new na(t,o).createComponent(p)}else return e}function $n(t,e,n){return e}const oa={$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"]},Rn={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},ia=ht(Rn,oa,Bn,jn),ra=new Map([["appearance",Ht]]);function aa(t,e,n){return e}const la={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:[]}}}}}},sa={$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"]},An={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"}};ht(An,sa,ra,aa,la);const ca={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 da(t,e){function n(l){const a=[];let s=l.nextNode();for(;s;)a.push(s),s=l.nextNode();return a}function o(l,a){const s=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return n(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:m})=>{const p=[];let h=0;for(;h<m.length;){const v=m.indexOf(a,h);if(v===-1)break;p.push(v),h=v+a.length}return p.map(v=>{const F=new Range;return F.setStart(c,v),F.setEnd(c,v+a.length),F})}).flat()}function r(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=o(e.value,l.toLocaleLowerCase()),s=new Highlight(...a);CSS.highlights.set("search-result",s)}return{search:r}}function Ln(t,e,n,o,r,l,a,s,u,d){const f=i.ref(t.size),c=i.ref(t.textField),m=i.ref(t.titleField),p=i.ref(t.disableField),h=i.computed(()=>{var C,_;return((C=t.selection)==null?void 0:C.multiSelect)&&((_=t.selection)==null?void 0:_.showCheckbox)}),{onMouseenterItem:v,onMouseoverItem:F,onMouseoutItem:E}=l,{getKey:x,listViewItemClass:S,onCheckItem:w,onClickItem:y}=a,b=i.computed(()=>{const C={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return t.itemClass?C:{margin:f.value==="small"?"0.25rem 0":"8px 0",...C}});function g(C,_,P){return C.checked=s.findIndexInSelectedItems(C)>-1,i.createVNode("li",{class:S(C,_),id:x(C,_),key:x(C,_),onClick:k=>y(C,_,k),onMouseenter:k=>v(k,C,_),onMouseover:k=>F(k,C,_),onMouseout:k=>E(k,C,_)},[h.value&&i.createVNode("div",{class:"f-list-select",onClick:k=>k.stopPropagation()},[i.createVNode(Gt.FCheckbox,{id:"list-"+x(C,_),customClass:"listview-checkbox float-left",disabled:C[p.value],checked:C.checked,"onUpdate:checked":k=>C.checked=k,onChange:k=>{w(C,_,!k.checked)}},null)]),i.createVNode("div",{class:"f-list-content"},[i.createVNode("div",{class:t.itemContentClass,style:b.value,title:C.raw[m.value]||C.raw[c.value]},[C.raw[c.value]])])])}return{renderItem:g}}function ua(t,e,n,o,r,l,a,s,u,d){const f=i.ref(t.multiSelect),c=i.ref(t.disableField),m=i.ref(t.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:v}=l,{getKey:F,listViewItemClass:E,listViewItemStyle:x,onCheckItem:S,onClickItem:w}=a;function y(g,C,_){return t.contentTemplate?i.createVNode(i.Fragment,null,[t.contentTemplate({item:g.raw,index:C,selectedItem:_})]):e.slots.content?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.content({item:g.raw,index:C,selectedItem:_})]):i.createVNode("div",{style:"margin: 10px 0;"},[g.raw[m.value||"name"]])}function b(g,C,_){return i.createVNode("li",{class:E(g,C),id:F(g,C),key:F(g,C),style:x(g,C),onClick:P=>w(g,C,P),onMouseenter:P=>p(P,g,C),onMouseover:P=>h(P,g,C),onMouseout:P=>v(P,g,C)},[f.value&&i.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[i.createVNode(Gt.FCheckbox,{id:"list-"+F(g,C),customClass:"listview-checkbox",disabled:g[c.value]||!g.checked,checked:g.checked,"onUpdate:checked":P=>g.checked=P,onChange:P=>S(g,C,!P.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[y(g,C,_)])])}return{renderItem:b}}function fa(t,e,n,o,r,l,a,s,u,d){const f=i.ref(t.multiSelect),c=i.ref(t.disableField),m=i.ref(t.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:v}=l,{getKey:F,listViewItemClass:E,onCheckItem:x,onClickItem:S}=a,{dragstart:w,dragenter:y,dragover:b,dragend:g}=o,{removeItem:C}=u,_=i.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function P(T,j=""){const W=T.target;W.title=W.scrollWidth>W.clientWidth?j:""}function k(T){return i.createVNode("div",{style:_.value,onMouseenter:j=>P(j,T.raw[m.value||"name"])},[T.raw[m.value||"name"]])}function O(){return e.slots.itemContent?e.slots.itemContent:k}const I=O();function M(T,j,W){return i.createVNode("li",{class:E(T,j),id:F(T,j),key:F(T,j),onClick:N=>S(T,j,N),onMouseenter:N=>p(N,T,j),onMouseover:N=>h(N,T,j),onMouseout:N=>v(N,T,j),draggable:"true",onDragstart:N=>w(N,T,j),onDragenter:N=>y(N,j),onDragend:N=>g(N,T),onDragover:N=>b(N)},[f.value&&i.createVNode("div",{class:"f-list-select",onClick:N=>N.stopPropagation()},[i.createVNode(Gt.FCheckbox,{id:"list-"+F(T,j),customClass:"listview-checkbox",disabled:T[c.value]||!T.checked,checked:T.checked,"onUpdate:checked":N=>T.checked=N,onChange:N=>x(T,j,!N.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[I(T)]),i.createVNode("div",{class:"f-list-remove",onClick:N=>C(j)},[i.createVNode("div",{class:"f-list-remove-icon"},[i.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),i.createVNode("div",{class:"f-list-handle"},[i.createVNode("div",null,[i.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:M}}function ma(t,e,n,o,r,l,a,s,u,d){var F;const f=i.ref(((F=t.group)==null?void 0:F.groupFields)||[]),{collpaseGroupIconClass:c}=r,{toggleGroupRow:m}=d;function p(E,x){x.collapse=!x.collapse,n.value=m(x.collapse?"collapse":"expand",x,n.value)}function h(E,x,S){return e.slots.group?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.group({item:E.raw,index:x,selectedItem:S})]):i.createVNode("div",{class:"f-navlookup-recentHeader",onClick:w=>p(w,E)},[i.createVNode("div",{class:"fv-grid-group-row-icon"},[i.createVNode("span",{class:c(E)},null)]),i.createVNode("div",{class:"f-navlookup-recommandLabel"},[E.raw[f.value[E.layer]]])])}function v(E,x,S){return E.layer>-1&&h(E,x,S)}return{renderItem:v}}function pa(t,e,n,o){const{dataView:r}=n,{updateSelectedItems:l}=o;function a(s){if(s>-1&&s<r.value.length){if(t!=null&&t.checkBeforeRemoveItem&&!t.checkBeforeRemoveItem(r.value[s]))return;const u=r.value.splice(s,1);l(),e.emit("removeItem",u[0])}}return{removeItem:a}}function ha(t,e,n,o,r,l,a,s,u,d){const{t:f}=ct.useI18n(),c=i.ref(t.view),m=i.ref(t.view==="CardView"),p=i.ref({}),h=i.ref(f("listView.emptyMessage")),v=pa(t,e,o,u),F=i.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":m.value,"flex-wrap":m.value})),E=i.computed(()=>!!n.value&&n.value.length>0),x=i.computed(()=>n.value.length===0);i.computed(()=>x.value&&!e.slots.empty);function S(){return c.value==="SingleView"?Ln:c.value==="DraggableView"?fa:(c.value==="ContentView"||c.value==="CardView")&&(t.contentTemplate||e.slots.content)?ua:Ln}const w=S(),{renderItem:y}=w(t,e,n,d,r,l,u,a,v,s),{renderItem:b}=ma(t,e,n,d,r,l,u,a,v,s),g=[y,b];function C(){return n.value.filter(k=>k.visible!==!1).map((k,O)=>g[k.type](k,O,p))}function _(){return i.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[i.createVNode("p",{class:"f-empty-title"},[t.emptyTemplate?t.emptyTemplate():e.slots.empty?e.slots.empty():h.value])])}function P(){return i.createVNode("ul",{class:F.value,style:"list-style: none;"},[E.value&&C(),x.value&&_()])}return{renderListArea:P}}function ga(t,e,n){function o(){return e.slots.header&&i.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:o}}function Hn(t,e,n){const o=i.ref(t.headerClass),r=i.ref(t.placeholder),l=i.ref(""),a=i.computed(()=>!l.value),s=i.computed(()=>!!l.value);function u(m){l.value=""}i.watch(l,m=>{t.enableHighlightSearch&&n.search(m),e.emit("afterSearch",m)});const d=i.computed(()=>{const m={"form-group":!0,"farris-form-group":!0};return o.value&&o.value.split(" ").reduce((h,v)=>(h[v]=!0,h),m),m});function f(m){}function c(){return i.createVNode("div",{class:"f-list-view-header",onClick:i.withModifiers(()=>f,["prevent","stop"])},[i.createVNode("div",{class:d.value},[i.createVNode("div",{class:"farris-input-wrap"},[i.createVNode("div",{class:"f-cmp-inputgroup"},[i.createVNode("div",{class:"input-group f-state-editable"},[i.withDirectives(i.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":m=>l.value=m,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[i.vModelText,l.value]]),i.createVNode("div",{class:"input-group-append"},[s.value&&i.createVNode("span",{class:"input-group-text input-group-clear",onClick:m=>u()},[i.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&i.createVNode("span",{class:"input-group-text"},[i.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}function ya(){const t=i.ref(""),e=i.ref(-1),n=i.ref(""),o=i.ref(-1),r=i.ref(!1);function l(c,m,p){o.value=p}function a(c,m,p){r.value||(o.value=p)}function s(c,m,p){o.value=-1}function u(){r.value=!0}function d(){r.value=!1}function f(){e.value=-1,t.value=""}return{activeIndex:e,focusedItemId:n,hoverIndex:o,clearActiveItem:f,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:s,resumeHover:d,suspendHover:u}}function va(t,e,n,o){const r=i.ref(t.idField),{dataView:l}=n,a=i.ref(-1),s=i.ref(!1),{activeIndex:u,focusedItemId:d,hoverIndex:f,resumeHover:c,suspendHover:m}=o;let p,h=0,v=0;function F(b,g){const C=b-h,_=g-v;p.style.left=parseInt(p.style.left)+C+"px",p.style.top=parseInt(p.style.top)+_+"px",h=b,v=g}function E(b){const{left:g,top:C}=b.getBoundingClientRect(),_=b.cloneNode(!0);return _.style.cssText=`
|
|
2
2
|
position:absolute;
|
|
3
3
|
left:${g}px;
|
|
4
4
|
top:${document.documentElement.scrollTop?C+document.documentElement.scrollTop:C}px;
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
align-items: center;
|
|
13
13
|
float: none;
|
|
14
14
|
text-align: initial;
|
|
15
|
-
width:${getComputedStyle(
|
|
16
|
-
height:${getComputedStyle(
|
|
17
|
-
`,
|
|
15
|
+
width:${getComputedStyle(b).width};
|
|
16
|
+
height:${getComputedStyle(b).height};
|
|
17
|
+
`,_.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",_.children[0].children[0].style.cssText=`
|
|
18
18
|
margin: 10px 0px 10px 14px;
|
|
19
19
|
overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
|
|
20
|
-
`,I.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",I.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(I),I}function S(v,g,C){if(v.stopPropagation(),m(),g){if(p=_(v.target),v.dataTransfer){const I=new Image;I.src="",v.dataTransfer.setDragImage(I,0,0)}h=v.pageX,y=v.pageY,setTimeout(()=>{a.value=C,s.value=!0,g.moving=!0})}}function w(v,g){if(v.preventDefault(),a.value!==g){const C=l.value[a.value],I=l.value;I.splice(a.value,1),I.splice(g,0,C),a.value=g,F(v.pageX,v.pageY)}}function M(v){v.preventDefault(),v.dataTransfer&&(v.dataTransfer.dropEffect="move"),F(v.pageX,v.pageY)}function b(v,g){g&&(g.moving=!1,p&&(document.body.removeChild(p),p=null)),l.value.forEach((C,I)=>{C.__fv_index__=I}),s.value=!1,c(),f.value=g.raw.__fv_index__,u.value=g.raw.__fv_index__,d.value=g.raw[r.value],e.emit("change",l.value),e.emit("activeChange",[g.raw])}return{dragstart:S,dragenter:w,dragover:M,dragend:b,isDragging:s}}function ma(t,e,n,o,r,l){const a=i.ref(t.idField),s=i.ref(t.disableField),u=i.ref(t.draggable);i.ref(t.itemClass);const d=i.ref(t.selection.multiSelect??!1),f=i.ref(t.selection.multiSelectMode),{isDragging:c}=o,{activeIndex:m,focusedItemId:p,hoverIndex:h}=r,{clearSelection:y,getSelectedItems:F,toggleSelectItem:_,currentSelectedDataId:S}=l,w=i.ref(F()),M=T=>w.value.length===0?!1:w.value.some(x=>{let O="";return x.data?O=x.data[a.value]:O=x[a.value],O===T});function b(){w.value=F()}function v(T,x){return T.raw[a.value]!=null?T.raw[a.value]:""}function g(T,x){const O={"f-list-view-group-item":!0,"f-list-view-draggable-item":u.value,"f-un-click":!T.checked,"f-un-select":!!T.raw[s.value],"f-listview-active":d.value&&M(v(T))||!d.value&&T.raw[a.value]===S.value,"f-listview-hover":!c.value&&x===h.value,moving:!!T.moving};if(typeof t.itemClass=="string")return oe.getCustomClass(O,t.itemClass);if(typeof t.itemClass=="function"){const W=t.itemClass(T);return oe.getCustomClass(O,W)}return O}function C(T,x){const O=d.value&&M(v(T))||!d.value&&T.raw[a.value]===S.value,W={};if(O&&(W.backgroundColor="#dae9ff"),typeof t.itemStyle=="string")return oe.getCustomStyle(W,t.itemStyle);if(typeof t.itemStyle=="function"){const P=t.itemStyle(T);return oe.getCustomStyle(W,P)}return W}const I=i.computed(()=>!d.value);function $(T,x,O){T.checked=O,!T.raw[s.value]&&(I.value&&(p.value=T.raw[a.value]),_(T))}const E=i.computed(()=>d.value&&f.value==="OnCheckClearByClick"),B=i.computed(()=>!d.value||d.value&&(f.value==="OnCheckAndClick"||f.value==="OnClick"));function V(T,x,O){if(T.raw[s.value]){O==null||O.preventDefault(),O==null||O.stopPropagation();return}p.value=T.raw[a.value],m.value=x,E.value&&y(),B.value&&(_(T),b()),e.emit("clickItem",{data:w.value,index:x,dataItem:T.raw}),e.emit("activeChange",w.value)}return{getKey:v,selectedItems:w,listViewItemClass:g,listViewItemStyle:C,updateSelectedItems:b,onCheckItem:$,onClickItem:V}}const An=i.defineComponent({name:"FListView",props:oa,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed"],setup(t,e){const n=i.ref(),o=i.ref(!0),r=i.ref(!1),l=i.ref([]),a=0,s=i.ref(t.columns),u=ce.useFilter(t,e),d=ce.useIdentify(t),f=ce.useHierarchy(t),c=ce.useGroupData(t,d),m=ce.useDataView(t,new Map,u,f,d),p=ce.useSelection(t,m,d,l,e),h=ia(t,n),y=ce.usePagination(t,m),F=i.computed(()=>m.dataView.value.length),_=ce.useRow(t,e,p,d),S=ce.useEdit(t,e,d,_,l),w=ce.useVisualDataBound(t),M=ce.useVisualDataCell(t,{},w),b=ce.useVisualDataRow(t,m,S,f,d,w,M),v=ce.useVisualGroupRow(t,d,M,b),g=ce.useVisualSummaryRow(t,d,M,b),C=ce.useVisualData(t,s,m,F,a,b,v,g),{getVisualData:I}=C;l.value=I(0,F.value+a-1);const $=i.computed(()=>{const H={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&(H[`${t.size}-item`]=!0),oe.getCustomClass(H,t.customClass)}),E=i.computed(()=>!!e.slots.footer||o.value);function B(){return t.header==="SearchBar"?Rn:t.header==="ContentHeader"?da:Rn}const V=B(),{renderHeader:T}=V(t,e,h),x=ua(),O=fa(t,e,m,x),W=ma(t,e,l,O,x,p),{renderListArea:P}=ca(t,e,l,m,c,x,p,C,W,O);function R(H){h.search(H)}function A(H){H&&(m.load(H),l.value=I(0,F.value+a-1))}function N(){p.clearSelection(),x.clearActiveItem()}function D(){return W.selectedItems.value}function Z(){return W.selectedItems.value.map(H=>H[d.idField.value])}function ee(H){p.selectedValues.value=H,W.updateSelectedItems()}function Y(){return p.currentSelectedDataId.value}function ie(H){_.activeRowById(H)}function z(H){const K=d.idField.value,ne=l.value.find(Ee=>Ee.raw[K]===H),xe=l.value.findIndex(Ee=>Ee.raw[K]===H);ne&&xe>-1&&W.onClickItem(ne,xe)}function q(H){y.updatePagination(H)}function L(H){return l.value.filter(K=>H.includes(K.raw[t.idField]))}e.expose({search:R,updateDataSource:A,clearSelection:N,getSelections:D,updateSelectionByIds:ee,getSelectionIds:Z,activeRowById:ie,getCurrentRowId:Y,clickRowItemById:z,updatePagination:q,getVisibleDataByIds:L});function U(H){t.multiSelect&&(H.preventDefault(),H.stopPropagation())}i.watch(()=>t.selectionValues,(H,K)=>{H!==K&&ee(H)});const se=ce.useSidebar(t,p),{sidebarWidth:he,showSidebarCheckBox:me}=se,de=ce.useColumn(t,e),{applyColumnSorter:Se,columnContext:Ve,updateColumnRenderContext:ge}=de,He=ce.useVirtualScroll(t,m,l,Ve,C,F,a,he,S);return ce.getPagination(t,e,m,He,y,p),()=>i.createVNode("div",{class:$.value,onClick:U},[T(),i.createVNode("div",{ref:n,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[P()]),E.value&&i.createVNode("div",{class:"f-list-view-footer"},[t.footerTemplate?t.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),pa=i.defineComponent({name:"FTransfer",props:$n,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(t,e){const{t:n}=ct.useI18n(),o=i.ref(t.identifyField),r={selectedStart:n("transfer.selectedStart"),selectedEnd:n("transfer.selectedEnd")},l=i.ref(t.displayType),a=i.ref(!1),s=i.ref(t.dataSource),u=i.ref(t.textField),d=i.ref(t.selections||[]),f=i.computed(()=>d.value.map(x=>x[o.value])),c=new Map,m=i.ref(),p=i.ref(),h=i.ref();let y;function F(){const x=new Map,O=t.selectionValues||[];O.length&&O.reduce((P,R)=>(P.set(R,!0),P),x);const W=t.selections||[];W.length&&(x.clear(),W.reduce((P,R)=>(P.set(R[o.value],!0),P),x)),d.value.length||(d.value=s.value.filter(P=>x.has(P[o.value])).map(P=>Object.assign({},P))),s.value.forEach(P=>{const R=P[o.value],A=x.has(R);P.checked=A,A&&c.set(R,P)})}F(),i.watch(()=>t.selections,x=>{d.value=x,F()});const _=i.computed(()=>l.value==="List"),S=i.computed(()=>l.value==="Tree");function w(x){const O=je.cloneDeep(d.value);d.value=x.map(W=>Object.assign({},W)),e.emit("change",d.value,O)}function M(x){e.emit("selectItem",x)}function b(x){e.emit("unSelectItem",x)}function v(){return i.createVNode(An,{class:"f-utils-fill",data:s.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:f.value,onSelectionChange:w},null)}function g(){return i.createVNode(to,{ref:h,data:s.value,columns:t.columns,virtualized:t.virtualized,rowOption:t.rowOption,textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:f.value,onSelectionChange:w,onSelectItem:M,onUnSelectItem:b},null)}function C(){return i.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[i.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[_.value&&v(),S.value&&g()])])])}function I(x){const O=x[o.value];if(O!==null||O!==void 0){d.value=d.value.filter(P=>P[o.value]!==O);const W=c.get(O);W&&(W.checked=!1,c.delete(O)),e.emit("change",d.value),e.emit("removeItem",x)}}i.watch(d,x=>{m.value.updateDataSource(x);const O=y==null?void 0:y[o.value],W=x.find(P=>O===P[o.value]);W?m.value.activeRowById(W[o.value]):(y=null,m.value.activeRowById(""))});function $(x){const O=new Map;d.value.reduce((W,P)=>(W.set(P[o.value],P),W),O),d.value=x.map(W=>O.get(W[o.value])),e.emit("change",d.value)}function E(x){y=x[0],e.emit("activeChange",x)}function B(){var x;return i.createVNode(An,{ref:m,columns:t.columns,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:u.value,itemClass:t.selectedItemClass,onChange:$,onRemoveItem:I,onActiveChange:E,checkBeforeRemoveItem:t.checkBeforeRemoveItem},{itemContent:(x=e.slots)!=null&&x.text?O=>{var W;return((W=e.slots)==null?void 0:W.text)&&e.slots.text(O)}:null})}function V(){return i.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[i.createVNode("div",{class:"selection-pane-title"},[i.createVNode("span",{class:"selection-title"},[r.selectedStart]),i.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),i.createVNode("span",{class:"selection-item-title"},[r.selectedEnd])]),i.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[B()])])])}const T=i.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":a.value}));return i.onMounted(()=>{p.value&&p.value.parentElement&&getComputedStyle(p.value.parentElement).display==="flex"&&(a.value=!0)}),()=>i.createVNode("div",{ref:p,class:T.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:d.value}):C(),V()])}}),ha=i.defineComponent({name:"FGridFieldEditor",props:On,emits:["change"],setup(t,e){const n=i.ref(t.viewModelId),o=i.inject("designViewModelUtils"),r=i.inject("useFormSchema"),l=i.inject("schemaService"),a=i.inject("controlCreatorUtils"),s=i.inject("designerContext");let u=t.gridData.columns;const{fieldEditable:d}=t.gridData,f=i.ref(`共 ${(u||[]).length} 项`),c=i.ref([]),m=i.ref([]);let p=[];function h(V,T=!0){if(s.checkCanDeleteControl){const x=p.find(O=>{var W;return((W=O.data)==null?void 0:W.id)===V.id});return s.checkCanDeleteControl(x,T)}return!0}const y={customRowStatus:V=>{const T=V.raw;T.type&&T.type.fields&&T.type.fields.length>0&&(V.disabled=!0),h(T,!1)||(V.disabled=!0)}};function F(){if(c.value=[],!u||u.length===0)return[];const V="[绑定字段不存在,待移除]";u.forEach(T=>{if(T.binding&&T.binding.field){const x=p.find(O=>O.data.id===T.binding.field);x?x.data.$type===oe.FormSchemaEntityField$Type.ComplexField?c.value.push(Object.assign({isInValidBinding:!0},x.data,{name:x.data.name+V})):c.value.push(Object.assign({},x.data)):c.value.push({id:T.binding.field,name:T.title+V,label:T.field,bindingField:null,isInValidBinding:!0})}}),f.value=`共 ${c.value.length} 项`}function _(V,T=[]){return V&&V.forEach(x=>{if(T.push(x),x.children&&_(x.children,T),s.appendIdentifyForNewControl){const O=u.find(W=>{var P;return((P=W.binding)==null?void 0:P.field)===x.data.id});(!O||O[s.identifyForNewControl])&&s.appendIdentifyForNewControl(x)}}),T}function S(){if(r.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const V=l.getTableInfoByViewModelId(n.value);if(V!=null&&V.id){const T=l.rtcAddedTreeNodes.value[V.id];T!=null&&T.length&&(m.value=m.value.concat(T))}}}function w(){m.value=o.getAllFields2TreeByVMId(n.value),S(),p=_(m.value)}function M(V,T,x){if(r.getComponents().find(W=>{let P=r.getControlsInCmpWidthBinding(W.viewModel,V);if(P=P.filter(R=>{var N;if(R.id===x)return!1;const A=T.type==="visible"?R[T.type]:(N=R.editor)==null?void 0:N[T.type];if(A&&A.type==="Expression"&&A.expressionId===T.id)return!0}),P.length)return!0}))return!0}function b(V){V.map(T=>{var O;const x=u.find(W=>{var P;return((P=W.binding)==null?void 0:P.field)===T});if(x&&r.getExpressions().length){const W=r.getExpressions(),P=W.findIndex(R=>R.target===T);P>-1&&((O=W[P].rules)==null||O.map(R=>{var A;switch(R.type){case"visible":case"readonly":case"required":{const N=R.type==="visible"?x[R.type]:(A=x.editor)==null?void 0:A[R.type];N&&N.type==="Expression"&&N.expressionId===R.id&&(M(T,R,x.id)||(R.needDelete=!0));break}default:M(T,R,x.id)||(R.needDelete=!0)}}),W[P].rules=W[P].rules.filter(R=>!R.needDelete))}})}function v(){const V=o.getDgViewModel(n.value),T=[],x=[],O=c.value;O.forEach(P=>{const R=u==null?void 0:u.find(A=>{if(A.binding&&A.binding.field)return A.binding.field===P.id});if(R)T.push(R);else{const A=a.setGridFieldProperty(t.gridType,P.data,null,d);V.addField(P),T.push(A)}x.push(P.id)});const W=V.fields.filter(P=>!x.includes(P.id));if(W&&W.length>0){const P=W.map(R=>R.id);V.removeField(P),b(P)}O.length!==c.value.length&&(c.value=O),f.value=`共 ${T.length} 项`,e.emit("change",T)}const g={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{v()},rejectCallback:()=>{}};function C(){return t.getLatestGridData?u=t.getLatestGridData().columns:u=t.gridData.columns,w(),F(),Promise.resolve(!0)}function I(V){c.value=[...c.value,V.raw]}function $(V){const T=c.value.findIndex(x=>x.id===V.raw.id);T>-1&&(c.value=[...c.value.slice(0,T),...c.value.slice(T+1)])}function E(V){const T=c.value.findIndex(x=>x.id===V.id);T>-1&&(c.value=[...c.value.slice(0,T),...c.value.slice(T+1)])}const B=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(V,T)=>V.data+` [${T.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return i.onMounted(()=>{w()}),()=>i.createVNode(Yr,{"button-behavior":"Modal","modal-options":g,modelValue:f.value,"onUpdate:modelValue":V=>f.value=V,editable:!1,beforeOpen:C},{default:()=>[i.createVNode("div",{class:"f-utils-absolute-all"},[i.createVNode(pa,{selections:c.value,"data-source":m.value,rowOption:y,class:"mx-2",columns:B,displayType:"Tree",onRemoveItem:E,onSelectItem:I,onUnSelectItem:$,checkBeforeRemoveItem:h},{text:V=>i.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[V.data.name.data,i.createTextVNode(" ["),V.data.bindingField.data,i.createTextVNode("]")])})])]})}}),ga={$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:"obejct",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}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},ya={$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:"obejct"},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"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1}},required:["id","type"]},Zt={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:""}},va=ht(Zt,ga,Pn,Bn),ba=ht(Zt,ya,Pn,Bn);class Ca extends Vt{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 wa extends tt.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"}},(r,l)=>{if(r)switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...r.propertyValue]);break}}})}}class Sa extends tt.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,o;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:((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:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===oe.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===oe.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}const Ln={convertFrom:(t,e)=>(t.editor.remote||{})[e],convertTo:(t,e,n)=>{t.editor.remote=t.editor.remote||{},t.editor.remote[e]=n}};class xa extends tt.InputBaseProperty{constructor(e,n){super(e,n)}getCommonEditorProperties(e){var n,o,r,l;return{separator:{visible:!!((n=e.editor)!=null&&n.multiSelect)&&((o=e.editor)==null?void 0:o.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"string"},viewType:{visible:!!((r=e.editor)!=null&&r.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0},enableHighlightSearch:{visible:!!((l=e.editor)!=null&&l.editable),description:"编辑状态下启用高亮搜索",title:"启用高亮搜索",type:"boolean"}}}getEditorProperties(e){var l,a;const n=this;let o="";if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const s=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=s==null?void 0:s.schemaField)!=null&&a.type&&(o=s.schemaField.type.$type)}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},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Ln,description:"",title:"服务端API",type:"string"},body:{visible:e.editor.dataSourceType==="dynamic",$converter:Ln,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:!o||o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(e)},(s,u)=>{if(!s||!u.editor)return;const d=this;switch(s.propertyID){case"dataSourceType":{s.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):s.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!d.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...s.propertyValue]);break}}})}getGridFieldEdtiorProperties(e,n){var a,s,u,d;const o=this;let r="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const f=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=f==null?void 0:f.schemaField)!=null&&s.type&&(r=f.schemaField.type.$type)}return o.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!0,...o.getItemCollectionEditor(e,(u=e.editor)==null?void 0:u.valueField,(d=e.editor)==null?void 0:d.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:r==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(e)},(f,c)=>{if(!f||!c.editor)return;const m=this;switch(f.propertyID){case"dataSourceType":{f.propertyValue==="static"?(c.editor.valueField="value",c.editor.textField="name",c.editor.remote=null):f.propertyValue==="dynamic"&&(c.editor.remote={method:"GET"});break}case"data":{!m.checkEnumDataReadonly(c)&&c.formatter&&(c.formatter.data=[...f.propertyValue]);break}}})}setEditorPropertyRelates(e,n,o){if(!e||!n.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name",n.editor.remote={});break}case"data":{!r.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===oe.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Fa extends Vt{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 Ta(){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"}],o=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],r=[{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日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.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日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:o,yMdFormats:n,mdFormats:r,yFormats:l}}const Ma=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],_a=[{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"}],Ea=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],ka=[{id:"yyyy",name:"yyyy"}],{timeFormats:Ia,yMdFormats:Va,yMFormats:Hn,mdFormats:Pa,yFormats:Jt}=Ta();class Na extends tt.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"}]}getEditorProperties(e){var a,s,u,d,f,c,m,p,h,y,F,_,S,w,M;const n=this.getDateFormatOptions(e==null?void 0:e.editor),o=this.getValueFormatOptions(e==null?void 0:e.editor),r=this.designViewModelField.type.name,l=this.getDatePickerModes(r);return(a=e==null?void 0:e.editor)!=null&&a.selectMode||(e.editor.selectMode="day"),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:((s=e==null?void 0:e.editor)==null?void 0:s.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:((u=e==null?void 0:e.editor)==null?void 0:u.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((d=e==null?void 0:e.editor)==null?void 0:d.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((f=e==null?void 0:e.editor)==null?void 0:f.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:n}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:o},visible:((c=e==null?void 0:e.editor)==null?void 0:c.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((m=e==null?void 0:e.editor)!=null&&m.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((p=e==null?void 0:e.editor)!=null&&p.showTime?" HH:mm:ss":""),minDate:"1900-01-01",maxDate:((h=e==null?void 0:e.editor)==null?void 0:h.maxDate)||"9999-12-31",showTime:(y=e==null?void 0:e.editor)==null?void 0:y.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((F=e==null?void 0:e.editor)!=null&&F.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((_=e==null?void 0:e.editor)!=null&&_.showTime?" HH:mm:ss":""),minDate:((S=e==null?void 0:e.editor)==null?void 0:S.minDate)||"1900-01-01",maxDate:"9999-12-31",showTime:(w=e==null?void 0:e.editor)==null?void 0:w.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((M=e==null?void 0:e.editor)==null?void 0:M.selectMode)==="day"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,n,o){if(!(!e||!n.editor))switch(e.propertyID){case"showTime":{const r=n.editor;e.propertyValue?(r.displayFormat="yyyy-MM-dd HH:mm:ss",r.valueFormat="yyyy-MM-dd HH:mm:ss"):(r.displayFormat="yyyy-MM-dd",r.valueFormat="yyyy-MM-dd"),n.formatter&&(n.formatter.dateFormat=r.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 o=[];switch(n){case"day":{const r=[];e.showTime&&r.push(...Ia),r.push(...Va,...Hn,...Jt,...Pa),o=r;break}case"month":{o=[...Hn,...Jt];break}case"year":{o=[...Jt];break}}return o}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{const o=[...Ma];return e.showTime&&o.push(..._a),o}case"month":return Ea;case"year":return ka;default:return[]}}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)&&(e.editor.fieldType=r.type.name,r.type.name===oe.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 Ba=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Oa="";function qt(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,o)=>n.value-o.value)}const ke={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"?n.placeholder||"请选择":e==="openType"?n[e]||"Modal":n[e]},convertTo:(t,e,n)=>{const o=t.editor?t.editor:t;if(o[e]=n,e==="multiSelect"&&!n&&(o.enableCascade=!1),e==="openType"){if(n==="Popup")o.showSelections=!1,o.enableCascade=!1;else if(o.dialog){const{width:r}=o.dialog,{displayType:l}=o;l&&l.toUpperCase().indexOf("NAV")>-1&&(!r||r<520)&&(o.dialog.width=960)}}}};function $a(t){let e="form_group_"+Date.now();return t&&(e=t.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function ja(t,e){const{enablePager:n,pageSize:o,pageList:r}=e;t.pagination=t.pagination||{},Object.assign(t.pagination,{enable:n,sizeLimits:qt(r).map(l=>l.value),size:o,showLimits:!0,showGoto:!1,mode:"server"})}const Dn={convertFrom:(t,e)=>{var o;return(o=(t.editor?t.editor:t).dataSource)==null?void 0:o.displayName},convertTo:(t,e,n)=>{if(n&&n.length>0){const o=t.editor?t.editor:t,r=n[0],{name:l,id:a,metadataContent:s,code:u}=r;o.dataSource||(o.dataSource={}),o.dataSource.displayName=`${l}(${u})`,o.helpId=a;const{displayType:d,idField:f,textField:c}=s;o.displayType=d,o.dataSource.idField=f,o.textField=c,o.dataSource.type="ViewObject";const{pageInfo:m}=s.dataSource;ja(o,m);const{treeInfo:p}=d.toUpperCase()==="NAVTREELIST"?s.navigation:s.dataSource;if(p){const{onlySelectLeaf:h,loadDataType:y}=p;o.loadTreeDataType="default",o.onlySelectLeaf=h??!1}if(o.dataSource.uri||(o.dataSource.uri=$a(t.id)),o.dialog){const{width:h}=o.dialog;d&&d.toUpperCase().indexOf("NAV")>-1&&(!h||h<520)&&(o.dialog.width=960)}}}},Ra={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 o=n[0];t.editor.dataSource.idField=o==null?void 0:o.bindingPath}}},Aa={convertFrom:(t,e)=>{var n;return(n=t.editor)==null?void 0:n.textField},convertTo:(t,e,n)=>{if(n&&n.length>0){const o=n[0];t.editor.textField=o==null?void 0:o.bindingPath}}},La={convertFrom:(t,e)=>t.editor.displayType?t.editor.displayType.toUpperCase():"LIST",convertTo:(t,e,n)=>{t.editor.displayType=n}},at={convertFrom:(t,e)=>{var r;let n=t.editor?t.editor.dialog:t.dialog;if(n||(n={}),e==="title")return n[e]||Oa;if(n.openType==="Modal"){if(e==="width")return(r=n.displayType)!=null&&r.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 o=t.editor?t.editor:t;o.dialog=o.dialog||{},o.dialog[e]=n}},Ha={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 o=n.pagination[e];return qt(o)}if(e==="size")return n.pagination[e]||20},convertTo:(t,e,n)=>{var r;const o=t.editor?t.editor.pagination||{}:t;if(o.pagination=o.pagination||{},e==="sizeLimits"){const l=n.map(s=>s.value);o.pagination[e]=l;const a=((r=o.pagination)==null?void 0:r.size)??20;l.includes(a)||(o.pagination.size=l[0]);return}o.pagination[e]=n}},Wn=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Da=Symbol("schema_repository_token");function Wa(t,e){const n=o=>o&&o.length?o.map(r=>`${r.name}[${r.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:(o,r)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Da},dataSourceConverter:Dn,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!0,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Rt.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:Rt.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:Rt.FieldSelectorRepositoryToken,displayFormatter:n},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const o=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),r=e.schemaService.getPrimaryField();return r?o.filter(l=>l.data.bindingPath!==r):o},formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,displayFormatter:n}}}}function qa(t){var l,a;const e={type:"combo-list",enableClear:!1,editable:!1},n={type:"number-spinner",useThousands:!1},o=()=>t.displayType?t.displayType.toUpperCase():"",r=()=>o().startsWith("NAV")?t.showNavigation===void 0?!0:!!t.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:ke,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:at},width:{description:"窗口宽度,最小值:300px",title:"宽度",type:"number",editor:{...n,min:r()?520:300},$converter:at},height:{description:"窗口高度,最小值:200px",title:"高度",type:"number",editor:{...n,min:200},$converter:at},showNavigation:{description:"显示导航栏",$converter:ke,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:o().includes("NAV")&&t.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:r()&&t.openType!=="Popup",editor:{...n,min:200,max:(((l=t==null?void 0:t.dialog)==null?void 0:l.width)??960)-200},$converter:at},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:t.openType!=="Popup",$converter:at},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:at},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:t.openType!=="Popup",$converter:at},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:t.openType!=="Popup",$converter:at},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:t.openType!=="Popup",$converter:at}}}function za(t,e=!0){var l,a,s,u;const n=!((l=t.pagination)!=null&&l.enable),o=()=>t.displayType?t.displayType.toUpperCase():"",r=(d,f)=>{const c=o()!=="TREELIST"||d.treeToList;return f&&c?d.pagination&&d.pagination[f]:c};return{hide:o()==="TREELIST"||!t.helpId||n,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Ha,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:r(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:r(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:qt((a=t.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:d,data:f})=>!f||!f.length?(d==null||d.warning({message:"每页显示条数不能为空!"}),!1):new Set(f.map(m=>parseInt(m.value,10))).size===f.length?!0:(d==null||d.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:r(t),editor:{type:"number-spinner",useThousands:!1,data:qt((s=t.pagination)==null?void 0:s.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(u=t.pagination)==null?void 0:u.size}}}}}class Ga extends tt.InputBaseProperty{constructor(){super(...arguments);le(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});le(this,"numberEditor",{type:"number-spinner",useThousands:!1});le(this,"readonlyEditor",{...this.comboListEditor,editable:!0});le(this,"visibleEditor",{...this.comboListEditor,editable:!1});le(this,"requiredEditor",{...this.comboListEditor,editable:!1});le(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(n,o){const r=["validate"];return n.type==="form-group"&&r.push("dataPicking"),new tt.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(n,"Field",r)}getPropertyConfig(n,o,r="Card"){var _;const l=(_=n.binding)!=null&&_.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,o,r),s=this.getBehaviorConfig(n),u=this.getAppearanceProperties(n,o),d=this.getLookupConfig(n),f=this.getEventPropConfig(n),c=this.getDialogPropertyConfig(n),m=this.getPageConfig(n.editor),p=this.getTreePropConfig(n.editor),h=this.getSearchConfig(n),y=this.getExpressionConfig(n,"Field"),F={basic:a,appearance:u,behavior:s,lookup:d,treeConfig:p,dialog:c,pager:m,searchConfig:h,expressions:y};return n.type==="form-group"&&(F.eventsEditor=f),{type:"object",categories:F}}getGridFieldEdtiorPropConfig(n){return this.getPropertyConfig(n,null,"Grid").categories}flattenTreeNodes(n){return n.reduce((o,r)=>{var l;return o.push(r),(l=r.children)!=null&&l.length&&o.push(...this.flattenTreeNodes(r.children)),o},[])}isSimpleStringField(){var s;const n=((s=this.designViewModelField)==null?void 0:s.path)||"";if(!n||!n.includes("."))return!0;const o=n.split("."),r=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(r!=null&&r.length))return!1;const l=r.find(u=>u.data.code===o[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!o.reduce((u,d,f)=>[...u,f?`${u[f-1]}.${d}`:d],[]).some(u=>{var d,f,c;return((c=(f=(d=a.find(m=>m.data.path===u))==null?void 0:d.data)==null?void 0:f.type)==null?void 0:c.$type)==="EntityType"})}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(o,r)=>{this.afterMutilEditorChanged(r,o)}}}changeBindingField(n,o){super.changeBindingField(n,o),n.editor.multiSelect=!1}getDisplayType(n){return n.displayType?n.displayType.toUpperCase():""}mapFieldsDisplayFormatter(n){return n&&n.length?n.map(o=>`${o.name}[${o.bindingPath}]`).join(","):""}getSearchConfig(n){var o;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:ke,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean"},searchAnyField:{description:"显示所有列",$converter:ke,title:"允许查询所有列",type:"boolean",visible:n.editor.openType!=="Popup"&&n.editor.enableSearchBar==null?!0:!!n.editor.enableSearchBar},enableEqualSearch:{$converter:ke,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:n.editor.openType!=="Popup"&&(((o=n.editor)==null?void 0:o.enableSearchBar)??!0)!==!1}},hide:n.editor.openType==="Popup"}}getLookupConfig(n){const o=n.editor,r=()=>{const d=this.formSchemaUtils.getFormSchema().module.entity[0].id,f=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:o,formBasicInfo:f,viewModelId:d,dataSourceId:o.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:s,mappingFieldsEditor:u}=Wa(o,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(d,f)=>{if(d)switch(d.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(f,d);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:ke},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:ke,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:ke,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(o.multiSelect&&o.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:ke,editor:this.freeInputEditor,visible:!!o.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:ke},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:d=>d&&d.length?d.map(f=>`${f.name}(${f.code})`).join(","):"",validateFunction:async d=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(d,n),onSubmitModal:d=>{if(d){delete o.mappingFields;const f=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(f.relativePath,d[0].data).then(c=>JSON.parse(c==null?void 0:c.metadata.content))}}},$converter:Dn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:ke,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:Rt.FieldSelectorRepositoryToken,beforeOpen:async({repository:d,notifyService:f})=>{var F;if(!(o==null?void 0:o.helpId))return f==null||f.warning({message:"请先配置数据源!"}),!1;const m=r(),h=new tt.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let y={};if(d){const _=await d.getData(m),S=await d.getLookupConditions(m);y={fieldList:_,conditionList:S}}return(F=h.variables)!=null&&F.forms&&(h.variables.forms.items=h.variables.forms.items.filter(_=>_.category==="remote")),{...y,...h,isServerSide:!0}},onSubmitModal:async({loadingService:d,repository:f,conditions:c,originalConditions:m,FMessageBoxService:p})=>{if(f)try{const h=r(),y=await f.getLookupConditions(h)||[];return JSON.stringify(y)!==JSON.stringify(m.value)?(d==null||d.clearAll(),p.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{c.value=y,m.value=JSON.parse(JSON.stringify(c.value))},()=>{}),!1):(JSON.stringify(c.value)===JSON.stringify(m.value)||await f.saveFilterCondition(c.value,h,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return p==null||p.error("保存失败",""),!1}finally{d==null||d.clearAll()}}},visible:!!o.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:La,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:Ra},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Aa,editor:s},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ke,editor:{...u}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:ke,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:ke,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:ke,title:"显示已选记录",type:"boolean",visible:!!o.multiSelect&&o.openType!=="Popup"},separator:{description:"多选分隔符",$converter:ke,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:!!o.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:ke,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:ke,title:"启用收藏夹",type:"boolean",visible:o.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:ke,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:o.openType!=="Popup"}}}}showNavigatiorWidth(n){return this.getDisplayType(n).startsWith("NAV")&&n.openType!=="Popup"?n.showNavigation===void 0?!0:!!n.showNavigation:!1}getDialogPropertyConfig(n){const o=qa(n.editor);return o.openType.$converter=ke,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:at,properties:o}}showPagerProperty(n,o){const r=this.getDisplayType(n)!=="TREELIST"||n.treeToList;return o&&r?n.pagination&&n.pagination[o]:r}getPageConfig(n){return za(n)}showLoadType(n){const o=this.getDisplayType(n);return(o==="TREELIST"||o==="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:ke,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:ke,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:ke,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:ke,title:"构造完整树",type:"boolean",visible:this.showLoadType(n)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:ke,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(n)},enableCascade:{description:"启用级联选择",$converter:ke,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(n)&&!!n.multiSelect&&n.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:ke,title:"显示级联状态",type:"boolean",visible:!!n.enableCascade&&this.isTree(n)},cascadeValue:{description:"缺省级联选择模式",$converter:ke,title:"缺省级联选择模式",type:"string",visible:!!n.enableCascade&&this.isTree(n),editor:{...this.comboListEditor,data:Ba,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:ke,title:"默认展开层级",type:"number",visible:this.showLoadType(n),editor:{...this.numberEditor,min:-1,max:99}}}}}getEventPropConfig(n){const o=this;let r=Wn;n.editor.openType==="Popup"&&(r=r.filter(s=>s.label!=="beforeSelectData"));const l=o.eventsEditorUtils.formProperties(n,o.viewModelId,r);return{title:"事件",hideTitle:!0,properties:o.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete u[o.viewModelId],d&&o.eventsEditorUtils.saveRelatedParameters(u,o.viewModelId,d.events,d);const f=o.designViewModelUtils.getDgViewModel(o.viewModelId);f&&o.designViewModelField&&f.changeField(o.designViewModelField.id,{valueChanging:u.fieldValueChanging,valueChanged:u.fieldValueChanged})}}}async checkSameBESource(n,o){var r,l,a,s,u;if(n&&((r=o==null?void 0:o.editor)!=null&&r.helpId)&&!o.isRtcControl){if(n.data.id===o.editor.helpId)return!0;const d=await this.metadataService.getPickMetadata("",n.data).then(y=>{var F;if((F=y==null?void 0:y.metadata)!=null&&F.content)return JSON.parse(y.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:o.editor.helpId}).then(y=>{var F;if((F=y==null?void 0:y.metadata)!=null&&F.content)return JSON.parse(y.metadata.content)}),c=(l=d==null?void 0:d.dataSource)==null?void 0:l.sourceType,m=(a=f.dataSource)==null?void 0:a.sourceType,p=(s=d==null?void 0:d.dataSource)==null?void 0:s.sourceId,h=(u=f==null?void 0:f.dataSource)==null?void 0:u.sourceId;if(c==="BE"&&m==="BE"&&p!==h)return new tn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class Ua extends Vt{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Ya extends Vt{constructor(e,n){super(e,n)}getEditorProperties(e){var r,l,a,s,u,d,f,c;let n;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const m=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(l=m==null?void 0:m.schemaField)!=null&&l.type&&(n=m.schemaField.type.precision,m.schemaField.type.name)}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:n===0,min:0,max:n},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,precision:(a=e==null?void 0:e.editor)==null?void 0:a.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(s=e==null?void 0:e.editor)==null?void 0:s.max,precision:(u=e==null?void 0:e.editor)==null?void 0:u.precision},refreshPanelAfterChanged:!0},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((d=e==null?void 0:e.editor)==null?void 0:d.min)===void 0||(f=e==null?void 0:e.editor)==null?void 0:f.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision},refreshPanelAfterChanged:!0},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:!1},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(m,p,h){if(m)switch(m.propertyID){case"precision":{p.formatter&&(p.formatter.precision=m.propertyValue);break}}})}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.name)===oe.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=r.type.precision)}}class Xa extends Vt{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,o){if(!e||!n.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name");break}case"data":{!r.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===oe.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Za extends tt.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,o;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:((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:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===oe.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===oe.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}class Ja extends Vt{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,o)=>{n.propertyID==="use12Hours"&&(o.editor.format=o.editor.format||"hh:mm:ss",o.editor.format=n.propertyValue?o.editor.format.replace("HH","hh"):o.editor.format.replace("hh","HH"))})}}class Qa extends tt.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}}})}}class Ka extends Tn{constructor(n,o){super(n,o);le(this,"dataGridProps",null);le(this,"notifyService",new tn.FNotifyService)}getPropertyConfig(n,o){var s,u,d;this.dataGridProps=o,this.getBasicPropConfig(n),this.getAppearanceProperties(n,o);const l={formatterEnumData:{description:"",title:"数据",type:"array",visible:!!(((s=n.formatter)==null?void 0:s.type)==="enum"&&((u=n.editor)==null?void 0:u.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(n,"value","name"),refreshPanelAfterChanged:!0}},a=(f,c)=>{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,o),((d=n.formatter)==null?void 0:d.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(n)),this.getEventPropConfig(n),this.propertyConfig}getItemCollectionEditor(n,o,r){const l=o||"value",a=r||"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===oe.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(n){var s;let o=[{label:"onClickLinkCommand",name:"超链接事件"}];((s=n==null?void 0:n.editor)==null?void 0:s.type)==="lookup"&&(o=[...o,...Wn],n.editor.openType==="Popup"&&(o=o.filter(u=>u.label!=="beforeSelectData")));const r=this,l=r.eventsEditorUtils.formProperties(n,r.viewModelId,o),a=r.createBaseEventProperty(l);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(u,d){var c;const f=u.propertyValue;delete n[r.viewModelId],f&&(f.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(n,r.viewModelId,f.events,f)),n.remoteSort=!!n.columnSorted,n.onClickLinkCommand&&!n.onClickLinkCommand.includes("communication:")&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
|
|
20
|
+
`,_.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",_.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(_),_}function x(b,g,C){if(b.stopPropagation(),m(),g){if(p=E(b.target),b.dataTransfer){const _=new Image;_.src="",b.dataTransfer.setDragImage(_,0,0)}h=b.pageX,v=b.pageY,setTimeout(()=>{a.value=C,s.value=!0,g.moving=!0})}}function S(b,g){if(b.preventDefault(),a.value!==g){const C=l.value[a.value],_=l.value;_.splice(a.value,1),_.splice(g,0,C),a.value=g,F(b.pageX,b.pageY)}}function w(b){b.preventDefault(),b.dataTransfer&&(b.dataTransfer.dropEffect="move"),F(b.pageX,b.pageY)}function y(b,g){g&&(g.moving=!1,p&&(document.body.removeChild(p),p=null)),l.value.forEach((C,_)=>{C.__fv_index__=_}),s.value=!1,c(),f.value=g.raw.__fv_index__,u.value=g.raw.__fv_index__,d.value=g.raw[r.value],e.emit("change",l.value),e.emit("activeChange",[g.raw])}return{dragstart:x,dragenter:S,dragover:w,dragend:y,isDragging:s}}function ba(t,e,n,o,r,l){const a=i.ref(t.idField),s=i.ref(t.disableField),u=i.ref(t.draggable);i.ref(t.itemClass);const d=i.ref(t.selection.multiSelect??!1),f=i.ref(t.selection.multiSelectMode),{isDragging:c}=o,{activeIndex:m,focusedItemId:p,hoverIndex:h}=r,{clearSelection:v,getSelectedItems:F,toggleSelectItem:E,currentSelectedDataId:x}=l,S=i.ref(F()),w=M=>S.value.length===0?!1:S.value.some(T=>{let j="";return T.data?j=T.data[a.value]:j=T[a.value],j===M});function y(){S.value=F()}function b(M,T){return M.raw[a.value]!=null?M.raw[a.value]:""}function g(M,T){const j={"f-list-view-group-item":!0,"f-list-view-draggable-item":u.value,"f-un-click":!M.checked,"f-un-select":!!M.raw[s.value],"f-listview-active":d.value&&w(b(M))||!d.value&&M.raw[a.value]===x.value,"f-listview-hover":!c.value&&T===h.value,moving:!!M.moving};if(typeof t.itemClass=="string")return ne.getCustomClass(j,t.itemClass);if(typeof t.itemClass=="function"){const W=t.itemClass(M);return ne.getCustomClass(j,W)}return j}function C(M,T){const j=d.value&&w(b(M))||!d.value&&M.raw[a.value]===x.value,W={};if(j&&(W.backgroundColor="#dae9ff"),typeof t.itemStyle=="string")return ne.getCustomStyle(W,t.itemStyle);if(typeof t.itemStyle=="function"){const N=t.itemStyle(M);return ne.getCustomStyle(W,N)}return W}const _=i.computed(()=>!d.value);function P(M,T,j){M.checked=j,!M.raw[s.value]&&(_.value&&(p.value=M.raw[a.value]),E(M))}const k=i.computed(()=>d.value&&f.value==="OnCheckClearByClick"),O=i.computed(()=>!d.value||d.value&&(f.value==="OnCheckAndClick"||f.value==="OnClick"));function I(M,T,j){if(M.raw[s.value]){j==null||j.preventDefault(),j==null||j.stopPropagation();return}p.value=M.raw[a.value],m.value=T,k.value&&v(),O.value&&(E(M),y()),e.emit("clickItem",{data:S.value,index:T,dataItem:M.raw}),e.emit("activeChange",S.value)}return{getKey:b,selectedItems:S,listViewItemClass:g,listViewItemStyle:C,updateSelectedItems:y,onCheckItem:P,onClickItem:I}}const Dn=i.defineComponent({name:"FListView",props:ca,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed"],setup(t,e){const n=i.ref(),o=i.ref(!0),r=i.ref(!1),l=i.ref([]),a=0,s=i.ref(t.columns),u=ce.useFilter(t,e),d=ce.useIdentify(t),f=ce.useHierarchy(t),c=ce.useGroupData(t,d),m=ce.useDataView(t,new Map,u,f,d),p=ce.useSelection(t,m,d,l,e),h=da(t,n),v=ce.usePagination(t,m),F=i.computed(()=>m.dataView.value.length),E=ce.useRow(t,e,p,d),x=ce.useEdit(t,e,d,E,l),S=ce.useVisualDataBound(t),w=ce.useVisualDataCell(t,{},S),y=ce.useVisualDataRow(t,m,x,f,d,S,w),b=ce.useVisualGroupRow(t,d,w,y),g=ce.useVisualSummaryRow(t,d,w,y),C=ce.useVisualData(t,s,m,F,a,y,b,g),{getVisualData:_}=C;l.value=_(0,F.value+a-1);const P=i.computed(()=>{const H={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&(H[`${t.size}-item`]=!0),ne.getCustomClass(H,t.customClass)}),k=i.computed(()=>!!e.slots.footer||o.value);function O(){return t.header==="SearchBar"?Hn:t.header==="ContentHeader"?ga:Hn}const I=O(),{renderHeader:M}=I(t,e,h),T=ya(),j=va(t,e,m,T),W=ba(t,e,l,j,T,p),{renderListArea:N}=ha(t,e,l,m,c,T,p,C,W,j);function R(H){h.search(H)}function A(H){H&&(m.load(H),l.value=_(0,F.value+a-1))}function B(){p.clearSelection(),T.clearActiveItem()}function D(){return W.selectedItems.value}function Z(){return W.selectedItems.value.map(H=>H[d.idField.value])}function ee(H){p.selectedValues.value=H,W.updateSelectedItems()}function Y(){return p.currentSelectedDataId.value}function ie(H){E.activeRowById(H)}function z(H){const K=d.idField.value,oe=l.value.find(Ee=>Ee.raw[K]===H),xe=l.value.findIndex(Ee=>Ee.raw[K]===H);oe&&xe>-1&&W.onClickItem(oe,xe)}function q(H){v.updatePagination(H)}function L(H){return l.value.filter(K=>H.includes(K.raw[t.idField]))}e.expose({search:R,updateDataSource:A,clearSelection:B,getSelections:D,updateSelectionByIds:ee,getSelectionIds:Z,activeRowById:ie,getCurrentRowId:Y,clickRowItemById:z,updatePagination:q,getVisibleDataByIds:L});function U(H){t.multiSelect&&(H.preventDefault(),H.stopPropagation())}i.watch(()=>t.selectionValues,(H,K)=>{H!==K&&ee(H)});const se=ce.useSidebar(t,p),{sidebarWidth:he,showSidebarCheckBox:me}=se,de=ce.useColumn(t,e),{applyColumnSorter:Se,columnContext:Ie,updateColumnRenderContext:ge}=de,He=ce.useVirtualScroll(t,m,l,Ie,C,F,a,he,x);return ce.getPagination(t,e,m,He,v,p),()=>i.createVNode("div",{class:P.value,onClick:U},[M(),i.createVNode("div",{ref:n,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[N()]),k.value&&i.createVNode("div",{class:"f-list-view-footer"},[t.footerTemplate?t.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),Ca=i.defineComponent({name:"FTransfer",props:An,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(t,e){const{t:n}=ct.useI18n(),o=i.ref(t.identifyField),r={selectedStart:n("transfer.selectedStart"),selectedEnd:n("transfer.selectedEnd")},l=i.ref(t.displayType),a=i.ref(!1),s=i.ref(t.dataSource),u=i.ref(t.textField),d=i.ref(t.selections||[]),f=i.computed(()=>d.value.map(T=>T[o.value])),c=new Map,m=i.ref(),p=i.ref(),h=i.ref();let v;function F(){const T=new Map,j=t.selectionValues||[];j.length&&j.reduce((N,R)=>(N.set(R,!0),N),T);const W=t.selections||[];W.length&&(T.clear(),W.reduce((N,R)=>(N.set(R[o.value],!0),N),T)),d.value.length||(d.value=s.value.filter(N=>T.has(N[o.value])).map(N=>Object.assign({},N))),s.value.forEach(N=>{const R=N[o.value],A=T.has(R);N.checked=A,A&&c.set(R,N)})}F(),i.watch(()=>t.selections,T=>{d.value=T,F()});const E=i.computed(()=>l.value==="List"),x=i.computed(()=>l.value==="Tree");function S(T){const j=$e.cloneDeep(d.value);d.value=T.map(W=>Object.assign({},W)),e.emit("change",d.value,j)}function w(T){e.emit("selectItem",T)}function y(T){e.emit("unSelectItem",T)}function b(){return i.createVNode(Dn,{class:"f-utils-fill",data:s.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:f.value,onSelectionChange:S},null)}function g(){return i.createVNode(io,{ref:h,data:s.value,columns:t.columns,virtualized:t.virtualized,rowOption:t.rowOption,textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:f.value,onSelectionChange:S,onSelectItem:w,onUnSelectItem:y},null)}function C(){return i.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[i.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[E.value&&b(),x.value&&g()])])])}function _(T){const j=T[o.value];if(j!==null||j!==void 0){d.value=d.value.filter(N=>N[o.value]!==j);const W=c.get(j);W&&(W.checked=!1,c.delete(j)),e.emit("change",d.value),e.emit("removeItem",T)}}i.watch(d,T=>{m.value.updateDataSource(T);const j=v==null?void 0:v[o.value],W=T.find(N=>j===N[o.value]);W?m.value.activeRowById(W[o.value]):(v=null,m.value.activeRowById(""))});function P(T){const j=new Map;d.value.reduce((W,N)=>(W.set(N[o.value],N),W),j),d.value=T.map(W=>j.get(W[o.value])),e.emit("change",d.value)}function k(T){v=T[0],e.emit("activeChange",T)}function O(){var T;return i.createVNode(Dn,{ref:m,columns:t.columns,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:u.value,itemClass:t.selectedItemClass,onChange:P,onRemoveItem:_,onActiveChange:k,checkBeforeRemoveItem:t.checkBeforeRemoveItem},{itemContent:(T=e.slots)!=null&&T.text?j=>{var W;return((W=e.slots)==null?void 0:W.text)&&e.slots.text(j)}:null})}function I(){return i.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[i.createVNode("div",{class:"selection-pane-title"},[i.createVNode("span",{class:"selection-title"},[r.selectedStart]),i.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),i.createVNode("span",{class:"selection-item-title"},[r.selectedEnd])]),i.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[O()])])])}const M=i.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":a.value}));return i.onMounted(()=>{p.value&&p.value.parentElement&&getComputedStyle(p.value.parentElement).display==="flex"&&(a.value=!0)}),()=>i.createVNode("div",{ref:p,class:M.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:d.value}):C(),I()])}}),wa=i.defineComponent({name:"FGridFieldEditor",props:Rn,emits:["change"],setup(t,e){const n=i.ref(t.viewModelId),o=i.inject("designViewModelUtils"),r=i.inject("useFormSchema"),l=i.inject("schemaService"),a=i.inject("controlCreatorUtils"),s=i.inject("designerContext");let u=t.gridData.columns;const{fieldEditable:d}=t.gridData,f=i.ref(`共 ${(u||[]).length} 项`),c=i.ref([]),m=i.ref([]);let p=[];function h(I,M=!0){if(s.checkCanDeleteControl){const T=p.find(j=>{var W;return((W=j.data)==null?void 0:W.id)===I.id});return s.checkCanDeleteControl(T,M)}return!0}const v={customRowStatus:I=>{const M=I.raw;M.type&&M.type.fields&&M.type.fields.length>0&&(I.disabled=!0),h(M,!1)||(I.disabled=!0)}};function F(){if(c.value=[],!u||u.length===0)return[];const I="[绑定字段不存在,待移除]";u.forEach(M=>{if(M.binding&&M.binding.field){const T=p.find(j=>j.data.id===M.binding.field);T?T.data.$type===ne.FormSchemaEntityField$Type.ComplexField?c.value.push(Object.assign({isInValidBinding:!0},T.data,{name:T.data.name+I})):c.value.push(Object.assign({},T.data)):c.value.push({id:M.binding.field,name:M.title+I,label:M.field,bindingField:null,isInValidBinding:!0})}}),f.value=`共 ${c.value.length} 项`}function E(I,M=[]){return I&&I.forEach(T=>{if(M.push(T),T.children&&E(T.children,M),s.appendIdentifyForNewControl){const j=u.find(W=>{var N;return((N=W.binding)==null?void 0:N.field)===T.data.id});(!j||j[s.identifyForNewControl])&&s.appendIdentifyForNewControl(T)}}),M}function x(){if(r.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const I=l.getTableInfoByViewModelId(n.value);if(I!=null&&I.id){const M=l.rtcAddedTreeNodes.value[I.id];M!=null&&M.length&&(m.value=m.value.concat(M))}}}function S(){m.value=o.getAllFields2TreeByVMId(n.value),x(),p=E(m.value)}function w(I,M,T){if(r.getComponents().find(W=>{let N=r.getControlsInCmpWidthBinding(W.viewModel,I);if(N=N.filter(R=>{var B;if(R.id===T)return!1;const A=M.type==="visible"?R[M.type]:(B=R.editor)==null?void 0:B[M.type];if(A&&A.type==="Expression"&&A.expressionId===M.id)return!0}),N.length)return!0}))return!0}function y(I){I.map(M=>{var j;const T=u.find(W=>{var N;return((N=W.binding)==null?void 0:N.field)===M});if(T&&r.getExpressions().length){const W=r.getExpressions(),N=W.findIndex(R=>R.target===M);N>-1&&((j=W[N].rules)==null||j.map(R=>{var A;switch(R.type){case"visible":case"readonly":case"required":{const B=R.type==="visible"?T[R.type]:(A=T.editor)==null?void 0:A[R.type];B&&B.type==="Expression"&&B.expressionId===R.id&&(w(M,R,T.id)||(R.needDelete=!0));break}default:w(M,R,T.id)||(R.needDelete=!0)}}),W[N].rules=W[N].rules.filter(R=>!R.needDelete))}})}function b(){const I=o.getDgViewModel(n.value),M=[],T=[],j=c.value;j.forEach(N=>{const R=u==null?void 0:u.find(A=>{if(A.binding&&A.binding.field)return A.binding.field===N.id});if(R)M.push(R);else{const A=a.setGridFieldProperty(t.gridType,N.data,null,d);I.addField(N),M.push(A)}T.push(N.id)});const W=I.fields.filter(N=>!T.includes(N.id));if(W&&W.length>0){const N=W.map(R=>R.id);I.removeField(N),y(N)}j.length!==c.value.length&&(c.value=j),f.value=`共 ${M.length} 项`,e.emit("change",M)}const g={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{b()},rejectCallback:()=>{}};function C(){return t.getLatestGridData?u=t.getLatestGridData().columns:u=t.gridData.columns,S(),F(),Promise.resolve(!0)}function _(I){c.value=[...c.value,I.raw]}function P(I){const M=c.value.findIndex(T=>T.id===I.raw.id);M>-1&&(c.value=[...c.value.slice(0,M),...c.value.slice(M+1)])}function k(I){const M=c.value.findIndex(T=>T.id===I.id);M>-1&&(c.value=[...c.value.slice(0,M),...c.value.slice(M+1)])}const O=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(I,M)=>I.data+` [${M.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return i.onMounted(()=>{S()}),()=>i.createVNode(ea,{"button-behavior":"Modal","modal-options":g,modelValue:f.value,"onUpdate:modelValue":I=>f.value=I,editable:!1,beforeOpen:C},{default:()=>[i.createVNode("div",{class:"f-utils-absolute-all"},[i.createVNode(Ca,{selections:c.value,"data-source":m.value,rowOption:v,class:"mx-2",columns:O,displayType:"Tree",onRemoveItem:k,onSelectItem:_,onUnSelectItem:P,checkBeforeRemoveItem:h},{text:I=>i.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[I.data.name.data,i.createTextVNode(" ["),I.data.bindingField.data,i.createTextVNode("]")])})])]})}}),Sa={$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:"obejct",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}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},xa={$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:"obejct"},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"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1}},required:["id","type"]},Kt={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:""}},Fa=ht(Kt,Sa,On,$n),Ta=ht(Kt,xa,On,$n);class Ma 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 _a extends tt.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"}},(r,l)=>{if(r)switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...r.propertyValue]);break}}})}}class Ea extends tt.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,o;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:((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:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===ne.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===ne.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}const Wn={convertFrom:(t,e)=>(t.editor.remote||{})[e],convertTo:(t,e,n)=>{t.editor.remote=t.editor.remote||{},t.editor.remote[e]=n}};class ka extends tt.InputBaseProperty{constructor(e,n){super(e,n)}getCommonEditorProperties(e){var n,o,r,l;return{separator:{visible:!!((n=e.editor)!=null&&n.multiSelect)&&((o=e.editor)==null?void 0:o.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"string"},viewType:{visible:!!((r=e.editor)!=null&&r.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0},enableHighlightSearch:{visible:!!((l=e.editor)!=null&&l.editable),description:"编辑状态下启用高亮搜索",title:"启用高亮搜索",type:"boolean"}}}getEditorProperties(e){var l,a;const n=this;let o="";if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const s=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=s==null?void 0:s.schemaField)!=null&&a.type&&(o=s.schemaField.type.$type)}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},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Wn,description:"",title:"服务端API",type:"string"},body:{visible:e.editor.dataSourceType==="dynamic",$converter:Wn,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:!o||o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(e)},(s,u)=>{if(!s||!u.editor)return;const d=this;switch(s.propertyID){case"dataSourceType":{s.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):s.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!d.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...s.propertyValue]);break}}})}getGridFieldEdtiorProperties(e,n){var a,s,u,d;const o=this;let r="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const f=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=f==null?void 0:f.schemaField)!=null&&s.type&&(r=f.schemaField.type.$type)}return o.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!0,...o.getItemCollectionEditor(e,(u=e.editor)==null?void 0:u.valueField,(d=e.editor)==null?void 0:d.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:r==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(e)},(f,c)=>{if(!f||!c.editor)return;const m=this;switch(f.propertyID){case"dataSourceType":{f.propertyValue==="static"?(c.editor.valueField="value",c.editor.textField="name",c.editor.remote=null):f.propertyValue==="dynamic"&&(c.editor.remote={method:"GET"});break}case"data":{!m.checkEnumDataReadonly(c)&&c.formatter&&(c.formatter.data=[...f.propertyValue]);break}}})}setEditorPropertyRelates(e,n,o){if(!e||!n.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name",n.editor.remote={});break}case"data":{!r.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===ne.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Va extends Pt{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 Ia(){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"}],o=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],r=[{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日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.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日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:o,yMdFormats:n,mdFormats:r,yFormats:l}}const Pa=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],Na=[{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"}],Ba=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],Oa=[{id:"yyyy",name:"yyyy"}],{timeFormats:ja,yMdFormats:$a,yMFormats:qn,mdFormats:Ra,yFormats:en}=Ia();class Aa extends tt.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"}]}getEditorProperties(e){var a,s,u,d,f,c,m,p,h,v,F,E,x,S,w;const n=this.getDateFormatOptions(e==null?void 0:e.editor),o=this.getValueFormatOptions(e==null?void 0:e.editor),r=this.designViewModelField.type.name,l=this.getDatePickerModes(r);return(a=e==null?void 0:e.editor)!=null&&a.selectMode||(e.editor.selectMode="day"),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:((s=e==null?void 0:e.editor)==null?void 0:s.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:((u=e==null?void 0:e.editor)==null?void 0:u.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((d=e==null?void 0:e.editor)==null?void 0:d.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((f=e==null?void 0:e.editor)==null?void 0:f.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:n}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:o},visible:((c=e==null?void 0:e.editor)==null?void 0:c.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((m=e==null?void 0:e.editor)!=null&&m.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((p=e==null?void 0:e.editor)!=null&&p.showTime?" HH:mm:ss":""),minDate:"1900-01-01",maxDate:((h=e==null?void 0:e.editor)==null?void 0:h.maxDate)||"9999-12-31",showTime:(v=e==null?void 0:e.editor)==null?void 0:v.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((F=e==null?void 0:e.editor)!=null&&F.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((E=e==null?void 0:e.editor)!=null&&E.showTime?" HH:mm:ss":""),minDate:((x=e==null?void 0:e.editor)==null?void 0:x.minDate)||"1900-01-01",maxDate:"9999-12-31",showTime:(S=e==null?void 0:e.editor)==null?void 0:S.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((w=e==null?void 0:e.editor)==null?void 0:w.selectMode)==="day"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,n,o){if(!(!e||!n.editor))switch(e.propertyID){case"showTime":{const r=n.editor;e.propertyValue?(r.displayFormat="yyyy-MM-dd HH:mm:ss",r.valueFormat="yyyy-MM-dd HH:mm:ss"):(r.displayFormat="yyyy-MM-dd",r.valueFormat="yyyy-MM-dd"),n.formatter&&(n.formatter.dateFormat=r.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 o=[];switch(n){case"day":{const r=[];e.showTime&&r.push(...ja),r.push(...$a,...qn,...en,...Ra),o=r;break}case"month":{o=[...qn,...en];break}case"year":{o=[...en];break}}return o}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{const o=[...Pa];return e.showTime&&o.push(...Na),o}case"month":return Ba;case"year":return Oa;default:return[]}}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)&&(e.editor.fieldType=r.type.name,r.type.name===ne.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 La=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Ha="";function zt(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,o)=>n.value-o.value)}const ke={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"?n.placeholder||"请选择":e==="openType"?n[e]||"Modal":n[e]},convertTo:(t,e,n)=>{const o=t.editor?t.editor:t;if(o[e]=n,e==="multiSelect"&&!n&&(o.enableCascade=!1),e==="openType"){if(n==="Popup")o.showSelections=!1,o.enableCascade=!1;else if(o.dialog){const{width:r}=o.dialog,{displayType:l}=o;l&&l.toUpperCase().indexOf("NAV")>-1&&(!r||r<520)&&(o.dialog.width=960)}}}};function Da(t){let e="form_group_"+Date.now();return t&&(e=t.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Wa(t,e){const{enablePager:n,pageSize:o,pageList:r}=e;t.pagination=t.pagination||{},Object.assign(t.pagination,{enable:n,sizeLimits:zt(r).map(l=>l.value),size:o,showLimits:!0,showGoto:!1,mode:"server"})}const zn={convertFrom:(t,e)=>{var o;return(o=(t.editor?t.editor:t).dataSource)==null?void 0:o.displayName},convertTo:(t,e,n)=>{if(n&&n.length>0){const o=t.editor?t.editor:t,r=n[0],{name:l,id:a,metadataContent:s,code:u}=r;o.dataSource||(o.dataSource={}),o.dataSource.displayName=`${l}(${u})`,o.helpId=a;const{displayType:d,idField:f,textField:c}=s;o.displayType=d,o.dataSource.idField=f,o.textField=c,o.dataSource.type="ViewObject";const{pageInfo:m}=s.dataSource;Wa(o,m);const{treeInfo:p}=d.toUpperCase()==="NAVTREELIST"?s.navigation:s.dataSource;if(p){const{onlySelectLeaf:h,loadDataType:v}=p;o.loadTreeDataType="default",o.onlySelectLeaf=h??!1}if(o.dataSource.uri||(o.dataSource.uri=Da(t.id)),o.dialog){const{width:h}=o.dialog;d&&d.toUpperCase().indexOf("NAV")>-1&&(!h||h<520)&&(o.dialog.width=960)}}}},qa={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 o=n[0];t.editor.dataSource.idField=o==null?void 0:o.bindingPath}}},za={convertFrom:(t,e)=>{var n;return(n=t.editor)==null?void 0:n.textField},convertTo:(t,e,n)=>{if(n&&n.length>0){const o=n[0];t.editor.textField=o==null?void 0:o.bindingPath}}},Ga={convertFrom:(t,e)=>t.editor.displayType?t.editor.displayType.toUpperCase():"LIST",convertTo:(t,e,n)=>{t.editor.displayType=n}},at={convertFrom:(t,e)=>{var r;let n=t.editor?t.editor.dialog:t.dialog;if(n||(n={}),e==="title")return n[e]||Ha;if(n.openType==="Modal"){if(e==="width")return(r=n.displayType)!=null&&r.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 o=t.editor?t.editor:t;o.dialog=o.dialog||{},o.dialog[e]=n}},Ua={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 o=n.pagination[e];return zt(o)}if(e==="size")return n.pagination[e]||20},convertTo:(t,e,n)=>{var r;const o=t.editor?t.editor.pagination||{}:t;if(o.pagination=o.pagination||{},e==="sizeLimits"){const l=n.map(s=>s.value);o.pagination[e]=l;const a=((r=o.pagination)==null?void 0:r.size)??20;l.includes(a)||(o.pagination.size=l[0]);return}o.pagination[e]=n}},Gn=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Ya=Symbol("schema_repository_token");function Xa(t,e){const n=o=>o&&o.length?o.map(r=>`${r.name}[${r.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:(o,r)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Ya},dataSourceConverter:zn,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!0,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:At.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:At.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:At.FieldSelectorRepositoryToken,displayFormatter:n},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const o=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),r=e.schemaService.getPrimaryField();return r?o.filter(l=>l.data.bindingPath!==r):o},formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,displayFormatter:n}}}}function Za(t){var l,a;const e={type:"combo-list",enableClear:!1,editable:!1},n={type:"number-spinner",useThousands:!1},o=()=>t.displayType?t.displayType.toUpperCase():"",r=()=>o().startsWith("NAV")?t.showNavigation===void 0?!0:!!t.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:ke,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:at},width:{description:"窗口宽度,最小值:300px",title:"宽度",type:"number",editor:{...n,min:r()?520:300},$converter:at},height:{description:"窗口高度,最小值:200px",title:"高度",type:"number",editor:{...n,min:200},$converter:at},showNavigation:{description:"显示导航栏",$converter:ke,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:o().includes("NAV")&&t.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:r()&&t.openType!=="Popup",editor:{...n,min:200,max:(((l=t==null?void 0:t.dialog)==null?void 0:l.width)??960)-200},$converter:at},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:t.openType!=="Popup",$converter:at},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:at},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:t.openType!=="Popup",$converter:at},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:t.openType!=="Popup",$converter:at},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:t.openType!=="Popup",$converter:at}}}function Ja(t,e=!0){var l,a,s,u;const n=!((l=t.pagination)!=null&&l.enable),o=()=>t.displayType?t.displayType.toUpperCase():"",r=(d,f)=>{const c=o()!=="TREELIST"||d.treeToList;return f&&c?d.pagination&&d.pagination[f]:c};return{hide:o()==="TREELIST"||!t.helpId||n,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Ua,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:r(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:r(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:zt((a=t.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:d,data:f})=>!f||!f.length?(d==null||d.warning({message:"每页显示条数不能为空!"}),!1):new Set(f.map(m=>parseInt(m.value,10))).size===f.length?!0:(d==null||d.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:r(t),editor:{type:"number-spinner",useThousands:!1,data:zt((s=t.pagination)==null?void 0:s.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(u=t.pagination)==null?void 0:u.size}}}}}class Qa extends tt.InputBaseProperty{constructor(){super(...arguments);le(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});le(this,"numberEditor",{type:"number-spinner",useThousands:!1});le(this,"readonlyEditor",{...this.comboListEditor,editable:!0});le(this,"visibleEditor",{...this.comboListEditor,editable:!1});le(this,"requiredEditor",{...this.comboListEditor,editable:!1});le(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(n,o){const r=["validate"];return n.type==="form-group"&&r.push("dataPicking"),new tt.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(n,"Field",r)}getPropertyConfig(n,o,r="Card"){var E;const l=(E=n.binding)!=null&&E.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,o,r),s=this.getBehaviorConfig(n),u=this.getAppearanceProperties(n,o),d=this.getLookupConfig(n),f=this.getEventPropConfig(n),c=this.getDialogPropertyConfig(n),m=this.getPageConfig(n.editor),p=this.getTreePropConfig(n.editor),h=this.getSearchConfig(n),v=this.getExpressionConfig(n,"Field"),F={basic:a,appearance:u,behavior:s,lookup:d,treeConfig:p,dialog:c,pager:m,searchConfig:h,expressions:v};return n.type==="form-group"&&(F.eventsEditor=f),{type:"object",categories:F}}getGridFieldEdtiorPropConfig(n){return this.getPropertyConfig(n,null,"Grid").categories}flattenTreeNodes(n){return n.reduce((o,r)=>{var l;return o.push(r),(l=r.children)!=null&&l.length&&o.push(...this.flattenTreeNodes(r.children)),o},[])}isSimpleStringField(){var s;const n=((s=this.designViewModelField)==null?void 0:s.path)||"";if(!n||!n.includes("."))return!0;const o=n.split("."),r=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(r!=null&&r.length))return!1;const l=r.find(u=>u.data.code===o[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!o.reduce((u,d,f)=>[...u,f?`${u[f-1]}.${d}`:d],[]).some(u=>{var d,f,c;return((c=(f=(d=a.find(m=>m.data.path===u))==null?void 0:d.data)==null?void 0:f.type)==null?void 0:c.$type)==="EntityType"})}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(o,r)=>{this.afterMutilEditorChanged(r,o)}}}changeBindingField(n,o){super.changeBindingField(n,o),n.editor.multiSelect=!1}getDisplayType(n){return n.displayType?n.displayType.toUpperCase():""}mapFieldsDisplayFormatter(n){return n&&n.length?n.map(o=>`${o.name}[${o.bindingPath}]`).join(","):""}getSearchConfig(n){var o;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:ke,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean"},searchAnyField:{description:"显示所有列",$converter:ke,title:"允许查询所有列",type:"boolean",visible:n.editor.openType!=="Popup"&&n.editor.enableSearchBar==null?!0:!!n.editor.enableSearchBar},enableEqualSearch:{$converter:ke,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:n.editor.openType!=="Popup"&&(((o=n.editor)==null?void 0:o.enableSearchBar)??!0)!==!1}},hide:n.editor.openType==="Popup"}}getLookupConfig(n){const o=n.editor,r=()=>{const d=this.formSchemaUtils.getFormSchema().module.entity[0].id,f=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:o,formBasicInfo:f,viewModelId:d,dataSourceId:o.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:s,mappingFieldsEditor:u}=Xa(o,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(d,f)=>{if(d)switch(d.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(f,d);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:ke},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:ke,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:ke,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(o.multiSelect&&o.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:ke,editor:this.freeInputEditor,visible:!!o.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:ke},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:d=>d&&d.length?d.map(f=>`${f.name}(${f.code})`).join(","):"",validateFunction:async d=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(d,n),onSubmitModal:d=>{if(d){delete o.mappingFields;const f=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(f.relativePath,d[0].data).then(c=>JSON.parse(c==null?void 0:c.metadata.content))}}},$converter:zn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:ke,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:At.FieldSelectorRepositoryToken,beforeOpen:async({repository:d,notifyService:f})=>{var F;if(!(o==null?void 0:o.helpId))return f==null||f.warning({message:"请先配置数据源!"}),!1;const m=r(),h=new tt.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let v={};if(d){const E=await d.getData(m),x=await d.getLookupConditions(m);v={fieldList:E,conditionList:x}}return(F=h.variables)!=null&&F.forms&&(h.variables.forms.items=h.variables.forms.items.filter(E=>E.category==="remote")),{...v,...h,isServerSide:!0}},onSubmitModal:async({loadingService:d,repository:f,conditions:c,originalConditions:m,FMessageBoxService:p})=>{if(f)try{const h=r(),v=await f.getLookupConditions(h)||[];return JSON.stringify(v)!==JSON.stringify(m.value)?(d==null||d.clearAll(),p.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{c.value=v,m.value=JSON.parse(JSON.stringify(c.value))},()=>{}),!1):(JSON.stringify(c.value)===JSON.stringify(m.value)||await f.saveFilterCondition(c.value,h,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return p==null||p.error("保存失败",""),!1}finally{d==null||d.clearAll()}}},visible:!!o.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ga,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:qa},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:za,editor:s},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ke,editor:{...u}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:ke,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:ke,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:ke,title:"显示已选记录",type:"boolean",visible:!!o.multiSelect&&o.openType!=="Popup"},separator:{description:"多选分隔符",$converter:ke,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:!!o.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:ke,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:ke,title:"启用收藏夹",type:"boolean",visible:o.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:ke,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:o.openType!=="Popup"}}}}showNavigatiorWidth(n){return this.getDisplayType(n).startsWith("NAV")&&n.openType!=="Popup"?n.showNavigation===void 0?!0:!!n.showNavigation:!1}getDialogPropertyConfig(n){const o=Za(n.editor);return o.openType.$converter=ke,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:at,properties:o}}showPagerProperty(n,o){const r=this.getDisplayType(n)!=="TREELIST"||n.treeToList;return o&&r?n.pagination&&n.pagination[o]:r}getPageConfig(n){return Ja(n)}showLoadType(n){const o=this.getDisplayType(n);return(o==="TREELIST"||o==="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:ke,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:ke,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:ke,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:ke,title:"构造完整树",type:"boolean",visible:this.showLoadType(n)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:ke,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(n)},enableCascade:{description:"启用级联选择",$converter:ke,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(n)&&!!n.multiSelect&&n.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:ke,title:"显示级联状态",type:"boolean",visible:!!n.enableCascade&&this.isTree(n)},cascadeValue:{description:"缺省级联选择模式",$converter:ke,title:"缺省级联选择模式",type:"string",visible:!!n.enableCascade&&this.isTree(n),editor:{...this.comboListEditor,data:La,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:ke,title:"默认展开层级",type:"number",visible:this.showLoadType(n),editor:{...this.numberEditor,min:-1,max:99}}}}}getEventPropConfig(n){const o=this;let r=Gn;n.editor.openType==="Popup"&&(r=r.filter(s=>s.label!=="beforeSelectData"));const l=o.eventsEditorUtils.formProperties(n,o.viewModelId,r);return{title:"事件",hideTitle:!0,properties:o.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete u[o.viewModelId],d&&o.eventsEditorUtils.saveRelatedParameters(u,o.viewModelId,d.events,d);const f=o.designViewModelUtils.getDgViewModel(o.viewModelId);f&&o.designViewModelField&&f.changeField(o.designViewModelField.id,{valueChanging:u.fieldValueChanging,valueChanged:u.fieldValueChanged})}}}async checkSameBESource(n,o){var r,l,a,s,u;if(n&&((r=o==null?void 0:o.editor)!=null&&r.helpId)&&!o.isRtcControl){if(n.data.id===o.editor.helpId)return!0;const d=await this.metadataService.getPickMetadata("",n.data).then(v=>{var F;if((F=v==null?void 0:v.metadata)!=null&&F.content)return JSON.parse(v.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:o.editor.helpId}).then(v=>{var F;if((F=v==null?void 0:v.metadata)!=null&&F.content)return JSON.parse(v.metadata.content)}),c=(l=d==null?void 0:d.dataSource)==null?void 0:l.sourceType,m=(a=f.dataSource)==null?void 0:a.sourceType,p=(s=d==null?void 0:d.dataSource)==null?void 0:s.sourceId,h=(u=f==null?void 0:f.dataSource)==null?void 0:u.sourceId;if(c==="BE"&&m==="BE"&&p!==h)return new rn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class Ka extends Pt{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class el extends Pt{constructor(e,n){super(e,n)}getEditorProperties(e){var r,l,a,s,u,d,f,c;let n;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const m=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(l=m==null?void 0:m.schemaField)!=null&&l.type&&(n=m.schemaField.type.precision,m.schemaField.type.name)}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:n===0,min:0,max:n},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,precision:(a=e==null?void 0:e.editor)==null?void 0:a.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(s=e==null?void 0:e.editor)==null?void 0:s.max,precision:(u=e==null?void 0:e.editor)==null?void 0:u.precision},refreshPanelAfterChanged:!0},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((d=e==null?void 0:e.editor)==null?void 0:d.min)===void 0||(f=e==null?void 0:e.editor)==null?void 0:f.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision},refreshPanelAfterChanged:!0},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:!1},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(m,p,h){if(m)switch(m.propertyID){case"precision":{p.formatter&&(p.formatter.precision=m.propertyValue);break}}})}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.name)===ne.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=r.type.precision)}}class tl 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,o){if(!e||!n.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name");break}case"data":{!r.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===ne.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class nl extends tt.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,o;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:((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:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,o){var l;super.changeBindingField(e,n);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===ne.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===ne.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}class ol 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,o)=>{n.propertyID==="use12Hours"&&(o.editor.format=o.editor.format||"hh:mm:ss",o.editor.format=n.propertyValue?o.editor.format.replace("HH","hh"):o.editor.format.replace("hh","HH"))})}}class il extends tt.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}}})}}class rl extends _n{constructor(n,o){super(n,o);le(this,"dataGridProps",null);le(this,"notifyService",new rn.FNotifyService)}getPropertyConfig(n,o){var s,u,d;this.dataGridProps=o,this.getBasicPropConfig(n),this.getAppearanceProperties(n,o);const l={formatterEnumData:{description:"",title:"数据",type:"array",visible:!!(((s=n.formatter)==null?void 0:s.type)==="enum"&&((u=n.editor)==null?void 0:u.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(n,"value","name"),refreshPanelAfterChanged:!0}},a=(f,c)=>{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,o),((d=n.formatter)==null?void 0:d.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(n)),this.getEventPropConfig(n),this.propertyConfig}getItemCollectionEditor(n,o,r){const l=o||"value",a=r||"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===ne.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(n){var s;let o=[{label:"onClickLinkCommand",name:"超链接事件"}];((s=n==null?void 0:n.editor)==null?void 0:s.type)==="lookup"&&(o=[...o,...Gn],n.editor.openType==="Popup"&&(o=o.filter(u=>u.label!=="beforeSelectData")));const r=this,l=r.eventsEditorUtils.formProperties(n,r.viewModelId,o),a=r.createBaseEventProperty(l);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(u,d){var c;const f=u.propertyValue;delete n[r.viewModelId],f&&(f.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(n,r.viewModelId,f.events,f)),n.remoteSort=!!n.columnSorted,n.onClickLinkCommand&&!n.onClickLinkCommand.includes("communication:")&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
|
|
21
21
|
@click="(ctx)=>viewModel.current.${n.onClickLinkCommand}({id: rowData.id,context: ctx})">
|
|
22
22
|
{{rowData.${n.field}}}
|
|
23
|
-
</span>`,(c=r.getFormDesignerInstance())==null||c.reloadPropertyPanel())}}}getBasicPropConfig(n){const o=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(r,l,a){if(r)switch(r&&r.propertyID){case"binding":{o.afterChangeBindingType(n,a),r.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(n,o){var l,a;const r=this;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{filterable:{description:"启用过滤",title:"启用过滤",type:"boolean"},sortable:{description:"启用排序",title:"启用排序",type:"boolean",visible:o.type!=="tree-grid"},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:"底对齐"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((a=(l=this.dataGridProps)==null?void 0:l.summary)!=null&&a.enable)&&n.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0}},setPropertyRelates(s,u,d){if(s)switch(s&&s.propertyID){case"width":{u.actualWidth=s.propertyValue;break}case"summaryType":{const{groupFields:f}=o.summary;!f.includes(u.field)&&s.propertyValue==="sum"&&f.push(u.field),f.includes(u.field)&&s.propertyValue==="none"&&f.splice(f.indexOf(u.field),1);break}case"columnTemplate":{s.propertyValue&&r.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}case"enableGroup":s.propertyValue?o.group.groupFields=[u.field]:o.group.groupFields=[]}}}}getFieldEditorProperties(n,o){o.fieldEditable&&n.editor&&this.getFieldEditorProp(n)}setFormatterEnumData(n){var o,r;(o=n.formatter)!=null&&o.data&&!n.formatterEnumData&&(n.formatterEnumData=(r=n.formatter)==null?void 0:r.data)}getTemplateProperties(n){const o=this,r=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:!!n.formatter&&n.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"千分位"},tempDateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:!!n.formatter&&(n.formatter.type==="date"||n.formatter.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:"yearMonthDay",name:"yyyy年MM月dd日"}]}}},setPropertyRelates(a,s,u){var d;if(a)switch(a&&a.propertyID){case"type":{a.propertyValue!=="none"&&s.columnTemplate&&(s.columnTemplate="",o.notifyService.warning({position:"top-center",message:"注意:已设置列格式化,【列模板】被清空且会失效"})),a.propertyValue==="boolean"&&(r.call(s.formatter,"trueText")||(s.formatter.trueText="是"),r.call(s.formatter,"falseText")||(s.formatter.falseText="否")),a.propertyValue==="number"&&(r.call(s.formatter,"prefix")||(s.formatter.prefix=""),r.call(s.formatter,"suffix")||(s.formatter.suffix=""),r.call(s.formatter,"precision")||(s.formatter.precision=0),r.call(s.formatter,"decimal")||(s.formatter.decimal="."),r.call(s.formatter,"thousand")||(s.formatter.thousand=",")),a.propertyValue==="date"&&(r.call(s.formatter,"tempDateFormat")||(s.formatter.tempDateFormat="yyyy-MM-dd"),r.call(s.formatter,"dateFormat")||(s.formatter.dateFormat="yyyy-MM-dd")),a.propertyValue==="enum"&&(r.call(s.formatter,"data")||(s.formatter.data=[],(d=s.formatterEnumData)!=null&&d.length&&(s.formatterEnumData=[])));break}case"tempDateFormat":{if(a.propertyValue==="yearMonthDay"){s.formatter.dateFormat="yyyy年MM月dd日";return}if(a.propertyValue==="yyyy-MM-ddTHH:mm:ss"){s.formatter.dateFormat="yyyy-MM-dd HH:mm:ss";return}if(a.propertyValue==="yyyy/MM/ddTHH:mm:ss"){s.formatter.dateFormat="yyyy/MM/dd HH:mm:ss";return}if(a.propertyValue==="yearMonthDayHourMinuteSecond"){s.formatter.dateFormat="yyyy年MM月dd日 HH时mm分ss秒";return}s.formatter.dateFormat=a.propertyValue;break}}}}}getFieldEditorProp(n,o="gridFieldEditor",r=!1){const l=this.formMetadataConverter.getRealEditorType(n.editor.type);let a;switch(l){case"avatar":a=new Ca(this.componentId,this.designerHostService);break;case"check-group":a=new wa(this.componentId,this.designerHostService);break;case"check-box":a=new Sa(this.componentId,this.designerHostService);break;case"combo-list":a=new xa(this.componentId,this.designerHostService);break;case"date-picker":a=new Na(this.componentId,this.designerHostService);break;case"lookup":a=new Ga(this.componentId,this.designerHostService);break;case"number-range":a=new Ua(this.componentId,this.designerHostService);break;case"number-spinner":a=new Ya(this.componentId,this.designerHostService);break;case"radio-group":a=new Xa(this.componentId,this.designerHostService);break;case"switch":a=new Za(this.componentId,this.designerHostService);break;case"textarea":a=new Fa(this.componentId,this.designerHostService);break;case"time-picker":a=new Ja(this.componentId,this.designerHostService);break;case"language-textbox":a=new Qa(this.componentId,this.designerHostService);break;default:a=new wr(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);const s=this,{canChangeControlType:u,editorTypeList:d}=this.getAvailableEditorType(n);this.propertyConfig.categories[`${o}_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:d,readonly:!u}}},setPropertyRelates(m,p){if(m)switch(m&&m.propertyID){case"type":{s.changeFieldEditorType(n,m.propertyValue);break}}}};const f=["id","type","class","style","binding","label","responseLayout","visible"],c=a.getGridFieldEdtiorPropConfig(n);Object.keys(c).map(m=>{const p=c[m],h={};if(Object.keys(p.properties).map(y=>{f.findIndex(F=>F===y)===-1&&p.properties[y]!==!1&&(h[y]=p.properties[y])}),Object.keys(h).length!==0){const y=p==null?void 0:p.title,F="gridFieldEditor",_="编辑器",S=p==null?void 0:p.description,w=(p==null?void 0:p.$converter)||"";s.propertyConfig.categories[o+"_"+m]={title:y,hide:Object.prototype.hasOwnProperty.call(p,"hide")?p.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(p,"hideTitle")?p.hideTitle:!1,tabId:p.tabId||F,tabName:p.tabName||_,description:S,$converter:w,parentPropertyID:"editor",propertyData:n,properties:h,setPropertyRelates:p==null?void 0:p.setPropertyRelates}}})}changeFieldEditorType(n,o){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);r.changeField(this.designViewModelField.id,{editor:{$type:o},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,c=>c.type===Q["data-grid"].type||c.type===Q["tree-grid"].type);if(!a)return;const s=r.fields.find(c=>c.id===this.designViewModelField.id),u=this.controlCreatorUtils.setGridFieldProperty(o,s,null,!0),d=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,f=d.findIndex(c=>c.id===n.id);if(f>-1&&d[f].editor){const c={};["readonly","required","placeholder"].map(m=>{Object.prototype.hasOwnProperty.call(d[f].editor,m)&&(c[m]=d[f].editor[m])}),d[f].editor=Object.assign(u.editor,c)}Object.assign(d[f],{dataType:u.dataType},u.formatter?{formatter:u.formatter}:{}),!u.formatter&&d[f].formatter&&delete d[f].formatter}checkCanChangeControlType(n,o){return!(!n.binding||!this.designViewModelField||this.designViewModelField.$type!==oe.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(n){var l;const o=this.checkCanChangeControlType(n,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=Q[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===oe.FormSchemaEntityField$Type.SimpleField&&(r=Nt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,n.type)),{canChangeControlType:o,editorTypeList:r}}afterChangeBindingType(n,o){!n||!o||(n.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(o),this.controlCreatorUtils.setGridFieldFormatter(n.dataType,n,o))}}function el(t,e,n){const o=t.schema,r=i.ref(!0),l=i.ref(!0);function a(m){return!1}function s(){return!1}function u(){return!1}function d(){return!0}function f(m){var y,F;const p=new Ka(m,e),h=(y=t==null?void 0:t.parent)==null?void 0:y.schema;return h!=null&&h.groupFields&&h!=null&&h.groupFields.includes(o.field)&&(o.enableSummary=!0),p.getPropertyConfig(o,(F=t==null?void 0:t.parent)==null?void 0:F.schema)}function c(){var F,_;if(!e||!t)return;const{formSchemaUtils:m}=e;let p=Q["data-grid"].name||"表格";const h=m.getControlBasicInfoMap(),y=h.get((_=(F=t.parent)==null?void 0:F.schema)==null?void 0:_.id);y&&y.parentPathName&&(p=y.parentPathName),h.set(o.id,{showName:o.title,parentPathName:`${p} > ${o.title}`,reliedComponentId:y.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:s,checkCanMoveComponent:u,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:r,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:f,setComponentBasicInfoMap:c}}const qn=i.defineComponent({name:"FDataGridColumnDesign",props:Zt,emits:[],setup(t,e){const n=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context");i.inject("data-grid-context");const l=el(r,o),a=sn(n,r,l);i.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value);function s(c){var m;(m=r==null?void 0:r.setupContext)==null||m.emit("selectionChange",a.value.schema,r.schema,t.componentId,a.value)}const{checkBindingFieldValidation:u}=Sr(o,r,t),f=!i.inject("external-container-id");return()=>{var h;const c=f?u():!0,m="绑定信息已失效,请手动移除列",p=c?"":"color:red";return i.createVNode(i.Fragment,null,[c?"":i.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:m},null),i.createVNode("span",{class:"fv-column-title",style:p,ref:n,onClick:y=>s()},[((h=t.editor)==null?void 0:h.required)===!0&&i.createVNode("span",{class:"text-danger"},[i.createTextVNode("*")]),t.title])])}}}),tl={$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:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},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:"obejct",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:"obejct"},customSummaryStyle:{description:"",type:"obejct"},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:"obejct"},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:"OnCheckAndClick"},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:""}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onDoubleClickRow:"行双击事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件",onFilterChanged:"过滤事件",onSortChanged:"排序事件",onSelectItem:"选中行事件",onUnSelectItem:"取消选中行事件",onSelectAll:"全选事件",onUnSelectAll:"取消全选事件",onEndEditCell:"结束编辑事件"}};function nl(){function t(e,n){const o={};return o.beforeEditCell=r=>n.call("beforeEditCell",[r,e]),o}return{resolve:t}}const Qt=ut.createPropsResolver(bt.dataGridProps,tl,Vn,Nn),zn=ut.createCollectionBindingResolver(),Gn=ut.createDataGridSelectionItemResolver(),Un=ut.createDataViewUpdateColumnsResolver(),Yn=nl();pt.install=t=>{t.component(pt.name,pt)},pt.register=(t,e,n,o)=>{t["data-grid"]=bt,e["data-grid"]=Qt,t["grid-field-editor"]=ha,e["grid-field-editor"]=Qr,o["data-grid"]={bindingResolver:zn,selectionItemResolver:Gn,updateColumnsResolver:Un,callbackResolver:Yn}},pt.registerDesigner=(t,e,n)=>{t["data-grid"]=pt,e["data-grid"]=Qt,e["data-grid-column"]=va,t["data-grid-column"]=qn,e["tree-grid-column"]=ba,t["tree-grid-column"]=qn};const ol=oe.withInstall(pt);be.FDataGridDesign=pt,be.bindingResolver=zn,be.callbackResolver=Yn,be.default=ol,be.getColumnHeader=ln,be.propsResolver=Qt,be.selectionItemResolver=Gn,be.updateColumnsResolver=Un,Object.defineProperties(be,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
23
|
+
</span>`,(c=r.getFormDesignerInstance())==null||c.reloadPropertyPanel())}}}getBasicPropConfig(n){const o=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(r,l,a){if(r)switch(r&&r.propertyID){case"binding":{o.afterChangeBindingType(n,a),r.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(n,o){var l,a;const r=this;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{filterable:{description:"启用过滤",title:"启用过滤",type:"boolean"},sortable:{description:"启用排序",title:"启用排序",type:"boolean",visible:o.type!=="tree-grid"},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:"底对齐"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((a=(l=this.dataGridProps)==null?void 0:l.summary)!=null&&a.enable)&&n.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0}},setPropertyRelates(s,u,d){if(s)switch(s&&s.propertyID){case"width":{u.actualWidth=s.propertyValue;break}case"summaryType":{const{groupFields:f}=o.summary;!f.includes(u.field)&&s.propertyValue==="sum"&&f.push(u.field),f.includes(u.field)&&s.propertyValue==="none"&&f.splice(f.indexOf(u.field),1);break}case"columnTemplate":{s.propertyValue&&r.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}case"enableGroup":s.propertyValue?o.group.groupFields=[u.field]:o.group.groupFields=[]}}}}getFieldEditorProperties(n,o){o.fieldEditable&&n.editor&&this.getFieldEditorProp(n)}setFormatterEnumData(n){var o,r;(o=n.formatter)!=null&&o.data&&!n.formatterEnumData&&(n.formatterEnumData=(r=n.formatter)==null?void 0:r.data)}getTemplateProperties(n){const o=this,r=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:!!n.formatter&&n.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:!!n.formatter&&n.formatter.type==="number",refreshPanelAfterChanged:!0,description:"千分位"},tempDateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:!!n.formatter&&(n.formatter.type==="date"||n.formatter.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:"yearMonthDay",name:"yyyy年MM月dd日"}]}}},setPropertyRelates(a,s,u){var d;if(a)switch(a&&a.propertyID){case"type":{a.propertyValue!=="none"&&s.columnTemplate&&(s.columnTemplate="",o.notifyService.warning({position:"top-center",message:"注意:已设置列格式化,【列模板】被清空且会失效"})),a.propertyValue==="boolean"&&(r.call(s.formatter,"trueText")||(s.formatter.trueText="是"),r.call(s.formatter,"falseText")||(s.formatter.falseText="否")),a.propertyValue==="number"&&(r.call(s.formatter,"prefix")||(s.formatter.prefix=""),r.call(s.formatter,"suffix")||(s.formatter.suffix=""),r.call(s.formatter,"precision")||(s.formatter.precision=0),r.call(s.formatter,"decimal")||(s.formatter.decimal="."),r.call(s.formatter,"thousand")||(s.formatter.thousand=",")),a.propertyValue==="date"&&(r.call(s.formatter,"tempDateFormat")||(s.formatter.tempDateFormat="yyyy-MM-dd"),r.call(s.formatter,"dateFormat")||(s.formatter.dateFormat="yyyy-MM-dd")),a.propertyValue==="enum"&&(r.call(s.formatter,"data")||(s.formatter.data=[],(d=s.formatterEnumData)!=null&&d.length&&(s.formatterEnumData=[])));break}case"tempDateFormat":{if(a.propertyValue==="yearMonthDay"){s.formatter.dateFormat="yyyy年MM月dd日";return}if(a.propertyValue==="yyyy-MM-ddTHH:mm:ss"){s.formatter.dateFormat="yyyy-MM-dd HH:mm:ss";return}if(a.propertyValue==="yyyy/MM/ddTHH:mm:ss"){s.formatter.dateFormat="yyyy/MM/dd HH:mm:ss";return}if(a.propertyValue==="yearMonthDayHourMinuteSecond"){s.formatter.dateFormat="yyyy年MM月dd日 HH时mm分ss秒";return}s.formatter.dateFormat=a.propertyValue;break}}}}}getFieldEditorProp(n,o="gridFieldEditor",r=!1){const l=this.formMetadataConverter.getRealEditorType(n.editor.type);let a;switch(l){case"avatar":a=new Ma(this.componentId,this.designerHostService);break;case"check-group":a=new _a(this.componentId,this.designerHostService);break;case"check-box":a=new Ea(this.componentId,this.designerHostService);break;case"combo-list":a=new ka(this.componentId,this.designerHostService);break;case"date-picker":a=new Aa(this.componentId,this.designerHostService);break;case"lookup":a=new Qa(this.componentId,this.designerHostService);break;case"number-range":a=new Ka(this.componentId,this.designerHostService);break;case"number-spinner":a=new el(this.componentId,this.designerHostService);break;case"radio-group":a=new tl(this.componentId,this.designerHostService);break;case"switch":a=new nl(this.componentId,this.designerHostService);break;case"textarea":a=new Va(this.componentId,this.designerHostService);break;case"time-picker":a=new ol(this.componentId,this.designerHostService);break;case"language-textbox":a=new il(this.componentId,this.designerHostService);break;default:a=new _r(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);const s=this,{canChangeControlType:u,editorTypeList:d}=this.getAvailableEditorType(n);this.propertyConfig.categories[`${o}_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:d,readonly:!u}}},setPropertyRelates(m,p){if(m)switch(m&&m.propertyID){case"type":{s.changeFieldEditorType(n,m.propertyValue);break}}}};const f=["id","type","class","style","binding","label","responseLayout","visible"],c=a.getGridFieldEdtiorPropConfig(n);Object.keys(c).map(m=>{const p=c[m],h={};if(Object.keys(p.properties).map(v=>{f.findIndex(F=>F===v)===-1&&p.properties[v]!==!1&&(h[v]=p.properties[v])}),Object.keys(h).length!==0){const v=p==null?void 0:p.title,F="gridFieldEditor",E="编辑器",x=p==null?void 0:p.description,S=(p==null?void 0:p.$converter)||"";s.propertyConfig.categories[o+"_"+m]={title:v,hide:Object.prototype.hasOwnProperty.call(p,"hide")?p.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(p,"hideTitle")?p.hideTitle:!1,tabId:p.tabId||F,tabName:p.tabName||E,description:x,$converter:S,parentPropertyID:"editor",propertyData:n,properties:h,setPropertyRelates:p==null?void 0:p.setPropertyRelates}}})}changeFieldEditorType(n,o){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);r.changeField(this.designViewModelField.id,{editor:{$type:o},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,c=>c.type===Q["data-grid"].type||c.type===Q["tree-grid"].type);if(!a)return;const s=r.fields.find(c=>c.id===this.designViewModelField.id),u=this.controlCreatorUtils.setGridFieldProperty(o,s,null,!0),d=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,f=d.findIndex(c=>c.id===n.id);if(f>-1&&d[f].editor){const c={};["readonly","required","placeholder"].map(m=>{Object.prototype.hasOwnProperty.call(d[f].editor,m)&&(c[m]=d[f].editor[m])}),d[f].editor=Object.assign(u.editor,c)}Object.assign(d[f],{dataType:u.dataType},u.formatter?{formatter:u.formatter}:{}),!u.formatter&&d[f].formatter&&delete d[f].formatter}checkCanChangeControlType(n,o){return!(!n.binding||!this.designViewModelField||this.designViewModelField.$type!==ne.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(n){var l;const o=this.checkCanChangeControlType(n,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=Q[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===ne.FormSchemaEntityField$Type.SimpleField&&(r=Bt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,n.type)),{canChangeControlType:o,editorTypeList:r}}afterChangeBindingType(n,o){!n||!o||(n.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(o),this.controlCreatorUtils.setGridFieldFormatter(n.dataType,n,o))}}function al(t,e,n){const o=t.schema,r=i.ref(!0),l=i.ref(!0);function a(m){return!1}function s(){return!1}function u(){return!1}function d(){return!0}function f(m){var v,F;const p=new rl(m,e),h=(v=t==null?void 0:t.parent)==null?void 0:v.schema;return h!=null&&h.groupFields&&h!=null&&h.groupFields.includes(o.field)&&(o.enableSummary=!0),p.getPropertyConfig(o,(F=t==null?void 0:t.parent)==null?void 0:F.schema)}function c(){var F,E;if(!e||!t)return;const{formSchemaUtils:m}=e;let p=Q["data-grid"].name||"表格";const h=m.getControlBasicInfoMap(),v=h.get((E=(F=t.parent)==null?void 0:F.schema)==null?void 0:E.id);v&&v.parentPathName&&(p=v.parentPathName),h.set(o.id,{showName:o.title,parentPathName:`${p} > ${o.title}`,reliedComponentId:v.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:s,checkCanMoveComponent:u,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:r,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:f,setComponentBasicInfoMap:c}}const Un=i.defineComponent({name:"FDataGridColumnDesign",props:Kt,emits:[],setup(t,e){const n=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context");i.inject("data-grid-context");const l=al(r,o),a=Xt(n,r,l);i.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value);function s(c){var m;(m=r==null?void 0:r.setupContext)==null||m.emit("selectionChange",a.value.schema,r.schema,t.componentId,a.value)}const{checkBindingFieldValidation:u}=Er(o,r,t),f=!i.inject("external-container-id");return()=>{var h;const c=f?u():!0,m="绑定信息已失效,请手动移除列",p=c?"":"color:red";return i.createVNode(i.Fragment,null,[c?"":i.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:m},null),i.createVNode("span",{class:"fv-column-title",style:p,ref:n,onClick:v=>s()},[((h=t.editor)==null?void 0:h.required)===!0&&i.createVNode("span",{class:"text-danger"},[i.createTextVNode("*")]),t.title])])}}}),ll={$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:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},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:"obejct",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:"obejct"},customSummaryStyle:{description:"",type:"obejct"},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:"obejct"},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:"OnCheckAndClick"},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:""}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onDoubleClickRow:"行双击事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件",onFilterChanged:"过滤事件",onSortChanged:"排序事件",onSelectItem:"选中行事件",onUnSelectItem:"取消选中行事件",onSelectAll:"全选事件",onUnSelectAll:"取消全选事件",onEndEditCell:"结束编辑事件"}};function sl(){function t(e,n){const o={};return o.beforeEditCell=r=>n.call("beforeEditCell",[r,e]),o}return{resolve:t}}const tn=ut.createPropsResolver(bt.dataGridProps,ll,Bn,jn),Yn=ut.createCollectionBindingResolver(),Xn=ut.createDataGridSelectionItemResolver(),Zn=ut.createDataViewUpdateColumnsResolver(),Jn=sl();pt.install=t=>{t.component(pt.name,pt)},pt.register=(t,e,n,o)=>{t["data-grid"]=bt,e["data-grid"]=tn,t["grid-field-editor"]=wa,e["grid-field-editor"]=ia,o["data-grid"]={bindingResolver:Yn,selectionItemResolver:Xn,updateColumnsResolver:Zn,callbackResolver:Jn}},pt.registerDesigner=(t,e,n)=>{t["data-grid"]=pt,e["data-grid"]=tn,e["data-grid-column"]=Fa,t["data-grid-column"]=Un,e["tree-grid-column"]=Ta,t["tree-grid-column"]=Un};const cl=ne.withInstall(pt);be.FDataGridDesign=pt,be.bindingResolver=Yn,be.callbackResolver=Jn,be.default=cl,be.getColumnHeader=dn,be.propsResolver=tn,be.selectionItemResolver=Xn,be.updateColumnsResolver=Zn,Object.defineProperties(be,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|