@farris/ui-vue 1.5.7 → 1.5.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/avatar/index.esm.js +4 -4
- package/components/avatar/index.umd.cjs +1 -1
- package/components/component/index.esm.js +4 -4
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +4 -4
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +4 -4
- package/components/content-container/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +1082 -1421
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.esm.js +4 -4
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/dynamic-form/index.esm.js +4 -4
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-view/index.esm.js +4 -4
- package/components/dynamic-view/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +4 -4
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +12 -11
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/flow-canvas/index.esm.js +4 -4
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/number-range/index.esm.js +4 -4
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +4 -4
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +1584 -2320
- package/components/page-header/index.umd.cjs +1 -1
- package/components/property-panel/index.esm.js +4 -4
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +77 -76
- package/components/query-solution/index.umd.cjs +6 -6
- package/components/response-layout/index.esm.js +4 -4
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +500 -3662
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +3008 -7347
- package/components/schema-selector/index.umd.cjs +6 -6
- package/components/section/index.esm.js +1564 -1635
- package/components/section/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +545 -4943
- package/components/tabs/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +100 -5841
- package/components/textarea/index.umd.cjs +2 -2
- package/components/time-picker/index.esm.js +4 -4
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/video/index.esm.js +4 -4
- package/components/video/index.umd.cjs +1 -1
- package/designer/button-edit/index.css +1 -0
- package/designer/button-edit/index.esm.js +1556 -0
- package/designer/button-edit/index.umd.cjs +1 -0
- package/designer/checkbox/index.esm.js +207 -0
- package/designer/checkbox/index.umd.cjs +1 -0
- package/designer/checkbox-group/index.esm.js +377 -0
- package/designer/checkbox-group/index.umd.cjs +1 -0
- package/designer/data-grid/index.css +1 -0
- package/designer/data-grid/index.esm.js +14332 -0
- package/designer/data-grid/index.umd.cjs +20 -0
- package/designer/data-view/index.esm.js +271 -0
- package/designer/data-view/index.umd.cjs +1 -0
- package/designer/date-picker/index.esm.js +1879 -0
- package/designer/date-picker/index.umd.cjs +1 -0
- package/designer/drawer/index.css +1 -0
- package/designer/drawer/index.esm.js +463 -0
- package/designer/drawer/index.umd.cjs +1 -0
- package/designer/farris-designer.all.esm.js +16815 -0
- package/designer/farris-designer.all.umd.cjs +32 -0
- package/designer/index.css +1 -0
- package/designer/input-group/index.esm.js +647 -0
- package/designer/input-group/index.umd.cjs +1 -0
- package/designer/radio-group/index.esm.js +6959 -0
- package/designer/radio-group/index.umd.cjs +1 -0
- package/designer/response-toolbar/index.esm.js +3015 -0
- package/designer/response-toolbar/index.umd.cjs +1 -0
- package/designer/tabs/index.esm.js +2200 -0
- package/designer/tabs/index.umd.cjs +1 -0
- package/designer/textarea/index.esm.js +249 -0
- package/designer/textarea/index.umd.cjs +1 -0
- package/designer/tree-grid/index.css +1 -0
- package/designer/tree-grid/index.esm.js +1673 -0
- package/designer/tree-grid/index.umd.cjs +1 -0
- package/farris.all.esm.js +57107 -57105
- package/farris.all.umd.cjs +16 -16
- package/package.json +1 -1
- package/types/date-picker/designer.d.ts +29 -0
- package/types/date-picker/index.d.ts +2 -1
- package/types/date-picker/src/date-picker.props.d.ts +0 -5
- package/types/date-picker/src/designer/date-picker.design.props.d.ts +22 -0
- package/types/response-toolbar/designer.d.ts +37 -0
- package/types/response-toolbar/index.d.ts +6 -5
- package/types/response-toolbar/src/composition/toolbar-item-dragula.d.ts +1 -2
- package/types/response-toolbar/src/composition/types.d.ts +1 -1
- package/types/response-toolbar/src/designer/response-toolbar.design.props.d.ts +13 -0
- package/types/response-toolbar/src/designer/use-designer-item-rules.d.ts +1 -2
- package/types/response-toolbar/src/designer/use-designer-rules.d.ts +1 -2
- package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -1
- package/types/response-toolbar/src/property-config/response-toolbar.property-config.d.ts +1 -1
- package/types/response-toolbar/src/response-toolbar.props.d.ts +0 -12
- package/types/response-toolbar/src/schema/schema-resolver.d.ts +1 -1
- package/types/tabs/designer.d.ts +28 -0
- package/types/tabs/index.d.ts +1 -0
- package/types/tabs/src/components/tab-page.props.d.ts +0 -1
- package/types/tabs/src/designer/tab-page.design.props.d.ts +1 -0
- package/types/tabs/src/designer/tabs.design.props.d.ts +12 -0
- package/types/tabs/src/tabs.props.d.ts +0 -11
- package/types/textarea/designer.d.ts +28 -0
- package/types/textarea/index.d.ts +0 -15
- package/types/textarea/src/designer/textarea.design.props.d.ts +6 -0
- package/types/textarea/src/designer/use-design-rules.d.ts +1 -2
- package/types/textarea/src/property-config/textarea.property-config.d.ts +1 -1
- package/types/textarea/src/schema/schema-resolver.d.ts +1 -1
- package/types/textarea/src/textarea.props.d.ts +0 -5
- /package/{components/textarea → designer/radio-group}/index.css +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
(function(be,ce){typeof exports=="object"&&typeof module<"u"?ce(exports,require("../../components/common/index.umd.js"),require("../../components/data-grid/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("vue"),require("@vueuse/core"),require("../../components/checkbox/index.umd.js"),require("../../components/modal/index.umd.js"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/tooltip/index.umd.js"),require("lodash-es"),require("../../components/pagination/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/search-box/index.umd.js"),require("../../components/tags/index.umd.js"),require("../../components/notify/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("../date-picker/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("../../components/list-view/index.umd.js"),require("../../components/lookup/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-spinner/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("../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("../tabs/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("../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("../../components/popover/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/designer-canvas/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")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/data-grid/index.umd.js","../../components/dynamic-resolver/index.umd.js","vue","@vueuse/core","../../components/checkbox/index.umd.js","../../components/modal/index.umd.js","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/filter-bar/index.umd.js","../../components/tooltip/index.umd.js","lodash-es","../../components/pagination/index.umd.js","../../components/button/index.umd.js","../../components/search-box/index.umd.js","../../components/tags/index.umd.js","../../components/notify/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","../date-picker/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","../../components/list-view/index.umd.js","../../components/lookup/index.umd.js","../../components/nav/index.umd.js","../../components/number-spinner/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","../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","../tabs/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","../textarea/index.umd.js","../tree-grid/index.umd.js","../../components/fieldset/index.umd.js","../drawer/index.umd.js","../../components/html-template/index.umd.js","../../components/popover/index.umd.js","../../components/data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/designer-canvas/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"],ce):(be=typeof globalThis<"u"?globalThis:be||self,ce(be["data-grid"]={},be.common,be.FDataGrid,be.dynamicResolver,be.Vue,be.VueUseCore,be.checkbox,null,null,null,null,null,be.LodashES,null,be.FButton,null,be.FTags,be.notify,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,null,null,be.FTreeview,null,null,null,null,null,null,null,null,null,be.FPopover,be.dataView,be.propertyPanel,be.designerCanvas,null,null,be.FFieldSelector))})(this,function(be,ce,ht,Le,i,Ut,$t,ua,fa,pa,ma,ha,Oe,ga,Nn,ya,Pn,Bn,Te,On,va,ba,Ca,wa,Sa,xa,Fa,Ta,_a,Ma,ka,Ea,Ia,Va,Na,Pa,Ba,Oa,$a,ja,Ra,Aa,Ha,La,Da,Wa,qa,Ga,za,Ua,Ya,Xa,Za,Ja,Qa,Ka,el,tl,nl,ol,il,rl,$n,al,ll,sl,cl,dl,ul,fl,pl,ml,jn,pe,Ue,Yt,hl,gl,Et){"use strict";var ca=Object.defineProperty;var da=(be,ce,ht)=>ce in be?ca(be,ce,{enumerable:!0,configurable:!0,writable:!0,value:ht}):be[ce]=ht;var le=(be,ce,ht)=>da(be,typeof ce!="symbol"?ce+"":ce,ht);const Rn=Object.assign({},{appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:n=>!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:!0,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}},{disabled:{},editable:{},componentId:{type:String,default:""}});function An(n,e,t,o,r){const{getGridHeaderCells:a}=r,l=120,s=50,d=i.computed(()=>{var h;return((h=n.rowNumber)==null?void 0:h.enable)||!1}),c=i.computed(()=>{var h,y;return((h=n.selection)==null?void 0:h.multiSelect)||((y=n.selection)==null?void 0:y.showCheckbox)||!1}),f=i.computed(()=>{var h;return 0+(d.value?((h=n.rowNumber)==null?void 0:h.width)||32:0)+(c.value?s:0)}),u=i.computed(()=>{var h;return(h=n.columnOption)==null?void 0:h.fitColumns}),p=i.computed(()=>{var h;return u.value&&((h=n.columnOption)==null?void 0:h.fitMode)||"none"});function m(h,y,k){const V=parseInt(h.width,10)/100;return k*V}function g(h,y,k){return typeof h.width=="string"?m(h,y,k):h.width||l}function F(h,y){const k=[],V=[];let b=0;h.value.primaryColumns.forEach(M=>{typeof M.width=="string"?V.push(M):(M.width=M.width||l,b+=M.width,k.push(M))});const O=y*(k.length/h.value.primaryColumns.length);k.forEach(M=>{const E=O*(M.width/b);M.actualWidth=E,h.value.primaryColumnsWidth+=M.actualWidth});const N=y-O;V.forEach(M=>{const E=m(M,h.value,N);M.actualWidth=E,h.value.primaryColumnsWidth+=M.actualWidth})}function S(h,y){const k=[],V=[],b=new WeakMap;let O=0,N=0;if(h.value.primaryColumns.forEach(E=>{if(typeof E.width=="string"){const P=m(E,h.value,y);b.set(E,P),O+=P,V.push(E)}else E.width=E.width||l,N+=E.width,k.push(E)}),y-O>N){const E=y-O;V.forEach(P=>{P.actualWidth=b.get(P)||l,h.value.primaryColumnsWidth+=P.actualWidth}),k.forEach(P=>{P.actualWidth=E*(P.width/N),h.value.primaryColumnsWidth+=P.actualWidth})}else F(h,y)}function C(h,y){h.value.primaryColumns.forEach(k=>{k.actualWidth=g(k,h.value,y),h.value.primaryColumnsWidth+=k.actualWidth})}const x={expand:S,none:C,percentage:F};function w(h){h.value.leftHeaderColumns=Array.from(a(h.value.leftColumns).values()),h.value.primaryHeaderColumns=Array.from(a(h.value.primaryColumns).values()),h.value.rightHeaderColumns=Array.from(a(h.value.rightColumns).values())}function T(h){h.value.leftColumnsWidth=0,h.value.primaryColumnsWidth=0,h.value.rightColumnsWidth=0,h.value.leftColumns.forEach(y=>{h.value.leftColumnsWidth+=y.actualWidth||0}),h.value.primaryColumns.forEach(y=>{h.value.primaryColumnsWidth+=y.actualWidth||0}),h.value.rightColumns.forEach(y=>{h.value.rightColumnsWidth+=y.actualWidth||0}),h.value=Object.assign({},h.value)}function _(h,y,k){var P;let V=0;const b=h.value.primaryColumns,O=h.value.rightColumns;h.value.rightColumns.forEach(H=>{H.actualWidth=g(H,h.value,y),V+=H.actualWidth});const N=k-V,M=x[p.value];if(M&&M(h,N),h.value.primaryColumnsWidth+V<=k)return h.value.primaryColumns=[...b,...O],h.value.primaryColumnsWidth+=V,h.value.rightColumns=[],h.value.rightColumnsWidth=0,!0;const E=new Map;return E.set("primary",[]),E.set("right",[]),h.value.primaryColumns.reduce((H,I)=>{var R,U;return I.fixed==="right"?(R=H.get("right"))==null||R.push(I):(U=H.get("primary"))==null||U.push(I),H},E),(P=E.get("right"))!=null&&P.length&&(h.value.primaryColumns=[...E.get("primary")||[]],h.value.rightColumns=[...E.get("right")||[]]),h.value.primaryColumnsWidth=0,h.value.rightColumnsWidth=0,!1}function v(){if(t.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const h=t.value.clientWidth-f.value;e.value.leftColumns.forEach(k=>{k.actualWidth=g(k,e.value,h),e.value.leftColumnsWidth+=k.actualWidth});const y=h-e.value.leftColumnsWidth;if(_(e,h,y))o.value=y;else{e.value.rightColumns.forEach(b=>{b.actualWidth=g(b,e.value,h),e.value.rightColumnsWidth+=b.actualWidth});const k=h-e.value.leftColumnsWidth-e.value.rightColumnsWidth,V=x[p.value];V&&V(e,k),o.value=k}w(e),e.value=Object.assign({},e.value)}}return i.watch(()=>{var h;return(h=n.columnOption)==null?void 0:h.fitColumns},(h,y)=>{h!==y&&h&&v()}),i.watch(p,(h,y)=>{h!==y&&u.value&&v()}),{calculateColumnHeaders:w,calculateColumnsSize:v,calculateColumnsWidth:T}}const Hn="";function Ln(n){const t={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(t);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 a=i.ref(n.summary),l=i.computed(()=>{const w=a.value;return(w==null?void 0:w.groupFields)||[]});function s(){o.value.rightColumns.forEach(_=>{_.showSetting=!1}),o.value.primaryColumns.forEach(_=>{_.showSetting=!1});const w=o.value.rightColumns,T=o.value.primaryColumns;w.length>0?w[w.length-1].showSetting=!0:T.length>0&&(T[T.length-1].showSetting=!0)}function d(w){r();const T=new Map;return l.value&&l.value.reduce((_,v)=>(_.set(v,!0),_),T),w.reduce((_,v)=>(v.filter=v.filter||Hn,v.fixed==="left"?(o.value.leftColumns.push(v),o.value.leftColumnsMap.set(v.field,v),o.value.leftColumnsWidth+=v.actualWidth):v.fixed==="right"?(o.value.rightColumns.push(v),o.value.rightColumnsMap.set(v.field,v),o.value.rightColumnsWidth+=v.actualWidth):(o.value.primaryColumns.push(v),o.value.primaryColumnsMap.set(v.field,v),o.value.primaryColumnsWidth+=v.actualWidth),T.has(v.field)&&o.value.summaryColumns.push(v),_),o),s(),o}d(n.columns);const c=i.computed(()=>o.value.leftColumns.length>0),f=i.computed(()=>o.value.rightColumns.length>0);function u(w,T){return T.sortable&&T.sort&&T.sort!=="none"&&w.push(T),w}function p(w,T){return w.sortOrder=w.sortOrder||0,T.sortOrder=T.sortOrder||0,w.sortOrder===T.sortOrder?0:w.sortOrder<T.sortOrder?-1:1}function m(w,T){return w.sortOrder=w.sortOrder||0,T.sortOrder=T.sortOrder||0,w.sortOrder===T.sortOrder?0:w.sortOrder<T.sortOrder?1:-1}function g(w,T){return T.filterable&&w.push(T),w}function F(){const w=[];return o.value.leftColumns.reduce(g,w),o.value.primaryColumns.reduce(g,w),o.value.rightColumns.reduce(g,w),w}function S(){const w=[];o.value.leftColumns.reduce(u,w),o.value.primaryColumns.reduce(u,w),o.value.rightColumns.reduce(u,w);const T=Math.max(...w.map(_=>_.sortOrder||0));return w.sort(m).map(_=>{const v=_.sortOrder||T+1;return _.sortOrder=v,_}).sort(p).map((_,v)=>{const h=v+1;return _.sortOrder=h,_})}function C(w,T,_){const v=w.map(h=>{const y=_.getSorterByColumn(h),k=h.sort==="asc",V=h.sort==="desc",b=k?y.ascend:V?y.decend:void 0;return{field:h.field,compare:b}});T.setSorters(v)}function x(w,T){const _=S();C(_,w,T)}return{applyColumnSorter:x,collectionFilterableColumns:F,applySortableColumns:C,collectionSortableColumns:S,columnContext:o,hasLeftFixedColumn:c,hasRightFixedColumn:f,updateColumnRenderContext:d,updateColumnSettingIcon:s}}function Dn(n,e,t,o,r,a,l,s){const d=i.ref(o.value-1+r),c=i.ref(0),{renderDataRow:f}=a,u=l?l.renderGroupRow:f,p=s?s.renderSummaryRow:f;function m(S){let C=f;return S.__fv_data_grid_group_row__&&(C=u),S.__fv_data_grid_group_summary__&&(C=p),C}function g(S,C,x,w){const{dataView:T}=t,_=[];if(T.value.length>0){const v=w?Date.now().toString():"";let h=S,y=0;const k=C-S+1;for(;_.length<k&&h<T.value.length;){const V=T.value[h],b=T.value[h-1]||x,O=_[y-1],N=b?(b.__fv_data_position__||0)+(b.__fv_data_height__||0):0,E=m(V)(V,b,O,h,N,e.value,_);E.refreshKey=v,_.push(E),y++,h++}}return c.value=_.length>0?_[0].index:0,d.value=_.length>0?_[_.length-1].index:0,_}function F(S,C,x){const w=C.groupField||"",{groupValue:T}=C;t[S](w,T);const{dataView:_}=t,v=x[0].index,h=Math.min(v+o.value+r+1,_.value.length-1);return g(v,h)}return{getVisualData:g,maxVisibleRowIndex:d,minVisibleRowIndex:c,toggleGroupRow:F}}var je=(n=>(n[n.readonly=0]="readonly",n[n.editable=1]="editable",n[n.editing=2]="editing",n))(je||{}),Qe=(n=>(n[n.initial=0]="initial",n[n.editing=1]="editing",n))(Qe||{}),gt=(n=>(n[n.data=0]="data",n[n.group=1]="group",n[n.summary=2]="summary",n))(gt||{}),De=(n=>(n[n.none=0]="none",n[n.filterable=1]="filterable",n[n.sortable=2]="sortable",n[n.filtered=4]="filtered",n[n.sorted=8]="sorted",n[n.ascending=16]="ascending",n[n.descending=32]="descending",n))(De||{});function Wn(n,e,t){const{horizontalScrollThumbStyle:o,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:a}=t;function l(){return a.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:l}}function qn(){function n(o,r){switch(o.command){case"edit":case"remove":return r.status===Qe.initial;case"accept":case"cancel":return r.status===Qe.editing;default:return!o.hidden}}function e(o,r,a){switch(o.onClick(r,a.dataIndex,a),o.command){case"edit":a.status,Qe.editing;break;case"accept":case"cancel":a.status,Qe.initial;break}}function t(o,r){return o.commands&&o.commands.map(a=>n(a,r)&&i.createVNode(Nn,{class:"ml-2",type:a.type,size:a.size||"small",onClick:l=>e(a,l,r),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),a.text,i.createTextVNode(" ")]}))}return{renderCommandColumn:t}}function Gn(n){const e=i.ref(n.minHeight),t=i.ref(n.minWidth),o=i.ref(n.height),r=i.ref(n.width),a=i.computed(()=>o.value<=0?0:Math.max(o.value,e.value)),l=i.computed(()=>r.value<=0?0:Math.max(r.value,t.value));return i.watch([()=>n.height,()=>n.width,()=>n.minHeight,()=>n.minWidth],([d,c,f,u])=>{e.value=Number(f),t.value=Number(u),o.value=Number(d),r.value=Number(c)}),{containerStyleObject:i.computed(()=>({height:a.value>0?`${a.value}px`:n.fit?"100%":"",width:l.value>0?`${l.value}px`:n.fit?"100%":"",flex:"1 1 0"}))}}i.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function zn(n){const t=i.ref(n.commandOption.enable||!1),o=i.ref(n.commandOption.commands||[]);function r(a){var l;if(t.value&&!(a.value.findIndex(d=>d.dataType==="commands")>-1)){const d={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:o.value,halign:((l=n.commandOption)==null?void 0:l.halign)||"left",visible:!0};a.value.push(d)}}return{applyCommands:r}}function Un(n,e){var c;const t=i.ref((c=n.columnOption)==null?void 0:c.groups);function o(f,u,p,m,g){const F={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:p,resizable:!0,title:f.title||"",status:De.none,popoverRef:i.ref(),showPopover:!1,column:null,sortType:"none"},S=m||F;if(f.group){let C=1;f.group.reduce((x,w)=>{if(typeof w=="string"){const T=u.get(w);T&&(g.fieldToRootMap.set(w,S),x.actualWidth+=T.actualWidth,x.children.push(T))}else{const T=o(w,u,x,S,g);C=Math.max(C,T.depth),x.actualWidth+=T.actualWidth,x.children.push(T)}return x},F),F.depth+=C}return e.value.headerDepth=Math.max(e.value.headerDepth,F.depth),F}function r(f){const u={groupedCells:new Map,fieldToRootMap:new Map};return t.value&&t.value.reduce((p,m)=>{const g=o(m,f,null,null,u);return p.groupedCells.set(m.field,g),p},u),u}function a(f){if(!f||f.length===0)return 0;const u=f[0];return u.children&&u.children.length>0&&(u.left=a(u.children)),u.left}function l(f,u){const p=e.value.headerDepth;f.forEach(m=>{m.layer=u?u.layer+1:1;const g=m.children&&m.children.length===0;m.depth=g?p-(m.layer-1):1,m.left=g?m.left:a(m.children),m.children&&l(m.children,m)})}function s(f,u){const p=new Map;return f.forEach(m=>{const g=u.fieldToRootMap.get(m.field),F=g!=null;F&&!p.has(g.field)&&p.set(g.field,g),F||p.set(m.field,m)}),l(Array.from(p.values())),p}function d(f){let u=new Map,p=0;if(f.reduce((m,g)=>{let F=De.none;F=g.filterable?F|De.filterable:F,F=g.sort&&g.sort!=="none"?F|De.sorted|(g.sort==="asc"?De.ascending:De.descending):F;const S=g.field;return m.set(S,{actualWidth:g.actualWidth||0,children:[],depth:1,layer:1,left:p,field:S,parent:null,resizable:g.resizable===void 0?!0:g.resizable,title:g.title,status:F,popoverRef:i.ref(),showPopover:!1,column:g,filterValue:null,sortType:g.sort||"none",showSetting:g.showSetting,draggable:g.draggable}),p+=g.actualWidth||0,m},u),t.value){const m=r(u);u=s(u,m)}return u}return{getGridHeaderCells:d}}function Yn(n,e){var x;ce.useGuid();const{idField:t}=e,o=i.ref(n.summary),r=i.ref(n.group),a=i.ref(((x=n.group)==null?void 0:x.groupFields)||[]),l=i.computed(()=>{var w;return(w=n.group)==null?void 0:w.enable}),s=i.computed(()=>{var w;return(w=n.group)==null?void 0:w.showGroupPanel}),d=i.computed(()=>{const w=o.value;return(w==null?void 0:w.groupFields)||[]}),c=i.computed(()=>{const w=r.value;return w&&w.showSummary}),f=i.ref(0),u=new Map;let p=[];function m(w,T,_,v,h){const y=v[_];y&&(T.reduce((k,V,b)=>{var M;const O=V[y];let N=k.get(O);if(!N){const E=d.value.reduce((P,H)=>(P.set(H,0),P),new Map);N={field:y,title:((M=h.get(y))==null?void 0:M.title)||y,value:O,layer:_,details:[],groupSummaries:E},k.set(O,N)}return d.value&&d.value.forEach(E=>{if(N){const P=N.groupSummaries.get(E)||0;N.groupSummaries.set(E,P+V[E])}}),N.details.push(V),k},w),_<v.length-1&&w.forEach((k,V)=>{k.nestGroup=new Map,m(k.nestGroup,k.details,_+1,v,h),k.details=[]}))}function g(w,T){return n.group&&n.group.formatter?n.group.formatter(w.value,{...w,total:T}):`${w.title}:${w.value} (${T})`}function F(w,T){const _=[];return w.forEach(v=>{const h={[t.value]:`group_of_${T?T[t.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};let y=0;if(_.push(h),v.nestGroup){const k=F(v.nestGroup,h);_.push(...k),y+=k.length}if(v.details&&v.details.length&&(_.push(...v.details),y+=v.details.length),c.value){const k={__fv_data_grid_group_field__:v.field,__fv_data_grid_group_layer__:v.layer,__fv_data_grid_group_summary__:!0};k[t.value]=`summary_of_${v.field}_${v.value}`,k[v.field]=Array.from(v.groupSummaries.entries()).reduce((V,[b,O])=>`${V} ${b} total:${O} `,""),_.push(k)}v.groupSummaries&&v.groupSummaries.size&&v.groupSummaries.forEach((k,V)=>{h[V]=k}),h[v.field]=g(v,y),h.value=v.value}),_.forEach((v,h)=>{v.__fv_data_index__=h}),_}function S(w,T,_){return!w||w.length===0||!T.length?T:(w.join(","),u.clear(),p=[],T=T.filter(v=>!v.__fv_data_grid_group_row__),m(u,T,0,w,_),p=F(u),p)}function C(w){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":w.collapse}}return{collpaseGroupIconClass:C,generateGroupData:S,groupFields:a,shouldGroupingData:l,showGroupPanel:s,groupRowSize:f}}function Xn(n,e,t,o){const r=i.ref(0),a=i.ref(!!n.hierarchy),{idField:l}=o,{collapseField:s,hasChildrenField:d,parentIdField:c}=t,f=new Map,u=new Map,p=new Map;function m(A,j){u.clear(),A.reduce((D,q)=>{const ee=q[c.value]!==void 0?q[c.value]:"";if(ee&&j.has(ee)){const ae=j.get(ee),de=isNaN(Number(ae.__fv_layer__))?1:Number(ae.__fv_layer__);q.__fv_layer__=de+1,q.__fv_parent_index__=ae.__fv_index__,ae.__fv_hasChildren__=!0}else q.__fv_layer__=1;const Y=D.has(ee)?D.get(ee):[];return Y.push(q),D.set(ee,Y),D},u)}function g(A){p.clear(),A.reduce((j,D)=>{const q=D[l.value];return j.set(q,D),j},p)}function F(A){A.forEach(j=>{const D=j[l.value];j.__fv_children_index__.map(ee=>A[ee]).forEach(ee=>{ee.__fv_parents__=new Map([...j.__fv_parents__.entries(),[D,!0]])})})}function S(A){A.forEach(j=>{const D=new Set(j.__fv_children_index__);j.__fv_children_index__=[...D].sort((q,ee)=>q-ee)})}function C(A){A.forEach(j=>{const D=j.__fv_parents__;Array.from(D.keys()).map(q=>p.get(q)).forEach(q=>{q.__fv_children_index__.push(j.__fv_index__)})}),S(A)}function x(A){A.forEach(j=>{j.__fv_child_with_lines__=[],j.__fv_child_length__=j.__fv_descendant_index__.length,j.__fv_descendant_index__.map(D=>A[D]).reduce((D,q)=>(D.__fv_child_length__+=q.__fv_children_index__.length,D.__fv_child_with_lines__.push(...q.__fv_children_index__,q.__fv_index__),D),j)})}function w(A,j){return{id:A,index:j,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function T(A,j,D){Array.from(j.keys()).forEach(q=>{j.get(q).reduce((Y,ae)=>{const de=ae[l.value],ye=A.get(ae[l.value]),Ve=A.get(q),Pe=D.get(q);return Ve&&Pe&&(Ve.children.set(de,ye),Ve.children.set(de,ye),ye.parentId=q,ye.parentIndex=Ve.index,ye.parents.set(q,Ve)),Y},A)})}function _(A){A.children.forEach(D=>{D.parents=new Map([...A.parents.entries(),[A.id,A]]),_(D)})}function v(A,j){A.filter(D=>D[c.value]===void 0||D[c.value]==="").forEach(D=>{const q=D[l.value],ee=j.get(q);_(ee)})}function h(A){Array.from(A.values()).forEach(j=>{Array.from(j.parents.values()).forEach(D=>{D.descendant.set(j.id,j)})})}function y(A){f.clear(),A.forEach((j,D)=>{const q=j[l.value];f.set(q,w(q,D))}),g(A),m(A,p),T(f,u,p),v(A,f),h(f)}function k(A){const j=A[l.value],D=f.get(j);return D&&D.children.size>0}function V(A){return A[d.value]&&!k(A)}function b(A){const j=A[l.value],D=f.get(j);return D&&D.visibleInHierarchy}function O(){r.value=Date.now()}function N(A,j){j.forEach(D=>{const q=f.get(D[l.value]),ee=f.get(A),Y=p.get(A);ee&&Y&&(q.visibleInHierarchy=!Y[s.value]&&ee.visibleInHierarchy)}),O()}function M(A){if(u.has(A)){const D=u.get(A);N(A,D),D.map(q=>q[l.value]).forEach(q=>M(q))}}function E(A){const j=A[l.value];M(j)}function P(A,j,D=0){A.forEach(q=>{const ee=V(q),Y=q.__fv_layer__<=D,ae=j==="ToCollapse"?q.__fv_layer__<=D:!(q.__fv_layer__<=D),de=Y?ae:q[s.value];q[s.value]=ee||de});for(const[q,ee]of u.entries())N(q,ee);return A}function H(A,j){P(A,"ToCollapse",j)}function I(A,j){P(A,"ToExpand",j)}function R(A){A.forEach((j,D)=>{var ae;const q=j[l.value],ee=u.has(q)?(ae=u.get(q))==null?void 0:ae.map(de=>de.__fv_index__):[],Y=w(q,D);j.__fv_graph_node__=Y,j.__fv_children_index__=ee,j.__fv_descendant_index__=[...ee],j.__fv_parents__=new Map,V(j)&&(j[s.value]=!0)})}function U(A){var q,ee;y(e.value),R(A),F(A),C(A),n.showLines&&x(A);const D=((q=n.hierarchy)==null?void 0:q.collapseTo)!==void 0?Number((ee=n.hierarchy)==null?void 0:ee.collapseTo):0;return P(A,"ToCollapse",D),A}function B(A,j,D){const ee=D.value[A][l.value],Y=f.get(ee);if(Y){const ae=f.get(Y.parentId);let de=D.value.length-1;if(ae){const ye=Array.from(ae.children.keys()).indexOf(Y.id);if(ye===ae.children.size-1){const Pe=Array.from(ae.descendant.values())[ae.descendant.size-1];de=D.value.findIndex(oe=>oe[l.value]===Pe.id)+1}else{const Pe=Array.from(ae.children.values())[ye+1];de=D.value.findIndex(oe=>oe[l.value]===Pe.id)}j[d.value]=!1,j[c.value]=ae.id,D.value.splice(de,0,j)}}}function L(A,j,D){const q=D.value[A],ee=q[l.value];if(f.get(ee)){const de=D.value.findIndex(ye=>ye[l.value]===ee)+1;q[d.value]=!0,q[s.value]=!1,j[d.value]=!1,j[c.value]=ee,D.value.splice(de,0,j)}}function Z(A,j){const D=A[l.value],q=f.get(D),ee=Array.from(q.descendant.keys());ee.unshift(D);const Y=f.get(q.parentId);if(Y&&(Y.children.delete(D),Y.children.size===0)){const de=j.find(ye=>ye[l.value]===q.parentId);de[d.value]=!1,de[s.value]=!1}return j.filter(de=>ee.indexOf(de.id)===-1)}return{checkVisibleInHierarchy:r,collapseTo:H,expandTo:I,generateHierarchyData:U,hasRealChildren:k,insertSibling:B,insertChild:L,isVisibleInTree:b,shouldStratifyData:a,toggleChildrenVisibiltyByCollapseStatus:E,trimmedOriginalData:Z}}function Zn(n,e,t,o,r){var qe;const a=new Map,l=new Map,s=new Map,d=new Map,c=new Map,f=i.ref([]),u=i.ref([]),p=Yn(n,r),{generateGroupData:m,groupFields:g,shouldGroupingData:F}=p,S=i.ref(n.data),C=Xn(n,S,o,r),{collapseTo:x,expandTo:w,generateHierarchyData:T,hasRealChildren:_,insertSibling:v,insertChild:h,isVisibleInTree:y,shouldStratifyData:k,toggleChildrenVisibiltyByCollapseStatus:V,trimmedOriginalData:b,checkVisibleInHierarchy:O}=C,{idField:N,reviseIdentifyField:M}=r,E=i.ref(n.newDataItem),P=i.ref(n.data||[]),H=i.ref(n.data),{flatTreeData:I}=Eo(n);function R(G){return I(G)}if(n.hierarchy&&n.data&&((qe=n.data[0])!=null&&qe.children)){const G=R(n.data);S.value=G,P.value=G,H.value=G}const U=i.ref(n.summary),B=i.computed(()=>{const G=U.value;return(G==null?void 0:G.groupFields)||[]});let L=new Map;const Z=i.ref(P.value.length),A=i.ref(n.pagination);function j(){return A.value&&A.value.enable&&A.value.size>0?A.value.size:P.value.length}const D=i.ref(1),q=i.computed(()=>A.value&&A.value.enable&&A.value.mode!=="server"),ee=i.computed(()=>A.value&&A.value.enable&&A.value.mode==="server"),Y=new Bn.FNotifyService;function ae(G,re){const he=Math.ceil(G.length/re);let Fe=0;const $=[],X=[],Q=[];for(;Fe<he;){const J=G.slice(Fe*re,(Fe+1)*re),me=m(g.value,J,e);X[Fe]=me.filter(fe=>fe.__fv_data_grid_group_row__).length,$.push(...me),Fe++}return X.reduce((J,me,fe)=>(J=J+me,Q.push(J),J),0),{groupData:$,groupRowSizeList:X,accumulateGroupRowSize:Q}}function de(){var me;P.value=S.value,q.value&&(Z.value=P.value.length),F.value&&!q.value&&(P.value=m(g.value,S.value,e)),L=B.value.reduce((fe,ke)=>(fe.set(ke,0),fe),L);const G=0,re=j(),he=(D.value-1)*re;let $=he>P.value.length-1||ee.value?G:he,X=ee.value?P.value.length:Math.min($+re,P.value.length);if(F.value&&q.value){const{accumulateGroupRowSize:fe,groupData:ke,groupRowSizeList:we}=ae(S.value,re);P.value=ke;const Ne=we[D.value-1];$+=D.value-2<0?0:fe[D.value-2],X=$+re+Ne}let Q=0;const J=[];if(P.value.length){M(P.value);const fe=N.value!==n.idField;for(let ke=$;ke<X;ke++){const we=P.value[ke];we.__fv_data_grid_group_row__?(Q=0,we.__fv_data_index__=""):we.__fv_data_grid_group_summary__?we.__fv_data_index__="":(Q++,we.__fv_data_index__=Q+(D.value-1)*re),we.__fv_index__=ke,we.__fv_visible_index__=ke,n.rowOption&&n.rowOption.disabledField&&(we.__fv_disabled__=we[(me=n.rowOption)==null?void 0:me.disabledField]),fe&&(we[N.value]=ke),B.value.forEach(Ne=>{const Xe=L.get(Ne)||0;L.set(Ne,Xe+we[Ne])}),J.push(we)}}return k.value&&T(J),H.value=[...J],J}const ye=i.ref(de()),Ve=i.computed(()=>(O.value,ye.value.filter(G=>k.value?G.__fv_visible__!==!1&&y(G):G.__fv_visible__!==!1)));function Pe(){Ve.value.forEach((G,re)=>(G.__fv_visible_index__=re,G))}function W(G,re,he=!1){const $=(he?de():[...H.value]).filter(J=>t.apply(J)),X=G&&G.length?$.filter(J=>G.reduce((me,fe)=>me&&fe.filter(J),!0)):$,Q=re&&re.length?X.sort((J,me)=>{const fe=[...re],ke=fe.shift();let we=ke.compare(J[ke.field],me[ke.field]);for(;we===0&&fe.length!==0;){const Ne=fe.shift();Ne&&(we=Ne.compare(J[Ne.field],me[Ne.field]))}return we}):X;return ye.value=Q.map((J,me)=>{if(J.__fv_data_grid_group_row__){const fe=`group_of_${J.__fv_data_grid_group_field__}_${J.__fv_data_grid_group_value__}`;J.__fv_data_grid_group_collapse__=!!a.get(fe)}return J.__fv_index__=me,J.__fv_visible_index__=me,J}),ye.value}function oe(G){return c.clear(),u.value=G,u.value.reduce((re,he)=>(re.set(he.field,he),re),c),W([],u.value)}function ne(G,re){return c.set(G,re),u.value=Array.from(c.values()),W([],u.value)}function Se(G){return c.delete(G),u.value=Array.from(c.values()),W([],u.value)}function Ce(G,re){return l.set(G,re),f.value=Array.from(l.values()),W([],Array.from(c.values()))}function Ie(G){return l.delete(G),f.value=Array.from(l.values()),W([],Array.from(c.values()),!0)}function Ye(){return l.clear(),f.value=[],W([],Array.from(c.values()),!0)}function Ke(G,re){const he=`group_of_${G}_${re}`;a.set(he,!0);const Fe=$=>$[G]!==re;return s.set(`collapse_${G}_${re}`,{field:G,fieldName:G,fieldType:"string",filterValue:re,filter:Fe}),W(Array.from(s.values()),Array.from(c.values()))}function rt(G){x(ye.value,G)}function et(G){w(ye.value,G)}function tt(G,re){const he=`group_of_${G}_${re}`;return a.set(he,!1),s.delete(`collapse_${G}_${re}`),W(Array.from(s.values()),Array.from(c.values()),!0)}function z(G){const re=G.raw[N.value],he=Fe=>!Fe.__fv_parents__.has(re);d.set(`fold_${re}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(re),filter:he}),W(Array.from(d.values()),Array.from(c.values())),T(ye.value)}function ge(G){const re=G[N.value];d.delete(`fold_${re}`)}function _e(G){ge(G.raw),W(Array.from(d.values()),Array.from(c.values()),!0),T(ye.value)}function xe(){const G=de();ye.value=G,n.hierarchy&&(W(Array.from(d.values()),Array.from(c.values())),T(ye.value))}function We(G){const he=n.hierarchy&&G&&G.length&&G[0].children?R(G):G;S.value=he,xe()}function at(G,re,he){return(G&&G.length?ye.value.filter(($,X)=>G.reduce((Q,J)=>Q&&J.filter($),!0)):ye.value).slice(re,he)}function ft(G){const re=j(),he=Math.ceil(Z.value/re);0<=G&&G<=he&&(D.value=G,xe())}function nt(G){S.value.push(Oe.cloneDeep(G)),ye.value=de()}function bt(G=0){if(!(G>-1))return!1;const he=E.value();n.hierarchy?v(G,he,S):S.value.splice(G,0,he),xe()}function pt(G=0){if(!(G>-1&&n.hierarchy))return!1;const he=E.value(),Fe=S.value[G];ge(Fe),h(G,he,S),xe()}function lt(G){const re=G?G-1:0;S.value.splice(re,1),xe()}function Ct(G){const re=S.value.findIndex(he=>he[N.value]===G);re!==-1&&(S.value.splice(re,1),xe())}function mt(G){const re=G>-1?S.value[G]:null;if(!(re&&re.deletable!==!1))return!1;S.value=b(re,S.value),xe()}function K(){const G=s.size>0?Array.from(s.values()):[];return W(G,Array.from(c.values()))}function ie(G){A.value.size=G}function ue(G){A.value&&(ie(G),xe())}function Me(G,re){const he=S.value[Number(G)-1];he.editable!==!1?(he.name=re,xe()):Y.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function Be(G){return G.map(he=>{const Fe=H.value.findIndex($=>""+$[N.value]==""+he);return Fe>-1?H.value[Fe]:null}).filter(he=>he!=null)}return{addFilter:Ce,addNewDataItem:nt,addSorter:ne,updatePageSize:ie,changePageSizeTo:ue,collapse:Ke,collapseTo:rt,dataView:ye,editDataItem:Me,expand:tt,expandTo:et,filters:f,fold:z,getRange:at,getSelectionItems:Be,hasRealChildren:_,insertNewChildDataItem:pt,insertNewDataItem:bt,isVisibleInTree:y,load:We,navigatePageTo:ft,pageIndex:D,rawView:H,refresh:K,removeAllFilter:Ye,removeDataItem:lt,removeDataItemById:Ct,removeFilter:Ie,removeHierarchyDataItem:mt,removeSorter:Se,reOrderVisibleIndex:Pe,setSorters:oe,sorters:u,summaries:L,toggleChildrenVisibiltyByCollapseStatus:V,totalItems:Z,unFold:_e,updateDataView:xe,visibleDataItems:Ve,shouldGroupingData:F}}const Jn=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Qn={equal:(n,e,t)=>n&&n[e]===t,notEqual:(n,e,t)=>n&&n[e]!==t,contain:(n,e,t)=>n?(n[e]||"").indexOf(t)>-1:!1,startWidth:(n,e,t)=>n?(n[e]||"").startsWith(t):!1,endWidth:(n,e,t)=>n?(n[e]||"").endsWith(t):!1},Kn={equal:(n,e,t)=>n&&n[e]===t,in:(n,e,t)=>{if(n){const o=n[e];return t.indexOf(o)>-1}return!1},notEqual:(n,e,t)=>n&&n[e]!==t},eo={equal:(n,e,t)=>{if(n){const o=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()===o}return!1},notEqual:(n,e,t)=>{if(n){const o=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()!==o}return!1},greaterThan:(n,e,t)=>{if(n){const o=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()>o}return!1},greaterThanOrEqual:(n,e,t)=>{if(n){const o=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()>=o}return!1},lessThan:(n,e,t)=>{if(n){const o=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()<o}return!1},lessThanOrEqual:(n,e,t)=>{if(n){const o=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()<=o}return!1}},to={equal:(n,e,t)=>n?String(t).split(",").includes(String(n[e])):!1,in:(n,e,t)=>{if(n){const o=n[e];return t.indexOf(o)>-1}return!1},notEqual:(n,e,t)=>n?String(t).split(",").findIndex(r=>r===String(n[e]))===-1:!1},no={equal:(n,e,t)=>{if(n){const o=Number.parseFloat(String(t)),r=Number.parseFloat(String(n[e]));return isNaN(o)?isNaN(r):o===r}return!1},notEqual:(n,e,t)=>{if(n){const o=Number.parseFloat(String(t)),r=Number.parseFloat(String(n[e]));return isNaN(o)?!0:o!==r}return!1},greaterThan:(n,e,t)=>{if(n){const o=Number.parseFloat(String(t)),r=Number.parseFloat(String(n[e]));return isNaN(o)?isNaN(r):r>o}return!1},greaterThanOrEqual:(n,e,t)=>{if(n){const o=Number.parseFloat(String(t)),r=Number.parseFloat(String(n[e]));return isNaN(o)?isNaN(r):r>=o}return!1},lessThan:(n,e,t)=>{if(n){const o=Number.parseFloat(String(t)),r=Number.parseFloat(String(n[e]));return isNaN(o)?isNaN(r):r<o}return!1},lessThanOrEqual:(n,e,t)=>{if(n){const o=Number.parseFloat(String(t)),r=Number.parseFloat(String(n[e]));return isNaN(o)?isNaN(r):r<=o}return!1}},oo=new Map([["boolean",Kn],["datetime",eo],["enum",to],["number",no],["text",Qn]]);function io(){const n=i.ref([]),e=new Map,{loadConditionGroup:t}=Te.useCondition();function o(S,C){switch(S){case"check-box":return new Te.CheckBoxValue({value:C});case"combo-list":return new Te.ComboListValue({value:C});case"combo-lookup":return new Te.ComboLookupValue({value:C});case"input-group":return new Te.TextValue({value:C});case"date-picker":return new Te.DatePickerValue({value:C});case"date-range":return new Te.DateRangeValue({value:C});case"datetime-picker":return new Te.DateTimePickerValue({value:C});case"datetime-range":return new Te.DateRangeValue({value:C});case"lookup":return new Te.LookupValue({value:C});case"month-picker":return new Te.MonthPickerValue({value:C});case"month-range":return new Te.MonthRangeValue({value:C});case"number-range":return new Te.NumberRangeValue({value:C});case"number-spinner":return new Te.NumberSpinnerValue({value:C});case"radio-group":return new Te.RadioGroupValue({value:C});default:return new Te.TextValue({value:C})}}const r=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),a=new Map([["boolean",Te.CompareType.In],["date",Te.CompareType.Equal],["datetime",Te.CompareType.Equal],["number",Te.CompareType.Equal],["string",Te.CompareType.Equal],["text",Te.CompareType.Equal],["enum",Te.CompareType.In],["reference",Te.CompareType.Equal]]);function l(S){var x;const C=S.dataType||"string";return((x=S.editor)==null?void 0:x.type)||r.get(C)||"text"}function s(S){var V,b,O,N,M;const C=`field_filter_${S.field}`,x=Date.now(),w=S.field,T=((V=S.column)==null?void 0:V.title)||"",_=((b=S.column)==null?void 0:b.dataType)||"string",v=a.get(_)||Te.CompareType.Equal,h=((N=(O=S.column)==null?void 0:O.editor)==null?void 0:N.type)||r.get(_)||"text",y=o(h,(M=S.column)==null?void 0:M.filter),k=h==="lookup"||h==="combo-lookup"?Te.ValueType.SmartHelp:h==="combo-list"?Te.ValueType.Enum:Te.ValueType.Value;e.set(C,{id:C,fieldCode:w,fieldName:T,compareType:v,valueType:k,value:y,conditionId:x}),n.value=Array.from(e.values())}function d(S){const C=`field_filter_${S.field}`;e.delete(C),n.value=Array.from(e.values())}function c(S){e.delete(S),n.value=Array.from(e.values())}function f(){e.clear(),n.value=[]}function u(S){const{valueType:C}=S.value,x=S.compareType||"0",w=Jn[Number(x)];return oo.get(C)[w]}function p(S){const C=S.relation===2?0:1,x=S.items.map(T=>{const _=u(T);return h=>_(h,T.fieldCode,T.value.getValue())}),w=S.children&&S.children.length?S.children.map(T=>p(T)):[];return{relation:C,filterFunctions:x,children:w}}function m(){const S=t(n.value);return p(S)}function g(S,C){const x=C.filterFunctions.map(T=>T(S)),w=C.children.map(T=>g(S,T));return C.relation===1?x.every(T=>T)&&w.every(T=>T):x.includes(!0)||w.includes(!0)}function F(S){const C=m();return g(S,C)}return{addColumnFilter:s,apply:F,clearCondition:f,conditions:n,getFilterEditorType:l,removeColumnFilter:d,removeCondition:c}}function ro(n){i.ref(n.selection.showCheckbox||!1);const e=i.computed(()=>{var l;return((l=n.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),t=i.computed(()=>{var l;return((l=n.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),o=i.computed(()=>{var l;return((l=n.hierarchy)==null?void 0:l.parentIdField)||"parent"}),r=i.computed(()=>n.hierarchy&&n.selection.showCheckbox),a=i.computed(()=>(n.treeNodeIconsData.fold||n.iconField)&&n.showTreeNodeIcons);return{collapseField:e,hasChildrenField:t,parentIdField:o,shouldShowCheckBox:r,shouldShowIcon:a}}function ao(n,e,t,o,r,a,l,s,d){var mt;const{dataView:c,visibleDataItems:f}=e,{getVisualData:u,maxVisibleRowIndex:p,minVisibleRowIndex:m}=r,g=i.computed(()=>o.value.primaryColumnsWidth),F=i.computed(()=>o.value.leftColumnsWidth),S=i.computed(()=>o.value.rightColumnsWidth),C=((mt=n.rowOption)==null?void 0:mt.height)||28,x=i.ref(0),w=i.ref(0);let T=0,_=a.value-1;const v=i.ref(0),h=i.ref(0),y=i.ref(0),k=i.ref(n.virtualized),V=24,b=1.5;let O=null;function N(){const K=f.value;if(K.length<=0)return 0;const ie=p.value<K.length?K[p.value]:K[K.length-1];return ie.__fv_data_position__>K.length*C?K.length*C:(ie.__fv_data_position__||0)+(ie.__fv_data_height__||0)+Math.max(K.length-1-p.value,0)*C}const M=i.computed(()=>{const K=N();f.value;let ie=h.value/Math.max(K,h.value),ue=Math.floor(ie*h.value);for(;h.value>0&&ue<V;)ie*=b,ue=Math.floor(ie*h.value);return ue}),E=i.computed(()=>Math.floor(y.value/Math.max(g.value,y.value)*v.value)),P=0,H=0,I=i.computed(()=>v.value-(F.value+g.value+S.value+s.value));function R(K){const ue=Math.floor(K/C)+1,Me=f.value;return Me.length>ue?Me[ue].__fv_visible_index__-1:0}function U(K,ie,ue){let Me=K,Be=ie;const qe=ie-K+1;if(qe<l+a.value+l){const G=l+a.value+l-qe,re=ie+G<=ue,he=0+G<=K;if(re)Be+=G,_=Be;else if(he)Me-=G,T=Me;else{const Fe=ue-ie,$=G-Fe;Be=Math.min(ie+Fe,ue),Me=Math.max(K-$,0)}}return{actualStart:Me,actualEnd:Be}}function B(K){var Fe,$;const ie=f.value;if(!ie.length){t.value=[];return}const ue=(Fe=n.pagination)!=null&&Fe.enable?0:Math.max(T-l,0),Me=ie[ie.length-1].__fv_visible_index__,Be=($=n.pagination)!=null&&$.enable?ie.length-1:Math.min(_+l,Me),{actualStart:qe,actualEnd:G}=U(ue,Be,Me),re=ie[qe-1],he=u(qe,G,re,K);he.length&&(t.value=[...he])}const L=i.computed(()=>N()>h.value),Z=i.computed(()=>Math.floor(g.value)>y.value);function A(K,ie){let ue=K;const Me=ue>P,Be=L.value;Be&&ue<h.value-ie&&(ue=h.value-ie),(!Be||Me)&&(ue=P),x.value!==ue&&(x.value=ue)}function j(){k.value&&(T=R(Math.abs(x.value)),_=T+a.value-1,(T<m.value||_>p.value-l/2)&&B())}function D(K){let ie=x.value+K;ie>P&&(ie=P);const ue=N();A(ie,ue),j()}function q(K){if(!Z.value){w.value=0;return}let ie=w.value+K;ie>H&&(ie=H),ie<I.value&&(ie=I.value),w.value!==ie&&(w.value=ie)}function ee(){Math.abs(w.value)+y.value>g.value&&(w.value=Math.min(y.value-g.value,0))}function Y(){x.value=0,T=0,_=a.value-1,B()}function ae(){const K=N();A(x.value,K)}i.watch([y,g],()=>{q(0)}),i.watch(h,(K,ie)=>{K!==ie&&K>=c.value.length*C&&D(0)});function de(K){let{deltaX:ie}=K,ue=-1*K.deltaY;return typeof ie>"u"&&(ie=-1*K.wheelDeltaX/6),typeof ue>"u"&&(ue=K.wheelDeltaY/6),K.deltaMode&&K.deltaMode===1&&(ie*=10,ue*=10),K.shiftKey?{deltaY:-ue,deltaX:-ie}:{deltaX:ie,deltaY:ue}}function ye(K){if(n.disabled||!L.value||K.target.tagName==="TEXTAREA")return;K.preventDefault(),K.stopPropagation();const{deltaX:ie,deltaY:ue}=de(K);D(ue),q(ie)}const Ve=i.computed(()=>({height:`${c.value.length*C}px`,width:`${F.value}px`,transform:`translateY(${x.value}px)`})),Pe=i.computed(()=>({transform:`translateY(${x.value}px)`})),W=i.computed(()=>({height:`${(n.autoHeight?f.value:c.value).length*C}px`,width:`${g.value}px`,transform:`translate(${w.value}px, ${x.value}px)`})),oe=i.computed(()=>({transform:`translate(${w.value}px, ${x.value}px)`})),ne=i.computed(()=>({height:`${c.value.length*C}px`,width:`${S.value}px`,transform:`translateY(${x.value}px)`})),Se=i.computed(()=>({transform:`translateY(${x.value}px)`})),Ce=i.computed(()=>({height:`${c.value.length*C}px`,width:`${s.value}px`,transform:`translateY(${x.value}px)`})),Ie=i.computed(()=>({width:`${F.value}px`})),Ye=i.computed(()=>({transform:`translateX(${w.value}px)`})),Ke=i.computed(()=>({width:`${S.value}px`})),rt=i.computed(()=>{const K=N();return A(x.value,K),x.value/(h.value-K)*(h.value-M.value)}),et=i.computed(()=>({width:"8px",height:`${M.value}px`,top:`${rt.value}px`,backgroundColor:"#cccccc !important"})),tt=i.computed(()=>w.value/I.value*(v.value-E.value)),z=i.computed(()=>({height:"8px",width:`${E.value}px`,left:`${tt.value}px`,backgroundColor:"#cccccc !important"})),ge=i.ref(!1),_e=i.ref(-1),xe=i.ref(-1),We=i.ref();function at(K){if(ge.value&&xe.value!==-1){const ie=xe.value-K.pageX,ue=v.value-E.value;if(Math.abs(ie)<=ue){const Me=ie/(y.value-E.value)*(g.value-y.value);q(Me),xe.value=K.pageX}}}function ft(K){if(ge.value&&_e.value!==-1){const ie=_e.value-K.pageY,ue=N(),Me=ue-M.value;if(Math.abs(ie)<=Me){const Be=ie/(h.value-M.value)*(ue-h.value);D(Be),_e.value=K.pageY}}}function nt(K){ge.value=!1,_e.value=-1,xe.value=-1,document.removeEventListener("mouseup",nt),O&&(document.removeEventListener("mousemove",O),O=null),document.body.style.userSelect="",We.value&&(We.value.style.opacity=null)}function bt(K,ie,ue){var qe;ge.value=!0;const Me=(qe=K.target)==null?void 0:qe.parentElement;Me&&(Me.style.opacity="1",We.value=Me);const Be=ue==="horizontal"?at:ft;O||(O=Oe.throttle(Be,50)),ue==="vertical"&&(_e.value=K.pageY),ue==="horizontal"&&(xe.value=K.pageX),ie.value&&(ie.value,document.addEventListener("mousemove",O),document.addEventListener("mouseup",nt),document.body.style.userSelect="none")}function pt(K){const ie=c.value.length*C-h.value;let ue=K*C;ue>=ie&&(ue=ie),D(-ue-x.value)}function lt(){pt(c.value.length)}function Ct(K){D(K-x.value)}return{dataGridWidth:v,fitHorizontalScroll:ee,gridDataStyle:W,gridHeaderColumnsStyle:Ye,gridMergedDataStyle:oe,gridSideStyle:Ce,horizontalScrollThumbStyle:z,leftFixedGridDataStyle:Ve,leftFixedGridHeaderColumnsStyle:Ie,leftFixedGridMergedDataStyle:Pe,offsetX:w,offsetY:x,onMouseDownScrollThumb:bt,onWheel:ye,reCalculateVisualDataRows:B,resetScroll:Y,rightFixedGridDataStyle:ne,rightFixedGridHeaderColumnsStyle:Ke,rightFixedGridMergedDataStyle:Se,shouldShowHorizontalScrollbar:Z,shouldShowVirticalScrollbar:L,updateVirticalScroll:ae,updateVisibleRowsOnLatestVisibleScope:j,verticalScrollThumbStyle:et,viewPortWidth:y,viewPortHeight:h,scrollToBottom:lt,scrollToRowByIndex:pt,scrollTo:Ct}}function lo(n){var a;const{isUndefined:e}=ce.useCommonUtils(),t=((a=n.rowOption)==null?void 0:a.height)||28;function o(l,s){const d=l.pre;if(d){let c=d.__fv_data_position__,f=d.__fv_data_height__;(e(c)||n.virtualized&&n.hierarchy&&d.__fv_visible_index__*t!==c)&&(c=d.__fv_visible_index__*t),e(f)&&(f=t);const u=l.visible?c+f:d.__fv_data_position__;l.top=u,s.__fv_data_position__=u}else l.top=0,s.__fv_data_position__=0}function r(l,s,d){if(l&&!s.ref){s.ref=l;const c=s.parent;s.cellHeight!==l.offsetHeight&&(s.cellHeight=l.offsetHeight),s.cellHeight&&s.cellHeight>(c.height||0)&&(c.height=s.cellHeight,d.__fv_data_height__=c.height),o(c,d)}!l&&s.ref&&(s.ref=l)}return{updateRowPosition:o,updateVisualInfomation:r}}function so(){function n(e,t){var l,s;if(!t.data||!t.data.length)return"";const o=Object.prototype.hasOwnProperty.call(t,"valueField")&&t.valueField||"value",r=Object.prototype.hasOwnProperty.call(t,"textField")&&t.textField||"name";if(e!=null&&e.includes(",")){const d=e.split(",");if(!t.data.filter(p=>d.includes(p[o])).length)return"";const f=(l=t.data)==null?void 0:l.reduce((p,m)=>(p[m[o]]=m,p),{});return d.map(p=>{var m;return(m=f[p])==null?void 0:m[r]}).join(",")||e}const a=(s=t.data)==null?void 0:s.find(d=>d[o]===e);return(a==null?void 0:a[r])||e||""}return{renderEnumColumn:n}}function co(){function n(e,t){return e?t==null?void 0:t.trueText:t==null?void 0:t.falseText}return{renderText:n}}function uo(){const{formatTo:n}=ce.useDateFormat();function e(o,r){if(o){let a="yyyy-MM-dd";if(typeof r=="string"?a=r:typeof r=="object"&&(a=r.format||"yyyy-MM-dd"),a=a.replace("YYYY","yyyy").replace("-DD","-dd"),typeof r=="object"&&r.dateRange){const l=r.dateRangeDatesDelimiter||"~";let[s,d]=o.split(l);return s=n(s,a),d=n(d,a),s+l+d}return n(o,a)}return o}function t(o,r){const a=r.dateFormat||"yyyy-MM-dd";return n(o,a)}return{renderDateColumn:t,renderDateTimeColumn:e}}function fo(){const{formatTo:n}=ce.useNumberFormat();function e(t,o){const r={precision:o.precision,prefix:o.prefix||"",suffix:o.suffix||"",decimalSeparator:o.decimal||".",groupSeparator:o.thousand||""};return n(t,r)||t}return{renderNumberColumn:e}}function po(){function n(e,t){if(e){const o={};return t!=null&&t.width&&(o.width=`${t.width}px`),t!=null&&t.height&&(o.height=`${t.height}px`),i.createVNode("img",{src:e,style:o},null)}return e}return{renderImageColumn:n}}function mo(){const{renderText:n}=co(),{renderEnumColumn:e}=so(),{renderNumberColumn:t}=fo(),{renderDateColumn:o,renderDateTimeColumn:r}=uo(),{renderImageColumn:a}=po();function l(c){return c}function s(c,f){return f.customFormat?new Function(`return ${f.customFormat}`)():c}function d(c,f,u){const p=ce.resolveField(f.raw,c.field),m=u.options||u;return u.type==="none"?p:u.type==="custom"?s(p,u):u.type==="enum"?e(p,m):u.type==="number"?t(p,m):u.type==="boolean"?n(p,m):u.type==="date"?o(p,m):u.type==="datetime"?r(p,u):u.type==="image"?a(p,m):p}return{renderFormatColumn:d}}function ho(n,e,t){var S;const o=i.ref(n.mergeCell);(S=i.ref(n.rowOption).value)!=null&&S.wrapContent;const{updateVisualInfomation:a}=t,{renderCommandColumn:l}=qn(),{renderFormatColumn:s}=mo();function d(C,x,w,T,_,v=1){const h={colSpan:v,rowSpan:1,index:w,field:C,data:ce.resolveField(T,C),editingData:ce.resolveField(T,C),parent:_,mode:x,align:"left",valign:"start",showEllipsis:!0,getEditor:y=>y.data,setRef:y=>a(y,h,T),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return h}function c(C,x,w){return C.getEditor=T=>e.getEditor(T,x,T.parent),C.setRef=T=>a(T,C,w),C.update=T=>{T!==void 0&&(C.editingData=T)},C.accept=()=>{ce.setFieldValue(C.editingData,w,x.field),C.data=ce.resolveField(w,x.field)},C.cancel=()=>{C.editingData=C.data},C.updateData=T=>{ce.setFieldValue(ce.resolveField(T,x.field),w,x.field),C.data=ce.resolveField(w,x.field),C.editingData=ce.resolveField(w,x.field)},C}function f(C,x){x.dataType==="commands"?C.formatter=(w,T)=>l(x,T):x.formatter&&(C.formatter=(w,T)=>typeof x.formatter=="function"?x.formatter(w,T):s(x,T,x.formatter))}function u(C,x,w){const T=x&&x.data[w];if(T&&T.data===C.data){const v=T&&T.spannedBy||T;v.rowSpan++,v.spanned=v.spanned||[],v.spanned.push(C),C.colSpan=0,C.rowSpan=0,C.spannedBy=v}}function p(C,x,w){o.value&&u(C,x,w.field)}function m(C,x){x.showEllipsis!==void 0&&(C.showEllipsis=x.showEllipsis),C.showTips=x.showTips,C.column=x,C.align=x.align||"left",C.valign=x.valign||"middle",C.mode=n.editable?je.editable:je.readonly}function g(C,x,w,T){m(C,x),c(C,x,T),f(C,x),p(C,w,x)}function F(C,x,w,T,_){const v=n.editable?je.editable:je.readonly,h=d(C.field,v,x,w,T);return g(h,C,_,w),h}return{createCellByColumn:F,createCellByField:d,updateCellByColumn:g}}function go(n,e,t,o,r,a,l){var w,T;const s=i.ref(n.rowOption),d=((w=s.value)==null?void 0:w.height)||28,c=((T=s.value)==null?void 0:T.wrapContent)||!1,{idField:f}=r,{collapseField:u}=o,{updateRowPosition:p}=a,{createCellByColumn:m}=l,g=(_,v,h,y)=>{ce.setFieldValue(ce.resolveField(_,y),v,y),h.data[y].data=ce.resolveField(v,y),h.data[y].editingData=ce.resolveField(v,y)};function F(_,v,h,y,k,V){var Z,A,j;const{__fv_data_grid_group_field__:b,__fv_data_grid_group_value__:O,__fv_data_index__:N}=h,M=h.__fv_data_grid_group_layer__||(h.__fv_parents__?(Z=h.__fv_parents__)==null?void 0:Z.size:0)||0,E=typeof h.parent=="number"?Number(h.parent):-1,P=h.__fv_data_grid_group_collapse__||h[u.value],H=h.__fv_visible__===void 0?!0:h.__fv_visible__,I=h.__fv_checked__,R=h.__fv_indeterminate__,U=h.__fv_disabled__||h[((A=n.rowOption)==null?void 0:A.disabledField)||"disabled"],B=n.hierarchy&&e.isVisibleInTree(h),L={collapse:P,data:{},dataIndex:N,groupField:b,groupValue:O,layer:M,index:v,parentIndex:E,pre:y,top:V,type:_,raw:h,checked:I,disabled:U,indeterminate:R,setRef:D=>{L.ref=D},visible:H&&B||H&&!n.hierarchy,status:Qe.initial,updateCell:(D,q)=>{g(D,h,L,q)},updateCells:(D,q)=>{q.forEach(ee=>{g(D,h,L,ee)})}};return y||(h.__fv_data_position__=0),c||(L.height=d,h.__fv_data_height__=L.height,p(L,h)),(j=s.value)!=null&&j.customRowStatus&&(s.value.customRowStatus(L),h.__fv_disabled__=L.disabled),L}function S(_,v,h,y,k,V){const b=F(gt.data,k,v,h,y,V);return _.forEach((O,N)=>{b.data[O.field]=m(O,N,v,b,y)}),b}function C(_,v,h,y,k){return Object.assign(_,{index:v,dataIndex:h,top:y,pre:k})}function x(_,v,h,y,k,V){const b=_.__fv_data_index__,O=_[f.value],N=t.getEditingSnapshot(O);return N===null?S(V,_,v,h,y,k):C(N,y,b,k,v)}return{createEmptyRow:F,createNewRowFromDataItem:S,renderDataRow:x}}function yo(n,e,t,o){const r=i.ref(n.summary),{idField:a}=e,{createCellByField:l}=t,{createEmptyRow:s}=o,d=i.computed(()=>{const p=r.value;return(p==null?void 0:p.groupFields)||[]}),c=i.computed(()=>{const p=r.value;return p&&p.enable&&p.groupFields&&p.groupFields.length>0});function f(p,m,g,F){if(c.value){const S=p.data[m];let C=S.colSpan;const x=d.value.reduce((w,T)=>(w.set(T,!0),w),new Map);F.reduce((w,T,_)=>{if(x.has(T.field)){const v=l(T.field,je.readonly,_,g,p);p.data[T.field]=v,C-1>_&&(C=_)}return w},p),S.colSpan=C}}function u(p,m,g,F,S,C,x){const w=p.__fv_data_grid_group_field__,T=s(gt.group,F,p,m,g,S);return T.data[a.value]=l(a.value,je.readonly,-1,p,T,0),T.data[w]=l(w,je.readonly,1,p,T,C.length),f(T,w,p,C),T}return{renderGroupRow:u}}function vo(n,e,t,o){const{idField:r}=e,{createCellByField:a}=t,{createEmptyRow:l}=o;function s(d,c,f,u,p,m,g){const F=d.__fv_data_grid_group_field__,S=l(gt.summary,u,d,c,f,p);return S.data[r.value]=a(r.value,je.readonly,-1,d,S),S.data[F]=a(F,je.readonly,1,d,S,m.length),S}return{renderSummaryRow:s}}function bo(n,e,t,o,r){var U;const{idField:a}=t,l=i.ref(n.editable),s=i.ref(n.editOption),d=i.ref(((U=n.rowOption)==null?void 0:U.wrapContent)||!1),{onClickRow:c,onClickRowExcludeDblclick:f}=o,u=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let p,m,g,F,S;function C(B){return m&&m.raw[a.value]===B?m:null}const x=i.reactive({});function w(B,L,Z={}){B.mode=je.editing,p=B,m=L,g=ce.resolveField(L==null?void 0:L.raw,B.field),F=Z;for(const A in x)delete x[A]}function T(B){B.accept(),B.mode=je.editable,p=null;const L={};m&&(Object.keys(m).forEach(Z=>{L[Z]=m==null?void 0:m[Z]}),m=null),e.emit("endEditCell",{cell:B,row:L,newValue:ce.resolveField(L==null?void 0:L.raw,B.field),oldValue:g,column:F,editor:x})}function _(B){const L=Promise.resolve(!0);return B?L.then(()=>Oe.isUndefined(n.beforeEndEditCell)?!0:typeof n.beforeEndEditCell=="function"?n.beforeEndEditCell({cell:B,row:m,newValue:B.editingData,oldValue:g}):()=>!0).then(Z=>(Z&&(T(B),m&&(m=null)),Z)):L}function v(B){if(S&&S!==B.target){S=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 A=Z.closest(".fv-grid-cell");if(p&&p.ref&&p.ref===A)return}_(p).then(A=>{A&&document.body.removeEventListener("click",v,!0)})}}function h(B,L,Z){return Promise.resolve().then(()=>{var j;const A=(j=Z.editor)==null?void 0:j.readonly;return!Oe.isUndefined(n.beforeEditCell)&&typeof n.beforeEditCell=="function"?n.beforeEditCell({row:B,cell:L,rawData:B.raw,column:Z}):!A}).then(A=>{A&&(w(L,B,Z),document.body.removeEventListener("click",v,!0),document.body.addEventListener("click",v,!0))})}function y(B,L,Z,A={}){B.stopPropagation(),f(B,Z),l.value&&s.value.editMode==="cell"&&L.mode===je.editable&&_(p).then(()=>{p||h(Z,L,A)})}function k(B,L,Z,A={}){B.stopPropagation(),c(B,Z),l.value&&s.value.editMode==="cell"&&L.mode===je.editable&&_(p).then(()=>{p||h(Z,L,A)})}function V(B){B.stopPropagation(),S=B.target}function b(B){B.stopPropagation(),S&&(S=null)}function O(B){Object.values(B.data).filter(L=>L.mode===je.editable&&L.field!=="__commands__").forEach(L=>{L.mode=je.editing}),B.status=Qe.editing,m=B}function N(B,L){Object.values(B.data).filter(Z=>Z.mode===je.editing).forEach(Z=>{L?Z.accept():Z.cancel(),Z.mode=je.editable}),B.status=Qe.initial,m===B&&(m=null)}function M(B){l.value&&s.value.editMode==="row"&&m!==B&&(m&&N(m,!1),O(B))}function E(B){N(B,!0),B.status=Qe.initial}function P(B){N(B,!1),B.status=Qe.initial}function H(B,L,Z){const A=L.dataType,j=L.editor||{type:u.get(A)||"input-group"};return!d.value&&j.type==="text"&&(j.type="input-group"),j?(j.type==="input-group"&&(j.textAlign=L.align!=="center"&&L.align!=="right"?"left":L.align,j.updateOn="change"),j.type,j.type==="textarea"&&(j.lineBreak="alt enter"),j.context={rowData:Z.raw,column:L,cell:B,editor:x},j.readonly=!1,i.createVNode(On.FDynamicFormInput,{focusOnCreated:n.focusOnEditingCell,selectOnCreated:n.selectOnEditingCell,editor:j,modelValue:B.editingData,"onUpdate:modelValue":D=>B.editingData=D,id:L.id,onMousedown:D=>V(D),onMouseup:D=>b(D)},null)):B.data}function I(){_(p)}i.watch(()=>n.editable,()=>{l.value=n.editable}),i.watch(()=>{var B;return(B=n.editOption)==null?void 0:B.editMode},B=>{s.value.editMode=B});function R(){p=null,m=null,F=null,S=null,document.body.removeEventListener("click",v,!0)}return{clear:R,onClickOutOfCell:v,onClickCell:k,onClickCellByKeyboard:y,onEditingRow:M,acceptEditingRow:E,cancelEditingRow:P,getEditingSnapshot:C,getEditor:H,endEditCell:I,onMousedownCell:V,onMouseupCell:b}}function Co(n){const e=i.ref(n.idField);function t(o){if(o&&o.length){const r=o[0];Object.keys(r).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:t}}function wo(n,e,t,o){const{idField:r}=o,{currentSelectedDataId:a,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:d,selectedValues:c,toggleSelectItem:f,updateSelectAllStatus:u,enableSelectRow:p,multiSelectMode:m,isSingleSelect:g}=t,F=i.ref(0),S=i.ref(-1);function C(M){a.value=M}function x(M){return p.value&&(s.value?c.value.includes(M.raw[r.value]):M.raw[r.value]===a.value)}function w(M,E){var I;const P=E??M.dataIndex,H={"fv-grid-row":M.type===gt.data,"fv-grid-group-row":M.type===gt.group,"fv-grid-summary-row":M.type===gt.summary,"fv-grid-row-hover":P===S.value,"fv-grid-row-selected":x(M),"fv-grid-row-odd":P%2>0,"fv-grid-row-even":P%2===0,"fv-grid-disabled":M.disabled};if((I=n.rowOption)!=null&&I.customRowStyle){const R=n.rowOption.customRowStyle(M.raw)||{};return Object.assign({},H,R)}return H}function T(M){var P;const E={"fv-grid-cell":!0};if((P=n.rowOption)!=null&&P.customCellStyle){const H=n.rowOption.customCellStyle(M)||{};return Object.assign({},E,H)}return E}function _(M){var P;const E={"fv-grid-hierarchy-cell":!0};if((P=n.rowOption)!=null&&P.customCellStyle){const H=n.rowOption.customCellStyle(M)||{};return Object.assign({},E,H)}return E}function v(M,E){var I,R;if(s.value&&!M.shiftKey||g.value){(I=n.selection)!=null&&I.keepSelectingOnClick?d(E):f(E,(R=n.selection)==null?void 0:R.keepSelectingOnClick),u();return}if(s.value&&M.shiftKey||l.value){f(E),u();return}C(E.raw[r.value])}function h(M,E){E.disabled||(v(M,E),e.emit("clickRow",E.index,E.raw))}function y(M){F.value+=1,setTimeout(()=>{F.value===1&&e.emit("clickRow",M.index,M.raw),F.value=0},250),F.value>1&&(e.emit("doubleClickRow",M.index,M.raw),F.value=0)}function k(M,E){E.disabled||(v(M,E),y(E))}function V(M){M.disabled||y(M)}function b(M,E){}function O(M,E){}function N(M,E){var I;const P=E??M.dataIndex,H={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":P===S.value,"fv-grid-sidebar-row-selected":x(M),"fv-grid-sidebar-row-odd":P%2>0,"fv-grid-sidebar-row-even":P%2===0,"d-flex":!0,"align-items-center":!0};if((I=n.rowOption)!=null&&I.customRowStyle){const R=n.rowOption.customRowStyle(M.raw)||{};return Object.assign({},H,R)}return H}return{activeRowById:C,clickRowItem:V,gridCellClass:T,gridHierarchyCellClass:_,gridRowClass:w,onClickRow:k,onClickRowExcludeDblclick:h,onMouseoverRow:b,sidebarRowClass:N,onMouseoutRow:O}}function So(n,e,t,o,r){const{idField:a}=t,{dataView:l,getSelectionItems:s}=e,d=i.ref(""),c=i.computed(()=>n.selection.enableSelectRow),f=i.ref(n.selection.multiSelect??!1),u=i.ref(n.selection.multiSelectMode||"DependOnCheck"),p=i.ref(n.selection.showCheckbox),m=i.ref(n.selection.showSelectAll),g=i.ref(n.selectionValues||[]),F=i.ref(!!g.value.length&&o.value.length===g.value.length),S=i.ref(!!g.value.length&&o.value.length!==g.value.length);i.watch(()=>n.selection.showSelectAll,(W,oe)=>{W!==oe&&(m.value=W)});function C(){const W=l.value.every(ne=>g.value.includes(ne[a.value])),oe=l.value.every(ne=>!g.value.includes(ne[a.value]));W&&(F.value=!0,S.value=!1),oe&&(F.value=!1,S.value=!1),!W&&!oe&&(F.value=!1,S.value=!0)}function x(){return s(g.value)}function w(){const W=o.value.reduce((ne,Se)=>(ne.set(Se.raw[a.value],Se),ne),new Map);return g.value.map(ne=>W.get(ne)).filter(ne=>!!ne)}function T(W){var ne;const oe=W.raw.__fv_children_index__;if(oe&&oe.length){const Se=oe.map(Ce=>l.value[Ce]);(ne=g.value)!=null&&ne.length&&Se.some(Ie=>!g.value.includes(Ie[a.value]))&&(W.indeterminate=!0,W.raw.__fv_indeterminate__=!0)}}const _=i.computed(()=>c.value&&f.value),v=i.computed(()=>c.value&&!f.value&&!p.value),h=i.computed(()=>!!n.hierarchy),y=i.computed(()=>{const W=p.value&&u.value==="DependOnCheck";return _.value&&W}),k=i.computed(()=>_.value&&!p.value),V=i.computed(()=>_.value&&p.value&&u.value==="OnCheckAndClick");i.computed(()=>V.value);function b(){const W=s(g.value);r.emit("selectionChange",W)}function O(W){r.emit("unSelectItem",W)}function N(){const W=o.value.filter(ne=>ne.indeterminate).map(ne=>ne.raw[a.value]);o.value.forEach(ne=>{ne.checked=!1,ne.indeterminate=!1,ne.raw.__fv_checked__=!1,ne.raw.__fv_indeterminate__=!1}),w().forEach(ne=>{ne.checked=!0,ne.raw.__fv_checked__=!0}),W.forEach(ne=>{const Se=o.value.find(Ce=>Ce.raw[a.value]===ne);T(Se)})}i.watch(()=>o.value,()=>{N()}),i.watch(()=>n.selectionValues,W=>{g.value=W,N()},{immediate:!0}),i.watch(()=>n.selection,W=>{f.value=!!W.multiSelect,u.value=W.multiSelectMode||"DependOnCheck",p.value=!!W.showCheckbox});const M=i.computed(()=>!f.value);function E(W){return W.raw[a.value]}function P(W){return g.value.findIndex(ne=>ne===E(W))}function H(){w().forEach(ne=>{ne.checked=!1}),s(g.value).forEach(ne=>{ne.__fv_checked__=!1}),g.value=[],d.value="",C()}function I(W){const oe=W;oe.__fv_checked__=!0,oe.__fv_indeterminate__=!1;const ne=new Set(g.value);ne.add(oe[a.value]),g.value=Array.from(ne.values())}function R(W){const oe=W;oe.__fv_checked__=!1,oe.__fv_indeterminate__=!1,g.value=g.value.filter(ne=>ne!==oe[a.value])}function U(W){const oe=W.raw;oe.__fv_checked__=!0,oe.__fv_indeterminate__=!1;const ne=new Set(g.value);ne.add(oe[a.value]),g.value=Array.from(ne.values()),W.checked=!0,W.indeterminate=!1}function B(W){const oe=W.raw;oe.__fv_checked__=!1,oe.__fv_indeterminate__=!1,g.value=g.value.filter(ne=>ne!==oe[a.value]),W.checked=!1,W.indeterminate=!1}function L(W){U(W),d.value=W.raw[a.value]}function Z(W){B(W),d.value=""}function A(W){W.__fv_checked__=!1,W.__fv_indeterminate__=!0,g.value=g.value.filter(oe=>oe!==W[a.value])}function j(W){const oe=W.raw;oe.__fv_checked__=!1,oe.__fv_indeterminate__=!0,g.value=g.value.filter(ne=>ne!==oe[a.value]),W.checked=!1,W.indeterminate=!0}function D(W){M.value&&H(),W.checked?B(W):U(W),b()}function q(W,oe=!0){const ne=W.checked;M.value&&H(),oe?W.checked?Z(W):L(W):ne?Z(W):L(W),b(),W.checked||O(W)}function ee(W){W.raw[a.value]!==d.value&&(H(),L(W),b())}function Y(W){const oe=o.value.find(ne=>ne.raw[a.value]===W);if(oe)ee(oe);else{const ne=l.value.find(Se=>Se[a.value]===W);ne&&I(ne)}}function ae(W){const oe=o.value.filter(Ce=>W.includes(Ce.raw[a.value])),ne=oe.map(Ce=>Ce.raw[a.value]),Se=l.value.filter(Ce=>{const Ie=Ce[a.value];return!ne.includes(Ie)&&W.includes(Ie)});(oe.length||Se.length)&&(H(),v.value&&(d.value=W[0])),oe.forEach(Ce=>{L(Ce)}),Se.forEach(Ce=>{I(Ce)}),b()}function de(W){for(const oe of W){if(!g.value.includes(oe))continue;const ne=o.value.find(Se=>Se.raw[a.value]===oe);if(ne)Z(ne);else{const Se=l.value.find(Ce=>Ce[a.value]===oe);Se&&R(Se)}}g.value=g.value.filter(oe=>!W.includes(oe))}function ye(){o.value.forEach(W=>{U(W)}),b()}function Ve(){o.value.forEach(W=>{B(W)}),b()}function Pe(){return o.value.find(W=>W.raw[a.value]===d.value)}return{clearSelection:H,currentSelectedDataId:d,enableMultiSelect:f,enableSelectRow:c,findIndexInSelectedItems:P,getSelectedItems:x,getSelectionRow:Pe,indeterminate:j,indeterminateDataItem:A,isSelectingHirarchyItem:h,multiSelectMode:u,multiSelectOnClickRow:V,multiSelectOnClickRowWithShift:k,multiSelectOnlyOnCheck:y,select:L,selectAll:ye,selectedValues:g,selectDataItem:I,selectItem:ee,selectItemById:Y,selectItemByIds:ae,showCheckBox:p,showSelectAll:m,toggleSelectItem:q,toggleSelectItemWithoutRow:D,unSelect:Z,unSelectAll:Ve,unSelectDataItem:R,unSelectItemByIds:de,updateSelectAllStatus:C,selectAllStatus:F,indeterminateStatus:S,isSingleSelect:v}}function xo(n,e){var S,C;const t=String(Date.now()),o=50,{showCheckBox:r,showSelectAll:a}=e,l=i.ref(((S=n.rowNumber)==null?void 0:S.enable)??!1),s=i.computed(()=>n.hierarchy&&r.value&&n.selection.enableSelectRow&&n.selection.multiSelect?!1:r.value),d=i.ref(l.value?((C=n.rowNumber)==null?void 0:C.width)??32:0),c=i.ref(s.value?o:0),f=i.computed(()=>{var x;return l.value?((x=n.rowNumber)==null?void 0:x.heading)??"序号":""}),u=i.computed(()=>(s.value&&!n.hierarchy?Number(c.value):0)+(l.value?Number(d.value):0));i.watch(()=>n.rowNumber,x=>{x&&x.enable!==void 0&&(l.value=x.enable),x&&x.width!==void 0&&(d.value=x.width)});function p(x){return{top:`${x.top}px`,width:`${u.value}px`,height:`${x.height||""}px`}}const m=i.computed(()=>({width:`${u.value}px`}));function g(x){return`${t}_${x.type}_r_${x.index}_${x.refreshKey||""}`}function F(x){return`${t}_${x.type}_r_${x.index}_${x.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:p,sidebarCornerCellStyle:m,sidebarTitle:f,sidebarWidth:u,rowKey:F,cellKey:g}}const Fo={ascend:(n,e)=>n===e?0:n===!1?-1:1,decend:(n,e)=>n===e?0:n===!0?-1:1},To={ascend:(n,e)=>{const t=new Date(new Date(n).toLocaleDateString()).valueOf(),o=new Date(new Date(e).toLocaleDateString()).valueOf();return t===o?0:t<o?-1:1},decend:(n,e)=>{const t=new Date(new Date(n).toLocaleDateString()).valueOf(),o=new Date(new Date(e).toLocaleDateString()).valueOf();return t===o?0:t<o?1:-1}},_o={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1},Mo={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1};function ko(n){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"]]),t=new Map([["boolean-sorter",Fo],["datetime-sorter",To],["numeric-sorter",_o],["text-sorter",Mo]]);function o(l){const s=(l==null?void 0:l.dataType)||"string",d=e.get(s)||"text-sorter";return t.get(d)||(l==null?void 0:l.sorter)}function r(l){return o(l.column)}function a(l,s){const d=r(l),c=(l.status&De.sortable)===De.sortable&&(l.status&De.sorted)===De.sorted,f=(l.status&De.ascending)===De.ascending,u=(l.status&De.descending)===De.descending;if(c&&d){const p=f?d.ascend:u?d.decend:void 0;p?s.addSorter(l.field,{field:l.field,compare:p}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:o,updateSorter:a}}function Eo(n){const e="parent",t="layer",o="hasChildren",r=(a,l=1,s=[],d=null)=>(a=a||[],a.reduce((c,f)=>(f.id=f.id||f.data[n.idField],f[e]=d,f[t]=l,f[o]=!1,f.data&&Object.keys(f.data).forEach(u=>{Object.keys(f).includes(u)||(f[u]=f.data[u])}),s.push(f),f.children&&f.children.length&&(f[o]=!0,r(f.children,l+1,s,f.id)),c),s),s);return{flatTreeData:r}}const Io={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},completeFormSchema:{type:Object}},Vo={},No={},Po={id:{type:String}},Bo=i.defineComponent({name:"FDesignerPlaceholder",props:Po,emits:[],setup(n){const e=i.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),t=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:t.value,role:"alert","data-noattach":"true","data-position":"0"},[i.createTextVNode("拖拽组件到这里")])}}),st=i.ref(0);function Oo(n,e){const t=e.getBoundingClientRect(),o=n.getBoundingClientRect(),r=o.top>=t.top,a=o.top<=t.bottom;return r&&a}function $o(n){const e=n.querySelector(".component-btn-group");if(!e)return;e.style.display="";const t=e.getBoundingClientRect();if(!(t.top===0&&t.left===0)){const o=e.querySelector("div");if(o){const r=o.getBoundingClientRect();o.style.top=t.top+"px";let a=t.left-r.width;const l=document.querySelector(".editorDiv");if(l){const s=l.getBoundingClientRect();a<s.left&&({left:a}=n.getBoundingClientRect())}o.style.left=a+"px"}}}function jo(n){if(!window.scrollContainerList)return;const e=Array.from(window.scrollContainerList);if(e.length&&e.length===1){const t=e[0],o=document.querySelector(`[id=${t}]`);if(o&&o.contains(n))return o}}function Xt(n){if(!n)return;const e=n.getBoundingClientRect();if(e.width===0&&e.height===0)return;const t=n.querySelector(".component-btn-group");if(t){let o=!0;const r=jo(n);if(r&&(o=Oo(n,r)),!o){t.style.display="none";return}$o(n)}}function Ro(n){if(!n)return;let e;n.className.includes("dgComponentSelected")?e=n:e=n.querySelector(".dgComponentSelected"),e&&Xt(e)}function Ao(n){return typeof n=="function"||Object.prototype.toString.call(n)==="[object Object]"&&!i.isVNode(n)}const jt=i.defineComponent({name:"FDesignerItem",props:Io,emits:["selectionChange","dragEnd"],setup(n,e){const t=i.ref(`${n.modelValue.id}-component`),o=i.ref(n.canMove),r=i.ref(n.canDelete),a=i.ref(!1),l=i.ref(n.modelValue),s=i.ref(n.componentId||""),d=i.ref(""),c=i.ref(""),f=i.ref(n.customClass),u=i.ref(),p=i.inject("canvas-dragula"),m=i.ref(),g=i.inject("design-item-context"),F={designerItemElementRef:u,componentInstance:m,schema:l.value,parent:g,setupContext:e};i.provide("design-item-context",F);const S=i.inject("useFormSchema"),C=i.inject("designer-host-service"),x=i.computed(()=>{var U;const H=n.modelValue.appearance&&n.modelValue.appearance.class||"",I=((U=m.value)==null?void 0:U.getCustomButtons)&&m.value.getCustomButtons();let R={"farris-component":!0,"flex-fill":l.value.id==="root-component","position-relative":o.value&&r.value||(I==null?void 0:I.length),"farris-nested":a.value,"can-move":o.value,"d-none":u.value&&u.value.classList.contains("d-none"),dgComponentSelected:u.value&&u.value.classList.contains("dgComponentSelected"),dgComponentFocused:u.value&&u.value.classList.contains("dgComponentFocused")};return R[`farris-component-${l.value.type}`]=!0,R=ce.getCustomClass(R,H),R=ce.getCustomClass(R,c.value),R=ce.getCustomClass(R,f.value),R}),w=i.computed(()=>{const H={},I=n.modelValue.appearance&&n.modelValue.appearance.style||"";return I&&I.split(";").reduce((R,U)=>{const[B,L]=U.split(":");return R[B]=L,R},H),d.value&&d.value.split(";").reduce((R,U)=>{const[B,L]=U.split(":");return B&&(R[B]=L),R},H),H});function T(H,I){var B,L;if(H&&(H.preventDefault(),H.stopPropagation()),m.value.triggerBelongedComponentToDeleteWhenDeleted){const Z=m.value.getBelongedComponentInstance(m);if(Z&&Z.parent){const A=i.ref(Z==null?void 0:Z.parent),j=A.value.contents.findIndex(D=>D.id===Z.schema.id);(L=(B=A.value)==null?void 0:B.contents)==null||L.splice(j,1),st.value++}return}m.value.onRemoveComponent(C);let R=g,U=Z=>Z.id===I.id;if(I.type==="component"&&(R=g==null?void 0:g.parent,U=Z=>Z.component===I.id),R&&R.schema.contents){const Z=R.schema.contents.findIndex(U);R.schema.contents.splice(Z,1),st.value++,e.emit("selectionChange")}}function _(H){return r.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:I=>{T(I,H)}},[i.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function v(){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 h(){var I;const H=((I=m.value)==null?void 0:I.getCustomButtons)&&m.value.getCustomButtons();return H&&!!H.length&&H.map(R=>i.createVNode("div",{role:"button",class:`btn component-settings-button ${R.class||""}`,title:R.title,ref:R.id,onClick:U=>R.onClick&&R.onClick(U)},[i.createVNode("i",{class:R.icon},null)]))}function y(H){return i.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[i.createVNode("div",null,[_(H),v(),h()])])}function k(H,I,R,U){e.emit("selectionChange",H,I,R,U)}function V(){e.emit("dragEnd")}function b(H){let I;const R=H.type,U=Vo[R],B=No[R],L=B?B(H):{};L.customClass=n.ignore?L.customClass:"",L.componentId=s.value,L.id=H.id;const Z=H.contents&&H.contents.length===0;return H.contents&&!!H.contents.length&&U?i.createVNode(U,i.mergeProps({ref:m},L),Ao(I=H.contents.map(j=>i.createVNode(jt,{key:j.id,modelValue:j,"onUpdate:modelValue":D=>j=D,componentId:s.value,onSelectionChange:k,onDragEnd:V,"complete-form-schema":n.completeFormSchema},null)))?I:{default:()=>[I]}):U?Z?i.createVNode(U,i.mergeProps({ref:m},L),{default:()=>[i.createVNode(Bo,null,null)]}):i.createVNode(U,i.mergeProps({ref:m},L),null):i.createVNode("div",null,null)}function O(H){if(H.type==="component-ref"){const U=(n.completeFormSchema?n.completeFormSchema:S==null?void 0:S.getFormSchema()).module.components.find(L=>L.id===H.component),B=i.ref(U);if(U)return i.createVNode(jt,{key:U.id,modelValue:B.value,"onUpdate:modelValue":L=>B.value=L,componentId:U.id,"complete-form-schema":n.completeFormSchema,onSelectionChange:k,onDragEnd:V},null)}}i.watch(()=>n.modelValue,H=>{l.value=H,t.value=`${H.id}-component`,i.triggerRef(u)},{deep:!0});function N(H){window.scrollContainerList||(window.scrollContainerList=new Set);const I=H.getAttribute("id");I&&window.scrollContainerList.add(I)}function M(H){const I=H==null?void 0:H.target;N(I),Ro(I)}function E(){var H,I;if(u.value){(I=(H=l.value)==null?void 0:H.contents)!=null&&I.length&&u.value.addEventListener("scroll",M);const R=u.value.querySelector(".drag-container");R&&R.addEventListener("scroll",M)}}i.onMounted(()=>{if(u.value&&m.value&&m.value.schema){const H=u.value.querySelector(`[data-dragref='${m.value.schema.id}-container']`);p&&H&&p.attachComponents(H,l.value),a.value=m.value.canNested!==void 0?m.value.canNested:a.value,r.value=m.value.canDelete!==void 0?m.value.canDelete:r.value,o.value=m.value.canMove!==void 0?m.value.canMove:o.value,d.value=m.value.styles||"",c.value=m.value.designerClass||"",u.value&&(u.value.componentInstance=m,u.value.designItemContext=F),m.value.belongedComponentId=s.value}E(),st.value++}),i.onBeforeUnmount(()=>{u.value&&u.value.removeEventListener("scroll",M)});function P(H){H&&(H.preventDefault(),H.stopPropagation());let I=F.designerItemElementRef;const R=u.value;if(R){const U=document.getElementsByClassName("dgComponentFocused");U&&U.length===1&&U[0]===u.value||(Array.from(U).forEach(L=>L.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(L=>L.classList.remove("dgComponentSelected")),R.classList.add("dgComponentFocused"),e.emit("selectionChange",l.value.type,l.value,s.value,m.value),m.value.getDraggableDesignItemElement&&(I=m.value.getDraggableDesignItemElement(F),I&&I.value&&I.value.classList.add("dgComponentSelected")))}Xt(I==null?void 0:I.value)}return()=>l.value.type==="component-ref"?O(l.value):i.createVNode("div",{id:`${l.value.id}-design-item`,ref:u,class:x.value,style:w.value,onClick:P},[y(l.value),b(l.value)])}});function Zt(n,e,t,o,r="data-grid-column"){const{columnContext:a,hasLeftFixedColumn:l,hasRightFixedColumn:s}=t,{gridHeaderColumnsStyle:d,leftFixedGridHeaderColumnsStyle:c,rightFixedGridHeaderColumnsStyle:f}=o,u=a.value.defaultColumnWidth,p=32,m=new Map([[0,0]]);function g(V,b){const O=m.get(b)||0,N={height:`${V.depth*p}px`,left:`${V.left}px`,top:`${(V.layer-1)*p}px`,width:`${V.actualWidth}px`,padding:0};return a.value.headerDepth>1&&(N["line-height"]=`${V.depth*p}px`),m.set(b+1,O+(V.actualWidth||u)),N}const F=i.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":a.value.headerDepth>1})),S=i.computed(()=>({height:`${a.value.headerDepth*p}px`})),C=function(V){return e.showSetting&&!!V.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 w(V,b,O,N){var M;(M=n==null?void 0:n.setupContext)==null||M.emit("selectionChange",V,b,O,N)}function T(V){var O,N;return"w-100 d-flex align-items-center justify-content-"+(((O=V.column)==null?void 0:O.halign)==="center"?"center":((N=V.column)==null?void 0:N.halign)==="right"?"end pr-2":"start pl-2")}function _(V,b,O){var M;const N=i.ref(V.column);return i.createVNode("div",{class:"fv-grid-header-cell",style:g(V,O)},[i.createVNode(jt,{modelValue:N.value,"onUpdate:modelValue":E=>N.value=E,customClass:T(V),canAdd:!1,canDelete:!1,canMove:!1,key:(M=N.value)==null?void 0:M.id,type:r,componentId:e.componentId,onSelectionChange:w},null),C(V)&&x(),V.resizable&&i.createVNode("span",{class:"fv-column-resize-bar"},null)])}function v(V){return V.map((b,O)=>{const N=[];if(N.push(_(b,V,O)),b.children&&b.children.length){const M=v(b.children);N.push(...M)}return N})}function h(){return i.createVNode("div",{class:"fv-grid-header-left-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:c.value},[v(a.value.leftHeaderColumns)])])}function y(){return i.createVNode("div",{class:"fv-grid-header-right-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[v(a.value.rightHeaderColumns)])])}function k(){return i.createVNode("div",{class:F.value,style:S.value},[l.value&&h(),i.createVNode("div",{class:"fv-grid-header-primary"},[i.createVNode("div",{class:"fv-grid-header-columns",style:d.value},[v(a.value.primaryHeaderColumns)])]),s.value&&y()])}return{renderGridHeader:k}}const Jt={},Qt={};function Rt(n){const{properties:e,title:t,ignore:o}=n,r=o&&Array.isArray(o),a=Object.keys(e).reduce((l,s)=>((!r||!o.find(d=>d===s))&&(l[s]=e[s].type==="object"&&e[s].properties?Rt(e[s]):Oe.cloneDeep(e[s].default)),l),{});if(t&&(!r||!o.find(l=>l==="id"))){const l=t.toLowerCase().replace(/-/g,"_");a.id=`${l}_${Math.random().toString().slice(2,6)}`}return a}function Ho(n){const{properties:e,title:t,required:o}=n;if(o&&Array.isArray(o)){const r=o.reduce((a,l)=>(a[l]=e[l].type==="object"&&e[l].properties?Rt(e[l]):Oe.cloneDeep(e[l].default),a),{});if(t&&o.find(a=>a==="id")){const a=t.toLowerCase().replace(/-/g,"_");r.id=`${a}_${Math.random().toString().slice(2,6)}`}return r}return{type:t}}function Kt(n,e={},t){const o=Jt[n];if(o){let r=Ho(o);const a=Qt[n];return r=a?a({getSchemaByType:Kt},r,e,t):r,r}return null}function Lo(n,e){const t=Rt(e);return Object.keys(t).reduce((o,r)=>(Object.prototype.hasOwnProperty.call(n,r)&&(o[r]&&Oe.isPlainObject(o[r])&&Oe.isPlainObject(n[r]||!n[r])?Object.assign(o[r],n[r]||{}):o[r]=n[r]),o),t),t}function en(n,e){return Object.keys(n).filter(o=>n[o]!=null).reduce((o,r)=>{if(e.has(r)){const a=e.get(r);if(typeof a=="string")o[a]=n[r];else{const l=a(r,n[r],n);Object.assign(o,l)}}else o[r]=n[r];return o},{})}function Do(n,e,t=new Map){const o=Lo(n,e);return en(o,t)}function tn(n,e,t){var h;const o=t&&t.getStyles&&t.getStyles()||"",r=t&&t.getDesignerClass&&t.getDesignerClass()||"",a=i.ref();function l(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function s(){return!1}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function c(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function f(y){if(!y||!y.value)return null;if(y.value.schema&&y.value.schema.type==="component")return y.value;const k=i.ref(y==null?void 0:y.value.parent),V=f(k);return V||null}function u(y=e){var O;if(t!=null&&t.getDraggableDesignItemElement)return t.getDraggableDesignItemElement(y);const{componentInstance:k,designerItemElementRef:V}=y;if(!k||!k.value)return null;const{getCustomButtons:b}=k.value;return k.value.canMove||b&&((O=b())!=null&&O.length)?V:u(y.parent)}function p(y){return!!t&&t.canAccepts(y)}function m(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function g(){}function F(y,k){var V;!y||!k||(t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(y,k),(V=e==null?void 0:e.setupContext)==null||V.emit("dragEnd"))}function S(y,k){const{componentType:V}=y;let b=Kt(V,y,k);t&&t.onResolveNewComponentSchema&&(b=t.onResolveNewComponentSchema(y,b));const O=V.toLowerCase().replace(/-/g,"_");return b&&!b.id&&b.type===V&&(b.id=`${O}_${Math.random().toString().slice(2,6)}`),b}function C(y){y&&t!=null&&t.onChildElementMovedOut&&t.onChildElementMovedOut(y)}function x(...y){if(t&&t.getPropsConfig)return t.getPropsConfig(...y)}function w(y){if(!y)return;const k=e==null?void 0:e.schema,{formSchemaUtils:V}=y;if(k&&V.getExpressions().length){const b=V.getExpressions().findIndex(O=>O.target===k.id);b>-1&&V.getExpressions().splice(b,1)}}function T(y){t&&t.onRemoveComponent&&t.onRemoveComponent(),w(y),e!=null&&e.schema.contents&&e.schema.contents.map(k=>{let V=k.id;k.type==="component-ref"&&(V=k.component);const b=n.value.querySelectorAll(`#${V}-design-item`);b!=null&&b.length&&Array.from(b).map(O=>{var N;(N=O==null?void 0:O.componentInstance)!=null&&N.value.onRemoveComponent&&O.componentInstance.value.onRemoveComponent(y)})})}function _(){if(t&&t.getCustomButtons)return t.getCustomButtons()}function v(y){if(t&&t.onPropertyChanged)return t.onPropertyChanged(y)}return a.value={canMove:l(),canSelectParent:s(),canDelete:d(),canNested:!c(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(h=e==null?void 0:e.parent)==null?void 0:h.componentInstance,schema:e==null?void 0:e.schema,styles:o,designerClass:r,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:u,getDraggingDisplayText:m,getPropConfig:x,getDragScopeElement:g,onAcceptMovedChildElement:F,onChildElementMovedOut:C,addNewChildComponentSchema:S,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||i.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||i.ref(!1),onRemoveComponent:T,getCustomButtons:_,onPropertyChanged:v},a}const te={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:"列表导航"},"filter-bar":{type:"filter-bar",name:"筛选条"}},Wo=i.ref(0);function qo(){Wo.value++}function Go(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function o(d,c=""){return{path:c+d.code,field:d.id,fullPath:d.code}}function r(d,c=""){return e.getViewModelById(d).states.map(u=>o(u,c))}function a(d){const c=e.getRootViewModelId(),f=r(d);if(d===c)return f;const u=r(c,"root-component.");return[...f,...u]}function l(d){return d.binding&&d.binding.path||d.id||""}function s(){return t&&t.getRenderStates()||[]}return{getVariables:a,getControlName:l,getStateMachines:s}}class nn{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,t)=>({convertFrom:(o,r,a,l)=>{const s=a.getExpressionRuleValue(e,t||r);return s&&s.value||""},convertTo:(o,r,a,l,s)=>{var d;if(r==="dataPicking"&&(a!=null&&a.target)){const c=`${a.target}_dataPicking`;((d=a.rules)==null?void 0:d.some(u=>u.id===c&&u.value))?o.dictPickingExpressionId=c:delete o.dictPickingExpressionId}l.updateExpression(a)}}));this.formSchemaService=e}getExpressionRule(e,t){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(l=>l.target===e);if(!r)return"";const a=r.rules.find(l=>l.type===t);return a||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),o=this.formSchemaService.getViewModelById(t);if(!o||!o.states||o.states.length===0)return[];const r=[];return o.states.forEach(a=>{r.push({key:a.code,name:a.name,description:a.name,category:a.category})}),r}createTreeNode(e,t,o="label"){return{id:e.id,name:e.name,bindingPath:e[o],parents:t}}buildEntityFieldsTreeData(e=null,t){const o=[];return e==null||e.forEach(r=>{var s;const a=this.createTreeNode(r,t);let l=[];(s=r.type)!=null&&s.fields&&(l=this.buildEntityFieldsTreeData(r.type.fields,[...t,r.label])),o.push({data:a,children:l,expanded:!0})}),o}buildChildEntityTreeData(e=null,t){const o=[];return e==null||e.forEach(r=>{var d,c;const a=this.createTreeNode(r,t),l=this.buildEntityFieldsTreeData((d=r.type)==null?void 0:d.fields,[...t,r.label]),s=this.buildChildEntityTreeData((c=r.type)==null?void 0:c.entities,[...t,r.label]);s!=null&&s.length&&(l==null||l.push(...s)),o.push({data:a,children:l||[],expanded:!0})}),o}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const t=e[0];if(!(t!=null&&t.type))return[];const o=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),r=this.buildChildEntityTreeData(t.type.entities,[t.code]);return r!=null&&r.length&&(o==null||o.push(...r)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"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,t,o){const r=o==="Field"?e.binding.field:e.id,a=this.getExpressionRule(r,t),l=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(t)&&a?a.message:"",...l};return a.messageType!=null&&(s.messageType=a.messageType),s}buildRule(e,t,o,r){const{expression:a,message:l,messageType:s}=t,d={id:`${e}_${o}`,type:o,value:a};return(o==="validate"||o==="dataPicking"||o==="required")&&(d.message=l),o==="dataPicking"&&(d.messageType=s),o==="validate"&&r&&(d.elementId=r),d}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,o,r){const a=t==="Field"?e.binding.field:e.id,l=this.buildRule(a,o,r,e.type==="form-group"?e.id:"");let d=this.getExpressionData().find(f=>f.targetType===t&&f.target===a);const c=f=>f.value.trim()==="";if(d){const f=d.rules.find(u=>u.id===l.id);if(f)c(l)?d.rules=d.rules.filter(u=>u.id!==l.id):(Object.assign(f,l),r==="validate"&&e.type==="form-group"&&(f.elementId=e.id));else{if(c(l))return null;d.rules=d.rules||[],d.rules.push(l)}}else{if(c(l))return null;d={target:`${a}`,rules:[l],targetType:t}}return d}getExpressionEditorOptions(e,t,o,r){return o.reduce((a,l)=>{var d,c;const s=t==="Field"?(d=e==null?void 0:e.binding)==null?void 0:d.field:e.id;return a[l]={hide:t==="Field"?!!((c=e==null?void 0:e.binding)!=null&&c.field):!1,description:"",title:this.expressionNames[l],type:"string",$converter:this.getExpressionConverter(s),editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[l]}编辑器`,showMessage:l==="validate"||l==="dataPicking"||l==="required",showMessageType:l==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,l,t),onSubmitModal:f=>{const u=this.updateExpression(e,t,f,l);if(r){const p=this.buildRule(s,f,l);r(p)}return u}}},a},{})}getExpressionInfo(e,t,o){const r=t==="Field"?e.binding.field:e.id,a=this.getExpressionRule(r,o),l={value:a&&a.value,targetId:r,targetType:t,expressionType:o};return a&&a.message&&(l.message=a.message),l}getExpressionConfig(e,t,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",properties:{...this.getExpressionEditorOptions(e,t,o,r)}}}getExpressionOptions(e,t,o){const r=this.getExpressionInfo(e,t,o);return{dialogTitle:`${this.expressionNames[o]}编辑器`,singleExpand:!1,showMessage:o==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,o,t),expressionInfo:r}}}class At{constructor(e,t){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,"schemaService",null);le(this,"metadataService",null);le(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var o;const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(a=>a.id===t)}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:te[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},o){const r={title:"外观",description:"Appearance"},a={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}};for(const l in t)a[l]=Object.assign(a[l]||{},t[l]);return{...r,properties:{...a},setPropertyRelates(l,s){if(l){switch(l&&l.propertyID){case"class":case"style":{st.value++;break}}o&&o(l,e,s)}}}}getPropertyEditorParams(e,t=[],o="visible",r={},a={}){const{getVariables:l,getControlName:s,getStateMachines:d}=Go(this.designerHostService),c=this.getRealTargetType(e),f=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],u={type:"property-editor",propertyTypes:f};return f.map(p=>{switch(p){case"Const":Object.assign(u,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":u.expressionConfig=this.getExpressionOptions(e,c,o);break;case"StateMachine":u.stateMachines=d();break;case"Variable":Object.assign(u,{controlName:s(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:l(this.viewModelId),onBeforeOpenVariables:m=>{m.value=l(this.viewModelId)}},a);break}}),u}getVisibleProperty(e,t=""){return{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,t==="gridFieldEditor"?["Const","Expression"]:["Const","Variable","StateMachine","Expression"],"visible")}}}getBehaviorConfig(e,t="",o={},r){const a={title:"行为",description:""},l=this.getVisibleProperty(e,t);for(const d in o)l[d]=Object.assign(l[d]||{},o[d]);const s=this;return{...a,properties:{...l},setPropertyRelates(d,c){if(d){switch(d.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(e,d);break}r&&r(d,c)}}}}afterMutilEditorChanged(e,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,e)}updateElementByParentContainer(e,t){const o=t&&t.parent&&t.parent.schema;if(!o)return;const r=o.contents.findIndex(l=>l.id===e),a=Oe.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,a),qo()}addNewVariableToViewModel(e,t){const o=e.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const l={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(l.code)||this.formSchemaUtils.getViewModelById(t).states.push(l)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:a,expressionInfo:l}=t,{targetId:s,targetType:d,expressionType:c,value:f,message:u}=l,p=this.formSchemaUtils.getModule();p.expressions??(p.expressions=[]);const{expressions:m}=p;let g=m.find(S=>S.target===s);g||(g={target:s,rules:[],targetType:d},m.push(g));const F=g.rules.find(S=>S.type===c);if(F)F.value=f,F.message=u;else{const S={id:a,type:c,value:f,message:u};g.rules.push(S)}delete t.expressionInfo}clearExpression(e,t){const o=e.propertyValue;if(o&&o.type==="Expression")return;const a=e.propertyID,l=this.formSchemaUtils.getExpressions(),s=t.binding?t.binding.field:t.id,d=l.find(c=>c.target===s);!d||!d.rules||(d.rules=d.rules.filter(c=>c.type!==a))}getExpressionOptions(e,t,o){return new nn(this.formSchemaUtils).getExpressionOptions(e,t,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"}}class zo extends At{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var l,s,d;const t=(d=(s=(l=this.formSchemaUtils.getFormSchema())==null?void 0:l.module)==null?void 0:s.entity[0])==null?void 0:d.entities[0],o=this.assembleSchemaEntityToTree(t,0),r=this,a=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...a.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:o,editable:!1},readonly:!0}},setPropertyRelates(c,f){switch(c&&c.propertyID){case"dataSource":{const u=r.formSchemaUtils.getViewModelById(r.viewModelId);if(u){const p=o.find(m=>m.label===c.propertyValue);u.bindTo=p.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,t,o,r="",a=[]){const l=r?`${r}/${e.label}`:"/";return a.push({id:e.id,name:e.name,label:e.label,layer:t,parent:o&&o.id,bindTo:l.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(s=>this.assembleSchemaEntityToTree(s,t+1,e,l,a)),a}getAppearanceProperties(e){var t,o;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"array",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:e,getLatestGridData:r=>e},refreshPanelAfterChanged:!0},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"}},setPropertyRelates(r,a){switch(r&&r.propertyID){case"useBlankWhenDataIsEmpty":e.emptyDataHeight=e.useBlankWhenDataIsEmpty?36:240;break;case"columns":e.columns=r.propertyValue||[];break}}},this.propertyConfig.categories.selection={title:"多选配置",$converter:"/converter/grid-selection.converter",properties:{multiSelect:{title:"启用多选",type:"boolean",refreshPanelAfterChanged:!0},showCheckbox:{visible:e.selection==null?!1:e.selection.multiSelect,title:"显示复选框",type:"boolean",refreshPanelAfterChanged:!0},showSelectAll:{visible:e.selection==null?!1:e.selection.multiSelect&&e.selection.showCheckbox,title:"显示全选",type:"boolean"}},setPropertyRelates(r,a){switch(r&&r.propertyID){case"multiSelect":e.selection.showCheckbox=r.propertyValue;break}}},this.propertyConfig.categories.rowNumber={title:"行号配置",$converter:"/converter/row-number.converter",properties:{enable:{title:"显示行号",type:"boolean",refreshPanelAfterChanged:!0},width:{visible:e.rowNumber==null?!0:e.rowNumber.enable,title:"宽度",type:"number"},heading:{visible:e.rowNumber==null?!0:e.rowNumber.enable,title:"标题",type:"string"}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0,editor:{readonly:this.isSubGrid()}},showIndex:{visible:((t=e.pagination)==null?void 0:t.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((o=e.pagination)==null?void 0:o.enable)||!1,title:"显示分页条数",type:"boolean"}}}}getEventPropConfig(e){var l;const t=[{label:"onClickRow",name:"行点击事件"},{label:"onSelectionChange",name:"行切换事件"}];((l=e.pagination)==null?void 0:l.enable)!==!1&&t.push({label:"onPageIndexChanged",name:"切换页码事件"},{label:"onPageSizeChanged",name:"分页条数变化事件"});const o=this,r=o.eventsEditorUtils.formProperties(e,o.viewModelId,t),a={};a[o.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,d){const c=s.propertyValue;delete e[o.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,o.eventsEditorUtils.saveRelatedParameters(e,o.viewModelId,c.events,c)),e.remoteSort=!!e.columnSorted}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function Uo(n,e){const t=n.schema,o=i.ref(!0),r=i.ref(!0);function a(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function s(){return!1}function d(){return!0}function c(f){return new zo(f,e).getPropertyConfig(t)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:c}}const ct=i.defineComponent({name:"FDataGridDesign",props:Rn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(n,e){var Ce;const t=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context"),a=Uo(r,o),l=tn(t,r,a);l.value.styles="display:flex;flex:1;",i.onMounted(()=>{t.value.componentInstance=l}),e.expose(l.value);const s=i.ref(n.columns),d=20,c=Co(n),f=0,u=i.ref(),p=i.ref(),m=i.ref(n.showStripe),g=i.ref([]),F=i.ref(!1),S=i.ref(((Ce=n.rowOption)==null?void 0:Ce.wrapContent)||!1),C=io(),x=ro(n),w=Zn(n,new Map,C,x,c),T=So(n,w,c,g,e),_=i.computed(()=>w.totalItems.value<d?w.totalItems.value:d),{containerStyleObject:v}=Gn(n),h=zn(n),{applyCommands:y}=h;y(s);const k=Ln(n),V=ko(),{applyColumnSorter:b,columnContext:O,updateColumnRenderContext:N}=k;b(w,V);const M=Un(n,O),E=wo(n,e,T,c),P=bo(n,e,c,E),H=lo(n),I=ho(n,P,H),R=go(n,w,P,x,c,H,I),U=yo(n,c,I,R),B=vo(n,c,I,R),L=Dn(n,s,w,_,f,R,U,B),{getVisualData:Z}=L,A=xo(n,T),{sidebarWidth:j}=A;g.value=Z(0,_.value+f-1);const D=ao(n,w,g,O,L,_,f,j),{onWheel:q,dataGridWidth:ee,viewPortHeight:Y,viewPortWidth:ae}=D,de=An(n,O,u,ae,M),{calculateColumnsSize:ye}=de,Ve=i.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":m.value})),Pe=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":F.value,"fv-grid-wrap-content":S.value})),{renderGridHeader:W}=Zt(r,n,k,D),{renderHorizontalScrollbar:oe}=Wn(n,u,D);function ne(){var Ie,Ye;Y.value=((Ie=p.value)==null?void 0:Ie.clientHeight)||0,ee.value=((Ye=u.value)==null?void 0:Ye.clientWidth)||0,ye()}i.onMounted(()=>{u.value&&(Ut.useResizeObserver(u.value,ne),ye(),i.nextTick(()=>{u.value&&(ee.value=u.value.clientWidth),p.value&&(ae.value=p.value.clientWidth,Y.value=p.value.clientHeight)}))});function Se(Ie){Ie&&(s.value=Ie,y(s),N(s.value),b(w,V),ye())}return i.watch(()=>n.columns,Ie=>{Se(Ie),st.value++}),i.watch(ae,()=>{u.value&&ye()}),()=>i.createVNode("div",{ref:t,class:Ve.value,style:v.value,onWheel:q},[W(),i.createVNode("div",{ref:u,class:Pe.value,onMouseover:()=>{F.value=!0},onMouseleave:()=>{F.value=!1}},[oe()])])}}),Yo={id:String,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: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}},Xo={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},Zo=i.defineComponent({name:"FOverlay",props:Xo,emits:["click"],setup(n,e){const t=i.ref(n.popupContentPosition),o=i.ref(n.host),r=i.computed(()=>({backgroundColor:n.backgroundColor||"",pointerEvents:"auto"}));function a(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}i.computed(()=>{const s=o.value;if(s){const d=s.getBoundingClientRect(),{left:c,top:f,height:u}=d;return{left:c,top:f+u}}return t.value});const l=i.computed(()=>({}));return()=>i.createVNode(i.Teleport,{to:"body"},{default:()=>{var s,d;return[i.createVNode("div",{class:"overlay-container",onClick:c=>a(c),style:r.value},[i.createVNode("div",{style:l.value},[(d=(s=e.slots).default)==null?void 0:d.call(s)])])]}})}});function Jo(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function Qo(n){const e=document.createElement("div");e.style.display="contents";let t;const o=n.onClickCallback||(()=>{}),r=()=>{o(),t&&t.unmount()};return t=i.createApp({setup(){i.onUnmounted(()=>{document.body.removeChild(e)});const a=Jo(n);return()=>i.createVNode(Zo,{"popup-content-position":n.popupPosition,host:n.host,onClick:r,backgroundColor:n.backgroundColor},{default:()=>[a&&a()]})}}),document.body.appendChild(e),t.mount(e),t}class Ko{static show(e){return Qo(e)}}const ei={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"}};class $e{constructor(e,t){this.x=e,this.y=t}static getTransformInfo(e){const o=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(o.length>=6){const r=parseInt(o[4],10),a=parseInt(o[5],10);return{x:r,y:a}}return{x:0,y:0}}static fromEvent(e,t=null){if(this.isMouseEvent(e))return new $e(e.clientX,e.clientY);if(t===null||e.changedTouches.length===1)return new $e(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let o=0;o<e.changedTouches.length;o++)if(e.changedTouches[o].target===t)return new $e(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 t=new $e(0,0);if(window){const o=window.getComputedStyle(e);if(o){const r=parseInt(o.getPropertyValue("left"),10),a=parseInt(o.getPropertyValue("top"),10);t.x=isNaN(r)?0:r,t.y=isNaN(a)?0:a}return t}return null}static copy(e){return new $e(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 yt{constructor(e,t){this.width=e,this.height=t}static getCurrent(e){const t=new yt(0,0);if(window){const o=window.getComputedStyle(e);return o&&(t.width=parseInt(o.getPropertyValue("width"),10),t.height=parseInt(o.getPropertyValue("height"),10)),t}return null}static copy(e){return new yt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function ti(n,e){const t=i.ref(),o=i.ref(),r=i.ref(),a=i.ref(),l=i.ref(),s=i.ref(),d=i.ref(),c=i.ref(),f=i.ref(),u=i.ref(),p=i.ref(),m=i.ref(n.resizeable),g=i.ref(),F=i.ref(n.draggable),S=i.ref(!1);function C(){const I=o.value||document.body,R=window.getComputedStyle(I);if(!R||!t.value)return;const U=$e.getTransformInfo(t.value),B={};d.value&&(B.deltaL=t.value.offsetLeft-d.value.x,B.deltaT=t.value.offsetTop-d.value.y);const L=R.getPropertyValue("position");B.width=I.clientWidth,B.height=I.clientHeight,B.pr=parseInt(R.getPropertyValue("padding-right"),10),B.pb=parseInt(R.getPropertyValue("padding-bottom"),10),B.position=R.getPropertyValue("position"),L==="static"&&(I.style.position="relative"),B.translateX=U.x,B.translateY=U.y,u.value=B}function x(I){if(t.value){a.value=yt.getCurrent(t.value),l.value=$e.getCurrent(t.value),s.value=a.value?yt.copy(a.value):null,d.value=l.value?$e.copy(l.value):null,C();const R=I.target.getAttribute("type")||"";c.value={n:!!R.match(/n/),s:!!R.match(/s/),w:!!R.match(/w/),e:!!R.match(/e/)}}}function w(){var I,R,U,B;if(t.value){const L=t.value;c.value&&((c.value.n||c.value.s)&&((I=s.value)!=null&&I.height)&&(L.style.height=s.value.height+"px"),(c.value.w||c.value.e)&&((R=s.value)!=null&&R.width)&&(L.style.width=s.value.width+"px"),d.value&&((U=d.value)!=null&&U.x&&(L.style.left=d.value.x+"px"),(B=d.value)!=null&&B.y&&(L.style.top=d.value.y+"px")))}}function T(){const I=n.minHeight?n.minHeight:1,R=n.minWidth?n.minWidth:1;s.value&&d.value&&c.value&&a.value&&(s.value.height<I&&(s.value.height=I,c.value.n&&l.value&&(d.value.y=l.value.y+(a.value.height-I))),s.value.width<R&&(s.value.width=R,c.value.w&&l.value&&(d.value.x=l.value.x+(a.value.width-R))),n.maxHeight&&s.value.height>n.maxHeight&&(s.value.height=n.maxHeight,l.value&&c.value.n&&(d.value.y=l.value.y+(a.value.height-n.maxHeight))),n.maxWidth&&s.value.width>n.maxWidth&&(s.value.width=n.maxWidth,c.value.w&&l.value&&(d.value.x=l.value.x+(a.value.width-n.maxWidth))))}function _(){if(o.value){const I=u.value;if(d.value&&s.value&&c.value&&a.value){const R=I.width-I.pr-I.deltaL-I.translateX-d.value.x,U=I.height-I.pb-I.deltaT-I.translateY-d.value.y;c.value.n&&d.value.y+I.translateY<0&&l.value&&(d.value.y=-I.translateY,s.value.height=a.value.height+l.value.y+I.translateY),c.value.w&&d.value.x+I.translateX<0&&l.value&&(d.value.x=-I.translateX,s.value.width=a.value.width+l.value.x+I.translateX),s.value.width>R&&(s.value.width=R),s.value.height>U&&(s.value.height=U)}}}function v(I){if(!r.value||!a.value||!l.value||!c.value)return;I.subtract(r.value);const R=I.x,U=I.y;c.value.n?(d.value.y=l.value.y+U,s.value.height=a.value.height-U):c.value.s&&(s.value.height=a.value.height+U),c.value.e?s.value.width=a.value.width+R:c.value.w&&(s.value.width=a.value.width-R,d.value.x=l.value.x+R),_(),T(),w()}function h(I){if(!f.value)return;const R=$e.fromEvent(I);R&&v(R)}function y(){if(t.value){const{width:I,height:R,x:U,y:B}=t.value.getBoundingClientRect(),L=$e.getTransformInfo(t.value);return{size:{width:I,height:R},position:{x:U-L.x,y:B-L.y}}}return null}function k(I){if(t.value){const R=y();p.value=R}r.value=void 0,a.value=null,l.value=null,s.value=null,d.value=null,c.value=null,f.value=null,document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",k)}function V(){document.addEventListener("mousemove",h),document.addEventListener("mouseup",k)}function b(I){I instanceof MouseEvent&&I.button===2||F.value&&(document.body.click(),I.stopPropagation(),I.preventDefault(),r.value=$e.fromEvent(I),f.value=I.target,x(I),V())}function O(I){return t.value=I,m.value&&i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:R=>b(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:R=>b(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:R=>b(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:R=>b(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:R=>b(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:R=>b(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:R=>b(R)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:R=>b(R)},null)])}function N(I=!0){document.body.click();const R=o.value||document.body,U=yt.getCurrent(R),B=t.value;I&&B&&(g.value=y(),g.value.transform=B.style.transform),U&&B&&(s.value=U,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="",p.value={size:s.value,position:{x:0,y:0}},F.value=!1,S.value=!0)}function M(){var I,R;if(document.body.click(),g.value){const U={width:g.value.size.width||0,height:g.value.size.height||0},B={x:(window.innerWidth-U.width)/2,y:(window.innerHeight-U.height)/2};(I=s.value)==null||I.set(U),(R=d.value)==null||R.set(B);const L=t.value;L.style.height=U.height+"px",L.style.width=U.width+"px",L.style.left=`${B.x}px`,L.style.top=`${B.y}px`,L.style.transform="",p.value={size:U,position:B},F.value=n.draggable,S.value=!1}}function E(){if(t.value){const I=yt.getCurrent(t.value);if(I){const{width:R,height:U}=I;t.value.style.left=`${(window.innerWidth-R)/2}px`,t.value.style.top=`${(window.innerHeight-U)/2}px`,t.value.style.transform=""}}}function P(){const I=()=>{S.value?N(!1):E(),document.body.click()};return window.addEventListener("resize",I),()=>{window.removeEventListener("resize",I)}}const H=P();return{renderResizeBar:O,boundingElement:o,resizedEventParam:p,maximize:N,restore:M,allowDrag:F,isMaximized:S,unWindowResizeHandle:H}}function ni(n,e,t){const o=i.ref(),r=i.ref(n.draggable),a=i.ref(n.lockAxis),l=i.ref(),s=i.ref(),d=i.ref(!1),c=i.ref(new $e(0,0)),f=i.ref(new $e(0,0)),u=i.ref(new $e(0,0)),p=i.ref(new $e(0,0));i.watch(()=>t.value,h=>{l.value.style.cursor=h?"move":"default"});function m(h,y){if(y.tagName==="BUTTON")return!1;if(y===h)return!0;for(const k in y.children)if(Object.prototype.hasOwnProperty.call(y.children,k)&&m(h,y.children[k]))return!0;return!1}function g(){var V,b;let h=u.value.x+f.value.x,y=u.value.y+f.value.y;a.value==="x"?(h=((V=c.value)==null?void 0:V.x)||0,u.value.x=0):a.value==="y"&&(y=((b=c.value)==null?void 0:b.y)||0,u.value.y=0);const k=`translate3d(${Math.round(h)}px, ${Math.round(y)}px, 0px)`;o.value&&(o.value.style.transform=k),p.value.x=h,p.value.y=y}function F(){if(!s.value||!o.value)return null;const h=s.value.getBoundingClientRect(),y=o.value.getBoundingClientRect(),k={top:h.top<y.top,right:h.right>y.right,bottom:h.bottom>y.bottom,left:h.left<y.left};return k.top||(u.value.y-=y.top-h.top),k.bottom||(u.value.y-=y.bottom-h.bottom),k.right||(u.value.x-=y.right-h.right),k.left||(u.value.x-=y.left-h.left),g(),k}function S(h){h&&(c.value&&h.subtract(c.value),u.value.set(h),g(),F())}function C(h){d.value&&r.value&&(h.stopPropagation(),h.preventDefault(),S($e.fromEvent(h,l.value)))}function x(){var h;d.value&&(d.value=!1,f.value.add(u.value),u.value.reset(),(h=o.value)==null||h.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",x))}function w(){!d.value&&l.value&&(d.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",C),document.addEventListener("mouseup",x))}function T(){if(o.value){const h=$e.getTransformInfo(o.value);f.value.set(h);return}f.value.reset()}function _(h){if(!t.value||h instanceof MouseEvent&&h.button===2)return;const y=h.target||h.srcElement;l.value!==void 0&&y&&!m(y,l.value)||r.value!==!1&&(document.body.click(),h.stopPropagation(),h.preventDefault(),c.value=$e.fromEvent(h,o.value),T(),w())}function v(h,y,k){if(r.value&&y){if(h)l.value=h;else if(n.dragHandle){if(n.dragHandle instanceof HTMLElement)l.value=n.dragHandle;else if(typeof n.dragHandle=="string"){const V=y.querySelector(n.dragHandle);V&&(l.value=V)}}o.value=y,s.value=k,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",_)):r.value=!1}}return{registerDraggle:v,resetTranslate:T}}function on(n,e){if(n){const t=o=>{o.key.toLowerCase()===n.toLowerCase()&&e({event:o,key:n})};return document.addEventListener("keydown",t),()=>{document.removeEventListener("keydown",t)}}}function oi(n,e){const t=i.ref(n.enableEsc);let o=null;return t.value?(o=on("Escape",r=>{e.emit("esc",{event:r.event,type:"esc"})}),{remove:o}):null}function ii(n,e){const t=i.ref(n.enableEnter);let o=null;return t.value?(o=on("Enter",r=>{e.emit("enter",{event:r.event,type:"enter"})}),{remove:o}):null}const _t=i.defineComponent({name:"FModal",props:ei,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(n,e){const t=i.ref(n.width||300),o=i.ref(n.height||200),r=i.ref(n.modelValue),a=i.ref(""),l=i.ref(n.class),s=i.ref(n.fitContent),d=i.ref(n.showHeader),c=i.ref(""),f=i.ref(n.showCloseButton),u=i.ref(n.showMaxButton),p=i.ref(!1),m=i.ref(n.dialogType),g=i.ref(n.src),F=i.ref(""),S=i.ref(n.showButtons),C=i.ref(n.title),x=i.ref(n.containment||null),w=i.ref(),T=i.ref(!1);function _(z,ge){Promise.resolve().then(()=>{var _e;return(_e=n.beforeClose)==null?void 0:_e.call(n)}).then(_e=>{_e&&(r.value=!1,e.emit("update:modelValue",!1),ge!=null&&e.emit(ge?"accept":"cancel"),e.emit("closed",z))})}const v=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:z=>{_(z,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:z=>{_(z,!0)}}],h=i.ref(n.buttons&&n.buttons.length?n.buttons:v),y=i.computed(()=>!!c.value),k=i.computed(()=>!!S.value&&!!h.value),V=i.ref(),b=i.ref(),O=i.ref(!1),{renderResizeBar:N,maximize:M,restore:E,boundingElement:P,resizedEventParam:H,allowDrag:I,unWindowResizeHandle:R}=ti(n),{registerDraggle:U}=ni(n,e,I);function B(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function L(){const z=document.querySelectorAll(".farris-modal").length;(!z||z-1<=0)&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}i.watch(()=>n.title,(z,ge)=>{z!==ge&&(C.value=z)}),i.watch(()=>n.modelValue,(z,ge)=>{z!==ge&&(r.value=z,r.value&&n.draggable&&i.nextTick(()=>{b.value&&!x.value&&(x.value=b.value.parentElement,P.value=x.value,U(V.value,b.value,P.value))}),z||(x.value&&(x.value=null),L())),r.value&&(T.value=B())}),i.watch(()=>n.showHeader,(z,ge)=>{z!==ge&&(d.value=z)}),i.watch(()=>n.showButtons,(z,ge)=>{z!==ge&&(S.value=z)}),i.watch(()=>H.value,(z,ge)=>{const _e=z||{},xe=ge||{};JSON.stringify(_e)!==JSON.stringify(xe)&&e.emit("resize",{newSize:z,oldSize:ge,isMaximized:O.value})});const Z=i.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),A=i.computed(()=>{var _e;const z={modal:!0,"farris-modal":!0,fade:!0};z["f-modal-fitContent"]=!!s.value,z.show=!!Z.value;const ge=(_e=n.maskClass)==null?void 0:_e.split(" ");return ge==null||ge.reduce((xe,We)=>(xe[We]=!0,xe),z),z}),j=i.computed(()=>{var _e;const z={"modal-dialog":!0},ge=(_e=l.value)==null?void 0:_e.split(" ");return ge==null||ge.reduce((xe,We)=>(xe[We]=!0,xe),z),z}),D=i.computed(()=>{const z={position:"absolute",top:`${(window.innerHeight-o.value)/2}px`,left:`${(window.innerWidth-t.value)/2}px`,width:`${t.value}px`,height:s.value?"auto":`${o.value}px`};return n.mask||(z.pointerEvents="auto"),z}),q=i.computed(()=>{const z={display:"block"};return n.mask||(z.pointerEvents="none",z.backgroundColor="transparent"),T.value&&(z.backgroundColor="transparent"),z}),ee=i.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value})),Y=i.computed(()=>{const z={display:d.value?"":"none"};return z["pointer-events"]=I.value?"auto":"none",z}),ae=i.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:O.value})),de=i.computed(()=>({"modal-body":!0,"f-utils-flex-column":m.value==="iframe","f-utils-fill":!0}));function ye(){return{height:`${n.footerHeight||60}px`}}const Ve=i.computed(()=>{const z={textAlgin:F.value},ge=ye();return Object.assign(z,ge)});function Pe(z){if(z.stopPropagation(),O.value){O.value=!1,E();return}M(),O.value=!0}async function W(z,ge){z.handle&&await z.handle(ge,z)&&e.emit("closed",ge)}function oe(z){z.width&&(t.value=z.width),z.height&&(o.value=z.height),z.buttons&&(h.value=z.buttons),z.title&&(C.value=z.title)}let ne=null,Se=null;i.onBeforeMount(()=>{T.value=B()}),i.onMounted(()=>{b.value&&!x.value&&(x.value=b.value.parentElement,P.value=x.value,U(V.value,b.value,P.value)),Z.value&&document.body.classList.add("modal-open"),ne=oi(n,e),Se=ii(n,e)}),i.onUnmounted(()=>{R&&R(),ne&&ne.remove(),Se&&Se.remove()}),e.expose({modalElementRef:b,updateModalOptions:oe,close:_,maxDialog:Pe,isMaximized:O});function Ce(){return i.createVNode("ul",null,[p.value&&i.createVNode("li",{class:"f-btn-icon f-bare"},[i.createVNode("span",{class:"f-icon modal_minimize"},null)]),u.value&&i.createVNode("li",{onClick:Pe,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[i.createVNode("span",{class:ae.value},null)]),f.value&&i.createVNode("li",{class:"f-btn-icon f-bare",onClick:z=>_(z,!1),style:"pointer-events: auto;"},[i.createVNode("span",{class:"f-icon modal_close"},null)])])}function Ie(){return i.createVNode("div",{class:"modal-footer",style:Ve.value},[h.value&&h.value.map(z=>{const ge=i.ref(z.disabled);return i.createVNode("button",{name:z.name,type:"button",disabled:ge.value,class:z.class+(z.iconClass?" btn-icontext":""),onClick:_e=>{W(z,_e)}},[!!z.iconClass&&i.createVNode("i",{class:z.iconClass},null),z.text])})])}function Ye(){return i.createVNode("div",{ref:V,class:"modal-header",style:Y.value},[e.slots.headerTemplate?e.slots.headerTemplate():i.createVNode("div",{class:"modal-title"},[y.value&&i.createVNode("span",{class:c.value,style:"margin-right: 8px"},null),i.createVNode("span",{class:"modal-title-label"},[C.value])]),i.createVNode("div",{class:"actions"},[Ce()])])}function Ke(){return e.slots.footerTemplate?e.slots.footerTemplate():k.value&&Ie()}function rt(z){if(z.stopPropagation(),n.allowClickMaskToClose){if(z.target!==w.value)return;_(z,!1)}}function et(){var z,ge;return i.createVNode("div",{id:a.value,class:j.value,style:D.value,ref:b},[i.createVNode("div",{class:ee.value},[d.value&&Ye(),i.createVNode("div",{class:de.value},[(ge=(z=e.slots).default)==null?void 0:ge.call(z),m.value==="iframe"&&i.createVNode("iframe",{title:a.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:g.value},null)]),Ke()]),!s.value&&b.value&&!O.value&&N(b.value)])}function tt(z){return z||"body"}return()=>i.createVNode(i.Teleport,{to:tt(n.host)},{default:()=>[Z.value&&i.createVNode(i.Transition,{name:"fade",appear:!0},{default:()=>[i.createVNode("div",{ref:w,class:A.value,style:q.value,onClick:rt},[et()])]})]})}});function rn(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function ri(n){const e=document.createElement("div");e.style.display="contents";const t=i.createApp({setup(o,r){i.onUnmounted(()=>{document.body.removeChild(e)});const a=i.ref(),l=i.ref(n.class||""),s=i.ref(!!n.showButtons),d=i.ref(!!n.showHeader),c=i.ref(n.showCloseButton==null?!0:n.showCloseButton),f=i.ref(!0),u=i.ref(n.title||""),p=n.acceptCallback||(()=>{}),m=n.rejectCallback||(()=>{}),g=n.closedCallback||(w=>{}),F=n.resizeHandle||(w=>{}),S=n.stopMoveHandle||(w=>{}),C=rn(n),x=w=>{f.value=!1,t.unmount(),g(w)};return i.onMounted(()=>{}),r.expose({modalRef:a}),()=>i.createVNode(_t,{ref:a,class:l.value,modelValue:f.value,"onUpdate:modelValue":w=>f.value=w,title:u.value,width:n.width,height:n.height,buttons:n.buttons,"show-header":d.value,"show-buttons":s.value,"show-close-button":c.value,"show-max-button":!1,onAccept:p,onCancel:m,fitContent:n.fitContent==null?!0:n.fitContent,onClosed:x,onResize:F,onStopMove:S},{default:()=>[C&&C(t)]})}});return document.body.appendChild(e),t.mount(e),t}class an{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,t){const{width:o,height:r}={width:window.innerWidth,height:window.innerHeight};return o<e&&(e=o-14),r<t&&(t=r-14),{width:e,height:t}}static show(e){const t=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return ri(t)}close(e){var t,o;e?(o=e.value)==null||o.close():(t=this.getCurrentModal())==null||t.close()}open(e){const t=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),a=o.value.acceptCallback||(()=>{}),l=o.value.rejectCallback||(()=>{}),s=o.value.closedCallback||((_,v)=>{}),d=o.value.resizeHandle||(_=>{}),c=e.stopMoveHandle||(_=>{});let f;const u=rn(o.value),p=_=>{var h;r.value=!1;const v=(h=_==null?void 0:_.target)==null?void 0:h.classList.contains("modal_close");s(_,this.isUseEscCloseModal.value?"esc":v?"icon":"button")},m=_=>{p(_),f&&i.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],i.render(null,t),f=null,this.modalRef.value=null,this.modalRefs){const v=Object.keys(this.modalRefs).map(h=>Number(h));v.length>0?this.activeModalIndex.value=Math.max(...v):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},g=_=>{var v;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((v=this.activeModalInstance.value)==null||v.close(_==null?void 0:_.event))},{width:F,height:S}=o.value,C=this.adaptToWindow(F||500,S||320);Object.assign(o.value,C);const x=()=>i.createVNode(_t,i.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":_=>r.value=_},o.value,{onAccept:a,onCancel:l,onClosed:m,onResize:d,onEsc:g,onStopMove:c}),{default:()=>[u&&u(this.app)]});return f=(_=>{const v=i.h(x,_);return v.appContext=this.appContext,i.render(v,t),v})({...o.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:_=>{o.value={...o.value,..._},f&&i.render(i.cloneVNode(f,{...o}),t)},destroy:m,modalRef:this.activeModalInstance,close:()=>this.close()}}}const ln=Symbol("FModalService");_t.install=n=>{n.component(_t.name,_t);const e=new an(n);n.provide(ln,e),n.provide("FModalService",e)};function sn(n,e){function t(){const o=n.beforeOpen||n.beforeClickButton||null;let r=Promise.resolve(!0);if(o){const a=o(e.value);if(typeof a>"u")return r;typeof a=="boolean"?r=Promise.resolve(a):r=a}return r}return{judgeCanOpen:t}}function ai(n,e,t,o,r){const a=i.ref(n.buttonBehavior),l=i.ref(n.popupOnInput),s=i.computed(()=>({"input-group-append":!0,"append-force-show":n.showButtonWhenDisabled&&(n.readonly||n.disable)})),{judgeCanOpen:d}=sn(n,r),c=i.computed(()=>n.showButtonWhenDisabled||(!n.editable||!n.readonly)&&!n.disable),f=i.inject(ln,null),u=i.ref();async function p(F){if(await d()&&c.value){const S=!!e.slots.default;if(a.value==="Modal"){const C=n.modalOptions,x=f==null?void 0:f.open({...C,render:()=>e.slots.default&&e.slots.default()});u.value=x==null?void 0:x.modalRef}a.value==="Overlay"&&Ko.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),S&&a.value==="Popup"&&o.togglePopup(!0),S&&l.value&&o.hidePopup(),e.emit("clickButton",{origin:F,value:n.modelValue})}}function m(F){e.emit("mouseEnterIcon",F)}function g(F){e.emit("mouseLeaveIcon",F)}return{buttonGroupClass:s,onClickButton:p,onMouseEnterButton:m,onMouseLeaveButton:g,modalRef:u}}function li(n,e,t,o,r,a){const l=i.ref(!1),s=i.computed(()=>n.enableClear&&!n.readonly&&!n.disable),{changeTextBoxValue:d,hasClearClass:c}=a;function f(g){l.value=g,c.value=g}i.watch(r,()=>{f(!!r.value)});function u(g){const F=!n.readonly&&!n.disable&&n.editable,S=!n.editable;g.stopPropagation(),(F||S)&&(d(""),f(!l.value),e.emit("clear"))}function p(g){if(s.value){if(!t.value){f(!1);return}!n.disable&&!n.readonly&&f(!0)}}function m(g){s.value&&f(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:u,onMouseEnterTextBox:p,onMouseLeaveTextBox:m}}function si(n,e,t,o,r){const a=i.computed(()=>n.popupOnInput),l=i.computed(()=>n.popupOnFocus),{shouldPopupContent:s,closeAllPopover:d}=r,c=i.ref(!1),f=i.computed(()=>n.enableTitle?t.value:""),u=i.computed(()=>(n.disable||n.readonly)&&!n.forcePlaceholder?"":n.placeholder),p=i.computed(()=>n.readonly||!n.editable),m=i.ref(!1),g=i.computed(()=>!n.disable&&m.value),F=i.computed(()=>({"text-left":n.textAlign==="left","text-center":n.textAlign==="center","text-right":n.textAlign==="right","form-control":!0,"f-utils-fill":!0})),S=i.computed(()=>({"input-group":!0,"f-state-disabled":n.disable,"f-state-editable":n.editable&&!n.disable&&!n.readonly,"f-state-readonly":n.readonly,"f-state-focus":g.value,"input-group--has-clear":n.enableClear&&c.value}));function C(b,O=!0){t.value=b,O&&(e.emit("change",b),e.emit("update:modelValue",b))}function x(b){s.value=!1,C(b,!0)}i.watch(()=>n.modelValue,b=>{t.value=b});function w(b){m.value=!1,e.emit("blur",b),b.stopPropagation()}function T(b){e.emit("click",b),d(),e.slots.default&&!n.disable&&!n.readonly&&n.popupOnClick&&r.togglePopup()}function _(b){n.disable||(m.value=!0,p.value||(e.emit("focus",b),l.value&&!s.value&&r.popup()))}function v(b){e.emit("input",b.target.value);const O=b.target.value;o.value=O,t.value!==O&&C(O,n.updateOn==="change"),a.value&&!s.value&&r.popup()}function h(b){b.target.tagName!=="INPUT"&&b.preventDefault(),b.stopPropagation()}function y(b){e.emit("keydown",b)}function k(b){b.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),e.emit("keyup",b)}function V(b){const O=b.target.value;b.stopPropagation(),C(O)}return{hasFocusedTextBox:g,isTextBoxReadonly:p,textBoxClass:F,textBoxPlaceholder:u,textBoxTitle:f,inputGroupClass:S,hasClearClass:c,changeTextBoxValue:C,commitValue:x,onBlurTextBox:w,onClickTextBox:T,onFocusTextBox:_,onInput:v,onKeyDownTextBox:y,onKeyUpTextBox:k,onMouseDownTextBox:h,onTextBoxValueChange:V}}const vt="FarrisVue_PopoverInstancesKey";function ci(n,e,t,o){const r=i.ref(),a=i.ref(!1),{judgeCanOpen:l}=sn(n,o);i.watch(()=>r.value,(m,g)=>{window[vt]=window[vt]||new WeakMap,m?window[vt].set(t.value,m):window[vt].delete(t.value)});function s(){if(window[vt]){const m=window[vt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(g=>{m.get(g)&&g!==t.value&&m.get(g).hide()})}}function d(){const m=r.value;m&&m.show(t.value)}async function c(m=!1){if(!!e.slots.default){if(!m&&!a.value&&!await l())return;a.value=!a.value,await i.nextTick(),d()}}async function f(m=!1){if(!!e.slots.default){if(!m&&!await l())return;a.value=!0,await i.nextTick(),d()}}function u(){a.value=!1}function p(){a.value=!0,i.nextTick(()=>{d()})}return{hidePopup:u,showPopup:p,popup:f,shouldPopupContent:a,togglePopup:c,popoverRef:r,closeAllPopover:s}}function di(n,e,t){const o=i.ref(),{isTextBoxReadonly:r,textBoxClass:a,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:d,onClickTextBox:c,onFocusTextBox:f,onInput:u,onKeyDownTextBox:p,onKeyUpTextBox:m,onMouseDownTextBox:g,onTextBoxValueChange:F}=t;return i.onMounted(()=>{var S,C;n.selectOnCreated&&((S=o.value)==null||S.select()),n.focusOnCreated&&((C=o.value)==null||C.focus({preventScroll:!0}))}),()=>i.createVNode("input",{ref:o,name:"input-group-value",autocomplete:n.autoComplete?"on":"off",class:a.value,disabled:n.disable,maxlength:n.maxLength,minlength:n.minLength,placeholder:l.value,readonly:r.value,tabindex:n.tabIndex,title:s.value,type:n.inputType,value:e.value,onBlur:d,onChange:F,onClick:c,onFocus:f,onInput:u,onKeydown:p,onKeyup:m,onMousedown:g},null)}function ui(n,e,t){const o=i.ref(n.separator),r=i.computed(()=>n.readonly||n.disable),{changeTextBoxValue:a,onFocusTextBox:l,onBlurTextBox:s,onClickTextBox:d,textBoxPlaceholder:c}=t,f=i.computed(()=>e.value?e.value.split(o.value).map(g=>({name:g,selectable:!0})):[]);function u(g){a(g.map(F=>F.name).join(o.value),!0)}i.watch(()=>n.separator,g=>{o.value=g});const p=i.ref(!n.disable&&!n.readonly);i.watch([()=>n.disable,()=>n.readonly],([g,F],[S,C])=>{p.value=!g&&!F});function m(g){d(g)}return()=>i.createVNode(Pn,{tabindex:n.tabIndex,onFocus:l,onBlur:s,id:`${n.id}-tag-editor`,class:"form-control",placeholder:c.value,data:f.value,showClose:!r.value,showInput:!0,disable:r.value,onChange:u,onClick:m},null)}function fi(n,e,t,o){const{buttonGroupClass:r,onClickButton:a,onMouseEnterButton:l,onMouseLeaveButton:s}=t,{enableClearButton:d,showClearButton:c,onClearValue:f}=o,u=i.ref();return{renderButtonGroup:()=>i.createVNode("div",{id:`${n.id}-button-group`,class:r.value},[d.value&&i.withDirectives(i.createVNode("span",{class:"input-group-text input-group-clear",onClick:f},[i.createVNode("i",{class:"f-icon modal_close"},null)]),[[i.vShow,c.value]]),e.slots.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",onClick:a,onMouseenter:l,onMouseleave:s},[e.slots.buttonContent()]):n.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:n.buttonContent,ref:u,onClick:a,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:u}}function pi(n,e,t){const o=i.ref(n.popupMinWidth),{hidePopup:r,popoverRef:a}=t;return()=>i.createVNode(jn,{id:`${n.id}-popover`,ref:a,placement:n.placement,host:n.popupHost,"keep-width-with-reference":n.keepWidthWithReference,fitContent:!0,"right-boundary":n.popupRightBoundary,minWidth:o.value,class:n.popupClass,offsetX:n.popupOffsetX,onHidden:r,limitContentBySpace:n.limitContentBySpace},{default:()=>{var l,s;return[(s=(l=e.slots).default)==null?void 0:s.call(l)]}})}const mi=i.defineComponent({name:"FButtonEdit",props:Yo,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(n,e){const t=i.ref(),o=i.ref(n.customClass),r=i.ref(n.modelValue),a=ci(n,e,t,r),{shouldPopupContent:l,hidePopup:s,showPopup:d,togglePopup:c}=a,f=ai(n,e,t,a,r),u=i.ref(""),p=si(n,e,r,u,a),{hasFocusedTextBox:m,commitValue:g,inputGroupClass:F}=p,S=li(n,e,r,m,u,p),{onMouseEnterTextBox:C,onMouseLeaveTextBox:x}=S,w=i.computed(()=>{const M={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!n.wrapText};return o.value&&o.value.split(" ").reduce((E,P)=>(E[P]=!0,E),M),M}),T=i.computed(()=>({overflow:n.wrapText?"hidden":""})),_=i.computed(()=>({paddingLeft:"3px",backgroundColor:"#fff"}));function v(){if(!n.multiSelect||n.inputType!=="tag"||!t.value)return 0;let M=0;const E=Array.from(t.value.querySelectorAll(".farris-tag-item"));return E&&E.length&&(M=E.map(P=>P.offsetTop).filter(P=>P>20).length),M}const h=i.ref(v());i.onUpdated(()=>{h.value=v()});function y(){return n.multiSelect&&n.inputType==="tag"?()=>i.createVNode(i.Fragment,null,[ui(n,r,p)(),!!h.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("+"),h.value])])]):di(n,r,p)}let k=y();i.watch([()=>n.multiSelect,()=>n.inputType],()=>{k=y()});const{renderButtonGroup:V,buttonHandleElement:b}=fi(n,e,f,S),O=pi(n,e,a),N={commitValue:g,elementRef:t,hidePopup:s,showPopup:d,popoverRef:a.popoverRef,shouldPopupContent:l,togglePopup:c,openDialog:()=>{b.value&&n.buttonBehavior==="Modal"&&b.value.click()},getModal:()=>{var M;return n.buttonBehavior==="Modal"?(M=f.modalRef.value)==null?void 0:M.value:null}};return i.onMounted(()=>{t.value.componentInstance=N,window.onresize=()=>{document.body.click()}}),i.onBeforeUnmount(()=>{var M;window.onresize=null,(M=window[vt])==null||M.delete(t.value)}),e.expose(N),()=>i.createVNode(i.Fragment,null,[i.createVNode("div",i.mergeProps(e.attrs,{ref:t,class:w.value,id:n.id,style:T.value}),[i.createVNode("div",{id:`${n.id}-input-group`,class:F.value,style:_.value,onMouseenter:C,onMouseleave:x},[k(),V()])]),l.value&&O()])}});function hi(n={}){function e(c,f,u,p){if(typeof u=="number")return p[c].length===u;if(typeof u=="object"){const m=Object.keys(u)[0],g=u[m];if(m==="not")return Number(p[c].length)!==Number(g);if(m==="moreThan")return Number(p[c].length)>=Number(g);if(m==="lessThan")return Number(p[c].length)<=Number(g)}return!1}function t(c,f,u,p){return p[c]&&p[c].propertyValue&&String(p[c].propertyValue.value)===String(u)}const o=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((c,f)=>(c.set(f,n[f]),c),o);function r(c,f){const u=c;return typeof f=="number"?[{target:u,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:u,operator:"getProperty",param:c,value:!!f}]:typeof f=="object"?Object.keys(f).map(p=>{if(p==="length")return{target:u,operator:"length",param:null,value:f[p]};const m=p,g=f[p];return{target:u,operator:"getProperty",param:m,value:g}}):[]}function a(c){return Object.keys(c).reduce((u,p)=>{const m=r(p,c[p]);return u.push(...m),u},[])}function l(c,f){if(o.has(c.operator)){const u=o.get(c.operator);return u&&u(c.target,c.param,c.value,f)||!1}return!1}function s(c,f){return a(c).reduce((m,g)=>m&&l(g,f),!0)}function d(c,f){const u=Object.keys(c),p=u.includes("allOf"),m=u.includes("anyOf"),g=p||m,C=(g?c[g?p?"allOf":"anyOf":"allOf"]:[c]).map(w=>s(w,f));return p?!C.includes(!1):C.includes(!0)}return{parseValueSchema:d}}const gi={},yi={};hi();function Ft(n,e,t=new Map,o=(l,s,d,c)=>s,r={},a=l=>l){return Jt[e.title]=e,Qt[e.title]=o,gi[e.title]=r,yi[e.title]=a,(l={},s=!0)=>{if(!s)return en(l,t);const d=Do(l,e,t),c=Object.keys(n).reduce((f,u)=>(f[u]=n[u].default,f),{});return Object.assign(c,d)}}function It(n,e){return{customClass:e.class,customStyle:e.style}}const cn=new Map([["appearance",It],["column","columnOption"]]),dn=new Map([]),vi="root-viewmodel";class bi{constructor(e,t){le(this,"formSchemaUtils");le(this,"controlCreatorUtils");le(this,"designViewModelUtils");le(this,"useFormCommand");le(this,"formStateMachineUtils");this.resolver=e,this.designerHostService=t,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 t=this.createComponentRefNode(e),o=this.createComponentNode(e),r=this.createViewModeNode(e),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(t,e,r)}wrapContainerSectionForComponent(e,t,o){var s,d,c,f,u,p,m,g;const r=(d=(s=t==null?void 0:t.parentComponentInstance)==null?void 0:s.schema)==null?void 0:d.type,a=(f=(c=this.formSchemaUtils.getFormSchema())==null?void 0:c.module)==null?void 0:f.templateId;if(r===te["splitter-pane"].type&&["double-list-template","tree-list-template"].includes(a))return e;const l=[te["content-container"].type,te["response-layout-item"].type,te["splitter-pane"].type];if(r&&l.includes(r)){const F=this.resolver.getSchemaByType("section",{parentComponentInstance:t.parentComponentInstance,mainTitle:t.componentName},this.designerHostService);if(F&&F.contents&&F.contents.length){const S=F.contents[0];return S.contents=[e],this.appendAddDeleteBtnToParentContainer(S,t,o),F}}return this.appendAddDeleteBtnToParentContainer((u=t==null?void 0:t.parentComponentInstance)==null?void 0:u.schema,t,o),r===te["tab-page"].type&&(p=t.parentComponentInstance)!=null&&p.parent&&(m=t.parentComponentInstance)!=null&&m.parent.updateToolbarItems&&((g=t.parentComponentInstance)==null||g.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,t,o){const r=e.type,a=o.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(t.bindTo==="/"||t.componentType!=="data-grid"&&t.componentType!=="form")return;const l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),s=te["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",d=[{id:`button-add-${t.componentId}`,type:s,text:"新增",disabled:l.find(c=>c.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,appearance:{class:""},onClick:`root-viewModel.${o.id}.${a}AddItem1`},{id:`button-remove-${t.componentId}`,type:s,text:"删除",disabled:l.find(c=>c.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,appearance:{class:""},onClick:`root-viewModel.${o.id}.${a}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)}appendAddAndDeleteCommands(e){const t=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),o=ce.useGuid().guid(),r=ce.useGuid().guid(),a=this.resolveCommandController();e.commands.push({id:o,code:`${t}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:a,shortcut:{},extensions:[]},{id:r,code:`${t}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:a,shortcut:{},extensions:[]}),this.formSchemaUtils.getFormSchema().module.webcmds.find(d=>d.id===a).refedHandlers.push({host:o,handler:"AddItem"},{host:r,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,t=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],o=e.find(a=>t.includes(a.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:[]}),this.useFormCommand&&this.useFormCommand.checkCommands(),r}createComponentRefNode(e){const t=this.resolver.getSchemaByType("component-ref");return Object.assign(t,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),t}createComponentNode(e){const t=this.resolver.getSchemaByType("component"),o=this.createDateGridComponentContents(e);return Object.assign(t,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getDataGridComponentClass()},contents:o}),t}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:vi,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(){const{templateId:e}=this.formSchemaUtils.getFormSchema().module;return["double-list-in-tab-template","double-list-template","tree-list-template"].includes(e)?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){const{templateId:t}=this.formSchemaUtils.getFormSchema().module;let o;if(t==="double-list-in-tab-template"){const c=this.resolver.getSchemaByType("section");Object.assign(c,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),o=c}else if(t==="double-list-template"||t==="tree-list-template"){const c=this.resolver.getSchemaByType("section");Object.assign(c,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),o=c}else{const c=this.resolver.getSchemaByType("content-container");Object.assign(c,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),o=c}const r=this.resolver.getSchemaByType("data-grid"),a=[],l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),s=e.editable&&l.length>0&&l.findIndex(c=>c.id==="editable")>-1;Object.assign(r,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:s,dataSource:e.dataSource||"",editable:s?"viewModel.stateMachine['editable']":!1,pagination:{enable:!e.editable}}),o.contents=[r];const{selectedFields:d}=e;return d==null||d.forEach(c=>{if(c.$type===ce.FormSchemaEntityField$Type.ComplexField)return;const f=Oe.cloneDeep(c),u=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",f,"",s);u&&a.push(u)}),[o]}assembleViewModelFields(e){const t=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{let a="blur";const l=r.type.name;(l===ce.FormSchemaEntityFieldTypeName.Enum||l===ce.FormSchemaEntityFieldTypeName.Boolean)&&(a="change"),t.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),t}}function un(n,e,t,o){var a,l,s,d,c,f,u;const r=t.parentComponentInstance;if(r&&o){const p=Math.random().toString(36).slice(2,6),m={componentId:`data-grid-${p}`,componentName:((a=t.bindingSourceContext)==null?void 0:a.entityTitle)||((s=(l=t.bindingSourceContext)==null?void 0:l.bindingEntity)==null?void 0:s.name)||`表格-${p}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((d=t.bindingSourceContext)==null?void 0:d.bindTo)||"",dataSource:(f=(c=t.bindingSourceContext)==null?void 0:c.bindingEntity)==null?void 0:f.label,selectedFields:(u=t.bindingSourceContext)==null?void 0:u.bindingEntityFields};return new bi(n,o).createComponent(m)}else return e}function fn(n,e,t){return e}const Ci={$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"]},pn={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},wi=Ft(pn,Ci,cn,un),Si=new Map([["appearance",It]]);function xi(n,e,t){return e}const Fi={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:[]}}}}}},Ti={$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"]},mn={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%"}]}};Ft(mn,Ti,Si,xi,Fi);const _i=new Map([["appearance",Le.resolveAppearance]]);function Mi(n,e,t){return e}const ki={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Ei={title:"list-view",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},hn={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,default:""},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}};Le.createPropsResolver(hn,ki,_i,Mi,Ei);function Ii(n,e){function t(a){const l=[];let s=a.nextNode();for(;s;)l.push(s),s=a.nextNode();return l}function o(a,l){const s=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);return t(s).map(u=>({textNode:u,text:(u.textContent||"").toLocaleLowerCase()})).map(({textNode:u,text:p})=>{const m=[];let g=0;for(;g<p.length;){const F=p.indexOf(l,g);if(F===-1)break;m.push(F),g=F+l.length}return m.map(F=>{const S=new Range;return S.setStart(u,F),S.setEnd(u,F+l.length),S})}).flat()}function r(a){if(!CSS.highlights||(CSS.highlights.clear(),!a||!e))return;const l=o(e.value,a.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:r}}function gn(n,e,t,o,r,a,l,s,d,c){const f=i.ref(n.size),u=i.ref(n.textField),p=i.ref(n.titleField),m=i.ref(n.disableField),g=i.computed(()=>{var y,k;return((y=n.selection)==null?void 0:y.multiSelect)&&((k=n.selection)==null?void 0:k.showCheckbox)}),{onMouseenterItem:F,onMouseoverItem:S,onMouseoutItem:C}=a,{getKey:x,listViewItemClass:w,onCheckItem:T,onClickItem:_}=l,v=i.computed(()=>{const y={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return n.itemClass?y:{margin:f.value==="small"?"0.25rem 0":"8px 0",...y}});function h(y,k,V){return y.checked=s.findIndexInSelectedItems(y)>-1,i.createVNode("li",{class:w(y,k),id:x(y,k),key:x(y,k),onClick:b=>_(b,y,k),onMouseenter:b=>F(b,y,k),onMouseover:b=>S(b,y,k),onMouseout:b=>C(b,y,k)},[g.value&&i.createVNode("div",{class:"f-list-select",onClick:b=>b.stopPropagation()},[i.createVNode($t.FCheckbox,{id:"list-"+x(y,k),customClass:"listview-checkbox float-left",disabled:y[m.value],checked:y.checked,"onUpdate:checked":b=>y.checked=b,onChange:b=>{T(y,k,!b.checked)}},null)]),i.createVNode("div",{class:"f-list-content"},[i.createVNode("div",{class:n.itemContentClass,style:v.value,title:y.raw[p.value]||y.raw[u.value]},[y.raw[u.value]])])])}return{renderItem:h}}function Vi(n,e,t,o,r,a,l,s,d,c){const f=i.ref(n.multiSelect),u=i.ref(n.disableField),p=i.ref(n.textField),{onMouseenterItem:m,onMouseoverItem:g,onMouseoutItem:F}=a,{getKey:S,listViewItemClass:C,onCheckItem:x,onClickItem:w}=l;function T(v,h,y){return e.slots.content?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.content({item:v.raw,index:h,selectedItem:y})]):i.createVNode("div",{style:"margin: 10px 0;"},[v.raw[p.value||"name"]])}function _(v,h,y){return i.createVNode("li",{class:C(v,h),id:S(v,h),key:S(v,h),onClick:k=>w(k,v,h),onMouseenter:k=>m(k,v,h),onMouseover:k=>g(k,v,h),onMouseout:k=>F(k,v,h)},[f.value&&i.createVNode("div",{class:"f-list-select",onClick:k=>k.stopPropagation()},[i.createVNode($t.FCheckbox,{id:"list-"+S(v,h),customClass:"listview-checkbox",disabled:v[u.value]||!v.checked,checked:v.checked,"onUpdate:checked":k=>v.checked=k,onChange:k=>x(v,h,!k.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[T(v,h,y)])])}return{renderItem:_}}function Ni(n,e,t,o,r,a,l,s,d,c){const f=i.ref(n.multiSelect),u=i.ref(n.disableField),p=i.ref(n.textField),{onMouseenterItem:m,onMouseoverItem:g,onMouseoutItem:F}=a,{getKey:S,listViewItemClass:C,onCheckItem:x,onClickItem:w}=l,{dragstart:T,dragenter:_,dragover:v,dragend:h}=o,{removeItem:y}=d,k=i.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function V(E,P=""){const H=E.target;H.title=H.scrollWidth>H.clientWidth?P:""}function b(E){return i.createVNode("div",{style:k.value,onMouseenter:P=>V(P,E.raw[p.value||"name"])},[E.raw[p.value||"name"]])}function O(){return e.slots.itemContent?e.slots.itemContent:b}const N=O();function M(E,P,H){return i.createVNode("li",{class:C(E,P),id:S(E,P),key:S(E,P),onClick:I=>w(I,E,P),onMouseenter:I=>m(I,E,P),onMouseover:I=>g(I,E,P),onMouseout:I=>F(I,E,P),draggable:"true",onDragstart:I=>T(I,E,P),onDragenter:I=>_(I,P),onDragend:I=>h(I,E),onDragover:I=>v(I)},[f.value&&i.createVNode("div",{class:"f-list-select",onClick:I=>I.stopPropagation()},[i.createVNode($t.FCheckbox,{id:"list-"+S(E,P),customClass:"listview-checkbox",disabled:E[u.value]||!E.checked,checked:E.checked,"onUpdate:checked":I=>E.checked=I,onChange:I=>x(E,P,!I.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[N(E)]),i.createVNode("div",{class:"f-list-remove",onClick:I=>y(P)},[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 Pi(n,e,t,o,r,a,l,s,d,c){var S;const f=i.ref(((S=n.group)==null?void 0:S.groupFields)||[]),{collpaseGroupIconClass:u}=r,{toggleGroupRow:p}=c;function m(C,x){x.collapse=!x.collapse,t.value=p(x.collapse?"collapse":"expand",x,t.value)}function g(C,x,w){return e.slots.group?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.group({item:C.raw,index:x,selectedItem:w})]):i.createVNode("div",{class:"f-navlookup-recentHeader",onClick:T=>m(T,C)},[i.createVNode("div",{class:"fv-grid-group-row-icon"},[i.createVNode("span",{class:u(C)},null)]),i.createVNode("div",{class:"f-navlookup-recommandLabel"},[C.raw[f.value[C.layer]]])])}function F(C,x,w){return C.layer>-1&&g(C,x,w)}return{renderItem:F}}function Bi(n,e,t,o){const{dataView:r}=t,{updateSelectedItems:a}=o;function l(s){if(s>-1&&s<r.value.length){const d=r.value.splice(s,1);a(),e.emit("removeItem",d[0])}}return{removeItem:l}}function Oi(n,e,t,o,r,a,l,s,d,c){const f=i.ref(n.view),u=i.ref(n.view==="CardView"),p=i.ref({}),m=i.ref("暂无数据"),g=Bi(n,e,o,d),F=i.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":n.multiSelect,"d-flex":u.value,"flex-wrap":u.value})),S=i.computed(()=>!!t.value&&t.value.length>0),C=i.computed(()=>t.value.length===0);i.computed(()=>C.value&&!e.slots.empty);function x(){return f.value==="SingleView"?gn:f.value==="DraggableView"?Ni:(f.value==="ContentView"||f.value==="CardView")&&e.slots.content?Vi:gn}const w=x(),{renderItem:T}=w(n,e,t,c,r,a,d,l,g,s),{renderItem:_}=Pi(n,e,t,c,r,a,d,l,g,s),v=[T,_];function h(){return t.value.filter(V=>V.visible!==!1).map((V,b)=>v[V.type](V,b,p))}function y(){return i.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[i.createVNode("p",{class:"f-empty-title"},[e.slots.empty?e.slots.empty():m.value])])}function k(){return i.createVNode("ul",{class:F.value,style:"list-style: none;"},[S.value&&h(),C.value&&y()])}return{renderListArea:k}}function $i(n,e,t){function o(){return e.slots.header&&i.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:o}}function yn(n,e,t){const o=i.ref(n.headerClass),r=i.ref(n.placeholder),a=i.ref(""),l=i.computed(()=>!a.value),s=i.computed(()=>!!a.value);function d(p){a.value=""}i.watch(a,p=>{n.enableHighlightSearch&&t.search(p),e.emit("afterSearch",p)});const c=i.computed(()=>{const p={"form-group":!0,"farris-form-group":!0};return o.value&&o.value.split(" ").reduce((g,F)=>(g[F]=!0,g),p),p});function f(p){}function u(){return i.createVNode("div",{class:"f-list-view-header",onClick:i.withModifiers(()=>f,["prevent","stop"])},[i.createVNode("div",{class:c.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":p=>a.value=p,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[i.vModelText,a.value]]),i.createVNode("div",{class:"input-group-append"},[s.value&&i.createVNode("span",{class:"input-group-text input-group-clear",onClick:p=>d()},[i.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&i.createVNode("span",{class:"input-group-text"},[i.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:u}}function ji(){const n=i.ref(""),e=i.ref(-1),t=i.ref(""),o=i.ref(-1),r=i.ref(!1);function a(u,p,m){o.value=m}function l(u,p,m){r.value||(o.value=m)}function s(u,p,m){o.value=-1}function d(){r.value=!0}function c(){r.value=!1}function f(){e.value=-1,n.value=""}return{activeIndex:e,focusedItemId:t,hoverIndex:o,clearActiveItem:f,onMouseenterItem:a,onMouseoverItem:l,onMouseoutItem:s,resumeHover:c,suspendHover:d}}function Ri(n,e,t,o){const r=i.ref(n.idField),{dataView:a}=t,l=i.ref(-1),s=i.ref(!1),{activeIndex:d,focusedItemId:c,hoverIndex:f,resumeHover:u,suspendHover:p}=o;let m,g=0,F=0;function S(v,h){const y=v-g,k=h-F;m.style.left=parseInt(m.style.left)+y+"px",m.style.top=parseInt(m.style.top)+k+"px",g=v,F=h}function C(v){const{left:h,top:y}=v.getBoundingClientRect(),k=v.cloneNode(!0);return k.style.cssText=`
|
|
2
|
+
position:absolute;
|
|
3
|
+
left:${h}px;
|
|
4
|
+
top:${y}px;
|
|
5
|
+
z-index: 999999;
|
|
6
|
+
border: 1px solid #e2e3e5;
|
|
7
|
+
pointer-events: none;
|
|
8
|
+
background-color: #edf5ff;
|
|
9
|
+
border-radius: 10px;
|
|
10
|
+
margin: 4px 2px;
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
float: none;
|
|
14
|
+
text-align: initial;
|
|
15
|
+
width:${getComputedStyle(v).width};
|
|
16
|
+
height:${getComputedStyle(v).height};
|
|
17
|
+
`,k.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",k.children[0].children[0].style.cssText=`
|
|
18
|
+
margin: 10px 0px 10px 14px;
|
|
19
|
+
overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
|
|
20
|
+
`,k.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",k.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(k),k}function x(v,h,y){if(v.stopPropagation(),p(),h){if(m=C(v.target),v.dataTransfer){const k=new Image;k.src="",v.dataTransfer.setDragImage(k,0,0)}g=v.pageX,F=v.pageY,setTimeout(()=>{l.value=y,s.value=!0,h.moving=!0})}}function w(v,h){if(v.preventDefault(),l.value!==h){const y=a.value[l.value],k=a.value;k.splice(l.value,1),k.splice(h,0,y),l.value=h,S(v.pageX,v.pageY)}}function T(v){v.preventDefault(),v.dataTransfer&&(v.dataTransfer.dropEffect="move"),S(v.pageX,v.pageY)}function _(v,h){h&&(h.moving=!1,m&&(document.body.removeChild(m),m=null)),a.value.forEach((y,k)=>{y.__fv_index__=k}),s.value=!1,u(),f.value=h.raw.__fv_index__,d.value=h.raw.__fv_index__,c.value=h.raw[r.value],e.emit("change",a.value),e.emit("activeChange",[h.raw])}return{dragstart:x,dragenter:w,dragover:T,dragend:_,isDragging:s}}function Ai(n,e,t,o,r,a){const l=i.ref(n.idField),s=i.ref(n.disableField),d=i.ref(n.draggable),c=i.ref(n.itemClass),f=i.ref(n.selection.multiSelect??!1),u=i.ref(n.selection.multiSelectMode),{isDragging:p}=o,{activeIndex:m,focusedItemId:g,hoverIndex:F}=r,{clearSelection:S,getSelectedItems:C,toggleSelectItem:x,currentSelectedDataId:w}=a,T=i.ref(C()),_=M=>T.value.length===0?!1:T.value.some(E=>{let P="";return E.data?P=E.data[l.value]:P=E[l.value],P===M});function v(){T.value=C()}function h(M,E){return M.raw[l.value]!=null?M.raw[l.value]:""}function y(M,E){const P={"f-list-view-group-item":!0,"f-list-view-draggable-item":d.value,"f-un-click":!M.checked,"f-un-select":!!M.raw[s.value],"f-listview-active":f.value&&_(h(M))||!f.value&&M.raw[l.value]===w.value,"f-listview-hover":!p.value&&E===F.value,moving:!!M.moving};return c.value.split(" ").reduce((I,R)=>(I[R]=!0,I),P),P}const k=i.computed(()=>!f.value);function V(M,E,P){M.checked=P,!M.raw[s.value]&&(k.value&&(g.value=M.raw[l.value]),x(M))}const b=i.computed(()=>f.value&&u.value==="OnCheckClearByClick"),O=i.computed(()=>!f.value||f.value&&(u.value==="OnCheckAndClick"||u.value==="OnClick"));function N(M,E,P){if(E.raw[s.value]){M.preventDefault(),M.stopPropagation();return}g.value=E.raw[l.value],m.value=P,b.value&&S(),O.value&&(x(E),v()),e.emit("clickItem",{data:T.value,index:P}),e.emit("activeChange",T.value)}return{getKey:h,selectedItems:T,listViewItemClass:y,updateSelectedItems:v,onCheckItem:V,onClickItem:N}}const vn=i.defineComponent({name:"FListView",props:hn,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(n,e){const t=i.ref(),o=i.ref(!0),r=i.ref(!1),a=i.ref([]),l=0,s=i.ref(n.columns),d=pe.useFilter(),c=pe.useIdentify(n),f=pe.useHierarchy(n),u=pe.useGroupData(n,c),p=pe.useDataView(n,new Map,d,f,c),m=pe.useSelection(n,p,c,a,e),g=Ii(n,t),F=i.computed(()=>p.dataView.value.length),S=pe.useRow(n,e,m,c),C=pe.useEdit(n,e,c,S,a),x=pe.useVisualDataBound(n),w=pe.useVisualDataCell(n,{},x),T=pe.useVisualDataRow(n,p,C,f,c,x,w),_=pe.useVisualGroupRow(n,c,w,T),v=pe.useVisualSummaryRow(n,c,w,T),h=pe.useVisualData(n,s,p,F,l,T,_,v),{getVisualData:y}=h;a.value=y(0,F.value+l-1);const k=i.computed(()=>{const q={"f-list-view":!0,"f-list-view-multiple":n.multiSelect};return n.size!=="default"&&(q[`${n.size}-item`]=!0),ce.getCustomClass(q,n.customClass)}),V=i.computed(()=>!!e.slots.footer||o.value);function b(){return n.header==="SearchBar"?yn:n.header==="ContentHeader"?$i:yn}const O=b(),{renderHeader:N}=O(n,e,g),M=ji(),E=Ri(n,e,p,M),P=Ai(n,e,a,E,M,m),{renderListArea:H}=Oi(n,e,a,p,u,M,m,h,P,E);function I(q){g.search(q)}function R(q){q&&(p.load(q),a.value=y(0,F.value+l-1))}function U(){m.clearSelection(),M.clearActiveItem()}function B(){return P.selectedItems.value}function L(){return P.selectedItems.value.map(q=>q[c.idField.value])}function Z(q){m.selectedValues.value=q,P.updateSelectedItems()}function A(){return m.currentSelectedDataId.value}function j(q){S.activeRowById(q)}e.expose({search:I,updateDataSource:R,clearSelection:U,getSelections:B,updateSelectionByIds:Z,getSelectionIds:L,activeRowById:j,getCurrentRowId:A});function D(q){n.multiSelect&&(q.preventDefault(),q.stopPropagation())}return i.watch(()=>n.selectionValues,(q,ee)=>{q!==ee&&Z(q)}),()=>i.createVNode("div",{class:k.value,onClick:D},[N(),i.createVNode("div",{ref:t,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[H()]),V.value&&i.createVNode("div",{class:"f-list-view-footer"},[e.slots.footer&&e.slots.footer()])])}}),Hi=i.defineComponent({name:"FTransfer",props:mn,emits:["change","activeChange"],setup(n,e){const t=i.ref(n.identifyField),o=i.ref("已选:"),r=i.ref("项数据"),a=i.ref(n.displayType),l=i.ref(!1),s=i.ref(n.dataSource),d=i.ref(n.textField),c=i.ref(n.selections||[]),f=i.computed(()=>c.value.map(N=>N[t.value])),u=new Map,p=i.ref(),m=i.ref();let g;function F(){const N=new Map,M=n.selectionValues||[];M.length&&M.reduce((P,H)=>(P.set(H,!0),P),N);const E=n.selections||[];E.length&&(N.clear(),E.reduce((P,H)=>(P.set(H[t.value],!0),P),N)),c.value.length||(c.value=s.value.filter(P=>N.has(P[t.value])).map(P=>Object.assign({},P))),s.value.forEach(P=>{const H=P[t.value],I=N.has(H);P.checked=I,I&&u.set(H,P)})}F();const S=i.computed(()=>a.value==="List"),C=i.computed(()=>a.value==="Tree");function x(N){c.value=N.map(M=>Object.assign({},M)),e.emit("change",c.value)}function w(){return i.createVNode(vn,{class:"f-utils-fill",data:s.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:d.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:x},null)}function T(){return i.createVNode($n,{data:s.value,columns:n.columns,virtualized:n.virtualized,rowOption:n.rowOption,textField:d.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:f.value,onSelectionChange:x},null)}function _(){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"},[S.value&&w(),C.value&&T()])])])}function v(N){const M=N[t.value];if(M!==null||M!==void 0){c.value=c.value.filter(P=>P[t.value]!==M);const E=u.get(M);E&&(E.checked=!1,u.delete(M)),e.emit("change",c.value)}}function h(N){N.forEach(M=>{Object.keys(M).forEach(E=>{E.indexOf("__fv")>-1&&delete M[E]})})}i.watch(c,N=>{h(N),p.value.updateDataSource(N);const M=g==null?void 0:g[t.value],E=N.find(P=>M===P[t.value]);E?p.value.activeRowById(E[t.value]):(g=null,p.value.activeRowById(""))});function y(N){const M=new Map;c.value.reduce((E,P)=>(E.set(P[t.value],P),E),M),c.value=N.map(E=>M.get(E[t.value])),e.emit("change",c.value)}function k(N){g=N[0],e.emit("activeChange",N)}function V(){var N;return h(c.value),i.createVNode(vn,{ref:p,columns:n.columns,style:"flex:1",data:c.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:d.value,itemClass:"draggable-item--text-truncate",onChange:y,onRemoveItem:v,onActiveChange:k},{itemContent:(N=e.slots)!=null&&N.text?M=>{var E;return((E=e.slots)==null?void 0:E.text)&&e.slots.text(M)}:null})}function b(){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"},[o.value]),i.createVNode("span",{class:"selection-count"},[c.value&&c.value.length]),i.createVNode("span",{class:"selection-item-title"},[r.value])]),i.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[V()])])])}const O=i.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":l.value}));return i.onMounted(()=>{m.value&&m.value.parentElement&&getComputedStyle(m.value.parentElement).display==="flex"&&(l.value=!0)}),()=>i.createVNode("div",{ref:m,class:O.value,style:"height:480px"},[_(),b()])}}),Li=i.defineComponent({name:"FGridFieldEditor",props:pn,emits:["change"],setup(n,e){const t=i.ref(n.viewModelId),o=i.inject("designViewModelUtils"),r=i.inject("useFormSchema"),a=i.inject("controlCreatorUtils");let l=n.gridData.columns;const{fieldEditable:s}=n.gridData,d=i.ref(`共 ${(l||[]).length} 项`),c=i.ref([]),f=i.ref([]);let u=[];const p={customRowStatus:h=>{const y=h.raw;h.disabled=y.type&&y.type.fields&&y.type.fields.length>0?!0:h.disabled}};function m(){if(c.value=[],!l||l.length===0)return[];const h="[绑定字段不存在,待移除]";l.forEach(y=>{if(y.binding&&y.binding.field){const k=u.find(V=>V.data.id===y.binding.field);k?k.data.$type===ce.FormSchemaEntityField$Type.ComplexField?c.value.push(Object.assign({isInValidBinding:!0},k.data,{name:k.data.name+h})):c.value.push(Object.assign({},k.data)):c.value.push({id:y.binding.field,name:y.title+h,label:y.field,bindingField:null,isInValidBinding:!0})}}),d.value=`共 ${c.value.length} 项`}function g(h,y=[]){return h&&h.forEach(k=>{y.push(k),k.children&&g(k.children,y)}),y}function F(){f.value=o.getAllFields2TreeByVMId(t.value),u=g(f.value)}function S(h,y,k){if(r.getComponents().find(b=>{let O=r.getControlsInCmpWidthBinding(b.viewModel,h);if(O=O.filter(N=>{var E;if(N.id===k)return!1;const M=y.type==="visible"?N[y.type]:(E=N.editor)==null?void 0:E[y.type];if(M&&M.type==="Expression"&&M.expressionId===y.id)return!0}),O.length)return!0}))return!0}function C(h){h.map(y=>{var V;const k=l.find(b=>{var O;return((O=b.binding)==null?void 0:O.field)===y});if(k&&r.getExpressions().length){const b=r.getExpressions(),O=b.findIndex(N=>N.target===y);O>-1&&((V=b[O].rules)==null||V.map(N=>{var E;const M=N.type==="visible"?k[N.type]:(E=k.editor)==null?void 0:E[N.type];M&&M.type==="Expression"&&M.expressionId===N.id&&(S(y,N,k.id)||(N.needDelete=!0))}),b[O].rules=b[O].rules.filter(N=>!N.needDelete))}})}function x(){const h=o.getDgViewModel(t.value),y=[],k=[],V=c.value.filter(O=>!O.isInValidBinding);V.forEach(O=>{const N=l==null?void 0:l.find(M=>{if(M.binding&&M.binding.field)return M.binding.field===O.id});if(N)y.push(N);else{const M=a.setGridFieldProperty(n.gridType,O.data,null,s);h.addField(O),y.push(M)}k.push(O.id)});const b=h.fields.filter(O=>!k.includes(O.id));if(b&&b.length>0){const O=b.map(N=>N.id);h.removeField(O),C(O)}V.length!==c.value.length&&(c.value=V),d.value=`共 ${y.length} 项`,e.emit("change",y)}const w={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{x()},rejectCallback:()=>{}};function T(h){c.value=h?[...h]:[]}function _(){return n.getLatestGridData?l=n.getLatestGridData().columns:l=n.gridData.columns,F(),m(),Promise.resolve(!0)}const v=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(h,y)=>h.data+` [${y.data.path.data}]`},{field:"path",visible:!1,title:"",dataType:"string"}];return i.onMounted(()=>{F()}),()=>i.createVNode(mi,{"button-behavior":"Modal","modal-options":w,modelValue:d.value,"onUpdate:modelValue":h=>d.value=h,editable:!1,beforeOpen:_},{default:()=>[i.createVNode("div",{class:"f-utils-absolute-all"},[i.createVNode(Hi,{selections:c.value,"data-source":f.value,rowOption:p,class:"mx-2",columns:v,displayType:"Tree",onChange:h=>T(h)},{text:h=>i.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[h.data.name.data,i.createTextVNode(" ["),h.data.path.data,i.createTextVNode("]")])})])]})}}),Di={$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:!0},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:!0},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}},required:["id","type"]},Wi={$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"},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:!0},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:!0},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"}},required:["id","type"]},Ht={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},isMultilingualField:{type:Boolean,default:!1},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},qi=Ft(Ht,Di,dn,fn),Gi=Ft(Ht,Wi,dn,fn),bn=[{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 zi(n){switch(n){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 Ui(n){var e;return"请输入正确的"+((e=bn.find(t=>t.key===n))==null?void 0:e.value)}const Yi={convertTo:(n,e,t,o)=>{n.editor.formatValidation||(n.editor.formatValidation={type:"none"}),n.editor.formatValidation.type=t,n.editor.formatValidation.expression=zi(t),n.editor.formatValidation.message=Ui(t)},convertFrom:(n,e,t)=>n.editor.formatValidation?e==="type"?n.editor.formatValidation[e]||"none":n.editor.formatValidation[e]:"none"},Cn={convertTo:(n,e,t,o)=>{n.editor.formatValidation||(n.editor.formatValidation={type:"none"}),n.editor.formatValidation[e]=t},convertFrom:(n,e,t)=>n.editor.formatValidation?n.editor.formatValidation[e]:n.editor[e]};class Xi extends Ue.InputBaseProperty{constructor(e,t){super(e,t)}getPropertyConfig(e,t){return super.getPropertyConfig(e,t),this.propertyConfig.categories.formatValidation=this.getFormatValidation(e),this.propertyConfig}getEditorProperties(e){var o,r;let t;if(((o=e==null?void 0:e.binding)==null?void 0:o.type)==="Form"){const a=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(r=a==null?void 0:a.schemaField)!=null&&r.type&&(t=a.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:t}},enableViewPassword:{description:"",title:"启用密码",visible:!1,type:"boolean"}})}getFormatValidation(e){var o,r,a;const t={title:"输入格式校验",description:"输入格式校验",properties:{type:{title:"输入类型",type:"enum",description:"输入类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:bn},refreshPanelAfterChanged:!0,$converter:Yi}}};return(o=e.editor.formatValidation)!=null&&o.type&&((r=e.editor.formatValidation)==null?void 0:r.type)!=="none"&&(t.properties.message={title:"输入错误提示",type:"string",description:"输入错误提示",$converter:Cn}),((a=e.editor.formatValidation)==null?void 0:a.type)==="custom"&&(t.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:Cn}),t}}const Tt=class Tt{static getEditorTypesByMDataType(e,t=""){let o=Tt.fieldControlTypeMapping[e];if(t==="data-grid-column"&&(o!=null&&o.length)){const r=[te["check-group"].type,te["radio-group"].type];o=o.filter(a=>!r.includes(a.key))}return o}static getAllInputTypes(){const e=[];for(const t in Tt.fieldControlTypeMapping)Tt.fieldControlTypeMapping[t].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,t){var a;const o=(a=e.editor)==null?void 0:a.type,r=[];return(e.type===te["data-grid-column"].type||e.type===te["tree-grid-column"].type)&&t&&t.categoryId&&t.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===te["input-group"].type||o===te.textarea.type||o===te["number-spinner"].type)&&r.push({domField:"editor.maxLength",schemaField:"type.length"}),o===te["number-spinner"].type&&r.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===te["data-grid-column"].type||e.type===te["tree-grid-column"].type)&&r.push({domField:"formatter.precision",schemaField:"type.precision"}),(o===te["combo-list"].type||o===te["radio-group"].type)&&r.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===te["data-grid-column"].type||e.type===te["tree-grid-column"].type)&&r.push({domField:"formatter.data",schemaField:"type.enumValues"}),o===te["date-picker"].type&&(r.push({domField:"editor.displayFormat",schemaField:"editor.format"}),r.push({domField:"editor.fieldType",schemaField:"type.name"})),o===te["number-spinner"].type&&(r.push({domField:"editor.max",schemaField:"editor.maxValue"}),r.push({domField:"editor.min",schemaField:"editor.minValue"})),o===te.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===te["data-grid-column"].type||e.type===te["tree-grid-column"].type)&&r.push({domField:"field",schemaField:"bindingPath"}),r}};le(Tt,"fieldControlTypeMapping",{String:[{key:te["input-group"].type,value:te["input-group"].name},{key:te.lookup.type,value:te.lookup.name},{key:te["date-picker"].type,value:te["date-picker"].name},{key:te["check-group"].type,value:te["check-group"].name},{key:te["radio-group"].type,value:te["radio-group"].name},{key:te["combo-list"].type,value:te["combo-list"].name},{key:te.textarea.type,value:te.textarea.name},{key:te["time-picker"].type,value:te["time-picker"].name}],Text:[{key:te.textarea.type,value:te.textarea.name},{key:te.lookup.type,value:te.lookup.name}],Decimal:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Integer:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Number:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],BigNumber:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Date:[{key:te["date-picker"].type,value:te["date-picker"].name}],DateTime:[{key:te["date-picker"].type,value:te["date-picker"].name}],Boolean:[{key:te.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].name}],Enum:[{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}],Object:[{key:te.lookup.type,value:te.lookup.name},{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}]});let Mt=Tt;var Vt=(n=>(n.Form="Form",n.Variable="Variable",n))(Vt||{});class Zi{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 Ji(n){let e,t;const o=new Map;let r=[];function a(f,u){const m=f.split(" ").filter(x=>x.startsWith("col-"));if(m.length===0){u.isSupportedClass=!1;return}let g=m.find(x=>/^col-([1-9]|10|11|12)$/.test(x)),F=m.find(x=>/^col-md-([1-9]|10|11|12)$/.test(x)),S=m.find(x=>/^col-xl-([1-9]|10|11|12)$/.test(x)),C=m.find(x=>/^col-el-([1-9]|10|11|12)$/.test(x));g=g||"col-12",u.columnInSM=parseInt(g.replace("col-",""),10),u.displayWidthInSM=u.columnInSM/12,u.displayWidthInSM!==1&&(u.isSupportedClass=!1),F=F||"col-md-"+u.columnInSM,u.columnInMD=parseInt(F.replace("col-md-",""),10),u.displayWidthInMD=u.columnInMD/6,[1,2].includes(u.displayWidthInMD)||(u.isSupportedClass=!1),S=S||"col-xl-"+u.columnInMD,u.columnInLG=parseInt(S.replace("col-xl-",""),10),u.displayWidthInLG=u.columnInLG/3,[1,2,3,4].includes(u.displayWidthInLG)||(u.isSupportedClass=!1),C=C||"col-el-"+u.columnInLG,u.columnInEL=parseInt(C.replace("col-el-",""),10),u.displayWidthInEL=u.columnInEL/2,[1,2,3,4,5,6].includes(u.displayWidthInEL)||(u.isSupportedClass=!1)}function l(f,u,p,m=!1){let g=!1;f.contents.forEach(F=>{if(F.type==="fieldset"){p+=1,l(F,u,p,!0),g=!0;return}g&&(p+=1,g=!1);const S=F.appearance&&F.appearance.class,C=new Zi;S?a(S,C):C.isSupportedClass=!1,C.label=F.label||F.id,C.id=F.id,C.group=p,m&&(C.fieldSetId=f.id),t===F.id&&(e=p),o.set(F.id,F),u.push(C)})}function s(f){const u=n.getComponentById(f);if(!u||!u.componentType||!u.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=n.selectNode(u,m=>m.type===Yt.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function d(f,u){u=u||f.id;const{result:p,message:m,formNode:g}=s(u);if(!p)return{result:p,message:m};t=f.id,r=[],o.clear();const F=g.contents[0].type===Yt.DgControl.fieldset.type?0:1;l(g,r,F);const S=r.find(x=>!x.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:S?"customize":"standard"},importData:r}}function c(f,u){u=u;const{result:p,formNode:m}=s(u);if(!p)return"";const g=[];return f.forEach(F=>{var x;const S=o.get(F.id),C=S.appearance&&S.appearance.class;if(C){const T=C.split(" ").filter(V=>!V.startsWith("col-")),_="col-"+F.columnInSM,v="col-md-"+F.columnInMD,h="col-xl-"+F.columnInLG,y="col-el-"+F.columnInEL,k=[_,v,h,y].concat(T);S.appearance.class=k.join(" ")}if(F.fieldSetId){const w=m.contents.find(_=>_.id===F.fieldSetId),T=g.find(_=>_.id===F.fieldSetId);T?(x=T.contents)==null||x.push(S):(g.push(w),w.contents=[S])}else g.push(S)}),m.contents=g,m.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:d,changeFormControlsByResponseLayoutConfig:c,getResonseFormLayoutConfig:l}}var dt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Nt(n){throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Qi={exports:{}};(function(n,e){(function(t){n.exports=t()})(function(){return function(){function t(o,r,a){function l(c,f){if(!r[c]){if(!o[c]){var u=typeof Nt=="function"&&Nt;if(!f&&u)return u(c,!0);if(s)return s(c,!0);var p=new Error("Cannot find module '"+c+"'");throw p.code="MODULE_NOT_FOUND",p}var m=r[c]={exports:{}};o[c][0].call(m.exports,function(g){var F=o[c][1][g];return l(F||g)},m,m.exports,t,o,r,a)}return r[c].exports}for(var s=typeof Nt=="function"&&Nt,d=0;d<a.length;d++)l(a[d]);return l}return t}()({1:[function(t,o,r){var a={},l="(?:^|\\s)",s="(?:\\s|$)";function d(u){var p=a[u];return p?p.lastIndex=0:a[u]=p=new RegExp(l+u+s,"g"),p}function c(u,p){var m=u.className;m.length?d(p).test(m)||(u.className+=" "+p):u.className=p}function f(u,p){u.className=u.className.replace(d(p)," ").trim()}o.exports={add:c,rm:f}},{}],2:[function(t,o,r){(function(a){var l=t("contra/emitter"),s=t("crossvent"),d=t("./classes"),c=document,f=c.documentElement;function u(b,O){var N=arguments.length;N===1&&Array.isArray(b)===!1&&(O=b,b=[]);var M,E,P,H,I,R,U,B,L,Z=null,A,j,D=!1,q=0,ee,Y=O||{};Y.moves===void 0&&(Y.moves=x),Y.accepts===void 0&&(Y.accepts=x),Y.invalid===void 0&&(Y.invalid=rt),Y.containers===void 0&&(Y.containers=b||[]),Y.isContainer===void 0&&(Y.isContainer=C),Y.copy===void 0&&(Y.copy=!1),Y.copySortSource===void 0&&(Y.copySortSource=!1),Y.revertOnSpill===void 0&&(Y.revertOnSpill=!1),Y.removeOnSpill===void 0&&(Y.removeOnSpill=!1),Y.direction===void 0&&(Y.direction="vertical"),Y.ignoreInputTextSelection===void 0&&(Y.ignoreInputTextSelection=!0),Y.mirrorContainer===void 0&&(Y.mirrorContainer=c.body);var ae=l({containers:Y.containers,start:Ye,end:et,cancel:xe,remove:_e,destroy:W,canMove:Ie,dragging:!1});return Y.removeOnSpill===!0&&ae.on("over",pt).on("out",lt),ye(),ae;function de($){return ae.containers.indexOf($)!==-1||Y.isContainer($)}function ye($){var X=$?"remove":"add";g(f,X,"mousedown",ne),g(f,X,"mouseup",z)}function Ve($){var X=$?"remove":"add";g(f,X,"mousemove",Se)}function Pe($){var X=$?"remove":"add";s[X](f,"selectstart",oe),s[X](f,"click",oe)}function W(){ye(!0),z({})}function oe($){A&&$.preventDefault()}function ne($){H=$.clientX,I=$.clientY;var X=F($)!==1||$.metaKey||$.ctrlKey;if(!X){var Q=$.target,J=Ce(Q);J&&(A=J,Ve(),$.type==="mousedown"&&(v(Q)?Q.focus():$.preventDefault()))}}function Se($){if(A){if(F($)===0){z({});return}if(!($.clientX!==void 0&&Math.abs($.clientX-H)<=(Y.slideFactorX||0)&&$.clientY!==void 0&&Math.abs($.clientY-I)<=(Y.slideFactorY||0))){if(Y.ignoreInputTextSelection){var X=V("clientX",$)||0,Q=V("clientY",$)||0,J=c.elementFromPoint(X,Q);if(v(J))return}var me=A;Ve(!0),Pe(),et(),Ke(me),d.add(B||P,"gu-transit"),mt(),Ct(),q=0,nt($)}}}function Ce($){if(!(ae.dragging&&M)&&!de($)){for(var X=$;_($)&&de(_($))===!1;)if(Y.invalid($,X)||($=_($),!$))return;var Q=_($);if(Q&&!Y.invalid($,X)){var J=Y.moves($,Q,X,y($));if(J)return{item:$,source:Q}}}}function Ie($){return!!Ce($)}function Ye($){var X=Ce($);X&&Ke(X)}function Ke($){Fe($.item,$.source)&&(B=$.item.cloneNode(!0),ae.emit("cloned",B,$.item,"copy")),E=$.source,P=$.item,R=U=y($.item),ae.dragging=!0,ae.emit("drag",P,E)}function rt(){return!1}function et(){if(ae.dragging){var $=B||P;ge($,_($))}}function tt(){A=!1,Ve(!0),Pe(!0)}function z($){if(tt(),!!ae.dragging){var X=B||P,Q=V("clientX",$)||0,J=V("clientY",$)||0,me=S(M,Q,J),fe=ft(me,Q,J);fe&&(B&&Y.copySortSource||!B||fe!==E)?ge(X,fe):Y.removeOnSpill?_e():xe()}}function ge($,X){var Q=_($);B&&Y.copySortSource&&X===E&&Q.removeChild(P),at(X)?ae.emit("cancel",$,E):ae.emit("drop",$,X,E,U),We()}function _e(){if(ae.dragging){var $=B||P,X=_($);X&&X.removeChild($),ae.emit(B?"cancel":"remove",$,X,E),We()}}function xe($){if(ae.dragging){var X=arguments.length>0?$:Y.revertOnSpill,Q=B||P,J=_(Q),me=at(J);me===!1&&X&&(B?J&&J.removeChild(B):E.insertBefore(Q,R)),me||X?ae.emit("cancel",Q,E,E):ae.emit("drop",Q,J,E,U),We()}}function We(){var $=B||P;tt(),K(),ie(),$&&d.rm($,"gu-transit"),L&&clearTimeout(L),ae.dragging=!1,Z&&ae.emit("out",$,Z,E),ae.emit("dragend",$,q),E=P=B=R=U=L=Z=null}function at($,X){var Q;return X!==void 0?Q=X:M?Q=U:Q=y(B||P),$===E&&Q===R}function ft($,X,Q){for(var J=$;J&&!me();)J=_(J);return J;function me(){var fe=de(J);if(fe===!1)return!1;var ke=ue(J,$),we=he(J,ke,X,Q),Ne=at(J,we);return Ne?!0:Y.accepts(P,J,E,we)}}function nt($){if(!M)return;$.preventDefault();var X=V("clientX",$)||0,Q=V("clientY",$)||0;M.style.left=X-2+"px",M.style.top=Q-2+"px";var J=B||P,me=S(M,X,Q),fe=ft(me,X,Q),ke=fe!==null&&fe!==Z;(ke||fe===null)&&(ze(),Z=fe,ot()),re(me,Q);var we=_(J);if(fe===E&&B&&!Y.copySortSource){we&&we.removeChild(J);return}var Ne,Xe=ue(fe,me);if(D=Me(Xe,fe),Xe!==null)Ne=he(fe,Xe,X,Q);else if(Y.revertOnSpill===!0&&!B)Ne=R,fe=E;else{B&&we&&we.removeChild(J),B&&j&&(j.style.display="none");return}j.style.display="block",bt(Ne,J,ke),Ne?qe(Xe,Ne):G(fe);function Re(Ae){ae.emit(Ae,J,Z,E)}function ot(){ke&&Re("over")}function ze(){Z&&Re("out")}}function bt($,X,Q){($===X||$===y(X))&&(U=y(X)),($===null&&Q||$!==X&&$!==y(X))&&(U=$)}function pt($){d.rm($,"gu-hide")}function lt($){ae.dragging&&d.add($,"gu-hide")}function Ct(){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=Y.getMirrorText&&Y.getMirrorText(P)||"控件",d.add(M,"gu-mirror"),Y.mirrorContainer.appendChild(M),g(f,"add","mousemove",nt),d.add(Y.mirrorContainer,"gu-unselectable"),ae.emit("cloned",M,P,"mirror"))}function mt(){if(j=document.createElement("div"),d.add(j,"gu-insertion"),P){var $=P.getBoundingClientRect();j.style.left=$.left+"px",j.style.top=$.top+"px"}D=!1,Y.mirrorContainer.appendChild(j)}function K(){M&&(d.rm(Y.mirrorContainer,"gu-unselectable"),g(f,"remove","mousemove",nt),_(M).removeChild(M),M=null)}function ie(){j&&(_(j).removeChild(j),j=null)}function ue($,X){for(var Q=X;Q!==$&&_(Q)!==$;)Q=_(Q);return Q===f?null:Q}function Me($,X){if(!X)return D;var Q=$||X&&X.lastElementChild;if(!Q)return!0;var J=getComputedStyle($),me=/^inline/.test(J.getPropertyValue("display"))||/^(left|right)$/.test(J.getPropertyValue("float"));if(me)return!0;if(X){var fe=getComputedStyle(X),ke=fe.getPropertyValue("display");if(/flex$/.test(ke)){var we=fe.getPropertyValue("flex-direction")||"row";if(we==="row"||we==="row-reverse")return!Be(X)}return!1}return!0}function Be($){if(!$.children||!$.children.length)return!1;for(const X of Array.from($.children)){const J=(X.className&&X.className.split(" ")||[]).filter(me=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(me));if(!J.length)return!1;for(const me of J){const fe=me.slice(me.lastIndexOf("-")+1);if(parseInt(fe,10)!==12)return!1}}return!0}function qe($,X){const Q=X.getBoundingClientRect();if(j.style.left=Q.left+"px",j.style.top=Q.top+"px",D){if(j.style.height=Q.height+"px",j.style.width="4px",$){const J=$.getBoundingClientRect();J.top!==Q.top&&(j.style.left=J.right+"px",j.style.top=J.top+"px",j.style.height=J.height+"px")}}else if(j.style.height="4px",j.style.width=Q.width+"px",ee){const J=ee.getBoundingClientRect();Q.top<J.top&&(j.style.display="none")}X===P&&P&&(j.style.display="none")}function G($){U=null;var X=$.lastElementChild;if(X){var Q=X.getBoundingClientRect();D?(j.style.left=Q.right+"px",j.style.top=Q.top+"px",j.style.height=Q.height+"px",j.style.width="4px"):(j.style.left=Q.left+"px",j.style.top=Q.bottom+"px",j.style.height="4px",j.style.width=Q.width+"px"),X===P&&P&&(j.style.display="none")}else j.style.display="none"}function re($,X){if(!Y.mirrorContainer.contains($)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(ee=p($),!ee||!ee.contains($)))return;const Q=document.querySelector(".dgComponentSelected"),J=ee.getBoundingClientRect();if(X-30<J.top&&ee.scrollTop>0){let me=ee.scrollTop<10?ee.scrollTop:10;ee.scrollBy(0,-1*me),Q&&ee.contains(Q)&&(q=q+-1*me)}if(X+30>J.bottom&&ee.scrollTop<ee.scrollHeight-ee.clientHeight){const me=ee.scrollHeight-ee.clientHeight-ee.scrollTop;let fe=me<10?me:10;ee.scrollBy(0,fe),Q&&ee.contains(Q)&&(q=q+fe)}}function he($,X,Q,J){var me=Y.direction==="horizontal",fe=Y.direction==="mixed",ke=X!==$?Ne():we();return ke;function we(){var Re=$.children.length,ot,ze,Ae;for(ot=0;ot<Re;ot++)if(ze=$.children[ot],Ae=ze.getBoundingClientRect(),me&&Ae.left+Ae.width/2>Q||!fe&&!me&&Ae.top+Ae.height/2>J||fe&&Ae.left+Ae.width>Q&&Ae.top+Ae.height>J)return ze;return null}function Ne(){var Re=X.getBoundingClientRect();if(fe){var ot=J-Re.top,ze=Q-Re.left,Ae=Re.bottom-J,se=Re.right-Q,ve=Math.min(ze,se,ot,Ae),Ge;return D?Ge=se<ze:Ge=Ae===ve||se===ve||ze===ve,Xe(Ge)}return Xe(me?Q>Re.left+w(Re)/2:J>Re.top+T(Re)/2)}function Xe(Re){return Re?y(X):X}}function Fe($,X){return typeof Y.copy=="boolean"?Y.copy:Y.copy($,X)}}function p(b){const O=Array.from(window.scrollContainerList);if(O.length===1){const M=Array.from(window.scrollContainerList)[0];return document.getElementById(M)}const N=m(O);for(const M of N)if(M.contains(b))return M;return null}function m(b){const O=[];return b.forEach(N=>{const M=document.getElementById(N);M&&O.push(M)}),O.sort((N,M)=>N.contains(M)?1:M.contains(N)?-1:0),O}function g(b,O,N,M){var E={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},P={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},H={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};a.navigator.pointerEnabled?s[O](b,P[N],M):a.navigator.msPointerEnabled?s[O](b,H[N],M):(s[O](b,E[N],M),s[O](b,N,M))}function F(b){if(b.touches!==void 0)return b.touches.length;if(b.which!==void 0&&b.which!==0)return b.which;if(b.buttons!==void 0)return b.buttons;var O=b.button;if(O!==void 0)return O&1?1:O&2?3:O&4?2:0}function S(b,O,N){b=b||{};var M=b.className||"",E;return b.className+=" gu-hide",E=c.elementFromPoint(O,N),b.className=M,E}function C(){return!1}function x(){return!0}function w(b){return b.width||b.right-b.left}function T(b){return b.height||b.bottom-b.top}function _(b){return b.parentNode===c?null:b.parentNode}function v(b){return b.tagName==="INPUT"||b.tagName==="TEXTAREA"||b.tagName==="SELECT"||h(b)}function h(b){return!b||b.contentEditable==="false"?!1:b.contentEditable==="true"?!0:h(_(b))}function y(b){return b.nextElementSibling||O();function O(){var N=b;do N=N.nextSibling;while(N&&N.nodeType!==1);return N}}function k(b){return b.targetTouches&&b.targetTouches.length?b.targetTouches[0]:b.changedTouches&&b.changedTouches.length?b.changedTouches[0]:b}function V(b,O){var N=k(O),M={pageX:"clientX",pageY:"clientY"};return b in M&&!(b in N)&&M[b]in N&&(b=M[b]),N[b]}o.exports=u}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(t,o,r){o.exports=function(l,s){return Array.prototype.slice.call(l,s)}},{}],4:[function(t,o,r){var a=t("ticky");o.exports=function(s,d,c){s&&a(function(){s.apply(c||null,d||[])})}},{ticky:10}],5:[function(t,o,r){var a=t("atoa"),l=t("./debounce");o.exports=function(d,c){var f=c||{},u={};return d===void 0&&(d={}),d.on=function(p,m){return u[p]?u[p].push(m):u[p]=[m],d},d.once=function(p,m){return m._once=!0,d.on(p,m),d},d.off=function(p,m){var g=arguments.length;if(g===1)delete u[p];else if(g===0)u={};else{var F=u[p];if(!F)return d;F.splice(F.indexOf(m),1)}return d},d.emit=function(){var p=a(arguments);return d.emitterSnapshot(p.shift()).apply(this,p)},d.emitterSnapshot=function(p){var m=(u[p]||[]).slice(0);return function(){var g=a(arguments),F=this||d;if(p==="error"&&f.throws!==!1&&!m.length)throw g.length===1?g[0]:g;return m.forEach(function(C){f.async?l(C,g,F):C.apply(F,g),C._once&&d.off(p,C)}),d}},d}},{"./debounce":4,atoa:3}],6:[function(t,o,r){(function(a){var l=t("custom-event"),s=t("./eventmap"),d=a.document,c=p,f=g,u=[];a.addEventListener||(c=m,f=F),o.exports={add:c,remove:f,fabricate:S};function p(_,v,h,y){return _.addEventListener(v,h,y)}function m(_,v,h){return _.attachEvent("on"+v,x(_,v,h))}function g(_,v,h,y){return _.removeEventListener(v,h,y)}function F(_,v,h){var y=w(_,v,h);if(y)return _.detachEvent("on"+v,y)}function S(_,v,h){var y=s.indexOf(v)===-1?V():k();_.dispatchEvent?_.dispatchEvent(y):_.fireEvent("on"+v,y);function k(){var b;return d.createEvent?(b=d.createEvent("Event"),b.initEvent(v,!0,!0)):d.createEventObject&&(b=d.createEventObject()),b}function V(){return new l(v,{detail:h})}}function C(_,v,h){return function(k){var V=k||a.event;V.target=V.target||V.srcElement,V.preventDefault=V.preventDefault||function(){V.returnValue=!1},V.stopPropagation=V.stopPropagation||function(){V.cancelBubble=!0},V.which=V.which||V.keyCode,h.call(_,V)}}function x(_,v,h){var y=w(_,v,h)||C(_,v,h);return u.push({wrapper:y,element:_,type:v,fn:h}),y}function w(_,v,h){var y=T(_,v,h);if(y){var k=u[y].wrapper;return u.splice(y,1),k}}function T(_,v,h){var y,k;for(y=0;y<u.length;y++)if(k=u[y],k.element===_&&k.type===v&&k.fn===h)return y}}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(t,o,r){(function(a){var l=[],s="",d=/^on/;for(s in a)d.test(s)&&l.push(s.slice(2));o.exports=l}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(t,o,r){(function(a){var l=a.CustomEvent;function s(){try{var d=new l("cat",{detail:{foo:"bar"}});return d.type==="cat"&&d.detail.foo==="bar"}catch{}return!1}o.exports=s()?l:typeof document<"u"&&typeof document.createEvent=="function"?function(c,f){var u=document.createEvent("CustomEvent");return f?u.initCustomEvent(c,f.bubbles,f.cancelable,f.detail):u.initCustomEvent(c,!1,!1,void 0),u}:function(c,f){var u=document.createEventObject();return u.type=c,f?(u.bubbles=!!f.bubbles,u.cancelable=!!f.cancelable,u.detail=f.detail):(u.bubbles=!1,u.cancelable=!1,u.detail=void 0),u}}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(t,o,r){var a=o.exports={},l,s;function d(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?l=setTimeout:l=d}catch{l=d}try{typeof clearTimeout=="function"?s=clearTimeout:s=c}catch{s=c}})();function f(T){if(l===setTimeout)return setTimeout(T,0);if((l===d||!l)&&setTimeout)return l=setTimeout,setTimeout(T,0);try{return l(T,0)}catch{try{return l.call(null,T,0)}catch{return l.call(this,T,0)}}}function u(T){if(s===clearTimeout)return clearTimeout(T);if((s===c||!s)&&clearTimeout)return s=clearTimeout,clearTimeout(T);try{return s(T)}catch{try{return s.call(null,T)}catch{return s.call(this,T)}}}var p=[],m=!1,g,F=-1;function S(){!m||!g||(m=!1,g.length?p=g.concat(p):F=-1,p.length&&C())}function C(){if(!m){var T=f(S);m=!0;for(var _=p.length;_;){for(g=p,p=[];++F<_;)g&&g[F].run();F=-1,_=p.length}g=null,m=!1,u(T)}}a.nextTick=function(T){var _=new Array(arguments.length-1);if(arguments.length>1)for(var v=1;v<arguments.length;v++)_[v-1]=arguments[v];p.push(new x(T,_)),p.length===1&&!m&&f(C)};function x(T,_){this.fun=T,this.array=_}x.prototype.run=function(){this.fun.apply(null,this.array)},a.title="browser",a.browser=!0,a.env={},a.argv=[],a.version="",a.versions={};function w(){}a.on=w,a.addListener=w,a.once=w,a.off=w,a.removeListener=w,a.removeAllListeners=w,a.emit=w,a.prependListener=w,a.prependOnceListener=w,a.listeners=function(T){return[]},a.binding=function(T){throw new Error("process.binding is not supported")},a.cwd=function(){return"/"},a.chdir=function(T){throw new Error("process.chdir is not supported")},a.umask=function(){return 0}},{}],10:[function(t,o,r){(function(a){var l=typeof a=="function",s;l?s=function(d){a(d)}:s=function(d){setTimeout(d,0)},o.exports=s}).call(this,t("timers").setImmediate)},{timers:11}],11:[function(t,o,r){(function(a,l){var s=t("process/browser.js").nextTick,d=Function.prototype.apply,c=Array.prototype.slice,f={},u=0;r.setTimeout=function(){return new p(d.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new p(d.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(m){m.close()};function p(m,g){this._id=m,this._clearFn=g}p.prototype.unref=p.prototype.ref=function(){},p.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(m,g){clearTimeout(m._idleTimeoutId),m._idleTimeout=g},r.unenroll=function(m){clearTimeout(m._idleTimeoutId),m._idleTimeout=-1},r._unrefActive=r.active=function(m){clearTimeout(m._idleTimeoutId);var g=m._idleTimeout;g>=0&&(m._idleTimeoutId=setTimeout(function(){m._onTimeout&&m._onTimeout()},g))},r.setImmediate=typeof a=="function"?a:function(m){var g=u++,F=arguments.length<2?!1:c.call(arguments,1);return f[g]=!0,s(function(){f[g]&&(F?m.apply(null,F):m.call(null),r.clearImmediate(g))}),g},r.clearImmediate=typeof l=="function"?l:function(m){delete f[m]}}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(Qi);const Ki={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}},er={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Lt=i.defineComponent({name:"Toast",props:er,emits:["close","click"],setup:(n,e)=>{const t=i.ref(n.animate),o="fadeOut",r=i.computed(()=>n.options),a=i.ref(!1),l=i.computed(()=>{const C={animated:a.value,toast:!0};return C[n.animate]=!1,C[o]=a.value,C[r.value.type]=!0,r.value.theme&&(C[r.value.theme]=!0),C}),s=i.computed(()=>{const w=`f-icon-${r.value&&r.value.type?r.value.type.replace("toasty-type-",""):"default"}`,T={"f-icon":!0};return T[w]=!0,T}),d=i.computed(()=>r.value.title||r.value.message),c=i.computed(()=>r.value.title&&r.value.message),f=i.computed(()=>!r.value.title&&r.value.message),u=i.computed(()=>n.showCloseButton),p=i.computed(()=>!!r.value.buttons||!!e.slots.default);function m(C){C.stopPropagation(),C.preventDefault(),a.value=!1,setTimeout(()=>{e.emit("close",r.value)},200)}function g(C,x){}function F(C){return`f-preten-link ${C.customClass?C.customClass:""}`}i.watch(t,()=>{t.value});const S=()=>{var C;return i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((C=r.value.buttons)==null?void 0:C.map(x=>i.createVNode("span",{class:F(x),onClick:w=>void 0},[x.text]))),e.slots.default&&e.slots.default()])])};return()=>i.createVNode("div",{class:l.value,style:"min-height:44px"},[u.value&&i.createVNode("button",{title:"关闭",class:"toast-close f-btn-icon f-bare",onClick:m},[i.createVNode("span",{class:"f-icon modal_close"},null)]),d.value&&i.createVNode("section",{class:"modal-tips"},[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:s.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[c.value&&i.createVNode(i.Fragment,null,[i.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:r.value.title},null),i.createVNode("p",{class:"toast-msg",innerHTML:r.value.message},null),p.value&&S()]),f.value&&(r.value.buttons?i.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.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",innerHTML:r.value.message},null))])])])}}),Pt=i.defineComponent({name:"Notify",props:Ki,emits:["close","empty"],setup(n,e){const t=i.computed(()=>({"farris-notify":!0})),o={left:12,right:12,top:20,bottom:12},r=i.ref(),a=i.ref(n.options),l=i.ref(n.showCloseButton),s=i.computed(()=>n.position||"bottom-right"),d=i.computed(()=>n.timeout!=null?n.timeout:3e3),c=i.computed(()=>{const p=n.bottom?n.bottom:o.bottom,m=n.top?n.top:o.top,g={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${n.left?n.left:o.left}px`:"",right:s.value.indexOf("right")>-1?`${n.right?n.right:o.right}px`:"",top:s.value.indexOf("top")>-1?`${m}px`:"",bottom:s.value.indexOf("bottom")>-1?`${p}px`:""};return s.value.indexOf("center")>-1&&(g.left="50%",g.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(g.top="50%",g.transform="translate(-50%, -50%)")),g});function f(p){e.emit("close")}d.value&&setTimeout(()=>{f()},d.value),e.expose({closeToast:f,container:r,notifyPosition:s});function u(p,m){f()}return()=>i.createVNode("div",{class:t.value,style:c.value,ref:r},[i.createVNode(Lt,{options:a.value,showCloseButton:l.value,animate:n.animate,onClose:p=>u(p,a.value)},null)])}});class tr{constructor(){le(this,"notifyRefs",[]);le(this,"globalConfig",i.reactive({}))}escapeAllHtml(e){if(typeof e!="string"||!e)return"";const t=document.createElement("div");return t.textContent=e||"",t.innerHTML.replace(/ /g," ").replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(e){const t=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...e}),a=document.createElement("div");a.style.display="contents";const l=i.createApp({setup(){var c;const s=i.ref();function d(){s.value.container.style.transform="scale(0)",setTimeout(()=>{t.updateNotifyPositionForClose(r,s),l.unmount()},220)}if(r.position.indexOf("top")>-1){const f=t.getNotifyInstances(r.position),u=f[f.length-1];if(u){const p=u.value.container.getBoundingClientRect();r.top=p.bottom}}return r.safeHtml&&((c=r.options)!=null&&c.message)&&(r.options.message=t.escapeAllHtml(r.options.message)),i.onUnmounted(()=>{document.body.removeChild(a)}),i.onMounted(()=>{t.updateNotifyPositionForCreate(r,s)}),()=>i.createVNode(i.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[i.createVNode(Pt,i.mergeProps({ref:s},r,{onClose:d}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(a),l.mount(a),l}getNotifyInstances(e){return this.notifyRefs.filter(t=>t.value.notifyPosition===e)}updateNotifyPositionForCreate(e,t){if(this.notifyRefs&&this.notifyRefs.length){const o=window.innerHeight;e.position.indexOf("bottom")>-1&&this.getNotifyInstances(e.position).forEach(r=>{const a=r.value.container.getBoundingClientRect();r.value.container.style.bottom=a.height+o-a.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,t]}updateNotifyPositionForClose(e,t){const o=this.notifyRefs.indexOf(t);if(e.position.indexOf("top")>-1){const r=this.getNotifyInstances(e.position),a=r.indexOf(t);r.slice(a+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}o>-1&&this.notifyRefs.splice(o,1)}show(e){return this.createNotifyInstance(e)}buildNotifyProps(e,t){let o="",r="",a,l,s;typeof t=="string"?o=t:t&&(o=t.message||"",r=t.title||"",l=t.position||null,s=t.showCloseButton!=null?t.showCloseButton:null,a=t.timeout!=null?t.timeout:null);const c={options:{type:e,message:o,title:r}};return l!=null&&(c.position=l),s!=null&&(c.showCloseButton=s),a!=null&&(c.timeout=a),c}info(e){const t=this.buildNotifyProps("info",e);return this.show(t)}success(e){const t=this.buildNotifyProps("success",e);return this.show(t)}warning(e){const t=this.buildNotifyProps("warning",e);return this.show(t)}error(e){const t=this.buildNotifyProps("error",e);return this.show(t)}close(e){e&&e.unmount()}closeAll(){this.notifyRefs.forEach(e=>{e==null||e.value.closeToast()}),this.notifyRefs.length=0}}const nr=Symbol("NOTIFY_SERVICE_TOKEN");Pt.install=n=>{n.component(Pt.name,Pt),n.component(Lt.name,Lt);const e=new tr;n.provide(nr,e),n.provide("FNotifyService",e)};const wn=new Map([["appearance",Le.resolveAppearance],["column","columnOption"]]);function or(n,e,t){var u;const o=t.parentComponentInstance,r=o.schema.type,a=String(((u=o.schema.appearance)==null?void 0:u.class)||"").split(" "),l=r==="section"||r==="tab-page",s=a.includes("f-page-content-nav"),d=a.includes("f-page-main"),c=n.getSchemaByType("component");c.id=`${e.id}-component`,c.componentType="data-grid";let f="";return f+=l?"f-struct-data-grid-in-card f-struct-is-subgrid":"",f+=s?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",f+=d?"f-struct-data-grid f-struct-wrapper":"",c.appearance={class:f},c.contents=[e],c}function ir(n,e,t){const o=t.parentComponentInstance,r=String(o.schema.appearance.class||"").split(" "),a=r.includes("f-page-content-nav"),l=r.includes("f-page-main"),s=n.getSchemaByType("section");s.id=`${e.id}-section`;let d="";return d+=a?"f-section-in-nav ":"",d+=l?"f-section-in-managelist ":"",d+="f-section-grid",s.appearance={class:d},s.contents=[e],s}function rr(n,e,t){const o=n.getSchemaByType("content-container");return o.id=`${e.id}-layout`,o.appearance={class:"f-grid-is-sub f-utils-flex-column"},o.contents=[e],o}function Sn(n,e,t){const r=t.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";e.appearance={class:"f-component-grid"};const s=(a?rr:ir)(n,e,t);return or(n,s,t)}const xn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-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:"tree-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},showTreeNodeIcons:{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},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:[]},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:!0},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:"string",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:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},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:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{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},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},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:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},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}},onSelectionChange:{description:"行切换事件",type:"string",default:""}},required:["id","type","columns"],events:{onSelectionChange:"行切换事件",onClickRow:"行点击事件"}},Dt={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},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:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},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}};Le.createPropsResolver(Dt,xn,wn,Sn),Le.createTreeGridSelectionItemResolver(),Le.createTreeGridBindingResolver();const ar=Object.assign({},Dt,{componentId:{type:String,default:""}});Le.createPropsResolver(ar,xn,wn,Sn),Le.createDataViewUpdateColumnsResolver();function lr(n,e,t,o,r,a,l,s,d,c,f,u,p,m,g,F,S){const{calculateCellPositionInRow:C}=a,{columnContext:x,hasLeftFixedColumn:w,hasRightFixedColumn:T}=l,{gridDataStyle:_,leftFixedGridDataStyle:v,rightFixedGridDataStyle:h}=m,{renderDataRow:y}=pe.getHierarchyRow(n,e,x,S,s,d,c,f,u,p,m,g,F),k=[y];function V(E,P){const H=C(E);return S.value.filter(I=>I.visible!==!1).map((I,R)=>k[I.type](I,H,P,R))}function b(){return i.createVNode("div",{ref:o,class:"fv-grid-content-left-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:v.value},[V(x.value.leftColumns.filter(E=>E.visible),"left")])])}function O(){return i.createVNode("div",{ref:t,class:"fv-grid-content-primary"},[i.createVNode("div",{class:"fv-grid-data",style:_.value},[V(x.value.primaryColumns.filter(E=>E.visible),"primary")])])}function N(){return i.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:h.value},[V(x.value.rightColumns.filter(E=>E.visible),"right")])])}function M(){const E=[];return w.value&&E.push(b()),E.push(O()),T.value&&E.push(N()),E}return{renderDataArea:M}}const sr=i.defineComponent({name:"FTreeGrid",props:Dt,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode"],setup(n,e){var ze,Ae;const o=((ze=n.rowOption)==null?void 0:ze.height)||28,r=i.ref(20),a=i.ref(n.columns),l=pe.useIdentify(n),{idField:s}=l,d=i.ref(),c=i.ref(),f=i.ref(),u=i.ref(),p=i.ref(),m=i.ref([]),g=i.ref(!1),F=i.ref(((Ae=n.rowOption)==null?void 0:Ae.wrapContent)||!1),S=pe.useGroupData(n,l),C=pe.useFilter(),x=pe.useHierarchy(n),{collapseField:w}=x,{showLoading:T,renderLoading:_}=pe.useLoading(n,d),v=pe.useDataView(n,new Map,C,x,l),{dataView:h}=v,y=pe.useSelection(n,v,l,m,e),k=pe.useSelectHierarchyItem(n,m,v,l,y,e),V=i.computed(()=>n.disabled),b=i.computed(()=>n.virtualized?Math.min(v.dataView.value.length,r.value):v.dataView.value.length),{containerStyleObject:O}=pe.useDataViewContainerStyle(n),N=pe.useCommandColumn(n),{applyCommands:M}=N;M(a);const E=pe.useColumn(n),P=pe.useSort(n),{applyColumnSorter:H,columnContext:I,updateColumnRenderContext:R}=E;H(v,P);const U=pe.useGroupColumn(n,I),B=pe.useRow(n,e,y,l),L=pe.useEdit(n,e,l,B,m),Z=pe.useVisualDataBound(n),A=pe.useVisualDataCell(n,L,Z),j=pe.useVisualDataRow(n,v,L,x,l,Z,A),D=pe.useVisualData(n,a,v,b,0,j),{getVisualData:q}=D,ee=pe.useCellPosition(n,I),Y=pe.useSidebar(n,y),{sidebarWidth:ae}=Y,de=pe.useVirtualScroll(n,v,m,I,D,b,0,ae),{onWheel:ye,dataGridWidth:Ve,viewPortHeight:Pe,viewPortWidth:W,resetScroll:oe,updateVisibleRowsOnLatestVisibleScope:ne}=de,Se=pe.useFitColumn(n,I,c,W,U),{calculateColumnsSize:Ce}=Se,Ie=pe.useFilterHistory(),Ye=pe.useColumnFilter(c,p,v,Ie,de),Ke=pe.useDragColumn(n,e,E,v,U,S,de),rt=i.computed(()=>({"fv-grid":!0,"fv-grid-bordered":n.showBorder,"fv-grid-horizontal-bordered":n.showHorizontalLines,"fv-datagrid-strip":n.showStripe})),et=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":g.value,"fv-grid-wrap-content":F.value})),{renderDataArea:tt}=lr(n,e,f,u,p,ee,E,v,L,x,B,y,k,de,D,Z,m),{renderGridHeader:z,renderGridColumnResizeOverlay:ge,shouldShowHeader:_e}=pe.getColumnHeader(n,e,c,u,p,E,v,Ke,Ye,C,Ie,Se,U,y,Y,P,de,W,m),{renderDataGridSidebar:xe}=pe.getSidebar(n,B,y,Y,de),{renderDisableMask:We}=pe.getDisableMask(),{renderHorizontalScrollbar:at}=pe.getHorizontalScrollbar(n,c,de),{renderVerticalScrollbar:ft}=pe.getVerticalScrollbar(n,c,de);function nt(){var se,ve,Ge;if(c.value&&c.value.clientHeight>0&&((se=c.value)==null?void 0:se.clientWidth)>0){const Ze=Math.ceil(c.value.clientHeight/o);Ze>r.value&&(r.value=Ze,ne()),Pe.value=((ve=f.value)==null?void 0:ve.clientHeight)||0,Ve.value=((Ge=c.value)==null?void 0:Ge.clientWidth)||0,Ce()}}i.onMounted(()=>{c.value&&(r.value=Math.max(Math.ceil(c.value.clientHeight/o),r.value),m.value=q(0,b.value+0-1),Ut.useResizeObserver(c.value,nt),Ce(),i.nextTick(()=>{c.value&&(Ve.value=c.value.clientWidth),f.value&&(W.value=f.value.clientWidth,Pe.value=f.value.clientHeight)})),T.value&&_()}),i.onUnmounted(()=>{}),i.watch(W,()=>{c.value&&Ce()});function bt(se){v.collapseTo(se),v.reOrderVisibleIndex(),oe()}function pt(se){v.expandTo(se),v.reOrderVisibleIndex(),oe()}function lt(){const se=y.getSelectionRow();return se?se.dataIndex-1:-1}function Ct(){const se=lt();v.insertNewDataItem(se),m.value=q(0,b.value+0-1)}function mt(){const se=lt();v.insertNewChildDataItem(se),m.value=q(0,b.value+0-1)}function K(){const se=lt(),ve=k.getNextSelectableHierarchyItemId(se);v.removeHierarchyDataItem(se),m.value=q(0,b.value+0-1),ve&&y.selectItemById(ve)}function ie(se){L.onEditingRow(se)}function ue(se){L.acceptEditingRow(se)}function Me(se){L.cancelEditingRow(se)}function Be(se){se&&(a.value=se,M(a),R(a.value),H(v,P),Ce())}i.watch(()=>n.columns,se=>{Be(se)});function qe(se,ve){se&&(v.load(se),v.reOrderVisibleIndex(),ve!=null&&ve.keepScrollPosition?de.scrollTo(de.offsetY.value):oe())}function G(se){y.selectItemById(se)}function re(se){const ve=m.value.find(Ge=>Ge.raw[l.idField.value]===se);ve&&B.clickRowItem(ve)}function he(se){B.activeRowById(se)}function Fe(se){y.selectItemByIds(se)}function $(){return y.getSelectedItems()}function X(){y.clearSelection()}const Q=i.computed(()=>!m.value||!m.value.length),{renderEmpty:J}=pe.getEmpty(e);function me(){return y.getSelectionRow()}function fe(se){y.unSelectItemByIds(se)}function ke(){return y.currentSelectedDataId.value}function we(se,ve,Ge){const Ze=h.value.find(Je=>Je[s.value]===se);if(Ze){if(Object.keys(Ze).forEach(He=>{Object.prototype.hasOwnProperty.call(ve,He)&&(Ze[He]=ve[He])}),Ge){const{collapseField:He,disabledField:wt,checkedField:St,visibleField:xt}=Ge;He&&!Oe.isUndefined(ve[He])&&(Ze.__fv_collapse__=ve[He]),St&&!Oe.isUndefined(ve[St])&&(Ze.__fv_checked__=ve[St]),wt&&!Oe.isUndefined(ve[wt])&&(Ze.__fv_disabled__=ve[wt]),xt&&!Oe.isUndefined(ve[xt])&&(Ze.__fv_visible__=ve[xt])}const Je=m.value.find(He=>He.raw[s.value]===se),Vn=m.value.findIndex(He=>He.raw[s.value]===se);if(Je){if(Je.raw=Ze,Object.keys(Je.data).forEach(He=>{Je.data[He].updateData(Ze)}),Ge){const{collapseField:He,disabledField:wt,checkedField:St,visibleField:xt}=Ge;He&&!Oe.isUndefined(ve[He])&&(Je.collapse=ve[He]),St&&!Oe.isUndefined(ve[St])&&(Je.checked=ve[St]),wt&&!Oe.isUndefined(ve[wt])&&(Je.disabled=ve[wt]),xt&&!Oe.isUndefined(ve[xt])&&(Je.visible=ve[xt])}m.value=[...m.value.slice(0,Vn),Je,...m.value.slice(Vn+1)]}}}function Ne(se){const ve=v.dataView.value.find(Ge=>Ge[s.value]===se);return ve?ve[w.value]:""}function Xe(){return w.value}e.expose({activeRowById:he,addNewDataItem:Ct,addNewChildDataItem:mt,collapseTo:bt,expandTo:pt,removeDataItem:K,editDataItem:ie,acceptDataItem:ue,cancelDataItem:Me,updateColumns:Be,updateDataSource:qe,selectItemById:G,selectItemByIds:Fe,getSelectedItems:$,clearSelection:X,getSelectionRow:me,clickRowItemById:re,unSelectItemByIds:fe,getCurrentRowId:ke,reassignRowData:we,getCollapseField:Xe,getCollapseStatusById:Ne});const Re=i.computed(()=>{const se={};return de.shouldShowHorizontalScrollbar.value&&(se.paddingBottom="10px"),de.shouldShowVirticalScrollbar.value&&(se.paddingRight="10px"),se}),ot=i.computed(()=>({...O.value,borderRadius:"5px"}));return()=>i.createVNode("div",{ref:d,class:rt.value,style:ot.value,onWheel:ye},[c.value&&_e.value&&z(),i.createVNode("div",{ref:c,class:et.value,onMouseover:()=>g.value=!0,onMouseleave:()=>g.value=!1,style:Re.value},[c.value&&xe(m),c.value&&tt(),c.value&&Q.value&&J(),c.value&&at(),c.value&&ft()]),ge(),V.value&&We()])}});ce.withInstall(sr);const cr=new Map([["appearance",It]]);function dr(n,e,t){return e}Ft({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"]},cr,dr,{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 Wt=new Map([["appearance",It]]),ur=new Map([]),fr="root-viewmodel";class pr{constructor(e,t){le(this,"formSchemaUtils");le(this,"controlCreatorUtils");le(this,"designViewModelUtils");this.resolver=e,this.designerHostService=t,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(e){const t=this.createComponentRefNode(e),o=this.createComponentNode(e),r=this.createViewModeNode(e),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),t}createComponentRefNode(e){const t=this.resolver.getSchemaByType("component-ref");return Object.assign(t,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),t}createComponentNode(e){const t=this.resolver.getSchemaByType("component"),o=this.createFormComponentContents(e);return Object.assign(t,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getFormComponentClass()},formColumns:e.formColumns,contents:o}),t}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 t=this.resolver.getSchemaByType("section");Object.assign(t,{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}),t.contents=[o];const{selectedFields:a}=e;a==null||a.forEach(s=>{const d=Oe.cloneDeep(s),c=this.resolveControlClassByFormColumns(e),f=this.controlCreatorUtils.setFormFieldProperty(d,"",c);f&&r.push(f)});const{templateId:l}=this.formSchemaUtils.getFormSchema().module;return l==="double-list-in-tab-template"&&(t.appearance.class="f-section-grid f-section-in-main px-0 pt-0",t.fill=!0),[t]}resolveControlClassByFormColumns(e){let t="";switch(e.formColumns){case 1:{t="col-12";break}case 2:{t="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{t="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{t="col-12 col-md-6 col-xl-3 col-el-2";break}}return t}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:fr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const t=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{let a="blur";const l=r.type.name;(l===ce.FormSchemaEntityFieldTypeName.Enum||l===ce.FormSchemaEntityFieldTypeName.Boolean)&&(a="change"),t.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),t}}function mr(n,e,t,o){var a,l,s,d,c,f;const r=t.parentComponentInstance;if(r&&o){const u=(a=r.schema)==null?void 0:a.type,m={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((l=t.bindingSourceContext)==null?void 0:l.entityTitle)||((d=(s=t.bindingSourceContext)==null?void 0:s.bindingEntity)==null?void 0:d.name)||"标题",componentType:"form",formColumns:u==="splitter-pane"?1:4,parentContainerId:r.schema.id,bindTo:((c=t.bindingSourceContext)==null?void 0:c.bindTo)||"/",selectedFields:(f=t.bindingSourceContext)==null?void 0:f.bindingEntityFields};return new pr(n,o).createComponent(m)}else return e}function hr(n,e,t){return e}Ft({customClass:{type:String,default:""},customStyle:{type:String,defaut:""},visible:{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}},required:["id","type","contents"]},Wt,mr);const Fn={$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}},required:["id","type","editor"]},gr={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},type:{type:String,default:"input-group"},componentId:{type:String,default:""},errors:{type:Object,default:null}};Le.createPropsResolver(gr,Fn,Wt,void 0),Le.createFormGroupEditorResolver();function yr(n,e,t){function o(){const l=t.componentId;if(!l)return!1;const s=n.formSchemaUtils.getViewModelIdByComponentId(l);if(!s)return!1;const{schema:d}=e,{designViewModelUtils:c}=n,f=c.getDgViewModel(s),u=f==null?void 0:f.fields.find(p=>p.id===d.binding.field);return!(!u||u.$type!==ce.FormSchemaEntityField$Type.SimpleField)}function r(){const{schema:l}=e;return!!n.formSchemaUtils.getVariableById(l.binding.field)}function a(){var d;const{schema:l}=e;let s=!0;if(!n||!((d=l.binding)!=null&&d.field))return s;switch(l.binding.type){case Ue.FormBindingType.Form:{s=o();break}case Ue.FormBindingType.Variable:s=r()}return s}return{checkBindingFieldValidation:a}}const vr={id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}};Le.createPropsResolver(vr,Fn,Wt,void 0);const br={$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"]},Cr={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};Le.createPropsResolver(Cr,br,ur,hr);const wr={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},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 Sr(n){if(!navigator.clipboard)throw qt();return navigator.clipboard.writeText(n)}async function xr(n){const e=document.createElement("span");e.textContent=n,e.style.whiteSpace="pre",e.style.webkitUserSelect="auto",e.style.userSelect="all",document.body.appendChild(e);const t=window.getSelection(),o=window.document.createRange();t==null||t.removeAllRanges(),o.selectNode(e),t==null||t.addRange(o);let r=!1;try{r=window.document.execCommand("copy")}finally{t==null||t.removeAllRanges(),window.document.body.removeChild(e)}if(!r)throw qt()}async function Fr(n){try{await Sr(n)}catch(e){try{await xr(n)}catch(t){throw t||e||qt()}}}function Tr(){async function n(e){await Fr(e)}return{onCopy:n}}function _r(n,e,t,o){const r=i.ref(14),a=i.ref(140),l=i.ref(""),s=i.ref(o.value.length),d=i.computed(()=>o.value),c=i.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function f(u){if(u.currentTarget){const p=u.currentTarget.value||"";s.value=p.length}}return()=>i.createVNode(i.Fragment,null,[i.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:c.value,rows:"4",maxlength:a.value,onInput:u=>f(u)},[d.value]),i.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+a.value])])}function Mr(n,e,t,o){const r=_r(n,e,t,o),a=new Map([["text-area",r]]);function l(s){return a.get(s)||null}return{getEditorRender:l}}function kr(){const n=i.ref(!1),e=i.ref("复制成功");return{feedbackStyle:i.computed(()=>{const o={position:"absolute",left:"50%",top:"50%",width:"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease"};return o.opacity=n.value?"0.8":"0",o.display=n.value?"":"none",o}),feedbackMessage:e,toShowFeedback:n}}function Er(n,e){const t=e.getEditorRender(n.promptEditorType);return()=>t&&t()}function Ir(n){function e(p){if(p==null)return 0;let m=0;for(let g=0;g<p.length;g++){const F=p.charCodeAt(g);F>=0&&F<=128?m++:m=m+2}return m}function t(p,m){if(p!==""&&p!==void 0&&p!==null){p=""+p;const g=p.length;let F="",S=0;for(let C=0;C<g;C++){const x=p.charAt(C);if(S++,encodeURI(x).length>4&&S++,F=F.concat(x),S>=m)return F=F.concat("..."),F}if(S<m)return p}return""}const o=i.computed(()=>!!n.value&&!!n.value.date),r=i.computed(()=>`发生时间 : ${n.value&&n.value.date||""}`),a=i.computed(()=>!!n.value&&!!n.value.detail),l=i.computed(()=>n.value?e(n.value.detail)>160:!1),s=i.ref(!1),d=i.computed(()=>s.value?"收起":"展开"),c=i.computed(()=>{const p="详细信息 : "+(n.value&&n.value.detail)||"";return s.value?p:t(p,160)}),f=i.computed(()=>({position:"absolute",right:0,bottom:s.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function u(){s.value=!s.value}return()=>i.createVNode("div",{class:"toast-msg-detail"},[o.value&&i.createVNode("div",null,[r.value]),a.value&&i.createVNode("div",{class:"exception_wrap"},[i.createVNode("div",{class:"exception_error_msg"},[i.createVNode("div",{innerHTML:c.value},null),l.value&&i.createVNode("span",{style:f.value,onClick:u},[d.value])])])])}function Vr(n){return()=>i.createVNode("p",{class:"toast-msg-detail",innerHTML:n.value},null)}function Nr(n,e,t,o){const r=i.ref(n.exceptionInfo),a=i.computed(()=>{const p={"f-icon":!0},m=`f-icon-${e.value}`;return p[m]=!0,p}),l=i.computed(()=>t.value||r.value&&r.value.message),s=i.computed(()=>o.value),d=i.computed(()=>!!o.value),c=i.computed(()=>!!r.value);function f(){return c.value?Ir(r):d.value?Vr(s):()=>null}const u=f();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:l.value},null),u()])])}function Pr(n,e,t){const{onCopy:o}=e,{toShowFeedback:r}=t,a=i.ref("复制成功"),l=i.ref("复制详细信息"),s=i.ref(n.exceptionInfo||{date:"",message:"",detail:""}),d=i.computed(()=>s.value&&s.value.detail||"");function c(f){o(d.value).catch(u=>{a.value="复制失败"}).finally(()=>{r.value=!0,setTimeout(()=>{r.value=!1},700)})}return()=>i.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[i.createVNode("span",{onClick:c,style:"cursor: pointer;"},[l.value])])}function Br(n,e,t,o){const r=i.ref(n.type),a=i.ref(n.buttons),l=i.ref(n.exceptionInfo),s=i.ref(n.okButtonText),d=i.ref(n.cancelButtonText),c=i.ref(!0),f=i.ref(!0),u=i.computed(()=>!!(a.value&&a.value.length)),p=i.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),m=i.computed(()=>!(a.value&&a.value.length)&&(s.value||d.value)),g=i.computed(()=>f.value&&s.value),F=i.computed(()=>c.value&&d.value),S=Pr(n,t,o);function C(w){r.value==="question"&&e.emit("reject"),e.emit("close")}function x(w){r.value==="question"&&e.emit("accept"),e.emit("close")}return()=>i.createVNode("div",{class:"modal-footer"},[p.value&&S(),m.value&&F.value&&i.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:C},[d.value]),m.value&&g.value&&i.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:x},[s.value]),u.value&&a.value.length&&a.value.map(w=>i.createVNode("button",{type:"button",onClick:w.handle,class:w.class},[w.iconClass&&i.createVNode("span",{class:w.iconClass},null),w.text]))])}const Bt=i.defineComponent({name:"FMessageBox",props:wr,emits:["accept","reject","close"],setup(n,e){const t=i.ref(n.type),o=i.ref(n.title),r=i.ref(n.detail),a=i.computed(()=>{const S={"modal-tips":!0,"d-flex":!0,"flex-row":!0},C=`messager-type-${t.value}`;return S[C]=!0,S}),l=i.computed(()=>{const S={};return t.value==="prompt"?S.padding="0.5rem 0.5rem 1rem 1.5rem":t.value==="error"&&(S.padding="0.5rem 1.5rem 1rem 1.5rem"),S}),s=Tr(),d=Mr(n,t,o,r),c=kr(),{feedbackStyle:f,feedbackMessage:u}=c;function p(){return i.createVNode("div",{style:f.value},[u.value])}function m(){switch(t.value){case"prompt":return Er(n,d);default:return Nr(n,t,o,r)}}const g=m(),F=Br(n,e,s,c);return()=>i.createVNode("div",{class:"farris-messager"},[i.createVNode("section",{class:a.value,style:l.value},[g()]),F(),p()])}});class ut{static show(e){const t=i.reactive({...e}),o=!1,r=t.type==="error"||t.type==="prompt",a=t.type==="error"?"错误提示":t.type==="prompt"&&t.title||"",l=t.acceptCallback||(()=>{}),s=t.rejectCallback||(()=>{});let d=null,c=new an(d);const f=()=>{d&&(d==null||d.destroy(),c=null)};return d=c==null?void 0:c.open({class:"modal-message modal-message-type-info",title:a,showButtons:o,showHeader:r,width:t.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,render:()=>i.createVNode(Bt,i.mergeProps(t,{onAccept:l,onReject:s,onClose:f}),null)}),c==null?void 0:c.getCurrentModal()}static info(e,t){const o=i.reactive({type:"info",title:e,detail:t,okButtonText:"知道了",cancelButtonText:""});ut.show(o)}static warning(e,t){const o=i.reactive({type:"warning",title:e,detail:t,okButtonText:"知道了",cancelButtonText:""});ut.show(o)}static success(e,t){const o=i.reactive({type:"success",title:e,detail:t,okButtonText:"关闭",cancelButtonText:""});ut.show(o)}static error(e,t,o){const r=i.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:o,message:e,detail:t}});ut.show(r)}static prompt(e,t){const o=i.reactive({type:"prompt",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消"});ut.show(o)}static question(e,t,o,r){const a=i.reactive({type:"question",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:o,rejectCallback:r});ut.show(a)}}Bt.install=n=>{n.component(Bt.name,Bt),n.provide("FMessageBoxService",ut)};class kt extends At{constructor(t,o){super(t,o);le(this,"responseLayoutEditorFunction");le(this,"bindingVarible");this.responseLayoutEditorFunction=Ji(this.formSchemaUtils)}getCommonPropertyConfig(t,o){this.propertyConfig.categories.basic=this.getBasicProperties(t,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t,o),this.propertyConfig.categories.behavior=this.getBehaviorConfig(t)}getPropertyConfig(t,o){return this.getCommonPropertyConfig(t,o),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig.categories.expressons=this.getExpressionConfig(t,"Field"),this.propertyConfig}getGridFieldEdtiorPropConfig(t,o){return this.propertyConfig.categories={},this.getCommonPropertyConfig(t,o),this.getGridFieldEdtiorProperties?this.propertyConfig.categories.editor=this.getGridFieldEdtiorProperties(t):this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig.categories.expressons=this.getExpressionConfig(t,"Field"),this.propertyConfig.categories}getBasicProperties(t,o){const r=this;this.setDesignViewModelField(t);const{canChangeControlType:a,editorTypeList:l}=this.getAvailableEditorType(t);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:l,readonly:!a}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:t,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(s,d,c){if(s)switch(s&&s.propertyID){case"type":{r.changeControlType(t,s,o);break}case"label":{s.needRefreshControlTree=!0;break}case"binding":{r.changeBindingField(t,s,c);break}}}}}checkCanChangeControlType(t,o){if(!t.binding)return!1;if(t.binding.type==="Variable"){if(this.bindingVarible=this.formSchemaUtils.getVariableById(t.binding.field),!this.bindingVarible)return!1}else if(!this.designViewModelField||this.designViewModelField.$type!==ce.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(t){var a;const o=this.checkCanChangeControlType(t,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:t.editor.type,value:((a=te[t.editor.type])==null?void 0:a.name)||t.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===ce.FormSchemaEntityField$Type.SimpleField?r=Mt.getEditorTypesByMDataType(this.designViewModelField.type.name):this.bindingVarible&&(r=Mt.getEditorTypesByMDataType(this.bindingVarible.type)),{canChangeControlType:o,editorTypeList:r}}changeBindingField(t,o,r){o.needRefreshEntityTree=!0}getAppearanceProperties(t,o){const r=this;return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(t,r.componentId)}}},setPropertyRelates(a,l){if(a)switch(a&&a.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,r.componentId||t.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(t.id,o),delete t.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(a.propertyValue,t.id,this.componentId),st.value++;break;case"style":{st.value++;break}}}}}getEditorProperties(t){return this.getComponentConfig(t)}changeControlType(t,o,r){const a=o.propertyValue,l=r&&r.parent&&r.parent.schema;if(!l)return;const s=l.contents.findIndex(f=>f.id===t.id);if(s===-1)return;const d=l.contents[s];let c;if(this.designViewModelField){const p=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(g=>g.id===this.designViewModelField.id).fieldSchema||{};p.editor||(p.editor={}),p.editor.$type=a,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,p,!1),c=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)}c||(c=this.controlCreatorUtils.createFormGroupWithoutField(a)),Object.assign(c,{id:d.id,appearance:d.appearance,size:d.size,label:d.label,binding:d.binding}),Object.prototype.hasOwnProperty.call(d,"visible")&&Object.assign(c,{visible:d.visible}),d.editor&&["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(d.editor,f)&&(c.editor[f]=d.editor[f])}),l.contents.splice(s,1),l.contents.splice(s,0,c),r.schema=Object.assign(d,c),Object.assign(t,c),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(f=>f.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(f=>f.classList.remove("dgComponentFocused")),st.value++}getComponentConfig(t,o={},r={},a){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},o),s=this.getPropertyEditorParams(t,[],"readonly"),d=this.getPropertyEditorParams(t,[],"required"),c={readonly:{description:"",title:"只读",editor:s},required:{description:"",title:"必填",type:"boolean",editor:d},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const u in r)c[u]=Object.assign(c[u]||{},r[u]);const f=this;return{...l,properties:{...c},setPropertyRelates(u,p){if(u){switch(u.propertyID){case"readonly":case"required":f.afterMutilEditorChanged(t,u);break}a&&a.bind(f)(u,t,p)}}}}updateUnifiedLayoutAfterControlChanged(t,o,r){const a=t.split(" ");let l=a.find(u=>/^col-([1-9]|10|11|12)$/.test(u)),s=a.find(u=>/^col-md-([1-9]|10|11|12)$/.test(u)),d=a.find(u=>/^col-xl-([1-9]|10|11|12)$/.test(u)),c=a.find(u=>/^col-el-([1-9]|10|11|12)$/.test(u));l=l||"col-12",s=s||"col-md-"+l.replace("col-",""),d=d||"col-xl-"+s.replace("col-md-",""),c=c||"col-el-"+d.replace("col-xl-","");const f={id:o,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(d.replace("col-xl-",""),10),columnInEL:parseInt(c.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,f)}updateUnifiedLayoutAfterResponseLayoutChanged(t,o){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(t);if(!r||!r.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,a,1),o){const g=a.find(F=>F.id===o.id);Object.assign(g||{},o)}const l=a.map(g=>g.columnInSM),s=a.map(g=>g.columnInMD),d=a.map(g=>g.columnInLG),c=a.map(g=>g.columnInEL),f=this.checkIsUniqueColumn(l)?l[0]:null,u=this.checkIsUniqueColumn(s)?s[0]:null,p=this.checkIsUniqueColumn(d)?d[0]:null,m=this.checkIsUniqueColumn(c)?c[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:u,uniqueColClassInLG:p,uniqueColClassInEL:m})}checkIsUniqueColumn(t){const o=new Set(t);return Array.from(o).length===1}getItemCollectionEditor(t,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(t)}}}checkEnumDataReadonly(t){return!t.binding||t.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===ce.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(t,o){t.binding&&t.binding.type===Vt.Form&&t.binding.field?(o.find(l=>l.label==="fieldValueChanging")||o.push({label:"fieldValueChanging",name:"绑定字段值变化前事件"}),o.find(l=>l.label==="fieldValueChanged")||o.push({label:"fieldValueChanged",name:"绑定字段值变化后事件"}),this.designViewModelField&&(t.fieldValueChanging=this.designViewModelField.valueChanging,t.fieldValueChanged=this.designViewModelField.valueChanged)):o=o.filter(r=>r.label!=="fieldValueChanging"&&r.label!=="fieldValueChanged")}getControlMethodType(t){if(!t.binding)return t.type;switch(t.binding.type){case Vt.Form:return t.binding.path||t.type;case Vt.Variable:return t.binding.fullPath||t.type}return t.type}getEventPropertyConfig(t,o="card",r,a){const l=this;let s=[];r&&(s=s.concat(r)),this.appendFieldValueChangeEvents(t,s);const d=l.eventsEditorUtils.formProperties(t,l.viewModelId,s),c={};return c[l.viewModelId]={type:"events-editor",editor:{initialData:d}},{title:"事件",hideTitle:!0,properties:c,tabId:"commands",tabName:"交互",setPropertyRelates(u,p){const m=u.propertyValue;delete t[l.viewModelId],m&&(m.setPropertyRelates=this.setPropertyRelates,m.controlInfo={type:l.getControlMethodType(t),name:t.title},l.eventsEditorUtils.saveRelatedParameters(t,l.viewModelId,m.events,m)),a&&a(u,p,m);const g=l.designViewModelUtils.getDgViewModel(l.viewModelId);g&&l.designViewModelField&&g.changeField(l.designViewModelField.id,{valueChanging:t.fieldValueChanging,valueChanged:t.fieldValueChanged})}}}getExpressionConfig(t,o,r=["compute","dependency","validate"],a){return new nn(this.formSchemaUtils).getExpressionConfig(t,o,r,a)}}class Or extends kt{constructor(e,t){super(e,t)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class $r extends Ue.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.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",...t.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,a)=>{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 jr extends Ue.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"}})}}const Tn={convertFrom:(n,e)=>(n.editor.remote||{})[e],convertTo:(n,e,t)=>{n.editor.remote=n.editor.remote||{},n.editor.remote[e]=t}};class Rr extends Ue.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var a,l;const t=this;let o="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const s=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(l=s==null?void 0:s.schemaField)!=null&&l.type&&(o=s.schemaField.type.$type)}return t.getComponentConfig(e,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean",readonly:e.editor.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",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Tn,description:"",title:"服务端API",type:"string"},body:{visible:e.editor.dataSourceType==="dynamic",$converter:Tn,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}}},(s,d)=>{if(!s||!d.editor)return;const c=this;switch(s.propertyID){case"dataSourceType":{s.propertyValue==="static"?(d.editor.valueField="value",d.editor.textField="name",d.editor.remote=null):s.propertyValue==="dynamic"&&(d.editor.remote={method:"GET"},d.editor.valueField="value",d.editor.textField="name");break}case"data":{!c.checkEnumDataReadonly(d)&&d.formatter&&(d.formatter.data=[...s.propertyValue]);break}}})}getGridFieldEdtiorProperties(e,t){var l,s;const o=this;let r="";if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const d=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=d==null?void 0:d.schemaField)!=null&&s.type&&(r=d.schemaField.type.$type)}return o.getComponentConfig(e,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean",readonly:e.editor.type==="combo-list"},enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!0,...o.getItemCollectionEditor(e,e.editor.valueField,e.editor.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}}},(d,c)=>{if(!d||!c.editor)return;const f=this;switch(d.propertyID){case"dataSourceType":{d.propertyValue==="static"?(c.editor.valueField="value",c.editor.textField="name",c.editor.remote=null):d.propertyValue==="dynamic"&&(c.editor.remote={method:"GET"});break}case"data":{!f.checkEnumDataReadonly(c)&&c.formatter&&(c.formatter.data=[...d.propertyValue]);break}}})}setEditorPropertyRelates(e,t,o){if(!e||!t.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name",t.editor.remote={});break}case"data":{!r.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,o){var a;super.changeBindingField(e,t);const r=o;e.editor&&((a=r==null?void 0:r.type)==null?void 0:a.$type)===ce.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Ar extends Ue.InputBaseProperty{constructor(e,t){super(e,t)}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 Hr(){let n="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:n}=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"}],t=[{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"}],a=[{id:"yyyy",name:"yyyy"}];return n==="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分"}),t.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日"}),a.push({id:"yyyy年",name:"yyyy年"})),n==="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分"}),t.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日"}),a.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:o,yMdFormats:t,mdFormats:r,yFormats:a}}class Lr extends Ue.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var r,a,l,s,d,c,f,u,p,m;const t=this.getDateFormatOptions(e==null?void 0:e.editor),o=this.getValueFormatOptions();return this.getComponentConfig(e,{type:"date-picker"},{showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((r=e==null?void 0:e.editor)==null?void 0:r.fieldType)==="Date",refreshPanelAfterChanged:!0},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:t}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:o},visible:((a=e==null?void 0:e.editor)==null?void 0:a.fieldType)==="String"},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",displayFormat:"yyyy-MM-dd"+((l=e==null?void 0:e.editor)!=null&&l.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((s=e==null?void 0:e.editor)!=null&&s.showTime?" HH:mm:ss":""),minDate:((d=e==null?void 0:e.editor)==null?void 0:d.minDate)||"1900-01-01",maxDate:"9999-12-31",showTime:(c=e==null?void 0:e.editor)==null?void 0:c.showTime},refreshPanelAfterChanged:!0},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",displayFormat:"yyyy-MM-dd"+((f=e==null?void 0:e.editor)!=null&&f.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((u=e==null?void 0:e.editor)!=null&&u.showTime?" HH:mm:ss":""),minDate:"1900-01-01",maxDate:((p=e==null?void 0:e.editor)==null?void 0:p.maxDate)||"9999-12-31",showTime:(m=e==null?void 0:e.editor)==null?void 0:m.showTime},refreshPanelAfterChanged:!0}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,t,o){if(!(!e||!t.editor))switch(e.propertyID){case"showTime":{const r=t.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"),t.formatter&&(t.formatter.dateFormat=r.displayFormat);break}case"displayFormat":{t.formatter&&(t.formatter.dateFormat=e.propertyValue);break}}}getDateFormatOptions(e){let t=[];const{timeFormats:o,yMdFormats:r,yMFormats:a,mdFormats:l,yFormats:s}=Hr();return e.showTime&&(t=t.concat(o)),t=t.concat(r),t=t.concat(a),t=t.concat(s),t=t.concat(l),t}getValueFormatOptions(){return[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy",name:"yyyy"}]}}const Dr=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Wr="";function Ot(n){let e=[10,20,30,50,100];return n&&(typeof n=="string"&&(e=n.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(n)&&(e=n)),e.map(t=>({value:parseInt(t,10)})).sort((t,o)=>t.value-o.value)}const Ee={convertFrom:(n,e)=>e==="multiSelect"||e==="enableTitle"?!!n.editor[e]:e==="separator"?n.editor[e]||",":e==="onlySelectLeaf"?n.editor[e]==null?!1:n.editor[e]:e==="loadTreeDataType"?n.editor[e]||"all":n.editor[e],convertTo:(n,e,t)=>{n.editor[e]=t}};function qr(n){let e="form_group_"+Date.now();return n&&(e=n.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Gr(n,e){const{enablePager:t,pageSize:o,pageList:r}=e;n.pagination=n.pagination||{},Object.assign(n.pagination,{enable:t,sizeLimits:Ot(r).map(a=>a.value),size:o,showLimits:!0,showGoto:!1,mode:"server"})}const zr={convertFrom:(n,e)=>{var t;return(t=n.editor[e])==null?void 0:t.displayName},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0],{name:r,id:a,metadataContent:l,code:s}=o;n.editor.dataSource||(n.editor.dataSource={}),n.editor.dataSource.displayName=`${r}(${s})`,n.editor.helpId=a;const{displayType:d,idField:c,textField:f}=l;n.editor.displayType=d,n.editor.dataSource.idField=c,n.editor.textField=f,n.editor.dataSource.type="ViewObject";const{pageInfo:u}=l.dataSource;Gr(n.editor,u);const{treeInfo:p}=d.toUpperCase()==="NAVTREELIST"?l.navigation:l.dataSource;if(p){const{onlySelectLeaf:m,loadDataType:g}=p;n.editor.loadTreeDataType=g||"all",n.editor.onlySelectLeaf=m??!1}n.editor.dataSource.uri||(n.editor.dataSource.uri=qr(n.id))}}},Ur={convertFrom:(n,e)=>{var t;return(t=n.editor.dataSource)==null?void 0:t.idField},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.editor.dataSource.idField=o==null?void 0:o.bindingPath}}},Yr={convertFrom:(n,e)=>{var t;return(t=n.editor)==null?void 0:t.textField},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.editor.textField=o==null?void 0:o.bindingPath}}},Xr={convertFrom:(n,e)=>n.editor.displayType?n.editor.displayType.toUpperCase():"LIST",convertTo:(n,e,t)=>{n.editor.displayType=t}},it={convertFrom:(n,e)=>{var r;const t=n.editor.dialog||{};if(e==="title")return t[e]||Wr;if(e==="width")return(r=n.editor.displayType)!=null&&r.toUpperCase().startsWith("NAV")?t[e]||960:t[e]||590;if(e==="height")return t[e]||620;if(e==="navigatorWidth")return t[e]||320;if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return t[e]==null?!0:t[e]},convertTo:(n,e,t)=>{n.editor.dialog=n.editor.dialog||{},n.editor.dialog[e]=t}},Gt={convertFrom:(n,e)=>{const t=n.editor.pagination||{};if(e==="enable"||e==="showLimits")return t[e]==null?!1:t[e];if(e==="sizeLimits"){const o=t[e];return Ot(o)}if(e==="size")return t[e]||20},convertTo:(n,e,t)=>{var o,r;if(n.editor.pagination=n.editor.pagination||{},e==="sizeLimits"){const a=t.map(s=>s.value);n.editor.pagination[e]=a;const l=((r=(o=n.editor)==null?void 0:o.pagination)==null?void 0:r.size)??20;a.includes(l)||(n.editor.pagination.size=a[0]);return}n.editor.pagination[e]=t}},Zr=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Jr=Symbol("schema_repository_token");class Qr extends Ue.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(t,o){const r=["validate"];return t.type==="form-group"&&r.push("dataPicking"),new Ue.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",r)}getPropertyConfig(t,o){this.readonlyEditor=this.getPropertyEditorParams(t,[],"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,[],"visible"),this.requiredEditor=this.getPropertyEditorParams(t,["Const","Variable","StateMachine","Expression"],"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const r=this.getBasicProperties(t,o),a=this.getBehaviorConfig(t),l=this.getAppearanceProperties(t,o),s=this.getLookupConfig(t),d=this.getEventPropConfig(t),c=this.getDialogPropertyConfig(t),f=this.getPageConfig(t.editor),u=this.getTreePropConfig(t.editor),p=this.getExpressionConfig(t,"Field"),m={basic:r,appearance:l,behavior:a,lookup:s,treeConfig:u,dialog:c,pager:f,expressons:p};return t.type==="form-group"&&(m.eventsEditor=d),{type:"object",categories:m}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null).categories}flattenTreeNodes(t){return t.reduce((o,r)=>{var a;return o.push(r),(a=r.children)!=null&&a.length&&o.push(...this.flattenTreeNodes(r.children)),o},[])}isSimpleStringField(){var s;const t=((s=this.designViewModelField)==null?void 0:s.path)||"";if(!t||!t.includes("."))return!0;const o=t.split("."),r=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(r!=null&&r.length))return!1;const a=r.find(d=>d.data.code===o[0]);if(!a)return!1;const l=[a,...this.flattenTreeNodes(a.children)];return!o.reduce((d,c,f)=>[...d,f?`${d[f-1]}.${c}`:c],[]).some(d=>{var c,f,u;return((u=(f=(c=l.find(p=>p.data.path===d))==null?void 0:c.data)==null?void 0:f.type)==null?void 0:u.$type)==="EntityType"})}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(o,r)=>{this.afterMutilEditorChanged(r,o)}}}changeBindingField(t,o){super.changeBindingField(t,o),t.editor.multiSelect=!1}getDisplayType(t){return t.displayType?t.displayType.toUpperCase():""}getLookupConfig(t){const o=t.editor,r=()=>{const a=this.formSchemaUtils.getFormSchema().module.entity[0].id,l=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:o,formBasicInfo:l,viewModelId:a,dataSourceId:o.helpId}};return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(a,l)=>{if(a)switch(a.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(l,a);break}},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:Ee},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:Ee,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:Ee,refreshPanelAfterChanged:!0,editor:this.comboListEditor},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:Ee,editor:this.freeInputEditor,visible:!1},enableClear:{title:"启用清除按钮",type:"boolean",$converter:Ee},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},displayFormatter:a=>a&&a.length?a.map(l=>`${l.name}(${l.code})`).join(","):"",viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(a,l)=>`${a==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Jr,onSubmitModal:a=>{if(a){delete o.mappingFields;const l=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(l.relativePath,a[0].data).then(s=>JSON.parse(s==null?void 0:s.metadata.content))}}},$converter:zr},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:Ee,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:Et.FieldSelectorRepositoryToken,beforeOpen:async({repository:a,notifyService:l})=>{var p;if(!(o==null?void 0:o.helpId))return l==null||l.warning({message:"请先配置数据源!"}),!1;const d=r(),f=new Ue.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let u={};if(a){const m=await a.getData(d),g=await a.getLookupConditions(d);u={fieldList:m,conditionList:g}}return(p=f.variables)!=null&&p.forms&&(f.variables.forms.items=f.variables.forms.items.filter(m=>m.category==="remote")),{...u,...f}},onSubmitModal:async({loadingService:a,repository:l,conditions:s,originalConditions:d,FMessageBoxService:c})=>{if(l)try{const f=r(),u=await l.getLookupConditions(f)||[];return JSON.stringify(u)!==JSON.stringify(d.value)?(a==null||a.clearAll(),c.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{s.value=u,d.value=JSON.parse(JSON.stringify(s.value))},()=>{}),!1):(JSON.stringify(s.value)===JSON.stringify(d.value)||await l.saveFilterCondition(s.value,f),!0)}catch{return c==null||c.error("保存失败",""),!1}finally{a==null||a.clearAll()}}},visible:!!o.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Xr,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Et.FieldSelectorRepositoryToken},$converter:Ur,visible:!1},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Yr,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Et.FieldSelectorRepositoryToken}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:Ee,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(a,l)=>`${l.raw.name} [${l.raw.bindingPath}]`,idField:"bindingPath",textField:"bindingPath",valueField:"bindingPath",repositoryToken:Et.FieldSelectorRepositoryToken},toData:{idField:"bindingPath",textField:"bindingPath",valueField:"bindingPath",dataSource:()=>{const a=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),l=this.schemaService.getPrimaryField();return l?a.filter(s=>s.data.bindingPath!==l):a},formatter:(a,l)=>`${l.raw.name} [${l.raw.bindingPath}]`}}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:Ee,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:Ee,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:Ee,title:"显示已选记录",type:"boolean",visible:!!o.multiSelect},separator:{description:"多选分隔符",$converter:Ee,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:Ee,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:Ee,title:"允许查询所有列",type:"boolean",visible:o.enableSearchBar==null?!0:!!o.enableSearchBar},enableFavorite:{description:"启用收藏夹",$converter:Ee,title:"启用收藏夹",type:"boolean"},enableUserData:{description:"保存界面状态",$converter:Ee,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:!0}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){var o,r,a,l;return{description:"帮助窗口尺寸配置",title:"帮助窗口",properties:{title:{description:"帮助标题",title:"帮助标题",type:"string",$converter:it},width:{description:"窗口宽度,最小值:300px",title:"宽度",type:"number",refreshPanelAfterChanged:!0,$converter:it,editor:{...this.numberEditor,min:this.showNavigatiorWidth(t.editor)?520:300}},height:{description:"窗口高度,最小值:200px",title:"高度",type:"number",$converter:it,editor:{...this.numberEditor,min:200}},showNavigation:{description:"显示导航栏",$converter:Ee,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:this.getDisplayType(t.editor).includes("NAV")},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",$converter:it,visible:this.showNavigatiorWidth(t.editor),editor:{...this.numberEditor,min:200,max:(((r=(o=t.editor)==null?void 0:o.dialog)==null?void 0:r.width)??960)-200}},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",$converter:it,refreshPanelAfterChanged:!0},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",$converter:it,visible:!!t.editor.enableUserData&&(((l=(a=t.editor)==null?void 0:a.dialog)==null?void 0:l.resizeable)??!0)},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",$converter:it},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",$converter:it},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",$converter:it}}}}showPagerProperty(t,o){const r=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return o&&r?t.pagination&&t.pagination[o]:r}getPageConfig(t){var r,a,l,s;const o=!((r=t.pagination)!=null&&r.enable);return{hide:this.getDisplayType(t)==="TREELIST"||!t.helpId||o,description:"分页配置",title:"分页",properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:!0,$converter:Gt,visible:this.showPagerProperty(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",$converter:Gt,refreshPanelAfterChanged:!0,visible:this.showPagerProperty(t,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{...this.numberEditor,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Ot((a=t.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:d,data:c})=>!c||!c.length?(d==null||d.warning({message:"每页显示条数不能为空!"}),!1):new Set(c.map(u=>parseInt(u.value,10))).size===c.length?!0:(d==null||d.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:this.showPagerProperty(t),$converter:Gt,editor:{...this.comboListEditor,data:Ot((l=t.pagination)==null?void 0:l.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(s=t.pagination)==null?void 0:s.size}}}}}showLoadType(t){const o=this.getDisplayType(t);return(o==="TREELIST"||o==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}showOnlySelectLeaf(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:Ee,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:Ee,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:Ee,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:!1},enableFullTree:{description:"启用构造完整树",$converter:Ee,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:Ee,title:"仅选择叶子节点",type:"boolean",visible:this.showOnlySelectLeaf(t)},enableCascade:{description:"启用级联选择",$converter:Ee,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:!1},showCascadeControl:{description:"显示级联选择控件",$converter:Ee,title:"显示级联选择控件",type:"boolean",visible:!1},cascadeStatus:{description:"级联选择默认状态",$converter:Ee,title:"级联状态",type:"string",visible:!1,editor:{...this.comboListEditor,data:Dr,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:Ee,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99}}}}}getEventPropConfig(t){const o=this,r=Zr,a=o.eventsEditorUtils.formProperties(t,o.viewModelId,r),l={};return l[o.viewModelId]={type:"events-editor",editor:{initialData:a}},{title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,d){const c=s.propertyValue;delete d[o.viewModelId],c&&o.eventsEditorUtils.saveRelatedParameters(d,o.viewModelId,c.events,c);const f=o.designViewModelUtils.getDgViewModel(o.viewModelId);f&&o.designViewModelField&&f.changeField(o.designViewModelField.id,{valueChanging:d.fieldValueChanging,valueChanged:d.fieldValueChanged})}}}}class Kr extends kt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class ea extends kt{constructor(e,t){super(e,t)}getEditorProperties(e){var r,a,l,s,d,c,f,u;let t;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const p=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=p==null?void 0:p.schemaField)!=null&&a.type&&(t=p.schemaField.type.precision)}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:t===0,min:0,max:t},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,precision:(l=e==null?void 0:e.editor)==null?void 0:l.precision}},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((s=e==null?void 0:e.editor)==null?void 0:s.min)===void 0||(d=e==null?void 0:e.editor)==null?void 0:d.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision},refreshPanelAfterChanged:!0},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(f=e==null?void 0:e.editor)==null?void 0:f.max,precision:(u=e==null?void 0:e.editor)==null?void 0:u.precision},refreshPanelAfterChanged:!0},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}}},function(p,m,g){if(p)switch(p.propertyID){case"precision":{m.formatter&&(m.formatter.precision=p.propertyValue);break}}})}changeBindingField(e,t,o){var a;super.changeBindingField(e,t);const r=o;e.editor&&((a=r==null?void 0:r.type)==null?void 0:a.name)===ce.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=r.type.precision)}}class ta extends kt{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.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",...t.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,t,o){if(!e||!t.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name");break}case"data":{!r.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,o){var a;super.changeBindingField(e,t);const r=o;e.editor&&((a=r==null?void 0:r.type)==null?void 0:a.$type)===ce.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class na extends Ue.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){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:"大号"}]}}})}}class oa extends kt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",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}}})}}class ia extends At{constructor(e,t){super(e,t)}getPropertyConfig(e,t){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.behavior=this.getBehaviorConfig(e,"gridFieldEditor"),this.getFieldEditorProperties(e,t),this.propertyConfig}getBasicPropConfig(e){const t=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:e,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(o,r,a){if(o)switch(o&&o.propertyID){case"binding":{t.afterChangeBindingType(e,a),o.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(e){this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{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:"底对齐"}]}}}}}getFieldEditorProperties(e,t){t.fieldEditable&&e.editor&&this.getFieldEditorProp(e)}getFieldEditorProp(e,t="gridFieldEditor",o=!1){const r=this.formMetadataConverter.getRealEditorType(e.editor.type);let a;switch(r){case"avatar":a=new Or(this.componentId,this.designerHostService);break;case"check-group":a=new $r(this.componentId,this.designerHostService);break;case"check-box":a=new jr(this.componentId,this.designerHostService);break;case"combo-list":a=new Rr(this.componentId,this.designerHostService);break;case"date-picker":a=new Lr(this.componentId,this.designerHostService);break;case"lookup":a=new Qr(this.componentId,this.designerHostService);break;case"number-range":a=new Kr(this.componentId,this.designerHostService);break;case"number-spinner":a=new ea(this.componentId,this.designerHostService);break;case"radio-group":a=new ta(this.componentId,this.designerHostService);break;case"switch":a=new na(this.componentId,this.designerHostService);break;case"textarea":a=new Ar(this.componentId,this.designerHostService);break;case"time-picker":a=new oa(this.componentId,this.designerHostService);break;default:a=new Xi(this.componentId,this.designerHostService)}this.setDesignViewModelField(e);const l=this,{canChangeControlType:s,editorTypeList:d}=this.getAvailableEditorType(e);this.propertyConfig.categories[`${t}_editorType`]={description:"",title:"编辑器类型",propertyData:e.editor,tabId:"gridFieldEditor",parentPropertyID:"editor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",data:d,readonly:!s}}},setPropertyRelates(u,p){if(u)switch(u&&u.propertyID){case"type":{l.changeFieldEditorType(e,u.propertyValue);break}}}};const c=["id","type","class","style","binding","label","responseLayout","visible"],f=a.getGridFieldEdtiorPropConfig(e);Object.keys(f).map(u=>{const p=f[u],m={};if(Object.keys(p.properties).map(g=>{c.findIndex(F=>F===g)===-1&&p.properties[g]!==!1&&(m[g]=p.properties[g])}),Object.keys(m).length!==0){const g=p==null?void 0:p.title,F="gridFieldEditor",S="编辑器",C=p==null?void 0:p.description,x=(p==null?void 0:p.$converter)||"";l.propertyConfig.categories[t+"_"+u]={title:g,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||S,description:C,$converter:x,propertyData:e,properties:m,setPropertyRelates:p==null?void 0:p.setPropertyRelates}}})}changeFieldEditorType(e,t){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);o.changeField(this.designViewModelField.id,{editor:{$type:t},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const r=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(r,f=>f.type===te["data-grid"].type||f.type===te["tree-grid"].type);if(!a)return;const l=o.fields.find(f=>f.id===this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(t,l,null,!0),d=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,c=d.findIndex(f=>f.id===e.id);if(c>-1&&d[c].editor){const f={};["readonly","required","placeholder"].map(u=>{Object.prototype.hasOwnProperty.call(d[c].editor,u)&&(f[u]=d[c].editor[u])}),d[c].editor=Object.assign(s.editor,f)}Object.assign(d[c],{dataType:s.dataType},s.formatter?{formatter:s.formatter}:{}),!s.formatter&&d[c].formatter&&delete d[c].formatter}checkCanChangeControlType(e,t){return!(!e.binding||!this.designViewModelField||this.designViewModelField.$type!==ce.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(e){var r;const t=this.checkCanChangeControlType(e,this.viewModelId);if(!t)return{canChangeControlType:!1,editorTypeList:[{key:e.editor.type,value:((r=te[e.editor.type])==null?void 0:r.name)||e.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===ce.FormSchemaEntityField$Type.SimpleField&&(o=Mt.getEditorTypesByMDataType(this.designViewModelField.type.name,e.type)),{canChangeControlType:t,editorTypeList:o}}afterChangeBindingType(e,t){!e||!t||(e.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(t),this.controlCreatorUtils.setGridFieldFormatter(e.dataType,e,t))}}function ra(n,e){const t=n.schema,o=i.ref(!0),r=i.ref(!0);function a(f){return!1}function l(){return!1}function s(){return!1}function d(){return!0}function c(f){var p;return new ia(f,e).getPropertyConfig(t,(p=n==null?void 0:n.parent)==null?void 0:p.schema)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:c}}const _n=i.defineComponent({name:"FDataGridColumnDesign",props:Ht,emits:[],setup(n,e){const t=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context"),a=ra(r,o),l=tn(t,r,a);i.onMounted(()=>{t.value.componentInstance=l}),e.expose(l.value);function s(c){var f;(f=r==null?void 0:r.setupContext)==null||f.emit("selectionChange",l.value.schema,r.schema,n.componentId,l.value)}const{checkBindingFieldValidation:d}=yr(o,r,n);return()=>{var p;const c=d(),f="绑定信息已失效,请手动移除列",u=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:f},null),i.createVNode("span",{class:"fv-column-title",style:u,ref:t,onClick:m=>s()},[((p=n.editor)==null?void 0:p.required)===!0&&i.createVNode("span",{class:"text-danger"},[i.createTextVNode("*")]),n.title])])}}}),aa={$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:[]},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:!0},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:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},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},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:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},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}}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件"}};function la(){function n(e,t){const o={};return o.beforeEditCell=r=>t.call("beforeEditCell",[r,e]),o}return{resolve:n}}const zt=Le.createPropsResolver(ht.dataGridProps,aa,cn,un),Mn=Le.createCollectionBindingResolver(),kn=Le.createDataGridSelectionItemResolver(),En=Le.createDataViewUpdateColumnsResolver(),In=la();ct.install=n=>{n.component(ct.name,ct)},ct.register=(n,e,t,o)=>{n["data-grid"]=ht,e["data-grid"]=zt,n["grid-field-editor"]=Li,e["grid-field-editor"]=wi,o["data-grid"]={bindingResolver:Mn,selectionItemResolver:kn,updateColumnsResolver:En,callbackResolver:In}},ct.registerDesigner=(n,e,t)=>{n["data-grid"]=ct,e["data-grid"]=zt,e["data-grid-column"]=qi,n["data-grid-column"]=_n,e["tree-grid-column"]=Gi,n["tree-grid-column"]=_n};const sa=ce.withInstall(ct);be.FDataGridDesign=ct,be.bindingResolver=Mn,be.callbackResolver=In,be.default=sa,be.getColumnHeader=Zt,be.propsResolver=zt,be.selectionItemResolver=kn,be.updateColumnsResolver=En,Object.defineProperties(be,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|