@farris/ui-vue 1.6.5 → 1.6.6

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.
Files changed (108) hide show
  1. package/components/avatar/index.esm.js +1 -1
  2. package/components/avatar/index.umd.cjs +1 -1
  3. package/components/button-edit/index.esm.js +2 -2
  4. package/components/button-edit/index.umd.cjs +1 -1
  5. package/components/combo-list/index.esm.js +7 -5
  6. package/components/combo-list/index.umd.cjs +1 -1
  7. package/components/common/index.esm.js +1 -1
  8. package/components/common/index.umd.cjs +1 -1
  9. package/components/component/index.esm.js +1 -1
  10. package/components/component/index.umd.cjs +1 -1
  11. package/components/condition/index.esm.js +3 -2
  12. package/components/condition/index.umd.cjs +1 -1
  13. package/components/content-container/index.esm.js +1 -1
  14. package/components/content-container/index.umd.cjs +1 -1
  15. package/components/data-view/index.esm.js +498 -495
  16. package/components/data-view/index.umd.cjs +1 -1
  17. package/components/date-picker/index.esm.js +833 -832
  18. package/components/date-picker/index.umd.cjs +1 -1
  19. package/components/designer-canvas/index.esm.js +1 -1
  20. package/components/designer-canvas/index.umd.cjs +1 -1
  21. package/components/dynamic-form/index.esm.js +3 -2
  22. package/components/dynamic-form/index.umd.cjs +1 -1
  23. package/components/events-editor/index.esm.js +1 -1
  24. package/components/events-editor/index.umd.cjs +1 -1
  25. package/components/expression-editor/index.esm.js +256 -254
  26. package/components/expression-editor/index.umd.cjs +2 -2
  27. package/components/filter-bar/index.esm.js +416 -394
  28. package/components/filter-bar/index.umd.cjs +1 -1
  29. package/components/filter-condition-editor/index.esm.js +388 -386
  30. package/components/filter-condition-editor/index.umd.cjs +1 -1
  31. package/components/flow-canvas/index.esm.js +1 -1
  32. package/components/flow-canvas/index.umd.cjs +1 -1
  33. package/components/language-textbox/index.esm.js +77 -76
  34. package/components/language-textbox/index.umd.cjs +1 -1
  35. package/components/list-nav/index.esm.js +4 -2
  36. package/components/list-nav/index.umd.cjs +1 -1
  37. package/components/lookup/index.esm.js +118 -118
  38. package/components/lookup/index.umd.cjs +1 -1
  39. package/components/mapping-editor/index.esm.js +80 -81
  40. package/components/mapping-editor/index.umd.cjs +1 -1
  41. package/components/message-box/index.esm.js +237 -237
  42. package/components/message-box/index.umd.cjs +1 -1
  43. package/components/modal/index.esm.js +1 -1
  44. package/components/modal/index.umd.cjs +1 -1
  45. package/components/number-range/index.esm.js +1 -1
  46. package/components/number-range/index.umd.cjs +1 -1
  47. package/components/number-spinner/index.esm.js +9 -3
  48. package/components/number-spinner/index.umd.cjs +1 -1
  49. package/components/order/index.esm.js +114 -112
  50. package/components/order/index.umd.cjs +1 -1
  51. package/components/page-header/index.esm.js +1 -1
  52. package/components/page-header/index.umd.cjs +1 -1
  53. package/components/property-panel/index.esm.js +1 -1
  54. package/components/property-panel/index.umd.cjs +1 -1
  55. package/components/query-solution/index.esm.js +485 -463
  56. package/components/query-solution/index.umd.cjs +3 -3
  57. package/components/radio-group/index.esm.js +30 -30
  58. package/components/radio-group/index.umd.cjs +1 -1
  59. package/components/response-layout/index.esm.js +1 -1
  60. package/components/response-layout/index.umd.cjs +1 -1
  61. package/components/response-layout-editor/index.esm.js +544 -545
  62. package/components/response-layout-editor/index.umd.cjs +1 -1
  63. package/components/response-toolbar/index.esm.js +1 -1
  64. package/components/response-toolbar/index.umd.cjs +1 -1
  65. package/components/schema-selector/index.esm.js +6 -4
  66. package/components/schema-selector/index.umd.cjs +2 -2
  67. package/components/section/index.esm.js +1 -1
  68. package/components/section/index.umd.cjs +1 -1
  69. package/components/sort-condition-editor/index.esm.js +9 -7
  70. package/components/sort-condition-editor/index.umd.cjs +1 -1
  71. package/components/switch/index.esm.js +77 -78
  72. package/components/switch/index.umd.cjs +1 -1
  73. package/components/tabs/index.esm.js +5 -3
  74. package/components/tabs/index.umd.cjs +1 -1
  75. package/components/textarea/index.esm.js +1 -1
  76. package/components/textarea/index.umd.cjs +1 -1
  77. package/components/time-picker/index.esm.js +2 -2
  78. package/components/time-picker/index.umd.cjs +1 -1
  79. package/components/video/index.esm.js +1 -1
  80. package/components/video/index.umd.cjs +1 -1
  81. package/designer/button-edit/index.esm.js +211 -211
  82. package/designer/button-edit/index.umd.cjs +1 -1
  83. package/designer/checkbox/index.esm.js +1 -1
  84. package/designer/checkbox/index.umd.cjs +1 -1
  85. package/designer/checkbox-group/index.esm.js +25 -26
  86. package/designer/checkbox-group/index.umd.cjs +1 -1
  87. package/designer/data-grid/index.esm.js +15 -9
  88. package/designer/data-grid/index.umd.cjs +2 -2
  89. package/designer/farris-designer.all.esm.js +917 -916
  90. package/designer/farris-designer.all.umd.cjs +5 -5
  91. package/designer/input-group/index.esm.js +2 -1
  92. package/designer/input-group/index.umd.cjs +1 -1
  93. package/designer/list-view/index.esm.js +685 -689
  94. package/designer/list-view/index.umd.cjs +3 -3
  95. package/designer/radio-group/index.esm.js +7 -3
  96. package/designer/radio-group/index.umd.cjs +1 -1
  97. package/farris.all.esm.js +5641 -5603
  98. package/farris.all.umd.cjs +21 -21
  99. package/locales/data-grid/ui/en.json +2 -1
  100. package/locales/data-grid/ui/zh-CHS.json +2 -1
  101. package/locales/data-grid/ui/zh-CHT.json +2 -1
  102. package/locales/designer/en.json +2 -1
  103. package/locales/designer/zh-CHS.json +2 -1
  104. package/locales/designer/zh-CHT.json +2 -1
  105. package/locales/ui/en.json +2 -1
  106. package/locales/ui/zh-CHS.json +2 -1
  107. package/locales/ui/zh-CHT.json +2 -1
  108. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- (function(be,ee){typeof exports=="object"&&typeof module<"u"?ee(exports,require("../../components/common/index.umd.js"),require("../../components/data-grid/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("vue"),require("@vueuse/core"),require("../../components/popover/index.umd.js"),require("vue-i18n"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/checkbox/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/list-view/index.umd.js"),require("../../components/date-picker/index.umd.js"),require("../../components/number-spinner/index.umd.js"),require("../../components/search-box/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/accordion/index.umd.js"),require("../../components/avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/calendar/index.umd.js"),require("../../components/capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../checkbox-group/index.umd.js"),require("../../components/color-picker/index.umd.js"),require("../../components/combo-list/index.umd.js"),require("../../components/content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../../components/dropdown/index.umd.js"),require("../../components/external-container/index.umd.js"),require("../../components/image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../../components/layout/index.umd.js"),require("../../components/list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../../components/lookup/index.umd.js"),require("../../components/language-textbox/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-range/index.umd.js"),require("../../components/order/index.umd.js"),require("../../components/page-header/index.umd.js"),require("../../components/page-footer/index.umd.js"),require("../../components/progress/index.umd.js"),require("../../components/query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../../components/rate/index.umd.js"),require("../../components/response-toolbar/index.umd.js"),require("../../components/response-layout/index.umd.js"),require("../../components/response-layout-editor/index.umd.js"),require("../../components/section/index.umd.js"),require("../../components/smoke-detector/index.umd.js"),require("../../components/splitter/index.umd.js"),require("../../components/step/index.umd.js"),require("../../components/switch/index.umd.js"),require("../../components/tags/index.umd.js"),require("../../components/text/index.umd.js"),require("../../components/time-picker/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/uploader/index.umd.js"),require("../../components/verify-detail/index.umd.js"),require("../../components/component/index.umd.js"),require("../../components/video/index.umd.js"),require("../../components/textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../../components/fieldset/index.umd.js"),require("../drawer/index.umd.js"),require("../../components/html-template/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/combo-tree/index.umd.js"),require("../../components/events-editor/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/binding-selector/index.umd.js"),require("../../components/mapping-editor/index.umd.js"),require("../../components/schema-selector/index.umd.js"),require("../../components/event-parameter/index.umd.js"),require("../../components/filter-condition-editor/index.umd.js"),require("../../components/sort-condition-editor/index.umd.js"),require("../../components/menu-lookup/index.umd.js"),require("../../components/json-editor/index.umd.js"),require("../../components/property-editor/index.umd.js"),require("../../components/expression-editor/index.umd.js"),require("../../components/code-editor/index.umd.js"),require("../../components/collection-property-editor/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/notify/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/data-grid/index.umd.js","../../components/dynamic-resolver/index.umd.js","vue","@vueuse/core","../../components/popover/index.umd.js","vue-i18n","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/checkbox/index.umd.js","../../components/filter-bar/index.umd.js","../../components/pagination/index.umd.js","../../components/button/index.umd.js","../../components/list-view/index.umd.js","../../components/date-picker/index.umd.js","../../components/number-spinner/index.umd.js","../../components/search-box/index.umd.js","../../components/locale/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/accordion/index.umd.js","../../components/avatar/index.umd.js","../button-edit/index.umd.js","../../components/button-group/index.umd.js","../../components/calendar/index.umd.js","../../components/capsule/index.umd.js","../checkbox/index.umd.js","../checkbox-group/index.umd.js","../../components/color-picker/index.umd.js","../../components/combo-list/index.umd.js","../../components/content-container/index.umd.js","../data-grid/index.umd.js","../../components/dropdown/index.umd.js","../../components/external-container/index.umd.js","../../components/image-cropper/index.umd.js","../input-group/index.umd.js","../../components/layout/index.umd.js","../../components/list-nav/index.umd.js","../list-view/index.umd.js","../../components/lookup/index.umd.js","../../components/language-textbox/index.umd.js","../../components/nav/index.umd.js","../../components/number-range/index.umd.js","../../components/order/index.umd.js","../../components/page-header/index.umd.js","../../components/page-footer/index.umd.js","../../components/progress/index.umd.js","../../components/query-solution/index.umd.js","../radio-group/index.umd.js","../../components/rate/index.umd.js","../../components/response-toolbar/index.umd.js","../../components/response-layout/index.umd.js","../../components/response-layout-editor/index.umd.js","../../components/section/index.umd.js","../../components/smoke-detector/index.umd.js","../../components/splitter/index.umd.js","../../components/step/index.umd.js","../../components/switch/index.umd.js","../../components/tags/index.umd.js","../../components/text/index.umd.js","../../components/time-picker/index.umd.js","../../components/tree-view/index.umd.js","../../components/uploader/index.umd.js","../../components/verify-detail/index.umd.js","../../components/component/index.umd.js","../../components/video/index.umd.js","../../components/textarea/index.umd.js","../tree-grid/index.umd.js","../../components/fieldset/index.umd.js","../drawer/index.umd.js","../../components/html-template/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/combo-tree/index.umd.js","../../components/events-editor/index.umd.js","../../components/field-selector/index.umd.js","../../components/binding-selector/index.umd.js","../../components/mapping-editor/index.umd.js","../../components/schema-selector/index.umd.js","../../components/event-parameter/index.umd.js","../../components/filter-condition-editor/index.umd.js","../../components/sort-condition-editor/index.umd.js","../../components/menu-lookup/index.umd.js","../../components/json-editor/index.umd.js","../../components/property-editor/index.umd.js","../../components/expression-editor/index.umd.js","../../components/code-editor/index.umd.js","../../components/collection-property-editor/index.umd.js","../../components/designer-canvas/index.umd.js","../../components/data-view/index.umd.js","../../components/notify/index.umd.js"],ee):(be=typeof globalThis<"u"?globalThis:be||self,ee(be["data-grid"]={},be.common,be.FDataGrid,be.dynamicResolver,be.Vue,be.VueUseCore,be.FPopover,be.vueI18n,null,be.LodashES,null,null,be.checkbox,null,null,be.FButton,null,null,null,null,be.locale,be.condition,be.FDynamicForm,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,be.FTags,null,null,be.FTreeview,null,null,null,null,null,null,null,null,null,be.designer$1,be.propertyPanel,null,null,be.FFieldSelector,null,null,null,null,null,null,null,null,null,null,null,null,be.designerCanvas,be.dataView,be.notify))})(this,function(be,ee,wt,pt,i,en,Kn,ut,hl,Ne,gl,yl,zt,vl,bl,tn,Cl,wl,Sl,xl,Rt,Se,eo,Fl,Tl,Ml,_l,El,kl,Vl,Il,Pl,Nl,Bl,Ol,jl,Rl,$l,Al,Ll,Hl,Dl,ql,Wl,zl,Gl,Ul,Yl,Xl,Zl,Jl,Ql,Kl,es,ts,ns,os,is,rs,as,ls,to,ss,cs,no,ds,us,fs,ms,ps,hs,gs,ys,vs,nt,ot,bs,Cs,$t,ws,Ss,xs,Fs,Ts,Ms,_s,Es,ks,Vs,Is,Ps,at,ce,nn){"use strict";var ml=Object.defineProperty;var pl=(be,ee,wt)=>ee in be?ml(be,ee,{enumerable:!0,configurable:!0,writable:!0,value:wt}):be[ee]=wt;var le=(be,ee,wt)=>pl(be,typeof ee!="symbol"?ee+"":ee,wt);const oo={customClass:{type:String,default:""},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:!1,keepSelectingOnClick:!0}},selectionValues:{type:Array,default:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1},emptyTemplate:{type:Object}},io=ee.excludeProperties(Object.assign({},oo,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function ro(n,e,t,o,r){const{getGridHeaderCells:l}=r,a=120,s=50,u=i.computed(()=>{var g;return((g=n.rowNumber)==null?void 0:g.enable)||!1}),d=i.computed(()=>{var g,C;return((g=n.selection)==null?void 0:g.multiSelect)||((C=n.selection)==null?void 0:C.showCheckbox)||!1}),m=i.computed(()=>{var g;return 0+(u.value?((g=n.rowNumber)==null?void 0:g.width)||32:0)+(d.value?s:0)}),c=i.computed(()=>{var g;return(g=n.columnOption)==null?void 0:g.fitColumns}),f=i.computed(()=>{var g;return c.value&&((g=n.columnOption)==null?void 0:g.fitMode)||"none"});function p(g,C,E){const O=parseInt(g.width,10)/100;return E*O}function h(g,C,E){return typeof g.width=="string"?p(g,C,E):g.width||a}function v(g,C){const E=[],O=[];let V=0;g.value.primaryColumns.forEach(I=>{typeof I.width=="string"?O.push(I):(I.width=I.width||a,V+=I.width,E.push(I))});const B=C*(E.length/g.value.primaryColumns.length);E.forEach(I=>{const F=B*(I.width/V);I.actualWidth=F,g.value.primaryColumnsWidth+=I.actualWidth});const R=C-B;O.forEach(I=>{const F=p(I,g.value,R);I.actualWidth=F,g.value.primaryColumnsWidth+=I.actualWidth})}function S(g,C){const E=[],O=[],V=new WeakMap;let B=0,R=0;if(g.value.primaryColumns.forEach(F=>{if(typeof F.width=="string"){const _=p(F,g.value,C);V.set(F,_),B+=_,O.push(F)}else F.width=F.width||a,R+=F.width,E.push(F)}),C-B>R){const F=C-B;O.forEach(_=>{_.actualWidth=V.get(_)||a,g.value.primaryColumnsWidth+=_.actualWidth}),E.forEach(_=>{_.actualWidth=F*(_.width/R),g.value.primaryColumnsWidth+=_.actualWidth})}else v(g,C)}function T(g,C){g.value.primaryColumns.forEach(E=>{E.actualWidth=h(E,g.value,C),g.value.primaryColumnsWidth+=E.actualWidth})}const x={expand:S,none:T,percentage:v};function w(g){g.value.leftHeaderColumns=Array.from(l(g.value.leftColumns).values()),g.value.primaryHeaderColumns=Array.from(l(g.value.primaryColumns).values()),g.value.rightHeaderColumns=Array.from(l(g.value.rightColumns).values())}function M(g){g.value.leftColumnsWidth=0,g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,g.value.leftColumns.forEach(C=>{g.value.leftColumnsWidth+=C.actualWidth||0}),g.value.primaryColumns.forEach(C=>{g.value.primaryColumnsWidth+=C.actualWidth||0}),g.value.rightColumns.forEach(C=>{g.value.rightColumnsWidth+=C.actualWidth||0}),g.value=Object.assign({},g.value)}function y(g,C,E){var _;let O=0;const V=g.value.primaryColumns,B=g.value.rightColumns;g.value.rightColumns.forEach($=>{$.actualWidth=h($,g.value,C),O+=$.actualWidth});const R=E-O,I=x[f.value];if(I&&I(g,R),g.value.primaryColumnsWidth+O<=E)return g.value.primaryColumns=[...V,...B],g.value.primaryColumnsWidth+=O,g.value.rightColumns=[],g.value.rightColumnsWidth=0,!0;const F=new Map;return F.set("primary",[]),F.set("right",[]),g.value.primaryColumns.reduce(($,P)=>{var A,j;return P.fixed==="right"?(A=$.get("right"))==null||A.push(P):(j=$.get("primary"))==null||j.push(P),$},F),(_=F.get("right"))!=null&&_.length&&(g.value.primaryColumns=[...F.get("primary")||[]],g.value.rightColumns=[...F.get("right")||[]]),g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,!1}function b(){if(t.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const g=t.value.clientWidth-m.value;e.value.leftColumns.forEach(E=>{E.actualWidth=h(E,e.value,g),e.value.leftColumnsWidth+=E.actualWidth});const C=g-e.value.leftColumnsWidth;if(y(e,g,C))o.value=C;else{e.value.rightColumns.forEach(V=>{V.actualWidth=h(V,e.value,g),e.value.rightColumnsWidth+=V.actualWidth});const E=g-e.value.leftColumnsWidth-e.value.rightColumnsWidth,O=x[f.value];O&&O(e,E),o.value=E}w(e),e.value=Object.assign({},e.value)}}return i.watch(()=>{var g;return(g=n.columnOption)==null?void 0:g.fitColumns},(g,C)=>{g!==C&&g&&b()}),i.watch(f,(g,C)=>{g!==C&&c.value&&b()}),{calculateColumnHeaders:w,calculateColumnsSize:b,calculateColumnsWidth:M}}const ao="";function lo(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 l=i.ref(n.summary),a=i.computed(()=>{const y=l.value;return(y==null?void 0:y.groupFields)||[]});function s(){o.value.rightColumns.forEach(g=>{g.showSetting=!1}),o.value.primaryColumns.forEach(g=>{g.showSetting=!1});const y=o.value.rightColumns,b=o.value.primaryColumns;y.length>0?y[y.length-1].showSetting=!0:b.length>0&&(b[b.length-1].showSetting=!0)}function u(y){r();const b=new Map;return a.value&&a.value.reduce((g,C)=>(g.set(C,!0),g),b),y.reduce((g,C)=>(C.filter=C.filter||ao,C.fixed==="left"?(o.value.leftColumns.push(C),o.value.leftColumnsMap.set(C.field,C),o.value.leftColumnsWidth+=C.actualWidth):C.fixed==="right"?(o.value.rightColumns.push(C),o.value.rightColumnsMap.set(C.field,C),o.value.rightColumnsWidth+=C.actualWidth):(o.value.primaryColumns.push(C),o.value.primaryColumnsMap.set(C.field,C),o.value.primaryColumnsWidth+=C.actualWidth),b.has(C.field)&&o.value.summaryColumns.push(C),g),o),s(),o}u(n.columns);const d=i.computed(()=>o.value.leftColumns.length>0),m=i.computed(()=>o.value.rightColumns.length>0);function c(y,b){return b.sortable&&b.sort&&b.sort!=="none"&&y.push(b),y}function f(y,b){return y.sortOrder=y.sortOrder||0,b.sortOrder=b.sortOrder||0,y.sortOrder===b.sortOrder?0:y.sortOrder<b.sortOrder?-1:1}function p(y,b){return y.sortOrder=y.sortOrder||0,b.sortOrder=b.sortOrder||0,y.sortOrder===b.sortOrder?0:y.sortOrder<b.sortOrder?1:-1}function h(y,b){return b.filterable&&y.push(b),y}function v(){const y=[];return o.value.leftColumns.reduce(h,y),o.value.primaryColumns.reduce(h,y),o.value.rightColumns.reduce(h,y),y}function S(){const y=[];o.value.leftColumns.reduce(c,y),o.value.primaryColumns.reduce(c,y),o.value.rightColumns.reduce(c,y);const b=Math.max(...y.map(g=>g.sortOrder||0));return y.sort(p).map(g=>{const C=g.sortOrder||b+1;return g.sortOrder=C,g}).sort(f).map((g,C)=>{const E=C+1;return g.sortOrder=E,g})}function T(y,b,g){const C=y.map(E=>{const O=g.getSorterByColumn(E),V=E.sort==="asc",B=E.sort==="desc",R=V?O.ascend:B?O.decend:void 0;return{field:E.field,compare:R}});b.setSorters(C)}function x(y,b){const g=S();T(g,y,b)}function w(y){}function M(y){}return{applyColumnSorter:x,collectionFilterableColumns:v,applySortableColumns:T,collectionSortableColumns:S,columnContext:o,hasLeftFixedColumn:d,hasRightFixedColumn:m,updateColumnRenderContext:u,updateColumnSettingIcon:s,sortFromServer:w,createSortConditions:M}}function so(n,e,t,o,r,l,a,s){const u=i.ref(o.value-1+r),d=i.ref(0),{renderDataRow:m}=l,c=a?a.renderGroupRow:m,f=s?s.renderSummaryRow:m;function p(S){let T=m;return S.__fv_data_grid_group_row__&&(T=c),S.__fv_data_grid_group_summary__&&(T=f),T}function h(S,T,x,w){const{dataView:M}=t,y=[];if(M.value.length>0){const b=w?Date.now().toString():"";let g=S,C=0;const E=T-S+1;for(;y.length<E&&g<M.value.length;){const O=M.value[g],V=M.value[g-1]||x,B=y[C-1],R=V?(V.__fv_data_position__||0)+(V.__fv_data_height__||0):0,F=p(O)(O,V,B,g,R,e.value,y);F.refreshKey=b,y.push(F),C++,g++}}return d.value=y.length>0?y[0].index:0,u.value=y.length>0?y[y.length-1].index:0,y}function v(S,T,x){const w=T.groupField||"",{groupValue:M,raw:y}=T;t[S](w,M,y.groupParents||[]);const{dataView:b}=t,g=x[0].index,C=Math.min(g+o.value+r+1,b.value.length-1);return h(g,C)}return{getVisualData:h,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:v}}var He=(n=>(n[n.readonly=0]="readonly",n[n.editable=1]="editable",n[n.editing=2]="editing",n))(He||{}),lt=(n=>(n[n.initial=0]="initial",n[n.editing=1]="editing",n))(lt||{}),St=(n=>(n[n.data=0]="data",n[n.group=1]="group",n[n.summary=2]="summary",n))(St||{}),We=(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))(We||{}),st=(n=>(n.DATE="date",n.DATE_TIME="datetime",n.NUMBER="number",n.ENUM="enum",n.IMAGE="image",n.BOOLEAN="boolean",n.BOOLEAN2="boolean2",n.TIMEAGO="timeago",n.NONE="none",n.CUSTOM="custom",n.MULTI_LINGUAL="multilingual",n))(st||{});const co="__command__",uo=150,fo="right",on="commands";function mo(n,e,t){const{horizontalScrollThumbStyle:o,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:l}=t;function a(){return l.value&&i.createVNode("div",{class:"fv-grid-horizontal-scroll"},[i.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:o.value,onMousedown:s=>r(s,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function po(n){const{t:e}=ut.useI18n();function t(a,s){switch(a.command){case"edit":case"remove":return s.status===lt.initial;case"accept":case"cancel":return s.status===lt.editing;default:return!a.hidden}}function o(a,s,u,d){var m,c,f,p,h;switch((m=a.onClick)==null||m.call(a,s,u.dataIndex,u),a.command){case"edit":u.status,lt.editing,(f=(c=n.commandOption)==null?void 0:c.onClickEditCommand)==null||f.call(c,d,u);break;case"accept":case"cancel":u.status,lt.initial;break;case"remove":(h=(p=n.commandOption)==null?void 0:p.onClickDeleteCommand)==null||h.call(p,d,u);break}}function r(a){return a==="编辑"?e("datagrid.commandColumn.edit"):a==="确定"?e("datagrid.commandColumn.accept"):a==="取消"?e("datagrid.commandColumn.cancel"):a==="删除"?e("datagrid.commandColumn.remove"):a}function l(a,s){const{column:u}=a;return u.commands&&u.commands.map((d,m)=>m?t(d,s)&&i.createVNode(tn,{class:"ml-1",type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}):t(d,s)&&i.createVNode(tn,{type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}))}return{renderCommandColumn:l}}function ho(n){const e=i.ref(n.minHeight),t=i.ref(n.minWidth),o=i.ref(n.height),r=i.ref(n.width),l=i.computed(()=>o.value<=0?0:Math.max(o.value,e.value)),a=i.computed(()=>r.value<=0?0:Math.max(r.value,t.value));return i.watch([()=>n.height,()=>n.width,()=>n.minHeight,()=>n.minWidth],([u,d,m,c])=>{e.value=Number(m),t.value=Number(c),o.value=Number(u),r.value=Number(d)}),{containerStyleObject:i.computed(()=>({height:l.value>0?`${l.value}px`:n.fit?"100%":"",width:a.value>0?`${a.value}px`:n.fit?"100%":"",flex:"1 1 0"}))}}function go(n){var l,a;const{t:e}=ut.useI18n(),t=i.ref(((l=n.commandOption)==null?void 0:l.enable)||!1),o=i.ref(((a=n.commandOption)==null?void 0:a.commands)||[]);function r(s){var u;if(t.value&&!(s.value.findIndex(m=>m.dataType===on)>-1)){const m={field:co,title:e("datagrid.commandColumn.title"),width:uo,fixed:fo,dataType:on,commands:o.value,resizable:!1,halign:((u=n.commandOption)==null?void 0:u.halign)||"left",visible:!0,formatter:n.commandOption.formatter?(c,f)=>n.commandOption.formatter(c,f):null};s.value.push(m)}}return{applyCommands:r}}function yo(n,e){var d;const t=i.ref((d=n.columnOption)==null?void 0:d.groups);function o(m,c,f,p,h){const v={actualWidth:0,children:[],depth:1,field:m.field,layer:1,left:0,parent:f,resizable:!0,title:m.title||"",status:We.none,popoverRef:i.ref(),showPopover:!1,column:null,sortType:"none"},S=p||v;if(m.group){let T=1;m.group.reduce((x,w)=>{if(typeof w=="string"){const M=c.get(w);M&&(h.fieldToRootMap.set(w,S),x.actualWidth+=M.actualWidth,x.children.push(M))}else{const M=o(w,c,x,S,h);T=Math.max(T,M.depth),x.actualWidth+=M.actualWidth,x.children.push(M)}return x},v),v.depth+=T}return e.value.headerDepth=Math.max(e.value.headerDepth,v.depth),v}function r(m){const c={groupedCells:new Map,fieldToRootMap:new Map};return t.value&&t.value.reduce((f,p)=>{const h=o(p,m,null,null,c);return f.groupedCells.set(p.field,h),f},c),c}function l(m){if(!m||m.length===0)return 0;const c=m[0];return c.children&&c.children.length>0&&(c.left=l(c.children)),c.left}function a(m,c){const f=e.value.headerDepth;m.forEach(p=>{p.layer=c?c.layer+1:1;const h=p.children&&p.children.length===0;p.depth=h?f-(p.layer-1):1,p.left=h?p.left:l(p.children),p.children&&a(p.children,p)})}function s(m,c){const f=new Map;return m.forEach(p=>{const h=c.fieldToRootMap.get(p.field),v=h!=null;v&&!f.has(h.field)&&f.set(h.field,h),v||f.set(p.field,p)}),a(Array.from(f.values())),f}function u(m){let c=new Map,f=0;if(m.reduce((p,h)=>{let v=We.none;v=h.sortable?v|We.sortable:v,v=h.filterable?v|We.filterable:v,v=h.sort&&h.sort!=="none"?v|We.sorted|(h.sort==="asc"?We.ascending:We.descending):v;const S=h.field;return p.set(S,{actualWidth:h.actualWidth||0,children:[],depth:1,layer:1,left:f,field:S,parent:null,resizable:h.resizable===void 0?!0:h.resizable,title:h.title,status:v,popoverRef:i.ref(),showPopover:!1,column:h,filterValue:null,sortType:h.sort||"none",showSetting:h.showSetting,draggable:h.draggable}),f+=h.actualWidth||0,p},c),t.value){const p=r(c);c=s(c,p)}return c}return{getGridHeaderCells:u}}function vo(n,e){var x;ee.useGuid();const{idField:t}=e,o=i.ref(n.summary),r=i.ref(n.group),l=i.ref(((x=n.group)==null?void 0:x.groupFields)||[]),a=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}),u=i.computed(()=>{const w=o.value;return(w==null?void 0:w.groupFields)||[]}),d=i.computed(()=>{const w=r.value;return w&&w.showSummary}),m=i.ref(0),c=new Map;let f=[];function p(w,M,y,b,g){const C=b[y];C&&(M.reduce((E,O,V)=>{var I;const B=O[C];let R=E.get(B);if(!R){const F=u.value.reduce((_,$)=>(_.set($,0),_),new Map);R={field:C,title:((I=g.get(C))==null?void 0:I.title)||C,value:B,layer:y,details:[],groupSummaries:F},E.set(B,R)}return u.value&&u.value.forEach(F=>{if(R){const _=R.groupSummaries.get(F)||0;R.groupSummaries.set(F,_+O[F])}}),u.value&&u.value.forEach(F=>{if(R){const _=R.groupSummaries.get(F)||0;R.groupSummaries.set(F,Number(_.toFixed(2)))}}),R.details.push(O),E},w),y<b.length-1&&w.forEach((E,O)=>{E.nestGroup=new Map,p(E.nestGroup,E.details,y+1,b,g),E.details=[]}))}function h(w,M){return n.group&&n.group.formatter?n.group.formatter(w.value,{...w,total:M}):`${w.title}:${w.value} (${M})`}function v(w,M){const y=[];return w.forEach(b=>{const g={[t.value]:`group_of_${M?M[t.value]+"_":""}${b.field}_${b.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:b.field,__fv_data_grid_group_layer__:b.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:b.value,groupParents:[]};M&&(g.groupParents=[...M.groupParents,M]);let C=0;if(y.push(g),b.nestGroup){const E=v(b.nestGroup,g);y.push(...E),C+=E.length}if(b.details&&b.details.length&&(y.push(...b.details),C+=b.details.length),d.value){const E={__fv_data_grid_group_field__:b.field,__fv_data_grid_group_layer__:b.layer,__fv_data_grid_group_summary__:!0};E[t.value]=`summary_of_${b.field}_${b.value}`,E[b.field]=Array.from(b.groupSummaries.entries()).reduce((O,[V,B])=>`${O} ${V} total:${B} `,""),y.push(E)}b.groupSummaries&&b.groupSummaries.size&&b.groupSummaries.forEach((E,O)=>{g[O]=E}),g[b.field]=h(b,C),g.value=b.value}),y.forEach((b,g)=>{b.__fv_data_index__=g}),y}function S(w,M,y){return!w||w.length===0||!M.length?M:(w.join(","),c.clear(),f=[],M=M.filter(b=>!b.__fv_data_grid_group_row__),p(c,M,0,w,y),f=v(c),f)}function T(w){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":w.collapse}}return{collpaseGroupIconClass:T,generateGroupData:S,groupFields:l,shouldGroupingData:a,showGroupPanel:s,groupRowSize:m}}function rn(n){const e="parent",t="layer",o="hasChildren",r=(a,s=1,u=[],d=null)=>(a=a||[],a.reduce((m,c)=>(c.id=c.id||c.data[n.idField],c[e]=d,c[t]=s,c[o]=c[o]===void 0?!1:c[o],c.data&&Object.keys(c.data).forEach(f=>{Object.keys(c).includes(f)||(c[f]=c.data[f])}),u.push(c),c.children&&c.children.length&&(c[o]=!0,r(c.children,s+1,u,c.id)),m),u),u);return{flatTreeData:r,isNestedTree:a=>a.some(s=>Array.isArray(s.children))}}function bo(n,e,t,o){const r=i.ref(0),l=i.ref(!!n.hierarchy),{idField:a}=o,{collapseField:s,hasChildrenField:u,parentIdField:d}=t,m=new Map,c=new Map,f=new Map,{flatTreeData:p,isNestedTree:h}=rn(n);function v(W,q){c.clear(),W.reduce((H,Y)=>{const se=Y[d.value]!==void 0?Y[d.value]:"";if(se&&q.has(se)){const me=q.get(se),ue=isNaN(Number(me.__fv_layer__))?1:Number(me.__fv_layer__);Y.__fv_layer__=ue+1,Y.__fv_parent_index__=me.__fv_index__,me.__fv_hasChildren__=!0}else Y.__fv_layer__=1;const pe=H.has(se)?H.get(se):[];return pe.push(Y),H.set(se,pe),H},c)}function S(W){f.clear(),W.reduce((q,H)=>{const Y=H[a.value];return q.set(Y,H),q},f)}function T(W){W.forEach(q=>{const H=q[a.value];q.__fv_children_index__.map(se=>W[se]).forEach(se=>{se.__fv_parents__=new Map([...q.__fv_parents__.entries(),[H,!0]])})})}function x(W){W.forEach(q=>{const H=new Set(q.__fv_children_index__);q.__fv_children_index__=[...H].sort((Y,se)=>Y-se)})}function w(W){W.forEach(q=>{const H=q.__fv_parents__;Array.from(H.keys()).map(Y=>f.get(Y)).forEach(Y=>{Y.__fv_children_index__.push(q.__fv_index__)})}),x(W)}function M(W){W.forEach(q=>{q.__fv_child_with_lines__=[],q.__fv_child_length__=q.__fv_descendant_index__.length,q.__fv_descendant_index__.map(H=>W[H]).reduce((H,Y)=>(H.__fv_child_length__+=Y.__fv_children_index__.length,H.__fv_child_with_lines__.push(...Y.__fv_children_index__,Y.__fv_index__),H),q)})}function y(W,q){return{id:W,index:q,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function b(W,q,H){Array.from(q.keys()).forEach(Y=>{q.get(Y).reduce((pe,me)=>{const ue=me[a.value],xe=W.get(me[a.value]),Pe=W.get(Y),he=H.get(Y);return Pe&&he&&(Pe.children.set(ue,xe),Pe.children.set(ue,xe),xe.parentId=Y,xe.parentIndex=Pe.index,xe.parents.set(Y,Pe)),pe},W)})}function g(W){W.children.forEach(H=>{H.parents=new Map([...W.parents.entries(),[W.id,W]]),g(H)})}function C(W,q){W.filter(H=>H[d.value]===void 0||H[d.value]==="").forEach(H=>{const Y=H[a.value],se=q.get(Y);g(se)})}function E(W){Array.from(W.values()).forEach(q=>{Array.from(q.parents.values()).forEach(H=>{H.descendant.set(q.id,q)})})}function O(W){m.clear(),W.forEach((q,H)=>{const Y=q[a.value];m.set(Y,y(Y,H))}),S(W),v(W,f),b(m,c,f),C(W,m),E(m)}function V(W){const q=W[a.value],H=m.get(q);return H&&H.children.size>0}function B(W){return W[u.value]&&!V(W)}function R(W){const q=W[a.value],H=m.get(q);return H&&H.visibleInHierarchy}function I(){r.value=Date.now()}function F(W,q){q.forEach(H=>{const Y=m.get(H[a.value]),se=m.get(W),pe=f.get(W);se&&pe&&(Y.visibleInHierarchy=!pe[s.value]&&se.visibleInHierarchy)}),I()}function _(W){if(c.has(W)){const H=c.get(W);F(W,H),H.map(Y=>Y[a.value]).forEach(Y=>_(Y))}}function $(W){const q=W[a.value];_(q)}function P(W,q,H=0){W.forEach(Y=>{const se=B(Y),pe=Y.__fv_layer__<=H,me=q==="ToCollapse"?Y.__fv_layer__<=H:!(Y.__fv_layer__<=H),ue=pe?me:Y[s.value];Y[s.value]=se||ue});for(const[Y,se]of c.entries())F(Y,se);return W}function A(W,q){P(W,"ToCollapse",q)}function j(W,q){P(W,"ToExpand",q)}function N(W){W.forEach((q,H)=>{var me;const Y=q[a.value],se=c.has(Y)?(me=c.get(Y))==null?void 0:me.map(ue=>ue.__fv_index__):[],pe=y(Y,H);q.__fv_graph_node__=pe,q.__fv_children_index__=se,q.__fv_descendant_index__=[...se],q.__fv_parents__=new Map,B(q)&&(q[s.value]=!0)})}function D(W){var Y,se;O(e.value),N(W),T(W),w(W),n.showLines&&M(W);const H=((Y=n.hierarchy)==null?void 0:Y.collapseTo)!==void 0?Number((se=n.hierarchy)==null?void 0:se.collapseTo):0;return P(W,"ToCollapse",H),W}function J(W,q,H){const se=H.value[W][a.value],pe=m.get(se);if(pe){const me=m.get(pe.parentId);let ue=H.value.length-1;if(me){const xe=Array.from(me.children.keys()).indexOf(pe.id);if(xe===me.children.size-1){const he=Array.from(me.descendant.values())[me.descendant.size-1];ue=H.value.findIndex(G=>G[a.value]===he.id)+1}else{const he=Array.from(me.children.values())[xe+1];ue=H.value.findIndex(G=>G[a.value]===he.id)}q[u.value]=!1,q[d.value]=me.id,H.value.splice(ue,0,q)}}}function ne(W,q,H){const Y=H.value[W],se=Y[a.value];if(m.get(se)){const ue=H.value.findIndex(xe=>xe[a.value]===se)+1;Y[u.value]=!0,Y[s.value]=!1,q[u.value]=!1,q[d.value]=se,H.value.splice(ue,0,q)}}function X(W,q,H){const se=H.value[W][a.value];if(m.get(se)){const ue=H.value.findIndex(Pe=>Pe[a.value]===se)+1;let xe=q;h(q)&&(xe=p(q)),xe.forEach(Pe=>{Pe[d.value]=se}),H.value.splice(ue,0,...xe)}}function ie(W,q){const H=W[a.value],Y=m.get(H),se=Array.from(Y.descendant.keys());se.unshift(H);const pe=m.get(Y.parentId);if(pe&&(pe.children.delete(H),pe.children.size===0)){const ue=q.find(xe=>xe[a.value]===Y.parentId);ue[u.value]=!1,ue[s.value]=!1}return q.filter(ue=>se.indexOf(ue.id)===-1)}return{checkVisibleInHierarchy:r,collapseTo:A,expandTo:j,generateHierarchyData:D,hasRealChildren:V,insertSibling:J,insertChild:ne,insertChildren:X,isVisibleInTree:R,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:$,trimmedOriginalData:ie}}const Co={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}},wo={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Gt=i.defineComponent({name:"Toast",props:wo,emits:["close","click"],setup:(n,e)=>{const{locale:t,t:o}=ut.useI18n(),r=i.ref(n.animate),l="fadeOut",a=i.computed(()=>n.options),s=i.ref(!1),u=i.computed(()=>a.value.title&&a.value.message),d=i.computed(()=>!a.value.title&&a.value.message),m=i.computed(()=>{const M={animated:s.value,toast:!0,"toast--only-content":!u.value};return M[n.animate]=!1,M[l]=s.value,M["toasty-type-"+a.value.type]=!0,a.value.theme&&(M[a.value.theme]=!0),M}),c=i.computed(()=>{const b=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,g={"f-icon":!0};return g[b]=!0,g}),f=i.computed(()=>a.value.title||a.value.message),p=i.computed(()=>n.showCloseButton),h=i.computed(()=>!!a.value.buttons||!!e.slots.default),v=i.computed(()=>t.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function S(M){M.stopPropagation(),M.preventDefault(),s.value=!1,setTimeout(()=>{e.emit("close",a.value)},200)}function T(M,y){}function x(M){return`f-preten-link ${M.customClass?M.customClass:""}`}i.watch(r,()=>{r.value});const w=()=>{var M;return i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((M=a.value.buttons)==null?void 0:M.map(y=>i.createVNode("span",{class:x(y),onClick:b=>void 0},[y.text]))),e.slots.default&&e.slots.default()])])};return()=>i.createVNode("div",{class:m.value,style:"min-height:44px"},[p.value&&i.createVNode("button",{title:o("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:S},[i.createVNode("span",{class:"f-icon modal_close"},null)]),f.value&&i.createVNode("section",{class:"modal-tips"},[!u.value&&i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:c.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[u.value&&i.createVNode(i.Fragment,null,[i.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),i.createVNode("p",{class:"toast-msg",innerHTML:a.value.message,style:v.value},null),h.value&&w()]),d.value&&(a.value.buttons?i.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:v.value,innerHTML:a.value.message},null),i.createVNode("div",{class:"after-toast-title text-right ml-auto"},[w()])]):i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:v.value,innerHTML:a.value.message},null))])])])}}),At=i.defineComponent({name:"Notify",props:Co,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(),l=i.ref(n.options),a=i.ref(n.showCloseButton),s=i.computed(()=>n.position||"bottom-right"),u=i.computed(()=>n.timeout!=null?n.timeout:3e3),d=i.computed(()=>{const f=n.bottom?n.bottom:o.bottom,p=n.top?n.top:o.top,h={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?`${p}px`:"",bottom:s.value.indexOf("bottom")>-1?`${f}px`:""};return s.value.indexOf("center")>-1&&(h.left="50%",h.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(h.top="50%",h.transform="translate(-50%, -50%)")),h});function m(f){e.emit("close")}u.value&&setTimeout(()=>{m()},u.value),e.expose({closeToast:m,container:r,notifyPosition:s});function c(f,p){m()}return()=>i.createVNode("div",{class:t.value,style:d.value,ref:r},[i.createVNode(Gt,{options:l.value,showCloseButton:a.value,animate:n.animate,onClose:f=>c(f,l.value)},null)])}});class an{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(/\\n/g,"<br>").replace(/\\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/\\r/g,"")}createNotifyInstance(e){const t=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...e}),l=document.createElement("div");l.style.display="contents";const a=i.createApp({setup(){var d;const s=i.ref();function u(){s.value.container.style.transform="scale(0)",setTimeout(()=>{t.updateNotifyPositionForClose(r,s),a.unmount()},220)}if(r.position.indexOf("top")>-1){const m=t.getNotifyInstances(r.position),c=m[m.length-1];if(c){const f=c.value.container.getBoundingClientRect();r.top=f.bottom}}return r.safeHtml&&((d=r.options)!=null&&d.message)&&(r.options.message=t.escapeAllHtml(r.options.message)),i.onUnmounted(()=>{document.body.removeChild(l)}),i.onMounted(()=>{t.updateNotifyPositionForCreate(r,s)}),()=>i.createVNode(i.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[i.createVNode(At,i.mergeProps({ref:s},r,{onClose:u}),null)]})}});return a.provide("NotifyService",this),document.body.appendChild(l),a.use(Rt.LocaleService.i18n),a.mount(l),a}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 l=r.value.container.getBoundingClientRect();r.value.container.style.bottom=l.height+o-l.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),l=r.indexOf(t);r.slice(l+1).forEach(a=>{a.value.container.style.top=a.value.container.offsetTop-a.value.container.offsetHeight+"px"})}o>-1&&this.notifyRefs.splice(o,1)}show(e){return this.createNotifyInstance(e)}buildNotifyProps(e,t){let o="",r="",l,a,s;typeof t=="string"?o=t:t&&(o=t.message||"",r=t.title||"",a=t.position||null,s=t.showCloseButton!=null?t.showCloseButton:null,l=t.timeout!=null?t.timeout:null);const d={options:{type:e,message:o,title:r}};return a!=null&&(d.position=a),s!=null&&(d.showCloseButton=s),l!=null&&(d.timeout=l),d}info(e){const 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 So=Symbol("NOTIFY_SERVICE_TOKEN");At.install=n=>{n.component(At.name,At),n.component(Gt.name,Gt);const e=new an;n.provide(So,e),n.provide("FNotifyService",e)};function xo(n,e,t,o,r){const{toNumber:l}=ee.useNumberFormat(),a=new Map,s=new Map,u=new Map,d=new Map,m=new Map,c=i.ref([]),f=i.ref([]),p=vo(n,r),{generateGroupData:h,groupFields:v,shouldGroupingData:S}=p,T=i.ref(n.data||[]),x=bo(n,T,o,r),{collapseTo:w,expandTo:M,generateHierarchyData:y,hasRealChildren:b,insertSibling:g,insertChild:C,insertChildren:E,isVisibleInTree:O,shouldStratifyData:V,toggleChildrenVisibiltyByCollapseStatus:B,trimmedOriginalData:R,checkVisibleInHierarchy:I}=x,{idField:F,reviseIdentifyField:_}=r,$=i.ref(n.newDataItem),P=i.ref(n.data||[]),A=i.ref(n.data),{flatTreeData:j,isNestedTree:N}=rn(n);if(n.hierarchy&&N(n.data)){const k=j(n.data);T.value=k,P.value=k,A.value=k}const D=i.ref(n.summary),J=i.computed(()=>{const k=D.value;return(k==null?void 0:k.groupFields)||[]});let ne=new Map;const X=i.ref(P.value.length),ie=i.ref(n.pagination);function W(){return ie.value&&ie.value.enable&&ie.value.size>0?ie.value.size:P.value.length}const q=i.ref(1),H=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode!=="server"),Y=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode==="server"),se=new an;function pe(k,L){const z=Math.ceil(k.length/L);let Q=0;const de=[],ye=[],Be=[];for(;Q<z;){const ke=k.slice(Q*L,(Q+1)*L),Ce=h(v.value,ke,e);ye[Q]=Ce.filter(Te=>Te.__fv_data_grid_group_row__).length,de.push(...Ce),Q++}return ye.reduce((ke,Ce,Te)=>(ke=ke+Ce,Be.push(ke),ke),0),{groupData:de,groupRowSizeList:ye,accumulateGroupRowSize:Be}}function me(){var Ce;P.value=T.value,H.value&&(X.value=P.value.length),S.value&&!H.value&&(P.value=h(v.value,T.value,e)),ne=J.value.reduce((Te,we)=>(Te.set(we,0),Te),ne);const k=0,L=W(),z=(q.value-1)*L;let de=z>P.value.length-1||Y.value?k:z,ye=Y.value?P.value.length:Math.min(de+L,P.value.length);if(S.value&&H.value){const{accumulateGroupRowSize:Te,groupData:we,groupRowSizeList:Me}=pe(T.value,L);P.value=we;const Re=Me[q.value-1];de+=q.value-2<0?0:Te[q.value-2],ye=de+L+Re}let Be=0;const ke=[];if(P.value.length){_(P.value);const Te=F.value!==n.idField;for(let we=de;we<ye;we++){const Me=P.value[we];Me.__fv_data_grid_group_row__?(Be=0,Me.__fv_data_index__=""):Me.__fv_data_grid_group_summary__?Me.__fv_data_index__="":(Be++,Me.__fv_data_index__=Be+(q.value-1)*L),Me.__fv_index__=we,Me.__fv_visible_index__=we,n.rowOption&&n.rowOption.disabledField&&(Me.__fv_disabled__=Me[(Ce=n.rowOption)==null?void 0:Ce.disabledField]),Te&&(Me[F.value]=we),J.value.forEach(Re=>{const Ae=ne.get(Re)||0;ne.set(Re,Ae+ee.resolveField(Me,Re))}),ke.push(Me)}}return V.value&&y(ke),J.value.forEach(Te=>{const we=ne.get(Te)||0;ne.set(Te,l(we.toFixed(2)))}),A.value=[...ke],ke}const ue=i.ref(me()),xe=i.computed(()=>(I.value,ue.value.filter(k=>V.value?k.__fv_visible__!==!1&&O(k):k.__fv_visible__!==!1)));function Pe(){xe.value.forEach((k,L)=>(k.__fv_visible_index__=L,k))}function he(k,L,z=!1){var ke;const Q=z?me():[...A.value];let de=Q;((ke=n.filter)==null?void 0:ke.mode)!=="server"&&(de=Q.filter(Ce=>t.apply(Ce)));const ye=k&&k.length?de.filter(Ce=>k.reduce((Te,we)=>Te&&we.filter(Ce),!0)):de,Be=L&&L.length?ye.sort((Ce,Te)=>{const we=[...L],Me=we.shift(),Re=ee.resolveField(Ce,Me.field)===void 0||ee.resolveField(Ce,Me.field)===null?"":ee.resolveField(Ce,Me.field),Ae=ee.resolveField(Te,Me.field)===void 0||ee.resolveField(Te,Me.field)===null?"":ee.resolveField(Te,Me.field);let mt=Me.compare(Re,Ae);for(;mt===0&&we.length!==0;){const Ze=we.shift();if(Ze){const kt=ee.resolveField(Ce,Ze.field)===void 0||ee.resolveField(Ce,Ze.field)===null?"":ee.resolveField(Ce,Ze.field),Kt=ee.resolveField(Te,Ze.field)===void 0||ee.resolveField(Te,Ze.field)===null?"":ee.resolveField(Te,Ze.field);mt=Ze.compare(kt,Kt)}}return mt}):ye;return ue.value=Be.map((Ce,Te)=>{if(Ce.__fv_data_grid_group_row__){const we=`group_of_${Ce.__fv_data_grid_group_field__}_${Ce.__fv_data_grid_group_value__}`;Ce.__fv_data_grid_group_collapse__=!!a.get(we)}return Ce.__fv_index__=Te,Ce.__fv_visible_index__=Te,Ce}),ue.value}function ze(k){return m.clear(),f.value=k,f.value.reduce((L,z)=>(L.set(z.field,z),L),m),he([],f.value)}function G(k,L){return m.set(k,L),f.value=Array.from(m.values()),he([],f.value)}function U(k){return m.delete(k),f.value=Array.from(m.values()),he([],f.value)}function K(k,L){return s.set(k,L),c.value=Array.from(s.values()),he([],Array.from(m.values()))}function Fe(k){return s.delete(k),c.value=Array.from(s.values()),he([],Array.from(m.values()),!0)}function Ee(){return s.clear(),c.value=[],he([],Array.from(m.values()),!0)}function $e(k,L,z){const Q=`group_of_${k}_${L}`;a.set(Q,!0);const de=ye=>ye[k]!==L;return u.set(`collapse_${k}_${L}`,{field:k,fieldName:k,fieldType:"string",filterValue:L,filter:de}),he(Array.from(u.values()),Array.from(m.values()))}function Je(k){w(ue.value,k)}function tt(k){M(ue.value,k)}function Qe(k,L,z){const Q=`group_of_${k}_${L}`;return a.set(Q,!1),u.delete(`collapse_${k}_${L}`),he(Array.from(u.values()),Array.from(m.values()),!0)}function Ue(k){const L=k.raw[F.value],z=Q=>!Q.__fv_parents__.has(L);d.set(`fold_${L}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(L),filter:z}),he(Array.from(d.values()),Array.from(m.values())),y(ue.value)}function Z(k){const L=k[F.value];d.delete(`fold_${L}`)}function ge(k){Z(k.raw),he(Array.from(d.values()),Array.from(m.values()),!0),y(ue.value)}function _e(){const k=me();ue.value=k,he(Array.from(d.values()),Array.from(m.values())),n.hierarchy&&y(ue.value)}function Oe(k){const z=n.hierarchy&&N(k)?j(k):k;T.value=z,_e()}function Ye(k,L,z){return(k&&k.length?ue.value.filter((de,ye)=>k.reduce((Be,ke)=>Be&&ke.filter(de),!0)):ue.value).slice(L,z)}function Mt(k){const L=W(),z=Math.ceil(X.value/L);0<=k&&k<=z&&(q.value=k,_e())}function bt(k){T.value.push(Ne.cloneDeep(k)),ue.value=me()}function _t(k=0){if(!(k>-1))return!1;const z=$.value();n.hierarchy?g(k,z,T):T.value.splice(k,0,z),_e()}function Et(k=0){if(!(k>-1&&n.hierarchy))return!1;const z=$.value(),Q=T.value[k];Z(Q),C(k,z,T),_e()}function Ct(k,L=0){if(!(L>-1&&n.hierarchy))return!1;const Q=T.value[L];Z(Q),E(L,k,T),_e()}function oe(k){const L=k?k-1:0;T.value.splice(L,1),_e()}function ae(k){const L=T.value.findIndex(z=>z[F.value]===k);L!==-1&&(T.value.splice(L,1),_e())}function fe(k){const L=k>-1?T.value[k]:null;if(!(L&&L.deletable!==!1))return!1;T.value=R(L,T.value),_e()}function Ie(){const k=u.size>0?Array.from(u.values()):[];return he(k,Array.from(m.values()))}function je(k){ie.value.size=k}function Xe(k){ie.value&&(je(k),_e())}function Ke(k,L){const z=T.value[Number(k)-1];z.editable!==!1?(z.name=L,_e()):se.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function ft(k){return k.map(z=>{const Q=A.value.findIndex(de=>""+de[F.value]==""+z);return Q>-1?A.value[Q]:null}).filter(z=>z!=null)}function it(){const k=n.summary.groupFields;ne=k.reduce((L,z)=>(L.set(z,0),L),ne);for(const L of P.value)k.forEach(z=>{const Q=ne.get(z)||0;ne.set(z,Q+ee.resolveField(L,z))});k.forEach(L=>{const z=ne.get(L)||0;ne.set(L,l(z.toFixed(2)))})}function rt(k){const L=n.summary.groupFields;ne=L.reduce((z,Q)=>(z.set(Q,0),z),ne);for(const z of k)L.forEach(Q=>{const de=ne.get(Q)||0;ne.set(Q,de+ee.resolveField(z.raw,Q))});L.forEach(z=>{const Q=ne.get(z)||0;ne.set(z,l(Q.toFixed(2)))})}return{addFilter:K,addNewDataItem:bt,addSorter:G,updatePageSize:je,changePageSizeTo:Xe,collapse:$e,collapseTo:Je,dataView:ue,editDataItem:Ke,expand:Qe,expandTo:tt,filters:c,fold:Ue,getRange:Ye,getSelectionItems:ft,hasRealChildren:b,insertNewChildDataItem:Et,insertNewChildDataItems:Ct,insertNewDataItem:_t,isVisibleInTree:O,load:Oe,navigatePageTo:Mt,pageIndex:q,rawView:A,refresh:Ie,removeAllFilter:Ee,removeDataItem:oe,removeDataItemById:ae,removeFilter:Fe,removeHierarchyDataItem:fe,removeSorter:U,reOrderVisibleIndex:Pe,setSorters:ze,sorters:f,summaries:ne,updateSummary:it,toggleChildrenVisibiltyByCollapseStatus:B,totalItems:X,unFold:ge,updateDataView:_e,visibleDataItems:xe,shouldGroupingData:S,pagination:ie,updateVisibleDataSummary:rt}}const Fo=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],To={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},Mo={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},_o={equal:(n,e,t)=>{if(n){const o=new Date(t).getTime();return new Date(n[e]).getTime()===o}return!1},notEqual:(n,e,t)=>{if(n){const o=new Date(t).getTime();return new Date(n[e]).getTime()!==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}},Eo={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},ko={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}},Vo=new Map([["boolean",Mo],["datetime",_o],["enum",Eo],["number",ko],["text",To]]);function Io(n,e){const t=i.ref([]),o=new Map,{loadConditionGroup:r}=Se.useCondition();function l(M,y){switch(M){case"check-box":return new Se.CheckBoxValue({value:y});case"combo-list":return new Se.ComboListValue({value:y});case"combo-lookup":return new Se.ComboLookupValue({value:y});case"input-group":return new Se.TextValue({value:y});case"date-picker":return new Se.DatePickerValue({value:y});case"date-range":return new Se.DateRangeValue({value:y});case"datetime-picker":return new Se.DateTimePickerValue({value:y});case"datetime-range":return new Se.DateRangeValue({value:y});case"lookup":return new Se.TextValue({value:y});case"month-picker":return new Se.MonthPickerValue({value:y});case"month-range":return new Se.MonthRangeValue({value:y});case"number-range":return new Se.NumberRangeValue({value:y});case"number-spinner":return new Se.NumberSpinnerValue({value:y});case"radio-group":return new Se.RadioGroupValue({value:y});default:return new Se.TextValue({value:y})}}const a=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),s=new Map([["boolean",Se.CompareType.Equal],["date",Se.CompareType.Equal],["datetime",Se.CompareType.Equal],["number",Se.CompareType.Equal],["string",Se.CompareType.Equal],["text",Se.CompareType.Equal],["enum",Se.CompareType.In],["reference",Se.CompareType.Equal]]);function u(){t.value.forEach((y,b)=>{b===t.value.length-1?y.relation=0:y.relation=1});const M=[];return t.value.forEach(y=>{const{valueType:b}=y.value,g=y.value.value;if(b==="boolean"){const C=[];g.length===1&&C.push({filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value[0],relation:t.value.length>1?y.relation||y.relation===0?y.relation:1:0,expresstype:Se.ValueType.Value,lbracket:y.lBracket||null,rbracket:y.rBracket||null}),g.length>1&&C.push({filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value[0],relation:2,expresstype:Se.ValueType.Value,lbracket:y.lBracket?y.lBracket+"(":"(",rbracket:y.rBracket||null},{filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value[1],relation:t.value.length>1?y.relation||y.relation===0?y.relation:1:0,expresstype:Se.ValueType.Value,lbracket:y.lBracket||null,rbracket:y.rBracket?y.rBracket+")":")"}),M.push(...C)}else M.push({filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value,relation:t.value.length>1?y.relation||y.relation===0?y.relation:1:0,expresstype:Se.ValueType.Value,lbracket:y.lBracket||null,rbracket:y.rBracket||null})}),M}function d(M){var b;const y=M.dataType||"string";return((b=M.editor)==null?void 0:b.type)||a.get(y)||"text"}function m(M){var I,F,_,$,P;const y=`field_filter_${M.field}`,b=Date.now(),g=M.field,C=((I=M.column)==null?void 0:I.title)||"",E=((F=M.column)==null?void 0:F.dataType)||"string",O=s.get(E)||Se.CompareType.Equal,V=(($=(_=M.column)==null?void 0:_.editor)==null?void 0:$.type)||a.get(E)||"text",B=l(V,(P=M.column)==null?void 0:P.filter),R=V==="lookup"||V==="combo-lookup"?Se.ValueType.SmartHelp:V==="combo-list"?Se.ValueType.Enum:Se.ValueType.Value;o.set(y,{id:y,fieldCode:g,fieldName:C,compareType:O,valueType:R,value:B,conditionId:b,relation:1}),t.value=Array.from(o.values())}function c(M){const y=`field_filter_${M.field}`;o.delete(y),t.value=Array.from(o.values())}function f(M){o.delete(M),t.value=Array.from(o.values())}function p(){o.clear(),t.value=[]}function h(M){const{valueType:y}=M.value,b=M.compareType||"0",g=Fo[Number(b)];return Vo.get(y)[g]}function v(M){const y=M.relation===2?0:1,b=M.items.map(C=>{const E=h(C);return V=>E(V,C.fieldCode,C.value.getValue())}),g=M.children&&M.children.length?M.children.map(C=>v(C)):[];return{relation:y,filterFunctions:b,children:g}}function S(){const M=r(t.value);return v(M)}function T(M,y){const b=y.filterFunctions.map(C=>C(M)),g=y.children.map(C=>T(M,C));return y.relation===1?b.every(C=>C)&&g.every(C=>C):b.includes(!0)||g.includes(!0)}function x(M){const y=S();return T(M,y)}function w(M){e.emit("filterChanged",M)}return{addColumnFilter:m,apply:x,clearCondition:p,conditions:t,getFilterEditorType:d,removeColumnFilter:c,removeCondition:f,filterFromServer:w,createFilterConditions:u}}function Po(n){i.ref(n.selection.showCheckbox||!1);const e=i.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),t=i.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),o=i.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.parentIdField)||"parent"}),r=i.computed(()=>n.hierarchy&&n.selection.showCheckbox),l=i.computed(()=>(n.treeNodeIconsData.fold||n.iconField)&&n.showTreeNodeIcons);return{collapseField:e,hasChildrenField:t,parentIdField:o,shouldShowCheckBox:r,shouldShowIcon:l}}function No(n,e,t,o,r,l,a,s,u){var Ct;const{dataView:d,visibleDataItems:m}=e,{getVisualData:c,maxVisibleRowIndex:f,minVisibleRowIndex:p}=r,h=i.computed(()=>o.value.primaryColumnsWidth),v=i.computed(()=>o.value.leftColumnsWidth),S=i.computed(()=>o.value.rightColumnsWidth),T=((Ct=n.rowOption)==null?void 0:Ct.height)||28,x=i.ref(0),w=i.ref(0);let M=0,y=l.value-1;const b=i.ref(0),g=i.ref(0),C=i.ref(0),E=i.ref(n.virtualized),O=24,V=1.5;let B=null;function R(){const oe=m.value;if(oe.length<=0)return 0;const ae=f.value<oe.length?oe[f.value]:oe[oe.length-1];return ae.__fv_data_position__>oe.length*T?oe.length*T:(ae.__fv_data_position__||0)+(ae.__fv_data_height__||0)+Math.max(oe.length-1-f.value,0)*T}const I=i.computed(()=>{const oe=R();m.value;let ae=g.value/Math.max(oe,g.value),fe=Math.floor(ae*g.value);for(;g.value>0&&fe<O;)ae*=V,fe=Math.floor(ae*g.value);return fe}),F=i.computed(()=>Math.floor(C.value/Math.max(h.value,C.value)*b.value)),_=0,$=0,P=i.computed(()=>b.value-(v.value+h.value+S.value+s.value));function A(oe){const fe=Math.floor(oe/T)+1,Ie=m.value;return Ie.length>fe?Ie[fe].__fv_visible_index__-1:0}function j(oe,ae,fe){let Ie=oe,je=ae;const Xe=ae-oe+1;if(Xe<a+l.value+a){const Ke=a+l.value+a-Xe,ft=ae+Ke<=fe,it=0+Ke<=oe;if(ft)je+=Ke,y=je;else if(it)Ie-=Ke,M=Ie;else{const rt=fe-ae,k=Ke-rt;je=Math.min(ae+rt,fe),Ie=Math.max(oe-k,0)}}return{actualStart:Ie,actualEnd:je}}function N(oe){var rt,k;const ae=m.value;if(!ae.length){t.value=[];return}const fe=(rt=n.pagination)!=null&&rt.enable?0:Math.max(M-a,0),Ie=ae[ae.length-1].__fv_visible_index__,je=(k=n.pagination)!=null&&k.enable?ae.length-1:Math.min(y+a,Ie),{actualStart:Xe,actualEnd:Ke}=j(fe,je,Ie),ft=ae[Xe-1],it=c(Xe,Ke,ft,oe);it.length&&(t.value=[...it])}const D=i.computed(()=>R()>g.value),J=i.computed(()=>Math.floor(h.value)>C.value);function ne(oe,ae){let fe=oe;const Ie=fe>_,je=D.value;je&&fe<g.value-ae&&(fe=g.value-ae),(!je||Ie)&&(fe=_),x.value!==fe&&(x.value=fe)}function X(){E.value&&(M=A(Math.abs(x.value)),y=M+l.value-1,(M<p.value||y>f.value-a/2)&&N())}function ie(oe){let ae=x.value+oe;ae>_&&(ae=_);const fe=R();ne(ae,fe),X()}function W(oe){if(!J.value){w.value=0;return}let ae=w.value+oe;ae>$&&(ae=$),ae<P.value&&(ae=P.value),w.value!==ae&&(w.value=ae)}function q(){Math.abs(w.value)+C.value>h.value&&(w.value=Math.min(C.value-h.value,0))}function H(){x.value=0,M=0,y=l.value-1,N()}function Y(){const oe=R();ne(x.value,oe)}i.watch([C,h],()=>{W(0)}),i.watch(g,(oe,ae)=>{oe!==ae&&oe>=d.value.length*T&&ie(0)});function se(oe){let{deltaX:ae}=oe,fe=-1*oe.deltaY;return typeof ae>"u"&&(ae=-1*oe.wheelDeltaX/6),typeof fe>"u"&&(fe=oe.wheelDeltaY/6),oe.deltaMode&&oe.deltaMode===1&&(ae*=10,fe*=10),oe.shiftKey?{deltaY:-fe,deltaX:-ae}:{deltaX:ae,deltaY:fe}}function pe(oe){if(n.disabled||!D.value||oe.target.tagName==="TEXTAREA")return;oe.preventDefault(),oe.stopPropagation();const{deltaX:ae,deltaY:fe}=se(oe);ie(fe),W(ae)}const me=i.computed(()=>({height:`${d.value.length*T}px`,width:`${v.value}px`,transform:`translateY(${x.value}px)`})),ue=i.computed(()=>({transform:`translateY(${x.value}px)`})),xe=i.computed(()=>({height:`${(n.autoHeight?m.value:d.value).length*T}px`,width:`${h.value}px`,transform:`translate(${w.value}px, ${x.value}px)`})),Pe=i.computed(()=>({transform:`translate(${w.value}px, ${x.value}px)`})),he=i.computed(()=>({height:`${d.value.length*T}px`,width:`${S.value}px`,transform:`translateY(${x.value}px)`})),ze=i.computed(()=>({transform:`translateY(${x.value}px)`})),G=i.computed(()=>({height:`${d.value.length*T}px`,width:`${s.value}px`,transform:`translateY(${x.value}px)`})),U=i.computed(()=>({width:`${v.value}px`})),K=i.computed(()=>({transform:`translateX(${w.value}px)`})),Fe=i.computed(()=>({width:`${S.value}px`})),Ee=i.computed(()=>{const oe=R();return ne(x.value,oe),x.value/(g.value-oe)*(g.value-I.value)}),$e=i.computed(()=>({width:"8px",height:`${I.value}px`,top:`${Ee.value}px`,backgroundColor:"#cccccc !important"})),Je=i.computed(()=>w.value/P.value*(b.value-F.value)),tt=i.computed(()=>({height:"8px",width:`${F.value}px`,left:`${Je.value}px`,backgroundColor:"#cccccc !important"})),Qe=i.ref(!1),Ue=i.ref(-1),Z=i.ref(-1),ge=i.ref();function _e(oe){if(Qe.value&&Z.value!==-1){const ae=Z.value-oe.pageX,fe=b.value-F.value;if(Math.abs(ae)<=fe){const Ie=ae/(C.value-F.value)*(h.value-C.value);W(Ie),Z.value=oe.pageX}}}function Oe(oe){if(Qe.value&&Ue.value!==-1){const ae=Ue.value-oe.pageY,fe=R(),Ie=fe-I.value;if(Math.abs(ae)<=Ie){const je=ae/(g.value-I.value)*(fe-g.value);ie(je),Ue.value=oe.pageY}}}function Ye(oe){Qe.value=!1,Ue.value=-1,Z.value=-1,document.removeEventListener("mouseup",Ye),B&&(document.removeEventListener("mousemove",B),B=null),document.body.style.userSelect="",ge.value&&(ge.value.style.opacity=null)}function Mt(oe,ae,fe){var Xe;Qe.value=!0;const Ie=(Xe=oe.target)==null?void 0:Xe.parentElement;Ie&&(Ie.style.opacity="1",ge.value=Ie);const je=fe==="horizontal"?_e:Ne.throttle(Oe,50);B||(B=je),fe==="vertical"&&(Ue.value=oe.pageY),fe==="horizontal"&&(Z.value=oe.pageX),ae.value&&(ae.value,document.addEventListener("mousemove",B),document.addEventListener("mouseup",Ye),document.body.style.userSelect="none")}function bt(oe){const ae=d.value.length*T-g.value;let fe=oe*T;fe>=ae&&(fe=ae),ie(-fe-x.value)}function _t(){bt(d.value.length)}function Et(oe){ie(oe-x.value)}return{dataGridWidth:b,fitHorizontalScroll:q,gridDataStyle:xe,gridHeaderColumnsStyle:K,gridMergedDataStyle:Pe,gridSideStyle:G,horizontalScrollThumbStyle:tt,leftFixedGridDataStyle:me,leftFixedGridHeaderColumnsStyle:U,leftFixedGridMergedDataStyle:ue,offsetX:w,offsetY:x,onMouseDownScrollThumb:Mt,onWheel:pe,reCalculateVisualDataRows:N,resetScroll:H,rightFixedGridDataStyle:he,rightFixedGridHeaderColumnsStyle:Fe,rightFixedGridMergedDataStyle:ze,shouldShowHorizontalScrollbar:J,shouldShowVirticalScrollbar:D,updateVirticalScroll:Y,updateVisibleRowsOnLatestVisibleScope:X,verticalScrollThumbStyle:$e,viewPortWidth:C,viewPortHeight:g,scrollToBottom:_t,scrollToRowByIndex:bt,scrollTo:Et}}function Bo(n){var l;const{isUndefined:e}=ee.useCommonUtils(),t=((l=n.rowOption)==null?void 0:l.height)||28;function o(a,s){const u=a.pre;if(u){let d=u.__fv_data_position__,m=u.__fv_data_height__;(e(d)||n.virtualized&&n.hierarchy&&u.__fv_visible_index__*t!==d)&&(d=u.__fv_visible_index__*t),e(m)&&(m=t);const c=a.visible?d+m:u.__fv_data_position__;a.top=c,s.__fv_data_position__=c}else a.top=0,s.__fv_data_position__=0}function r(a,s,u){if(a&&!s.ref){s.ref=a;const d=s.parent;s.cellHeight!==a.offsetHeight&&(s.cellHeight=a.offsetHeight),s.cellHeight&&s.cellHeight>(d.height||0)&&(d.height=s.cellHeight,u.__fv_data_height__=d.height),o(d,u)}!a&&s.ref&&(s.ref=a)}return{updateRowPosition:o,updateVisualInfomation:r}}function Oo(){function n(e,t){var a,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 u=e.split(",");if(!t.data.filter(f=>u.includes(f[o])).length)return"";const m=(a=t.data)==null?void 0:a.reduce((f,p)=>(f[p[o]]=p,f),{});return u.map(f=>{var p;return(p=m[f])==null?void 0:p[r]}).join(",")||e}const l=(s=t.data)==null?void 0:s.find(u=>u[o]===e);return(l==null?void 0:l[r])||e||""}return{renderEnumColumn:n}}function jo(){function n(e,t){return e?t==null?void 0:t.trueText:t==null?void 0:t.falseText}return{renderText:n}}function Ro(){const{formatTo:n}=ee.useDateFormat();function e(o,r){if(o){let l="yyyy-MM-dd";if(typeof r=="string"?l=r:typeof r=="object"&&(l=r.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof r=="object"&&r.dateRange){const a=r.dateRangeDatesDelimiter||"~";let[s,u]=o.split(a);return s=n(s,l),u=n(u,l),s+a+u}return n(o,l)}return o}function t(o,r){const l=r.dateFormat||"yyyy-MM-dd";return n(o,l)}return{renderDateColumn:t,renderDateTimeColumn:e}}function $o(){const{formatTo:n}=ee.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 Ao(){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 Lo(){const{locale:n}=ut.useI18n();function e(t,o){return(t==null?void 0:t[n.value||"zh-CHS"])||""}return{renderMultilingualColumn:e}}function Ho(){const{renderText:n}=jo(),{renderEnumColumn:e}=Oo(),{renderNumberColumn:t}=$o(),{renderDateColumn:o,renderDateTimeColumn:r}=Ro(),{renderImageColumn:l}=Ao(),{renderMultilingualColumn:a}=Lo();function s(m){return typeof m=="boolean"?m.toString():m}function u(m,c,f){return c.customFormat?c.customFormat(m,f.raw):s(m)}function d(m,c,f){const{column:p}=m,h=ee.resolveField(c.raw,p.field),v=f.options||f;return f.type===st.NONE?s(h):f.type===st.CUSTOM?u(h,f,c):f.type===st.ENUM?e(h,v):f.type===st.NUMBER?t(h,v):f.type===st.BOOLEAN?n(h,v):f.type===st.DATE?o(h,v):f.type===st.DATE_TIME?r(h,f):f.type===st.IMAGE?l(h,v):f.type===st.MULTI_LINGUAL?a(h,v):s(h)}return{renderFormatColumn:d}}function Do(n,e,t){var T;const{isUndefined:o}=ee.useCommonUtils(),r=i.ref(n.mergeCell);(T=i.ref(n.rowOption).value)!=null&&T.wrapContent;const{updateVisualInfomation:a}=t,{renderCommandColumn:s}=po(n),{renderFormatColumn:u}=Ho();function d(x,w,M,y,b,g=1){const C={colSpan:g,rowSpan:1,index:M,field:x,data:ee.resolveField(y,x),editingData:ee.resolveField(y,x),parent:b,mode:w,align:"left",valign:"start",showEllipsis:!0,getEditor:E=>E.data,setRef:E=>a(E,C,y),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return C}function m(x,w,M){return x.getEditor=y=>e.getEditor(y,w,y.parent),x.setRef=y=>a(y,x,M),x.update=y=>{y!==void 0&&(x.editingData=y)},x.accept=()=>{ee.setFieldValue(x.editingData,M,w.field),x.data=ee.resolveField(M,w.field)},x.cancel=()=>{x.editingData=x.data},x.updateData=y=>{ee.setFieldValue(ee.resolveField(y,w.field),M,w.field),x.data=ee.resolveField(M,w.field),x.editingData=ee.resolveField(M,w.field)},x}function c(x,w){w.dataType==="commands"?x.formatter=(M,y)=>w.formatter?w.formatter(x,y):s(x,y):w.formatter&&(x.formatter=(M,y)=>typeof w.formatter=="function"?w.formatter(M,y):u(x,y,w.formatter))}function f(x,w,M){const y=w&&w.data[M];if(y&&y.data===x.data){const g=y&&y.spannedBy||y;g.rowSpan++,g.spanned=g.spanned||[],g.spanned.push(x),x.colSpan=0,x.rowSpan=0,x.spannedBy=g}}function p(x,w,M){r.value&&f(x,w,M.field)}function h(x,w){w.showEllipsis!==void 0&&(x.showEllipsis=w.showEllipsis),x.showTips=o(w.showTips)?!0:w.showTips,x.column=w,x.align=w.align||"left",x.valign=w.valign||"middle",x.mode=n.editable?He.editable:He.readonly}function v(x,w,M,y){h(x,w),m(x,w,y),c(x,w),p(x,M,w)}function S(x,w,M,y,b){const g=n.editable?He.editable:He.readonly,C=d(x.field,g,w,M,y);return v(C,x,b,M),C}return{createCellByColumn:S,createCellByField:d,updateCellByColumn:v}}function qo(n,e,t,o,r,l,a){var w,M;const s=i.ref(n.rowOption),u=((w=s.value)==null?void 0:w.height)||28,d=((M=s.value)==null?void 0:M.wrapContent)||!1,{idField:m}=r,{collapseField:c}=o,{updateRowPosition:f}=l,{createCellByColumn:p}=a,h=(y,b,g,C)=>{ee.setFieldValue(ee.resolveField(y,C),b,C),g.data[C].data=ee.resolveField(b,C),g.data[C].editingData=ee.resolveField(b,C)};function v(y,b,g,C,E,O){var J,ne,X;const{__fv_data_grid_group_field__:V,__fv_data_grid_group_value__:B,__fv_data_index__:R}=g,I=g.__fv_data_grid_group_layer__||(g.__fv_parents__?(J=g.__fv_parents__)==null?void 0:J.size:0)||0,F=typeof g.parent=="number"?Number(g.parent):-1,_=g.__fv_data_grid_group_collapse__||g[c.value],$=g.__fv_visible__===void 0?!0:g.__fv_visible__,P=g.__fv_checked__,A=g.__fv_indeterminate__,j=g.__fv_disabled__||g[((ne=n.rowOption)==null?void 0:ne.disabledField)||"disabled"],N=n.hierarchy&&e.isVisibleInTree(g),D={collapse:_,data:{},dataIndex:R,groupField:V,groupValue:B,layer:I,index:b,parentIndex:F,pre:C,top:O,type:y,raw:g,checked:P,disabled:j,indeterminate:A,setRef:ie=>{D.ref=ie},visible:$&&N||$&&!n.hierarchy,status:lt.initial,updateCell:(ie,W)=>{h(ie,g,D,W),e.updateSummary()},updateCells:(ie,W)=>{W.forEach(q=>{h(ie,g,D,q)})}};return C||(g.__fv_data_position__=0),d||(D.height=u,g.__fv_data_height__=D.height,f(D,g)),(X=s.value)!=null&&X.customRowStatus&&(s.value.customRowStatus(D),g.__fv_disabled__=D.disabled),D}function S(y,b,g,C,E,O){const V=v(St.data,E,b,g,C,O);return y.forEach((B,R)=>{V.data[B.field]=p(B,R,b,V,C)}),V}function T(y,b,g,C,E){return Object.assign(y,{index:b,dataIndex:g,top:C,pre:E})}function x(y,b,g,C,E,O){const V=y.__fv_data_index__,B=y[m.value],R=t.getEditingSnapshot(B);return R===null?S(O,y,b,g,C,E):T(R,C,V,E,b)}return{createEmptyRow:v,createNewRowFromDataItem:S,renderDataRow:x}}function Wo(n,e,t,o){const r=i.ref(n.summary),{idField:l}=e,{createCellByField:a}=t,{createEmptyRow:s}=o,u=i.computed(()=>{const f=r.value;return(f==null?void 0:f.groupFields)||[]}),d=i.computed(()=>{const f=r.value;return f&&f.enable&&f.groupFields&&f.groupFields.length>0});function m(f,p,h,v){if(d.value){const S=f.data[p];let T=S.colSpan;const x=u.value.reduce((w,M)=>(w.set(M,!0),w),new Map);v.reduce((w,M,y)=>{if(x.has(M.field)){const b=a(M.field,He.readonly,y,h,f);f.data[M.field]=b,T-1>y&&(T=y)}return w},f),S.colSpan=T}}function c(f,p,h,v,S,T,x){const w=f.__fv_data_grid_group_field__,M=s(St.group,v,f,p,h,S);return M.data[l.value]=a(l.value,He.readonly,-1,f,M,0),M.data[w]=a(w,He.readonly,1,f,M,T.length),m(M,w,f,T),M}return{renderGroupRow:c}}function zo(n,e,t,o){const{idField:r}=e,{createCellByField:l}=t,{createEmptyRow:a}=o;function s(u,d,m,c,f,p,h){const v=u.__fv_data_grid_group_field__,S=a(St.summary,c,u,d,m,f);return S.data[r.value]=l(r.value,He.readonly,-1,u,S),S.data[v]=l(v,He.readonly,1,u,S,p.length),S}return{renderSummaryRow:s}}function Go(n,e,t,o,r){var j;const{idField:l}=t,a=i.ref(n.editable),s=i.ref(n.editOption),u=i.ref(((j=n.rowOption)==null?void 0:j.wrapContent)||!1),{onClickRow:d,onClickRowExcludeDblclick:m}=o,c=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let f,p,h,v,S;function T(N){return p&&p.raw[l.value]===N?p:null}const x=i.reactive({});function w(N,D,J={}){N.mode=He.editing,f=N,p=D,h=ee.resolveField(D==null?void 0:D.raw,N.field),v=J;for(const ne in x)delete x[ne]}function M(N){N.accept(),N.mode=He.editable,f=null;const D={};p&&(Object.keys(p).forEach(J=>{D[J]=p==null?void 0:p[J]}),p=null),e.emit("endEditCell",{cell:N,row:D,newValue:ee.resolveField(D==null?void 0:D.raw,N.field),oldValue:h,column:v,editor:x})}function y(N){const D=Promise.resolve(!0);return N?D.then(()=>Ne.isUndefined(n.beforeEndEditCell)?!0:typeof n.beforeEndEditCell=="function"?n.beforeEndEditCell({cell:N,row:p,newValue:N.editingData,oldValue:h}):()=>!0).then(J=>(J&&(M(N),p&&(p=null)),J)):D}function b(N){if(S&&S!==N.target){S=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const J=N.target;if(!(J!=null&&J.closest(".popover"))){if(N instanceof MouseEvent||N.key!=="Enter"){const ne=J.closest(".fv-grid-cell");if(f&&f.ref&&f.ref===ne)return}y(f).then(ne=>{ne&&document.body.removeEventListener("click",b,!0)})}}function g(N,D,J){return Promise.resolve().then(()=>{var X;const ne=(X=J.editor)==null?void 0:X.readonly;return!Ne.isUndefined(n.beforeEditCell)&&typeof n.beforeEditCell=="function"?n.beforeEditCell({row:N,cell:D,rawData:N.raw,column:J}):!ne}).then(ne=>{ne&&(w(D,N,J),document.body.removeEventListener("click",b,!0),document.body.addEventListener("click",b,!0))})}function C(N,D,J,ne={}){N.stopPropagation(),m(N,J),a.value&&s.value.editMode==="cell"&&D.mode===He.editable&&y(f).then(()=>{f||g(J,D,ne)})}function E(N,D,J,ne={}){N.stopPropagation(),d(N,J),a.value&&s.value.editMode==="cell"&&D.mode===He.editable&&y(f).then(()=>{f||g(J,D,ne)})}function O(N){N.stopPropagation(),S=N.target}function V(N){N.stopPropagation(),S&&(S=null)}function B(N){Object.values(N.data).filter(D=>D.mode===He.editable&&D.field!=="__commands__").forEach(D=>{D.mode=He.editing}),N.status=lt.editing,p=N}function R(N,D){Object.values(N.data).filter(J=>J.mode===He.editing).forEach(J=>{D?J.accept():J.cancel(),J.mode=He.editable}),N.status=lt.initial,p===N&&(p=null)}function I(N){a.value&&s.value.editMode==="row"&&p!==N&&(p&&R(p,!1),B(N))}function F(N){R(N,!0),N.status=lt.initial}function _(N){R(N,!1),N.status=lt.initial}function $(N,D,J){const ne=D.dataType,X=D.editor||{type:c.get(ne)||"input-group"};return!u.value&&X.type==="text"&&(X.type="input-group"),X?(X.type==="input-group"&&(X.textAlign=D.align!=="center"&&D.align!=="right"?"left":D.align,X.updateOn="change"),X.type==="number-spinner"&&(X.updateOn="change"),X.type==="textarea"&&(X.lineBreak="alt enter"),X.context={rowData:J.raw,column:D,cell:N,editor:x},X.readonly=!1,i.createVNode(eo.FDynamicFormInput,{focusOnCreated:n.focusOnEditingCell,selectOnCreated:n.selectOnEditingCell,editor:X,modelValue:N.editingData,"onUpdate:modelValue":ie=>N.editingData=ie,id:D.id,onMousedown:ie=>O(ie),onMouseup:ie=>V(ie)},null)):N.data}function P(){y(f)}i.watch(()=>n.editable,()=>{a.value=n.editable}),i.watch(()=>{var N;return(N=n.editOption)==null?void 0:N.editMode},N=>{s.value.editMode=N});function A(){f=null,p=null,v=null,S=null,document.body.removeEventListener("click",b,!0)}return{clear:A,onClickOutOfCell:b,onClickCell:E,onClickCellByKeyboard:C,onEditingRow:I,acceptEditingRow:F,cancelEditingRow:_,getEditingSnapshot:T,getEditor:$,endEditCell:P,onMousedownCell:O,onMouseupCell:V}}function Uo(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 Yo(n,e,t,o){const{idField:r}=o,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:s,selectItem:u,selectedValues:d,toggleSelectItem:m,updateSelectAllStatus:c,enableSelectRow:f,multiSelectMode:p,isSingleSelect:h,getSelectedItems:v}=t,S=i.ref(0),T=i.ref(-1);function x(_){l.value=_}function w(_){return _.raw[r.value]===l.value}function M(_,$){var j;const P=$??_.dataIndex,A={"fv-grid-row":_.type===St.data,"fv-grid-group-row":_.type===St.group,"fv-grid-summary-row":_.type===St.summary,"fv-grid-row-hover":P===T.value,"fv-grid-row-selected":w(_),"fv-grid-row-odd":P%2>0,"fv-grid-row-even":P%2===0,"fv-grid-disabled":_.disabled};if((j=n.rowOption)!=null&&j.customRowStyle){const N=n.rowOption.customRowStyle(_.raw)||{};return Object.assign({},A,N.class||{})}return A}function y(_,$){var A;const P={"fv-grid-cell":!0};if((A=n.rowOption)!=null&&A.customCellStyle){const j=n.rowOption.customCellStyle(_,$)||{};return Object.assign({},P,j.class||{})}return P}function b(_,$){var A;const P={"fv-grid-hierarchy-cell":!0};if((A=n.rowOption)!=null&&A.customCellStyle){const j=n.rowOption.customCellStyle(_,$)||{};return Object.assign({},P,j.class||{})}return P}function g(_){const $=l.value,P=_.raw[r.value];x(P),$!==P&&e.emit("selectionChange",[_.raw],{id:P,data:_.raw})}function C(_,$){var j,N;if(s.value&&!($!=null&&$.shiftKey)||h.value){(j=n.selection)!=null&&j.keepSelectingOnClick?u(_):m(_,(N=n.selection)==null?void 0:N.keepSelectingOnClick),c();return}if(s.value&&($==null?void 0:$.shiftKey)||a.value){m(_),c();return}}function E(_,$){$.disabled||(e.emit("clickRow",$.index,$.raw),g($),C($,_))}function O(_){S.value+=1,setTimeout(()=>{S.value===1&&e.emit("clickRow",_.index,_.raw),S.value=0},250),S.value>1&&(e.emit("doubleClickRow",_.index,_.raw),S.value=0)}function V(_,$){$.disabled||(O($),g($),C($,_))}function B(_){_.disabled||O(_)}function R(_,$){}function I(_,$){}function F(_,$){var j;const P=$??_.dataIndex,A={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":P===T.value,"fv-grid-sidebar-row-selected":w(_),"fv-grid-sidebar-row-odd":P%2>0,"fv-grid-sidebar-row-even":P%2===0,"d-flex":!0,"align-items-center":!0};if((j=n.rowOption)!=null&&j.customRowStyle){const N=n.rowOption.customRowStyle(_.raw)||{};return Object.assign({},A,N.class||{})}return A}return{activeRowById:x,clickRowItem:B,selectRow:C,changeRow:g,gridCellClass:y,gridHierarchyCellClass:b,gridRowClass:M,onClickRow:V,onClickRowExcludeDblclick:E,onMouseoverRow:R,sidebarRowClass:F,onMouseoutRow:I}}function Xo(n,e,t,o,r){const{idField:l}=t,{dataView:a,getSelectionItems:s}=e,u=i.ref(""),d=i.computed(()=>n.selection.enableSelectRow),m=i.ref(n.selection.multiSelect??!1),c=i.ref(n.selection.multiSelectMode||"DependOnCheck"),f=i.ref(n.selection.showCheckbox),p=i.ref(n.selection.showSelectAll),h=i.ref(n.selectionValues||[]),v=i.computed(()=>n.selection.showSelection),S=i.computed(()=>{var G;return((G=n.selection)==null?void 0:G.keepSelectingOnPaging)===void 0?!0:n.selection.keepSelectingOnPaging}),T=i.ref(!!h.value.length&&o.value.length===h.value.length),x=i.ref(!!h.value.length&&o.value.length!==h.value.length);i.watch(()=>n.selection.showSelectAll,(G,U)=>{G!==U&&(p.value=G)});function w(){if(!S.value){const G=a.value.map(U=>U[l.value]);h.value=h.value.filter(U=>G.includes(U))}}function M(){const G=a.value.every(K=>h.value.includes(K[l.value])),U=a.value.every(K=>!h.value.includes(K[l.value]));G&&(T.value=!0,x.value=!1),U&&(T.value=!1,x.value=!1),!G&&!U&&(T.value=!1,x.value=!0)}function y(){return s(h.value)}function b(){const G=o.value.reduce((K,Fe)=>(K.set(Fe.raw[l.value],Fe),K),new Map);return h.value.map(K=>G.get(K)).filter(K=>!!K)}function g(G){var K;const U=G.raw.__fv_children_index__;if(U&&U.length){const Fe=U.map(Ee=>a.value[Ee]);(K=h.value)!=null&&K.length&&Fe.some($e=>!h.value.includes($e[l.value]))&&(G.indeterminate=!0,G.raw.__fv_indeterminate__=!0)}}const C=i.computed(()=>d.value&&m.value),E=i.computed(()=>d.value&&!m.value&&!f.value),O=i.computed(()=>!!n.hierarchy),V=i.computed(()=>{const G=f.value&&c.value==="DependOnCheck";return C.value&&G}),B=i.computed(()=>C.value&&!f.value),R=i.computed(()=>C.value&&f.value&&c.value==="OnCheckAndClick");i.computed(()=>R.value);function I(){const G=s(h.value);r.emit("selectionUpdate",G,h.value)}function F(G){r.emit("unSelectItem",G)}function _(G){r.emit("selectItem",G)}function $(){const G=o.value.filter(K=>K.indeterminate).map(K=>K.raw[l.value]);o.value.forEach(K=>{K.checked=!1,K.indeterminate=!1,K.raw.__fv_checked__=!1,K.raw.__fv_indeterminate__=!1}),b().forEach(K=>{K.checked=!0,K.raw.__fv_checked__=!0}),G.forEach(K=>{const Fe=o.value.find(Ee=>Ee.raw[l.value]===K);g(Fe)})}i.watch(()=>o.value,()=>{$()}),i.watch(()=>n.selectionValues,G=>{h.value=G,$()},{immediate:!0}),i.watch(()=>n.selection,G=>{m.value=!!G.multiSelect,c.value=G.multiSelectMode||"DependOnCheck",f.value=!!G.showCheckbox});const P=i.computed(()=>!m.value);function A(G){return G.raw[l.value]}function j(G){return h.value.findIndex(K=>K===A(G))}function N(){b().forEach(K=>{K.checked=!1}),s(h.value).forEach(K=>{K.__fv_checked__=!1}),h.value=[],u.value="",M()}function D(G){const U=G;U.__fv_checked__=!0,U.__fv_indeterminate__=!1;const K=new Set(h.value);K.add(U[l.value]),h.value=Array.from(K.values()),w()}function J(G){const U=G;U.__fv_checked__=!1,U.__fv_indeterminate__=!1,h.value=h.value.filter(K=>K!==U[l.value]),w()}function ne(G){const U=G.raw;U.__fv_checked__=!0,U.__fv_indeterminate__=!1;const K=new Set(h.value);K.add(U[l.value]),h.value=Array.from(K.values()),w(),G.checked=!0,G.indeterminate=!1,I(),_(G)}function X(G){const U=G.raw;U.__fv_checked__=!1,U.__fv_indeterminate__=!1,h.value=h.value.filter(K=>K!==U[l.value]),w(),G.checked=!1,G.indeterminate=!1,I(),F(G)}function ie(G){ne(G),u.value=G.raw[l.value]}function W(G){X(G),u.value=""}function q(G){G.__fv_checked__=!1,G.__fv_indeterminate__=!0,h.value=h.value.filter(U=>U!==G[l.value]),w()}function H(G){const U=G.raw;U.__fv_checked__=!1,U.__fv_indeterminate__=!0,h.value=h.value.filter(K=>K!==U[l.value]),w(),G.checked=!1,G.indeterminate=!0}function Y(G){P.value&&N(),G.checked?X(G):ne(G)}function se(G,U=!0){const K=G.checked;P.value&&N(),U?G.checked?W(G):ie(G):K?W(G):ie(G)}function pe(G){G.raw[l.value]!==u.value&&(N(),ie(G))}function me(G){const U=o.value.find(K=>K.raw[l.value]===G);if(U)pe(U);else{const K=a.value.find(Fe=>Fe[l.value]===G);K&&D(K)}}function ue(G){const U=o.value.filter(Ee=>G.includes(Ee.raw[l.value])),K=U.map(Ee=>Ee.raw[l.value]),Fe=a.value.filter(Ee=>{const $e=Ee[l.value];return!K.includes($e)&&G.includes($e)});(U.length||Fe.length)&&E.value&&(u.value=G[0]),U.forEach(Ee=>{ie(Ee)}),Fe.forEach(Ee=>{D(Ee)})}function xe(G){for(const U of G){if(!h.value.includes(U))continue;const K=o.value.find(Fe=>Fe.raw[l.value]===U);if(K)W(K);else{const Fe=a.value.find(Ee=>Ee[l.value]===U);Fe&&J(Fe)}}h.value=h.value.filter(U=>!G.includes(U)),w()}function Pe(){o.value.forEach(G=>{const U=G.raw;U.__fv_checked__=!0,U.__fv_indeterminate__=!1;const K=new Set(h.value);K.add(U[l.value]),h.value=Array.from(K.values()),w(),G.checked=!0,G.indeterminate=!1}),I()}function he(){o.value.forEach(G=>{const U=G.raw;U.__fv_checked__=!1,U.__fv_indeterminate__=!1,h.value=h.value.filter(K=>K!==U[l.value]),w(),G.checked=!1,G.indeterminate=!1}),I()}function ze(){return o.value.find(G=>G.raw[l.value]===u.value)}return{clearSelection:N,currentSelectedDataId:u,enableMultiSelect:m,enableSelectRow:d,findIndexInSelectedItems:j,getSelectedItems:y,getSelectionRow:ze,indeterminate:H,indeterminateDataItem:q,isSelectingHirarchyItem:O,multiSelectMode:c,multiSelectOnClickRow:R,multiSelectOnClickRowWithShift:B,multiSelectOnlyOnCheck:V,select:ie,selectAll:Pe,selectedValues:h,selectDataItem:D,selectItem:pe,selectItemById:me,selectItemByIds:ue,showCheckBox:f,showSelectAll:p,toggleSelectItem:se,toggleSelectItemWithoutRow:Y,unSelect:W,unSelectAll:he,unSelectDataItem:J,unSelectItemByIds:xe,updateSelectAllStatus:M,selectAllStatus:T,indeterminateStatus:x,isSingleSelect:E,showSelection:v,keepSelectingOnPaging:S,emitSelectionChanged:I}}function Zo(n,e){var T,x;const{t}=ut.useI18n(),o=String(Date.now()),r=50,{showCheckBox:l,showSelectAll:a}=e,s=i.ref(((T=n.rowNumber)==null?void 0:T.enable)??!1),u=i.computed(()=>n.hierarchy&&l.value&&n.selection.enableSelectRow&&n.selection.multiSelect?!1:l.value),d=i.ref(s.value?((x=n.rowNumber)==null?void 0:x.width)??32:0),m=i.ref(u.value?r:0),c=i.computed(()=>{var w,M;return s.value?((w=n.rowNumber)==null?void 0:w.heading)==="序号"?t("datagrid.lineNumberTitle"):(M=n.rowNumber)==null?void 0:M.heading:""}),f=i.computed(()=>(u.value&&!n.hierarchy?Number(m.value):0)+(s.value?Number(d.value):0));i.watch(()=>n.rowNumber,w=>{w&&w.enable!==void 0&&(s.value=w.enable),w&&w.width!==void 0&&(d.value=w.width)});function p(w){var y;const M={top:`${w.top}px`,width:`${f.value}px`,height:`${w.height||""}px`};if((y=n.rowOption)!=null&&y.customRowStyle){const b=n.rowOption.customRowStyle(w.raw)||{};return Object.assign({},M,b.style||{})}return M}const h=i.computed(()=>({width:`${f.value}px`}));function v(w){return`${o}_${w.type}_r_${w.index}_${w.refreshKey||""}`}function S(w){return`${o}_${w.type}_r_${w.index}_${w.refreshKey||""}`}return{showRowNumer:s,showSidebarCheckBox:u,sidebarCellPosition:p,sidebarCornerCellStyle:h,sidebarTitle:c,sidebarWidth:f,rowKey:S,cellKey:v}}const Jo={ascend:(n,e)=>n===e?0:n===!1?-1:1,decend:(n,e)=>n===e?0:n===!0?-1:1},Qo={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}},Ko={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1},ei={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1};function ti(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",Jo],["datetime-sorter",Qo],["numeric-sorter",Ko],["text-sorter",ei]]);function o(a){const s=(a==null?void 0:a.dataType)||"string",u=e.get(s)||"text-sorter";return t.get(u)||(a==null?void 0:a.sorter)}function r(a){return o(a.column)}function l(a,s){const u=r(a),d=(a.status&We.sortable)===We.sortable&&(a.status&We.sorted)===We.sorted,m=(a.status&We.ascending)===We.ascending,c=(a.status&We.descending)===We.descending;if(d&&u){const f=m?u.ascend:c?u.decend:void 0;f?s.addSorter(a.field,{field:a.field,compare:f}):s.removeSorter(a.field)}else s.removeSorter(a.field)}return{getSorterByColumn:o,updateSorter:l}}const ni={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}},oi={},ii={},ri={id:{type:String}},ai=i.defineComponent({name:"FDesignerPlaceholder",props:ri,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("拖拽组件到这里")])}}),ht=i.ref(0);function li(n,e){const t=e.getBoundingClientRect(),o=n.getBoundingClientRect(),r=o.top>=t.top,l=o.top<=t.bottom;return r&&l}function si(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 l=t.left-r.width;const a=document.querySelector(".editorDiv");if(a){const s=a.getBoundingClientRect();l<s.left&&({left:l}=n.getBoundingClientRect())}o.style.left=l+"px"}}}function ci(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 ln(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=ci(n);if(r&&(o=li(n,r)),!o){t.style.display="none";return}si(n)}}function di(n){if(!n)return;let e;n.className.includes("dgComponentSelected")?e=n:e=n.querySelector(".dgComponentSelected"),e&&ln(e)}function ui(n){return typeof n=="function"||Object.prototype.toString.call(n)==="[object Object]"&&!i.isVNode(n)}const Ut=i.defineComponent({name:"FDesignerItem",props:ni,emits:["selectionChange","dragEnd"],setup(n,e){const t=i.ref(`${n.modelValue.id}-component`),o=i.ref(n.canMove),r=i.ref(n.canDelete),l=i.ref(!1),a=i.ref(n.modelValue),s=i.ref(n.componentId||""),u=i.ref(""),d=i.ref(""),m=i.ref(n.customClass),c=i.ref(),f=i.inject("canvas-dragula"),p=i.ref(),h=i.inject("design-item-context");function v(j){j&&Object.assign(a.value,j)}const S={designerItemElementRef:c,componentInstance:p,schema:a.value,parent:h,setupContext:e,updateContextSchema:v};i.provide("design-item-context",S);const T=i.inject("useFormSchema"),x=i.inject("designer-host-service"),w=i.inject("external-container-id"),M=i.computed(()=>{var J;const j=n.modelValue.appearance&&n.modelValue.appearance.class||"",N=((J=p.value)==null?void 0:J.getCustomButtons)&&p.value.getCustomButtons();let D={"farris-component":!0,"flex-fill":a.value.id==="root-component","position-relative":o.value&&r.value||(N==null?void 0:N.length),"farris-nested":l.value,"can-move":o.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return D[`farris-component-${a.value.type}`]=!0,D=ee.getCustomClass(D,j),D=ee.getCustomClass(D,d.value),D=ee.getCustomClass(D,m.value),D}),y=i.computed(()=>{const j={},N=n.modelValue.appearance&&n.modelValue.appearance.style||"";return N&&N.split(";").reduce((D,J)=>{const[ne,X]=J.split(":");return D[ne]=X,D},j),u.value&&u.value.split(";").reduce((D,J)=>{const[ne,X]=J.split(":");return ne&&(D[ne]=X),D},j),j});function b(j,N){var ne,X,ie;if(j&&(j.preventDefault(),j.stopPropagation()),(ne=x==null?void 0:x.designerContext)!=null&&ne.checkCanDeleteControl&&!x.designerContext.checkCanDeleteControl(N))return;if(p.value.triggerBelongedComponentToDeleteWhenDeleted){const W=p.value.getBelongedComponentInstance(p);if(W&&W.parent){const q=i.ref(W==null?void 0:W.parent),H=q.value.contents.findIndex(Y=>Y.id===W.schema.id);(ie=(X=q.value)==null?void 0:X.contents)==null||ie.splice(H,1),ht.value++}return}p.value.onRemoveComponent(x);let D=h,J=W=>W.id===N.id;if(N.type==="component"&&(D=h==null?void 0:h.parent,J=W=>W.component===N.id),D&&D.schema.contents){const W=D.schema.contents.findIndex(J);D.schema.contents.splice(W,1),ht.value++,e.emit("selectionChange")}}function g(j){return r.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:N=>{b(N,j)}},[i.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function C(){return o.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[i.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function E(){var N;const j=((N=p.value)==null?void 0:N.getCustomButtons)&&p.value.getCustomButtons();return j&&!!j.length&&j.map(D=>i.createVNode("div",{role:"button",class:`btn component-settings-button ${D.class||""}`,title:D.title,ref:D.id,onClick:J=>D.onClick&&D.onClick(J)},[i.createVNode("i",{class:D.icon},null)]))}function O(j){return i.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[i.createVNode("div",null,[g(j),C(),E()])])}function V(j,N,D,J){e.emit("selectionChange",j,N,D,J)}function B(){e.emit("dragEnd")}function R(j){let N;const D=j.type,J=oi[D],ne=ii[D],X=ne?ne(j):{};X.customClass=n.ignore?X.customClass:"",X.componentId=s.value,X.id=j.id;const ie=j.contents&&j.contents.length===0;return j.contents&&!!j.contents.length&&J?i.createVNode(J,i.mergeProps({ref:p},X),ui(N=j.contents.map(q=>i.createVNode(Ut,{key:q.id,modelValue:q,"onUpdate:modelValue":H=>q=H,componentId:s.value,onSelectionChange:V,onDragEnd:B},null)))?N:{default:()=>[N]}):J?ie?i.createVNode(J,i.mergeProps({ref:p},X),{default:()=>[i.createVNode(ai,null,null)]}):i.createVNode(J,i.mergeProps({ref:p},X),null):i.createVNode("div",null,null)}function I(){const j=T.externalFormSchema.get(w);if(j!=null&&j.content)return j==null?void 0:j.content}function F(j){if(j.type==="component-ref"){const J=(w?I():T==null?void 0:T.getFormSchema()).module.components.find(X=>X.id===j.component),ne=i.ref(J);if(J)return i.createVNode(Ut,{key:J.id,modelValue:ne.value,"onUpdate:modelValue":X=>ne.value=X,componentId:J.id,onSelectionChange:V,onDragEnd:B},null)}}i.watch([()=>n.modelValue,()=>n.componentId],([j,N])=>{a.value=j,t.value=`${j.id}-component`,N&&(s.value=N),i.triggerRef(c)},{deep:!0});function _(j){window.scrollContainerList||(window.scrollContainerList=new Set);const N=j.getAttribute("id");N&&window.scrollContainerList.add(N)}function $(j){const N=j==null?void 0:j.target;_(N),di(N)}function P(){var j,N;if(c.value){(N=(j=a.value)==null?void 0:j.contents)!=null&&N.length&&c.value.addEventListener("scroll",$);const D=c.value.querySelector(".drag-container");D&&D.addEventListener("scroll",$)}}i.onMounted(()=>{if(c.value&&p.value&&p.value.schema){const j=c.value.querySelector(`[data-dragref='${p.value.schema.id}-container']`);f&&j&&f.attachComponents(j,a.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,r.value=p.value.canDelete!==void 0?p.value.canDelete:r.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,u.value=p.value.styles||"",d.value=p.value.designerClass||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=S),p.value.belongedComponentId=s.value,p.value.setComponentBasicInfoMap(x)}P(),ht.value++}),i.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",$)});function A(j){if(j&&(j.preventDefault(),j.stopPropagation()),w){const J=document.getElementById(`${w}-design-item`);J&&J.click();return}let N=S.designerItemElementRef;const D=c.value;if(D){const J=document.getElementsByClassName("dgComponentFocused");J&&J.length===1&&J[0]===c.value||(Array.from(J).forEach(X=>X.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(X=>X.classList.remove("dgComponentSelected")),D.classList.add("dgComponentFocused"),e.emit("selectionChange",a.value.type,a.value,s.value,p.value),p.value.getDraggableDesignItemElement&&(N=p.value.getDraggableDesignItemElement(S),N&&N.value&&N.value.classList.add("dgComponentSelected")))}ln(N==null?void 0:N.value)}return()=>{const j=w?`${w}-`:"";return a.value.type==="component-ref"?F(a.value):i.createVNode("div",{id:`${j}${a.value.id}-design-item`,ref:c,class:M.value,style:y.value,onClick:A},[O(a.value),R(a.value)])}}});function sn(n,e,t,o,r="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:s}=t,{gridHeaderColumnsStyle:u,leftFixedGridHeaderColumnsStyle:d,rightFixedGridHeaderColumnsStyle:m}=o,c=l.value.defaultColumnWidth,f=32,p=new Map([[0,0]]);function h(O,V){const B=p.get(V)||0,R={height:`${O.depth*f}px`,left:`${O.left}px`,top:`${(O.layer-1)*f}px`,width:`${O.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(R["line-height"]=`${O.depth*f}px`),p.set(V+1,B+(O.actualWidth||c)),R}const v=i.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),S=i.computed(()=>({height:`${l.value.headerDepth*f}px`})),T=function(O){return e.showSetting&&!!O.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(O,V,B,R){var I;(I=n==null?void 0:n.setupContext)==null||I.emit("selectionChange",O,V,B,R)}function M(O){var B,R;return"w-100 d-flex align-items-center justify-content-"+(((B=O.column)==null?void 0:B.halign)==="center"?"center":((R=O.column)==null?void 0:R.halign)==="right"?"end pr-2":"start pl-2")}function y(O,V,B){var I;const R=i.ref(O.column);return i.createVNode("div",{class:"fv-grid-header-cell",style:h(O,B)},[i.createVNode(Ut,{modelValue:R.value,"onUpdate:modelValue":F=>R.value=F,customClass:M(O),canAdd:!1,canDelete:!1,canMove:!1,key:(I=R.value)==null?void 0:I.id,type:r,componentId:e.componentId,onSelectionChange:w},null),T(O)&&x(),O.resizable&&i.createVNode("span",{class:"fv-column-resize-bar"},null)])}function b(O){return O.map((V,B)=>{const R=[];if(R.push(y(V,O,B)),V.children&&V.children.length){const I=b(V.children);R.push(...I)}return R})}function g(){return i.createVNode("div",{class:"fv-grid-header-left-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:d.value},[b(l.value.leftHeaderColumns)])])}function C(){return i.createVNode("div",{class:"fv-grid-header-right-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:m.value},[b(l.value.rightHeaderColumns)])])}function E(){return i.createVNode("div",{class:v.value,style:S.value},[a.value&&g(),i.createVNode("div",{class:"fv-grid-header-primary"},[i.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[b(l.value.primaryHeaderColumns)])]),s.value&&C()])}return{renderGridHeader:E}}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:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}};function cn(n,e,t){var V;const o=t&&t.getStyles&&t.getStyles()||"",r=t&&t.getDesignerClass&&t.getDesignerClass()||"",l=i.ref();let a;function s(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function u(){return!1}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function m(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function c(B){if(!B||!B.value)return null;if(B.value.schema&&B.value.schema.type==="component")return B.value;const R=i.ref(B==null?void 0:B.value.parent),I=c(R);return I||null}function f(B=e){var _;if(t!=null&&t.getDraggableDesignItemElement)return t.getDraggableDesignItemElement(B);const{componentInstance:R,designerItemElementRef:I}=B;if(!R||!R.value)return null;const{getCustomButtons:F}=R.value;return R.value.canMove||F&&((_=F())!=null&&_.length)?I:f(B.parent)}function p(B){return!!t&&t.canAccepts(B)}function h(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function v(){}function S(B,R){var I;!B||!R||(t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(B,R),(I=e==null?void 0:e.setupContext)==null||I.emit("dragEnd"))}function T(B,R){const{componentType:I}=B;let F=pt.getSchemaByTypeForDesigner(I,B,R);t&&t.onResolveNewComponentSchema&&(F=t.onResolveNewComponentSchema(B,F));const _=I.toLowerCase().replace(/-/g,"_");return F&&!F.id&&F.type===I&&(F.id=`${_}_${Math.random().toString().slice(2,6)}`),F}function x(B){B&&t!=null&&t.onChildElementMovedOut&&t.onChildElementMovedOut(B)}function w(...B){if(t&&t.getPropsConfig)return t.getPropsConfig(...B)}function M(B){if(!B)return;const R=e==null?void 0:e.schema,{formSchemaUtils:I}=B;if(R&&I.getExpressions().length){const F=I.getExpressions().findIndex(_=>_.target===R.id);F>-1&&I.getExpressions().splice(F,1)}}function y(B){if(!B||!(e!=null&&e.schema))return;const R=e.schema,{formSchemaUtils:I}=B;I.removeCommunicationInComponent(R)}function b(B){t&&t.onRemoveComponent&&t.onRemoveComponent(),M(B),y(B),e!=null&&e.schema.contents&&e.schema.contents.map(R=>{let I=R.id;R.type==="component-ref"&&(I=R.component);const F=n.value.querySelectorAll(`#${I}-design-item`);F!=null&&F.length&&Array.from(F).map(_=>{var $;($=_==null?void 0:_.componentInstance)!=null&&$.value.onRemoveComponent&&_.componentInstance.value.onRemoveComponent(B)})})}function g(){if(t&&t.getCustomButtons)return t.getCustomButtons()}function C(B){var I,F;if(!((I=e==null?void 0:e.schema)!=null&&I.id))return;if(!a&&B&&(a=B.formSchemaUtils),t!=null&&t.setComponentBasicInfoMap){t.setComponentBasicInfoMap();return}let R="";if(t!=null&&t.getComponentTitle)R=t.getComponentTitle();else{const{text:_,title:$,label:P,mainTitle:A,name:j,type:N}=e.schema;R=_||$||P||A||j||((F=te[N])==null?void 0:F.name)}R&&a.getControlBasicInfoMap().set(e.schema.id,{componentTitle:R,parentPathName:R})}function E(B){var _;const{changeObject:R}=B,{propertyID:I,propertyValue:F}=R;if(["text","title","label","name","mainTitle"].includes((_=B==null?void 0:B.changeObject)==null?void 0:_.propertyID)&&I&&F&&(C(),a)){const $=a.getControlBasicInfoMap(),P=$.keys().toArray().filter(A=>{var j,N;return((j=$.get(A))==null?void 0:j.reliedComponentId)===((N=e==null?void 0:e.schema)==null?void 0:N.id)});P!=null&&P.length&&P.forEach(A=>{const j=$.get(A).parentPathName.split(" > ");j[0]=F,$.get(A).parentPathName=j.join(" > ")})}}function O(B){if(E(B),t&&t.onPropertyChanged)return t.onPropertyChanged(B)}return l.value={canMove:s(),canSelectParent:u(),canDelete:d(),canNested:!m(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(V=e==null?void 0:e.parent)==null?void 0:V.componentInstance,schema:e==null?void 0:e.schema,styles:o,designerClass:r,canAccepts:p,getBelongedComponentInstance:c,getDraggableDesignItemElement:f,getDraggingDisplayText:h,getPropConfig:w,getDragScopeElement:v,onAcceptMovedChildElement:S,onChildElementMovedOut:x,addNewChildComponentSchema:T,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||i.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||i.ref(!1),onRemoveComponent:b,getCustomButtons:g,onPropertyChanged:O,setComponentBasicInfoMap:C,updateContextSchema:e==null?void 0:e.updateContextSchema},l}class fi extends ot.BaseControlProperty{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=nt.useCommandOption().getCommandColumnProperties(e),this.propertyConfig.categories.column=nt.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=nt.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=nt.useSummary().getSummaryProperties(e),this.propertyConfig.categories.sort=nt.useSort().getSort(e),this.propertyConfig.categories.filter=nt.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,s,u;const t=(u=(s=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:s.entity[0])==null?void 0:u.entities[0],o=this.assembleSchemaEntityToTree(t,0),r=this,l=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...l.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:o,editable:!1},readonly:!0}},setPropertyRelates(d,m){switch(d&&d.propertyID){case"dataSource":{const c=r.formSchemaUtils.getViewModelById(r.viewModelId);if(c){const f=o.find(p=>p.label===d.propertyValue);c.bindTo=f.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,t,o,r="",l=[]){const a=r?`${r}/${e.label}`:"/";return l.push({id:e.id,name:e.name,label:e.label,layer:t,parent:o&&o.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(s=>this.assembleSchemaEntityToTree(s,t+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=nt.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=nt.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=nt.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=nt.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const t=[...nt.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"单元格结束编辑事件"}],o=this,r=o.eventsEditorUtils.formProperties(e,o.viewModelId,t),l=o.createBaseEventProperty(r);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const u=a.propertyValue;delete e[o.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,o.eventsEditorUtils.saveRelatedParameters(e,o.viewModelId,u.events,u)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function mi(n,e){const t=n.schema,o=i.ref(!0),r=i.ref(!0);function l(c){return c&&c.sourceType==="control"?c.componentCategory==="input":!1}function a(){return!1}function s(){return!1}function u(){return!0}function d(c){return new fi(c,e).getPropertyConfig(t)}function m(){var c,f,p,h;if(n&&e){const v=(c=n==null?void 0:n.componentInstance)==null?void 0:c.value.belongedComponentId;let S="",T="";const{formSchemaUtils:x}=e;if(v){const M=x.getRootViewModelId(),y=x.getComponentByViewModelId(M),b=x.selectNode(y,g=>g.contents&&g.contents.find(C=>C.component===v));(b==null?void 0:b.type)===((f=te["tab-page"])==null?void 0:f.type)&&((p=b==null?void 0:b.contents)!=null&&p.length)&&(S=b.title||""),(b==null?void 0:b.type)===((h=te.section)==null?void 0:h.type)&&(b==null?void 0:b.showHeader)!==!1&&(S=b.mainTitle||""),S=S?`${S} > `:"",T=S?b.id:""}const w=te["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(n.schema.id,{componentTitle:w,parentPathName:`${S}${w}`,reliedComponentId:T})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:d,setComponentBasicInfoMap:m}}const gt=i.defineComponent({name:"FDataGridDesign",props:io,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(n,e){var G;const t=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context"),l=mi(r,o),a=cn(t,r,l);a.value.styles="display:flex;flex:1;",i.onMounted(()=>{t.value.componentInstance=a}),i.provide("data-grid-context",{dataGridProps:n}),e.expose(a.value);const s=i.ref(n.columns),u=20,d=Uo(n),m=0,c=i.ref(),f=i.ref(),p=i.ref(n.showStripe),h=i.ref([]),v=i.ref(!1),S=i.ref(((G=n.rowOption)==null?void 0:G.wrapContent)||!1),T=Io(n,e),x=Po(n),w=xo(n,new Map,T,x,d),M=Xo(n,w,d,h,e),y=i.computed(()=>w.totalItems.value<u?w.totalItems.value:u),{containerStyleObject:b}=ho(n),g=go(n),{applyCommands:C}=g;C(s);const E=lo(n),O=ti(),{applyColumnSorter:V,columnContext:B,updateColumnRenderContext:R}=E;V(w,O);const I=yo(n,B),F=Yo(n,e,M,d),_=Go(n,e,d,F),$=Bo(n),P=Do(n,_,$),A=qo(n,w,_,x,d,$,P),j=Wo(n,d,P,A),N=zo(n,d,P,A),D=so(n,s,w,y,m,A,j,N),{getVisualData:J}=D,ne=Zo(n,M),{sidebarWidth:X}=ne;h.value=J(0,y.value+m-1);const ie=No(n,w,h,B,D,y,m,X),{onWheel:W,dataGridWidth:q,viewPortHeight:H,viewPortWidth:Y}=ie,se=ro(n,B,c,Y,I),{calculateColumnsSize:pe}=se,me=i.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":p.value})),ue=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":v.value,"fv-grid-wrap-content":S.value})),{renderGridHeader:xe}=sn(r,n,E,ie),{renderHorizontalScrollbar:Pe}=mo(n,c,ie);function he(){var U,K;H.value=((U=f.value)==null?void 0:U.clientHeight)||0,q.value=((K=c.value)==null?void 0:K.clientWidth)||0,pe()}i.onMounted(()=>{c.value&&(en.useResizeObserver(c.value,he),pe(),i.nextTick(()=>{c.value&&(q.value=c.value.clientWidth),f.value&&(Y.value=f.value.clientWidth,H.value=f.value.clientHeight)}))});function ze(U){U&&(s.value=U,C(s),R(s.value),V(w,O),pe())}return i.watch(()=>n.columns,U=>{ze(U),ht.value++}),i.watch(Y,()=>{c.value&&pe()}),()=>i.createVNode("div",{ref:t,class:me.value,style:b.value,onWheel:W},[xe(),i.createVNode("div",{ref:c,class:ue.value,onMouseover:()=>{v.value=!0},onMouseleave:()=>{v.value=!1}},[Pe()])])}}),pi={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClose:{type:Function,default:null},beforeClosePopup:{type:Function,default:null}},hi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},gi=i.defineComponent({name:"FOverlay",props:hi,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 l(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}i.computed(()=>{const s=o.value;if(s){const u=s.getBoundingClientRect(),{left:d,top:m,height:c}=u;return{left:d,top:m+c}}return t.value});const a=i.computed(()=>({}));return()=>i.createVNode(i.Teleport,{to:"body"},{default:()=>{var s,u;return[i.createVNode("div",{class:"overlay-container",onClick:d=>l(d),style:r.value},[i.createVNode("div",{style:a.value},[(u=(s=e.slots).default)==null?void 0:u.call(s)])])]}})}});function yi(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function vi(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 l=yi(n);return()=>i.createVNode(gi,{"popup-content-position":n.popupPosition,host:n.host,onClick:r,backgroundColor:n.backgroundColor},{default:()=>[l&&l()]})}}),document.body.appendChild(e),t.mount(e),t}class bi{static show(e){return vi(e)}}const Ci={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前事件",type:"object",default:null}},required:["id","type"],events:{onAccept:"确定事件",onCancel:"取消事件",beforeClose:"关闭前回调"}},wi=new Map([["appearance",pt.resolveAppearance]]);function Si(n,e,t){return e}function xi(){function n(e,t){const o={};return o.beforeClose=r=>t.call("beforeClose",[r,e]),o}return{resolve:n}}const dn={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"}},Fi=pt.createPropsResolver(dn,Ci,wi,Si),Ti=xi();class Le{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),l=parseInt(o[5],10);return{x:r,y:l}}return{x:0,y:0}}static fromEvent(e,t=null){if(this.isMouseEvent(e))return new Le(e.clientX,e.clientY);if(t===null||e.changedTouches.length===1)return new Le(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 Le(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 Le(0,0);if(window){const o=window.getComputedStyle(e);if(o){const r=parseInt(o.getPropertyValue("left"),10),l=parseInt(o.getPropertyValue("top"),10);t.x=isNaN(r)?0:r,t.y=isNaN(l)?0:l}return t}return null}static copy(e){return new Le(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 xt{constructor(e,t){this.width=e,this.height=t}static getCurrent(e){const t=new xt(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 xt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Mi(n,e){const t=i.ref(),o=i.ref(),r=i.ref(),l=i.ref(),a=i.ref(),s=i.ref(),u=i.ref(),d=i.ref(),m=i.ref(),c=i.ref(),f=i.ref(),p=i.ref(n.resizeable),h=i.ref(),v=i.ref(n.draggable),S=i.ref(!1);function T(){const P=o.value||document.body,A=window.getComputedStyle(P);if(!A||!t.value)return;const j=Le.getTransformInfo(t.value),N={};u.value&&(N.deltaL=t.value.offsetLeft-u.value.x,N.deltaT=t.value.offsetTop-u.value.y);const D=A.getPropertyValue("position");N.width=P.clientWidth,N.height=P.clientHeight,N.pr=parseInt(A.getPropertyValue("padding-right"),10),N.pb=parseInt(A.getPropertyValue("padding-bottom"),10),N.position=A.getPropertyValue("position"),D==="static"&&(P.style.position="relative"),N.translateX=j.x,N.translateY=j.y,c.value=N}function x(P){if(t.value){l.value=xt.getCurrent(t.value),a.value=Le.getCurrent(t.value),s.value=l.value?xt.copy(l.value):null,u.value=a.value?Le.copy(a.value):null,T();const A=P.target.getAttribute("type")||"";d.value={n:!!A.match(/n/),s:!!A.match(/s/),w:!!A.match(/w/),e:!!A.match(/e/)}}}function w(){var P,A,j,N;if(t.value){const D=t.value;d.value&&((d.value.n||d.value.s)&&((P=s.value)!=null&&P.height)&&(D.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((A=s.value)!=null&&A.width)&&(D.style.width=s.value.width+"px"),u.value&&((j=u.value)!=null&&j.x&&(D.style.left=u.value.x+"px"),(N=u.value)!=null&&N.y&&(D.style.top=u.value.y+"px")))}}function M(){const P=n.minHeight?n.minHeight:1,A=n.minWidth?n.minWidth:1;s.value&&u.value&&d.value&&l.value&&(s.value.height<P&&(s.value.height=P,d.value.n&&a.value&&(u.value.y=a.value.y+(l.value.height-P))),s.value.width<A&&(s.value.width=A,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-A))),n.maxHeight&&s.value.height>n.maxHeight&&(s.value.height=n.maxHeight,a.value&&d.value.n&&(u.value.y=a.value.y+(l.value.height-n.maxHeight))),n.maxWidth&&s.value.width>n.maxWidth&&(s.value.width=n.maxWidth,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-n.maxWidth))))}function y(){if(o.value){const P=c.value;if(u.value&&s.value&&d.value&&l.value){const A=P.width-P.pr-P.deltaL-P.translateX-u.value.x,j=P.height-P.pb-P.deltaT-P.translateY-u.value.y;d.value.n&&u.value.y+P.translateY<0&&a.value&&(u.value.y=-P.translateY,s.value.height=l.value.height+a.value.y+P.translateY),d.value.w&&u.value.x+P.translateX<0&&a.value&&(u.value.x=-P.translateX,s.value.width=l.value.width+a.value.x+P.translateX),s.value.width>A&&(s.value.width=A),s.value.height>j&&(s.value.height=j)}}}function b(P){if(!r.value||!l.value||!a.value||!d.value)return;P.subtract(r.value);const A=P.x,j=P.y;d.value.n?(u.value.y=a.value.y+j,s.value.height=l.value.height-j):d.value.s&&(s.value.height=l.value.height+j),d.value.e?s.value.width=l.value.width+A:d.value.w&&(s.value.width=l.value.width-A,u.value.x=a.value.x+A),y(),M(),w()}function g(P){if(!m.value)return;const A=Le.fromEvent(P);A&&b(A)}function C(){if(t.value){const{width:P,height:A,x:j,y:N}=t.value.getBoundingClientRect(),D=Le.getTransformInfo(t.value);return{size:{width:P,height:A},position:{x:j-D.x,y:N-D.y}}}return null}function E(P){if(t.value){const A=C();f.value=A}r.value=void 0,l.value=null,a.value=null,s.value=null,u.value=null,d.value=null,m.value=null,document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",E)}function O(){document.addEventListener("mousemove",g),document.addEventListener("mouseup",E)}function V(P){P instanceof MouseEvent&&P.button===2||v.value&&(document.body.click(),P.stopPropagation(),P.preventDefault(),r.value=Le.fromEvent(P),m.value=P.target,x(P),O())}function B(P){return t.value=P,p.value&&i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:A=>V(A)},null)])}function R(P=!0){document.body.click();const A=o.value||document.body,j=xt.getCurrent(A),N=t.value;P&&N&&(h.value=C(),h.value.transform=N.style.transform),j&&N&&(s.value=j,s.value.height-=14,s.value.width-=14,N.style.height=s.value.height+"px",N.style.width=s.value.width+"px",N.style.left="7px",N.style.top="7px",N.style.transform="",f.value={size:s.value,position:{x:0,y:0}},v.value=!1,S.value=!0)}function I(){var P,A;if(document.body.click(),h.value){const j={width:h.value.size.width||0,height:h.value.size.height||0},N={x:(window.innerWidth-j.width)/2,y:(window.innerHeight-j.height)/2};(P=s.value)==null||P.set(j),(A=u.value)==null||A.set(N);const D=t.value;D.style.height=j.height+"px",D.style.width=j.width+"px",D.style.left=`${N.x}px`,D.style.top=`${N.y}px`,D.style.transform="",f.value={size:j,position:N},v.value=n.draggable,S.value=!1}}function F(){if(t.value){const P=xt.getCurrent(t.value);if(P){const{width:A,height:j}=P;t.value.style.left=`${(window.innerWidth-A)/2}px`,t.value.style.top=`${(window.innerHeight-j)/2}px`,t.value.style.transform=""}}}function _(){const P=()=>{S.value?R(!1):F(),document.body.click()};return window.addEventListener("resize",P),()=>{window.removeEventListener("resize",P)}}const $=_();return{renderResizeBar:B,boundingElement:o,resizedEventParam:f,maximize:R,restore:I,allowDrag:v,isMaximized:S,unWindowResizeHandle:$,moveToCenter:F}}function _i(n,e,t){const o=i.ref(),r=i.ref(n.draggable),l=i.ref(n.lockAxis),a=i.ref(),s=i.ref(),u=i.ref(!1),d=i.ref(new Le(0,0)),m=i.ref(new Le(0,0)),c=i.ref(new Le(0,0)),f=i.ref(new Le(0,0));i.watch(()=>t.value,g=>{a.value.style.cursor=g?"move":"default"});function p(g,C){if(C.tagName==="BUTTON")return!1;if(C===g)return!0;for(const E in C.children)if(Object.prototype.hasOwnProperty.call(C.children,E)&&p(g,C.children[E]))return!0;return!1}function h(){var O,V;let g=c.value.x+m.value.x,C=c.value.y+m.value.y;l.value==="x"?(g=((O=d.value)==null?void 0:O.x)||0,c.value.x=0):l.value==="y"&&(C=((V=d.value)==null?void 0:V.y)||0,c.value.y=0);const E=`translate3d(${Math.round(g)}px, ${Math.round(C)}px, 0px)`;o.value&&(o.value.style.transform=E),f.value.x=g,f.value.y=C}function v(){if(!s.value||!o.value)return null;const g=s.value.getBoundingClientRect(),C=o.value.getBoundingClientRect(),E={top:g.top<C.top,right:g.right>C.right,bottom:g.bottom>C.bottom,left:g.left<C.left};return E.top||(c.value.y-=C.top-g.top),E.bottom||(c.value.y-=C.bottom-g.bottom),E.right||(c.value.x-=C.right-g.right),E.left||(c.value.x-=C.left-g.left),h(),E}function S(g){g&&(d.value&&g.subtract(d.value),c.value.set(g),h(),v())}function T(g){u.value&&r.value&&(g.stopPropagation(),g.preventDefault(),S(Le.fromEvent(g,a.value)))}function x(){var g;u.value&&(u.value=!1,m.value.add(c.value),c.value.reset(),(g=o.value)==null||g.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",T),document.removeEventListener("mouseup",x))}function w(){!u.value&&a.value&&(u.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",T),document.addEventListener("mouseup",x))}function M(){if(o.value){const g=Le.getTransformInfo(o.value);m.value.set(g);return}m.value.reset()}function y(g){if(!t.value||g instanceof MouseEvent&&g.button===2)return;const C=g.target||g.srcElement;a.value!==void 0&&C&&!p(C,a.value)||r.value!==!1&&(document.body.click(),g.stopPropagation(),g.preventDefault(),d.value=Le.fromEvent(g,o.value),M(),w())}function b(g,C,E){if(r.value&&C){if(g)a.value=g;else if(n.dragHandle){if(n.dragHandle instanceof HTMLElement)a.value=n.dragHandle;else if(typeof n.dragHandle=="string"){const O=C.querySelector(n.dragHandle);O&&(a.value=O)}}o.value=C,s.value=E,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",y)):r.value=!1}}return{registerDraggle:b,resetTranslate:M}}function un(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 Ei(n,e){const t=i.ref(n.enableEsc);let o=null;return t.value?(o=un("Escape",r=>{e.emit("esc",{event:r.event,type:"esc"})}),{remove:o}):null}function ki(n,e){const t=i.ref(n.enableEnter);let o=null;return t.value?(o=un("Enter",r=>{e.emit("enter",{event:r.event,type:"enter"})}),{remove:o}):null}const Ft=i.defineComponent({name:"FModal",props:dn,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),l=i.ref(""),a=i.ref(n.class),s=i.ref(n.fitContent),u=i.ref(n.showHeader),d=i.ref(""),m=i.ref(n.showCloseButton),c=i.ref(n.showMaxButton),f=i.ref(!1),p=i.ref(n.dialogType),h=i.ref(n.src),v=i.ref(""),S=i.ref(n.showButtons),T=i.ref(n.title),x=i.ref(n.containment||null),w=i.ref(),{t:M}=ut.useI18n();T.value==="错误提示"&&(T.value=M("messageBox.errorTitle"));const y=i.ref(!1);function b(Z,ge){const _e=ge?"accept":"cancel";Promise.resolve().then(()=>{var Oe;return(Oe=n.beforeClose)==null?void 0:Oe.call(n,{closeType:_e})}).then(Oe=>{Oe&&(r.value=!1,e.emit("update:modelValue",!1),ge!=null&&e.emit(ge?"accept":"cancel"),e.emit("closed",Z))})}const g=[{name:"cancel",text:M("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:Z=>{b(Z,!1)}},{name:"accept",text:M("messageBox.ok")||"确定",class:"btn btn-primary",handle:Z=>{b(Z,!0)}}],C=i.ref(n.buttons&&n.buttons.length?n.buttons:g),E=i.computed(()=>!!d.value),O=i.computed(()=>!!S.value&&!!C.value),V=i.ref(),B=i.ref(),R=i.ref(!1),{renderResizeBar:I,maximize:F,restore:_,boundingElement:$,resizedEventParam:P,allowDrag:A,unWindowResizeHandle:j,moveToCenter:N}=Mi(n),{registerDraggle:D}=_i(n,e,A);function J(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function ne(){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&&(T.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,$.value=x.value,D(V.value,B.value,$.value),N())}),Z||(x.value&&(x.value=null),ne())),r.value?y.value=J():(R.value=!1,A.value=n.draggable)}),i.watch(()=>n.showHeader,(Z,ge)=>{Z!==ge&&(u.value=Z)}),i.watch(()=>n.showButtons,(Z,ge)=>{Z!==ge&&(S.value=Z)}),i.watch(()=>P.value,(Z,ge)=>{const _e=Z||{},Oe=ge||{};JSON.stringify(_e)!==JSON.stringify(Oe)&&e.emit("resize",{newSize:Z,oldSize:ge,isMaximized:R.value})});const X=i.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),ie=i.computed(()=>{var _e;const Z={modal:!0,"farris-modal":!0,fade:!0};Z["f-modal-fitContent"]=!!s.value,Z.show=!!X.value;const ge=(_e=n.maskClass)==null?void 0:_e.split(" ");return ge==null||ge.reduce((Oe,Ye)=>(Oe[Ye]=!0,Oe),Z),Z}),W=i.computed(()=>{var _e;const Z={"modal-dialog":!0},ge=(_e=a.value)==null?void 0:_e.split(" ");return ge==null||ge.reduce((Oe,Ye)=>(Oe[Ye]=!0,Oe),Z),Z}),q=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}),H=()=>ee.getMaxZIndex()||1040,Y=i.computed(()=>{const Z={display:"block",zIndex:H()};return n.mask||(Z.pointerEvents="none",Z.backgroundColor="transparent"),y.value&&(Z.backgroundColor="transparent"),Z}),se=i.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),pe=i.computed(()=>{const Z={display:u.value?"":"none"};return Z["pointer-events"]=A.value?"auto":"none",Z}),me=i.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:R.value})),ue=i.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function xe(){return{height:`${n.footerHeight||60}px`}}const Pe=i.computed(()=>{const Z={textAlgin:v.value},ge=xe();return Object.assign(Z,ge)});function he(Z){if(Z==null||Z.stopPropagation(),R.value){R.value=!1,_();return}F(),R.value=!0}async function ze(Z,ge){Z.handle&&await Z.handle(ge,Z)&&e.emit("closed",ge)}function G(Z){Z.width&&(t.value=Z.width),Z.height&&(o.value=Z.height),Z.buttons&&(C.value=Z.buttons),Z.title&&(T.value=Z.title)}let U=null,K=null;i.onBeforeMount(()=>{y.value=J()}),i.onMounted(()=>{B.value&&!x.value&&(x.value=B.value.parentElement,$.value=x.value,D(V.value,B.value,$.value)),X.value&&document.body.classList.add("modal-open"),U=Ei(n,e),K=ki(n,e)}),i.onUnmounted(()=>{j&&j(),U&&U.remove(),K&&K.remove()}),e.expose({modalElementRef:B,updateModalOptions:G,close:b,maxDialog:he,isMaximized:R});function Fe(){return i.createVNode("ul",null,[f.value&&i.createVNode("li",{class:"f-btn-icon f-bare"},[i.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&i.createVNode("li",{onClick:he,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[i.createVNode("span",{class:me.value},null)]),m.value&&i.createVNode("li",{class:"f-btn-icon f-bare",onClick:Z=>b(Z,!1),style:"pointer-events: auto;"},[i.createVNode("span",{class:"f-icon modal_close"},null)])])}function Ee(){return i.createVNode("div",{class:"modal-footer",style:Pe.value},[C.value&&C.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=>{ze(Z,_e)}},[!!Z.iconClass&&i.createVNode("i",{class:Z.iconClass},null),Z.text])})])}function $e(){return i.createVNode("div",{ref:V,class:"modal-header",style:pe.value},[e.slots.headerTemplate?e.slots.headerTemplate():i.createVNode("div",{class:"modal-title"},[E.value&&i.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),i.createVNode("span",{class:"modal-title-label"},[T.value])]),i.createVNode("div",{class:"actions"},[Fe()])])}function Je(){return e.slots.footerTemplate?e.slots.footerTemplate():O.value&&Ee()}function tt(Z){if(Z.stopPropagation(),n.allowClickMaskToClose){if(Z.target!==w.value)return;b(Z,!1)}}function Qe(){var Z,ge;return i.createVNode("div",{id:l.value,class:W.value,style:q.value,ref:B},[i.createVNode("div",{class:se.value},[u.value&&$e(),i.createVNode("div",{class:ue.value},[(ge=(Z=e.slots).default)==null?void 0:ge.call(Z),p.value==="iframe"&&i.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:h.value},null)]),Je()]),!s.value&&B.value&&!R.value&&I(B.value)])}function Ue(Z){return Z||"body"}return()=>i.createVNode(i.Teleport,{to:Ue(n.host)},{default:()=>[X.value&&i.createVNode(i.Transition,{name:"fade",appear:!0},{default:()=>[i.createVNode("div",{ref:w,class:ie.value,style:Y.value,onClick:tt},[Qe()])]})]})}});function fn(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function Vi(n){const e=document.createElement("div");e.style.display="contents";const t=i.createApp({setup(o,r){i.onUnmounted(()=>{document.body.removeChild(e)});const l=i.ref(),a=i.ref(n.class||""),s=i.ref(!!n.showButtons),u=i.ref(!!n.showHeader),d=i.ref(n.showCloseButton==null?!0:n.showCloseButton),m=i.ref(!0),c=i.ref(n.title||""),f=n.acceptCallback||(()=>{}),p=n.rejectCallback||(()=>{}),h=n.closedCallback||(w=>{}),v=n.resizeHandle||(w=>{}),S=n.stopMoveHandle||(w=>{}),T=fn(n),x=w=>{m.value=!1,t.unmount(),h(w)};return i.onMounted(()=>{}),r.expose({modalRef:l}),()=>i.createVNode(Ft,{ref:l,class:a.value,modelValue:m.value,"onUpdate:modelValue":w=>m.value=w,title:c.value,width:n.width,height:n.height,buttons:n.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:f,onCancel:p,fitContent:n.fitContent==null?!0:n.fitContent,onClosed:x,onResize:v,onStopMove:S},{default:()=>[T&&T(t)]})}});return document.body.appendChild(e),t.use(Rt.LocaleService.i18n),t.mount(e),t}class mn{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 Vi(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),l=o.value.acceptCallback||(()=>{}),a=o.value.rejectCallback||(()=>{}),s=o.value.closedCallback||((y,b)=>{}),u=o.value.resizeHandle||(y=>{}),d=e.stopMoveHandle||(y=>{});let m;const c=fn(o.value),f=y=>{var g;r.value=!1;const b=(g=y==null?void 0:y.target)==null?void 0:g.classList.contains("modal_close");s(y,this.isUseEscCloseModal.value?"esc":b?"icon":"button")},p=y=>{f(y),m&&i.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],i.render(null,t),m=null,this.modalRef.value=null,this.modalRefs){const b=Object.keys(this.modalRefs).map(g=>Number(g));b.length>0?this.activeModalIndex.value=Math.max(...b):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},h=y=>{var b;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((b=this.activeModalInstance.value)==null||b.close(y==null?void 0:y.event))},{width:v,height:S}=o.value,T=this.adaptToWindow(v||500,S||320);Object.assign(o.value,T);const x=()=>i.createVNode(Ft,i.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":y=>r.value=y},o.value,{onAccept:l,onCancel:a,onClosed:p,onResize:u,onEsc:h,onStopMove:d}),{default:()=>[c&&c(this.app)]});return m=(y=>{const b=i.h(x,y);return b.appContext=this.appContext,i.render(b,t),b})({...o.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:y=>{o.value={...o.value,...y},m&&i.render(i.cloneVNode(m,{...o}),t)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}function Ii(n={}){function e(d,m,c,f){if(typeof c=="number")return f[d].length===c;if(typeof c=="object"){const p=Object.keys(c)[0],h=c[p];if(p==="not")return Number(f[d].length)!==Number(h);if(p==="moreThan")return Number(f[d].length)>=Number(h);if(p==="lessThan")return Number(f[d].length)<=Number(h)}return!1}function t(d,m,c,f){return f[d]&&f[d].propertyValue&&String(f[d].propertyValue.value)===String(c)}const o=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((d,m)=>(d.set(m,n[m]),d),o);function r(d,m){const c=d;return typeof m=="number"?[{target:c,operator:"length",param:null,value:Number(m)}]:typeof m=="boolean"?[{target:c,operator:"getProperty",param:d,value:!!m}]:typeof m=="object"?Object.keys(m).map(f=>{if(f==="length")return{target:c,operator:"length",param:null,value:m[f]};const p=f,h=m[f];return{target:c,operator:"getProperty",param:p,value:h}}):[]}function l(d){return Object.keys(d).reduce((c,f)=>{const p=r(f,d[f]);return c.push(...p),c},[])}function a(d,m){if(o.has(d.operator)){const c=o.get(d.operator);return c&&c(d.target,d.param,d.value,m)||!1}return!1}function s(d,m){return l(d).reduce((p,h)=>p&&a(h,m),!0)}function u(d,m){const c=Object.keys(d),f=c.includes("allOf"),p=c.includes("anyOf"),h=f||p,T=(h?d[h?f?"allOf":"anyOf":"allOf"]:[d]).map(w=>s(w,m));return f?!T.includes(!1):T.includes(!0)}return{parseValueSchema:u}}const Pi={convertTo:(n,e,t,o)=>{n.appearance||(n.appearance={}),n.appearance[e]=t},convertFrom:(n,e,t)=>n.appearance?n.appearance[e]:n[e]},Ni={convertFrom:(n,e,t)=>n.buttons&&n.buttons.length?`共 ${n.buttons.length} 项`:"无"},Bi={convertTo:(n,e,t,o)=>{n.editor&&(n.editor[e]=t)},convertFrom:(n,e,t)=>n.editor&&Object.prototype.hasOwnProperty.call(n.editor,e)?n.editor[e]:n[e]},Oi={convertFrom:(n,e,t)=>{var r;const o=n.editor&&n.editor[e]?n.editor[e]:n[e];return((r=te[o])==null?void 0:r.name)||o}},ji={convertTo:(n,e,t,o)=>{n[e]=n[e]},convertFrom:(n,e,t)=>n.editor?t.getRealEditorType(n.editor.type):""},Ri={convertTo:(n,e,t,o)=>{(n.type==="data-grid-column"||n.type==="tree-grid-column")&&(n.formatter?n.formatter[e]=t:n.formatter={[e]:t})},convertFrom:(n,e,t)=>{if(n.formatter){if(e==="trueText")return n.formatter.trueText;if(e==="falseText")return n.formatter.falseText;if(e==="prefix")return n.formatter.prefix;if(e==="suffix")return n.formatter.suffix;if(e==="precision")return n.formatter.precision;if(e==="decimal")return n.formatter.decimal;if(e==="thousand")return n.formatter.thousand;if(e==="dateFormat")return n.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return n.formatter.customFormat;if(e==="type")return n.formatter.type||"none"}return"none"}},$i={convertTo:(n,e,t,o)=>{n.command?n.command[e]=t:n.command={[e]:t},e==="enable"&&t&&(n.command.commands||(n.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(n,e,t)=>n.command&&e==="enable"?n.command.enable:""},Ai={convertTo:(n,e,t,o)=>{n.column?n.column[e]=t:n.column={[e]:t},e==="fitColumns"&&t&&(n.column.fitMode||(n.column.fitMode="average"))},convertFrom:(n,e,t)=>{if(n.column){if(e==="fitColumns")return n.column.fitColumns;if(e==="fitMode")return n.column.fitMode}return""}},Li={convertTo:(n,e,t,o)=>{n.summary?n.summary[e]=t:n.summary={[e]:t},e==="enable"&&t&&(n.summary?n.summary.groupFields||(n.summary.groupFields=[]):n.summary={enable:t,groupFields:[]})},convertFrom:(n,e,t)=>n.summary&&e==="enable"?n.summary.enable:n.type==="data-grid-column"?n.enableSummary===void 0?!1:n.enableSummary:""},Hi={convertTo:(n,e,t,o)=>{n.group?n.group[e]=t:n.group={[e]:t},e==="enable"&&t&&(n.group?n.group.groupFields||(n.group.groupFields=[]):n.group={enable:t,groupFields:[],showSummary:!1})},convertFrom:(n,e,t)=>{if(n.group){if(e==="enable")return n.group.enable;if(e==="showSummary")return n.group.showSummary}}},Di={convertFrom:(n,e)=>n.binding?n.binding.path:"",convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.binding||(n.binding={}),n.binding.type="Form",n.binding.path=o.bindingField,n.binding.field=o.id,n.binding.fullPath=o.path,n.path=o.bindingPath}}},qi={convertTo:(n,e,t,o)=>{n.pagination||(n.pagination={}),n.pagination[e]=t},convertFrom:(n,e,t)=>n.pagination?n.pagination[e]:n[e]},Wi={convertTo:(n,e,t,o)=>{n.rowNumber||(n.rowNumber={}),n.rowNumber[e]=t},convertFrom:(n,e,t)=>n.rowNumber?n.rowNumber[e]:n[e]},zi={convertTo:(n,e,t,o)=>{n.selection||(n.selection={}),n.selection[e]=t},convertFrom:(n,e,t)=>{var o,r;return e==="showCheckbox"?(o=n.selection)!=null&&o.multiSelect?!0:(r=n.selection)==null?void 0:r.showCheckbox:n.selection?n.selection[e]:n[e]}},Gi={convertFrom:(n,e,t)=>n[e]&&n[e].length?`共 ${n[e].length} 项`:""},Ui={convertFrom:(n,e)=>n[e]||"",convertTo:(n,e,t)=>{n[e]=t}},Yi={convertTo:(n,e,t,o)=>{n.size||(n.size={}),n.size[e]=t},convertFrom:(n,e,t)=>n.size?n.size[e]:n[e]},Xi={convertFrom:(n,e,t)=>{var o,r;return(o=n.formatter)!=null&&o.data&&e==="formatterEnumData"&&!n.formatterEnumData?(r=n.formatter)==null?void 0:r.data:n.formatterEnumData}},Zi={convertTo:(n,e,t,o)=>{n.sort||(n.sort={}),n.sort[e]=t},convertFrom:(n,e,t)=>{var o,r;if(e==="mode")return((o=n.sort)==null?void 0:o.mode)||"client";if(e==="multiSort")return!!((r=n.sort)!=null&&r.multiSort)}},Ji={convertTo:(n,e,t,o)=>{n.filter||(n.filter={}),n.filter[e]=t},convertFrom:(n,e,t)=>{var o;if(e==="mode")return((o=n.filter)==null?void 0:o.mode)||"client"}},Qi={convertTo:(n,e,t,o)=>{n.rowOption?n.rowOption[e]=t:n.rowOption={[e]:t}},convertFrom:(n,e,t)=>{if(n.rowOption){if(e==="customRowStyle")return n.rowOption.customRowStyle;if(e==="customCellStyle")return n.rowOption.customCellStyle}return""}};function pn(n,e,t){const o=new Map([["/converter/appearance.converter",Pi],["/converter/buttons.converter",Ni],["/converter/property-editor.converter",Bi],["/converter/items-count.converter",Gi],["/converter/type.converter",Oi],["/converter/change-editor.converter",ji],["/converter/change-formatter.converter",Ri],["/converter/column-command.converter",$i],["/converter/column-option.converter",Ai],["/converter/summary.converter",Li],["/converter/group.converter",Hi],["/converter/form-group-label.converter",Ui],["/converter/field-selector.converter",Di],["/converter/pagination.converter",qi],["/converter/row-number.converter",Wi],["/converter/grid-selection.converter",zi],["/converter/size.converter",Yi],["/converter/change-formatter-enum.converter",Xi],["/converter/grid-sort.converter",Zi],["/converter/grid-filter.converter",Ji],["/converter/row-option.converter",Qi]]),r=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),l=Ii();function a(h,v){return()=>l.parseValueSchema(h,v)}function s(h,v,S){return h.includes("visible")&&v.visible!==void 0?typeof v.visible=="boolean"?()=>!!v.visible:v.visible===void 0?!0:a(v.visible,S):()=>!0}function u(h,v,S){return h.includes("readonly")&&v.readonly!==void 0?typeof v.readonly=="boolean"?()=>!!v.readonly:a(v.readonly,S):()=>!1}function d(h,v){const S=h.$converter||v;return typeof S=="string"&&S&&o.has(S)?o.get(S)||null:S||null}function m(h,v,S,T,x,w="",M=""){return Object.keys(h).map(b=>{const g=i.ref(1),C=b,E=h[b],O=Object.keys(E),V=E.title,B=E.type,R=r.get(B)||{type:"input-group",enableClear:!1},I=E.editor?Object.assign({},R,E.editor):Object.assign({},R),F=s(O,E,v),_=u(O,E,v);I.readonly=I.readonly===void 0?_():I.readonly;const $=E.type==="cascade"?m(E.properties,v,S,T,x,w,M):[],P=!0;let A=d(E,M);const j=i.computed({get(){if(g.value){if(["class","style"].find(W=>W===C)&&!A&&(A=o.get("/converter/appearance.converter")||null),A&&A.convertFrom)return A.convertFrom(S,b,x,w);const ie=S[b];return Object.prototype.hasOwnProperty.call(E,"defaultValue")&&(ie===void 0||typeof ie=="string"&&ie==="")?E.type==="boolean"?E.defaultValue:E.defaultValue||"":ie}return null},set(ie){g.value+=1,A&&A.convertTo?(A.convertTo(T,b,ie,x,w),A.convertTo(S,b,ie,x,w)):(T[b]=ie,S[b]=ie)}}),{refreshPanelAfterChanged:N,description:D,isExpand:J,parentPropertyID:ne}=E,X={propertyID:C,propertyName:V,propertyType:B,propertyValue:j,editor:I,visible:F,readonly:_,cascadeConfig:$,hideCascadeTitle:P,refreshPanelAfterChanged:N,description:D,isExpand:J,parentPropertyID:ne};return v[C]=X,X})}function c(h,v,S={}){const T={},x=n[h];return x&&x.categories?Object.keys(x.categories).map(M=>{const y=x.categories[M],b=y==null?void 0:y.title,g=m(y.properties||{},T,{},S,v);return{categoryId:M,categoryName:b,properties:g}}):[]}function f(h,v,S,T,x=""){const w=v.$ref.schema,M=v.$ref.converter,y=S[w],b=y.type,g=t(y),C={},E=n[b];if(E&&E.categories){const O=E.categories[h],V=O==null?void 0:O.title;M&&Object.keys(O.properties).forEach(I=>{O.properties[I].$converter=M});const B=(O==null?void 0:O.properties)||{},R=m(B,C,g,y,T,x);return{categoryId:h,categoryName:V,properties:R}}return{categoryId:h,categoryName:"",properties:[]}}function p(h,v,S,T,x){const w=h.type,M=t(h),y={};let b=x||n[w];if(b&&Object.keys(b).length===0&&S&&S.getPropConfig&&(b=S.getPropConfig(T)),b&&b.categories){const g=[];return Object.keys(b.categories).map(C=>{const E=b.categories[C];if(E.$ref){g.push(f(C,E,h,v,T));return}const O=E==null?void 0:E.title,V=E==null?void 0:E.tabId,B=E==null?void 0:E.tabName,R=E==null?void 0:E.hide,I=E==null?void 0:E.hideTitle,F=m(E.properties||{},y,M,h,v,T,E.$converter),{setPropertyRelates:_}=E,$=E==null?void 0:E.parentPropertyID;g.push({categoryId:C,categoryName:O,tabId:V,tabName:B,hide:R,properties:F,hideTitle:I,setPropertyRelates:_,parentPropertyID:$})}),g}return[]}return{getPropertyConfigBySchema:p,getPropertyConfigByType:c,propertyConverterMap:o}}function hn(n,e){let t;function o(c){const{properties:f,title:p,ignore:h}=c,v=h&&Array.isArray(h),S=Object.keys(f).reduce((T,x)=>((!v||!h.find(w=>w===x))&&(T[x]=f[x].type==="object"&&f[x].properties?o(f[x]):Ne.cloneDeep(f[x].default)),T),{});if(p&&(!v||!h.find(T=>T==="id"))){const T=p.toLowerCase().replace(/-/g,"_");S.id=`${T}_${Math.random().toString().slice(2,6)}`}return S}function r(c){const{properties:f,title:p,required:h}=c;if(h&&Array.isArray(h)){const v=h.reduce((S,T)=>(S[T]=f[T].type==="object"&&f[T].properties?o(f[T]):Ne.cloneDeep(f[T].default),S),{});if(p&&h.find(S=>S==="id")){const S=p.toLowerCase().replace(/-/g,"_");v.id=`${S}_${Math.random().toString().slice(2,6)}`}return v}return{type:p}}function l(c,f={},p){const h=n[c];if(h){let v=r(h);const S=e[c];return v=S?S({getSchemaByType:l},v,f,p):v,t!=null&&t.appendIdentifyForNewControl&&t.appendIdentifyForNewControl(v),v}return null}function a(c,f){const p=o(f);return Object.keys(p).reduce((h,v)=>(Object.prototype.hasOwnProperty.call(c,v)&&(h[v]&&Ne.isPlainObject(h[v])&&Ne.isPlainObject(c[v]||!c[v])?Object.assign(h[v],c[v]||{}):h[v]=c[v]),h),p),p}function s(c,f){return Object.keys(c).filter(h=>c[h]!=null).reduce((h,v)=>{if(f.has(v)){const S=f.get(v);if(typeof S=="string")h[S]=c[v];else{const T=S(v,c[v],c);Object.assign(h,T)}}else h[v]=c[v];return h},{})}function u(c,f,p=new Map){const h=a(c,f);return s(h,p)}function d(c){var p;const f=c.type;if(f){const h=n[f];if(!h)return c;const v=a(c,h),S=((p=c.editor)==null?void 0:p.type)||"";if(S){const T=n[S],x=a(c.editor,T);v.editor=x}return v}return c}function m(c){t=c}return{getSchemaByType:l,resolveSchemaWithDefaultValue:d,resolveSchemaToProps:u,mappingSchemaToProps:s,setDesignerContext:m}}const gn={},yn={},{getSchemaByType:Hs,resolveSchemaWithDefaultValue:Ki,resolveSchemaToProps:Ds,mappingSchemaToProps:qs,setDesignerContext:Ws}=hn(gn,yn),vn={},bn={};pn(vn,bn,Ki);const Cn={},wn={},{getSchemaByType:zs,resolveSchemaWithDefaultValue:er,resolveSchemaToProps:tr,mappingSchemaToProps:nr,setDesignerContext:Gs}=hn(Cn,wn),Sn={},xn={};pn(Sn,xn,er);function yt(n,e,t=new Map,o=(a,s,u,d)=>s,r={},l=a=>a){return Cn[e.title]=e,wn[e.title]=o,Sn[e.title]=r,xn[e.title]=l,gn[e.title]=e,yn[e.title]=o,vn[e.title]=r,bn[e.title]=l,(a={},s=!0)=>{if(!s)return nr(a,t);const u=tr(a,e,t),d=Object.keys(n).reduce((m,c)=>(m[c]=n[c].default,m),{});return Object.assign(d,u)}}function Lt(n,e){return{customClass:e.class,customStyle:e.style}}const Yt=new Map([["appearance",Lt]]),or=new Map([]),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},name:{description:"The name string of form group component",type:"string",default:"form group"},showLabelType:{description:"",type:"string",default:"visible"}},required:["id","type","editor"]};yt({id:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number]},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},showLabelType:{type:String,default:"visible"},type:{type:String,default:"input-group"},componentId:{type:String,default:""},errors:{type:Object,default:null}},Fn,Yt,void 0);const ir=i.ref(0);function rr(){ir.value++}function ar(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function o(u,d=""){return{path:d+u.code,field:u.id,fullPath:u.code}}function r(u,d=""){return e.getViewModelById(u).states.map(c=>o(c,d))}function l(u){const d=e.getRootViewModelId(),m=r(u);if(u===d)return m;const c=r(d,"root-component.");return[...m,...c]}function a(u){return u.binding&&u.binding.path||u.id||""}function s(){return t&&t.getRenderStates()||[]}return{getVariables:l,getControlName:a,getStateMachines:s}}class Tn{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,l,a)=>{const s=l.getExpressionRuleValue(e,t||r);return s&&s.value||""},convertTo:(o,r,l,a,s)=>{var u;if(r==="dataPicking"&&(l!=null&&l.target)){const d=`${l.target}_dataPicking`;((u=l.rules)==null?void 0:u.some(c=>c.id===d&&c.value))?o.dictPickingExpressionId=d:delete o.dictPickingExpressionId}a.updateExpression(l)}}));this.formSchemaService=e}getExpressionRule(e,t){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(a=>a.target===e);if(!r)return"";const l=r.rules.find(a=>a.type===t);return l||""}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(l=>{r.push({key:l.code,name:l.name,description:l.name,category:l.category})}),r}createTreeNode(e,t,o="label"){return{id:e.id,name:e.name,bindingPath:e[o],parents:t,type:"field"}}buildEntityFieldsTreeData(e=null,t){const o=[];return e==null||e.forEach(r=>{var s;const l=this.createTreeNode(r,t);let a=[];(s=r.type)!=null&&s.fields&&(a=this.buildEntityFieldsTreeData(r.type.fields,[...t,r.label])),o.push({data:l,children:a,expanded:!0})}),o}buildChildEntityTreeData(e=null,t){const o=[];return e==null||e.forEach(r=>{var u,d;const l=this.createTreeNode(r,t);l.type="entity";const a=this.buildEntityFieldsTreeData((u=r.type)==null?void 0:u.fields,[...t,r.label]),s=this.buildChildEntityTreeData((d=r.type)==null?void 0:d.entities,[...t,r.label]);s!=null&&s.length&&(a==null||a.push(...s)),o.push({data:l,children:a||[],expanded:!0})}),o}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const 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,l=this.getExpressionRule(r,t),a=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(t)&&l?l.message:"",...a};return l.messageType!=null&&(s.messageType=l.messageType),s}buildRule(e,t,o,r){const{expression:l,message:a,messageType:s}=t,u={id:`${e}_${o}`,type:o,value:l};return(o==="validate"||o==="dataPicking"||o==="required")&&(u.message=a),o==="dataPicking"&&(u.messageType=s),o==="validate"&&r&&(u.elementId=r),u}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,o,r){const l=t==="Field"?e.binding.field:e.id,a=this.buildRule(l,o,r,e.type==="form-group"?e.id:"");let u=this.getExpressionData().find(m=>m.targetType===t&&m.target===l);const d=m=>m.value.trim()==="";if(u){const m=u.rules.find(c=>c.id===a.id);if(m)d(a)?u.rules=u.rules.filter(c=>c.id!==a.id):(Object.assign(m,a),r==="validate"&&e.type==="form-group"&&(m.elementId=e.id));else{if(d(a))return null;u.rules=u.rules||[],u.rules.push(a)}}else{if(d(a))return null;u={target:`${l}`,rules:[a],targetType:t}}return u}getExpressionEditorOptions(e,t,o,r){return o.reduce((l,a)=>{var u,d;const s=t==="Field"?(u=e==null?void 0:e.binding)==null?void 0:u.field:e.id;return l[a]={hide:t==="Field"?!!((d=e==null?void 0:e.binding)!=null&&d.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(s),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,t),onSubmitModal:m=>{const c=this.updateExpression(e,t,m,a);if(r){const f=this.buildRule(s,m,a);r(f)}return c}}},l},{})}getExpressionInfo(e,t,o){const r=t==="Field"?e.binding.field:e.id,l=this.getExpressionRule(r,o),a={value:l&&l.value,targetId:r,targetType:t,expressionType:o};return l&&l.message&&(a.message=l.message),a}getExpressionConfig(e,t,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",hide:!e.binding,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 Mn{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,"designerContext");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,this.designerContext=t.designerContext}getFormDesignerInstance(){var e,t;return(t=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:t.formDesigner.value}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(l=>l.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]&&te[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},o){const r={title:"外观",description:"Appearance"},l={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in t)l[a]=Object.assign(l[a]||{},t[a]);return{...r,properties:{...l},setPropertyRelates(a,s){if(a){switch(a&&a.propertyID){case"class":case"style":{ht.value++;break}}o&&o(a,e,s)}}}}getPropertyEditorParams(e,t=[],o="visible",r={},l={},a=""){const{getVariables:s,getControlName:u,getStateMachines:d}=ar(this.designerHostService),m=this.getRealTargetType(e),c=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],f={type:"property-editor",propertyTypes:c};return c.map(p=>{switch(p){case"Const":Object.assign(f,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":f.expressionConfig=this.getExpressionOptions(e,m,a||o);break;case"StateMachine":f.stateMachines=d();break;case"Variable":Object.assign(f,{controlName:u(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),onBeforeOpenVariables:h=>{h.value=s(this.viewModelId)}},l);break}}),f}getVisibleProperty(e,t=""){var l;let o=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?o=["Const","Expression"]:t==="form-group"&&!((l=e.binding)!=null&&l.field)&&(o=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,o,"visible")}}}getBehaviorConfig(e,t="",o={},r){const l={title:"行为",description:""},a=this.getVisibleProperty(e,t);for(const u in o)a[u]=Object.assign(a[u]||{},o[u]);const s=this;return{...l,properties:{...a},setPropertyRelates(u,d){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(e,u);break}r&&r(u,d)}}}}afterMutilEditorChanged(e,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(a=>a.id===e),l=Ne.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,l),rr()}addNewVariableToViewModel(e,t){const o=e.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const a={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById(t).states.push(a)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:l,expressionInfo:a}=t,{targetId:s,targetType:u,expressionType:d,value:m,message:c}=a,f=this.formSchemaUtils.getModule();f.expressions=f.expressions||[];const{expressions:p}=f;let h=p.find(S=>S.target===s);h||(h={target:s,rules:[],targetType:u},p.push(h));const v=h.rules.find(S=>S.type===d);if(v)v.value=m,v.message=c;else{const S={id:l,type:d,value:m,message:c};h.rules.push(S)}delete t.expressionInfo}clearExpression(e,t){const o=e.propertyValue;if(o&&o.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),s=t.binding?t.binding.field:t.id,u=a.find(d=>d.target===s);!u||!u.rules||(u.rules=u.rules.filter(d=>d.type!==l))}getExpressionOptions(e,t,o){return new Tn(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"}createBaseEventProperty(e){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:o=>{var r;((r=o.controller)==null?void 0:r.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(o)}}},t}}const Ot=class Ot{static getEditorTypesByMDataType(e,t=!1,o=""){if(t)return[{key:te["language-textbox"].type,value:te["language-textbox"].name}];let r=Ot.fieldControlTypeMapping[e];if(o==="data-grid-column"&&(r!=null&&r.length)){const l=[te["check-group"].type,te["radio-group"].type];r=r.filter(a=>!l.includes(a.key))}return r}static getAllInputTypes(){const e=[];for(const t in Ot.fieldControlTypeMapping)Ot.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 l;const o=(l=e.editor)==null?void 0:l.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(Ot,"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.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].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},{key:te.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].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 jt=Ot;var Nt=(n=>(n.Form="Form",n.Variable="Variable",n))(Nt||{});class lr{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 sr(n){let e,t;const o=new Map;let r=[];function l(m,c){const p=m.split(" ").filter(x=>x.startsWith("col-"));if(p.length===0){c.isSupportedClass=!1;return}let h=p.find(x=>/^col-([1-9]|10|11|12)$/.test(x)),v=p.find(x=>/^col-md-([1-9]|10|11|12)$/.test(x)),S=p.find(x=>/^col-xl-([1-9]|10|11|12)$/.test(x)),T=p.find(x=>/^col-el-([1-9]|10|11|12)$/.test(x));h=h||"col-12",c.columnInSM=parseInt(h.replace("col-",""),10),c.displayWidthInSM=c.columnInSM/12,c.displayWidthInSM!==1&&(c.isSupportedClass=!1),v=v||"col-md-"+c.columnInSM,c.columnInMD=parseInt(v.replace("col-md-",""),10),c.displayWidthInMD=c.columnInMD/6,[1,2].includes(c.displayWidthInMD)||(c.isSupportedClass=!1),S=S||"col-xl-"+c.columnInMD,c.columnInLG=parseInt(S.replace("col-xl-",""),10),c.displayWidthInLG=c.columnInLG/3,[1,2,3,4].includes(c.displayWidthInLG)||(c.isSupportedClass=!1),T=T||"col-el-"+c.columnInLG,c.columnInEL=parseInt(T.replace("col-el-",""),10),c.displayWidthInEL=c.columnInEL/2,[1,2,3,4,5,6].includes(c.displayWidthInEL)||(c.isSupportedClass=!1)}function a(m,c,f,p=!1){let h=!1;m.contents.forEach(v=>{if(v.type==="fieldset"){f+=1,a(v,c,f,!0),h=!0;return}h&&(f+=1,h=!1);const S=v.appearance&&v.appearance.class,T=new lr;S?l(S,T):T.isSupportedClass=!1,T.label=v.label||v.id,T.id=v.id,T.group=f,p&&(T.fieldSetId=m.id),t===v.id&&(e=f),o.set(v.id,v),c.push(T)})}function s(m){const c=n.getComponentById(m);if(!c||!c.componentType||!c.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const f=n.selectNode(c,p=>p.type===at.DgControl["response-form"].type);return!f||!f.contents||f.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:f}}function u(m,c){c=c||m.id;const{result:f,message:p,formNode:h}=s(c);if(!f)return{result:f,message:p};t=m.id,r=[],o.clear();const v=h.contents[0].type===at.DgControl.fieldset.type?0:1;a(h,r,v);const S=r.find(x=>!x.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:S?"customize":"standard"},importData:r}}function d(m,c){c=c;const{result:f,formNode:p}=s(c);if(!f)return"";const h=[];return m.forEach(v=>{var x;const S=o.get(v.id),T=S.appearance&&S.appearance.class;if(T){const M=T.split(" ").filter(O=>!O.startsWith("col-")),y="col-"+v.columnInSM,b="col-md-"+v.columnInMD,g="col-xl-"+v.columnInLG,C="col-el-"+v.columnInEL,E=[y,b,g,C].concat(M);S.appearance.class=E.join(" ")}if(v.fieldSetId){const w=p.contents.find(y=>y.id===v.fieldSetId),M=h.find(y=>y.id===v.fieldSetId);M?(x=M.contents)==null||x.push(S):(h.push(w),w.contents=[S])}else h.push(S)}),p.contents=h,p.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:u,changeFormControlsByResponseLayoutConfig:d,getResonseFormLayoutConfig:a}}var vt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ht(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 cr={exports:{}};(function(n,e){(function(t){n.exports=t()})(function(){return function(){function t(o,r,l){function a(d,m){if(!r[d]){if(!o[d]){var c=typeof Ht=="function"&&Ht;if(!m&&c)return c(d,!0);if(s)return s(d,!0);var f=new Error("Cannot find module '"+d+"'");throw f.code="MODULE_NOT_FOUND",f}var p=r[d]={exports:{}};o[d][0].call(p.exports,function(h){var v=o[d][1][h];return a(v||h)},p,p.exports,t,o,r,l)}return r[d].exports}for(var s=typeof Ht=="function"&&Ht,u=0;u<l.length;u++)a(l[u]);return a}return t}()({1:[function(t,o,r){var l={},a="(?:^|\\s)",s="(?:\\s|$)";function u(c){var f=l[c];return f?f.lastIndex=0:l[c]=f=new RegExp(a+c+s,"g"),f}function d(c,f){var p=c.className;p.length?u(f).test(p)||(c.className+=" "+f):c.className=f}function m(c,f){c.className=c.className.replace(u(f)," ").trim()}o.exports={add:d,rm:m}},{}],2:[function(t,o,r){(function(l){var a=t("contra/emitter"),s=t("crossvent"),u=t("./classes"),d=document,m=d.documentElement;function c(V,B){var R=arguments.length;R===1&&Array.isArray(V)===!1&&(B=V,V=[]);var I,F,_,$,P,A,j,N,D,J=null,ne,X,ie=!1,W=0,q,H=B||{};H.moves===void 0&&(H.moves=x),H.accepts===void 0&&(H.accepts=x),H.invalid===void 0&&(H.invalid=Ee),H.containers===void 0&&(H.containers=V||[]),H.isContainer===void 0&&(H.isContainer=T),H.copy===void 0&&(H.copy=!1),H.copySortSource===void 0&&(H.copySortSource=!1),H.revertOnSpill===void 0&&(H.revertOnSpill=!1),H.removeOnSpill===void 0&&(H.removeOnSpill=!1),H.direction===void 0&&(H.direction="vertical"),H.ignoreInputTextSelection===void 0&&(H.ignoreInputTextSelection=!0),H.mirrorContainer===void 0&&(H.mirrorContainer=d.body);var Y=a({containers:H.containers,start:K,end:$e,cancel:Z,remove:Ue,destroy:xe,canMove:U,dragging:!1});return H.removeOnSpill===!0&&Y.on("over",bt).on("out",_t),pe(),Y;function se(k){return Y.containers.indexOf(k)!==-1||H.isContainer(k)}function pe(k){var L=k?"remove":"add";h(m,L,"mousedown",he),h(m,L,"mouseup",tt)}function me(k){var L=k?"remove":"add";h(m,L,"mousemove",ze)}function ue(k){var L=k?"remove":"add";s[L](m,"selectstart",Pe),s[L](m,"click",Pe)}function xe(){pe(!0),tt({})}function Pe(k){ne&&k.preventDefault()}function he(k){$=k.clientX,P=k.clientY;var L=v(k)!==1||k.metaKey||k.ctrlKey;if(!L){var z=k.target,Q=G(z);Q&&(ne=Q,me(),k.type==="mousedown"&&(b(z)?z.focus():k.preventDefault()))}}function ze(k){if(ne){if(v(k)===0){tt({});return}if(!(k.clientX!==void 0&&Math.abs(k.clientX-$)<=(H.slideFactorX||0)&&k.clientY!==void 0&&Math.abs(k.clientY-P)<=(H.slideFactorY||0))){if(H.ignoreInputTextSelection){var L=O("clientX",k)||0,z=O("clientY",k)||0,Q=d.elementFromPoint(L,z);if(b(Q))return}var de=ne;me(!0),ue(),$e(),Fe(de),u.add(N||_,"gu-transit"),Ct(),Et(),W=0,Ye(k)}}}function G(k){if(!(Y.dragging&&I)&&!se(k)){for(var L=k;y(k)&&se(y(k))===!1;)if(H.invalid(k,L)||(k=y(k),!k))return;var z=y(k);if(z&&!H.invalid(k,L)){var Q=H.moves(k,z,L,C(k));if(Q)return{item:k,source:z}}}}function U(k){return!!G(k)}function K(k){var L=G(k);L&&Fe(L)}function Fe(k){rt(k.item,k.source)&&(N=k.item.cloneNode(!0),Y.emit("cloned",N,k.item,"copy")),F=k.source,_=k.item,A=j=C(k.item),Y.dragging=!0,Y.emit("drag",_,F)}function Ee(){return!1}function $e(){if(Y.dragging){var k=N||_;Qe(k,y(k))}}function Je(){ne=!1,me(!0),ue(!0)}function tt(k){if(Je(),!!Y.dragging){var L=N||_,z=O("clientX",k)||0,Q=O("clientY",k)||0,de=S(I,z,Q),ye=Oe(de,z,Q);ye&&(N&&H.copySortSource||!N||ye!==F)?Qe(L,ye):H.removeOnSpill?Ue():Z()}}function Qe(k,L){var z=y(k);N&&H.copySortSource&&L===F&&z.removeChild(_),_e(L)?Y.emit("cancel",k,F):Y.emit("drop",k,L,F,j),ge()}function Ue(){if(Y.dragging){var k=N||_,L=y(k);L&&L.removeChild(k),Y.emit(N?"cancel":"remove",k,L,F),ge()}}function Z(k){if(Y.dragging){var L=arguments.length>0?k:H.revertOnSpill,z=N||_,Q=y(z),de=_e(Q);de===!1&&L&&(N?Q&&Q.removeChild(N):F.insertBefore(z,A)),de||L?Y.emit("cancel",z,F,F):Y.emit("drop",z,Q,F,j),ge()}}function ge(){var k=N||_;Je(),oe(),ae(),k&&u.rm(k,"gu-transit"),D&&clearTimeout(D),Y.dragging=!1,J&&Y.emit("out",k,J,F),Y.emit("dragend",k,W),F=_=N=A=j=D=J=null}function _e(k,L){var z;return L!==void 0?z=L:I?z=j:z=C(N||_),k===F&&z===A}function Oe(k,L,z){for(var Q=k;Q&&!de();)Q=y(Q);return Q;function de(){var ye=se(Q);if(ye===!1)return!1;var Be=fe(Q,k),ke=it(Q,Be,L,z),Ce=_e(Q,ke);return Ce?!0:H.accepts(_,Q,F,ke)}}function Ye(k){if(!I)return;k.preventDefault();var L=O("clientX",k)||0,z=O("clientY",k)||0;I.style.left=L-2+"px",I.style.top=z-2+"px";var Q=N||_,de=S(I,L,z),ye=Oe(de,L,z),Be=ye!==null&&ye!==J;(Be||ye===null)&&(Re(),J=ye,Me()),ft(de,z);var ke=y(Q);if(ye===F&&N&&!H.copySortSource){ke&&ke.removeChild(Q);return}var Ce,Te=fe(ye,de);if(ie=Ie(Te,ye),Te!==null)Ce=it(ye,Te,L,z);else if(H.revertOnSpill===!0&&!N)Ce=A,ye=F;else{N&&ke&&ke.removeChild(Q),N&&X&&(X.style.display="none");return}X.style.display="block",Mt(Ce,Q,Be),Ce?Xe(Te,Ce):Ke(ye);function we(Ae){Y.emit(Ae,Q,J,F)}function Me(){Be&&we("over")}function Re(){J&&we("out")}}function Mt(k,L,z){(k===L||k===C(L))&&(j=C(L)),(k===null&&z||k!==L&&k!==C(L))&&(j=k)}function bt(k){u.rm(k,"gu-hide")}function _t(k){Y.dragging&&u.add(k,"gu-hide")}function Et(){I||(I=document.createElement("div"),I.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;",I.innerHTML=H.getMirrorText&&H.getMirrorText(_)||"控件",u.add(I,"gu-mirror"),H.mirrorContainer.appendChild(I),h(m,"add","mousemove",Ye),u.add(H.mirrorContainer,"gu-unselectable"),Y.emit("cloned",I,_,"mirror"))}function Ct(){if(X=document.createElement("div"),u.add(X,"gu-insertion"),_){var k=_.getBoundingClientRect();X.style.left=k.left+"px",X.style.top=k.top+"px"}ie=!1,H.mirrorContainer.appendChild(X)}function oe(){I&&(u.rm(H.mirrorContainer,"gu-unselectable"),h(m,"remove","mousemove",Ye),y(I).removeChild(I),I=null)}function ae(){X&&(y(X).removeChild(X),X=null)}function fe(k,L){for(var z=L;z!==k&&y(z)!==k;)z=y(z);return z===m?null:z}function Ie(k,L){if(!L)return ie;var z=k||L&&L.lastElementChild;if(!z)return!0;var Q=getComputedStyle(k),de=/^inline/.test(Q.getPropertyValue("display"))||/^(left|right)$/.test(Q.getPropertyValue("float"));if(de)return!0;if(L){var ye=getComputedStyle(L),Be=ye.getPropertyValue("display");if(/flex$/.test(Be)){var ke=ye.getPropertyValue("flex-direction")||"row";if(ke==="row"||ke==="row-reverse")return!je(L)}return!1}return!0}function je(k){if(!k.children||!k.children.length)return!1;for(const L of Array.from(k.children)){const Q=(L.className&&L.className.split(" ")||[]).filter(de=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(de));if(!Q.length)return!1;for(const de of Q){const ye=de.slice(de.lastIndexOf("-")+1);if(parseInt(ye,10)!==12)return!1}}return!0}function Xe(k,L){const z=L.getBoundingClientRect();if(X.style.left=z.left+"px",X.style.top=z.top+"px",ie){if(X.style.height=z.height+"px",X.style.width="4px",k){const Q=k.getBoundingClientRect();Q.top!==z.top&&(X.style.left=Q.right+"px",X.style.top=Q.top+"px",X.style.height=Q.height+"px")}}else if(X.style.height="4px",X.style.width=z.width+"px",q){const Q=q.getBoundingClientRect();z.top<Q.top&&(X.style.display="none")}L===_&&_&&(X.style.display="none")}function Ke(k){j=null;var L=k.lastElementChild;if(L){var z=L.getBoundingClientRect();ie?(X.style.left=z.right+"px",X.style.top=z.top+"px",X.style.height=z.height+"px",X.style.width="4px"):(X.style.left=z.left+"px",X.style.top=z.bottom+"px",X.style.height="4px",X.style.width=z.width+"px"),L===_&&_&&(X.style.display="none")}else X.style.display="none"}function ft(k,L){if(!H.mirrorContainer.contains(k)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(q=f(k),!q||!q.contains(k)))return;const z=document.querySelector(".dgComponentSelected"),Q=q.getBoundingClientRect();if(L-30<Q.top&&q.scrollTop>0){let de=q.scrollTop<10?q.scrollTop:10;q.scrollBy(0,-1*de),z&&q.contains(z)&&(W=W+-1*de)}if(L+30>Q.bottom&&q.scrollTop<q.scrollHeight-q.clientHeight){const de=q.scrollHeight-q.clientHeight-q.scrollTop;let ye=de<10?de:10;q.scrollBy(0,ye),z&&q.contains(z)&&(W=W+ye)}}function it(k,L,z,Q){var de=H.direction==="horizontal",ye=H.direction==="mixed",Be=L!==k?Ce():ke();return Be;function ke(){var we=k.children.length,Me,Re,Ae;for(Me=0;Me<we;Me++)if(Re=k.children[Me],Ae=Re.getBoundingClientRect(),de&&Ae.left+Ae.width/2>z||!ye&&!de&&Ae.top+Ae.height/2>Q||ye&&Ae.left+Ae.width>z&&Ae.top+Ae.height>Q)return Re;return null}function Ce(){var we=L.getBoundingClientRect();if(ye){var Me=Q-we.top,Re=z-we.left,Ae=we.bottom-Q,mt=we.right-z,Ze=Math.min(Re,mt,Me,Ae),kt;return ie?kt=mt<Re:kt=Ae===Ze||mt===Ze||Re===Ze,Te(kt)}return Te(de?z>we.left+w(we)/2:Q>we.top+M(we)/2)}function Te(we){return we?C(L):L}}function rt(k,L){return typeof H.copy=="boolean"?H.copy:H.copy(k,L)}}function f(V){const B=Array.from(window.scrollContainerList);if(B.length===1){const I=Array.from(window.scrollContainerList)[0];return document.getElementById(I)}const R=p(B);for(const I of R)if(I.contains(V))return I;return null}function p(V){const B=[];return V.forEach(R=>{const I=document.getElementById(R);I&&B.push(I)}),B.sort((R,I)=>R.contains(I)?1:I.contains(R)?-1:0),B}function h(V,B,R,I){var F={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},_={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},$={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};l.navigator.pointerEnabled?s[B](V,_[R],I):l.navigator.msPointerEnabled?s[B](V,$[R],I):(s[B](V,F[R],I),s[B](V,R,I))}function v(V){if(V.touches!==void 0)return V.touches.length;if(V.which!==void 0&&V.which!==0)return V.which;if(V.buttons!==void 0)return V.buttons;var B=V.button;if(B!==void 0)return B&1?1:B&2?3:B&4?2:0}function S(V,B,R){V=V||{};var I=V.className||"",F;return V.className+=" gu-hide",F=d.elementFromPoint(B,R),V.className=I,F}function T(){return!1}function x(){return!0}function w(V){return V.width||V.right-V.left}function M(V){return V.height||V.bottom-V.top}function y(V){return V.parentNode===d?null:V.parentNode}function b(V){return V.tagName==="INPUT"||V.tagName==="TEXTAREA"||V.tagName==="SELECT"||g(V)}function g(V){return!V||V.contentEditable==="false"?!1:V.contentEditable==="true"?!0:g(y(V))}function C(V){return V.nextElementSibling||B();function B(){var R=V;do R=R.nextSibling;while(R&&R.nodeType!==1);return R}}function E(V){return V.targetTouches&&V.targetTouches.length?V.targetTouches[0]:V.changedTouches&&V.changedTouches.length?V.changedTouches[0]:V}function O(V,B){var R=E(B),I={pageX:"clientX",pageY:"clientY"};return V in I&&!(V in R)&&I[V]in R&&(V=I[V]),R[V]}o.exports=c}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(t,o,r){o.exports=function(a,s){return Array.prototype.slice.call(a,s)}},{}],4:[function(t,o,r){var l=t("ticky");o.exports=function(s,u,d){s&&l(function(){s.apply(d||null,u||[])})}},{ticky:10}],5:[function(t,o,r){var l=t("atoa"),a=t("./debounce");o.exports=function(u,d){var m=d||{},c={};return u===void 0&&(u={}),u.on=function(f,p){return c[f]?c[f].push(p):c[f]=[p],u},u.once=function(f,p){return p._once=!0,u.on(f,p),u},u.off=function(f,p){var h=arguments.length;if(h===1)delete c[f];else if(h===0)c={};else{var v=c[f];if(!v)return u;v.splice(v.indexOf(p),1)}return u},u.emit=function(){var f=l(arguments);return u.emitterSnapshot(f.shift()).apply(this,f)},u.emitterSnapshot=function(f){var p=(c[f]||[]).slice(0);return function(){var h=l(arguments),v=this||u;if(f==="error"&&m.throws!==!1&&!p.length)throw h.length===1?h[0]:h;return p.forEach(function(T){m.async?a(T,h,v):T.apply(v,h),T._once&&u.off(f,T)}),u}},u}},{"./debounce":4,atoa:3}],6:[function(t,o,r){(function(l){var a=t("custom-event"),s=t("./eventmap"),u=l.document,d=f,m=h,c=[];l.addEventListener||(d=p,m=v),o.exports={add:d,remove:m,fabricate:S};function f(y,b,g,C){return y.addEventListener(b,g,C)}function p(y,b,g){return y.attachEvent("on"+b,x(y,b,g))}function h(y,b,g,C){return y.removeEventListener(b,g,C)}function v(y,b,g){var C=w(y,b,g);if(C)return y.detachEvent("on"+b,C)}function S(y,b,g){var C=s.indexOf(b)===-1?O():E();y.dispatchEvent?y.dispatchEvent(C):y.fireEvent("on"+b,C);function E(){var V;return u.createEvent?(V=u.createEvent("Event"),V.initEvent(b,!0,!0)):u.createEventObject&&(V=u.createEventObject()),V}function O(){return new a(b,{detail:g})}}function T(y,b,g){return function(E){var O=E||l.event;O.target=O.target||O.srcElement,O.preventDefault=O.preventDefault||function(){O.returnValue=!1},O.stopPropagation=O.stopPropagation||function(){O.cancelBubble=!0},O.which=O.which||O.keyCode,g.call(y,O)}}function x(y,b,g){var C=w(y,b,g)||T(y,b,g);return c.push({wrapper:C,element:y,type:b,fn:g}),C}function w(y,b,g){var C=M(y,b,g);if(C){var E=c[C].wrapper;return c.splice(C,1),E}}function M(y,b,g){var C,E;for(C=0;C<c.length;C++)if(E=c[C],E.element===y&&E.type===b&&E.fn===g)return C}}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(t,o,r){(function(l){var a=[],s="",u=/^on/;for(s in l)u.test(s)&&a.push(s.slice(2));o.exports=a}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(t,o,r){(function(l){var a=l.CustomEvent;function s(){try{var u=new a("cat",{detail:{foo:"bar"}});return u.type==="cat"&&u.detail.foo==="bar"}catch{}return!1}o.exports=s()?a:typeof document<"u"&&typeof document.createEvent=="function"?function(d,m){var c=document.createEvent("CustomEvent");return m?c.initCustomEvent(d,m.bubbles,m.cancelable,m.detail):c.initCustomEvent(d,!1,!1,void 0),c}:function(d,m){var c=document.createEventObject();return c.type=d,m?(c.bubbles=!!m.bubbles,c.cancelable=!!m.cancelable,c.detail=m.detail):(c.bubbles=!1,c.cancelable=!1,c.detail=void 0),c}}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(t,o,r){var l=o.exports={},a,s;function u(){throw new Error("setTimeout has not been defined")}function d(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=u}catch{a=u}try{typeof clearTimeout=="function"?s=clearTimeout:s=d}catch{s=d}})();function m(M){if(a===setTimeout)return setTimeout(M,0);if((a===u||!a)&&setTimeout)return a=setTimeout,setTimeout(M,0);try{return a(M,0)}catch{try{return a.call(null,M,0)}catch{return a.call(this,M,0)}}}function c(M){if(s===clearTimeout)return clearTimeout(M);if((s===d||!s)&&clearTimeout)return s=clearTimeout,clearTimeout(M);try{return s(M)}catch{try{return s.call(null,M)}catch{return s.call(this,M)}}}var f=[],p=!1,h,v=-1;function S(){!p||!h||(p=!1,h.length?f=h.concat(f):v=-1,f.length&&T())}function T(){if(!p){var M=m(S);p=!0;for(var y=f.length;y;){for(h=f,f=[];++v<y;)h&&h[v].run();v=-1,y=f.length}h=null,p=!1,c(M)}}l.nextTick=function(M){var y=new Array(arguments.length-1);if(arguments.length>1)for(var b=1;b<arguments.length;b++)y[b-1]=arguments[b];f.push(new x(M,y)),f.length===1&&!p&&m(T)};function x(M,y){this.fun=M,this.array=y}x.prototype.run=function(){this.fun.apply(null,this.array)},l.title="browser",l.browser=!0,l.env={},l.argv=[],l.version="",l.versions={};function w(){}l.on=w,l.addListener=w,l.once=w,l.off=w,l.removeListener=w,l.removeAllListeners=w,l.emit=w,l.prependListener=w,l.prependOnceListener=w,l.listeners=function(M){return[]},l.binding=function(M){throw new Error("process.binding is not supported")},l.cwd=function(){return"/"},l.chdir=function(M){throw new Error("process.chdir is not supported")},l.umask=function(){return 0}},{}],10:[function(t,o,r){(function(l){var a=typeof l=="function",s;a?s=function(u){l(u)}:s=function(u){setTimeout(u,0)},o.exports=s}).call(this,t("timers").setImmediate)},{timers:11}],11:[function(t,o,r){(function(l,a){var s=t("process/browser.js").nextTick,u=Function.prototype.apply,d=Array.prototype.slice,m={},c=0;r.setTimeout=function(){return new f(u.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new f(u.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(p){p.close()};function f(p,h){this._id=p,this._clearFn=h}f.prototype.unref=f.prototype.ref=function(){},f.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(p,h){clearTimeout(p._idleTimeoutId),p._idleTimeout=h},r.unenroll=function(p){clearTimeout(p._idleTimeoutId),p._idleTimeout=-1},r._unrefActive=r.active=function(p){clearTimeout(p._idleTimeoutId);var h=p._idleTimeout;h>=0&&(p._idleTimeoutId=setTimeout(function(){p._onTimeout&&p._onTimeout()},h))},r.setImmediate=typeof l=="function"?l:function(p){var h=c++,v=arguments.length<2?!1:d.call(arguments,1);return m[h]=!0,s(function(){m[h]&&(v?p.apply(null,v):p.call(null),r.clearImmediate(h))}),h},r.clearImmediate=typeof a=="function"?a:function(p){delete m[p]}}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(cr),`${Rt.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const dr={customClass:{type:String,default:""},sort:{type:Object},filter:{type:Object},autoCheckChildren:{type:Boolean,default:!1},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},displayField:{type:String,default:"name"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},hierarchy:{type:Object,default:{cascadeOption:{autoCancelParent:!0,autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loadData:{type:Function},loading:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},pagination:{type:Object,default:{enable:!1,size:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:Rt.LocaleService.getLocaleValue("datagrid.lineNumberTitle")}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},showVerticallLines:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},virtualized:{type:Boolean,default:!1},emptyTemplate:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}}};function ur(n,e,t,o,r,l,a,s,u,d,m,c,f,p,h,v,S){const{calculateCellPositionInRow:T}=l,{columnContext:x,hasLeftFixedColumn:w,hasRightFixedColumn:M}=a,{gridDataStyle:y,leftFixedGridDataStyle:b,rightFixedGridDataStyle:g}=p,{renderDataRow:C}=ce.getHierarchyRow(n,e,x,S,s,u,d,m,c,f,p,h,v),E=[C];function O(F,_){const $=T(F);return S.value.filter(P=>P.visible!==!1).map((P,A)=>E[P.type](P,$,_,A))}function V(){return i.createVNode("div",{ref:o,class:"fv-grid-content-left-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:b.value},[O(x.value.leftColumns.filter(F=>F.visible),"left")])])}function B(){return i.createVNode("div",{ref:t,class:"fv-grid-content-primary"},[i.createVNode("div",{class:"fv-grid-data",style:y.value},[O(x.value.primaryColumns.filter(F=>F.visible),"primary")])])}function R(){return i.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:g.value},[O(x.value.rightColumns.filter(F=>F.visible),"right")])])}function I(){const F=[];return w.value&&F.push(V()),F.push(B()),M.value&&F.push(R()),F}return{renderDataArea:I}}const fr=i.defineComponent({name:"FTreeGrid",props:dr,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged","selectionUpdate"],setup(n,e){var Zn,Jn;const o=((Zn=n.rowOption)==null?void 0:Zn.height)||28,r=i.ref(20),l=i.ref(n.columns),a=ce.useIdentify(n),{idField:s}=a,u=i.ref(),d=i.ref(),m=i.ref(),c=i.ref(),f=i.ref(),p=i.ref([]),h=i.ref(!1),v=i.ref(((Jn=n.rowOption)==null?void 0:Jn.wrapContent)||!1),S=ce.useGroupData(n,a),T=ce.useFilter(n,e),x=ce.useHierarchy(n),{collapseField:w}=x,{showLoading:M,renderLoading:y}=ce.useLoading(n,u),b=ce.useDataView(n,new Map,T,x,a),{dataView:g}=b,C=ce.useSelection(n,b,a,p,e),{showSelection:E,selectedValues:O}=C,V=ce.useSelectHierarchyItem(n,p,b,a,C,e),B=i.computed(()=>n.disabled),R=i.computed(()=>n.virtualized?Math.min(b.dataView.value.length,r.value):b.dataView.value.length),I=ce.usePagination(n,b),{shouldRenderPagination:F}=I,{containerStyleObject:_}=ce.useDataViewContainerStyle(n),$=ce.useCommandColumn(n),{applyCommands:P}=$;P(l);const{applyColumnSetting:A,removeColumnSetting:j}=ce.useSettingColumn(n);n.showSetting&&A(l);const N=ce.useColumn(n,e),D=ce.useSort(n),{applyColumnSorter:J,columnContext:ne,updateColumnRenderContext:X}=N;J(b,D);const ie=ce.useGroupColumn(n,ne),W=ce.useRow(n,e,C,a),q=ce.useEdit(n,e,a,W,p),H=ce.useVisualDataBound(n),Y=ce.useVisualDataCell(n,q,H),se=ce.useVisualDataRow(n,b,q,x,a,H,Y),pe=ce.useVisualData(n,l,b,R,0,se),{getVisualData:me}=pe,ue=ce.useCellPosition(n,ne),xe=ce.useSidebar(n,C),{sidebarWidth:Pe}=xe,he=ce.useVirtualScroll(n,b,p,ne,pe,R,0,Pe),{onWheel:ze,dataGridWidth:G,viewPortHeight:U,viewPortWidth:K,resetScroll:Fe,updateVisibleRowsOnLatestVisibleScope:Ee}=he,$e=ce.useFitColumn(n,ne,d,K,ie),{calculateColumnsSize:Je}=$e,tt=ce.useFilterHistory(),Qe=ce.useColumnFilter(d,f,b,tt,he),Ue=ce.useDragColumn(n,e,N,b,ie,S,he),Z=i.computed(()=>{const re={"fv-grid":!0,"fv-grid-bordered":n.showBorder,"fv-grid-horizontal-bordered":n.showHorizontalLines,"fv-datagrid-strip":n.showStripe};return ee.getCustomClass(re,n.customClass)}),ge=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":h.value,"fv-grid-wrap-content":v.value})),{renderDataArea:_e}=ur(n,e,m,c,f,ue,N,b,q,x,W,C,V,he,pe,H,p),{renderGridHeader:Oe,renderGridColumnResizeOverlay:Ye,shouldShowHeader:Mt}=ce.getColumnHeader(n,e,d,c,f,N,b,Ue,Qe,T,tt,$e,ie,C,xe,D,he,K,p),{renderDataGridSidebar:bt}=ce.getSidebar(n,W,C,xe,he),{renderDisableMask:_t}=ce.getDisableMask(),{renderHorizontalScrollbar:Et}=ce.getHorizontalScrollbar(n,d,he),{renderVerticalScrollbar:Ct}=ce.getVerticalScrollbar(n,d,he);function oe(){var re,ve,De;if(d.value&&d.value.clientHeight>0&&((re=d.value)==null?void 0:re.clientWidth)>0){const Ge=Math.ceil(d.value.clientHeight/o);Ge>r.value&&(r.value=Ge,Ee()),U.value=((ve=m.value)==null?void 0:ve.clientHeight)||0,G.value=((De=d.value)==null?void 0:De.clientWidth)||0,Je()}}i.onMounted(()=>{d.value&&(r.value=Math.max(Math.ceil(d.value.clientHeight/o),r.value),p.value=me(0,R.value+0-1),en.useResizeObserver(d.value,oe),Je(),i.nextTick(()=>{d.value&&(G.value=d.value.clientWidth),m.value&&(K.value=m.value.clientWidth,U.value=m.value.clientHeight)})),M.value&&y()}),i.onUnmounted(()=>{}),i.watch(K,()=>{d.value&&Je()});function ae(re){b.collapseTo(re),b.reOrderVisibleIndex(),Fe()}function fe(re){b.expandTo(re),b.reOrderVisibleIndex(),Fe()}function Ie(){const re=C.getSelectionRow();return re?re.dataIndex-1:-1}function je(){const re=Ie();b.insertNewDataItem(re),p.value=me(0,R.value+0-1)}function Xe(){const re=Ie();b.insertNewChildDataItem(re),p.value=me(0,R.value+0-1)}function Ke(re,ve){const De=p.value.find(et=>et.raw[s.value]===ve),Ge=De?De.dataIndex-1:-1;b.insertNewChildDataItems(re,Ge)}function ft(){const re=Ie(),ve=V.getNextSelectableHierarchyItemId(re);b.removeHierarchyDataItem(re),p.value=me(0,R.value+0-1),ve&&V.selectItemById(ve)}function it(re){q.onEditingRow(re)}function rt(re){q.acceptEditingRow(re)}function k(re){q.cancelEditingRow(re)}function L(re){re&&(l.value=re,P(l),X(l.value),J(b,D),Je())}i.watch(()=>n.columns,re=>{L(re)});function z(re,ve){re&&(b.load(re),b.reOrderVisibleIndex(),ve!=null&&ve.keepScrollPosition?he.scrollTo(he.offsetY.value):Fe())}function Q(re){V.selectItemById(re)}function de(re){const ve=p.value.find(De=>De.raw[a.idField.value]===re);ve&&W.clickRowItem(ve)}function ye(re){W.activeRowById(re)}function Be(re){V.selectItemByIds(re)}function ke(){return C.getSelectedItems()}function Ce(){C.clearSelection()}const Te=i.computed(()=>!p.value||!p.value.length),{renderEmpty:we}=ce.getEmpty(n,e);function Me(){return C.getSelectionRow()}function Re(re){V.unSelectItemByIds(re)}function Ae(){return C.currentSelectedDataId.value}function mt(re,ve,De){const Ge=g.value.find(et=>et[s.value]===re);if(Ge){if(Object.keys(Ge).forEach(qe=>{Object.prototype.hasOwnProperty.call(ve,qe)&&(Ge[qe]=ve[qe])}),De){const{collapseField:qe,disabledField:Vt,checkedField:It,visibleField:Pt}=De;qe&&!Ne.isUndefined(ve[qe])&&(Ge.__fv_collapse__=ve[qe]),It&&!Ne.isUndefined(ve[It])&&(Ge.__fv_checked__=ve[It]),Vt&&!Ne.isUndefined(ve[Vt])&&(Ge.__fv_disabled__=ve[Vt]),Pt&&!Ne.isUndefined(ve[Pt])&&(Ge.__fv_visible__=ve[Pt])}const et=p.value.find(qe=>qe.raw[s.value]===re),Qn=p.value.findIndex(qe=>qe.raw[s.value]===re);if(et){if(et.raw=Ge,Object.keys(et.data).forEach(qe=>{et.data[qe].updateData(Ge)}),De){const{collapseField:qe,disabledField:Vt,checkedField:It,visibleField:Pt}=De;qe&&!Ne.isUndefined(ve[qe])&&(et.collapse=ve[qe]),It&&!Ne.isUndefined(ve[It])&&(et.checked=ve[It]),Vt&&!Ne.isUndefined(ve[Vt])&&(et.disabled=ve[Vt]),Pt&&!Ne.isUndefined(ve[Pt])&&(et.visible=ve[Pt])}p.value=[...p.value.slice(0,Qn),et,...p.value.slice(Qn+1)],b.updateSummary()}}}function Ze(re){return Object.prototype.hasOwnProperty.call(re,"raw")?b.hasRealChildren(re.raw):b.hasRealChildren(re)}function kt(re){const ve=b.dataView.value.find(De=>De[s.value]===re);return ve?ve[w.value]:""}function Kt(){return w.value}i.watch(()=>n.showSetting,(re,ve)=>{re!==ve&&(re?A(l):j(l),L(l.value))});function rl(re){return p.value.filter(ve=>re.includes(ve.raw[n.idField]))}function al(re){const ve=a.idField.value,De=p.value.find(Ge=>Ge.raw[ve]===re);De&&W.changeRow(De)}function ll(){C.keepSelectingOnPaging.value||Ce(),b.updateVisibleDataSummary(p.value)}e.expose({activeRowById:ye,addNewDataItem:je,addNewChildDataItem:Xe,addChildrenToNode:Ke,collapseTo:ae,expandTo:fe,removeDataItem:ft,editDataItem:it,acceptDataItem:rt,cancelDataItem:k,updateColumns:L,updateDataSource:z,selectItemById:Q,selectItemByIds:Be,getSelectedItems:ke,clearSelection:Ce,getSelectionRow:Me,clickRowItemById:de,unSelectItemByIds:Re,getCurrentRowId:Ae,reassignRowData:mt,hasChildren:Ze,getCollapseField:Kt,getCollapseStatusById:kt,getVisibleDataByIds:rl,selectRowById:al,updateDerivedData:ll});const sl=i.computed(()=>{const re={};return he.shouldShowHorizontalScrollbar.value&&(re.paddingBottom="10px"),he.shouldShowVirticalScrollbar.value&&(re.paddingRight="10px"),re}),cl=i.computed(()=>({..._.value,borderRadius:"5px"}));ce.getPagination(n,e,b,he,I,C);const dl=i.computed(()=>({"d-flex":!0,"justify-content-between":F.value&&E.value,"justify-content-end":F.value&&!E.value,"position-relative":!0})),ul=i.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:fl}=ce.getSummary(n,b,N);return()=>i.createVNode("div",{ref:u,class:Z.value,style:cl.value,onWheel:ze},[d.value&&Mt.value&&Oe(),i.createVNode("div",{ref:d,class:ge.value,onMouseover:()=>h.value=!0,onMouseleave:()=>h.value=!1,style:sl.value},[d.value&&bt(p),d.value&&_e(),d.value&&Te.value&&we(),d.value&&Et(),d.value&&Ct()]),d.value&&fl(),E.value&&i.createVNode("div",{class:dl.value},[E.value&&i.createVNode("div",{class:ul.value},[i.createVNode("div",null,["已选:"+O.value.length,i.createTextVNode(" 条")])])]),Ye(),B.value&&_t()])}});ee.withInstall(fr);const mr=new Map([["appearance",Lt]]);function pr(n,e,t){return e}yt({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"]},mr,pr,{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 hr="root-viewmodel";class gr{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),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.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:l}=e;l==null||l.forEach(s=>{if(s.$type===ee.FormSchemaEntityField$Type.SimpleField){const u=Ne.cloneDeep(s),d=this.resolveControlClassByFormColumns(e),m=this.controlCreatorUtils.setFormFieldProperty(u,"",d);m&&r.push(m)}});const{templateId:a}=this.formSchemaUtils.getFormSchema().module;return a==="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:hr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const t=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===ee.FormSchemaEntityField$Type.SimpleField){let l="blur";const a=r.type.name;(a===ee.FormSchemaEntityFieldTypeName.Enum||a===ee.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),t.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}}),t}}function yr(n,e,t,o){var l,a,s,u,d,m;const r=t.parentComponentInstance;if(r&&o){const c=(l=r.schema)==null?void 0:l.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((a=t.bindingSourceContext)==null?void 0:a.entityTitle)||((u=(s=t.bindingSourceContext)==null?void 0:s.bindingEntity)==null?void 0:u.name)||"标题",componentType:"form",formColumns:c==="splitter-pane"?1:4,parentContainerId:r.schema.id,bindTo:((d=t.bindingSourceContext)==null?void 0:d.bindTo)||"/",selectedFields:(m=t.bindingSourceContext)==null?void 0:m.bindingEntityFields};return new gr(n,o).createComponent(p)}else return e}function vr(n,e,t){return e}yt({customClass:{type:String,default:""},customStyle:{type:String,defaut:""},visible:{type:Boolean,default:!0},adaptForLanguage:{type:Boolean,default:!0}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0},labelAutoOverflow:{description:"",type:"boolean",default:!1},adaptForLanguage:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Yt,yr);const _n=[{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 br(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 Cr(n){var e;return"请输入正确的"+((e=_n.find(t=>t.key===n))==null?void 0:e.value)}const wr={convertTo:(n,e,t,o)=>{n.editor.formatValidation||(n.editor.formatValidation={type:"none"}),n.editor.formatValidation.type=t,n.editor.formatValidation.expression=br(t),n.editor.formatValidation.message=Cr(t)},convertFrom:(n,e,t)=>n.editor.formatValidation?e==="type"?n.editor.formatValidation[e]||"none":n.editor.formatValidation[e]:"none"},En={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 Sr extends ot.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 l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(r=l==null?void 0:l.schemaField)!=null&&r.type&&(t=l.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,l;const t={title:"输入格式校验",description:"输入格式校验",properties:{type:{title:"输入类型",type:"enum",description:"输入类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:_n},refreshPanelAfterChanged:!0,$converter:wr,parentPropertyID:"formatValidation"}}};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:En,parentPropertyID:"formatValidation"}),((l=e.editor.formatValidation)==null?void 0:l.type)==="custom"&&(t.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:En,parentPropertyID:"formatValidation"}),t}}var kn=(n=>(n.SimpleField="SimpleField",n.ComplexField="ComplexField",n))(kn||{});function xr(n,e,t){function o(){const a=t.componentId;if(!a)return!1;const s=n.formSchemaUtils.getViewModelIdByComponentId(a);if(!s)return!1;const{schema:u}=e,{designViewModelUtils:d}=n,m=d.getDgViewModel(s),c=m==null?void 0:m.fields.find(f=>f.id===u.binding.field);return!(!c||c.$type!==kn.SimpleField)}function r(){const{schema:a}=e;return!!n.formSchemaUtils.getVariableById(a.binding.field)}function l(){var u;const{schema:a}=e;let s=!0;if(!n||!((u=a.binding)!=null&&u.field))return s;switch(a.binding.type){case Nt.Form:{s=o();break}case Nt.Variable:s=r()}return s}return{checkBindingFieldValidation:l}}yt({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Fn,Yt,void 0);const Fr={$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"]},Tr={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};pt.createPropsResolver(Tr,Fr,or,vr);const Mr={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function Xt(){return new DOMException("The request is not allowed","NotAllowedError")}async function _r(n){if(!navigator.clipboard)throw Xt();return navigator.clipboard.writeText(n)}async function Er(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 Xt()}async function kr(n){try{await _r(n)}catch(e){try{await Er(n)}catch(t){throw t||e||Xt()}}}function Vr(){async function n(e){await kr(e)}return{onCopy:n}}function Ir(n,e,t,o){const r=i.ref(14),l=i.ref(140),a=i.ref(""),s=i.ref(o.value.length),u=i.computed(()=>o.value),d=i.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function m(c){if(c.currentTarget){const f=c.currentTarget.value||"";s.value=f.length}}return()=>i.createVNode(i.Fragment,null,[i.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:l.value,onInput:c=>m(c)},[u.value]),i.createVNode("span",{class:"textarea-wordcount",title:a.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+l.value])])}function Pr(n,e,t,o){const r=Ir(n,e,t,o),l=new Map([["text-area",r]]);function a(s){return l.get(s)||null}return{getEditorRender:a}}function Nr(){const n=i.ref(!1),e=i.ref("复制成功");return{feedbackStyle:i.computed(()=>{const o={position:"absolute",left:"50%",top:"50%","min-width":"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease",padding:"0 10px"};return o.opacity=n.value?"0.8":"0",o.display=n.value?"":"none",o}),feedbackMessage:e,toShowFeedback:n}}function Br(n,e){const t=e.getEditorRender(n.promptEditorType);return()=>t&&t()}function Or(n,e){function t(p){if(p==null)return 0;let h=0;for(let v=0;v<p.length;v++){const S=p.charCodeAt(v);S>=0&&S<=128?h++:h=h+2}return h}function o(p,h){if(p!==""&&p!==void 0&&p!==null){p=""+p;const v=p.length;let S="",T=0;for(let x=0;x<v;x++){const w=p.charAt(x);if(T++,encodeURI(w).length>4&&T++,S=S.concat(w),T>=h)return S=S.concat("..."),S}if(T<h)return p}return""}const r=i.computed(()=>!!n.value&&!!n.value.date),l=i.computed(()=>{const p=n.value&&n.value.date||"";return`${e.exception.happend} : ${p}`}),a=i.computed(()=>!!n.value&&!!n.value.detail),s=i.computed(()=>n.value?t(n.value.detail)>160:!1),u=i.ref(!1),d=i.computed(()=>u.value?e.exception.collapse:e.exception.expand),m=i.computed(()=>{const p=e.exception.detail+" : "+(n.value&&n.value.detail)||"";return u.value?p:o(p,160)}),c=i.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function f(){u.value=!u.value}return()=>i.createVNode("div",{class:"toast-msg-detail"},[r.value&&i.createVNode("div",null,[l.value]),a.value&&i.createVNode("div",{class:"exception_wrap"},[i.createVNode("div",{class:"exception_error_msg"},[i.createVNode("div",{innerHTML:m.value},null),s.value&&i.createVNode("span",{style:c.value,onClick:f},[d.value])])])])}function jr(n){return()=>i.createVNode("p",{class:"toast-msg-detail",innerHTML:n.value},null)}function Rr(n,e,t,o,r){const l=i.ref(n.exceptionInfo),a=i.computed(()=>{const h=e.value==="question"?"warning":e.value,v={"f-icon":!0},S=`f-icon-${h}`;return v[S]=!0,v}),s=i.computed(()=>t.value||l.value&&l.value.message),u=i.computed(()=>o.value),d=i.computed(()=>!!o.value),m=i.computed(()=>!!l.value);function c(){return m.value?Or(l,r):d.value?jr(u):()=>null}const f=c(),p=i.computed(()=>r.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:a.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[i.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),f()])])}function $r(n,e,t,o){const{onCopy:r}=e,{toShowFeedback:l}=t,a=i.ref(o.exception.copySuccess||"复制成功"),s=i.ref(o.exception.copy||"复制详细信息"),u=i.ref(n.exceptionInfo||{date:"",message:"",detail:""}),d=i.computed(()=>u.value&&u.value.detail||"");function m(c){r(d.value).catch(f=>{a.value=o.exception.copyFailed||"复制失败"}).finally(()=>{l.value=!0,setTimeout(()=>{l.value=!1},700)})}return()=>i.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[i.createVNode("span",{onClick:m,style:"cursor: pointer;"},[s.value])])}function Ar(n,e,t,o,r){const l=i.ref(n.type),a=i.ref(n.buttons),s=i.ref(n.exceptionInfo),u=i.ref(r.ok||n.okButtonText),d=i.ref(r.cancel||n.cancelButtonText),m=i.ref(n.showCancelButton),c=i.ref(n.showOkButton),f=i.computed(()=>!!(a.value&&a.value.length)),p=i.computed(()=>s.value&&s.value.message&&s.value.detail),h=i.computed(()=>!(a.value&&a.value.length)&&(c.value||m.value)),v=$r(n,t,o,r);u.value==="关闭"?u.value=r.close:u.value==="知道了"&&(u.value=r.exception.roger);function S(x){l.value==="question"&&e.emit("reject"),e.emit("close")}function T(x){l.value==="question"&&e.emit("accept"),e.emit("close")}return()=>i.createVNode("div",{class:"modal-footer"},[p.value&&v(),h.value&&m.value&&i.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:S},[d.value]),h.value&&c.value&&i.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:T},[u.value]),f.value&&a.value.length&&a.value.map(x=>i.createVNode("button",{type:"button",onClick:x.handle,class:x.class},[x.iconClass&&i.createVNode("span",{class:x.iconClass},null),x.text]))])}function Lr(n){const{t:e,locale:t}=ut.useI18n();function o(r,l,a){return l===a?e(r):l}return{yes:o("messageBox.yes")||"是",no:o("messageBox.no")||"否",close:o("messageBox.close")||"关闭",ok:o("messageBox.ok",n.okButtonText,"确定")||"确定",cancel:o("messageBox.cancel",n.cancelButtonText,"取消")||"取消",title:o("messageBox.title")||"系统提示",errorTitle:o("messageBox.errorTitle")||"错误提示",exception:{expand:o("messageBox.exception.expand")||"展开",collapse:o("messageBox.exception.collapse")||"收起",happend:o("messageBox.exception.happend")||"发生时间",detail:o("messageBox.exception.detail")||"详细信息",copy:o("messageBox.exception.copy")||"复制详细信息",copySuccess:o("messageBox.exception.copySuccess")||"复制成功",copyFailed:o("messageBox.exception.copyFailed")||"复制失败",roger:o("messageBox.exception.roger")||"知道了"},locale:t.value}}const Dt=i.defineComponent({name:"FMessageBox",props:Mr,emits:["accept","reject","close"],setup(n,e){const t=Lr(n),o=i.ref(n.type),r=i.ref(n.title),l=i.ref(n.detail),a=i.computed(()=>{const T={"modal-tips":!0,"d-flex":!0,"flex-row":!0},x=`messager-type-${o.value}`;return T[x]=!0,T}),s=i.computed(()=>{const T={cursor:"default"};return o.value==="prompt"?T.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(T.padding="0.5rem 1.5rem 1rem 1.5rem"),T}),u=Vr(),d=Pr(n,o,r,l),m=Nr(),{feedbackStyle:c,feedbackMessage:f}=m;f.value=t.exception.copySuccess;function p(){return i.createVNode("div",{style:c.value},[f.value])}function h(){switch(o.value){case"prompt":return Br(n,d);default:return Rr(n,o,r,l,t)}}const v=h(),S=Ar(n,e,u,m,t);return()=>i.createVNode("div",{class:"farris-messager"},[!n.exceptionInfo&&i.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),i.createVNode("section",{class:a.value,style:s.value},[v()]),S(),p()])}}),dt=class dt{static show(e){const t=i.reactive({...e}),o=!1,r=t.type==="error"||t.type==="prompt",l=t.type==="error"?"错误提示":t.type==="prompt"&&t.title||"",a=t.acceptCallback||(()=>{}),s=t.rejectCallback||(()=>{});let u=null,d=new mn(dt.app);const m=()=>{u&&(u==null||u.destroy(),d=null)};return u=d==null?void 0:d.open({class:"modal-message modal-message-type-info",title:l,showButtons:o,showHeader:r,width:t.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>i.createVNode(Dt,i.mergeProps(t,{onAccept:a,onReject:s,onClose:m}),null)}),d==null?void 0:d.getCurrentModal()}static info(e,t){const o=i.reactive({type:"info",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});dt.show(o)}static warning(e,t){const o=i.reactive({type:"warning",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});dt.show(o)}static success(e,t){const o=i.reactive({type:"success",title:e,detail:t,okButtonText:"关闭",showCancelButton:!1});dt.show(o)}static error(e,t,o){const r=i.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:o,message:e,detail:t}});dt.show(r)}static prompt(e,t){const o=i.reactive({type:"prompt",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消"});dt.show(o)}static question(e,t,o,r){const l=i.reactive({type:"question",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:o,rejectCallback:r});dt.show(l)}};le(dt,"app",null);let qt=dt;Dt.install=n=>{n.component(Dt.name,Dt),qt.app=n,n.provide("FMessageBoxService",qt)};class Bt extends Mn{constructor(t,o){super(t,o);le(this,"responseLayoutEditorFunction");le(this,"bindingVarible");le(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=sr(this.formSchemaUtils)}getCommonPropertyConfig(t,o,r="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(t,o,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t,o),this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"form-group")}getPropertyConfig(t,o){return this.getCommonPropertyConfig(t,o,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig.categories.expressions=this.getExpressionConfig(t,"Field"),this.propertyConfig}getGridFieldEdtiorPropConfig(t,o){return this.propertyConfig.categories={},this.getCommonPropertyConfig(t,o,"Grid"),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,r="Card"){const l=this;this.setDesignViewModelField(t);const{canChangeControlType:a,editorTypeList:s}=this.getAvailableEditorType(t),u={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:s,readonly:!a}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},showLabelType:{description:"标签显示方式:1、显示:显示标签 2、占位:保留标签空间,但不显示文本 3、不显示:不显示标签",title:"标签显示",type:"enum",editor:{data:[{id:"visible",name:"显示"},{id:"reserve-space",name:"占位"},{id:"none",name:"不显示"}]}},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:t,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0,readonly:this.formSchemaUtils.designerMode==="PC_RTC"&&!t.isRtcControl}},setPropertyRelates(d,m,c){if(d)switch(d&&d.propertyID){case"type":{l.changeControlType(t,d,o);break}case"label":{d.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(t,d,c);break}}}};return r.toLocaleLowerCase()!=="card"&&delete u.properties.showLabelType,u}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!==ee.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(t){var l;const o=this.checkCanChangeControlType(t,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:t.editor.type,value:((l=te[t.editor.type])==null?void 0:l.name)||t.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===ee.FormSchemaEntityField$Type.SimpleField?r=jt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(r=jt.getEditorTypesByMDataType(this.bindingVarible.type,this.designViewModelField.multiLanguage)),{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",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(t,r.componentId)}}},setPropertyRelates(l,a){if(l)switch(l&&l.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,r.componentId||t.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(t.id,o),delete t.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(l.propertyValue,t.id,this.componentId),ht.value++;break;case"style":{ht.value++;break}}}}}getEditorProperties(t){return this.getComponentConfig(t)}changeControlType(t,o,r){const l=o.propertyValue,a=r&&r.parent&&r.parent.schema;if(!a)return;const s=a.contents.findIndex(m=>m.id===t.id);if(s===-1)return;const u=a.contents[s];let d;if(this.designViewModelField){const f=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(h=>h.id===this.designViewModelField.id).fieldSchema||{};f.editor||(f.editor={}),f.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,f,!1),d=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}d||(d=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(d,{id:u.id,appearance:u.appearance,size:u.size,label:u.label,binding:u.binding}),Object.prototype.hasOwnProperty.call(u,"visible")&&Object.assign(d,{visible:u.visible}),u.editor&&["readonly","required","placeholder"].map(m=>{Object.prototype.hasOwnProperty.call(u.editor,m)&&(d.editor[m]=u.editor[m])}),r!=null&&r.updateContextSchema?r.updateContextSchema(d):(r.schema=Object.assign(u,d),Object.assign(t,d)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(m=>m.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(m=>m.classList.remove("dgComponentFocused")),ht.value++,i.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(t,o={},r={},l){var f;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},o),s=(f=t.binding)!=null&&f.field?[]:["Const","Variable","StateMachine"],u=this.getPropertyEditorParams(t,s,"readonly"),d=this.getPropertyEditorParams(t,s,"required"),m={readonly:{description:"",title:"只读",editor:u},required:{description:"",title:"必填",type:"boolean",editor:d},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const p in r)m[p]=Object.assign(m[p]||{},r[p]);const c=this;return{...a,properties:{...m},setPropertyRelates(p,h){if(p){switch(p.propertyID){case"readonly":case"required":c.afterMutilEditorChanged(t,p);break}l&&l.bind(c)(p,t,h)}}}}updateUnifiedLayoutAfterControlChanged(t,o,r){const l=t.split(" ");let a=l.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),s=l.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),u=l.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),d=l.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));a=a||"col-12",s=s||"col-md-"+a.replace("col-",""),u=u||"col-xl-"+s.replace("col-md-",""),d=d||"col-el-"+u.replace("col-xl-","");const m={id:o,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(u.replace("col-xl-",""),10),columnInEL:parseInt(d.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,m)}updateUnifiedLayoutAfterResponseLayoutChanged(t,o){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(t);if(!r||!r.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,l,1),o){const h=l.find(v=>v.id===o.id);Object.assign(h||{},o)}const a=l.map(h=>h.columnInSM),s=l.map(h=>h.columnInMD),u=l.map(h=>h.columnInLG),d=l.map(h=>h.columnInEL),m=this.checkIsUniqueColumn(a)?a[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null,f=this.checkIsUniqueColumn(u)?u[0]:null,p=this.checkIsUniqueColumn(d)?d[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:m,uniqueColClassInMD:c,uniqueColClassInLG:f,uniqueColClassInEL:p})}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===ee.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(t,o){t.binding&&t.binding.type===Nt.Form&&t.binding.field?(o.find(a=>a.label==="fieldValueChanging")||o.push({label:"fieldValueChanging",name:"绑定字段值变化前事件"}),o.find(a=>a.label==="fieldValueChanged")||o.push({label:"fieldValueChanged",name:"绑定字段值变化后事件"}),this.designViewModelField&&(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 Nt.Form:return t.binding.path||t.type;case Nt.Variable:return t.binding.fullPath||t.type}return t.type}getEventPropertyConfig(t,o="card",r,l){const a=this;let s=[];r&&(s=s.concat(r)),this.appendFieldValueChangeEvents(t,s);const u=a.eventsEditorUtils.formProperties(t,a.viewModelId,s);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(u),tabId:"commands",tabName:"交互",setPropertyRelates(c,f){const p=c.propertyValue;delete t[a.viewModelId],p&&(p.setPropertyRelates=this.setPropertyRelates,p.controlInfo={type:a.getControlMethodType(t),name:t.title},a.eventsEditorUtils.saveRelatedParameters(t,a.viewModelId,p.events,p)),l&&l(c,f,p);const h=a.designViewModelUtils.getDgViewModel(a.viewModelId);h&&a.designViewModelField&&h.changeField(a.designViewModelField.id,{valueChanging:t.fieldValueChanging,valueChanged:t.fieldValueChanged})}}}getExpressionConfig(t,o,r=["compute","dependency","validate"],l){return new Tn(this.formSchemaUtils).getExpressionConfig(t,o,r,l)}getBindingDataType(){return this.designViewModelField?this.designViewModelField.type.name==="Number"?"number":this.designViewModelField.type.name==="String"?"string":"boolean":"boolean"}getEditor(){return this.getBindingDataType()==="number"?this.numberEditorOptions:{}}updatePropertyValue(t,o,r){var l;t.editor[o]!==r?t.editor[o]=r:(l=this.getFormDesignerInstance())==null||l.reloadPropertyPanel()}setBooleanValue(t,o,r){let l=r;this.getBindingDataType()==="string"&&(l=(l||"").trim()||(o==="trueValue"?"true":"false"));const s=o==="trueValue"?"falseValue":"trueValue";t.editor[s]===l&&(l=l+1),this.updatePropertyValue(t,o,l)}getBooleanValueConverter(){return{convertFrom:(t,o)=>t.editor[o],convertTo:(t,o,r)=>{this.setBooleanValue(t,o,r)}}}}const Vn=Symbol("FModalService");Ft.install=n=>{n.component(Ft.name,Ft);const e=new mn(n);n.provide(Vn,e),n.provide("FModalService",e)},Ft.register=(n,e,t,o)=>{n.modal=Ft,e.modal=Fi,o.modal={callbackResolver:Ti}};function In(n,e){function t(){const o=n.beforeOpen||n.beforeClickButton||null;let r=Promise.resolve(!0);if(o){const l=o(e.value);if(typeof l>"u")return r;typeof l=="boolean"?r=Promise.resolve(l):r=l}return r}return{judgeCanOpen:t}}function Hr(n,e,t,o,r){const l=i.ref(n.buttonBehavior),a=i.ref(n.popupOnInput),s=i.computed(()=>({"input-group-append":!0,"append-force-show":n.showButtonWhenDisabled&&(n.readonly||n.disable)})),{judgeCanOpen:u}=In(n,r),d=i.computed(()=>n.showButtonWhenDisabled||(!n.editable||!n.readonly)&&!n.disable),m=i.inject(Vn,null),c=i.ref();async function f(v){if(await u()&&d.value){const S=!!e.slots.default;if(l.value==="Modal"){const T=n.modalOptions,x=m==null?void 0:m.open({...T,render:()=>e.slots.default&&e.slots.default()});c.value=x==null?void 0:x.modalRef}l.value==="Overlay"&&bi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),S&&l.value==="Popup"&&o.togglePopup(!0),S&&a.value&&o.hidePopup(),e.emit("clickButton",{origin:v,value:n.modelValue})}}function p(v){e.emit("mouseEnterIcon",v)}function h(v){e.emit("mouseLeaveIcon",v)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:p,onMouseLeaveButton:h,modalRef:c}}function Dr(n,e,t,o,r,l){const a=i.ref(!1),s=i.computed(()=>n.enableClear&&!n.readonly&&!n.disable),{changeTextBoxValue:u,hasClearClass:d}=l;function m(h){a.value=h,d.value=h}i.watch(r,()=>{m(!!r.value)});function c(h){const v=!n.readonly&&!n.disable&&n.editable,S=!n.editable;h.stopPropagation(),(v||S)&&(u(""),r.value="",m(!a.value),e.emit("clear"))}function f(h){if(s.value){if(!t.value){m(!1);return}!n.disable&&!n.readonly&&m(!0)}}function p(h){s.value&&m(!1)}return{enableClearButton:s,showClearButton:a,onClearValue:c,onMouseEnterTextBox:f,onMouseLeaveTextBox:p}}function qr(n,e,t,o,r){const l=i.computed(()=>n.popupOnInput),a=i.computed(()=>n.popupOnFocus),{shouldPopupContent:s,closeAllPopover:u}=r,d=i.ref(!1),m=i.computed(()=>n.enableTitle?t.value:""),c=i.computed(()=>(n.disable||n.readonly)&&!n.forcePlaceholder?"":n.placeholder),f=i.computed(()=>n.readonly||!n.editable),p=i.ref(!1),h=i.computed(()=>!n.disable&&p.value),v=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":h.value,"input-group--has-clear":n.enableClear&&d.value}));function T(V,B=!0){t.value=V,B&&(e.emit("change",V),e.emit("update:modelValue",V))}function x(V){s.value=!1,T(V,!0)}i.watch(()=>n.modelValue,V=>{t.value=V});function w(V){p.value=!1,e.emit("blur",V),V.stopPropagation()}function M(V){e.emit("click",V),u(),e.slots.default&&!n.disable&&!n.readonly&&n.popupOnClick&&r.togglePopup()}function y(V){!n.disable&&!n.readonly&&(p.value=!0,f.value||(e.emit("focus",V),a.value&&!s.value&&r.popup()))}function b(V){e.emit("input",V);const B=V.target.value;o.value=B,t.value!==B&&T(B,n.updateOn==="change"),l.value&&!s.value&&r.popup()}function g(V){V.target.tagName!=="INPUT"&&V.preventDefault(),V.stopPropagation()}function C(V){e.emit("keydown",V)}function E(V){V.key==="Enter"&&(l.value||a.value)&&r.hidePopup(),e.emit("keyup",V)}function O(V){const B=V.target.value;V.stopPropagation(),T(B)}return{hasFocusedTextBox:h,isTextBoxReadonly:f,textBoxClass:v,textBoxPlaceholder:c,textBoxTitle:m,inputGroupClass:S,hasClearClass:d,changeTextBoxValue:T,commitValue:x,onBlurTextBox:w,onClickTextBox:M,onFocusTextBox:y,onInput:b,onKeyDownTextBox:C,onKeyUpTextBox:E,onMouseDownTextBox:g,onTextBoxValueChange:O}}const Tt="FarrisVue_PopoverInstancesKey";function Wr(n,e,t,o){const r=i.ref(),l=i.ref(!1),{judgeCanOpen:a}=In(n,o);i.watch(()=>r.value,(p,h)=>{window[Tt]=window[Tt]||new WeakMap,p?window[Tt].set(t.value,p):window[Tt].delete(t.value)});function s(){if(window[Tt]){const p=window[Tt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(h=>{const v=p.get(h);v&&h!==t.value&&!t.value.closest(".popover-fitcontent")&&v.hide()})}}function u(){const p=r.value;p&&p.show(t.value)}async function d(p=!1){if(!!e.slots.default){if(!p&&!l.value&&!await a())return;l.value=!l.value,await i.nextTick(),u()}}async function m(p=!1){if(!!e.slots.default){if(!p&&!await a())return;l.value=!0,await i.nextTick(),u()}}function c(){l.value=!1}function f(){l.value=!0,i.nextTick(()=>{u()})}return{hidePopup:c,showPopup:f,popup:m,shouldPopupContent:l,togglePopup:d,popoverRef:r,closeAllPopover:s}}function zr(n,e,t){const o=i.ref(),{isTextBoxReadonly:r,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:s,onBlurTextBox:u,onClickTextBox:d,onFocusTextBox:m,onInput:c,onKeyDownTextBox:f,onKeyUpTextBox:p,onMouseDownTextBox:h,onTextBoxValueChange:v}=t,S=i.ref(n.id),{uuid:T}=ee.useGuid(),x=i.computed(()=>({"border-top-right-radius":"6px","border-bottom-right-radius":"6px"}));i.onMounted(()=>{var g,C;n.selectOnCreated&&((g=o.value)==null||g.select()),n.focusOnCreated&&((C=o.value)==null||C.focus({preventScroll:!0})),S.value||(S.value="button-edit_"+T(8)),S.value=S.value+"-textbox"});const w=i.ref(!1),M=g=>{g.preventDefault(),w.value=!0},y=g=>{g.preventDefault(),w.value=!1,c(g)};function b(g){w.value||c(g)}return()=>i.createVNode("input",{id:n.id?n.id+"-textbox":void 0,ref:o,name:"input-group-value",autocomplete:n.autoComplete?"on":"off",class:l.value,style:x.value,disabled:n.disable,maxlength:n.maxLength,minlength:n.minLength,placeholder:a.value,readonly:r.value,tabindex:n.tabIndex,title:s.value,type:n.inputType,value:e.value,onBlur:u,onChange:v,onClick:d,onFocus:m,onInput:b,onKeydown:f,onKeyup:p,onMousedown:h,onCompositionend:y,onCompositionstart:M},null)}function Gr(n,e,t){const o=i.ref(n.separator),r=i.computed(()=>n.readonly||n.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:s,onClickTextBox:u,textBoxPlaceholder:d}=t,m=i.computed(()=>e.value?e.value.split(o.value).map(h=>({name:h,selectable:!0})):[]);function c(h){l(h.map(v=>v.name).join(o.value),!0)}i.watch(()=>n.separator,h=>{o.value=h});const f=i.ref(!n.disable&&!n.readonly);i.watch([()=>n.disable,()=>n.readonly],([h,v],[S,T])=>{f.value=!h&&!v});function p(h){u(h)}return()=>i.createVNode(to,{tabindex:n.tabIndex,onFocus:a,onBlur:s,id:`${n.id}-tag-editor`,class:"form-control",placeholder:d.value,data:m.value,showClose:!r.value,showInput:!0,disable:r.value,onChange:c,onClick:p},null)}function Ur(n,e,t,o){const{buttonGroupClass:r,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:s}=t,{enableClearButton:u,showClearButton:d,onClearValue:m}=o,c=i.ref(),f=Ne.debounce(h=>{l(h)},n.buttonBehavior==="Modal"?0:200),p=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>i.createVNode("div",{id:n.id?`${n.id}-button-group`:void 0,class:r.value},[u.value&&i.withDirectives(i.createVNode("span",{class:"input-group-text input-group-clear",onClick:m,onMousedown:p},[i.createVNode("i",{class:"f-icon modal_close"},null)]),[[i.vShow,d.value]]),e.slots.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",onClick:f,onMouseenter:a,onMouseleave:s},[e.slots.buttonContent()]):n.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:n.buttonContent,ref:c,onClick:h=>f(h),onMouseenter:a,onMouseleave:s},null):null]),buttonHandleElement:c}}function Yr(n,e,t){const o=i.ref(n.popupMinWidth),{hidePopup:r,popoverRef:l}=t,a=()=>{e.emit("shown")};return()=>i.createVNode(Kn,{id:`${n.id}-popover`,ref:l,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,onShown:a,beforeClose:n.beforeClosePopup,limitContentBySpace:n.limitContentBySpace},{default:()=>{var s,u;return[(u=(s=e.slots).default)==null?void 0:u.call(s)]}})}const Xr=i.defineComponent({name:"FButtonEdit",props:pi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(n,e){const t=i.ref(),o=i.ref(n.customClass),r=i.ref(n.modelValue),l=Wr(n,e,t,r),{shouldPopupContent:a,hidePopup:s,showPopup:u,togglePopup:d}=l,m=Hr(n,e,t,l,r),c=i.ref(""),f=qr(n,e,r,c,l),{hasFocusedTextBox:p,commitValue:h,inputGroupClass:v}=f,S=Dr(n,e,r,p,c,f),{onMouseEnterTextBox:T,onMouseLeaveTextBox:x}=S,w=i.ref(!1),M=i.computed(()=>{const _={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!n.wrapText};return o.value&&o.value.split(" ").reduce(($,P)=>($[P]=!0,$),_),_}),y=i.computed(()=>({overflow:n.wrapText?"hidden":""})),b=i.computed(()=>({paddingLeft:"3px",backgroundColor:"#fff"}));function g(){if(!n.multiSelect||n.inputType!=="tag"||!t.value)return 0;let _=0;const $=Array.from(t.value.querySelectorAll(".farris-tag-item"));return $&&$.length&&(_=$.map(P=>P.offsetTop).filter(P=>P>20).length),_}const C=i.ref(g());i.onUpdated(()=>{C.value=g()});function E(){return n.multiSelect&&n.inputType==="tag"?()=>i.createVNode(i.Fragment,null,[Gr(n,r,f)(),!!C.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("+"),C.value])])]):zr(n,r,f)}let O=E();i.watch([()=>n.multiSelect,()=>n.inputType],()=>{O=E()});const{renderButtonGroup:V,buttonHandleElement:B}=Ur(n,e,m,S),R=Yr(n,e,l),I=i.ref(a.value),F={displayText:c,commitValue:h,elementRef:t,hidePopup:s,showPopup:u,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:d,openDialog:()=>{B.value&&n.buttonBehavior==="Modal"&&B.value.click()},getModal:()=>{var _;return n.buttonBehavior==="Modal"?(_=m.modalRef.value)==null?void 0:_.value:null},getTextbox:()=>{var _;return(_=t.value)==null?void 0:_.querySelector("input")},forceClosePopup:()=>{I.value=!1,w.value=!0,a.value=!1}};return i.onMounted(()=>{t.value.componentInstance=F,window.onresize=()=>{document.body.click()}}),i.onBeforeUnmount(()=>{var _;window.onresize=null,(_=window[Tt])==null||_.delete(t.value)}),e.expose(F),i.watch(()=>a.value,async(_,$)=>{if(w.value){I.value=_,w.value=!1;return}if(!_&&n.beforeClosePopup&&typeof n.beforeClosePopup=="function"){try{const P=await n.beforeClosePopup();I.value=!P,(!P||n.readonly)&&(a.value=!0)}catch(P){console.error("Error in beforeClosePopup:",P),I.value=$,a.value=$}return}I.value=_}),()=>{var _,$;return i.createVNode(i.Fragment,null,[i.createVNode("div",i.mergeProps(e.attrs,{ref:t,class:M.value,id:n.id?n.id:void 0,style:y.value}),[i.createVNode("div",{id:n.id?`${n.id}-input-group`:void 0,class:v.value,style:b.value,onMouseenter:T,onMouseleave:x},[($=(_=e.slots).precontent)==null?void 0:$.call(_),O(),V()])]),I.value&&R()])}}}),Pn=new Map([["appearance",Lt],["column","columnOption"],["command","commandOption"]]),Nn=new Map([]),Zr="root-viewmodel";class Jr{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),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(t,e,r)}wrapContainerSectionForComponent(e,t,o){var u,d,m,c,f,p,h,v,S,T,x;const r=(d=(u=t==null?void 0:t.parentComponentInstance)==null?void 0:u.schema)==null?void 0:d.type,l=(f=(c=(m=t==null?void 0:t.parentComponentInstance)==null?void 0:m.schema)==null?void 0:c.appearance)==null?void 0:f.class,a=(h=(p=this.formSchemaUtils.getFormSchema())==null?void 0:p.module)==null?void 0:h.templateId;if(r===at.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const s=[at.DgControl["content-container"].type,at.DgControl["response-layout-item"].type,at.DgControl["splitter-pane"].type];if(r&&s.includes(r)){const w=this.resolver.getSchemaByType("section",{parentComponentInstance:t.parentComponentInstance,mainTitle:t.componentName},this.designerHostService);if(w&&w.contents&&w.contents.length){const M=w.contents[0];return M.contents=[e],this.appendAddDeleteBtnToParentContainer(M,t,o),w}}return this.appendAddDeleteBtnToParentContainer((v=t==null?void 0:t.parentComponentInstance)==null?void 0:v.schema,t,o),r===at.DgControl["tab-page"].type&&(S=t.parentComponentInstance)!=null&&S.parent&&(T=t.parentComponentInstance)!=null&&T.parent.updateToolbarItems&&((x=t.parentComponentInstance)==null||x.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,t,o){const r=e.type,l=o.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(t.bindTo==="/"||t.componentType!=="data-grid"&&t.componentType!=="form")return;const a=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),s=at.DgControl["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",u=this.resolver.getSchemaByType(s),d=[Object.assign({},u,{id:`button-add-${t.componentId}`,type:s,text:"新增",disabled:a.find(m=>m.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,onClick:`root-viewModel.${o.id}.${l}AddItem1`}),Object.assign({},u,{id:`button-remove-${t.componentId}`,type:s,text:"删除",disabled:a.find(m=>m.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,onClick:`root-viewModel.${o.id}.${l}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,type:at.DgControl["tab-page"].type===r?"tab-toolbar":"section-toolbar",buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.type||(e.toolbar.type=at.DgControl["tab-page"].type===r?"tab-toolbar":"section-toolbar"),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(d),this.appendAddAndDeleteCommands(o),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var m;const t=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),o=ee.useGuid().guid(),r=ee.useGuid().guid(),l=this.resolveCommandController(),a={id:o,code:`${t}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},s={id:r,code:`${t}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:l,shortcut:{},extensions:[]};(m=this.designerHostService.designerContext)!=null&&m.appendIdentifyForNewCommand&&(this.designerHostService.designerContext.appendIdentifyForNewCommand(a),this.designerHostService.designerContext.appendIdentifyForNewCommand(s)),e.commands.push(a,s),this.formSchemaUtils.getFormSchema().module.webcmds.find(c=>c.id===l).refedHandlers.push({host:o,handler:"AddItem"},{host:r,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,t=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],o=e.find(l=>t.includes(l.id));if(o)return o.id;const r="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:r,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),r}createComponentRefNode(e){const 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(e)},contents:o}),t}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Zr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var r,l,a;const{templateId:t}=this.formSchemaUtils.getFormSchema().module,o=(a=(l=(r=e.parentComponentInstance)==null?void 0:r.schema)==null?void 0:l.appearance)==null?void 0:a.class;return t==="double-list-in-tab-template"||["double-list-template","tree-list-template"].includes(t)&&(o!=null&&o.includes("f-page-content-main"))?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){var m,c,f;const t=(f=(c=(m=e.parentComponentInstance)==null?void 0:m.schema)==null?void 0:c.appearance)==null?void 0:f.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let r;if(o==="double-list-in-tab-template"){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),r=p}else if((o==="double-list-template"||o==="tree-list-template")&&(t!=null&&t.includes("f-page-content-main"))){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),r=p}else{const p=this.resolver.getSchemaByType("content-container");Object.assign(p,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),r=p}const l=this.resolver.getSchemaByType("data-grid"),a=[],s=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),u=e.editable&&s.length>0&&s.findIndex(p=>p.id==="editable")>-1;Object.assign(l,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:u,dataSource:e.dataSource||"",editable:u?"viewModel.stateMachine['editable']":!1,pagination:{enable:!e.editable}}),r.contents=[l];const{selectedFields:d}=e;return d==null||d.forEach(p=>{if(p.$type===ee.FormSchemaEntityField$Type.ComplexField)return;const h=Ne.cloneDeep(p),v=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",h,"",u);v&&a.push(v)}),[r]}assembleViewModelFields(e){const t=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===ee.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=r.type.name;(a===ee.FormSchemaEntityFieldTypeName.Enum||a===ee.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),t.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),t}}function Bn(n,e,t,o){var l,a,s,u,d,m,c;const r=t.parentComponentInstance;if(r&&o){const f=Math.random().toString(36).slice(2,6),p={componentId:`data-grid-${f}`,componentName:((l=t.bindingSourceContext)==null?void 0:l.entityTitle)||((s=(a=t.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:s.name)||`表格-${f}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((u=t.bindingSourceContext)==null?void 0:u.bindTo)||"",dataSource:(m=(d=t.bindingSourceContext)==null?void 0:d.bindingEntity)==null?void 0:m.label,selectedFields:(c=t.bindingSourceContext)==null?void 0:c.bindingEntityFields};return new Jr(n,o).createComponent(p)}else return e}function On(n,e,t){return e}const Qr={$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"]},jn={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},Kr=yt(jn,Qr,Pn,Bn),ea=new Map([["appearance",Lt]]);function ta(n,e,t){return e}const na={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:[]}}}}}},oa={$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"]},Rn={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]},virtualized:{type:Boolean,default:!1},rowOption:{type:Object},columns:{type:Array,default:[{field:"name",title:"",dataType:"string",width:"100%"}]},checkBeforeRemoveItem:{type:Function,default:null},selectedItemClass:{Type:[String,Function],default:"draggable-item--text-truncate",validator:n=>typeof n=="string"||typeof n=="function"}};yt(Rn,oa,ea,ta,na);const ia={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:n=>typeof n=="string"||typeof n=="function"},itemStyle:{type:[String,Function],default:"",validator:n=>typeof n=="string"||typeof n=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function ra(n,e){function t(l){const a=[];let s=l.nextNode();for(;s;)a.push(s),s=l.nextNode();return a}function o(l,a){const s=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return t(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:f})=>{const p=[];let h=0;for(;h<f.length;){const v=f.indexOf(a,h);if(v===-1)break;p.push(v),h=v+a.length}return p.map(v=>{const S=new Range;return S.setStart(c,v),S.setEnd(c,v+a.length),S})}).flat()}function r(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=o(e.value,l.toLocaleLowerCase()),s=new Highlight(...a);CSS.highlights.set("search-result",s)}return{search:r}}function $n(n,e,t,o,r,l,a,s,u,d){const m=i.ref(n.size),c=i.ref(n.textField),f=i.ref(n.titleField),p=i.ref(n.disableField),h=i.computed(()=>{var E,O;return((E=n.selection)==null?void 0:E.multiSelect)&&((O=n.selection)==null?void 0:O.showCheckbox)}),{onMouseenterItem:v,onMouseoverItem:S,onMouseoutItem:T}=l,{getKey:x,listViewItemClass:w,listViewItemStyle:M,onCheckItem:y,onClickItem:b}=a,g=i.computed(()=>{const E={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return n.itemClass?E:{margin:m.value==="small"?"0.25rem 0":"8px 0",...E}});function C(E,O,V){return E.checked=s.findIndexInSelectedItems(E)>-1,i.createVNode("li",{class:w(E,O),id:x(E,O),key:x(E,O),style:M(E,O),onClick:B=>b(E,O,B),onMouseenter:B=>v(B,E,O),onMouseover:B=>S(B,E,O),onMouseout:B=>T(B,E,O)},[h.value&&i.createVNode("div",{class:"f-list-select",onClick:B=>B.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+x(E,O),customClass:"listview-checkbox float-left",disabled:E[p.value],checked:E.checked,"onUpdate:checked":B=>E.checked=B,onChange:B=>{y(E,O,!B.checked)}},null)]),i.createVNode("div",{class:"f-list-content"},[i.createVNode("div",{class:n.itemContentClass,style:g.value,title:E.raw[f.value]||E.raw[c.value]},[E.raw[c.value]])])])}return{renderItem:C}}function aa(n,e,t,o,r,l,a,s,u,d){const m=i.ref(n.multiSelect),c=i.ref(n.disableField),f=i.ref(n.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:v}=l,{getKey:S,listViewItemClass:T,listViewItemStyle:x,onCheckItem:w,onClickItem:M}=a;function y(g,C,E){return n.contentTemplate?i.createVNode(i.Fragment,null,[n.contentTemplate({item:g.raw,index:C,selectedItem:E})]):e.slots.content?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.content({item:g.raw,index:C,selectedItem:E})]):i.createVNode("div",{style:"margin: 10px 0;"},[g.raw[f.value||"name"]])}function b(g,C,E){return i.createVNode("li",{class:T(g,C),id:S(g,C),key:S(g,C),style:x(g,C),onClick:O=>M(g,C,O),onMouseenter:O=>p(O,g,C),onMouseover:O=>h(O,g,C),onMouseout:O=>v(O,g,C)},[m.value&&i.createVNode("div",{class:"f-list-select",onClick:O=>O.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+S(g,C),customClass:"listview-checkbox",disabled:g[c.value]||!g.checked,checked:g.checked,"onUpdate:checked":O=>g.checked=O,onChange:O=>w(g,C,!O.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[y(g,C,E)])])}return{renderItem:b}}function la(n,e,t,o,r,l,a,s,u,d){const m=i.ref(n.multiSelect),c=i.ref(n.disableField),f=i.ref(n.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:v}=l,{getKey:S,listViewItemClass:T,onCheckItem:x,onClickItem:w}=a,{dragstart:M,dragenter:y,dragover:b,dragend:g}=o,{removeItem:C}=u,E=i.computed(()=>({margin:m.value?"10px 0":"10px 0px 10px 14px"}));function O(F,_=""){const $=F.target;$.title=$.scrollWidth>$.clientWidth?_:""}function V(F){return i.createVNode("div",{style:E.value,onMouseenter:_=>O(_,F.raw[f.value||"name"])},[F.raw[f.value||"name"]])}function B(){return e.slots.itemContent?e.slots.itemContent:V}const R=B();function I(F,_,$){return i.createVNode("li",{class:T(F,_),id:S(F,_),key:S(F,_),onClick:P=>w(F,_,P),onMouseenter:P=>p(P,F,_),onMouseover:P=>h(P,F,_),onMouseout:P=>v(P,F,_),draggable:"true",onDragstart:P=>M(P,F,_),onDragenter:P=>y(P,_),onDragend:P=>g(P,F),onDragover:P=>b(P)},[m.value&&i.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+S(F,_),customClass:"listview-checkbox",disabled:F[c.value]||!F.checked,checked:F.checked,"onUpdate:checked":P=>F.checked=P,onChange:P=>x(F,_,!P.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[R(F)]),i.createVNode("div",{class:"f-list-remove",onClick:P=>{P.stopPropagation(),C(_)}},[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:I}}function sa(n,e,t,o,r,l,a,s,u,d){var S;const m=i.ref(((S=n.group)==null?void 0:S.groupFields)||[]),{collpaseGroupIconClass:c}=r,{toggleGroupRow:f}=d;function p(T,x){x.collapse=!x.collapse,t.value=f(x.collapse?"collapse":"expand",x,t.value)}function h(T,x,w){return e.slots.group?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.group({item:T.raw,index:x,selectedItem:w})]):i.createVNode("div",{class:"f-navlookup-recentHeader",onClick:M=>p(M,T)},[i.createVNode("div",{class:"fv-grid-group-row-icon"},[i.createVNode("span",{class:c(T)},null)]),i.createVNode("div",{class:"f-navlookup-recommandLabel"},[T.raw[m.value[T.layer]]])])}function v(T,x,w){return T.layer>-1&&h(T,x,w)}return{renderItem:v}}function ca(n,e,t,o){const{dataView:r}=t,{updateSelectedItems:l}=o;function a(s){if(s>-1&&s<r.value.length){if(n!=null&&n.checkBeforeRemoveItem&&!n.checkBeforeRemoveItem(r.value[s]))return;const u=r.value.splice(s,1);l(),e.emit("removeItem",u[0])}}return{removeItem:a}}function da(n,e,t,o,r,l,a,s,u,d){const{t:m}=ut.useI18n(),c=i.ref(n.view),f=i.ref(n.view==="CardView"),p=i.ref({}),h=i.ref(m("listView.emptyMessage")),v=ca(n,e,o,u),S=i.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":n.multiSelect,"d-flex":f.value,"flex-wrap":f.value})),T=i.computed(()=>!!t.value&&t.value.length>0),x=i.computed(()=>t.value.length===0);i.computed(()=>x.value&&!e.slots.empty);function w(){return c.value==="SingleView"?$n:c.value==="DraggableView"?la:(c.value==="ContentView"||c.value==="CardView")&&(n.contentTemplate||e.slots.content)?aa:$n}const M=w(),{renderItem:y}=M(n,e,t,d,r,l,u,a,v,s),{renderItem:b}=sa(n,e,t,d,r,l,u,a,v,s),g=[y,b];function C(){return t.value.filter(V=>V.visible!==!1).map((V,B)=>g[V.type](V,B,p))}function E(){return i.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[i.createVNode("p",{class:"f-empty-title"},[n.emptyTemplate?n.emptyTemplate():e.slots.empty?e.slots.empty():h.value])])}function O(){return i.createVNode("ul",{class:S.value,style:"list-style: none;"},[T.value&&C(),x.value&&E()])}return{renderListArea:O}}function ua(n,e,t){function o(){return e.slots.header&&i.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:o}}function An(n,e,t){const o=i.ref(n.headerClass),r=i.ref(n.placeholder),l=i.ref(""),a=i.computed(()=>!l.value),s=i.computed(()=>!!l.value);function u(f){l.value=""}i.watch(l,f=>{n.enableHighlightSearch&&t.search(f),e.emit("afterSearch",f)});const d=i.computed(()=>{const f={"form-group":!0,"farris-form-group":!0};return o.value&&o.value.split(" ").reduce((h,v)=>(h[v]=!0,h),f),f});function m(f){}function c(){return i.createVNode("div",{class:"f-list-view-header",onClick:i.withModifiers(()=>m,["prevent","stop"])},[i.createVNode("div",{class:d.value},[i.createVNode("div",{class:"farris-input-wrap"},[i.createVNode("div",{class:"f-cmp-inputgroup"},[i.createVNode("div",{class:"input-group f-state-editable"},[i.withDirectives(i.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":f=>l.value=f,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[i.vModelText,l.value]]),i.createVNode("div",{class:"input-group-append"},[s.value&&i.createVNode("span",{class:"input-group-text input-group-clear",onClick:f=>u()},[i.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&i.createVNode("span",{class:"input-group-text"},[i.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}function fa(){const n=i.ref(""),e=i.ref(-1),t=i.ref(""),o=i.ref(-1),r=i.ref(!1);function l(c,f,p){o.value=p}function a(c,f,p){r.value||(o.value=p)}function s(c,f,p){o.value=-1}function u(){r.value=!0}function d(){r.value=!1}function m(){e.value=-1,n.value=""}return{activeIndex:e,focusedItemId:t,hoverIndex:o,clearActiveItem:m,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:s,resumeHover:d,suspendHover:u}}function ma(n,e,t,o){const r=i.ref(n.idField),{dataView:l}=t,a=i.ref(-1),s=i.ref(!1),{activeIndex:u,focusedItemId:d,hoverIndex:m,resumeHover:c,suspendHover:f}=o;let p,h=0,v=0;function S(b,g){const C=b-h,E=g-v;p.style.left=parseInt(p.style.left)+C+"px",p.style.top=parseInt(p.style.top)+E+"px",h=b,v=g}function T(b){const{left:g,top:C}=b.getBoundingClientRect(),E=b.cloneNode(!0);return E.style.cssText=`
1
+ (function(be,ee){typeof exports=="object"&&typeof module<"u"?ee(exports,require("../../components/common/index.umd.js"),require("../../components/data-grid/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("vue"),require("@vueuse/core"),require("../../components/popover/index.umd.js"),require("vue-i18n"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/checkbox/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/list-view/index.umd.js"),require("../../components/date-picker/index.umd.js"),require("../../components/number-spinner/index.umd.js"),require("../../components/search-box/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/accordion/index.umd.js"),require("../../components/avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/calendar/index.umd.js"),require("../../components/capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../checkbox-group/index.umd.js"),require("../../components/color-picker/index.umd.js"),require("../../components/combo-list/index.umd.js"),require("../../components/content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../../components/dropdown/index.umd.js"),require("../../components/external-container/index.umd.js"),require("../../components/image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../../components/layout/index.umd.js"),require("../../components/list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../../components/lookup/index.umd.js"),require("../../components/language-textbox/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-range/index.umd.js"),require("../../components/order/index.umd.js"),require("../../components/page-header/index.umd.js"),require("../../components/page-footer/index.umd.js"),require("../../components/progress/index.umd.js"),require("../../components/query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../../components/rate/index.umd.js"),require("../../components/response-toolbar/index.umd.js"),require("../../components/response-layout/index.umd.js"),require("../../components/response-layout-editor/index.umd.js"),require("../../components/section/index.umd.js"),require("../../components/smoke-detector/index.umd.js"),require("../../components/splitter/index.umd.js"),require("../../components/step/index.umd.js"),require("../../components/switch/index.umd.js"),require("../../components/tags/index.umd.js"),require("../../components/text/index.umd.js"),require("../../components/time-picker/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/uploader/index.umd.js"),require("../../components/verify-detail/index.umd.js"),require("../../components/component/index.umd.js"),require("../../components/video/index.umd.js"),require("../../components/textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../../components/fieldset/index.umd.js"),require("../drawer/index.umd.js"),require("../../components/html-template/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/combo-tree/index.umd.js"),require("../../components/events-editor/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/binding-selector/index.umd.js"),require("../../components/mapping-editor/index.umd.js"),require("../../components/schema-selector/index.umd.js"),require("../../components/event-parameter/index.umd.js"),require("../../components/filter-condition-editor/index.umd.js"),require("../../components/sort-condition-editor/index.umd.js"),require("../../components/menu-lookup/index.umd.js"),require("../../components/json-editor/index.umd.js"),require("../../components/property-editor/index.umd.js"),require("../../components/expression-editor/index.umd.js"),require("../../components/code-editor/index.umd.js"),require("../../components/collection-property-editor/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/notify/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/data-grid/index.umd.js","../../components/dynamic-resolver/index.umd.js","vue","@vueuse/core","../../components/popover/index.umd.js","vue-i18n","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/checkbox/index.umd.js","../../components/filter-bar/index.umd.js","../../components/pagination/index.umd.js","../../components/button/index.umd.js","../../components/list-view/index.umd.js","../../components/date-picker/index.umd.js","../../components/number-spinner/index.umd.js","../../components/search-box/index.umd.js","../../components/locale/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/accordion/index.umd.js","../../components/avatar/index.umd.js","../button-edit/index.umd.js","../../components/button-group/index.umd.js","../../components/calendar/index.umd.js","../../components/capsule/index.umd.js","../checkbox/index.umd.js","../checkbox-group/index.umd.js","../../components/color-picker/index.umd.js","../../components/combo-list/index.umd.js","../../components/content-container/index.umd.js","../data-grid/index.umd.js","../../components/dropdown/index.umd.js","../../components/external-container/index.umd.js","../../components/image-cropper/index.umd.js","../input-group/index.umd.js","../../components/layout/index.umd.js","../../components/list-nav/index.umd.js","../list-view/index.umd.js","../../components/lookup/index.umd.js","../../components/language-textbox/index.umd.js","../../components/nav/index.umd.js","../../components/number-range/index.umd.js","../../components/order/index.umd.js","../../components/page-header/index.umd.js","../../components/page-footer/index.umd.js","../../components/progress/index.umd.js","../../components/query-solution/index.umd.js","../radio-group/index.umd.js","../../components/rate/index.umd.js","../../components/response-toolbar/index.umd.js","../../components/response-layout/index.umd.js","../../components/response-layout-editor/index.umd.js","../../components/section/index.umd.js","../../components/smoke-detector/index.umd.js","../../components/splitter/index.umd.js","../../components/step/index.umd.js","../../components/switch/index.umd.js","../../components/tags/index.umd.js","../../components/text/index.umd.js","../../components/time-picker/index.umd.js","../../components/tree-view/index.umd.js","../../components/uploader/index.umd.js","../../components/verify-detail/index.umd.js","../../components/component/index.umd.js","../../components/video/index.umd.js","../../components/textarea/index.umd.js","../tree-grid/index.umd.js","../../components/fieldset/index.umd.js","../drawer/index.umd.js","../../components/html-template/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/combo-tree/index.umd.js","../../components/events-editor/index.umd.js","../../components/field-selector/index.umd.js","../../components/binding-selector/index.umd.js","../../components/mapping-editor/index.umd.js","../../components/schema-selector/index.umd.js","../../components/event-parameter/index.umd.js","../../components/filter-condition-editor/index.umd.js","../../components/sort-condition-editor/index.umd.js","../../components/menu-lookup/index.umd.js","../../components/json-editor/index.umd.js","../../components/property-editor/index.umd.js","../../components/expression-editor/index.umd.js","../../components/code-editor/index.umd.js","../../components/collection-property-editor/index.umd.js","../../components/designer-canvas/index.umd.js","../../components/data-view/index.umd.js","../../components/notify/index.umd.js"],ee):(be=typeof globalThis<"u"?globalThis:be||self,ee(be["data-grid"]={},be.common,be.FDataGrid,be.dynamicResolver,be.Vue,be.VueUseCore,be.FPopover,be.vueI18n,null,be.LodashES,null,null,be.checkbox,null,null,be.FButton,null,null,null,null,be.locale,be.condition,be.FDynamicForm,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,be.FTags,null,null,be.FTreeview,null,null,null,null,null,null,null,null,null,be.designer$1,be.propertyPanel,null,null,be.FFieldSelector,null,null,null,null,null,null,null,null,null,null,null,null,be.designerCanvas,be.dataView,be.notify))})(this,function(be,ee,wt,pt,i,en,Kn,ut,hl,Ne,gl,yl,zt,vl,bl,tn,Cl,wl,Sl,xl,Rt,Se,eo,Fl,Tl,Ml,_l,El,kl,Vl,Il,Pl,Nl,Bl,Ol,jl,Rl,$l,Al,Ll,Hl,Dl,ql,Wl,zl,Gl,Ul,Yl,Xl,Zl,Jl,Ql,Kl,es,ts,ns,os,is,rs,as,ls,to,ss,cs,no,ds,us,fs,ms,ps,hs,gs,ys,vs,nt,ot,bs,Cs,$t,ws,Ss,xs,Fs,Ts,Ms,_s,Es,ks,Vs,Is,Ps,at,ce,nn){"use strict";var ml=Object.defineProperty;var pl=(be,ee,wt)=>ee in be?ml(be,ee,{enumerable:!0,configurable:!0,writable:!0,value:wt}):be[ee]=wt;var le=(be,ee,wt)=>pl(be,typeof ee!="symbol"?ee+"":ee,wt);const oo={customClass:{type:String,default:""},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:!1,keepSelectingOnClick:!0}},selectionValues:{type:Array,default:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1},emptyTemplate:{type:Object}},io=ee.excludeProperties(Object.assign({},oo,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function ro(n,e,t,o,r){const{getGridHeaderCells:l}=r,a=120,s=50,u=i.computed(()=>{var g;return((g=n.rowNumber)==null?void 0:g.enable)||!1}),d=i.computed(()=>{var g,C;return((g=n.selection)==null?void 0:g.multiSelect)||((C=n.selection)==null?void 0:C.showCheckbox)||!1}),m=i.computed(()=>{var g;return 0+(u.value?((g=n.rowNumber)==null?void 0:g.width)||32:0)+(d.value?s:0)}),c=i.computed(()=>{var g;return(g=n.columnOption)==null?void 0:g.fitColumns}),f=i.computed(()=>{var g;return c.value&&((g=n.columnOption)==null?void 0:g.fitMode)||"none"});function p(g,C,E){const O=parseInt(g.width,10)/100;return E*O}function h(g,C,E){return typeof g.width=="string"?p(g,C,E):g.width||a}function v(g,C){const E=[],O=[];let V=0;g.value.primaryColumns.forEach(I=>{typeof I.width=="string"?O.push(I):(I.width=I.width||a,V+=I.width,E.push(I))});const B=C*(E.length/g.value.primaryColumns.length);E.forEach(I=>{const F=B*(I.width/V);I.actualWidth=F,g.value.primaryColumnsWidth+=I.actualWidth});const R=C-B;O.forEach(I=>{const F=p(I,g.value,R);I.actualWidth=F,g.value.primaryColumnsWidth+=I.actualWidth})}function S(g,C){const E=[],O=[],V=new WeakMap;let B=0,R=0;if(g.value.primaryColumns.forEach(F=>{if(typeof F.width=="string"){const _=p(F,g.value,C);V.set(F,_),B+=_,O.push(F)}else F.width=F.width||a,R+=F.width,E.push(F)}),C-B>R){const F=C-B;O.forEach(_=>{_.actualWidth=V.get(_)||a,g.value.primaryColumnsWidth+=_.actualWidth}),E.forEach(_=>{_.actualWidth=F*(_.width/R),g.value.primaryColumnsWidth+=_.actualWidth})}else v(g,C)}function T(g,C){g.value.primaryColumns.forEach(E=>{E.actualWidth=h(E,g.value,C),g.value.primaryColumnsWidth+=E.actualWidth})}const x={expand:S,none:T,percentage:v};function w(g){g.value.leftHeaderColumns=Array.from(l(g.value.leftColumns).values()),g.value.primaryHeaderColumns=Array.from(l(g.value.primaryColumns).values()),g.value.rightHeaderColumns=Array.from(l(g.value.rightColumns).values())}function M(g){g.value.leftColumnsWidth=0,g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,g.value.leftColumns.forEach(C=>{g.value.leftColumnsWidth+=C.actualWidth||0}),g.value.primaryColumns.forEach(C=>{g.value.primaryColumnsWidth+=C.actualWidth||0}),g.value.rightColumns.forEach(C=>{g.value.rightColumnsWidth+=C.actualWidth||0}),g.value=Object.assign({},g.value)}function y(g,C,E){var _;let O=0;const V=g.value.primaryColumns,B=g.value.rightColumns;g.value.rightColumns.forEach($=>{$.actualWidth=h($,g.value,C),O+=$.actualWidth});const R=E-O,I=x[f.value];if(I&&I(g,R),g.value.primaryColumnsWidth+O<=E)return g.value.primaryColumns=[...V,...B],g.value.primaryColumnsWidth+=O,g.value.rightColumns=[],g.value.rightColumnsWidth=0,!0;const F=new Map;return F.set("primary",[]),F.set("right",[]),g.value.primaryColumns.reduce(($,P)=>{var A,j;return P.fixed==="right"?(A=$.get("right"))==null||A.push(P):(j=$.get("primary"))==null||j.push(P),$},F),(_=F.get("right"))!=null&&_.length&&(g.value.primaryColumns=[...F.get("primary")||[]],g.value.rightColumns=[...F.get("right")||[]]),g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,!1}function b(){if(t.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const g=t.value.clientWidth-m.value;e.value.leftColumns.forEach(E=>{E.actualWidth=h(E,e.value,g),e.value.leftColumnsWidth+=E.actualWidth});const C=g-e.value.leftColumnsWidth;if(y(e,g,C))o.value=C;else{e.value.rightColumns.forEach(V=>{V.actualWidth=h(V,e.value,g),e.value.rightColumnsWidth+=V.actualWidth});const E=g-e.value.leftColumnsWidth-e.value.rightColumnsWidth,O=x[f.value];O&&O(e,E),o.value=E}w(e),e.value=Object.assign({},e.value)}}return i.watch(()=>{var g;return(g=n.columnOption)==null?void 0:g.fitColumns},(g,C)=>{g!==C&&g&&b()}),i.watch(f,(g,C)=>{g!==C&&c.value&&b()}),{calculateColumnHeaders:w,calculateColumnsSize:b,calculateColumnsWidth:M}}const ao="";function lo(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 l=i.ref(n.summary),a=i.computed(()=>{const y=l.value;return(y==null?void 0:y.groupFields)||[]});function s(){o.value.rightColumns.forEach(g=>{g.showSetting=!1}),o.value.primaryColumns.forEach(g=>{g.showSetting=!1});const y=o.value.rightColumns,b=o.value.primaryColumns;y.length>0?y[y.length-1].showSetting=!0:b.length>0&&(b[b.length-1].showSetting=!0)}function u(y){r();const b=new Map;return a.value&&a.value.reduce((g,C)=>(g.set(C,!0),g),b),y.reduce((g,C)=>(C.filter=C.filter||ao,C.fixed==="left"?(o.value.leftColumns.push(C),o.value.leftColumnsMap.set(C.field,C),o.value.leftColumnsWidth+=C.actualWidth):C.fixed==="right"?(o.value.rightColumns.push(C),o.value.rightColumnsMap.set(C.field,C),o.value.rightColumnsWidth+=C.actualWidth):(o.value.primaryColumns.push(C),o.value.primaryColumnsMap.set(C.field,C),o.value.primaryColumnsWidth+=C.actualWidth),b.has(C.field)&&o.value.summaryColumns.push(C),g),o),s(),o}u(n.columns);const d=i.computed(()=>o.value.leftColumns.length>0),m=i.computed(()=>o.value.rightColumns.length>0);function c(y,b){return b.sortable&&b.sort&&b.sort!=="none"&&y.push(b),y}function f(y,b){return y.sortOrder=y.sortOrder||0,b.sortOrder=b.sortOrder||0,y.sortOrder===b.sortOrder?0:y.sortOrder<b.sortOrder?-1:1}function p(y,b){return y.sortOrder=y.sortOrder||0,b.sortOrder=b.sortOrder||0,y.sortOrder===b.sortOrder?0:y.sortOrder<b.sortOrder?1:-1}function h(y,b){return b.filterable&&y.push(b),y}function v(){const y=[];return o.value.leftColumns.reduce(h,y),o.value.primaryColumns.reduce(h,y),o.value.rightColumns.reduce(h,y),y}function S(){const y=[];o.value.leftColumns.reduce(c,y),o.value.primaryColumns.reduce(c,y),o.value.rightColumns.reduce(c,y);const b=Math.max(...y.map(g=>g.sortOrder||0));return y.sort(p).map(g=>{const C=g.sortOrder||b+1;return g.sortOrder=C,g}).sort(f).map((g,C)=>{const E=C+1;return g.sortOrder=E,g})}function T(y,b,g){const C=y.map(E=>{const O=g.getSorterByColumn(E),V=E.sort==="asc",B=E.sort==="desc",R=V?O.ascend:B?O.decend:void 0;return{field:E.field,compare:R}});b.setSorters(C)}function x(y,b){const g=S();T(g,y,b)}function w(y){}function M(y){}return{applyColumnSorter:x,collectionFilterableColumns:v,applySortableColumns:T,collectionSortableColumns:S,columnContext:o,hasLeftFixedColumn:d,hasRightFixedColumn:m,updateColumnRenderContext:u,updateColumnSettingIcon:s,sortFromServer:w,createSortConditions:M}}function so(n,e,t,o,r,l,a,s){const u=i.ref(o.value-1+r),d=i.ref(0),{renderDataRow:m}=l,c=a?a.renderGroupRow:m,f=s?s.renderSummaryRow:m;function p(S){let T=m;return S.__fv_data_grid_group_row__&&(T=c),S.__fv_data_grid_group_summary__&&(T=f),T}function h(S,T,x,w){const{dataView:M}=t,y=[];if(M.value.length>0){const b=w?Date.now().toString():"";let g=S,C=0;const E=T-S+1;for(;y.length<E&&g<M.value.length;){const O=M.value[g],V=M.value[g-1]||x,B=y[C-1],R=V?(V.__fv_data_position__||0)+(V.__fv_data_height__||0):0,F=p(O)(O,V,B,g,R,e.value,y);F.refreshKey=b,y.push(F),C++,g++}}return d.value=y.length>0?y[0].index:0,u.value=y.length>0?y[y.length-1].index:0,y}function v(S,T,x){const w=T.groupField||"",{groupValue:M,raw:y}=T;t[S](w,M,y.groupParents||[]);const{dataView:b}=t,g=x[0].index,C=Math.min(g+o.value+r+1,b.value.length-1);return h(g,C)}return{getVisualData:h,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:v}}var He=(n=>(n[n.readonly=0]="readonly",n[n.editable=1]="editable",n[n.editing=2]="editing",n))(He||{}),lt=(n=>(n[n.initial=0]="initial",n[n.editing=1]="editing",n))(lt||{}),St=(n=>(n[n.data=0]="data",n[n.group=1]="group",n[n.summary=2]="summary",n))(St||{}),We=(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))(We||{}),st=(n=>(n.DATE="date",n.DATE_TIME="datetime",n.NUMBER="number",n.ENUM="enum",n.IMAGE="image",n.BOOLEAN="boolean",n.BOOLEAN2="boolean2",n.TIMEAGO="timeago",n.NONE="none",n.CUSTOM="custom",n.MULTI_LINGUAL="multilingual",n))(st||{});const co="__command__",uo=150,fo="right",on="commands";function mo(n,e,t){const{horizontalScrollThumbStyle:o,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:l}=t;function a(){return l.value&&i.createVNode("div",{class:"fv-grid-horizontal-scroll"},[i.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:o.value,onMousedown:s=>r(s,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function po(n){const{t:e}=ut.useI18n();function t(a,s){switch(a.command){case"edit":case"remove":return s.status===lt.initial;case"accept":case"cancel":return s.status===lt.editing;default:return!a.hidden}}function o(a,s,u,d){var m,c,f,p,h;switch((m=a.onClick)==null||m.call(a,s,u.dataIndex,u),a.command){case"edit":u.status,lt.editing,(f=(c=n.commandOption)==null?void 0:c.onClickEditCommand)==null||f.call(c,d,u);break;case"accept":case"cancel":u.status,lt.initial;break;case"remove":(h=(p=n.commandOption)==null?void 0:p.onClickDeleteCommand)==null||h.call(p,d,u);break}}function r(a){return a==="编辑"?e("datagrid.commandColumn.edit"):a==="确定"?e("datagrid.commandColumn.accept"):a==="取消"?e("datagrid.commandColumn.cancel"):a==="删除"?e("datagrid.commandColumn.remove"):a}function l(a,s){const{column:u}=a;return u.commands&&u.commands.map((d,m)=>m?t(d,s)&&i.createVNode(tn,{class:"ml-1",type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}):t(d,s)&&i.createVNode(tn,{type:d.type,size:d.size||"small",onClick:c=>o(d,c,s,a),style:{"margin-bottom":"3px"}},{default:()=>[i.createTextVNode(" "),r(d.text),i.createTextVNode(" ")]}))}return{renderCommandColumn:l}}function ho(n){const e=i.ref(n.minHeight),t=i.ref(n.minWidth),o=i.ref(n.height),r=i.ref(n.width),l=i.computed(()=>o.value<=0?0:Math.max(o.value,e.value)),a=i.computed(()=>r.value<=0?0:Math.max(r.value,t.value));return i.watch([()=>n.height,()=>n.width,()=>n.minHeight,()=>n.minWidth],([u,d,m,c])=>{e.value=Number(m),t.value=Number(c),o.value=Number(u),r.value=Number(d)}),{containerStyleObject:i.computed(()=>({height:l.value>0?`${l.value}px`:n.fit?"100%":"",width:a.value>0?`${a.value}px`:n.fit?"100%":"",flex:"1 1 0"}))}}function go(n){var l,a;const{t:e}=ut.useI18n(),t=i.ref(((l=n.commandOption)==null?void 0:l.enable)||!1),o=i.ref(((a=n.commandOption)==null?void 0:a.commands)||[]);function r(s){var u;if(t.value&&!(s.value.findIndex(m=>m.dataType===on)>-1)){const m={field:co,title:e("datagrid.commandColumn.title"),width:uo,fixed:fo,dataType:on,commands:o.value,resizable:!1,halign:((u=n.commandOption)==null?void 0:u.halign)||"left",visible:!0,formatter:n.commandOption.formatter?(c,f)=>n.commandOption.formatter(c,f):null};s.value.push(m)}}return{applyCommands:r}}function yo(n,e){var d;const t=i.ref((d=n.columnOption)==null?void 0:d.groups);function o(m,c,f,p,h){const v={actualWidth:0,children:[],depth:1,field:m.field,layer:1,left:0,parent:f,resizable:!0,title:m.title||"",status:We.none,popoverRef:i.ref(),showPopover:!1,column:null,sortType:"none"},S=p||v;if(m.group){let T=1;m.group.reduce((x,w)=>{if(typeof w=="string"){const M=c.get(w);M&&(h.fieldToRootMap.set(w,S),x.actualWidth+=M.actualWidth,x.children.push(M))}else{const M=o(w,c,x,S,h);T=Math.max(T,M.depth),x.actualWidth+=M.actualWidth,x.children.push(M)}return x},v),v.depth+=T}return e.value.headerDepth=Math.max(e.value.headerDepth,v.depth),v}function r(m){const c={groupedCells:new Map,fieldToRootMap:new Map};return t.value&&t.value.reduce((f,p)=>{const h=o(p,m,null,null,c);return f.groupedCells.set(p.field,h),f},c),c}function l(m){if(!m||m.length===0)return 0;const c=m[0];return c.children&&c.children.length>0&&(c.left=l(c.children)),c.left}function a(m,c){const f=e.value.headerDepth;m.forEach(p=>{p.layer=c?c.layer+1:1;const h=p.children&&p.children.length===0;p.depth=h?f-(p.layer-1):1,p.left=h?p.left:l(p.children),p.children&&a(p.children,p)})}function s(m,c){const f=new Map;return m.forEach(p=>{const h=c.fieldToRootMap.get(p.field),v=h!=null;v&&!f.has(h.field)&&f.set(h.field,h),v||f.set(p.field,p)}),a(Array.from(f.values())),f}function u(m){let c=new Map,f=0;if(m.reduce((p,h)=>{let v=We.none;v=h.sortable?v|We.sortable:v,v=h.filterable?v|We.filterable:v,v=h.sort&&h.sort!=="none"?v|We.sorted|(h.sort==="asc"?We.ascending:We.descending):v;const S=h.field;return p.set(S,{actualWidth:h.actualWidth||0,children:[],depth:1,layer:1,left:f,field:S,parent:null,resizable:h.resizable===void 0?!0:h.resizable,title:h.title,status:v,popoverRef:i.ref(),showPopover:!1,column:h,filterValue:null,sortType:h.sort||"none",showSetting:h.showSetting,draggable:h.draggable}),f+=h.actualWidth||0,p},c),t.value){const p=r(c);c=s(c,p)}return c}return{getGridHeaderCells:u}}function vo(n,e){var x;ee.useGuid();const{idField:t}=e,o=i.ref(n.summary),r=i.ref(n.group),l=i.ref(((x=n.group)==null?void 0:x.groupFields)||[]),a=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}),u=i.computed(()=>{const w=o.value;return(w==null?void 0:w.groupFields)||[]}),d=i.computed(()=>{const w=r.value;return w&&w.showSummary}),m=i.ref(0),c=new Map;let f=[];function p(w,M,y,b,g){const C=b[y];C&&(M.reduce((E,O,V)=>{var I;const B=O[C];let R=E.get(B);if(!R){const F=u.value.reduce((_,$)=>(_.set($,0),_),new Map);R={field:C,title:((I=g.get(C))==null?void 0:I.title)||C,value:B,layer:y,details:[],groupSummaries:F},E.set(B,R)}return u.value&&u.value.forEach(F=>{if(R){const _=R.groupSummaries.get(F)||0;R.groupSummaries.set(F,_+O[F])}}),u.value&&u.value.forEach(F=>{if(R){const _=R.groupSummaries.get(F)||0;R.groupSummaries.set(F,Number(_.toFixed(2)))}}),R.details.push(O),E},w),y<b.length-1&&w.forEach((E,O)=>{E.nestGroup=new Map,p(E.nestGroup,E.details,y+1,b,g),E.details=[]}))}function h(w,M){return n.group&&n.group.formatter?n.group.formatter(w.value,{...w,total:M}):`${w.title}:${w.value} (${M})`}function v(w,M){const y=[];return w.forEach(b=>{const g={[t.value]:`group_of_${M?M[t.value]+"_":""}${b.field}_${b.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:b.field,__fv_data_grid_group_layer__:b.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:b.value,groupParents:[]};M&&(g.groupParents=[...M.groupParents,M]);let C=0;if(y.push(g),b.nestGroup){const E=v(b.nestGroup,g);y.push(...E),C+=E.length}if(b.details&&b.details.length&&(y.push(...b.details),C+=b.details.length),d.value){const E={__fv_data_grid_group_field__:b.field,__fv_data_grid_group_layer__:b.layer,__fv_data_grid_group_summary__:!0};E[t.value]=`summary_of_${b.field}_${b.value}`,E[b.field]=Array.from(b.groupSummaries.entries()).reduce((O,[V,B])=>`${O} ${V} total:${B} `,""),y.push(E)}b.groupSummaries&&b.groupSummaries.size&&b.groupSummaries.forEach((E,O)=>{g[O]=E}),g[b.field]=h(b,C),g.value=b.value}),y.forEach((b,g)=>{b.__fv_data_index__=g}),y}function S(w,M,y){return!w||w.length===0||!M.length?M:(w.join(","),c.clear(),f=[],M=M.filter(b=>!b.__fv_data_grid_group_row__),p(c,M,0,w,y),f=v(c),f)}function T(w){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":w.collapse}}return{collpaseGroupIconClass:T,generateGroupData:S,groupFields:l,shouldGroupingData:a,showGroupPanel:s,groupRowSize:m}}function rn(n){const e="parent",t="layer",o="hasChildren",r=(a,s=1,u=[],d=null)=>(a=a||[],a.reduce((m,c)=>(c.id=c.id||c.data[n.idField],c[e]=d,c[t]=s,c[o]=c[o]===void 0?!1:c[o],c.data&&Object.keys(c.data).forEach(f=>{Object.keys(c).includes(f)||(c[f]=c.data[f])}),u.push(c),c.children&&c.children.length&&(c[o]=!0,r(c.children,s+1,u,c.id)),m),u),u);return{flatTreeData:r,isNestedTree:a=>a.some(s=>Array.isArray(s.children))}}function bo(n,e,t,o){const r=i.ref(0),l=i.ref(!!n.hierarchy),{idField:a}=o,{collapseField:s,hasChildrenField:u,parentIdField:d}=t,m=new Map,c=new Map,f=new Map,{flatTreeData:p,isNestedTree:h}=rn(n);function v(W,q){c.clear(),W.reduce((H,Y)=>{const se=Y[d.value]!==void 0?Y[d.value]:"";if(se&&q.has(se)){const me=q.get(se),ue=isNaN(Number(me.__fv_layer__))?1:Number(me.__fv_layer__);Y.__fv_layer__=ue+1,Y.__fv_parent_index__=me.__fv_index__,me.__fv_hasChildren__=!0}else Y.__fv_layer__=1;const pe=H.has(se)?H.get(se):[];return pe.push(Y),H.set(se,pe),H},c)}function S(W){f.clear(),W.reduce((q,H)=>{const Y=H[a.value];return q.set(Y,H),q},f)}function T(W){W.forEach(q=>{const H=q[a.value];q.__fv_children_index__.map(se=>W[se]).forEach(se=>{se.__fv_parents__=new Map([...q.__fv_parents__.entries(),[H,!0]])})})}function x(W){W.forEach(q=>{const H=new Set(q.__fv_children_index__);q.__fv_children_index__=[...H].sort((Y,se)=>Y-se)})}function w(W){W.forEach(q=>{const H=q.__fv_parents__;Array.from(H.keys()).map(Y=>f.get(Y)).forEach(Y=>{Y.__fv_children_index__.push(q.__fv_index__)})}),x(W)}function M(W){W.forEach(q=>{q.__fv_child_with_lines__=[],q.__fv_child_length__=q.__fv_descendant_index__.length,q.__fv_descendant_index__.map(H=>W[H]).reduce((H,Y)=>(H.__fv_child_length__+=Y.__fv_children_index__.length,H.__fv_child_with_lines__.push(...Y.__fv_children_index__,Y.__fv_index__),H),q)})}function y(W,q){return{id:W,index:q,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function b(W,q,H){Array.from(q.keys()).forEach(Y=>{q.get(Y).reduce((pe,me)=>{const ue=me[a.value],xe=W.get(me[a.value]),Pe=W.get(Y),he=H.get(Y);return Pe&&he&&(Pe.children.set(ue,xe),Pe.children.set(ue,xe),xe.parentId=Y,xe.parentIndex=Pe.index,xe.parents.set(Y,Pe)),pe},W)})}function g(W){W.children.forEach(H=>{H.parents=new Map([...W.parents.entries(),[W.id,W]]),g(H)})}function C(W,q){W.filter(H=>H[d.value]===void 0||H[d.value]==="").forEach(H=>{const Y=H[a.value],se=q.get(Y);g(se)})}function E(W){Array.from(W.values()).forEach(q=>{Array.from(q.parents.values()).forEach(H=>{H.descendant.set(q.id,q)})})}function O(W){m.clear(),W.forEach((q,H)=>{const Y=q[a.value];m.set(Y,y(Y,H))}),S(W),v(W,f),b(m,c,f),C(W,m),E(m)}function V(W){const q=W[a.value],H=m.get(q);return H&&H.children.size>0}function B(W){return W[u.value]&&!V(W)}function R(W){const q=W[a.value],H=m.get(q);return H&&H.visibleInHierarchy}function I(){r.value=Date.now()}function F(W,q){q.forEach(H=>{const Y=m.get(H[a.value]),se=m.get(W),pe=f.get(W);se&&pe&&(Y.visibleInHierarchy=!pe[s.value]&&se.visibleInHierarchy)}),I()}function _(W){if(c.has(W)){const H=c.get(W);F(W,H),H.map(Y=>Y[a.value]).forEach(Y=>_(Y))}}function $(W){const q=W[a.value];_(q)}function P(W,q,H=0){W.forEach(Y=>{const se=B(Y),pe=Y.__fv_layer__<=H,me=q==="ToCollapse"?Y.__fv_layer__<=H:!(Y.__fv_layer__<=H),ue=pe?me:Y[s.value];Y[s.value]=se||ue});for(const[Y,se]of c.entries())F(Y,se);return W}function A(W,q){P(W,"ToCollapse",q)}function j(W,q){P(W,"ToExpand",q)}function N(W){W.forEach((q,H)=>{var me;const Y=q[a.value],se=c.has(Y)?(me=c.get(Y))==null?void 0:me.map(ue=>ue.__fv_index__):[],pe=y(Y,H);q.__fv_graph_node__=pe,q.__fv_children_index__=se,q.__fv_descendant_index__=[...se],q.__fv_parents__=new Map,B(q)&&(q[s.value]=!0)})}function D(W){var Y,se;O(e.value),N(W),T(W),w(W),n.showLines&&M(W);const H=((Y=n.hierarchy)==null?void 0:Y.collapseTo)!==void 0?Number((se=n.hierarchy)==null?void 0:se.collapseTo):0;return P(W,"ToCollapse",H),W}function J(W,q,H){const se=H.value[W][a.value],pe=m.get(se);if(pe){const me=m.get(pe.parentId);let ue=H.value.length-1;if(me){const xe=Array.from(me.children.keys()).indexOf(pe.id);if(xe===me.children.size-1){const he=Array.from(me.descendant.values())[me.descendant.size-1];ue=H.value.findIndex(G=>G[a.value]===he.id)+1}else{const he=Array.from(me.children.values())[xe+1];ue=H.value.findIndex(G=>G[a.value]===he.id)}q[u.value]=!1,q[d.value]=me.id,H.value.splice(ue,0,q)}}}function ne(W,q,H){const Y=H.value[W],se=Y[a.value];if(m.get(se)){const ue=H.value.findIndex(xe=>xe[a.value]===se)+1;Y[u.value]=!0,Y[s.value]=!1,q[u.value]=!1,q[d.value]=se,H.value.splice(ue,0,q)}}function X(W,q,H){const se=H.value[W][a.value];if(m.get(se)){const ue=H.value.findIndex(Pe=>Pe[a.value]===se)+1;let xe=q;h(q)&&(xe=p(q)),xe.forEach(Pe=>{Pe[d.value]=se}),H.value.splice(ue,0,...xe)}}function ie(W,q){const H=W[a.value],Y=m.get(H),se=Array.from(Y.descendant.keys());se.unshift(H);const pe=m.get(Y.parentId);if(pe&&(pe.children.delete(H),pe.children.size===0)){const ue=q.find(xe=>xe[a.value]===Y.parentId);ue[u.value]=!1,ue[s.value]=!1}return q.filter(ue=>se.indexOf(ue.id)===-1)}return{checkVisibleInHierarchy:r,collapseTo:A,expandTo:j,generateHierarchyData:D,hasRealChildren:V,insertSibling:J,insertChild:ne,insertChildren:X,isVisibleInTree:R,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:$,trimmedOriginalData:ie}}const Co={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}},wo={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Gt=i.defineComponent({name:"Toast",props:wo,emits:["close","click"],setup:(n,e)=>{const{locale:t,t:o}=ut.useI18n(),r=i.ref(n.animate),l="fadeOut",a=i.computed(()=>n.options),s=i.ref(!1),u=i.computed(()=>a.value.title&&a.value.message),d=i.computed(()=>!a.value.title&&a.value.message),m=i.computed(()=>{const M={animated:s.value,toast:!0,"toast--only-content":!u.value};return M[n.animate]=!1,M[l]=s.value,M["toasty-type-"+a.value.type]=!0,a.value.theme&&(M[a.value.theme]=!0),M}),c=i.computed(()=>{const b=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,g={"f-icon":!0};return g[b]=!0,g}),f=i.computed(()=>a.value.title||a.value.message),p=i.computed(()=>n.showCloseButton),h=i.computed(()=>!!a.value.buttons||!!e.slots.default),v=i.computed(()=>t.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function S(M){M.stopPropagation(),M.preventDefault(),s.value=!1,setTimeout(()=>{e.emit("close",a.value)},200)}function T(M,y){}function x(M){return`f-preten-link ${M.customClass?M.customClass:""}`}i.watch(r,()=>{r.value});const w=()=>{var M;return i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((M=a.value.buttons)==null?void 0:M.map(y=>i.createVNode("span",{class:x(y),onClick:b=>void 0},[y.text]))),e.slots.default&&e.slots.default()])])};return()=>i.createVNode("div",{class:m.value,style:"min-height:44px"},[p.value&&i.createVNode("button",{title:o("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:S},[i.createVNode("span",{class:"f-icon modal_close"},null)]),f.value&&i.createVNode("section",{class:"modal-tips"},[!u.value&&i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:c.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[u.value&&i.createVNode(i.Fragment,null,[i.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),i.createVNode("p",{class:"toast-msg",innerHTML:a.value.message,style:v.value},null),h.value&&w()]),d.value&&(a.value.buttons?i.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:v.value,innerHTML:a.value.message},null),i.createVNode("div",{class:"after-toast-title text-right ml-auto"},[w()])]):i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:v.value,innerHTML:a.value.message},null))])])])}}),At=i.defineComponent({name:"Notify",props:Co,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(),l=i.ref(n.options),a=i.ref(n.showCloseButton),s=i.computed(()=>n.position||"bottom-right"),u=i.computed(()=>n.timeout!=null?n.timeout:3e3),d=i.computed(()=>{const f=n.bottom?n.bottom:o.bottom,p=n.top?n.top:o.top,h={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?`${p}px`:"",bottom:s.value.indexOf("bottom")>-1?`${f}px`:""};return s.value.indexOf("center")>-1&&(h.left="50%",h.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(h.top="50%",h.transform="translate(-50%, -50%)")),h});function m(f){e.emit("close")}u.value&&setTimeout(()=>{m()},u.value),e.expose({closeToast:m,container:r,notifyPosition:s});function c(f,p){m()}return()=>i.createVNode("div",{class:t.value,style:d.value,ref:r},[i.createVNode(Gt,{options:l.value,showCloseButton:a.value,animate:n.animate,onClose:f=>c(f,l.value)},null)])}});class an{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(/\\n/g,"<br>").replace(/\\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/\\r/g,"")}createNotifyInstance(e){const t=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...e}),l=document.createElement("div");l.style.display="contents";const a=i.createApp({setup(){var d;const s=i.ref();function u(){s.value.container.style.transform="scale(0)",setTimeout(()=>{t.updateNotifyPositionForClose(r,s),a.unmount()},220)}if(r.position.indexOf("top")>-1){const m=t.getNotifyInstances(r.position),c=m[m.length-1];if(c){const f=c.value.container.getBoundingClientRect();r.top=f.bottom}}return r.safeHtml&&((d=r.options)!=null&&d.message)&&(r.options.message=t.escapeAllHtml(r.options.message)),i.onUnmounted(()=>{document.body.removeChild(l)}),i.onMounted(()=>{t.updateNotifyPositionForCreate(r,s)}),()=>i.createVNode(i.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[i.createVNode(At,i.mergeProps({ref:s},r,{onClose:u}),null)]})}});return a.provide("NotifyService",this),document.body.appendChild(l),a.use(Rt.LocaleService.i18n),a.mount(l),a}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 l=r.value.container.getBoundingClientRect();r.value.container.style.bottom=l.height+o-l.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),l=r.indexOf(t);r.slice(l+1).forEach(a=>{a.value.container.style.top=a.value.container.offsetTop-a.value.container.offsetHeight+"px"})}o>-1&&this.notifyRefs.splice(o,1)}show(e){return this.createNotifyInstance(e)}buildNotifyProps(e,t){let o="",r="",l,a,s;typeof t=="string"?o=t:t&&(o=t.message||"",r=t.title||"",a=t.position||null,s=t.showCloseButton!=null?t.showCloseButton:null,l=t.timeout!=null?t.timeout:null);const d={options:{type:e,message:o,title:r}};return a!=null&&(d.position=a),s!=null&&(d.showCloseButton=s),l!=null&&(d.timeout=l),d}info(e){const 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 So=Symbol("NOTIFY_SERVICE_TOKEN");At.install=n=>{n.component(At.name,At),n.component(Gt.name,Gt);const e=new an;n.provide(So,e),n.provide("FNotifyService",e)};function xo(n,e,t,o,r){const{toNumber:l}=ee.useNumberFormat(),a=new Map,s=new Map,u=new Map,d=new Map,m=new Map,c=i.ref([]),f=i.ref([]),p=vo(n,r),{generateGroupData:h,groupFields:v,shouldGroupingData:S}=p,T=i.ref(n.data||[]),x=bo(n,T,o,r),{collapseTo:w,expandTo:M,generateHierarchyData:y,hasRealChildren:b,insertSibling:g,insertChild:C,insertChildren:E,isVisibleInTree:O,shouldStratifyData:V,toggleChildrenVisibiltyByCollapseStatus:B,trimmedOriginalData:R,checkVisibleInHierarchy:I}=x,{idField:F,reviseIdentifyField:_}=r,$=i.ref(n.newDataItem),P=i.ref(n.data||[]),A=i.ref(n.data),{flatTreeData:j,isNestedTree:N}=rn(n);if(n.hierarchy&&N(n.data)){const k=j(n.data);T.value=k,P.value=k,A.value=k}const D=i.ref(n.summary),J=i.computed(()=>{const k=D.value;return(k==null?void 0:k.groupFields)||[]});let ne=new Map;const X=i.ref(P.value.length),ie=i.ref(n.pagination);function W(){return ie.value&&ie.value.enable&&ie.value.size>0?ie.value.size:P.value.length}const q=i.ref(1),H=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode!=="server"),Y=i.computed(()=>ie.value&&ie.value.enable&&ie.value.mode==="server"),se=new an;function pe(k,L){const z=Math.ceil(k.length/L);let Q=0;const de=[],ye=[],Be=[];for(;Q<z;){const ke=k.slice(Q*L,(Q+1)*L),Ce=h(v.value,ke,e);ye[Q]=Ce.filter(Te=>Te.__fv_data_grid_group_row__).length,de.push(...Ce),Q++}return ye.reduce((ke,Ce,Te)=>(ke=ke+Ce,Be.push(ke),ke),0),{groupData:de,groupRowSizeList:ye,accumulateGroupRowSize:Be}}function me(){var Ce;P.value=T.value,H.value&&(X.value=P.value.length),S.value&&!H.value&&(P.value=h(v.value,T.value,e)),ne=J.value.reduce((Te,we)=>(Te.set(we,0),Te),ne);const k=0,L=W(),z=(q.value-1)*L;let de=z>P.value.length-1||Y.value?k:z,ye=Y.value?P.value.length:Math.min(de+L,P.value.length);if(S.value&&H.value){const{accumulateGroupRowSize:Te,groupData:we,groupRowSizeList:Me}=pe(T.value,L);P.value=we;const Re=Me[q.value-1];de+=q.value-2<0?0:Te[q.value-2],ye=de+L+Re}let Be=0;const ke=[];if(P.value.length){_(P.value);const Te=F.value!==n.idField;for(let we=de;we<ye;we++){const Me=P.value[we];Me.__fv_data_grid_group_row__?(Be=0,Me.__fv_data_index__=""):Me.__fv_data_grid_group_summary__?Me.__fv_data_index__="":(Be++,Me.__fv_data_index__=Be+(q.value-1)*L),Me.__fv_index__=we,Me.__fv_visible_index__=we,n.rowOption&&n.rowOption.disabledField&&(Me.__fv_disabled__=Me[(Ce=n.rowOption)==null?void 0:Ce.disabledField]),Te&&(Me[F.value]=we),J.value.forEach(Re=>{const Ae=ne.get(Re)||0;ne.set(Re,Ae+ee.resolveField(Me,Re))}),ke.push(Me)}}return V.value&&y(ke),J.value.forEach(Te=>{const we=ne.get(Te)||0;ne.set(Te,l(we.toFixed(2)))}),A.value=[...ke],ke}const ue=i.ref(me()),xe=i.computed(()=>(I.value,ue.value.filter(k=>V.value?k.__fv_visible__!==!1&&O(k):k.__fv_visible__!==!1)));function Pe(){xe.value.forEach((k,L)=>(k.__fv_visible_index__=L,k))}function he(k,L,z=!1){var ke;const Q=z?me():[...A.value];let de=Q;((ke=n.filter)==null?void 0:ke.mode)!=="server"&&(de=Q.filter(Ce=>t.apply(Ce)));const ye=k&&k.length?de.filter(Ce=>k.reduce((Te,we)=>Te&&we.filter(Ce),!0)):de,Be=L&&L.length?ye.sort((Ce,Te)=>{const we=[...L],Me=we.shift(),Re=ee.resolveField(Ce,Me.field)===void 0||ee.resolveField(Ce,Me.field)===null?"":ee.resolveField(Ce,Me.field),Ae=ee.resolveField(Te,Me.field)===void 0||ee.resolveField(Te,Me.field)===null?"":ee.resolveField(Te,Me.field);let mt=Me.compare(Re,Ae);for(;mt===0&&we.length!==0;){const Ze=we.shift();if(Ze){const kt=ee.resolveField(Ce,Ze.field)===void 0||ee.resolveField(Ce,Ze.field)===null?"":ee.resolveField(Ce,Ze.field),Kt=ee.resolveField(Te,Ze.field)===void 0||ee.resolveField(Te,Ze.field)===null?"":ee.resolveField(Te,Ze.field);mt=Ze.compare(kt,Kt)}}return mt}):ye;return ue.value=Be.map((Ce,Te)=>{if(Ce.__fv_data_grid_group_row__){const we=`group_of_${Ce.__fv_data_grid_group_field__}_${Ce.__fv_data_grid_group_value__}`;Ce.__fv_data_grid_group_collapse__=!!a.get(we)}return Ce.__fv_index__=Te,Ce.__fv_visible_index__=Te,Ce}),ue.value}function ze(k){return m.clear(),f.value=k,f.value.reduce((L,z)=>(L.set(z.field,z),L),m),he([],f.value)}function G(k,L){return m.set(k,L),f.value=Array.from(m.values()),he([],f.value)}function U(k){return m.delete(k),f.value=Array.from(m.values()),he([],f.value)}function K(k,L){return s.set(k,L),c.value=Array.from(s.values()),he([],Array.from(m.values()))}function Fe(k){return s.delete(k),c.value=Array.from(s.values()),he([],Array.from(m.values()),!0)}function Ee(){return s.clear(),c.value=[],he([],Array.from(m.values()),!0)}function $e(k,L,z){const Q=`group_of_${k}_${L}`;a.set(Q,!0);const de=ye=>ye[k]!==L;return u.set(`collapse_${k}_${L}`,{field:k,fieldName:k,fieldType:"string",filterValue:L,filter:de}),he(Array.from(u.values()),Array.from(m.values()))}function Je(k){w(ue.value,k)}function tt(k){M(ue.value,k)}function Qe(k,L,z){const Q=`group_of_${k}_${L}`;return a.set(Q,!1),u.delete(`collapse_${k}_${L}`),he(Array.from(u.values()),Array.from(m.values()),!0)}function Ue(k){const L=k.raw[F.value],z=Q=>!Q.__fv_parents__.has(L);d.set(`fold_${L}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(L),filter:z}),he(Array.from(d.values()),Array.from(m.values())),y(ue.value)}function Z(k){const L=k[F.value];d.delete(`fold_${L}`)}function ge(k){Z(k.raw),he(Array.from(d.values()),Array.from(m.values()),!0),y(ue.value)}function _e(){const k=me();ue.value=k,he(Array.from(d.values()),Array.from(m.values())),n.hierarchy&&y(ue.value)}function Oe(k){const z=n.hierarchy&&N(k)?j(k):k;T.value=z,_e()}function Ye(k,L,z){return(k&&k.length?ue.value.filter((de,ye)=>k.reduce((Be,ke)=>Be&&ke.filter(de),!0)):ue.value).slice(L,z)}function Mt(k){const L=W(),z=Math.ceil(X.value/L);0<=k&&k<=z&&(q.value=k,_e())}function bt(k){T.value.push(Ne.cloneDeep(k)),ue.value=me()}function _t(k=0){if(!(k>-1))return!1;const z=$.value();n.hierarchy?g(k,z,T):T.value.splice(k,0,z),_e()}function Et(k=0){if(!(k>-1&&n.hierarchy))return!1;const z=$.value(),Q=T.value[k];Z(Q),C(k,z,T),_e()}function Ct(k,L=0){if(!(L>-1&&n.hierarchy))return!1;const Q=T.value[L];Z(Q),E(L,k,T),_e()}function oe(k){const L=k?k-1:0;T.value.splice(L,1),_e()}function ae(k){const L=T.value.findIndex(z=>z[F.value]===k);L!==-1&&(T.value.splice(L,1),_e())}function fe(k){const L=k>-1?T.value[k]:null;if(!(L&&L.deletable!==!1))return!1;T.value=R(L,T.value),_e()}function Ie(){const k=u.size>0?Array.from(u.values()):[];return he(k,Array.from(m.values()))}function je(k){ie.value.size=k}function Xe(k){ie.value&&(je(k),_e())}function Ke(k,L){const z=T.value[Number(k)-1];z.editable!==!1?(z.name=L,_e()):se.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function ft(k){return k.map(z=>{const Q=A.value.findIndex(de=>""+de[F.value]==""+z);return Q>-1?A.value[Q]:null}).filter(z=>z!=null)}function it(){const k=n.summary.groupFields;ne=k.reduce((L,z)=>(L.set(z,0),L),ne);for(const L of P.value)k.forEach(z=>{const Q=ne.get(z)||0;ne.set(z,Q+ee.resolveField(L,z))});k.forEach(L=>{const z=ne.get(L)||0;ne.set(L,l(z.toFixed(2)))})}function rt(k){const L=n.summary.groupFields;ne=L.reduce((z,Q)=>(z.set(Q,0),z),ne);for(const z of k)L.forEach(Q=>{const de=ne.get(Q)||0;ne.set(Q,de+ee.resolveField(z.raw,Q))});L.forEach(z=>{const Q=ne.get(z)||0;ne.set(z,l(Q.toFixed(2)))})}return{addFilter:K,addNewDataItem:bt,addSorter:G,updatePageSize:je,changePageSizeTo:Xe,collapse:$e,collapseTo:Je,dataView:ue,editDataItem:Ke,expand:Qe,expandTo:tt,filters:c,fold:Ue,getRange:Ye,getSelectionItems:ft,hasRealChildren:b,insertNewChildDataItem:Et,insertNewChildDataItems:Ct,insertNewDataItem:_t,isVisibleInTree:O,load:Oe,navigatePageTo:Mt,pageIndex:q,rawView:A,refresh:Ie,removeAllFilter:Ee,removeDataItem:oe,removeDataItemById:ae,removeFilter:Fe,removeHierarchyDataItem:fe,removeSorter:U,reOrderVisibleIndex:Pe,setSorters:ze,sorters:f,summaries:ne,updateSummary:it,toggleChildrenVisibiltyByCollapseStatus:B,totalItems:X,unFold:ge,updateDataView:_e,visibleDataItems:xe,shouldGroupingData:S,pagination:ie,updateVisibleDataSummary:rt}}const Fo=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],To={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},Mo={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},_o={equal:(n,e,t)=>{if(n){const o=new Date(t).getTime();return new Date(n[e]).getTime()===o}return!1},notEqual:(n,e,t)=>{if(n){const o=new Date(t).getTime();return new Date(n[e]).getTime()!==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}},Eo={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},ko={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}},Vo=new Map([["boolean",Mo],["datetime",_o],["enum",Eo],["number",ko],["text",To]]);function Io(n,e){const t=i.ref([]),o=new Map,{loadConditionGroup:r}=Se.useCondition();function l(M,y){switch(M){case"check-box":return new Se.CheckBoxValue({value:y});case"combo-list":return new Se.ComboListValue({value:y});case"combo-lookup":return new Se.ComboLookupValue({value:y});case"input-group":return new Se.TextValue({value:y});case"date-picker":return new Se.DatePickerValue({value:y});case"date-range":return new Se.DateRangeValue({value:y});case"datetime-picker":return new Se.DateTimePickerValue({value:y});case"datetime-range":return new Se.DateRangeValue({value:y});case"lookup":return new Se.TextValue({value:y});case"month-picker":return new Se.MonthPickerValue({value:y});case"month-range":return new Se.MonthRangeValue({value:y});case"number-range":return new Se.NumberRangeValue({value:y});case"number-spinner":return new Se.NumberSpinnerValue({value:y});case"radio-group":return new Se.RadioGroupValue({value:y});default:return new Se.TextValue({value:y})}}const a=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),s=new Map([["boolean",Se.CompareType.Equal],["date",Se.CompareType.Equal],["datetime",Se.CompareType.Equal],["number",Se.CompareType.Equal],["string",Se.CompareType.Equal],["text",Se.CompareType.Equal],["enum",Se.CompareType.In],["reference",Se.CompareType.Equal]]);function u(){t.value.forEach((y,b)=>{b===t.value.length-1?y.relation=0:y.relation=1});const M=[];return t.value.forEach(y=>{const{valueType:b}=y.value,g=y.value.value;if(b==="boolean"){const C=[];g.length===1&&C.push({filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value[0],relation:t.value.length>1?y.relation||y.relation===0?y.relation:1:0,expresstype:Se.ValueType.Value,lbracket:y.lBracket||null,rbracket:y.rBracket||null}),g.length>1&&C.push({filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value[0],relation:2,expresstype:Se.ValueType.Value,lbracket:y.lBracket?y.lBracket+"(":"(",rbracket:y.rBracket||null},{filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value[1],relation:t.value.length>1?y.relation||y.relation===0?y.relation:1:0,expresstype:Se.ValueType.Value,lbracket:y.lBracket||null,rbracket:y.rBracket?y.rBracket+")":")"}),M.push(...C)}else M.push({filterField:y.fieldCode,compare:y.compareType||y.compareType===0?y.compareType:Se.CompareType.Like,value:y.value.value,relation:t.value.length>1?y.relation||y.relation===0?y.relation:1:0,expresstype:Se.ValueType.Value,lbracket:y.lBracket||null,rbracket:y.rBracket||null})}),M}function d(M){var b;const y=M.dataType||"string";return((b=M.editor)==null?void 0:b.type)||a.get(y)||"text"}function m(M){var I,F,_,$,P;const y=`field_filter_${M.field}`,b=Date.now(),g=M.field,C=((I=M.column)==null?void 0:I.title)||"",E=((F=M.column)==null?void 0:F.dataType)||"string",O=s.get(E)||Se.CompareType.Equal,V=(($=(_=M.column)==null?void 0:_.editor)==null?void 0:$.type)||a.get(E)||"text",B=l(V,(P=M.column)==null?void 0:P.filter),R=V==="lookup"||V==="combo-lookup"?Se.ValueType.SmartHelp:V==="combo-list"?Se.ValueType.Enum:Se.ValueType.Value;o.set(y,{id:y,fieldCode:g,fieldName:C,compareType:O,valueType:R,value:B,conditionId:b,relation:1}),t.value=Array.from(o.values())}function c(M){const y=`field_filter_${M.field}`;o.delete(y),t.value=Array.from(o.values())}function f(M){o.delete(M),t.value=Array.from(o.values())}function p(){o.clear(),t.value=[]}function h(M){const{valueType:y}=M.value,b=M.compareType||"0",g=Fo[Number(b)];return Vo.get(y)[g]}function v(M){const y=M.relation===2?0:1,b=M.items.map(C=>{const E=h(C);return V=>E(V,C.fieldCode,C.value.getValue())}),g=M.children&&M.children.length?M.children.map(C=>v(C)):[];return{relation:y,filterFunctions:b,children:g}}function S(){const M=r(t.value);return v(M)}function T(M,y){const b=y.filterFunctions.map(C=>C(M)),g=y.children.map(C=>T(M,C));return y.relation===1?b.every(C=>C)&&g.every(C=>C):b.includes(!0)||g.includes(!0)}function x(M){const y=S();return T(M,y)}function w(M){e.emit("filterChanged",M)}return{addColumnFilter:m,apply:x,clearCondition:p,conditions:t,getFilterEditorType:d,removeColumnFilter:c,removeCondition:f,filterFromServer:w,createFilterConditions:u}}function Po(n){i.ref(n.selection.showCheckbox||!1);const e=i.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),t=i.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),o=i.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.parentIdField)||"parent"}),r=i.computed(()=>n.hierarchy&&n.selection.showCheckbox),l=i.computed(()=>(n.treeNodeIconsData.fold||n.iconField)&&n.showTreeNodeIcons);return{collapseField:e,hasChildrenField:t,parentIdField:o,shouldShowCheckBox:r,shouldShowIcon:l}}function No(n,e,t,o,r,l,a,s,u){var Ct;const{dataView:d,visibleDataItems:m}=e,{getVisualData:c,maxVisibleRowIndex:f,minVisibleRowIndex:p}=r,h=i.computed(()=>o.value.primaryColumnsWidth),v=i.computed(()=>o.value.leftColumnsWidth),S=i.computed(()=>o.value.rightColumnsWidth),T=((Ct=n.rowOption)==null?void 0:Ct.height)||28,x=i.ref(0),w=i.ref(0);let M=0,y=l.value-1;const b=i.ref(0),g=i.ref(0),C=i.ref(0),E=i.ref(n.virtualized),O=24,V=1.5;let B=null;function R(){const oe=m.value;if(oe.length<=0)return 0;const ae=f.value<oe.length?oe[f.value]:oe[oe.length-1];return ae.__fv_data_position__>oe.length*T?oe.length*T:(ae.__fv_data_position__||0)+(ae.__fv_data_height__||0)+Math.max(oe.length-1-f.value,0)*T}const I=i.computed(()=>{const oe=R();m.value;let ae=g.value/Math.max(oe,g.value),fe=Math.floor(ae*g.value);for(;g.value>0&&fe<O;)ae*=V,fe=Math.floor(ae*g.value);return fe}),F=i.computed(()=>Math.floor(C.value/Math.max(h.value,C.value)*b.value)),_=0,$=0,P=i.computed(()=>b.value-(v.value+h.value+S.value+s.value));function A(oe){const fe=Math.floor(oe/T)+1,Ie=m.value;return Ie.length>fe?Ie[fe].__fv_visible_index__-1:0}function j(oe,ae,fe){let Ie=oe,je=ae;const Xe=ae-oe+1;if(Xe<a+l.value+a){const Ke=a+l.value+a-Xe,ft=ae+Ke<=fe,it=0+Ke<=oe;if(ft)je+=Ke,y=je;else if(it)Ie-=Ke,M=Ie;else{const rt=fe-ae,k=Ke-rt;je=Math.min(ae+rt,fe),Ie=Math.max(oe-k,0)}}return{actualStart:Ie,actualEnd:je}}function N(oe){var rt,k;const ae=m.value;if(!ae.length){t.value=[];return}const fe=(rt=n.pagination)!=null&&rt.enable?0:Math.max(M-a,0),Ie=ae[ae.length-1].__fv_visible_index__,je=(k=n.pagination)!=null&&k.enable?ae.length-1:Math.min(y+a,Ie),{actualStart:Xe,actualEnd:Ke}=j(fe,je,Ie),ft=ae[Xe-1],it=c(Xe,Ke,ft,oe);it.length&&(t.value=[...it])}const D=i.computed(()=>R()>g.value),J=i.computed(()=>Math.floor(h.value)>C.value);function ne(oe,ae){let fe=oe;const Ie=fe>_,je=D.value;je&&fe<g.value-ae&&(fe=g.value-ae),(!je||Ie)&&(fe=_),x.value!==fe&&(x.value=fe)}function X(){E.value&&(M=A(Math.abs(x.value)),y=M+l.value-1,(M<p.value||y>f.value-a/2)&&N())}function ie(oe){let ae=x.value+oe;ae>_&&(ae=_);const fe=R();ne(ae,fe),X()}function W(oe){if(!J.value){w.value=0;return}let ae=w.value+oe;ae>$&&(ae=$),ae<P.value&&(ae=P.value),w.value!==ae&&(w.value=ae)}function q(){Math.abs(w.value)+C.value>h.value&&(w.value=Math.min(C.value-h.value,0))}function H(){x.value=0,M=0,y=l.value-1,N()}function Y(){const oe=R();ne(x.value,oe)}i.watch([C,h],()=>{W(0)}),i.watch(g,(oe,ae)=>{oe!==ae&&oe>=d.value.length*T&&ie(0)});function se(oe){let{deltaX:ae}=oe,fe=-1*oe.deltaY;return typeof ae>"u"&&(ae=-1*oe.wheelDeltaX/6),typeof fe>"u"&&(fe=oe.wheelDeltaY/6),oe.deltaMode&&oe.deltaMode===1&&(ae*=10,fe*=10),oe.shiftKey?{deltaY:-fe,deltaX:-ae}:{deltaX:ae,deltaY:fe}}function pe(oe){if(n.disabled||!D.value||oe.target.tagName==="TEXTAREA")return;oe.preventDefault(),oe.stopPropagation();const{deltaX:ae,deltaY:fe}=se(oe);ie(fe),W(ae)}const me=i.computed(()=>({height:`${d.value.length*T}px`,width:`${v.value}px`,transform:`translateY(${x.value}px)`})),ue=i.computed(()=>({transform:`translateY(${x.value}px)`})),xe=i.computed(()=>({height:`${(n.autoHeight?m.value:d.value).length*T}px`,width:`${h.value}px`,transform:`translate(${w.value}px, ${x.value}px)`})),Pe=i.computed(()=>({transform:`translate(${w.value}px, ${x.value}px)`})),he=i.computed(()=>({height:`${d.value.length*T}px`,width:`${S.value}px`,transform:`translateY(${x.value}px)`})),ze=i.computed(()=>({transform:`translateY(${x.value}px)`})),G=i.computed(()=>({height:`${d.value.length*T}px`,width:`${s.value}px`,transform:`translateY(${x.value}px)`})),U=i.computed(()=>({width:`${v.value}px`})),K=i.computed(()=>({transform:`translateX(${w.value}px)`})),Fe=i.computed(()=>({width:`${S.value}px`})),Ee=i.computed(()=>{const oe=R();return ne(x.value,oe),x.value/(g.value-oe)*(g.value-I.value)}),$e=i.computed(()=>({width:"8px",height:`${I.value}px`,top:`${Ee.value}px`,backgroundColor:"#cccccc !important"})),Je=i.computed(()=>w.value/P.value*(b.value-F.value)),tt=i.computed(()=>({height:"8px",width:`${F.value}px`,left:`${Je.value}px`,backgroundColor:"#cccccc !important"})),Qe=i.ref(!1),Ue=i.ref(-1),Z=i.ref(-1),ge=i.ref();function _e(oe){if(Qe.value&&Z.value!==-1){const ae=Z.value-oe.pageX,fe=b.value-F.value;if(Math.abs(ae)<=fe){const Ie=ae/(C.value-F.value)*(h.value-C.value);W(Ie),Z.value=oe.pageX}}}function Oe(oe){if(Qe.value&&Ue.value!==-1){const ae=Ue.value-oe.pageY,fe=R(),Ie=fe-I.value;if(Math.abs(ae)<=Ie){const je=ae/(g.value-I.value)*(fe-g.value);ie(je),Ue.value=oe.pageY}}}function Ye(oe){Qe.value=!1,Ue.value=-1,Z.value=-1,document.removeEventListener("mouseup",Ye),B&&(document.removeEventListener("mousemove",B),B=null),document.body.style.userSelect="",ge.value&&(ge.value.style.opacity=null)}function Mt(oe,ae,fe){var Xe;Qe.value=!0;const Ie=(Xe=oe.target)==null?void 0:Xe.parentElement;Ie&&(Ie.style.opacity="1",ge.value=Ie);const je=fe==="horizontal"?_e:Ne.throttle(Oe,50);B||(B=je),fe==="vertical"&&(Ue.value=oe.pageY),fe==="horizontal"&&(Z.value=oe.pageX),ae.value&&(ae.value,document.addEventListener("mousemove",B),document.addEventListener("mouseup",Ye),document.body.style.userSelect="none")}function bt(oe){const ae=d.value.length*T-g.value;let fe=oe*T;fe>=ae&&(fe=ae),ie(-fe-x.value)}function _t(){bt(d.value.length)}function Et(oe){ie(oe-x.value)}return{dataGridWidth:b,fitHorizontalScroll:q,gridDataStyle:xe,gridHeaderColumnsStyle:K,gridMergedDataStyle:Pe,gridSideStyle:G,horizontalScrollThumbStyle:tt,leftFixedGridDataStyle:me,leftFixedGridHeaderColumnsStyle:U,leftFixedGridMergedDataStyle:ue,offsetX:w,offsetY:x,onMouseDownScrollThumb:Mt,onWheel:pe,reCalculateVisualDataRows:N,resetScroll:H,rightFixedGridDataStyle:he,rightFixedGridHeaderColumnsStyle:Fe,rightFixedGridMergedDataStyle:ze,shouldShowHorizontalScrollbar:J,shouldShowVirticalScrollbar:D,updateVirticalScroll:Y,updateVisibleRowsOnLatestVisibleScope:X,verticalScrollThumbStyle:$e,viewPortWidth:C,viewPortHeight:g,scrollToBottom:_t,scrollToRowByIndex:bt,scrollTo:Et}}function Bo(n){var l;const{isUndefined:e}=ee.useCommonUtils(),t=((l=n.rowOption)==null?void 0:l.height)||28;function o(a,s){const u=a.pre;if(u){let d=u.__fv_data_position__,m=u.__fv_data_height__;(e(d)||n.virtualized&&n.hierarchy&&u.__fv_visible_index__*t!==d)&&(d=u.__fv_visible_index__*t),e(m)&&(m=t);const c=a.visible?d+m:u.__fv_data_position__;a.top=c,s.__fv_data_position__=c}else a.top=0,s.__fv_data_position__=0}function r(a,s,u){if(a&&!s.ref){s.ref=a;const d=s.parent;s.cellHeight!==a.offsetHeight&&(s.cellHeight=a.offsetHeight),s.cellHeight&&s.cellHeight>(d.height||0)&&(d.height=s.cellHeight,u.__fv_data_height__=d.height),o(d,u)}!a&&s.ref&&(s.ref=a)}return{updateRowPosition:o,updateVisualInfomation:r}}function Oo(){function n(e,t){var a,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 u=e.split(",");if(!t.data.filter(f=>u.includes(f[o])).length)return"";const m=(a=t.data)==null?void 0:a.reduce((f,p)=>(f[p[o]]=p,f),{});return u.map(f=>{var p;return(p=m[f])==null?void 0:p[r]}).join(",")||e}const l=(s=t.data)==null?void 0:s.find(u=>u[o]===e);return(l==null?void 0:l[r])||e||""}return{renderEnumColumn:n}}function jo(){function n(e,t){return e?t==null?void 0:t.trueText:t==null?void 0:t.falseText}return{renderText:n}}function Ro(){const{formatTo:n}=ee.useDateFormat();function e(o,r){if(o){let l="yyyy-MM-dd";if(typeof r=="string"?l=r:typeof r=="object"&&(l=r.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof r=="object"&&r.dateRange){const a=r.dateRangeDatesDelimiter||"~";let[s,u]=o.split(a);return s=n(s,l),u=n(u,l),s+a+u}return n(o,l)}return o}function t(o,r){const l=r.dateFormat||"yyyy-MM-dd";return n(o,l)}return{renderDateColumn:t,renderDateTimeColumn:e}}function $o(){const{formatTo:n}=ee.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 Ao(){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 Lo(){const{locale:n}=ut.useI18n();function e(t,o){return(t==null?void 0:t[n.value||"zh-CHS"])||""}return{renderMultilingualColumn:e}}function Ho(){const{renderText:n}=jo(),{renderEnumColumn:e}=Oo(),{renderNumberColumn:t}=$o(),{renderDateColumn:o,renderDateTimeColumn:r}=Ro(),{renderImageColumn:l}=Ao(),{renderMultilingualColumn:a}=Lo();function s(m){return typeof m=="boolean"?m.toString():m}function u(m,c,f){return c.customFormat?c.customFormat(m,f.raw):s(m)}function d(m,c,f){const{column:p}=m,h=ee.resolveField(c.raw,p.field),v=f.options||f;return f.type===st.NONE?s(h):f.type===st.CUSTOM?u(h,f,c):f.type===st.ENUM?e(h,v):f.type===st.NUMBER?t(h,v):f.type===st.BOOLEAN?n(h,v):f.type===st.DATE?o(h,v):f.type===st.DATE_TIME?r(h,f):f.type===st.IMAGE?l(h,v):f.type===st.MULTI_LINGUAL?a(h,v):s(h)}return{renderFormatColumn:d}}function Do(n,e,t){var T;const{isUndefined:o}=ee.useCommonUtils(),r=i.ref(n.mergeCell);(T=i.ref(n.rowOption).value)!=null&&T.wrapContent;const{updateVisualInfomation:a}=t,{renderCommandColumn:s}=po(n),{renderFormatColumn:u}=Ho();function d(x,w,M,y,b,g=1){const C={colSpan:g,rowSpan:1,index:M,field:x,data:ee.resolveField(y,x),editingData:ee.resolveField(y,x),parent:b,mode:w,align:"left",valign:"start",showEllipsis:!0,getEditor:E=>E.data,setRef:E=>a(E,C,y),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return C}function m(x,w,M){return x.getEditor=y=>e.getEditor(y,w,y.parent),x.setRef=y=>a(y,x,M),x.update=y=>{y!==void 0&&(x.editingData=y)},x.accept=()=>{ee.setFieldValue(x.editingData,M,w.field),x.data=ee.resolveField(M,w.field)},x.cancel=()=>{x.editingData=x.data},x.updateData=y=>{ee.setFieldValue(ee.resolveField(y,w.field),M,w.field),x.data=ee.resolveField(M,w.field),x.editingData=ee.resolveField(M,w.field)},x}function c(x,w){w.dataType==="commands"?x.formatter=(M,y)=>w.formatter?w.formatter(x,y):s(x,y):w.formatter&&(x.formatter=(M,y)=>typeof w.formatter=="function"?w.formatter(M,y):u(x,y,w.formatter))}function f(x,w,M){const y=w&&w.data[M];if(y&&y.data===x.data){const g=y&&y.spannedBy||y;g.rowSpan++,g.spanned=g.spanned||[],g.spanned.push(x),x.colSpan=0,x.rowSpan=0,x.spannedBy=g}}function p(x,w,M){r.value&&f(x,w,M.field)}function h(x,w){w.showEllipsis!==void 0&&(x.showEllipsis=w.showEllipsis),x.showTips=o(w.showTips)?!0:w.showTips,x.column=w,x.align=w.align||"left",x.valign=w.valign||"middle",x.mode=n.editable?He.editable:He.readonly}function v(x,w,M,y){h(x,w),m(x,w,y),c(x,w),p(x,M,w)}function S(x,w,M,y,b){const g=n.editable?He.editable:He.readonly,C=d(x.field,g,w,M,y);return v(C,x,b,M),C}return{createCellByColumn:S,createCellByField:d,updateCellByColumn:v}}function qo(n,e,t,o,r,l,a){var w,M;const s=i.ref(n.rowOption),u=((w=s.value)==null?void 0:w.height)||28,d=((M=s.value)==null?void 0:M.wrapContent)||!1,{idField:m}=r,{collapseField:c}=o,{updateRowPosition:f}=l,{createCellByColumn:p}=a,h=(y,b,g,C)=>{ee.setFieldValue(ee.resolveField(y,C),b,C),g.data[C].data=ee.resolveField(b,C),g.data[C].editingData=ee.resolveField(b,C)};function v(y,b,g,C,E,O){var J,ne,X;const{__fv_data_grid_group_field__:V,__fv_data_grid_group_value__:B,__fv_data_index__:R}=g,I=g.__fv_data_grid_group_layer__||(g.__fv_parents__?(J=g.__fv_parents__)==null?void 0:J.size:0)||0,F=typeof g.parent=="number"?Number(g.parent):-1,_=g.__fv_data_grid_group_collapse__||g[c.value],$=g.__fv_visible__===void 0?!0:g.__fv_visible__,P=g.__fv_checked__,A=g.__fv_indeterminate__,j=g.__fv_disabled__||g[((ne=n.rowOption)==null?void 0:ne.disabledField)||"disabled"],N=n.hierarchy&&e.isVisibleInTree(g),D={collapse:_,data:{},dataIndex:R,groupField:V,groupValue:B,layer:I,index:b,parentIndex:F,pre:C,top:O,type:y,raw:g,checked:P,disabled:j,indeterminate:A,setRef:ie=>{D.ref=ie},visible:$&&N||$&&!n.hierarchy,status:lt.initial,updateCell:(ie,W)=>{h(ie,g,D,W),e.updateSummary()},updateCells:(ie,W)=>{W.forEach(q=>{h(ie,g,D,q)})}};return C||(g.__fv_data_position__=0),d||(D.height=u,g.__fv_data_height__=D.height,f(D,g)),(X=s.value)!=null&&X.customRowStatus&&(s.value.customRowStatus(D),g.__fv_disabled__=D.disabled),D}function S(y,b,g,C,E,O){const V=v(St.data,E,b,g,C,O);return y.forEach((B,R)=>{V.data[B.field]=p(B,R,b,V,C)}),V}function T(y,b,g,C,E){return Object.assign(y,{index:b,dataIndex:g,top:C,pre:E})}function x(y,b,g,C,E,O){const V=y.__fv_data_index__,B=y[m.value],R=t.getEditingSnapshot(B);return R===null?S(O,y,b,g,C,E):T(R,C,V,E,b)}return{createEmptyRow:v,createNewRowFromDataItem:S,renderDataRow:x}}function Wo(n,e,t,o){const r=i.ref(n.summary),{idField:l}=e,{createCellByField:a}=t,{createEmptyRow:s}=o,u=i.computed(()=>{const f=r.value;return(f==null?void 0:f.groupFields)||[]}),d=i.computed(()=>{const f=r.value;return f&&f.enable&&f.groupFields&&f.groupFields.length>0});function m(f,p,h,v){if(d.value){const S=f.data[p];let T=S.colSpan;const x=u.value.reduce((w,M)=>(w.set(M,!0),w),new Map);v.reduce((w,M,y)=>{if(x.has(M.field)){const b=a(M.field,He.readonly,y,h,f);f.data[M.field]=b,T-1>y&&(T=y)}return w},f),S.colSpan=T}}function c(f,p,h,v,S,T,x){const w=f.__fv_data_grid_group_field__,M=s(St.group,v,f,p,h,S);return M.data[l.value]=a(l.value,He.readonly,-1,f,M,0),M.data[w]=a(w,He.readonly,1,f,M,T.length),m(M,w,f,T),M}return{renderGroupRow:c}}function zo(n,e,t,o){const{idField:r}=e,{createCellByField:l}=t,{createEmptyRow:a}=o;function s(u,d,m,c,f,p,h){const v=u.__fv_data_grid_group_field__,S=a(St.summary,c,u,d,m,f);return S.data[r.value]=l(r.value,He.readonly,-1,u,S),S.data[v]=l(v,He.readonly,1,u,S,p.length),S}return{renderSummaryRow:s}}function Go(n,e,t,o,r){var j;const{idField:l}=t,a=i.ref(n.editable),s=i.ref(n.editOption),u=i.ref(((j=n.rowOption)==null?void 0:j.wrapContent)||!1),{onClickRow:d,onClickRowExcludeDblclick:m}=o,c=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let f,p,h,v,S;function T(N){return p&&p.raw[l.value]===N?p:null}const x=i.reactive({});function w(N,D,J={}){N.mode=He.editing,f=N,p=D,h=ee.resolveField(D==null?void 0:D.raw,N.field),v=J;for(const ne in x)delete x[ne]}function M(N){N.accept(),N.mode=He.editable,f=null;const D={};p&&(Object.keys(p).forEach(J=>{D[J]=p==null?void 0:p[J]}),p=null),e.emit("endEditCell",{cell:N,row:D,newValue:ee.resolveField(D==null?void 0:D.raw,N.field),oldValue:h,column:v,editor:x})}function y(N){const D=Promise.resolve(!0);return N?D.then(()=>Ne.isUndefined(n.beforeEndEditCell)?!0:typeof n.beforeEndEditCell=="function"?n.beforeEndEditCell({cell:N,row:p,newValue:N.editingData,oldValue:h}):()=>!0).then(J=>(J&&(M(N),p&&(p=null)),J)):D}function b(N){if(S&&S!==N.target){S=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const J=N.target;if(!(J!=null&&J.closest(".popover"))){if(N instanceof MouseEvent||N.key!=="Enter"){const ne=J.closest(".fv-grid-cell");if(f&&f.ref&&f.ref===ne)return}y(f).then(ne=>{ne&&document.body.removeEventListener("click",b,!0)})}}function g(N,D,J){return Promise.resolve().then(()=>{var X;const ne=(X=J.editor)==null?void 0:X.readonly;return!Ne.isUndefined(n.beforeEditCell)&&typeof n.beforeEditCell=="function"?n.beforeEditCell({row:N,cell:D,rawData:N.raw,column:J}):!ne}).then(ne=>{ne&&(w(D,N,J),document.body.removeEventListener("click",b,!0),document.body.addEventListener("click",b,!0))})}function C(N,D,J,ne={}){N.stopPropagation(),m(N,J),a.value&&s.value.editMode==="cell"&&D.mode===He.editable&&y(f).then(()=>{f||g(J,D,ne)})}function E(N,D,J,ne={}){N.stopPropagation(),d(N,J),a.value&&s.value.editMode==="cell"&&D.mode===He.editable&&y(f).then(()=>{f||g(J,D,ne)})}function O(N){N.stopPropagation(),S=N.target}function V(N){N.stopPropagation(),S&&(S=null)}function B(N){Object.values(N.data).filter(D=>D.mode===He.editable&&D.field!=="__commands__").forEach(D=>{D.mode=He.editing}),N.status=lt.editing,p=N}function R(N,D){Object.values(N.data).filter(J=>J.mode===He.editing).forEach(J=>{D?J.accept():J.cancel(),J.mode=He.editable}),N.status=lt.initial,p===N&&(p=null)}function I(N){a.value&&s.value.editMode==="row"&&p!==N&&(p&&R(p,!1),B(N))}function F(N){R(N,!0),N.status=lt.initial}function _(N){R(N,!1),N.status=lt.initial}function $(N,D,J){const ne=D.dataType,X=D.editor||{type:c.get(ne)||"input-group"};return!u.value&&X.type==="text"&&(X.type="input-group"),X?(X.type==="input-group"&&(X.textAlign=D.align!=="center"&&D.align!=="right"?"left":D.align,X.updateOn="change"),X.type==="number-spinner"&&(X.updateOn="change"),X.type==="textarea"&&(X.lineBreak="alt enter"),X.context={rowData:J.raw,column:D,cell:N,editor:x},X.readonly=!1,i.createVNode(eo.FDynamicFormInput,{focusOnCreated:n.focusOnEditingCell,selectOnCreated:n.selectOnEditingCell,editor:X,modelValue:N.editingData,"onUpdate:modelValue":ie=>N.editingData=ie,id:D.id,onMousedown:ie=>O(ie),onMouseup:ie=>V(ie)},null)):N.data}function P(){y(f)}i.watch(()=>n.editable,()=>{a.value=n.editable}),i.watch(()=>{var N;return(N=n.editOption)==null?void 0:N.editMode},N=>{s.value.editMode=N});function A(){f=null,p=null,v=null,S=null,document.body.removeEventListener("click",b,!0)}return{clear:A,onClickOutOfCell:b,onClickCell:E,onClickCellByKeyboard:C,onEditingRow:I,acceptEditingRow:F,cancelEditingRow:_,getEditingSnapshot:T,getEditor:$,endEditCell:P,onMousedownCell:O,onMouseupCell:V}}function Uo(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 Yo(n,e,t,o){const{idField:r}=o,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:s,selectItem:u,selectedValues:d,toggleSelectItem:m,updateSelectAllStatus:c,enableSelectRow:f,multiSelectMode:p,isSingleSelect:h,getSelectedItems:v}=t,S=i.ref(0),T=i.ref(-1);function x(_){l.value=_}function w(_){return _.raw[r.value]===l.value}function M(_,$){var j;const P=$??_.dataIndex,A={"fv-grid-row":_.type===St.data,"fv-grid-group-row":_.type===St.group,"fv-grid-summary-row":_.type===St.summary,"fv-grid-row-hover":P===T.value,"fv-grid-row-selected":w(_),"fv-grid-row-odd":P%2>0,"fv-grid-row-even":P%2===0,"fv-grid-disabled":_.disabled};if((j=n.rowOption)!=null&&j.customRowStyle){const N=n.rowOption.customRowStyle(_.raw)||{};return Object.assign({},A,N.class||{})}return A}function y(_,$){var A;const P={"fv-grid-cell":!0};if((A=n.rowOption)!=null&&A.customCellStyle){const j=n.rowOption.customCellStyle(_,$)||{};return Object.assign({},P,j.class||{})}return P}function b(_,$){var A;const P={"fv-grid-hierarchy-cell":!0};if((A=n.rowOption)!=null&&A.customCellStyle){const j=n.rowOption.customCellStyle(_,$)||{};return Object.assign({},P,j.class||{})}return P}function g(_){const $=l.value,P=_.raw[r.value];x(P),$!==P&&e.emit("selectionChange",[_.raw],{id:P,data:_.raw})}function C(_,$){var j,N;if(s.value&&!($!=null&&$.shiftKey)||h.value){(j=n.selection)!=null&&j.keepSelectingOnClick?u(_):m(_,(N=n.selection)==null?void 0:N.keepSelectingOnClick),c();return}if(s.value&&($==null?void 0:$.shiftKey)||a.value){m(_),c();return}}function E(_,$){$.disabled||(e.emit("clickRow",$.index,$.raw),g($),C($,_))}function O(_){S.value+=1,setTimeout(()=>{S.value===1&&e.emit("clickRow",_.index,_.raw),S.value=0},250),S.value>1&&(e.emit("doubleClickRow",_.index,_.raw),S.value=0)}function V(_,$){$.disabled||(O($),g($),C($,_))}function B(_){_.disabled||O(_)}function R(_,$){}function I(_,$){}function F(_,$){var j;const P=$??_.dataIndex,A={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":P===T.value,"fv-grid-sidebar-row-selected":w(_),"fv-grid-sidebar-row-odd":P%2>0,"fv-grid-sidebar-row-even":P%2===0,"d-flex":!0,"align-items-center":!0};if((j=n.rowOption)!=null&&j.customRowStyle){const N=n.rowOption.customRowStyle(_.raw)||{};return Object.assign({},A,N.class||{})}return A}return{activeRowById:x,clickRowItem:B,selectRow:C,changeRow:g,gridCellClass:y,gridHierarchyCellClass:b,gridRowClass:M,onClickRow:V,onClickRowExcludeDblclick:E,onMouseoverRow:R,sidebarRowClass:F,onMouseoutRow:I}}function Xo(n,e,t,o,r){const{idField:l}=t,{dataView:a,getSelectionItems:s}=e,u=i.ref(""),d=i.computed(()=>n.selection.enableSelectRow),m=i.ref(n.selection.multiSelect??!1),c=i.ref(n.selection.multiSelectMode||"DependOnCheck"),f=i.ref(n.selection.showCheckbox),p=i.ref(n.selection.showSelectAll),h=i.ref(n.selectionValues||[]),v=i.computed(()=>n.selection.showSelection),S=i.computed(()=>{var G;return((G=n.selection)==null?void 0:G.keepSelectingOnPaging)===void 0?!0:n.selection.keepSelectingOnPaging}),T=i.ref(!!h.value.length&&o.value.length===h.value.length),x=i.ref(!!h.value.length&&o.value.length!==h.value.length);i.watch(()=>n.selection.showSelectAll,(G,U)=>{G!==U&&(p.value=G)});function w(){if(!S.value){const G=a.value.map(U=>U[l.value]);h.value=h.value.filter(U=>G.includes(U))}}function M(){const G=a.value.every(K=>h.value.includes(K[l.value])),U=a.value.every(K=>!h.value.includes(K[l.value]));G&&(T.value=!0,x.value=!1),U&&(T.value=!1,x.value=!1),!G&&!U&&(T.value=!1,x.value=!0)}function y(){return s(h.value)}function b(){const G=o.value.reduce((K,Fe)=>(K.set(Fe.raw[l.value],Fe),K),new Map);return h.value.map(K=>G.get(K)).filter(K=>!!K)}function g(G){var K;const U=G.raw.__fv_children_index__;if(U&&U.length){const Fe=U.map(Ee=>a.value[Ee]);(K=h.value)!=null&&K.length&&Fe.some($e=>!h.value.includes($e[l.value]))&&(G.indeterminate=!0,G.raw.__fv_indeterminate__=!0)}}const C=i.computed(()=>d.value&&m.value),E=i.computed(()=>d.value&&!m.value&&!f.value),O=i.computed(()=>!!n.hierarchy),V=i.computed(()=>{const G=f.value&&c.value==="DependOnCheck";return C.value&&G}),B=i.computed(()=>C.value&&!f.value),R=i.computed(()=>C.value&&f.value&&c.value==="OnCheckAndClick");i.computed(()=>R.value);function I(){const G=s(h.value);r.emit("selectionUpdate",G,h.value)}function F(G){r.emit("unSelectItem",G)}function _(G){r.emit("selectItem",G)}function $(){const G=o.value.filter(K=>K.indeterminate).map(K=>K.raw[l.value]);o.value.forEach(K=>{K.checked=!1,K.indeterminate=!1,K.raw.__fv_checked__=!1,K.raw.__fv_indeterminate__=!1}),b().forEach(K=>{K.checked=!0,K.raw.__fv_checked__=!0}),G.forEach(K=>{const Fe=o.value.find(Ee=>Ee.raw[l.value]===K);g(Fe)})}i.watch(()=>o.value,()=>{$()}),i.watch(()=>n.selectionValues,G=>{h.value=G,$()},{immediate:!0}),i.watch(()=>n.selection,G=>{m.value=!!G.multiSelect,c.value=G.multiSelectMode||"DependOnCheck",f.value=!!G.showCheckbox});const P=i.computed(()=>!m.value);function A(G){return G.raw[l.value]}function j(G){return h.value.findIndex(K=>K===A(G))}function N(){b().forEach(K=>{K.checked=!1}),s(h.value).forEach(K=>{K.__fv_checked__=!1}),h.value=[],u.value="",M()}function D(G){const U=G;U.__fv_checked__=!0,U.__fv_indeterminate__=!1;const K=new Set(h.value);K.add(U[l.value]),h.value=Array.from(K.values()),w()}function J(G){const U=G;U.__fv_checked__=!1,U.__fv_indeterminate__=!1,h.value=h.value.filter(K=>K!==U[l.value]),w()}function ne(G){const U=G.raw;U.__fv_checked__=!0,U.__fv_indeterminate__=!1;const K=new Set(h.value);K.add(U[l.value]),h.value=Array.from(K.values()),w(),G.checked=!0,G.indeterminate=!1,I(),_(G)}function X(G){const U=G.raw;U.__fv_checked__=!1,U.__fv_indeterminate__=!1,h.value=h.value.filter(K=>K!==U[l.value]),w(),G.checked=!1,G.indeterminate=!1,I(),F(G)}function ie(G){ne(G),u.value=G.raw[l.value]}function W(G){X(G),u.value=""}function q(G){G.__fv_checked__=!1,G.__fv_indeterminate__=!0,h.value=h.value.filter(U=>U!==G[l.value]),w()}function H(G){const U=G.raw;U.__fv_checked__=!1,U.__fv_indeterminate__=!0,h.value=h.value.filter(K=>K!==U[l.value]),w(),G.checked=!1,G.indeterminate=!0}function Y(G){P.value&&N(),G.checked?X(G):ne(G)}function se(G,U=!0){const K=G.checked;P.value&&N(),U?G.checked?W(G):ie(G):K?W(G):ie(G)}function pe(G){G.raw[l.value]!==u.value&&(N(),ie(G))}function me(G){const U=o.value.find(K=>K.raw[l.value]===G);if(U)pe(U);else{const K=a.value.find(Fe=>Fe[l.value]===G);K&&D(K)}}function ue(G){const U=o.value.filter(Ee=>G.includes(Ee.raw[l.value])),K=U.map(Ee=>Ee.raw[l.value]),Fe=a.value.filter(Ee=>{const $e=Ee[l.value];return!K.includes($e)&&G.includes($e)});(U.length||Fe.length)&&E.value&&(u.value=G[0]),U.forEach(Ee=>{ie(Ee)}),Fe.forEach(Ee=>{D(Ee)})}function xe(G){for(const U of G){if(!h.value.includes(U))continue;const K=o.value.find(Fe=>Fe.raw[l.value]===U);if(K)W(K);else{const Fe=a.value.find(Ee=>Ee[l.value]===U);Fe&&J(Fe)}}h.value=h.value.filter(U=>!G.includes(U)),w()}function Pe(){o.value.forEach(G=>{const U=G.raw;U.__fv_checked__=!0,U.__fv_indeterminate__=!1;const K=new Set(h.value);K.add(U[l.value]),h.value=Array.from(K.values()),w(),G.checked=!0,G.indeterminate=!1}),I()}function he(){o.value.forEach(G=>{const U=G.raw;U.__fv_checked__=!1,U.__fv_indeterminate__=!1,h.value=h.value.filter(K=>K!==U[l.value]),w(),G.checked=!1,G.indeterminate=!1}),I()}function ze(){return o.value.find(G=>G.raw[l.value]===u.value)}return{clearSelection:N,currentSelectedDataId:u,enableMultiSelect:m,enableSelectRow:d,findIndexInSelectedItems:j,getSelectedItems:y,getSelectionRow:ze,indeterminate:H,indeterminateDataItem:q,isSelectingHirarchyItem:O,multiSelectMode:c,multiSelectOnClickRow:R,multiSelectOnClickRowWithShift:B,multiSelectOnlyOnCheck:V,select:ie,selectAll:Pe,selectedValues:h,selectDataItem:D,selectItem:pe,selectItemById:me,selectItemByIds:ue,showCheckBox:f,showSelectAll:p,toggleSelectItem:se,toggleSelectItemWithoutRow:Y,unSelect:W,unSelectAll:he,unSelectDataItem:J,unSelectItemByIds:xe,updateSelectAllStatus:M,selectAllStatus:T,indeterminateStatus:x,isSingleSelect:E,showSelection:v,keepSelectingOnPaging:S,emitSelectionChanged:I}}function Zo(n,e){var T,x;const{t}=ut.useI18n(),o=String(Date.now()),r=50,{showCheckBox:l,showSelectAll:a}=e,s=i.ref(((T=n.rowNumber)==null?void 0:T.enable)??!1),u=i.computed(()=>n.hierarchy&&l.value&&n.selection.enableSelectRow&&n.selection.multiSelect?!1:l.value),d=i.ref(s.value?((x=n.rowNumber)==null?void 0:x.width)??32:0),m=i.ref(u.value?r:0),c=i.computed(()=>{var w,M;return s.value?((w=n.rowNumber)==null?void 0:w.heading)==="序号"?t("datagrid.lineNumberTitle"):(M=n.rowNumber)==null?void 0:M.heading:""}),f=i.computed(()=>(u.value&&!n.hierarchy?Number(m.value):0)+(s.value?Number(d.value):0));i.watch(()=>n.rowNumber,w=>{w&&w.enable!==void 0&&(s.value=w.enable),w&&w.width!==void 0&&(d.value=w.width)});function p(w){var y;const M={top:`${w.top}px`,width:`${f.value}px`,height:`${w.height||""}px`};if((y=n.rowOption)!=null&&y.customRowStyle){const b=n.rowOption.customRowStyle(w.raw)||{};return Object.assign({},M,b.style||{})}return M}const h=i.computed(()=>({width:`${f.value}px`}));function v(w){return`${o}_${w.type}_r_${w.index}_${w.refreshKey||""}`}function S(w){return`${o}_${w.type}_r_${w.index}_${w.refreshKey||""}`}return{showRowNumer:s,showSidebarCheckBox:u,sidebarCellPosition:p,sidebarCornerCellStyle:h,sidebarTitle:c,sidebarWidth:f,rowKey:S,cellKey:v}}const Jo={ascend:(n,e)=>n===e?0:n===!1?-1:1,decend:(n,e)=>n===e?0:n===!0?-1:1},Qo={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}},Ko={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1},ei={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1};function ti(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",Jo],["datetime-sorter",Qo],["numeric-sorter",Ko],["text-sorter",ei]]);function o(a){const s=(a==null?void 0:a.dataType)||"string",u=e.get(s)||"text-sorter";return t.get(u)||(a==null?void 0:a.sorter)}function r(a){return o(a.column)}function l(a,s){const u=r(a),d=(a.status&We.sortable)===We.sortable&&(a.status&We.sorted)===We.sorted,m=(a.status&We.ascending)===We.ascending,c=(a.status&We.descending)===We.descending;if(d&&u){const f=m?u.ascend:c?u.decend:void 0;f?s.addSorter(a.field,{field:a.field,compare:f}):s.removeSorter(a.field)}else s.removeSorter(a.field)}return{getSorterByColumn:o,updateSorter:l}}const ni={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}},oi={},ii={},ri={id:{type:String}},ai=i.defineComponent({name:"FDesignerPlaceholder",props:ri,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("拖拽组件到这里")])}}),ht=i.ref(0);function li(n,e){const t=e.getBoundingClientRect(),o=n.getBoundingClientRect(),r=o.top>=t.top,l=o.top<=t.bottom;return r&&l}function si(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 l=t.left-r.width;const a=document.querySelector(".editorDiv");if(a){const s=a.getBoundingClientRect();l<s.left&&({left:l}=n.getBoundingClientRect())}o.style.left=l+"px"}}}function ci(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 ln(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=ci(n);if(r&&(o=li(n,r)),!o){t.style.display="none";return}si(n)}}function di(n){if(!n)return;let e;n.className.includes("dgComponentSelected")?e=n:e=n.querySelector(".dgComponentSelected"),e&&ln(e)}function ui(n){return typeof n=="function"||Object.prototype.toString.call(n)==="[object Object]"&&!i.isVNode(n)}const Ut=i.defineComponent({name:"FDesignerItem",props:ni,emits:["selectionChange","dragEnd"],setup(n,e){const t=i.ref(`${n.modelValue.id}-component`),o=i.ref(n.canMove),r=i.ref(n.canDelete),l=i.ref(!1),a=i.ref(n.modelValue),s=i.ref(n.componentId||""),u=i.ref(""),d=i.ref(""),m=i.ref(n.customClass),c=i.ref(),f=i.inject("canvas-dragula"),p=i.ref(),h=i.inject("design-item-context");function v(j){j&&Object.assign(a.value,j)}const S={designerItemElementRef:c,componentInstance:p,schema:a.value,parent:h,setupContext:e,updateContextSchema:v};i.provide("design-item-context",S);const T=i.inject("useFormSchema"),x=i.inject("designer-host-service"),w=i.inject("external-container-id"),M=i.computed(()=>{var J;const j=n.modelValue.appearance&&n.modelValue.appearance.class||"",N=((J=p.value)==null?void 0:J.getCustomButtons)&&p.value.getCustomButtons();let D={"farris-component":!0,"flex-fill":a.value.id==="root-component","position-relative":o.value&&r.value||(N==null?void 0:N.length),"farris-nested":l.value,"can-move":o.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return D[`farris-component-${a.value.type}`]=!0,D=ee.getCustomClass(D,j),D=ee.getCustomClass(D,d.value),D=ee.getCustomClass(D,m.value),D}),y=i.computed(()=>{const j={},N=n.modelValue.appearance&&n.modelValue.appearance.style||"";return N&&N.split(";").reduce((D,J)=>{const[ne,X]=J.split(":");return D[ne]=X,D},j),u.value&&u.value.split(";").reduce((D,J)=>{const[ne,X]=J.split(":");return ne&&(D[ne]=X),D},j),j});function b(j,N){var ne,X,ie;if(j&&(j.preventDefault(),j.stopPropagation()),(ne=x==null?void 0:x.designerContext)!=null&&ne.checkCanDeleteControl&&!x.designerContext.checkCanDeleteControl(N))return;if(p.value.triggerBelongedComponentToDeleteWhenDeleted){const W=p.value.getBelongedComponentInstance(p);if(W&&W.parent){const q=i.ref(W==null?void 0:W.parent),H=q.value.contents.findIndex(Y=>Y.id===W.schema.id);(ie=(X=q.value)==null?void 0:X.contents)==null||ie.splice(H,1),ht.value++}return}p.value.onRemoveComponent(x);let D=h,J=W=>W.id===N.id;if(N.type==="component"&&(D=h==null?void 0:h.parent,J=W=>W.component===N.id),D&&D.schema.contents){const W=D.schema.contents.findIndex(J);D.schema.contents.splice(W,1),ht.value++,e.emit("selectionChange")}}function g(j){return r.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:N=>{b(N,j)}},[i.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function C(){return o.value&&i.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[i.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function E(){var N;const j=((N=p.value)==null?void 0:N.getCustomButtons)&&p.value.getCustomButtons();return j&&!!j.length&&j.map(D=>i.createVNode("div",{role:"button",class:`btn component-settings-button ${D.class||""}`,title:D.title,ref:D.id,onClick:J=>D.onClick&&D.onClick(J)},[i.createVNode("i",{class:D.icon},null)]))}function O(j){return i.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[i.createVNode("div",null,[g(j),C(),E()])])}function V(j,N,D,J){e.emit("selectionChange",j,N,D,J)}function B(){e.emit("dragEnd")}function R(j){let N;const D=j.type,J=oi[D],ne=ii[D],X=ne?ne(j):{};X.customClass=n.ignore?X.customClass:"",X.componentId=s.value,X.id=j.id;const ie=j.contents&&j.contents.length===0;return j.contents&&!!j.contents.length&&J?i.createVNode(J,i.mergeProps({ref:p},X),ui(N=j.contents.map(q=>i.createVNode(Ut,{key:q.id,modelValue:q,"onUpdate:modelValue":H=>q=H,componentId:s.value,onSelectionChange:V,onDragEnd:B},null)))?N:{default:()=>[N]}):J?ie?i.createVNode(J,i.mergeProps({ref:p},X),{default:()=>[i.createVNode(ai,null,null)]}):i.createVNode(J,i.mergeProps({ref:p},X),null):i.createVNode("div",null,null)}function I(){const j=T.externalFormSchema.get(w);if(j!=null&&j.content)return j==null?void 0:j.content}function F(j){if(j.type==="component-ref"){const J=(w?I():T==null?void 0:T.getFormSchema()).module.components.find(X=>X.id===j.component),ne=i.ref(J);if(J)return i.createVNode(Ut,{key:J.id,modelValue:ne.value,"onUpdate:modelValue":X=>ne.value=X,componentId:J.id,onSelectionChange:V,onDragEnd:B},null)}}i.watch([()=>n.modelValue,()=>n.componentId],([j,N])=>{a.value=j,t.value=`${j.id}-component`,N&&(s.value=N),i.triggerRef(c)},{deep:!0});function _(j){window.scrollContainerList||(window.scrollContainerList=new Set);const N=j.getAttribute("id");N&&window.scrollContainerList.add(N)}function $(j){const N=j==null?void 0:j.target;_(N),di(N)}function P(){var j,N;if(c.value){(N=(j=a.value)==null?void 0:j.contents)!=null&&N.length&&c.value.addEventListener("scroll",$);const D=c.value.querySelector(".drag-container");D&&D.addEventListener("scroll",$)}}i.onMounted(()=>{if(c.value&&p.value&&p.value.schema){const j=c.value.querySelector(`[data-dragref='${p.value.schema.id}-container']`);f&&j&&f.attachComponents(j,a.value),l.value=p.value.canNested!==void 0?p.value.canNested:l.value,r.value=p.value.canDelete!==void 0?p.value.canDelete:r.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,u.value=p.value.styles||"",d.value=p.value.designerClass||"",c.value&&(c.value.componentInstance=p,c.value.designItemContext=S),p.value.belongedComponentId=s.value,p.value.setComponentBasicInfoMap(x)}P(),ht.value++}),i.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",$)});function A(j){if(j&&(j.preventDefault(),j.stopPropagation()),w){const J=document.getElementById(`${w}-design-item`);J&&J.click();return}let N=S.designerItemElementRef;const D=c.value;if(D){const J=document.getElementsByClassName("dgComponentFocused");J&&J.length===1&&J[0]===c.value||(Array.from(J).forEach(X=>X.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(X=>X.classList.remove("dgComponentSelected")),D.classList.add("dgComponentFocused"),e.emit("selectionChange",a.value.type,a.value,s.value,p.value),p.value.getDraggableDesignItemElement&&(N=p.value.getDraggableDesignItemElement(S),N&&N.value&&N.value.classList.add("dgComponentSelected")))}ln(N==null?void 0:N.value)}return()=>{const j=w?`${w}-`:"";return a.value.type==="component-ref"?F(a.value):i.createVNode("div",{id:`${j}${a.value.id}-design-item`,ref:c,class:M.value,style:y.value,onClick:A},[O(a.value),R(a.value)])}}});function sn(n,e,t,o,r="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:s}=t,{gridHeaderColumnsStyle:u,leftFixedGridHeaderColumnsStyle:d,rightFixedGridHeaderColumnsStyle:m}=o,c=l.value.defaultColumnWidth,f=32,p=new Map([[0,0]]);function h(O,V){const B=p.get(V)||0,R={height:`${O.depth*f}px`,left:`${O.left}px`,top:`${(O.layer-1)*f}px`,width:`${O.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(R["line-height"]=`${O.depth*f}px`),p.set(V+1,B+(O.actualWidth||c)),R}const v=i.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),S=i.computed(()=>({height:`${l.value.headerDepth*f}px`})),T=function(O){return e.showSetting&&!!O.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(O,V,B,R){var I;(I=n==null?void 0:n.setupContext)==null||I.emit("selectionChange",O,V,B,R)}function M(O){var B,R;return"w-100 d-flex align-items-center justify-content-"+(((B=O.column)==null?void 0:B.halign)==="center"?"center":((R=O.column)==null?void 0:R.halign)==="right"?"end pr-2":"start pl-2")}function y(O,V,B){var I;const R=i.ref(O.column);return i.createVNode("div",{class:"fv-grid-header-cell",style:h(O,B)},[i.createVNode(Ut,{modelValue:R.value,"onUpdate:modelValue":F=>R.value=F,customClass:M(O),canAdd:!1,canDelete:!1,canMove:!1,key:(I=R.value)==null?void 0:I.id,type:r,componentId:e.componentId,onSelectionChange:w},null),T(O)&&x(),O.resizable&&i.createVNode("span",{class:"fv-column-resize-bar"},null)])}function b(O){return O.map((V,B)=>{const R=[];if(R.push(y(V,O,B)),V.children&&V.children.length){const I=b(V.children);R.push(...I)}return R})}function g(){return i.createVNode("div",{class:"fv-grid-header-left-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:d.value},[b(l.value.leftHeaderColumns)])])}function C(){return i.createVNode("div",{class:"fv-grid-header-right-fixed"},[i.createVNode("div",{class:"fv-grid-header-columns",style:m.value},[b(l.value.rightHeaderColumns)])])}function E(){return i.createVNode("div",{class:v.value,style:S.value},[a.value&&g(),i.createVNode("div",{class:"fv-grid-header-primary"},[i.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[b(l.value.primaryHeaderColumns)])]),s.value&&C()])}return{renderGridHeader:E}}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:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}};function cn(n,e,t){var V;const o=t&&t.getStyles&&t.getStyles()||"",r=t&&t.getDesignerClass&&t.getDesignerClass()||"",l=i.ref();let a;function s(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function u(){return!1}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function m(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function c(B){if(!B||!B.value)return null;if(B.value.schema&&B.value.schema.type==="component")return B.value;const R=i.ref(B==null?void 0:B.value.parent),I=c(R);return I||null}function f(B=e){var _;if(t!=null&&t.getDraggableDesignItemElement)return t.getDraggableDesignItemElement(B);const{componentInstance:R,designerItemElementRef:I}=B;if(!R||!R.value)return null;const{getCustomButtons:F}=R.value;return R.value.canMove||F&&((_=F())!=null&&_.length)?I:f(B.parent)}function p(B){return!!t&&t.canAccepts(B)}function h(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function v(){}function S(B,R){var I;!B||!R||(t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(B,R),(I=e==null?void 0:e.setupContext)==null||I.emit("dragEnd"))}function T(B,R){const{componentType:I}=B;let F=pt.getSchemaByTypeForDesigner(I,B,R);t&&t.onResolveNewComponentSchema&&(F=t.onResolveNewComponentSchema(B,F));const _=I.toLowerCase().replace(/-/g,"_");return F&&!F.id&&F.type===I&&(F.id=`${_}_${Math.random().toString().slice(2,6)}`),F}function x(B){B&&t!=null&&t.onChildElementMovedOut&&t.onChildElementMovedOut(B)}function w(...B){if(t&&t.getPropsConfig)return t.getPropsConfig(...B)}function M(B){if(!B)return;const R=e==null?void 0:e.schema,{formSchemaUtils:I}=B;if(R&&I.getExpressions().length){const F=I.getExpressions().findIndex(_=>_.target===R.id);F>-1&&I.getExpressions().splice(F,1)}}function y(B){if(!B||!(e!=null&&e.schema))return;const R=e.schema,{formSchemaUtils:I}=B;I.removeCommunicationInComponent(R)}function b(B){t&&t.onRemoveComponent&&t.onRemoveComponent(),M(B),y(B),e!=null&&e.schema.contents&&e.schema.contents.map(R=>{let I=R.id;R.type==="component-ref"&&(I=R.component);const F=n.value.querySelectorAll(`#${I}-design-item`);F!=null&&F.length&&Array.from(F).map(_=>{var $;($=_==null?void 0:_.componentInstance)!=null&&$.value.onRemoveComponent&&_.componentInstance.value.onRemoveComponent(B)})})}function g(){if(t&&t.getCustomButtons)return t.getCustomButtons()}function C(B){var I,F;if(!((I=e==null?void 0:e.schema)!=null&&I.id))return;if(!a&&B&&(a=B.formSchemaUtils),t!=null&&t.setComponentBasicInfoMap){t.setComponentBasicInfoMap();return}let R="";if(t!=null&&t.getComponentTitle)R=t.getComponentTitle();else{const{text:_,title:$,label:P,mainTitle:A,name:j,type:N}=e.schema;R=_||$||P||A||j||((F=te[N])==null?void 0:F.name)}R&&a.getControlBasicInfoMap().set(e.schema.id,{componentTitle:R,parentPathName:R})}function E(B){var _;const{changeObject:R}=B,{propertyID:I,propertyValue:F}=R;if(["text","title","label","name","mainTitle"].includes((_=B==null?void 0:B.changeObject)==null?void 0:_.propertyID)&&I&&F&&(C(),a)){const $=a.getControlBasicInfoMap(),P=$.keys().toArray().filter(A=>{var j,N;return((j=$.get(A))==null?void 0:j.reliedComponentId)===((N=e==null?void 0:e.schema)==null?void 0:N.id)});P!=null&&P.length&&P.forEach(A=>{const j=$.get(A).parentPathName.split(" > ");j[0]=F,$.get(A).parentPathName=j.join(" > ")})}}function O(B){if(E(B),t&&t.onPropertyChanged)return t.onPropertyChanged(B)}return l.value={canMove:s(),canSelectParent:u(),canDelete:d(),canNested:!m(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(V=e==null?void 0:e.parent)==null?void 0:V.componentInstance,schema:e==null?void 0:e.schema,styles:o,designerClass:r,canAccepts:p,getBelongedComponentInstance:c,getDraggableDesignItemElement:f,getDraggingDisplayText:h,getPropConfig:w,getDragScopeElement:v,onAcceptMovedChildElement:S,onChildElementMovedOut:x,addNewChildComponentSchema:T,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||i.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||i.ref(!1),onRemoveComponent:b,getCustomButtons:g,onPropertyChanged:O,setComponentBasicInfoMap:C,updateContextSchema:e==null?void 0:e.updateContextSchema},l}class fi extends ot.BaseControlProperty{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=nt.useCommandOption().getCommandColumnProperties(e),this.propertyConfig.categories.column=nt.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=nt.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=nt.useSummary().getSummaryProperties(e),this.propertyConfig.categories.sort=nt.useSort().getSort(e),this.propertyConfig.categories.filter=nt.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,s,u;const t=(u=(s=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:s.entity[0])==null?void 0:u.entities[0],o=this.assembleSchemaEntityToTree(t,0),r=this,l=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...l.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:o,editable:!1},readonly:!0}},setPropertyRelates(d,m){switch(d&&d.propertyID){case"dataSource":{const c=r.formSchemaUtils.getViewModelById(r.viewModelId);if(c){const f=o.find(p=>p.label===d.propertyValue);c.bindTo=f.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,t,o,r="",l=[]){const a=r?`${r}/${e.label}`:"/";return l.push({id:e.id,name:e.name,label:e.label,layer:t,parent:o&&o.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(s=>this.assembleSchemaEntityToTree(s,t+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=nt.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=nt.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=nt.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=nt.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const t=[...nt.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"单元格结束编辑事件"}],o=this,r=o.eventsEditorUtils.formProperties(e,o.viewModelId,t),l=o.createBaseEventProperty(r);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const u=a.propertyValue;delete e[o.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,o.eventsEditorUtils.saveRelatedParameters(e,o.viewModelId,u.events,u)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function mi(n,e){const t=n.schema,o=i.ref(!0),r=i.ref(!0);function l(c){return c&&c.sourceType==="control"?c.componentCategory==="input":!1}function a(){return!1}function s(){return!1}function u(){return!0}function d(c){return new fi(c,e).getPropertyConfig(t)}function m(){var c,f,p,h;if(n&&e){const v=(c=n==null?void 0:n.componentInstance)==null?void 0:c.value.belongedComponentId;let S="",T="";const{formSchemaUtils:x}=e;if(v){const M=x.getRootViewModelId(),y=x.getComponentByViewModelId(M),b=x.selectNode(y,g=>g.contents&&g.contents.find(C=>C.component===v));(b==null?void 0:b.type)===((f=te["tab-page"])==null?void 0:f.type)&&((p=b==null?void 0:b.contents)!=null&&p.length)&&(S=b.title||""),(b==null?void 0:b.type)===((h=te.section)==null?void 0:h.type)&&(b==null?void 0:b.showHeader)!==!1&&(S=b.mainTitle||""),S=S?`${S} > `:"",T=S?b.id:""}const w=te["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(n.schema.id,{componentTitle:w,parentPathName:`${S}${w}`,reliedComponentId:T})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:d,setComponentBasicInfoMap:m}}const gt=i.defineComponent({name:"FDataGridDesign",props:io,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(n,e){var G;const t=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context"),l=mi(r,o),a=cn(t,r,l);a.value.styles="display:flex;flex:1;",i.onMounted(()=>{t.value.componentInstance=a}),i.provide("data-grid-context",{dataGridProps:n}),e.expose(a.value);const s=i.ref(n.columns),u=20,d=Uo(n),m=0,c=i.ref(),f=i.ref(),p=i.ref(n.showStripe),h=i.ref([]),v=i.ref(!1),S=i.ref(((G=n.rowOption)==null?void 0:G.wrapContent)||!1),T=Io(n,e),x=Po(n),w=xo(n,new Map,T,x,d),M=Xo(n,w,d,h,e),y=i.computed(()=>w.totalItems.value<u?w.totalItems.value:u),{containerStyleObject:b}=ho(n),g=go(n),{applyCommands:C}=g;C(s);const E=lo(n),O=ti(),{applyColumnSorter:V,columnContext:B,updateColumnRenderContext:R}=E;V(w,O);const I=yo(n,B),F=Yo(n,e,M,d),_=Go(n,e,d,F),$=Bo(n),P=Do(n,_,$),A=qo(n,w,_,x,d,$,P),j=Wo(n,d,P,A),N=zo(n,d,P,A),D=so(n,s,w,y,m,A,j,N),{getVisualData:J}=D,ne=Zo(n,M),{sidebarWidth:X}=ne;h.value=J(0,y.value+m-1);const ie=No(n,w,h,B,D,y,m,X),{onWheel:W,dataGridWidth:q,viewPortHeight:H,viewPortWidth:Y}=ie,se=ro(n,B,c,Y,I),{calculateColumnsSize:pe}=se,me=i.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":p.value})),ue=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":v.value,"fv-grid-wrap-content":S.value})),{renderGridHeader:xe}=sn(r,n,E,ie),{renderHorizontalScrollbar:Pe}=mo(n,c,ie);function he(){var U,K;H.value=((U=f.value)==null?void 0:U.clientHeight)||0,q.value=((K=c.value)==null?void 0:K.clientWidth)||0,pe()}i.onMounted(()=>{c.value&&(en.useResizeObserver(c.value,he),pe(),i.nextTick(()=>{c.value&&(q.value=c.value.clientWidth),f.value&&(Y.value=f.value.clientWidth,H.value=f.value.clientHeight)}))});function ze(U){U&&(s.value=U,C(s),R(s.value),V(w,O),pe())}return i.watch(()=>n.columns,U=>{ze(U),ht.value++}),i.watch(Y,()=>{c.value&&pe()}),()=>i.createVNode("div",{ref:t,class:me.value,style:b.value,onWheel:W},[xe(),i.createVNode("div",{ref:c,class:ue.value,onMouseover:()=>{v.value=!0},onMouseleave:()=>{v.value=!1}},[Pe()])])}}),pi={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClose:{type:Function,default:null},beforeClosePopup:{type:Function,default:null}},hi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},gi=i.defineComponent({name:"FOverlay",props:hi,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 l(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}i.computed(()=>{const s=o.value;if(s){const u=s.getBoundingClientRect(),{left:d,top:m,height:c}=u;return{left:d,top:m+c}}return t.value});const a=i.computed(()=>({}));return()=>i.createVNode(i.Teleport,{to:"body"},{default:()=>{var s,u;return[i.createVNode("div",{class:"overlay-container",onClick:d=>l(d),style:r.value},[i.createVNode("div",{style:a.value},[(u=(s=e.slots).default)==null?void 0:u.call(s)])])]}})}});function yi(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function vi(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 l=yi(n);return()=>i.createVNode(gi,{"popup-content-position":n.popupPosition,host:n.host,onClick:r,backgroundColor:n.backgroundColor},{default:()=>[l&&l()]})}}),document.body.appendChild(e),t.mount(e),t}class bi{static show(e){return vi(e)}}const Ci={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前事件",type:"object",default:null}},required:["id","type"],events:{onAccept:"确定事件",onCancel:"取消事件",beforeClose:"关闭前回调"}},wi=new Map([["appearance",pt.resolveAppearance]]);function Si(n,e,t){return e}function xi(){function n(e,t){const o={};return o.beforeClose=r=>t.call("beforeClose",[r,e]),o}return{resolve:n}}const dn={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"}},Fi=pt.createPropsResolver(dn,Ci,wi,Si),Ti=xi();class Le{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),l=parseInt(o[5],10);return{x:r,y:l}}return{x:0,y:0}}static fromEvent(e,t=null){if(this.isMouseEvent(e))return new Le(e.clientX,e.clientY);if(t===null||e.changedTouches.length===1)return new Le(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 Le(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 Le(0,0);if(window){const o=window.getComputedStyle(e);if(o){const r=parseInt(o.getPropertyValue("left"),10),l=parseInt(o.getPropertyValue("top"),10);t.x=isNaN(r)?0:r,t.y=isNaN(l)?0:l}return t}return null}static copy(e){return new Le(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 xt{constructor(e,t){this.width=e,this.height=t}static getCurrent(e){const t=new xt(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 xt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Mi(n,e){const t=i.ref(),o=i.ref(),r=i.ref(),l=i.ref(),a=i.ref(),s=i.ref(),u=i.ref(),d=i.ref(),m=i.ref(),c=i.ref(),f=i.ref(),p=i.ref(n.resizeable),h=i.ref(),v=i.ref(n.draggable),S=i.ref(!1);function T(){const P=o.value||document.body,A=window.getComputedStyle(P);if(!A||!t.value)return;const j=Le.getTransformInfo(t.value),N={};u.value&&(N.deltaL=t.value.offsetLeft-u.value.x,N.deltaT=t.value.offsetTop-u.value.y);const D=A.getPropertyValue("position");N.width=P.clientWidth,N.height=P.clientHeight,N.pr=parseInt(A.getPropertyValue("padding-right"),10),N.pb=parseInt(A.getPropertyValue("padding-bottom"),10),N.position=A.getPropertyValue("position"),D==="static"&&(P.style.position="relative"),N.translateX=j.x,N.translateY=j.y,c.value=N}function x(P){if(t.value){l.value=xt.getCurrent(t.value),a.value=Le.getCurrent(t.value),s.value=l.value?xt.copy(l.value):null,u.value=a.value?Le.copy(a.value):null,T();const A=P.target.getAttribute("type")||"";d.value={n:!!A.match(/n/),s:!!A.match(/s/),w:!!A.match(/w/),e:!!A.match(/e/)}}}function w(){var P,A,j,N;if(t.value){const D=t.value;d.value&&((d.value.n||d.value.s)&&((P=s.value)!=null&&P.height)&&(D.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((A=s.value)!=null&&A.width)&&(D.style.width=s.value.width+"px"),u.value&&((j=u.value)!=null&&j.x&&(D.style.left=u.value.x+"px"),(N=u.value)!=null&&N.y&&(D.style.top=u.value.y+"px")))}}function M(){const P=n.minHeight?n.minHeight:1,A=n.minWidth?n.minWidth:1;s.value&&u.value&&d.value&&l.value&&(s.value.height<P&&(s.value.height=P,d.value.n&&a.value&&(u.value.y=a.value.y+(l.value.height-P))),s.value.width<A&&(s.value.width=A,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-A))),n.maxHeight&&s.value.height>n.maxHeight&&(s.value.height=n.maxHeight,a.value&&d.value.n&&(u.value.y=a.value.y+(l.value.height-n.maxHeight))),n.maxWidth&&s.value.width>n.maxWidth&&(s.value.width=n.maxWidth,d.value.w&&a.value&&(u.value.x=a.value.x+(l.value.width-n.maxWidth))))}function y(){if(o.value){const P=c.value;if(u.value&&s.value&&d.value&&l.value){const A=P.width-P.pr-P.deltaL-P.translateX-u.value.x,j=P.height-P.pb-P.deltaT-P.translateY-u.value.y;d.value.n&&u.value.y+P.translateY<0&&a.value&&(u.value.y=-P.translateY,s.value.height=l.value.height+a.value.y+P.translateY),d.value.w&&u.value.x+P.translateX<0&&a.value&&(u.value.x=-P.translateX,s.value.width=l.value.width+a.value.x+P.translateX),s.value.width>A&&(s.value.width=A),s.value.height>j&&(s.value.height=j)}}}function b(P){if(!r.value||!l.value||!a.value||!d.value)return;P.subtract(r.value);const A=P.x,j=P.y;d.value.n?(u.value.y=a.value.y+j,s.value.height=l.value.height-j):d.value.s&&(s.value.height=l.value.height+j),d.value.e?s.value.width=l.value.width+A:d.value.w&&(s.value.width=l.value.width-A,u.value.x=a.value.x+A),y(),M(),w()}function g(P){if(!m.value)return;const A=Le.fromEvent(P);A&&b(A)}function C(){if(t.value){const{width:P,height:A,x:j,y:N}=t.value.getBoundingClientRect(),D=Le.getTransformInfo(t.value);return{size:{width:P,height:A},position:{x:j-D.x,y:N-D.y}}}return null}function E(P){if(t.value){const A=C();f.value=A}r.value=void 0,l.value=null,a.value=null,s.value=null,u.value=null,d.value=null,m.value=null,document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",E)}function O(){document.addEventListener("mousemove",g),document.addEventListener("mouseup",E)}function V(P){P instanceof MouseEvent&&P.button===2||v.value&&(document.body.click(),P.stopPropagation(),P.preventDefault(),r.value=Le.fromEvent(P),m.value=P.target,x(P),O())}function B(P){return t.value=P,p.value&&i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:A=>V(A)},null),i.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:A=>V(A)},null)])}function R(P=!0){document.body.click();const A=o.value||document.body,j=xt.getCurrent(A),N=t.value;P&&N&&(h.value=C(),h.value.transform=N.style.transform),j&&N&&(s.value=j,s.value.height-=14,s.value.width-=14,N.style.height=s.value.height+"px",N.style.width=s.value.width+"px",N.style.left="7px",N.style.top="7px",N.style.transform="",f.value={size:s.value,position:{x:0,y:0}},v.value=!1,S.value=!0)}function I(){var P,A;if(document.body.click(),h.value){const j={width:h.value.size.width||0,height:h.value.size.height||0},N={x:(window.innerWidth-j.width)/2,y:(window.innerHeight-j.height)/2};(P=s.value)==null||P.set(j),(A=u.value)==null||A.set(N);const D=t.value;D.style.height=j.height+"px",D.style.width=j.width+"px",D.style.left=`${N.x}px`,D.style.top=`${N.y}px`,D.style.transform="",f.value={size:j,position:N},v.value=n.draggable,S.value=!1}}function F(){if(t.value){const P=xt.getCurrent(t.value);if(P){const{width:A,height:j}=P;t.value.style.left=`${(window.innerWidth-A)/2}px`,t.value.style.top=`${(window.innerHeight-j)/2}px`,t.value.style.transform=""}}}function _(){const P=()=>{S.value?R(!1):F(),document.body.click()};return window.addEventListener("resize",P),()=>{window.removeEventListener("resize",P)}}const $=_();return{renderResizeBar:B,boundingElement:o,resizedEventParam:f,maximize:R,restore:I,allowDrag:v,isMaximized:S,unWindowResizeHandle:$,moveToCenter:F}}function _i(n,e,t){const o=i.ref(),r=i.ref(n.draggable),l=i.ref(n.lockAxis),a=i.ref(),s=i.ref(),u=i.ref(!1),d=i.ref(new Le(0,0)),m=i.ref(new Le(0,0)),c=i.ref(new Le(0,0)),f=i.ref(new Le(0,0));i.watch(()=>t.value,g=>{a.value.style.cursor=g?"move":"default"});function p(g,C){if(C.tagName==="BUTTON")return!1;if(C===g)return!0;for(const E in C.children)if(Object.prototype.hasOwnProperty.call(C.children,E)&&p(g,C.children[E]))return!0;return!1}function h(){var O,V;let g=c.value.x+m.value.x,C=c.value.y+m.value.y;l.value==="x"?(g=((O=d.value)==null?void 0:O.x)||0,c.value.x=0):l.value==="y"&&(C=((V=d.value)==null?void 0:V.y)||0,c.value.y=0);const E=`translate3d(${Math.round(g)}px, ${Math.round(C)}px, 0px)`;o.value&&(o.value.style.transform=E),f.value.x=g,f.value.y=C}function v(){if(!s.value||!o.value)return null;const g=s.value.getBoundingClientRect(),C=o.value.getBoundingClientRect(),E={top:g.top<C.top,right:g.right>C.right,bottom:g.bottom>C.bottom,left:g.left<C.left};return E.top||(c.value.y-=C.top-g.top),E.bottom||(c.value.y-=C.bottom-g.bottom),E.right||(c.value.x-=C.right-g.right),E.left||(c.value.x-=C.left-g.left),h(),E}function S(g){g&&(d.value&&g.subtract(d.value),c.value.set(g),h(),v())}function T(g){u.value&&r.value&&(g.stopPropagation(),g.preventDefault(),S(Le.fromEvent(g,a.value)))}function x(){var g;u.value&&(u.value=!1,m.value.add(c.value),c.value.reset(),(g=o.value)==null||g.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",T),document.removeEventListener("mouseup",x))}function w(){!u.value&&a.value&&(u.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",T),document.addEventListener("mouseup",x))}function M(){if(o.value){const g=Le.getTransformInfo(o.value);m.value.set(g);return}m.value.reset()}function y(g){if(!t.value||g instanceof MouseEvent&&g.button===2)return;const C=g.target||g.srcElement;a.value!==void 0&&C&&!p(C,a.value)||r.value!==!1&&(document.body.click(),g.stopPropagation(),g.preventDefault(),d.value=Le.fromEvent(g,o.value),M(),w())}function b(g,C,E){if(r.value&&C){if(g)a.value=g;else if(n.dragHandle){if(n.dragHandle instanceof HTMLElement)a.value=n.dragHandle;else if(typeof n.dragHandle=="string"){const O=C.querySelector(n.dragHandle);O&&(a.value=O)}}o.value=C,s.value=E,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",y)):r.value=!1}}return{registerDraggle:b,resetTranslate:M}}function un(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 Ei(n,e){const t=i.ref(n.enableEsc);let o=null;return t.value?(o=un("Escape",r=>{e.emit("esc",{event:r.event,type:"esc"})}),{remove:o}):null}function ki(n,e){const t=i.ref(n.enableEnter);let o=null;return t.value?(o=un("Enter",r=>{e.emit("enter",{event:r.event,type:"enter"})}),{remove:o}):null}const Ft=i.defineComponent({name:"FModal",props:dn,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),l=i.ref(""),a=i.ref(n.class),s=i.ref(n.fitContent),u=i.ref(n.showHeader),d=i.ref(""),m=i.ref(n.showCloseButton),c=i.ref(n.showMaxButton),f=i.ref(!1),p=i.ref(n.dialogType),h=i.ref(n.src),v=i.ref(""),S=i.ref(n.showButtons),T=i.ref(n.title),x=i.ref(n.containment||null),w=i.ref(),{t:M}=ut.useI18n();T.value==="错误提示"&&(T.value=M("messageBox.errorTitle"));const y=i.ref(!1);function b(Z,ge){const _e=ge?"accept":"cancel";Promise.resolve().then(()=>{var Oe;return(Oe=n.beforeClose)==null?void 0:Oe.call(n,{closeType:_e})}).then(Oe=>{Oe&&(r.value=!1,e.emit("update:modelValue",!1),ge!=null&&e.emit(ge?"accept":"cancel"),e.emit("closed",Z))})}const g=[{name:"cancel",text:M("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:Z=>{b(Z,!1)}},{name:"accept",text:M("messageBox.ok")||"确定",class:"btn btn-primary",handle:Z=>{b(Z,!0)}}],C=i.ref(n.buttons&&n.buttons.length?n.buttons:g),E=i.computed(()=>!!d.value),O=i.computed(()=>!!S.value&&!!C.value),V=i.ref(),B=i.ref(),R=i.ref(!1),{renderResizeBar:I,maximize:F,restore:_,boundingElement:$,resizedEventParam:P,allowDrag:A,unWindowResizeHandle:j,moveToCenter:N}=Mi(n),{registerDraggle:D}=_i(n,e,A);function J(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function ne(){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&&(T.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,$.value=x.value,D(V.value,B.value,$.value),N())}),Z||(x.value&&(x.value=null),ne())),r.value?y.value=J():(R.value=!1,A.value=n.draggable)}),i.watch(()=>n.showHeader,(Z,ge)=>{Z!==ge&&(u.value=Z)}),i.watch(()=>n.showButtons,(Z,ge)=>{Z!==ge&&(S.value=Z)}),i.watch(()=>P.value,(Z,ge)=>{const _e=Z||{},Oe=ge||{};JSON.stringify(_e)!==JSON.stringify(Oe)&&e.emit("resize",{newSize:Z,oldSize:ge,isMaximized:R.value})});const X=i.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),ie=i.computed(()=>{var _e;const Z={modal:!0,"farris-modal":!0,fade:!0};Z["f-modal-fitContent"]=!!s.value,Z.show=!!X.value;const ge=(_e=n.maskClass)==null?void 0:_e.split(" ");return ge==null||ge.reduce((Oe,Ye)=>(Oe[Ye]=!0,Oe),Z),Z}),W=i.computed(()=>{var _e;const Z={"modal-dialog":!0},ge=(_e=a.value)==null?void 0:_e.split(" ");return ge==null||ge.reduce((Oe,Ye)=>(Oe[Ye]=!0,Oe),Z),Z}),q=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}),H=()=>ee.getMaxZIndex()||1040,Y=i.computed(()=>{const Z={display:"block",zIndex:H()};return n.mask||(Z.pointerEvents="none",Z.backgroundColor="transparent"),y.value&&(Z.backgroundColor="transparent"),Z}),se=i.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),pe=i.computed(()=>{const Z={display:u.value?"":"none"};return Z["pointer-events"]=A.value?"auto":"none",Z}),me=i.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:R.value})),ue=i.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function xe(){return{height:`${n.footerHeight||60}px`}}const Pe=i.computed(()=>{const Z={textAlgin:v.value},ge=xe();return Object.assign(Z,ge)});function he(Z){if(Z==null||Z.stopPropagation(),R.value){R.value=!1,_();return}F(),R.value=!0}async function ze(Z,ge){Z.handle&&await Z.handle(ge,Z)&&e.emit("closed",ge)}function G(Z){Z.width&&(t.value=Z.width),Z.height&&(o.value=Z.height),Z.buttons&&(C.value=Z.buttons),Z.title&&(T.value=Z.title)}let U=null,K=null;i.onBeforeMount(()=>{y.value=J()}),i.onMounted(()=>{B.value&&!x.value&&(x.value=B.value.parentElement,$.value=x.value,D(V.value,B.value,$.value)),X.value&&document.body.classList.add("modal-open"),U=Ei(n,e),K=ki(n,e)}),i.onUnmounted(()=>{j&&j(),U&&U.remove(),K&&K.remove()}),e.expose({modalElementRef:B,updateModalOptions:G,close:b,maxDialog:he,isMaximized:R});function Fe(){return i.createVNode("ul",null,[f.value&&i.createVNode("li",{class:"f-btn-icon f-bare"},[i.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&i.createVNode("li",{onClick:he,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[i.createVNode("span",{class:me.value},null)]),m.value&&i.createVNode("li",{class:"f-btn-icon f-bare",onClick:Z=>b(Z,!1),style:"pointer-events: auto;"},[i.createVNode("span",{class:"f-icon modal_close"},null)])])}function Ee(){return i.createVNode("div",{class:"modal-footer",style:Pe.value},[C.value&&C.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=>{ze(Z,_e)}},[!!Z.iconClass&&i.createVNode("i",{class:Z.iconClass},null),Z.text])})])}function $e(){return i.createVNode("div",{ref:V,class:"modal-header",style:pe.value},[e.slots.headerTemplate?e.slots.headerTemplate():i.createVNode("div",{class:"modal-title"},[E.value&&i.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),i.createVNode("span",{class:"modal-title-label"},[T.value])]),i.createVNode("div",{class:"actions"},[Fe()])])}function Je(){return e.slots.footerTemplate?e.slots.footerTemplate():O.value&&Ee()}function tt(Z){if(Z.stopPropagation(),n.allowClickMaskToClose){if(Z.target!==w.value)return;b(Z,!1)}}function Qe(){var Z,ge;return i.createVNode("div",{id:l.value,class:W.value,style:q.value,ref:B},[i.createVNode("div",{class:se.value},[u.value&&$e(),i.createVNode("div",{class:ue.value},[(ge=(Z=e.slots).default)==null?void 0:ge.call(Z),p.value==="iframe"&&i.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:h.value},null)]),Je()]),!s.value&&B.value&&!R.value&&I(B.value)])}function Ue(Z){return Z||"body"}return()=>i.createVNode(i.Teleport,{to:Ue(n.host)},{default:()=>[X.value&&i.createVNode(i.Transition,{name:"fade",appear:!0},{default:()=>[i.createVNode("div",{ref:w,class:ie.value,style:Y.value,onClick:tt},[Qe()])]})]})}});function fn(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function Vi(n){const e=document.createElement("div");e.style.display="contents";const t=i.createApp({setup(o,r){i.onUnmounted(()=>{document.body.removeChild(e)});const l=i.ref(),a=i.ref(n.class||""),s=i.ref(!!n.showButtons),u=i.ref(!!n.showHeader),d=i.ref(n.showCloseButton==null?!0:n.showCloseButton),m=i.ref(!0),c=i.ref(n.title||""),f=n.acceptCallback||(()=>{}),p=n.rejectCallback||(()=>{}),h=n.closedCallback||(w=>{}),v=n.resizeHandle||(w=>{}),S=n.stopMoveHandle||(w=>{}),T=fn(n),x=w=>{m.value=!1,t.unmount(),h(w)};return i.onMounted(()=>{}),r.expose({modalRef:l}),()=>i.createVNode(Ft,{ref:l,class:a.value,modelValue:m.value,"onUpdate:modelValue":w=>m.value=w,title:c.value,width:n.width,height:n.height,buttons:n.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:f,onCancel:p,fitContent:n.fitContent==null?!0:n.fitContent,onClosed:x,onResize:v,onStopMove:S},{default:()=>[T&&T(t)]})}});return document.body.appendChild(e),t.use(Rt.LocaleService.i18n),t.mount(e),t}class mn{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 Vi(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),l=o.value.acceptCallback||(()=>{}),a=o.value.rejectCallback||(()=>{}),s=o.value.closedCallback||((y,b)=>{}),u=o.value.resizeHandle||(y=>{}),d=e.stopMoveHandle||(y=>{});let m;const c=fn(o.value),f=y=>{var g;r.value=!1;const b=(g=y==null?void 0:y.target)==null?void 0:g.classList.contains("modal_close");s(y,this.isUseEscCloseModal.value?"esc":b?"icon":"button")},p=y=>{f(y),m&&i.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],i.render(null,t),m=null,this.modalRef.value=null,this.modalRefs){const b=Object.keys(this.modalRefs).map(g=>Number(g));b.length>0?this.activeModalIndex.value=Math.max(...b):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},h=y=>{var b;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((b=this.activeModalInstance.value)==null||b.close(y==null?void 0:y.event))},{width:v,height:S}=o.value,T=this.adaptToWindow(v||500,S||320);Object.assign(o.value,T);const x=()=>i.createVNode(Ft,i.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":y=>r.value=y},o.value,{onAccept:l,onCancel:a,onClosed:p,onResize:u,onEsc:h,onStopMove:d}),{default:()=>[c&&c(this.app)]});return m=(y=>{const b=i.h(x,y);return b.appContext=this.appContext,i.render(b,t),b})({...o.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:y=>{o.value={...o.value,...y},m&&i.render(i.cloneVNode(m,{...o}),t)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}function Ii(n={}){function e(d,m,c,f){if(typeof c=="number")return f[d].length===c;if(typeof c=="object"){const p=Object.keys(c)[0],h=c[p];if(p==="not")return Number(f[d].length)!==Number(h);if(p==="moreThan")return Number(f[d].length)>=Number(h);if(p==="lessThan")return Number(f[d].length)<=Number(h)}return!1}function t(d,m,c,f){return f[d]&&f[d].propertyValue&&String(f[d].propertyValue.value)===String(c)}const o=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((d,m)=>(d.set(m,n[m]),d),o);function r(d,m){const c=d;return typeof m=="number"?[{target:c,operator:"length",param:null,value:Number(m)}]:typeof m=="boolean"?[{target:c,operator:"getProperty",param:d,value:!!m}]:typeof m=="object"?Object.keys(m).map(f=>{if(f==="length")return{target:c,operator:"length",param:null,value:m[f]};const p=f,h=m[f];return{target:c,operator:"getProperty",param:p,value:h}}):[]}function l(d){return Object.keys(d).reduce((c,f)=>{const p=r(f,d[f]);return c.push(...p),c},[])}function a(d,m){if(o.has(d.operator)){const c=o.get(d.operator);return c&&c(d.target,d.param,d.value,m)||!1}return!1}function s(d,m){return l(d).reduce((p,h)=>p&&a(h,m),!0)}function u(d,m){const c=Object.keys(d),f=c.includes("allOf"),p=c.includes("anyOf"),h=f||p,T=(h?d[h?f?"allOf":"anyOf":"allOf"]:[d]).map(w=>s(w,m));return f?!T.includes(!1):T.includes(!0)}return{parseValueSchema:u}}const Pi={convertTo:(n,e,t,o)=>{n.appearance||(n.appearance={}),n.appearance[e]=t},convertFrom:(n,e,t)=>n.appearance?n.appearance[e]:n[e]},Ni={convertFrom:(n,e,t)=>n.buttons&&n.buttons.length?`共 ${n.buttons.length} 项`:"无"},Bi={convertTo:(n,e,t,o)=>{n.editor&&(n.editor[e]=t)},convertFrom:(n,e,t)=>n.editor&&Object.prototype.hasOwnProperty.call(n.editor,e)?n.editor[e]:n[e]},Oi={convertFrom:(n,e,t)=>{var r;const o=n.editor&&n.editor[e]?n.editor[e]:n[e];return((r=te[o])==null?void 0:r.name)||o}},ji={convertTo:(n,e,t,o)=>{n[e]=n[e]},convertFrom:(n,e,t)=>n.editor?t.getRealEditorType(n.editor.type):""},Ri={convertTo:(n,e,t,o)=>{(n.type==="data-grid-column"||n.type==="tree-grid-column")&&(n.formatter?n.formatter[e]=t:n.formatter={[e]:t})},convertFrom:(n,e,t)=>{if(n.formatter){if(e==="trueText")return n.formatter.trueText;if(e==="falseText")return n.formatter.falseText;if(e==="prefix")return n.formatter.prefix;if(e==="suffix")return n.formatter.suffix;if(e==="precision")return n.formatter.precision;if(e==="decimal")return n.formatter.decimal;if(e==="thousand")return n.formatter.thousand;if(e==="dateFormat")return n.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return n.formatter.customFormat;if(e==="type")return n.formatter.type||"none"}return"none"}},$i={convertTo:(n,e,t,o)=>{n.command?n.command[e]=t:n.command={[e]:t},e==="enable"&&t&&(n.command.commands||(n.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(n,e,t)=>n.command&&e==="enable"?n.command.enable:""},Ai={convertTo:(n,e,t,o)=>{n.column?n.column[e]=t:n.column={[e]:t},e==="fitColumns"&&t&&(n.column.fitMode||(n.column.fitMode="average"))},convertFrom:(n,e,t)=>{if(n.column){if(e==="fitColumns")return n.column.fitColumns;if(e==="fitMode")return n.column.fitMode}return""}},Li={convertTo:(n,e,t,o)=>{n.summary?n.summary[e]=t:n.summary={[e]:t},e==="enable"&&t&&(n.summary?n.summary.groupFields||(n.summary.groupFields=[]):n.summary={enable:t,groupFields:[]})},convertFrom:(n,e,t)=>n.summary&&e==="enable"?n.summary.enable:n.type==="data-grid-column"?n.enableSummary===void 0?!1:n.enableSummary:""},Hi={convertTo:(n,e,t,o)=>{n.group?n.group[e]=t:n.group={[e]:t},e==="enable"&&t&&(n.group?n.group.groupFields||(n.group.groupFields=[]):n.group={enable:t,groupFields:[],showSummary:!1})},convertFrom:(n,e,t)=>{if(n.group){if(e==="enable")return n.group.enable;if(e==="showSummary")return n.group.showSummary}}},Di={convertFrom:(n,e)=>n.binding?n.binding.path:"",convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.binding||(n.binding={}),n.binding.type="Form",n.binding.path=o.bindingField,n.binding.field=o.id,n.binding.fullPath=o.path,n.path=o.bindingPath}}},qi={convertTo:(n,e,t,o)=>{n.pagination||(n.pagination={}),n.pagination[e]=t},convertFrom:(n,e,t)=>n.pagination?n.pagination[e]:n[e]},Wi={convertTo:(n,e,t,o)=>{n.rowNumber||(n.rowNumber={}),n.rowNumber[e]=t},convertFrom:(n,e,t)=>n.rowNumber?n.rowNumber[e]:n[e]},zi={convertTo:(n,e,t,o)=>{n.selection||(n.selection={}),n.selection[e]=t},convertFrom:(n,e,t)=>{var o,r;return e==="showCheckbox"?(o=n.selection)!=null&&o.multiSelect?!0:(r=n.selection)==null?void 0:r.showCheckbox:n.selection?n.selection[e]:n[e]}},Gi={convertFrom:(n,e,t)=>n[e]&&n[e].length?`共 ${n[e].length} 项`:""},Ui={convertFrom:(n,e)=>n[e]||"",convertTo:(n,e,t)=>{n[e]=t}},Yi={convertTo:(n,e,t,o)=>{n.size||(n.size={}),n.size[e]=t},convertFrom:(n,e,t)=>n.size?n.size[e]:n[e]},Xi={convertFrom:(n,e,t)=>{var o,r;return(o=n.formatter)!=null&&o.data&&e==="formatterEnumData"&&!n.formatterEnumData?(r=n.formatter)==null?void 0:r.data:n.formatterEnumData}},Zi={convertTo:(n,e,t,o)=>{n.sort||(n.sort={}),n.sort[e]=t},convertFrom:(n,e,t)=>{var o,r;if(e==="mode")return((o=n.sort)==null?void 0:o.mode)||"client";if(e==="multiSort")return!!((r=n.sort)!=null&&r.multiSort)}},Ji={convertTo:(n,e,t,o)=>{n.filter||(n.filter={}),n.filter[e]=t},convertFrom:(n,e,t)=>{var o;if(e==="mode")return((o=n.filter)==null?void 0:o.mode)||"client"}},Qi={convertTo:(n,e,t,o)=>{n.rowOption?n.rowOption[e]=t:n.rowOption={[e]:t}},convertFrom:(n,e,t)=>{if(n.rowOption){if(e==="customRowStyle")return n.rowOption.customRowStyle;if(e==="customCellStyle")return n.rowOption.customCellStyle}return""}};function pn(n,e,t){const o=new Map([["/converter/appearance.converter",Pi],["/converter/buttons.converter",Ni],["/converter/property-editor.converter",Bi],["/converter/items-count.converter",Gi],["/converter/type.converter",Oi],["/converter/change-editor.converter",ji],["/converter/change-formatter.converter",Ri],["/converter/column-command.converter",$i],["/converter/column-option.converter",Ai],["/converter/summary.converter",Li],["/converter/group.converter",Hi],["/converter/form-group-label.converter",Ui],["/converter/field-selector.converter",Di],["/converter/pagination.converter",qi],["/converter/row-number.converter",Wi],["/converter/grid-selection.converter",zi],["/converter/size.converter",Yi],["/converter/change-formatter-enum.converter",Xi],["/converter/grid-sort.converter",Zi],["/converter/grid-filter.converter",Ji],["/converter/row-option.converter",Qi]]),r=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),l=Ii();function a(h,v){return()=>l.parseValueSchema(h,v)}function s(h,v,S){return h.includes("visible")&&v.visible!==void 0?typeof v.visible=="boolean"?()=>!!v.visible:v.visible===void 0?!0:a(v.visible,S):()=>!0}function u(h,v,S){return h.includes("readonly")&&v.readonly!==void 0?typeof v.readonly=="boolean"?()=>!!v.readonly:a(v.readonly,S):()=>!1}function d(h,v){const S=h.$converter||v;return typeof S=="string"&&S&&o.has(S)?o.get(S)||null:S||null}function m(h,v,S,T,x,w="",M=""){return Object.keys(h).map(b=>{const g=i.ref(1),C=b,E=h[b],O=Object.keys(E),V=E.title,B=E.type,R=r.get(B)||{type:"input-group",enableClear:!1},I=E.editor?Object.assign({},R,E.editor):Object.assign({},R),F=s(O,E,v),_=u(O,E,v);I.readonly=I.readonly===void 0?_():I.readonly;const $=E.type==="cascade"?m(E.properties,v,S,T,x,w,M):[],P=!0;let A=d(E,M);const j=i.computed({get(){if(g.value){if(["class","style"].find(W=>W===C)&&!A&&(A=o.get("/converter/appearance.converter")||null),A&&A.convertFrom)return A.convertFrom(S,b,x,w);const ie=S[b];return Object.prototype.hasOwnProperty.call(E,"defaultValue")&&(ie===void 0||typeof ie=="string"&&ie==="")?E.type==="boolean"?E.defaultValue:E.defaultValue||"":ie}return null},set(ie){g.value+=1,A&&A.convertTo?(A.convertTo(T,b,ie,x,w),A.convertTo(S,b,ie,x,w)):(T[b]=ie,S[b]=ie)}}),{refreshPanelAfterChanged:N,description:D,isExpand:J,parentPropertyID:ne}=E,X={propertyID:C,propertyName:V,propertyType:B,propertyValue:j,editor:I,visible:F,readonly:_,cascadeConfig:$,hideCascadeTitle:P,refreshPanelAfterChanged:N,description:D,isExpand:J,parentPropertyID:ne};return v[C]=X,X})}function c(h,v,S={}){const T={},x=n[h];return x&&x.categories?Object.keys(x.categories).map(M=>{const y=x.categories[M],b=y==null?void 0:y.title,g=m(y.properties||{},T,{},S,v);return{categoryId:M,categoryName:b,properties:g}}):[]}function f(h,v,S,T,x=""){const w=v.$ref.schema,M=v.$ref.converter,y=S[w],b=y.type,g=t(y),C={},E=n[b];if(E&&E.categories){const O=E.categories[h],V=O==null?void 0:O.title;M&&Object.keys(O.properties).forEach(I=>{O.properties[I].$converter=M});const B=(O==null?void 0:O.properties)||{},R=m(B,C,g,y,T,x);return{categoryId:h,categoryName:V,properties:R}}return{categoryId:h,categoryName:"",properties:[]}}function p(h,v,S,T,x){const w=h.type,M=t(h),y={};let b=x||n[w];if(b&&Object.keys(b).length===0&&S&&S.getPropConfig&&(b=S.getPropConfig(T)),b&&b.categories){const g=[];return Object.keys(b.categories).map(C=>{const E=b.categories[C];if(E.$ref){g.push(f(C,E,h,v,T));return}const O=E==null?void 0:E.title,V=E==null?void 0:E.tabId,B=E==null?void 0:E.tabName,R=E==null?void 0:E.hide,I=E==null?void 0:E.hideTitle,F=m(E.properties||{},y,M,h,v,T,E.$converter),{setPropertyRelates:_}=E,$=E==null?void 0:E.parentPropertyID;g.push({categoryId:C,categoryName:O,tabId:V,tabName:B,hide:R,properties:F,hideTitle:I,setPropertyRelates:_,parentPropertyID:$})}),g}return[]}return{getPropertyConfigBySchema:p,getPropertyConfigByType:c,propertyConverterMap:o}}function hn(n,e){let t;function o(c){const{properties:f,title:p,ignore:h}=c,v=h&&Array.isArray(h),S=Object.keys(f).reduce((T,x)=>((!v||!h.find(w=>w===x))&&(T[x]=f[x].type==="object"&&f[x].properties?o(f[x]):Ne.cloneDeep(f[x].default)),T),{});if(p&&(!v||!h.find(T=>T==="id"))){const T=p.toLowerCase().replace(/-/g,"_");S.id=`${T}_${Math.random().toString().slice(2,6)}`}return S}function r(c){const{properties:f,title:p,required:h}=c;if(h&&Array.isArray(h)){const v=h.reduce((S,T)=>(S[T]=f[T].type==="object"&&f[T].properties?o(f[T]):Ne.cloneDeep(f[T].default),S),{});if(p&&h.find(S=>S==="id")){const S=p.toLowerCase().replace(/-/g,"_");v.id=`${S}_${Math.random().toString().slice(2,6)}`}return v}return{type:p}}function l(c,f={},p){const h=n[c];if(h){let v=r(h);const S=e[c];return v=S?S({getSchemaByType:l},v,f,p):v,t!=null&&t.appendIdentifyForNewControl&&t.appendIdentifyForNewControl(v),v}return null}function a(c,f){const p=o(f);return Object.keys(p).reduce((h,v)=>(Object.prototype.hasOwnProperty.call(c,v)&&(h[v]&&Ne.isPlainObject(h[v])&&Ne.isPlainObject(c[v]||!c[v])?Object.assign(h[v],c[v]||{}):h[v]=c[v]),h),p),p}function s(c,f){return Object.keys(c).filter(h=>c[h]!=null).reduce((h,v)=>{if(f.has(v)){const S=f.get(v);if(typeof S=="string")h[S]=c[v];else{const T=S(v,c[v],c);Object.assign(h,T)}}else h[v]=c[v];return h},{})}function u(c,f,p=new Map){const h=a(c,f);return s(h,p)}function d(c){var p;const f=c.type;if(f){const h=n[f];if(!h)return c;const v=a(c,h),S=((p=c.editor)==null?void 0:p.type)||"";if(S){const T=n[S],x=a(c.editor,T);v.editor=x}return v}return c}function m(c){t=c}return{getSchemaByType:l,resolveSchemaWithDefaultValue:d,resolveSchemaToProps:u,mappingSchemaToProps:s,setDesignerContext:m}}const gn={},yn={},{getSchemaByType:Hs,resolveSchemaWithDefaultValue:Ki,resolveSchemaToProps:Ds,mappingSchemaToProps:qs,setDesignerContext:Ws}=hn(gn,yn),vn={},bn={};pn(vn,bn,Ki);const Cn={},wn={},{getSchemaByType:zs,resolveSchemaWithDefaultValue:er,resolveSchemaToProps:tr,mappingSchemaToProps:nr,setDesignerContext:Gs}=hn(Cn,wn),Sn={},xn={};pn(Sn,xn,er);function yt(n,e,t=new Map,o=(a,s,u,d)=>s,r={},l=a=>a){return Cn[e.title]=e,wn[e.title]=o,Sn[e.title]=r,xn[e.title]=l,gn[e.title]=e,yn[e.title]=o,vn[e.title]=r,bn[e.title]=l,(a={},s=!0)=>{if(!s)return nr(a,t);const u=tr(a,e,t),d=Object.keys(n).reduce((m,c)=>(m[c]=n[c].default,m),{});return Object.assign(d,u)}}function Lt(n,e){return{customClass:e.class,customStyle:e.style}}const Yt=new Map([["appearance",Lt]]),or=new Map([]),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},name:{description:"The name string of form group component",type:"string",default:"form group"},showLabelType:{description:"",type:"string",default:"visible"}},required:["id","type","editor"]};yt({id:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number]},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},showLabelType:{type:String,default:"visible"},type:{type:String,default:"input-group"},componentId:{type:String,default:""},errors:{type:Object,default:null}},Fn,Yt,void 0);const ir=i.ref(0);function rr(){ir.value++}function ar(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function o(u,d=""){return{path:d+u.code,field:u.id,fullPath:u.code}}function r(u,d=""){return e.getViewModelById(u).states.map(c=>o(c,d))}function l(u){const d=e.getRootViewModelId(),m=r(u);if(u===d)return m;const c=r(d,"root-component.");return[...m,...c]}function a(u){return u.binding&&u.binding.path||u.id||""}function s(){return t&&t.getRenderStates()||[]}return{getVariables:l,getControlName:a,getStateMachines:s}}class Tn{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,l,a)=>{const s=l.getExpressionRuleValue(e,t||r);return s&&s.value||""},convertTo:(o,r,l,a,s)=>{var u;if(r==="dataPicking"&&(l!=null&&l.target)){const d=`${l.target}_dataPicking`;((u=l.rules)==null?void 0:u.some(c=>c.id===d&&c.value))?o.dictPickingExpressionId=d:delete o.dictPickingExpressionId}a.updateExpression(l)}}));this.formSchemaService=e}getExpressionRule(e,t){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(a=>a.target===e);if(!r)return"";const l=r.rules.find(a=>a.type===t);return l||""}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(l=>{r.push({key:l.code,name:l.name,description:l.name,category:l.category})}),r}createTreeNode(e,t,o="label"){return{id:e.id,name:e.name,bindingPath:e[o],parents:t,type:"field"}}buildEntityFieldsTreeData(e=null,t){const o=[];return e==null||e.forEach(r=>{var s;const l=this.createTreeNode(r,t);let a=[];(s=r.type)!=null&&s.fields&&(a=this.buildEntityFieldsTreeData(r.type.fields,[...t,r.label])),o.push({data:l,children:a,expanded:!0})}),o}buildChildEntityTreeData(e=null,t){const o=[];return e==null||e.forEach(r=>{var u,d;const l=this.createTreeNode(r,t);l.type="entity";const a=this.buildEntityFieldsTreeData((u=r.type)==null?void 0:u.fields,[...t,r.label]),s=this.buildChildEntityTreeData((d=r.type)==null?void 0:d.entities,[...t,r.label]);s!=null&&s.length&&(a==null||a.push(...s)),o.push({data:l,children:a||[],expanded:!0})}),o}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const 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,l=this.getExpressionRule(r,t),a=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(t)&&l?l.message:"",...a};return l.messageType!=null&&(s.messageType=l.messageType),s}buildRule(e,t,o,r){const{expression:l,message:a,messageType:s}=t,u={id:`${e}_${o}`,type:o,value:l};return(o==="validate"||o==="dataPicking"||o==="required")&&(u.message=a),o==="dataPicking"&&(u.messageType=s),o==="validate"&&r&&(u.elementId=r),u}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,o,r){const l=t==="Field"?e.binding.field:e.id,a=this.buildRule(l,o,r,e.type==="form-group"?e.id:"");let u=this.getExpressionData().find(m=>m.targetType===t&&m.target===l);const d=m=>m.value.trim()==="";if(u){const m=u.rules.find(c=>c.id===a.id);if(m)d(a)?u.rules=u.rules.filter(c=>c.id!==a.id):(Object.assign(m,a),r==="validate"&&e.type==="form-group"&&(m.elementId=e.id));else{if(d(a))return null;u.rules=u.rules||[],u.rules.push(a)}}else{if(d(a))return null;u={target:`${l}`,rules:[a],targetType:t}}return u}getExpressionEditorOptions(e,t,o,r){return o.reduce((l,a)=>{var u,d;const s=t==="Field"?(u=e==null?void 0:e.binding)==null?void 0:u.field:e.id;return l[a]={hide:t==="Field"?!!((d=e==null?void 0:e.binding)!=null&&d.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(s),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,t),onSubmitModal:m=>{const c=this.updateExpression(e,t,m,a);if(r){const f=this.buildRule(s,m,a);r(f)}return c}}},l},{})}getExpressionInfo(e,t,o){const r=t==="Field"?e.binding.field:e.id,l=this.getExpressionRule(r,o),a={value:l&&l.value,targetId:r,targetType:t,expressionType:o};return l&&l.message&&(a.message=l.message),a}getExpressionConfig(e,t,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",hide:!e.binding,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 Mn{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,"designerContext");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,this.designerContext=t.designerContext}getFormDesignerInstance(){var e,t;return(t=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:t.formDesigner.value}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(l=>l.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]&&te[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},o){const r={title:"外观",description:"Appearance"},l={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in t)l[a]=Object.assign(l[a]||{},t[a]);return{...r,properties:{...l},setPropertyRelates(a,s){if(a){switch(a&&a.propertyID){case"class":case"style":{ht.value++;break}}o&&o(a,e,s)}}}}getPropertyEditorParams(e,t=[],o="visible",r={},l={},a=""){const{getVariables:s,getControlName:u,getStateMachines:d}=ar(this.designerHostService),m=this.getRealTargetType(e),c=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],f={type:"property-editor",propertyTypes:c};return c.map(p=>{switch(p){case"Const":Object.assign(f,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":f.expressionConfig=this.getExpressionOptions(e,m,a||o);break;case"StateMachine":f.stateMachines=d();break;case"Variable":Object.assign(f,{controlName:u(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),onBeforeOpenVariables:h=>{h.value=s(this.viewModelId)}},l);break}}),f}getVisibleProperty(e,t=""){var l;let o=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?o=["Const","Expression"]:t==="form-group"&&!((l=e.binding)!=null&&l.field)&&(o=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,o,"visible")}}}getBehaviorConfig(e,t="",o={},r){const l={title:"行为",description:""},a=this.getVisibleProperty(e,t);for(const u in o)a[u]=Object.assign(a[u]||{},o[u]);const s=this;return{...l,properties:{...a},setPropertyRelates(u,d){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(e,u);break}r&&r(u,d)}}}}afterMutilEditorChanged(e,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(a=>a.id===e),l=Ne.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,l),rr()}addNewVariableToViewModel(e,t){const o=e.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const a={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById(t).states.push(a)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:l,expressionInfo:a}=t,{targetId:s,targetType:u,expressionType:d,value:m,message:c}=a,f=this.formSchemaUtils.getModule();f.expressions=f.expressions||[];const{expressions:p}=f;let h=p.find(S=>S.target===s);h||(h={target:s,rules:[],targetType:u},p.push(h));const v=h.rules.find(S=>S.type===d);if(v)v.value=m,v.message=c;else{const S={id:l,type:d,value:m,message:c};h.rules.push(S)}delete t.expressionInfo}clearExpression(e,t){const o=e.propertyValue;if(o&&o.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),s=t.binding?t.binding.field:t.id,u=a.find(d=>d.target===s);!u||!u.rules||(u.rules=u.rules.filter(d=>d.type!==l))}getExpressionOptions(e,t,o){return new Tn(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"}createBaseEventProperty(e){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:o=>{var r;((r=o.controller)==null?void 0:r.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(o)}}},t}}const Ot=class Ot{static getEditorTypesByMDataType(e,t=!1,o=""){if(t)return[{key:te["language-textbox"].type,value:te["language-textbox"].name}];let r=Ot.fieldControlTypeMapping[e];if(o==="data-grid-column"&&(r!=null&&r.length)){const l=[te["check-group"].type,te["radio-group"].type];r=r.filter(a=>!l.includes(a.key))}return r}static getAllInputTypes(){const e=[];for(const t in Ot.fieldControlTypeMapping)Ot.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 l;const o=(l=e.editor)==null?void 0:l.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(Ot,"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.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].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},{key:te.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].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 jt=Ot;var Nt=(n=>(n.Form="Form",n.Variable="Variable",n))(Nt||{});class lr{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 sr(n){let e,t;const o=new Map;let r=[];function l(m,c){const p=m.split(" ").filter(x=>x.startsWith("col-"));if(p.length===0){c.isSupportedClass=!1;return}let h=p.find(x=>/^col-([1-9]|10|11|12)$/.test(x)),v=p.find(x=>/^col-md-([1-9]|10|11|12)$/.test(x)),S=p.find(x=>/^col-xl-([1-9]|10|11|12)$/.test(x)),T=p.find(x=>/^col-el-([1-9]|10|11|12)$/.test(x));h=h||"col-12",c.columnInSM=parseInt(h.replace("col-",""),10),c.displayWidthInSM=c.columnInSM/12,c.displayWidthInSM!==1&&(c.isSupportedClass=!1),v=v||"col-md-"+c.columnInSM,c.columnInMD=parseInt(v.replace("col-md-",""),10),c.displayWidthInMD=c.columnInMD/6,[1,2].includes(c.displayWidthInMD)||(c.isSupportedClass=!1),S=S||"col-xl-"+c.columnInMD,c.columnInLG=parseInt(S.replace("col-xl-",""),10),c.displayWidthInLG=c.columnInLG/3,[1,2,3,4].includes(c.displayWidthInLG)||(c.isSupportedClass=!1),T=T||"col-el-"+c.columnInLG,c.columnInEL=parseInt(T.replace("col-el-",""),10),c.displayWidthInEL=c.columnInEL/2,[1,2,3,4,5,6].includes(c.displayWidthInEL)||(c.isSupportedClass=!1)}function a(m,c,f,p=!1){let h=!1;m.contents.forEach(v=>{if(v.type==="fieldset"){f+=1,a(v,c,f,!0),h=!0;return}h&&(f+=1,h=!1);const S=v.appearance&&v.appearance.class,T=new lr;S?l(S,T):T.isSupportedClass=!1,T.label=v.label||v.id,T.id=v.id,T.group=f,p&&(T.fieldSetId=m.id),t===v.id&&(e=f),o.set(v.id,v),c.push(T)})}function s(m){const c=n.getComponentById(m);if(!c||!c.componentType||!c.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const f=n.selectNode(c,p=>p.type===at.DgControl["response-form"].type);return!f||!f.contents||f.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:f}}function u(m,c){c=c||m.id;const{result:f,message:p,formNode:h}=s(c);if(!f)return{result:f,message:p};t=m.id,r=[],o.clear();const v=h.contents[0].type===at.DgControl.fieldset.type?0:1;a(h,r,v);const S=r.find(x=>!x.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:S?"customize":"standard"},importData:r}}function d(m,c){c=c;const{result:f,formNode:p}=s(c);if(!f)return"";const h=[];return m.forEach(v=>{var x;const S=o.get(v.id),T=S.appearance&&S.appearance.class;if(T){const M=T.split(" ").filter(O=>!O.startsWith("col-")),y="col-"+v.columnInSM,b="col-md-"+v.columnInMD,g="col-xl-"+v.columnInLG,C="col-el-"+v.columnInEL,E=[y,b,g,C].concat(M);S.appearance.class=E.join(" ")}if(v.fieldSetId){const w=p.contents.find(y=>y.id===v.fieldSetId),M=h.find(y=>y.id===v.fieldSetId);M?(x=M.contents)==null||x.push(S):(h.push(w),w.contents=[S])}else h.push(S)}),p.contents=h,p.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:u,changeFormControlsByResponseLayoutConfig:d,getResonseFormLayoutConfig:a}}var vt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ht(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 cr={exports:{}};(function(n,e){(function(t){n.exports=t()})(function(){return function(){function t(o,r,l){function a(d,m){if(!r[d]){if(!o[d]){var c=typeof Ht=="function"&&Ht;if(!m&&c)return c(d,!0);if(s)return s(d,!0);var f=new Error("Cannot find module '"+d+"'");throw f.code="MODULE_NOT_FOUND",f}var p=r[d]={exports:{}};o[d][0].call(p.exports,function(h){var v=o[d][1][h];return a(v||h)},p,p.exports,t,o,r,l)}return r[d].exports}for(var s=typeof Ht=="function"&&Ht,u=0;u<l.length;u++)a(l[u]);return a}return t}()({1:[function(t,o,r){var l={},a="(?:^|\\s)",s="(?:\\s|$)";function u(c){var f=l[c];return f?f.lastIndex=0:l[c]=f=new RegExp(a+c+s,"g"),f}function d(c,f){var p=c.className;p.length?u(f).test(p)||(c.className+=" "+f):c.className=f}function m(c,f){c.className=c.className.replace(u(f)," ").trim()}o.exports={add:d,rm:m}},{}],2:[function(t,o,r){(function(l){var a=t("contra/emitter"),s=t("crossvent"),u=t("./classes"),d=document,m=d.documentElement;function c(V,B){var R=arguments.length;R===1&&Array.isArray(V)===!1&&(B=V,V=[]);var I,F,_,$,P,A,j,N,D,J=null,ne,X,ie=!1,W=0,q,H=B||{};H.moves===void 0&&(H.moves=x),H.accepts===void 0&&(H.accepts=x),H.invalid===void 0&&(H.invalid=Ee),H.containers===void 0&&(H.containers=V||[]),H.isContainer===void 0&&(H.isContainer=T),H.copy===void 0&&(H.copy=!1),H.copySortSource===void 0&&(H.copySortSource=!1),H.revertOnSpill===void 0&&(H.revertOnSpill=!1),H.removeOnSpill===void 0&&(H.removeOnSpill=!1),H.direction===void 0&&(H.direction="vertical"),H.ignoreInputTextSelection===void 0&&(H.ignoreInputTextSelection=!0),H.mirrorContainer===void 0&&(H.mirrorContainer=d.body);var Y=a({containers:H.containers,start:K,end:$e,cancel:Z,remove:Ue,destroy:xe,canMove:U,dragging:!1});return H.removeOnSpill===!0&&Y.on("over",bt).on("out",_t),pe(),Y;function se(k){return Y.containers.indexOf(k)!==-1||H.isContainer(k)}function pe(k){var L=k?"remove":"add";h(m,L,"mousedown",he),h(m,L,"mouseup",tt)}function me(k){var L=k?"remove":"add";h(m,L,"mousemove",ze)}function ue(k){var L=k?"remove":"add";s[L](m,"selectstart",Pe),s[L](m,"click",Pe)}function xe(){pe(!0),tt({})}function Pe(k){ne&&k.preventDefault()}function he(k){$=k.clientX,P=k.clientY;var L=v(k)!==1||k.metaKey||k.ctrlKey;if(!L){var z=k.target,Q=G(z);Q&&(ne=Q,me(),k.type==="mousedown"&&(b(z)?z.focus():k.preventDefault()))}}function ze(k){if(ne){if(v(k)===0){tt({});return}if(!(k.clientX!==void 0&&Math.abs(k.clientX-$)<=(H.slideFactorX||0)&&k.clientY!==void 0&&Math.abs(k.clientY-P)<=(H.slideFactorY||0))){if(H.ignoreInputTextSelection){var L=O("clientX",k)||0,z=O("clientY",k)||0,Q=d.elementFromPoint(L,z);if(b(Q))return}var de=ne;me(!0),ue(),$e(),Fe(de),u.add(N||_,"gu-transit"),Ct(),Et(),W=0,Ye(k)}}}function G(k){if(!(Y.dragging&&I)&&!se(k)){for(var L=k;y(k)&&se(y(k))===!1;)if(H.invalid(k,L)||(k=y(k),!k))return;var z=y(k);if(z&&!H.invalid(k,L)){var Q=H.moves(k,z,L,C(k));if(Q)return{item:k,source:z}}}}function U(k){return!!G(k)}function K(k){var L=G(k);L&&Fe(L)}function Fe(k){rt(k.item,k.source)&&(N=k.item.cloneNode(!0),Y.emit("cloned",N,k.item,"copy")),F=k.source,_=k.item,A=j=C(k.item),Y.dragging=!0,Y.emit("drag",_,F)}function Ee(){return!1}function $e(){if(Y.dragging){var k=N||_;Qe(k,y(k))}}function Je(){ne=!1,me(!0),ue(!0)}function tt(k){if(Je(),!!Y.dragging){var L=N||_,z=O("clientX",k)||0,Q=O("clientY",k)||0,de=S(I,z,Q),ye=Oe(de,z,Q);ye&&(N&&H.copySortSource||!N||ye!==F)?Qe(L,ye):H.removeOnSpill?Ue():Z()}}function Qe(k,L){var z=y(k);N&&H.copySortSource&&L===F&&z.removeChild(_),_e(L)?Y.emit("cancel",k,F):Y.emit("drop",k,L,F,j),ge()}function Ue(){if(Y.dragging){var k=N||_,L=y(k);L&&L.removeChild(k),Y.emit(N?"cancel":"remove",k,L,F),ge()}}function Z(k){if(Y.dragging){var L=arguments.length>0?k:H.revertOnSpill,z=N||_,Q=y(z),de=_e(Q);de===!1&&L&&(N?Q&&Q.removeChild(N):F.insertBefore(z,A)),de||L?Y.emit("cancel",z,F,F):Y.emit("drop",z,Q,F,j),ge()}}function ge(){var k=N||_;Je(),oe(),ae(),k&&u.rm(k,"gu-transit"),D&&clearTimeout(D),Y.dragging=!1,J&&Y.emit("out",k,J,F),Y.emit("dragend",k,W),F=_=N=A=j=D=J=null}function _e(k,L){var z;return L!==void 0?z=L:I?z=j:z=C(N||_),k===F&&z===A}function Oe(k,L,z){for(var Q=k;Q&&!de();)Q=y(Q);return Q;function de(){var ye=se(Q);if(ye===!1)return!1;var Be=fe(Q,k),ke=it(Q,Be,L,z),Ce=_e(Q,ke);return Ce?!0:H.accepts(_,Q,F,ke)}}function Ye(k){if(!I)return;k.preventDefault();var L=O("clientX",k)||0,z=O("clientY",k)||0;I.style.left=L-2+"px",I.style.top=z-2+"px";var Q=N||_,de=S(I,L,z),ye=Oe(de,L,z),Be=ye!==null&&ye!==J;(Be||ye===null)&&(Re(),J=ye,Me()),ft(de,z);var ke=y(Q);if(ye===F&&N&&!H.copySortSource){ke&&ke.removeChild(Q);return}var Ce,Te=fe(ye,de);if(ie=Ie(Te,ye),Te!==null)Ce=it(ye,Te,L,z);else if(H.revertOnSpill===!0&&!N)Ce=A,ye=F;else{N&&ke&&ke.removeChild(Q),N&&X&&(X.style.display="none");return}X.style.display="block",Mt(Ce,Q,Be),Ce?Xe(Te,Ce):Ke(ye);function we(Ae){Y.emit(Ae,Q,J,F)}function Me(){Be&&we("over")}function Re(){J&&we("out")}}function Mt(k,L,z){(k===L||k===C(L))&&(j=C(L)),(k===null&&z||k!==L&&k!==C(L))&&(j=k)}function bt(k){u.rm(k,"gu-hide")}function _t(k){Y.dragging&&u.add(k,"gu-hide")}function Et(){I||(I=document.createElement("div"),I.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;",I.innerHTML=H.getMirrorText&&H.getMirrorText(_)||"控件",u.add(I,"gu-mirror"),H.mirrorContainer.appendChild(I),h(m,"add","mousemove",Ye),u.add(H.mirrorContainer,"gu-unselectable"),Y.emit("cloned",I,_,"mirror"))}function Ct(){if(X=document.createElement("div"),u.add(X,"gu-insertion"),_){var k=_.getBoundingClientRect();X.style.left=k.left+"px",X.style.top=k.top+"px"}ie=!1,H.mirrorContainer.appendChild(X)}function oe(){I&&(u.rm(H.mirrorContainer,"gu-unselectable"),h(m,"remove","mousemove",Ye),y(I).removeChild(I),I=null)}function ae(){X&&(y(X).removeChild(X),X=null)}function fe(k,L){for(var z=L;z!==k&&y(z)!==k;)z=y(z);return z===m?null:z}function Ie(k,L){if(!L)return ie;var z=k||L&&L.lastElementChild;if(!z)return!0;var Q=getComputedStyle(k),de=/^inline/.test(Q.getPropertyValue("display"))||/^(left|right)$/.test(Q.getPropertyValue("float"));if(de)return!0;if(L){var ye=getComputedStyle(L),Be=ye.getPropertyValue("display");if(/flex$/.test(Be)){var ke=ye.getPropertyValue("flex-direction")||"row";if(ke==="row"||ke==="row-reverse")return!je(L)}return!1}return!0}function je(k){if(!k.children||!k.children.length)return!1;for(const L of Array.from(k.children)){const Q=(L.className&&L.className.split(" ")||[]).filter(de=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(de));if(!Q.length)return!1;for(const de of Q){const ye=de.slice(de.lastIndexOf("-")+1);if(parseInt(ye,10)!==12)return!1}}return!0}function Xe(k,L){const z=L.getBoundingClientRect();if(X.style.left=z.left+"px",X.style.top=z.top+"px",ie){if(X.style.height=z.height+"px",X.style.width="4px",k){const Q=k.getBoundingClientRect();Q.top!==z.top&&(X.style.left=Q.right+"px",X.style.top=Q.top+"px",X.style.height=Q.height+"px")}}else if(X.style.height="4px",X.style.width=z.width+"px",q){const Q=q.getBoundingClientRect();z.top<Q.top&&(X.style.display="none")}L===_&&_&&(X.style.display="none")}function Ke(k){j=null;var L=k.lastElementChild;if(L){var z=L.getBoundingClientRect();ie?(X.style.left=z.right+"px",X.style.top=z.top+"px",X.style.height=z.height+"px",X.style.width="4px"):(X.style.left=z.left+"px",X.style.top=z.bottom+"px",X.style.height="4px",X.style.width=z.width+"px"),L===_&&_&&(X.style.display="none")}else X.style.display="none"}function ft(k,L){if(!H.mirrorContainer.contains(k)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(q=f(k),!q||!q.contains(k)))return;const z=document.querySelector(".dgComponentSelected"),Q=q.getBoundingClientRect();if(L-30<Q.top&&q.scrollTop>0){let de=q.scrollTop<10?q.scrollTop:10;q.scrollBy(0,-1*de),z&&q.contains(z)&&(W=W+-1*de)}if(L+30>Q.bottom&&q.scrollTop<q.scrollHeight-q.clientHeight){const de=q.scrollHeight-q.clientHeight-q.scrollTop;let ye=de<10?de:10;q.scrollBy(0,ye),z&&q.contains(z)&&(W=W+ye)}}function it(k,L,z,Q){var de=H.direction==="horizontal",ye=H.direction==="mixed",Be=L!==k?Ce():ke();return Be;function ke(){var we=k.children.length,Me,Re,Ae;for(Me=0;Me<we;Me++)if(Re=k.children[Me],Ae=Re.getBoundingClientRect(),de&&Ae.left+Ae.width/2>z||!ye&&!de&&Ae.top+Ae.height/2>Q||ye&&Ae.left+Ae.width>z&&Ae.top+Ae.height>Q)return Re;return null}function Ce(){var we=L.getBoundingClientRect();if(ye){var Me=Q-we.top,Re=z-we.left,Ae=we.bottom-Q,mt=we.right-z,Ze=Math.min(Re,mt,Me,Ae),kt;return ie?kt=mt<Re:kt=Ae===Ze||mt===Ze||Re===Ze,Te(kt)}return Te(de?z>we.left+w(we)/2:Q>we.top+M(we)/2)}function Te(we){return we?C(L):L}}function rt(k,L){return typeof H.copy=="boolean"?H.copy:H.copy(k,L)}}function f(V){const B=Array.from(window.scrollContainerList);if(B.length===1){const I=Array.from(window.scrollContainerList)[0];return document.getElementById(I)}const R=p(B);for(const I of R)if(I.contains(V))return I;return null}function p(V){const B=[];return V.forEach(R=>{const I=document.getElementById(R);I&&B.push(I)}),B.sort((R,I)=>R.contains(I)?1:I.contains(R)?-1:0),B}function h(V,B,R,I){var F={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},_={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},$={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};l.navigator.pointerEnabled?s[B](V,_[R],I):l.navigator.msPointerEnabled?s[B](V,$[R],I):(s[B](V,F[R],I),s[B](V,R,I))}function v(V){if(V.touches!==void 0)return V.touches.length;if(V.which!==void 0&&V.which!==0)return V.which;if(V.buttons!==void 0)return V.buttons;var B=V.button;if(B!==void 0)return B&1?1:B&2?3:B&4?2:0}function S(V,B,R){V=V||{};var I=V.className||"",F;return V.className+=" gu-hide",F=d.elementFromPoint(B,R),V.className=I,F}function T(){return!1}function x(){return!0}function w(V){return V.width||V.right-V.left}function M(V){return V.height||V.bottom-V.top}function y(V){return V.parentNode===d?null:V.parentNode}function b(V){return V.tagName==="INPUT"||V.tagName==="TEXTAREA"||V.tagName==="SELECT"||g(V)}function g(V){return!V||V.contentEditable==="false"?!1:V.contentEditable==="true"?!0:g(y(V))}function C(V){return V.nextElementSibling||B();function B(){var R=V;do R=R.nextSibling;while(R&&R.nodeType!==1);return R}}function E(V){return V.targetTouches&&V.targetTouches.length?V.targetTouches[0]:V.changedTouches&&V.changedTouches.length?V.changedTouches[0]:V}function O(V,B){var R=E(B),I={pageX:"clientX",pageY:"clientY"};return V in I&&!(V in R)&&I[V]in R&&(V=I[V]),R[V]}o.exports=c}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(t,o,r){o.exports=function(a,s){return Array.prototype.slice.call(a,s)}},{}],4:[function(t,o,r){var l=t("ticky");o.exports=function(s,u,d){s&&l(function(){s.apply(d||null,u||[])})}},{ticky:10}],5:[function(t,o,r){var l=t("atoa"),a=t("./debounce");o.exports=function(u,d){var m=d||{},c={};return u===void 0&&(u={}),u.on=function(f,p){return c[f]?c[f].push(p):c[f]=[p],u},u.once=function(f,p){return p._once=!0,u.on(f,p),u},u.off=function(f,p){var h=arguments.length;if(h===1)delete c[f];else if(h===0)c={};else{var v=c[f];if(!v)return u;v.splice(v.indexOf(p),1)}return u},u.emit=function(){var f=l(arguments);return u.emitterSnapshot(f.shift()).apply(this,f)},u.emitterSnapshot=function(f){var p=(c[f]||[]).slice(0);return function(){var h=l(arguments),v=this||u;if(f==="error"&&m.throws!==!1&&!p.length)throw h.length===1?h[0]:h;return p.forEach(function(T){m.async?a(T,h,v):T.apply(v,h),T._once&&u.off(f,T)}),u}},u}},{"./debounce":4,atoa:3}],6:[function(t,o,r){(function(l){var a=t("custom-event"),s=t("./eventmap"),u=l.document,d=f,m=h,c=[];l.addEventListener||(d=p,m=v),o.exports={add:d,remove:m,fabricate:S};function f(y,b,g,C){return y.addEventListener(b,g,C)}function p(y,b,g){return y.attachEvent("on"+b,x(y,b,g))}function h(y,b,g,C){return y.removeEventListener(b,g,C)}function v(y,b,g){var C=w(y,b,g);if(C)return y.detachEvent("on"+b,C)}function S(y,b,g){var C=s.indexOf(b)===-1?O():E();y.dispatchEvent?y.dispatchEvent(C):y.fireEvent("on"+b,C);function E(){var V;return u.createEvent?(V=u.createEvent("Event"),V.initEvent(b,!0,!0)):u.createEventObject&&(V=u.createEventObject()),V}function O(){return new a(b,{detail:g})}}function T(y,b,g){return function(E){var O=E||l.event;O.target=O.target||O.srcElement,O.preventDefault=O.preventDefault||function(){O.returnValue=!1},O.stopPropagation=O.stopPropagation||function(){O.cancelBubble=!0},O.which=O.which||O.keyCode,g.call(y,O)}}function x(y,b,g){var C=w(y,b,g)||T(y,b,g);return c.push({wrapper:C,element:y,type:b,fn:g}),C}function w(y,b,g){var C=M(y,b,g);if(C){var E=c[C].wrapper;return c.splice(C,1),E}}function M(y,b,g){var C,E;for(C=0;C<c.length;C++)if(E=c[C],E.element===y&&E.type===b&&E.fn===g)return C}}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(t,o,r){(function(l){var a=[],s="",u=/^on/;for(s in l)u.test(s)&&a.push(s.slice(2));o.exports=a}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(t,o,r){(function(l){var a=l.CustomEvent;function s(){try{var u=new a("cat",{detail:{foo:"bar"}});return u.type==="cat"&&u.detail.foo==="bar"}catch{}return!1}o.exports=s()?a:typeof document<"u"&&typeof document.createEvent=="function"?function(d,m){var c=document.createEvent("CustomEvent");return m?c.initCustomEvent(d,m.bubbles,m.cancelable,m.detail):c.initCustomEvent(d,!1,!1,void 0),c}:function(d,m){var c=document.createEventObject();return c.type=d,m?(c.bubbles=!!m.bubbles,c.cancelable=!!m.cancelable,c.detail=m.detail):(c.bubbles=!1,c.cancelable=!1,c.detail=void 0),c}}).call(this,typeof vt<"u"?vt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(t,o,r){var l=o.exports={},a,s;function u(){throw new Error("setTimeout has not been defined")}function d(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=u}catch{a=u}try{typeof clearTimeout=="function"?s=clearTimeout:s=d}catch{s=d}})();function m(M){if(a===setTimeout)return setTimeout(M,0);if((a===u||!a)&&setTimeout)return a=setTimeout,setTimeout(M,0);try{return a(M,0)}catch{try{return a.call(null,M,0)}catch{return a.call(this,M,0)}}}function c(M){if(s===clearTimeout)return clearTimeout(M);if((s===d||!s)&&clearTimeout)return s=clearTimeout,clearTimeout(M);try{return s(M)}catch{try{return s.call(null,M)}catch{return s.call(this,M)}}}var f=[],p=!1,h,v=-1;function S(){!p||!h||(p=!1,h.length?f=h.concat(f):v=-1,f.length&&T())}function T(){if(!p){var M=m(S);p=!0;for(var y=f.length;y;){for(h=f,f=[];++v<y;)h&&h[v].run();v=-1,y=f.length}h=null,p=!1,c(M)}}l.nextTick=function(M){var y=new Array(arguments.length-1);if(arguments.length>1)for(var b=1;b<arguments.length;b++)y[b-1]=arguments[b];f.push(new x(M,y)),f.length===1&&!p&&m(T)};function x(M,y){this.fun=M,this.array=y}x.prototype.run=function(){this.fun.apply(null,this.array)},l.title="browser",l.browser=!0,l.env={},l.argv=[],l.version="",l.versions={};function w(){}l.on=w,l.addListener=w,l.once=w,l.off=w,l.removeListener=w,l.removeAllListeners=w,l.emit=w,l.prependListener=w,l.prependOnceListener=w,l.listeners=function(M){return[]},l.binding=function(M){throw new Error("process.binding is not supported")},l.cwd=function(){return"/"},l.chdir=function(M){throw new Error("process.chdir is not supported")},l.umask=function(){return 0}},{}],10:[function(t,o,r){(function(l){var a=typeof l=="function",s;a?s=function(u){l(u)}:s=function(u){setTimeout(u,0)},o.exports=s}).call(this,t("timers").setImmediate)},{timers:11}],11:[function(t,o,r){(function(l,a){var s=t("process/browser.js").nextTick,u=Function.prototype.apply,d=Array.prototype.slice,m={},c=0;r.setTimeout=function(){return new f(u.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new f(u.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(p){p.close()};function f(p,h){this._id=p,this._clearFn=h}f.prototype.unref=f.prototype.ref=function(){},f.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(p,h){clearTimeout(p._idleTimeoutId),p._idleTimeout=h},r.unenroll=function(p){clearTimeout(p._idleTimeoutId),p._idleTimeout=-1},r._unrefActive=r.active=function(p){clearTimeout(p._idleTimeoutId);var h=p._idleTimeout;h>=0&&(p._idleTimeoutId=setTimeout(function(){p._onTimeout&&p._onTimeout()},h))},r.setImmediate=typeof l=="function"?l:function(p){var h=c++,v=arguments.length<2?!1:d.call(arguments,1);return m[h]=!0,s(function(){m[h]&&(v?p.apply(null,v):p.call(null),r.clearImmediate(h))}),h},r.clearImmediate=typeof a=="function"?a:function(p){delete m[p]}}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(cr),`${Rt.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const dr={customClass:{type:String,default:""},sort:{type:Object},filter:{type:Object},autoCheckChildren:{type:Boolean,default:!1},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},displayField:{type:String,default:"name"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},hierarchy:{type:Object,default:{cascadeOption:{autoCancelParent:!0,autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loadData:{type:Function},loading:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},pagination:{type:Object,default:{enable:!1,size:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:Rt.LocaleService.getLocaleValue("datagrid.lineNumberTitle")}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},showVerticallLines:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},virtualized:{type:Boolean,default:!1},emptyTemplate:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}}};function ur(n,e,t,o,r,l,a,s,u,d,m,c,f,p,h,v,S){const{calculateCellPositionInRow:T}=l,{columnContext:x,hasLeftFixedColumn:w,hasRightFixedColumn:M}=a,{gridDataStyle:y,leftFixedGridDataStyle:b,rightFixedGridDataStyle:g}=p,{renderDataRow:C}=ce.getHierarchyRow(n,e,x,S,s,u,d,m,c,f,p,h,v),E=[C];function O(F,_){const $=T(F);return S.value.filter(P=>P.visible!==!1).map((P,A)=>E[P.type](P,$,_,A))}function V(){return i.createVNode("div",{ref:o,class:"fv-grid-content-left-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:b.value},[O(x.value.leftColumns.filter(F=>F.visible),"left")])])}function B(){return i.createVNode("div",{ref:t,class:"fv-grid-content-primary"},[i.createVNode("div",{class:"fv-grid-data",style:y.value},[O(x.value.primaryColumns.filter(F=>F.visible),"primary")])])}function R(){return i.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[i.createVNode("div",{class:"fv-grid-data",style:g.value},[O(x.value.rightColumns.filter(F=>F.visible),"right")])])}function I(){const F=[];return w.value&&F.push(V()),F.push(B()),M.value&&F.push(R()),F}return{renderDataArea:I}}const fr=i.defineComponent({name:"FTreeGrid",props:dr,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged","selectionUpdate"],setup(n,e){var Zn,Jn;const o=((Zn=n.rowOption)==null?void 0:Zn.height)||28,r=i.ref(20),l=i.ref(n.columns),a=ce.useIdentify(n),{idField:s}=a,u=i.ref(),d=i.ref(),m=i.ref(),c=i.ref(),f=i.ref(),p=i.ref([]),h=i.ref(!1),v=i.ref(((Jn=n.rowOption)==null?void 0:Jn.wrapContent)||!1),S=ce.useGroupData(n,a),T=ce.useFilter(n,e),x=ce.useHierarchy(n),{collapseField:w}=x,{showLoading:M,renderLoading:y}=ce.useLoading(n,u),b=ce.useDataView(n,new Map,T,x,a),{dataView:g}=b,C=ce.useSelection(n,b,a,p,e),{showSelection:E,selectedValues:O}=C,V=ce.useSelectHierarchyItem(n,p,b,a,C,e),B=i.computed(()=>n.disabled),R=i.computed(()=>n.virtualized?Math.min(b.dataView.value.length,r.value):b.dataView.value.length),I=ce.usePagination(n,b),{shouldRenderPagination:F}=I,{containerStyleObject:_}=ce.useDataViewContainerStyle(n),$=ce.useCommandColumn(n),{applyCommands:P}=$;P(l);const{applyColumnSetting:A,removeColumnSetting:j}=ce.useSettingColumn(n);n.showSetting&&A(l);const N=ce.useColumn(n,e),D=ce.useSort(n),{applyColumnSorter:J,columnContext:ne,updateColumnRenderContext:X}=N;J(b,D);const ie=ce.useGroupColumn(n,ne),W=ce.useRow(n,e,C,a),q=ce.useEdit(n,e,a,W,p),H=ce.useVisualDataBound(n),Y=ce.useVisualDataCell(n,q,H),se=ce.useVisualDataRow(n,b,q,x,a,H,Y),pe=ce.useVisualData(n,l,b,R,0,se),{getVisualData:me}=pe,ue=ce.useCellPosition(n,ne),xe=ce.useSidebar(n,C),{sidebarWidth:Pe}=xe,he=ce.useVirtualScroll(n,b,p,ne,pe,R,0,Pe),{onWheel:ze,dataGridWidth:G,viewPortHeight:U,viewPortWidth:K,resetScroll:Fe,updateVisibleRowsOnLatestVisibleScope:Ee}=he,$e=ce.useFitColumn(n,ne,d,K,ie),{calculateColumnsSize:Je}=$e,tt=ce.useFilterHistory(),Qe=ce.useColumnFilter(d,f,b,tt,he),Ue=ce.useDragColumn(n,e,N,b,ie,S,he),Z=i.computed(()=>{const re={"fv-grid":!0,"fv-grid-bordered":n.showBorder,"fv-grid-horizontal-bordered":n.showHorizontalLines,"fv-datagrid-strip":n.showStripe};return ee.getCustomClass(re,n.customClass)}),ge=i.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":h.value,"fv-grid-wrap-content":v.value})),{renderDataArea:_e}=ur(n,e,m,c,f,ue,N,b,q,x,W,C,V,he,pe,H,p),{renderGridHeader:Oe,renderGridColumnResizeOverlay:Ye,shouldShowHeader:Mt}=ce.getColumnHeader(n,e,d,c,f,N,b,Ue,Qe,T,tt,$e,ie,C,xe,D,he,K,p),{renderDataGridSidebar:bt}=ce.getSidebar(n,W,C,xe,he),{renderDisableMask:_t}=ce.getDisableMask(),{renderHorizontalScrollbar:Et}=ce.getHorizontalScrollbar(n,d,he),{renderVerticalScrollbar:Ct}=ce.getVerticalScrollbar(n,d,he);function oe(){var re,ve,De;if(d.value&&d.value.clientHeight>0&&((re=d.value)==null?void 0:re.clientWidth)>0){const Ge=Math.ceil(d.value.clientHeight/o);Ge>r.value&&(r.value=Ge,Ee()),U.value=((ve=m.value)==null?void 0:ve.clientHeight)||0,G.value=((De=d.value)==null?void 0:De.clientWidth)||0,Je()}}i.onMounted(()=>{d.value&&(r.value=Math.max(Math.ceil(d.value.clientHeight/o),r.value),p.value=me(0,R.value+0-1),en.useResizeObserver(d.value,oe),Je(),i.nextTick(()=>{d.value&&(G.value=d.value.clientWidth),m.value&&(K.value=m.value.clientWidth,U.value=m.value.clientHeight)})),M.value&&y()}),i.onUnmounted(()=>{}),i.watch(K,()=>{d.value&&Je()});function ae(re){b.collapseTo(re),b.reOrderVisibleIndex(),Fe()}function fe(re){b.expandTo(re),b.reOrderVisibleIndex(),Fe()}function Ie(){const re=C.getSelectionRow();return re?re.dataIndex-1:-1}function je(){const re=Ie();b.insertNewDataItem(re),p.value=me(0,R.value+0-1)}function Xe(){const re=Ie();b.insertNewChildDataItem(re),p.value=me(0,R.value+0-1)}function Ke(re,ve){const De=p.value.find(et=>et.raw[s.value]===ve),Ge=De?De.dataIndex-1:-1;b.insertNewChildDataItems(re,Ge)}function ft(){const re=Ie(),ve=V.getNextSelectableHierarchyItemId(re);b.removeHierarchyDataItem(re),p.value=me(0,R.value+0-1),ve&&V.selectItemById(ve)}function it(re){q.onEditingRow(re)}function rt(re){q.acceptEditingRow(re)}function k(re){q.cancelEditingRow(re)}function L(re){re&&(l.value=re,P(l),X(l.value),J(b,D),Je())}i.watch(()=>n.columns,re=>{L(re)});function z(re,ve){re&&(b.load(re),b.reOrderVisibleIndex(),ve!=null&&ve.keepScrollPosition?he.scrollTo(he.offsetY.value):Fe())}function Q(re){V.selectItemById(re)}function de(re){const ve=p.value.find(De=>De.raw[a.idField.value]===re);ve&&W.clickRowItem(ve)}function ye(re){W.activeRowById(re)}function Be(re){V.selectItemByIds(re)}function ke(){return C.getSelectedItems()}function Ce(){C.clearSelection()}const Te=i.computed(()=>!p.value||!p.value.length),{renderEmpty:we}=ce.getEmpty(n,e);function Me(){return C.getSelectionRow()}function Re(re){V.unSelectItemByIds(re)}function Ae(){return C.currentSelectedDataId.value}function mt(re,ve,De){const Ge=g.value.find(et=>et[s.value]===re);if(Ge){if(Object.keys(Ge).forEach(qe=>{Object.prototype.hasOwnProperty.call(ve,qe)&&(Ge[qe]=ve[qe])}),De){const{collapseField:qe,disabledField:Vt,checkedField:It,visibleField:Pt}=De;qe&&!Ne.isUndefined(ve[qe])&&(Ge.__fv_collapse__=ve[qe]),It&&!Ne.isUndefined(ve[It])&&(Ge.__fv_checked__=ve[It]),Vt&&!Ne.isUndefined(ve[Vt])&&(Ge.__fv_disabled__=ve[Vt]),Pt&&!Ne.isUndefined(ve[Pt])&&(Ge.__fv_visible__=ve[Pt])}const et=p.value.find(qe=>qe.raw[s.value]===re),Qn=p.value.findIndex(qe=>qe.raw[s.value]===re);if(et){if(et.raw=Ge,Object.keys(et.data).forEach(qe=>{et.data[qe].updateData(Ge)}),De){const{collapseField:qe,disabledField:Vt,checkedField:It,visibleField:Pt}=De;qe&&!Ne.isUndefined(ve[qe])&&(et.collapse=ve[qe]),It&&!Ne.isUndefined(ve[It])&&(et.checked=ve[It]),Vt&&!Ne.isUndefined(ve[Vt])&&(et.disabled=ve[Vt]),Pt&&!Ne.isUndefined(ve[Pt])&&(et.visible=ve[Pt])}p.value=[...p.value.slice(0,Qn),et,...p.value.slice(Qn+1)],b.updateSummary()}}}function Ze(re){return Object.prototype.hasOwnProperty.call(re,"raw")?b.hasRealChildren(re.raw):b.hasRealChildren(re)}function kt(re){const ve=b.dataView.value.find(De=>De[s.value]===re);return ve?ve[w.value]:""}function Kt(){return w.value}i.watch(()=>n.showSetting,(re,ve)=>{re!==ve&&(re?A(l):j(l),L(l.value))});function rl(re){return p.value.filter(ve=>re.includes(ve.raw[n.idField]))}function al(re){const ve=a.idField.value,De=p.value.find(Ge=>Ge.raw[ve]===re);De&&W.changeRow(De)}function ll(){C.keepSelectingOnPaging.value||Ce(),b.updateVisibleDataSummary(p.value)}e.expose({activeRowById:ye,addNewDataItem:je,addNewChildDataItem:Xe,addChildrenToNode:Ke,collapseTo:ae,expandTo:fe,removeDataItem:ft,editDataItem:it,acceptDataItem:rt,cancelDataItem:k,updateColumns:L,updateDataSource:z,selectItemById:Q,selectItemByIds:Be,getSelectedItems:ke,clearSelection:Ce,getSelectionRow:Me,clickRowItemById:de,unSelectItemByIds:Re,getCurrentRowId:Ae,reassignRowData:mt,hasChildren:Ze,getCollapseField:Kt,getCollapseStatusById:kt,getVisibleDataByIds:rl,selectRowById:al,updateDerivedData:ll});const sl=i.computed(()=>{const re={};return he.shouldShowHorizontalScrollbar.value&&(re.paddingBottom="10px"),he.shouldShowVirticalScrollbar.value&&(re.paddingRight="10px"),re}),cl=i.computed(()=>({..._.value,borderRadius:"5px"}));ce.getPagination(n,e,b,he,I,C);const dl=i.computed(()=>({"d-flex":!0,"justify-content-between":F.value&&E.value,"justify-content-end":F.value&&!E.value,"position-relative":!0})),ul=i.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:fl}=ce.getSummary(n,b,N);return()=>i.createVNode("div",{ref:u,class:Z.value,style:cl.value,onWheel:ze},[d.value&&Mt.value&&Oe(),i.createVNode("div",{ref:d,class:ge.value,onMouseover:()=>h.value=!0,onMouseleave:()=>h.value=!1,style:sl.value},[d.value&&bt(p),d.value&&_e(),d.value&&Te.value&&we(),d.value&&Et(),d.value&&Ct()]),d.value&&fl(),E.value&&i.createVNode("div",{class:dl.value},[E.value&&i.createVNode("div",{class:ul.value},[i.createVNode("div",null,["已选:"+O.value.length,i.createTextVNode(" 条")])])]),Ye(),B.value&&_t()])}});ee.withInstall(fr);const mr=new Map([["appearance",Lt]]);function pr(n,e,t){return e}yt({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"]},mr,pr,{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 hr="root-viewmodel";class gr{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),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.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:l}=e;l==null||l.forEach(s=>{if(s.$type===ee.FormSchemaEntityField$Type.SimpleField){const u=Ne.cloneDeep(s),d=this.resolveControlClassByFormColumns(e),m=this.controlCreatorUtils.setFormFieldProperty(u,"",d);m&&r.push(m)}});const{templateId:a}=this.formSchemaUtils.getFormSchema().module;return a==="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:hr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const t=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===ee.FormSchemaEntityField$Type.SimpleField){let l="blur";const a=r.type.name;(a===ee.FormSchemaEntityFieldTypeName.Enum||a===ee.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),t.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}}),t}}function yr(n,e,t,o){var l,a,s,u,d,m;const r=t.parentComponentInstance;if(r&&o){const c=(l=r.schema)==null?void 0:l.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((a=t.bindingSourceContext)==null?void 0:a.entityTitle)||((u=(s=t.bindingSourceContext)==null?void 0:s.bindingEntity)==null?void 0:u.name)||"标题",componentType:"form",formColumns:c==="splitter-pane"?1:4,parentContainerId:r.schema.id,bindTo:((d=t.bindingSourceContext)==null?void 0:d.bindTo)||"/",selectedFields:(m=t.bindingSourceContext)==null?void 0:m.bindingEntityFields};return new gr(n,o).createComponent(p)}else return e}function vr(n,e,t){return e}yt({customClass:{type:String,default:""},customStyle:{type:String,defaut:""},visible:{type:Boolean,default:!0},adaptForLanguage:{type:Boolean,default:!0}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0},labelAutoOverflow:{description:"",type:"boolean",default:!1},adaptForLanguage:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Yt,yr);const _n=[{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 br(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 Cr(n){var e;return"请输入正确的"+((e=_n.find(t=>t.key===n))==null?void 0:e.value)}const wr={convertTo:(n,e,t,o)=>{n.editor.formatValidation||(n.editor.formatValidation={type:"none"}),n.editor.formatValidation.type=t,n.editor.formatValidation.expression=br(t),n.editor.formatValidation.message=Cr(t)},convertFrom:(n,e,t)=>n.editor.formatValidation?e==="type"?n.editor.formatValidation[e]||"none":n.editor.formatValidation[e]:"none"},En={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 Sr extends ot.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 l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(r=l==null?void 0:l.schemaField)!=null&&r.type&&(t=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:t,needValid:!0}},enableViewPassword:{description:"",title:"启用密码",visible:!1,type:"boolean"}})}getFormatValidation(e){var o,r,l;const t={title:"输入格式校验",description:"输入格式校验",properties:{type:{title:"输入类型",type:"enum",description:"输入类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:_n},refreshPanelAfterChanged:!0,$converter:wr,parentPropertyID:"formatValidation"}}};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:En,parentPropertyID:"formatValidation"}),((l=e.editor.formatValidation)==null?void 0:l.type)==="custom"&&(t.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:En,parentPropertyID:"formatValidation"}),t}}var kn=(n=>(n.SimpleField="SimpleField",n.ComplexField="ComplexField",n))(kn||{});function xr(n,e,t){function o(){const a=t.componentId;if(!a)return!1;const s=n.formSchemaUtils.getViewModelIdByComponentId(a);if(!s)return!1;const{schema:u}=e,{designViewModelUtils:d}=n,m=d.getDgViewModel(s),c=m==null?void 0:m.fields.find(f=>f.id===u.binding.field);return!(!c||c.$type!==kn.SimpleField)}function r(){const{schema:a}=e;return!!n.formSchemaUtils.getVariableById(a.binding.field)}function l(){var u;const{schema:a}=e;let s=!0;if(!n||!((u=a.binding)!=null&&u.field))return s;switch(a.binding.type){case Nt.Form:{s=o();break}case Nt.Variable:s=r()}return s}return{checkBindingFieldValidation:l}}yt({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Fn,Yt,void 0);const Fr={$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"]},Tr={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};pt.createPropsResolver(Tr,Fr,or,vr);const Mr={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function Xt(){return new DOMException("The request is not allowed","NotAllowedError")}async function _r(n){if(!navigator.clipboard)throw Xt();return navigator.clipboard.writeText(n)}async function Er(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 Xt()}async function kr(n){try{await _r(n)}catch(e){try{await Er(n)}catch(t){throw t||e||Xt()}}}function Vr(){async function n(e){await kr(e)}return{onCopy:n}}function Ir(n,e,t,o){const r=i.ref(14),l=i.ref(140),a=i.ref(""),s=i.ref(o.value.length),u=i.computed(()=>o.value),d=i.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function m(c){if(c.currentTarget){const f=c.currentTarget.value||"";s.value=f.length}}return()=>i.createVNode(i.Fragment,null,[i.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:l.value,onInput:c=>m(c)},[u.value]),i.createVNode("span",{class:"textarea-wordcount",title:a.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+l.value])])}function Pr(n,e,t,o){const r=Ir(n,e,t,o),l=new Map([["text-area",r]]);function a(s){return l.get(s)||null}return{getEditorRender:a}}function Nr(){const n=i.ref(!1),e=i.ref("复制成功");return{feedbackStyle:i.computed(()=>{const o={position:"absolute",left:"50%",top:"50%","min-width":"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease",padding:"0 10px"};return o.opacity=n.value?"0.8":"0",o.display=n.value?"":"none",o}),feedbackMessage:e,toShowFeedback:n}}function Br(n,e){const t=e.getEditorRender(n.promptEditorType);return()=>t&&t()}function Or(n,e){function t(p){if(p==null)return 0;let h=0;for(let v=0;v<p.length;v++){const S=p.charCodeAt(v);S>=0&&S<=128?h++:h=h+2}return h}function o(p,h){if(p!==""&&p!==void 0&&p!==null){p=""+p;const v=p.length;let S="",T=0;for(let x=0;x<v;x++){const w=p.charAt(x);if(T++,encodeURI(w).length>4&&T++,S=S.concat(w),T>=h)return S=S.concat("..."),S}if(T<h)return p}return""}const r=i.computed(()=>!!n.value&&!!n.value.date),l=i.computed(()=>{const p=n.value&&n.value.date||"";return`${e.exception.happend} : ${p}`}),a=i.computed(()=>!!n.value&&!!n.value.detail),s=i.computed(()=>n.value?t(n.value.detail)>160:!1),u=i.ref(!1),d=i.computed(()=>u.value?e.exception.collapse:e.exception.expand),m=i.computed(()=>{const p=e.exception.detail+" : "+(n.value&&n.value.detail)||"";return u.value?p:o(p,160)}),c=i.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function f(){u.value=!u.value}return()=>i.createVNode("div",{class:"toast-msg-detail"},[r.value&&i.createVNode("div",null,[l.value]),a.value&&i.createVNode("div",{class:"exception_wrap"},[i.createVNode("div",{class:"exception_error_msg"},[i.createVNode("div",{innerHTML:m.value},null),s.value&&i.createVNode("span",{style:c.value,onClick:f},[d.value])])])])}function jr(n){return()=>i.createVNode("p",{class:"toast-msg-detail",innerHTML:n.value},null)}function Rr(n,e,t,o,r){const l=i.ref(n.exceptionInfo),a=i.computed(()=>{const h=e.value==="question"?"warning":e.value,v={"f-icon":!0},S=`f-icon-${h}`;return v[S]=!0,v}),s=i.computed(()=>t.value||l.value&&l.value.message),u=i.computed(()=>o.value),d=i.computed(()=>!!o.value),m=i.computed(()=>!!l.value);function c(){return m.value?Or(l,r):d.value?jr(u):()=>null}const f=c(),p=i.computed(()=>r.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:a.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[i.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),f()])])}function $r(n,e,t,o){const{onCopy:r}=e,{toShowFeedback:l}=t,a=i.ref(o.exception.copySuccess||"复制成功"),s=i.ref(o.exception.copy||"复制详细信息"),u=i.ref(n.exceptionInfo||{date:"",message:"",detail:""}),d=i.computed(()=>u.value&&u.value.detail||"");function m(c){r(d.value).catch(f=>{a.value=o.exception.copyFailed||"复制失败"}).finally(()=>{l.value=!0,setTimeout(()=>{l.value=!1},700)})}return()=>i.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[i.createVNode("span",{onClick:m,style:"cursor: pointer;"},[s.value])])}function Ar(n,e,t,o,r){const l=i.ref(n.type),a=i.ref(n.buttons),s=i.ref(n.exceptionInfo),u=i.ref(r.ok||n.okButtonText),d=i.ref(r.cancel||n.cancelButtonText),m=i.ref(n.showCancelButton),c=i.ref(n.showOkButton),f=i.computed(()=>!!(a.value&&a.value.length)),p=i.computed(()=>!!(s.value&&s.value.detail)),h=i.computed(()=>!(a.value&&a.value.length)&&(c.value||m.value)),v=$r(n,t,o,r);u.value==="关闭"?u.value=r.close:u.value==="知道了"&&(u.value=r.exception.roger);function S(x){l.value==="question"&&e.emit("reject"),e.emit("close")}function T(x){l.value==="question"&&e.emit("accept"),e.emit("close")}return()=>i.createVNode("div",{class:"modal-footer"},[p.value&&v(),h.value&&m.value&&i.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:S},[d.value]),h.value&&c.value&&i.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:T},[u.value]),f.value&&a.value.length&&a.value.map(x=>i.createVNode("button",{type:"button",onClick:x.handle,class:x.class},[x.iconClass&&i.createVNode("span",{class:x.iconClass},null),x.text]))])}function Lr(n){const{t:e,locale:t}=ut.useI18n();function o(r,l,a){return l===a?e(r):l}return{yes:o("messageBox.yes")||"是",no:o("messageBox.no")||"否",close:o("messageBox.close")||"关闭",ok:o("messageBox.ok",n.okButtonText,"确定")||"确定",cancel:o("messageBox.cancel",n.cancelButtonText,"取消")||"取消",title:o("messageBox.title")||"系统提示",errorTitle:o("messageBox.errorTitle")||"错误提示",exception:{expand:o("messageBox.exception.expand")||"展开",collapse:o("messageBox.exception.collapse")||"收起",happend:o("messageBox.exception.happend")||"发生时间",detail:o("messageBox.exception.detail")||"详细信息",copy:o("messageBox.exception.copy")||"复制详细信息",copySuccess:o("messageBox.exception.copySuccess")||"复制成功",copyFailed:o("messageBox.exception.copyFailed")||"复制失败",roger:o("messageBox.exception.roger")||"知道了"},locale:t.value}}const Dt=i.defineComponent({name:"FMessageBox",props:Mr,emits:["accept","reject","close"],setup(n,e){const t=Lr(n),o=i.ref(n.type),r=i.ref(n.title),l=i.ref(n.detail),a=i.computed(()=>{const T={"modal-tips":!0,"d-flex":!0,"flex-row":!0},x=`messager-type-${o.value}`;return T[x]=!0,T}),s=i.computed(()=>{const T={cursor:"default"};return o.value==="prompt"?T.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(T.padding="0.5rem 1.5rem 1rem 1.5rem"),T}),u=Vr(),d=Pr(n,o,r,l),m=Nr(),{feedbackStyle:c,feedbackMessage:f}=m;f.value=t.exception.copySuccess;function p(){return i.createVNode("div",{style:c.value},[f.value])}function h(){switch(o.value){case"prompt":return Br(n,d);default:return Rr(n,o,r,l,t)}}const v=h(),S=Ar(n,e,u,m,t);return()=>i.createVNode("div",{class:"farris-messager"},[!n.exceptionInfo&&i.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),i.createVNode("section",{class:a.value,style:s.value},[v()]),S(),p()])}}),dt=class dt{static show(e){const t=i.reactive({...e}),o=!1,r=t.type==="error"||t.type==="prompt",l=t.type==="error"?"错误提示":t.type==="prompt"&&t.title||"",a=t.acceptCallback||(()=>{}),s=t.rejectCallback||(()=>{});let u=null,d=new mn(dt.app);const m=()=>{u&&(u==null||u.destroy(),d=null)};return u=d==null?void 0:d.open({class:"modal-message modal-message-type-info",title:l,showButtons:o,showHeader:r,width:t.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>i.createVNode(Dt,i.mergeProps(t,{onAccept:a,onReject:s,onClose:m}),null)}),d==null?void 0:d.getCurrentModal()}static info(e,t){const o=i.reactive({type:"info",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});dt.show(o)}static warning(e,t){const o=i.reactive({type:"warning",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});dt.show(o)}static success(e,t){const o=i.reactive({type:"success",title:e,detail:t,okButtonText:"关闭",showCancelButton:!1});dt.show(o)}static error(e,t,o){const r=i.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:o,message:e,detail:t}});dt.show(r)}static prompt(e,t){const o=i.reactive({type:"prompt",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消"});dt.show(o)}static question(e,t,o,r){const l=i.reactive({type:"question",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:o,rejectCallback:r});dt.show(l)}};le(dt,"app",null);let qt=dt;Dt.install=n=>{n.component(Dt.name,Dt),qt.app=n,n.provide("FMessageBoxService",qt)};class Bt extends Mn{constructor(t,o){super(t,o);le(this,"responseLayoutEditorFunction");le(this,"bindingVarible");le(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=sr(this.formSchemaUtils)}getCommonPropertyConfig(t,o,r="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(t,o,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t,o),this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"form-group")}getPropertyConfig(t,o){return this.getCommonPropertyConfig(t,o,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig.categories.expressions=this.getExpressionConfig(t,"Field"),this.propertyConfig}getGridFieldEdtiorPropConfig(t,o){return this.propertyConfig.categories={},this.getCommonPropertyConfig(t,o,"Grid"),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,r="Card"){const l=this;this.setDesignViewModelField(t);const{canChangeControlType:a,editorTypeList:s}=this.getAvailableEditorType(t),u={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:s,readonly:!a}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},showLabelType:{description:"标签显示方式:1、显示:显示标签 2、占位:保留标签空间,但不显示文本 3、不显示:不显示标签",title:"标签显示",type:"enum",editor:{data:[{id:"visible",name:"显示"},{id:"reserve-space",name:"占位"},{id:"none",name:"不显示"}]}},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:t,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0,readonly:this.formSchemaUtils.designerMode==="PC_RTC"&&!t.isRtcControl}},setPropertyRelates(d,m,c){if(d)switch(d&&d.propertyID){case"type":{l.changeControlType(t,d,o);break}case"label":{d.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(t,d,c);break}}}};return r.toLocaleLowerCase()!=="card"&&delete u.properties.showLabelType,u}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!==ee.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(t){var l;const o=this.checkCanChangeControlType(t,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:t.editor.type,value:((l=te[t.editor.type])==null?void 0:l.name)||t.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===ee.FormSchemaEntityField$Type.SimpleField?r=jt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(r=jt.getEditorTypesByMDataType(this.bindingVarible.type,this.designViewModelField.multiLanguage)),{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",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(t,r.componentId)}}},setPropertyRelates(l,a){if(l)switch(l&&l.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,r.componentId||t.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(t.id,o),delete t.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(l.propertyValue,t.id,this.componentId),ht.value++;break;case"style":{ht.value++;break}}}}}getEditorProperties(t){return this.getComponentConfig(t)}changeControlType(t,o,r){const l=o.propertyValue,a=r&&r.parent&&r.parent.schema;if(!a)return;const s=a.contents.findIndex(m=>m.id===t.id);if(s===-1)return;const u=a.contents[s];let d;if(this.designViewModelField){const f=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(h=>h.id===this.designViewModelField.id).fieldSchema||{};f.editor||(f.editor={}),f.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,f,!1),d=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}d||(d=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(d,{id:u.id,appearance:u.appearance,size:u.size,label:u.label,binding:u.binding}),Object.prototype.hasOwnProperty.call(u,"visible")&&Object.assign(d,{visible:u.visible}),u.editor&&["readonly","required","placeholder"].map(m=>{Object.prototype.hasOwnProperty.call(u.editor,m)&&(d.editor[m]=u.editor[m])}),r!=null&&r.updateContextSchema?r.updateContextSchema(d):(r.schema=Object.assign(u,d),Object.assign(t,d)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(m=>m.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(m=>m.classList.remove("dgComponentFocused")),ht.value++,i.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(t,o={},r={},l){var f;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},o),s=(f=t.binding)!=null&&f.field?[]:["Const","Variable","StateMachine"],u=this.getPropertyEditorParams(t,s,"readonly"),d=this.getPropertyEditorParams(t,s,"required"),m={readonly:{description:"",title:"只读",editor:u},required:{description:"",title:"必填",type:"boolean",editor:d},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const p in r)m[p]=Object.assign(m[p]||{},r[p]);const c=this;return{...a,properties:{...m},setPropertyRelates(p,h){if(p){switch(p.propertyID){case"readonly":case"required":c.afterMutilEditorChanged(t,p);break}l&&l.bind(c)(p,t,h)}}}}updateUnifiedLayoutAfterControlChanged(t,o,r){const l=t.split(" ");let a=l.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),s=l.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),u=l.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),d=l.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));a=a||"col-12",s=s||"col-md-"+a.replace("col-",""),u=u||"col-xl-"+s.replace("col-md-",""),d=d||"col-el-"+u.replace("col-xl-","");const m={id:o,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(u.replace("col-xl-",""),10),columnInEL:parseInt(d.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,m)}updateUnifiedLayoutAfterResponseLayoutChanged(t,o){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(t);if(!r||!r.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,l,1),o){const h=l.find(v=>v.id===o.id);Object.assign(h||{},o)}const a=l.map(h=>h.columnInSM),s=l.map(h=>h.columnInMD),u=l.map(h=>h.columnInLG),d=l.map(h=>h.columnInEL),m=this.checkIsUniqueColumn(a)?a[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null,f=this.checkIsUniqueColumn(u)?u[0]:null,p=this.checkIsUniqueColumn(d)?d[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:m,uniqueColClassInMD:c,uniqueColClassInLG:f,uniqueColClassInEL:p})}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===ee.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(t,o){t.binding&&t.binding.type===Nt.Form&&t.binding.field?(o.find(a=>a.label==="fieldValueChanging")||o.push({label:"fieldValueChanging",name:"绑定字段值变化前事件"}),o.find(a=>a.label==="fieldValueChanged")||o.push({label:"fieldValueChanged",name:"绑定字段值变化后事件"}),this.designViewModelField&&(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 Nt.Form:return t.binding.path||t.type;case Nt.Variable:return t.binding.fullPath||t.type}return t.type}getEventPropertyConfig(t,o="card",r,l){const a=this;let s=[];r&&(s=s.concat(r)),this.appendFieldValueChangeEvents(t,s);const u=a.eventsEditorUtils.formProperties(t,a.viewModelId,s);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(u),tabId:"commands",tabName:"交互",setPropertyRelates(c,f){const p=c.propertyValue;delete t[a.viewModelId],p&&(p.setPropertyRelates=this.setPropertyRelates,p.controlInfo={type:a.getControlMethodType(t),name:t.title},a.eventsEditorUtils.saveRelatedParameters(t,a.viewModelId,p.events,p)),l&&l(c,f,p);const h=a.designViewModelUtils.getDgViewModel(a.viewModelId);h&&a.designViewModelField&&h.changeField(a.designViewModelField.id,{valueChanging:t.fieldValueChanging,valueChanged:t.fieldValueChanged})}}}getExpressionConfig(t,o,r=["compute","dependency","validate"],l){return new Tn(this.formSchemaUtils).getExpressionConfig(t,o,r,l)}getBindingDataType(){return this.designViewModelField?this.designViewModelField.type.name==="Number"?"number":this.designViewModelField.type.name==="String"?"string":"boolean":"boolean"}getEditor(){return this.getBindingDataType()==="number"?this.numberEditorOptions:{}}updatePropertyValue(t,o,r){var l;t.editor[o]!==r?t.editor[o]=r:(l=this.getFormDesignerInstance())==null||l.reloadPropertyPanel()}setBooleanValue(t,o,r){let l=r;this.getBindingDataType()==="string"&&(l=(l||"").trim()||(o==="trueValue"?"true":"false"));const s=o==="trueValue"?"falseValue":"trueValue";t.editor[s]===l&&(l=l+1),this.updatePropertyValue(t,o,l)}getBooleanValueConverter(){return{convertFrom:(t,o)=>t.editor[o],convertTo:(t,o,r)=>{this.setBooleanValue(t,o,r)}}}}const Vn=Symbol("FModalService");Ft.install=n=>{n.component(Ft.name,Ft);const e=new mn(n);n.provide(Vn,e),n.provide("FModalService",e)},Ft.register=(n,e,t,o)=>{n.modal=Ft,e.modal=Fi,o.modal={callbackResolver:Ti}};function In(n,e){function t(){const o=n.beforeOpen||n.beforeClickButton||null;let r=Promise.resolve(!0);if(o){const l=o(e.value);if(typeof l>"u")return r;typeof l=="boolean"?r=Promise.resolve(l):r=l}return r}return{judgeCanOpen:t}}function Hr(n,e,t,o,r){const l=i.ref(n.buttonBehavior),a=i.ref(n.popupOnInput),s=i.computed(()=>({"input-group-append":!0,"append-force-show":n.showButtonWhenDisabled&&(n.readonly||n.disable)})),{judgeCanOpen:u}=In(n,r),d=i.computed(()=>n.showButtonWhenDisabled||(!n.editable||!n.readonly)&&!n.disable),m=i.inject(Vn,null),c=i.ref();async function f(v){if(await u()&&d.value){const S=!!e.slots.default;if(l.value==="Modal"){const T=n.modalOptions,x=m==null?void 0:m.open({...T,render:()=>e.slots.default&&e.slots.default()});c.value=x==null?void 0:x.modalRef}l.value==="Overlay"&&bi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),S&&l.value==="Popup"&&o.togglePopup(!0),S&&a.value&&o.hidePopup(),e.emit("clickButton",{origin:v,value:n.modelValue})}}function p(v){e.emit("mouseEnterIcon",v)}function h(v){e.emit("mouseLeaveIcon",v)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:p,onMouseLeaveButton:h,modalRef:c}}function Dr(n,e,t,o,r,l){const a=i.ref(!1),s=i.computed(()=>n.enableClear&&!n.readonly&&!n.disable),{changeTextBoxValue:u,hasClearClass:d}=l;function m(h){a.value=h,d.value=h}i.watch(r,()=>{m(!!r.value)});function c(h){const v=!n.readonly&&!n.disable&&n.editable,S=!n.editable;h.stopPropagation(),(v||S)&&(u(""),r.value="",m(!a.value),e.emit("clear"))}function f(h){if(s.value){if(!t.value){m(!1);return}!n.disable&&!n.readonly&&m(!0)}}function p(h){s.value&&m(!1)}return{enableClearButton:s,showClearButton:a,onClearValue:c,onMouseEnterTextBox:f,onMouseLeaveTextBox:p}}function qr(n,e,t,o,r){const l=i.computed(()=>n.popupOnInput),a=i.computed(()=>n.popupOnFocus),{shouldPopupContent:s,closeAllPopover:u}=r,d=i.ref(!1),m=i.computed(()=>n.enableTitle?t.value:""),c=i.computed(()=>(n.disable||n.readonly)&&!n.forcePlaceholder?"":n.placeholder),f=i.computed(()=>n.readonly||!n.editable),p=i.ref(!1),h=i.computed(()=>!n.disable&&p.value),v=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":h.value,"input-group--has-clear":n.enableClear&&d.value}));function T(V,B=!0){t.value=V,B&&(e.emit("change",V),e.emit("update:modelValue",V))}function x(V){s.value=!1,T(V,!0)}i.watch(()=>n.modelValue,V=>{t.value=V});function w(V){p.value=!1,e.emit("blur",V),V.stopPropagation()}function M(V){e.emit("click",V),u(),e.slots.default&&!n.disable&&!n.readonly&&n.popupOnClick&&r.togglePopup()}function y(V){!n.disable&&!n.readonly&&(p.value=!0,f.value||(e.emit("focus",V),a.value&&!s.value&&r.popup()))}function b(V){e.emit("input",V);const B=V.target.value;o.value=B,t.value!==B&&T(B,n.updateOn==="change"),l.value&&!s.value&&r.popup()}function g(V){V.target.tagName!=="INPUT"&&V.preventDefault(),V.stopPropagation()}function C(V){e.emit("keydown",V)}function E(V){V.key==="Enter"&&(l.value||a.value)&&r.hidePopup(),e.emit("keyup",V)}function O(V){const B=V.target.value;V.stopPropagation(),T(B)}return{hasFocusedTextBox:h,isTextBoxReadonly:f,textBoxClass:v,textBoxPlaceholder:c,textBoxTitle:m,inputGroupClass:S,hasClearClass:d,changeTextBoxValue:T,commitValue:x,onBlurTextBox:w,onClickTextBox:M,onFocusTextBox:y,onInput:b,onKeyDownTextBox:C,onKeyUpTextBox:E,onMouseDownTextBox:g,onTextBoxValueChange:O}}const Tt="FarrisVue_PopoverInstancesKey";function Wr(n,e,t,o){const r=i.ref(),l=i.ref(!1),{judgeCanOpen:a}=In(n,o);i.watch(()=>r.value,(p,h)=>{window[Tt]=window[Tt]||new WeakMap,p?window[Tt].set(t.value,p):window[Tt].delete(t.value)});function s(){if(window[Tt]){const p=window[Tt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(h=>{const v=p.get(h);v&&h!==t.value&&!t.value.closest(".popover-fitcontent")&&v.hide()})}}function u(){const p=r.value;p&&p.show(t.value)}async function d(p=!1){if(!!e.slots.default){if(!p&&!l.value&&!await a())return;l.value=!l.value,l.value&&(await i.nextTick(),u())}}async function m(p=!1){if(!!e.slots.default){if(!p&&!await a())return;l.value=!0,await i.nextTick(),u()}}function c(){l.value=!1}function f(){l.value=!0,i.nextTick(()=>{u()})}return{hidePopup:c,showPopup:f,popup:m,shouldPopupContent:l,togglePopup:d,popoverRef:r,closeAllPopover:s}}function zr(n,e,t){const o=i.ref(),{isTextBoxReadonly:r,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:s,onBlurTextBox:u,onClickTextBox:d,onFocusTextBox:m,onInput:c,onKeyDownTextBox:f,onKeyUpTextBox:p,onMouseDownTextBox:h,onTextBoxValueChange:v}=t,S=i.ref(n.id),{uuid:T}=ee.useGuid(),x=i.computed(()=>({"border-top-right-radius":"6px","border-bottom-right-radius":"6px"}));i.onMounted(()=>{var g,C;n.selectOnCreated&&((g=o.value)==null||g.select()),n.focusOnCreated&&((C=o.value)==null||C.focus({preventScroll:!0})),S.value||(S.value="button-edit_"+T(8)),S.value=S.value+"-textbox"});const w=i.ref(!1),M=g=>{g.preventDefault(),w.value=!0},y=g=>{g.preventDefault(),w.value=!1,c(g)};function b(g){w.value||c(g)}return()=>i.createVNode("input",{id:n.id?n.id+"-textbox":void 0,ref:o,name:"input-group-value",autocomplete:n.autoComplete?"on":"off",class:l.value,style:x.value,disabled:n.disable,maxlength:n.maxLength,minlength:n.minLength,placeholder:a.value,readonly:r.value,tabindex:n.tabIndex,title:s.value,type:n.inputType,value:e.value,onBlur:u,onChange:v,onClick:d,onFocus:m,onInput:b,onKeydown:f,onKeyup:p,onMousedown:h,onCompositionend:y,onCompositionstart:M},null)}function Gr(n,e,t){const o=i.ref(n.separator),r=i.computed(()=>n.readonly||n.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:s,onClickTextBox:u,textBoxPlaceholder:d}=t,m=i.computed(()=>e.value?e.value.split(o.value).map(h=>({name:h,selectable:!0})):[]);function c(h){l(h.map(v=>v.name).join(o.value),!0)}i.watch(()=>n.separator,h=>{o.value=h});const f=i.ref(!n.disable&&!n.readonly);i.watch([()=>n.disable,()=>n.readonly],([h,v],[S,T])=>{f.value=!h&&!v});function p(h){u(h)}return()=>i.createVNode(to,{tabindex:n.tabIndex,onFocus:a,onBlur:s,id:`${n.id}-tag-editor`,class:"form-control",placeholder:d.value,data:m.value,showClose:!r.value,showInput:!0,disable:r.value,onChange:c,onClick:p},null)}function Ur(n,e,t,o){const{buttonGroupClass:r,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:s}=t,{enableClearButton:u,showClearButton:d,onClearValue:m}=o,c=i.ref(),f=Ne.debounce(h=>{l(h)},n.buttonBehavior==="Modal"?0:200),p=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>i.createVNode("div",{id:n.id?`${n.id}-button-group`:void 0,class:r.value},[u.value&&i.withDirectives(i.createVNode("span",{class:"input-group-text input-group-clear",onClick:m,onMousedown:p},[i.createVNode("i",{class:"f-icon modal_close"},null)]),[[i.vShow,d.value]]),e.slots.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",onClick:f,onMouseenter:a,onMouseleave:s},[e.slots.buttonContent()]):n.buttonContent?i.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:n.buttonContent,ref:c,onClick:h=>f(h),onMouseenter:a,onMouseleave:s},null):null]),buttonHandleElement:c}}function Yr(n,e,t){const o=i.ref(n.popupMinWidth),{hidePopup:r,popoverRef:l}=t,a=()=>{e.emit("shown")};return()=>i.createVNode(Kn,{id:`${n.id}-popover`,ref:l,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,onShown:a,beforeClose:n.beforeClosePopup,limitContentBySpace:n.limitContentBySpace},{default:()=>{var s,u;return[(u=(s=e.slots).default)==null?void 0:u.call(s)]}})}const Xr=i.defineComponent({name:"FButtonEdit",props:pi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(n,e){const t=i.ref(),o=i.ref(n.customClass),r=i.ref(n.modelValue),l=Wr(n,e,t,r),{shouldPopupContent:a,hidePopup:s,showPopup:u,togglePopup:d}=l,m=Hr(n,e,t,l,r),c=i.ref(""),f=qr(n,e,r,c,l),{hasFocusedTextBox:p,commitValue:h,inputGroupClass:v}=f,S=Dr(n,e,r,p,c,f),{onMouseEnterTextBox:T,onMouseLeaveTextBox:x}=S,w=i.ref(!1),M=i.computed(()=>{const _={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!n.wrapText};return o.value&&o.value.split(" ").reduce(($,P)=>($[P]=!0,$),_),_}),y=i.computed(()=>({overflow:n.wrapText?"hidden":""})),b=i.computed(()=>({paddingLeft:"3px",backgroundColor:"#fff"}));function g(){if(!n.multiSelect||n.inputType!=="tag"||!t.value)return 0;let _=0;const $=Array.from(t.value.querySelectorAll(".farris-tag-item"));return $&&$.length&&(_=$.map(P=>P.offsetTop).filter(P=>P>20).length),_}const C=i.ref(g());i.onUpdated(()=>{C.value=g()});function E(){return n.multiSelect&&n.inputType==="tag"?()=>i.createVNode(i.Fragment,null,[Gr(n,r,f)(),!!C.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("+"),C.value])])]):zr(n,r,f)}let O=E();i.watch([()=>n.multiSelect,()=>n.inputType],()=>{O=E()});const{renderButtonGroup:V,buttonHandleElement:B}=Ur(n,e,m,S),R=Yr(n,e,l),I=i.ref(a.value),F={displayText:c,commitValue:h,elementRef:t,hidePopup:s,showPopup:u,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:d,openDialog:()=>{B.value&&n.buttonBehavior==="Modal"&&B.value.click()},getModal:()=>{var _;return n.buttonBehavior==="Modal"?(_=m.modalRef.value)==null?void 0:_.value:null},getTextbox:()=>{var _;return(_=t.value)==null?void 0:_.querySelector("input")},forceClosePopup:()=>{I.value=!1,w.value=!0,a.value=!1}};return i.onMounted(()=>{t.value.componentInstance=F,window.onresize=()=>{document.body.click()}}),i.onBeforeUnmount(()=>{var _;window.onresize=null,(_=window[Tt])==null||_.delete(t.value)}),e.expose(F),i.watch(()=>a.value,async(_,$)=>{if(w.value){I.value=_,w.value=!1;return}if(!_&&n.beforeClosePopup&&typeof n.beforeClosePopup=="function"){try{const P=await n.beforeClosePopup();I.value=!P,(!P||n.readonly)&&(a.value=!0)}catch(P){console.error("Error in beforeClosePopup:",P),I.value=$,a.value=$}return}I.value=_}),()=>{var _,$;return i.createVNode(i.Fragment,null,[i.createVNode("div",i.mergeProps(e.attrs,{ref:t,class:M.value,id:n.id?n.id:void 0,style:y.value}),[i.createVNode("div",{id:n.id?`${n.id}-input-group`:void 0,class:v.value,style:b.value,onMouseenter:T,onMouseleave:x},[($=(_=e.slots).precontent)==null?void 0:$.call(_),O(),V()])]),I.value&&R()])}}}),Pn=new Map([["appearance",Lt],["column","columnOption"],["command","commandOption"]]),Nn=new Map([]),Zr="root-viewmodel";class Jr{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),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(r),l.module.components.push(o),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(t,e,r)}wrapContainerSectionForComponent(e,t,o){var u,d,m,c,f,p,h,v,S,T,x;const r=(d=(u=t==null?void 0:t.parentComponentInstance)==null?void 0:u.schema)==null?void 0:d.type,l=(f=(c=(m=t==null?void 0:t.parentComponentInstance)==null?void 0:m.schema)==null?void 0:c.appearance)==null?void 0:f.class,a=(h=(p=this.formSchemaUtils.getFormSchema())==null?void 0:p.module)==null?void 0:h.templateId;if(r===at.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const s=[at.DgControl["content-container"].type,at.DgControl["response-layout-item"].type,at.DgControl["splitter-pane"].type];if(r&&s.includes(r)){const w=this.resolver.getSchemaByType("section",{parentComponentInstance:t.parentComponentInstance,mainTitle:t.componentName},this.designerHostService);if(w&&w.contents&&w.contents.length){const M=w.contents[0];return M.contents=[e],this.appendAddDeleteBtnToParentContainer(M,t,o),w}}return this.appendAddDeleteBtnToParentContainer((v=t==null?void 0:t.parentComponentInstance)==null?void 0:v.schema,t,o),r===at.DgControl["tab-page"].type&&(S=t.parentComponentInstance)!=null&&S.parent&&(T=t.parentComponentInstance)!=null&&T.parent.updateToolbarItems&&((x=t.parentComponentInstance)==null||x.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,t,o){const r=e.type,l=o.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(t.bindTo==="/"||t.componentType!=="data-grid"&&t.componentType!=="form")return;const a=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),s=at.DgControl["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",u=this.resolver.getSchemaByType(s),d=[Object.assign({},u,{id:`button-add-${t.componentId}`,type:s,text:"新增",disabled:a.find(m=>m.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,onClick:`root-viewModel.${o.id}.${l}AddItem1`}),Object.assign({},u,{id:`button-remove-${t.componentId}`,type:s,text:"删除",disabled:a.find(m=>m.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,onClick:`root-viewModel.${o.id}.${l}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,type:at.DgControl["tab-page"].type===r?"tab-toolbar":"section-toolbar",buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.type||(e.toolbar.type=at.DgControl["tab-page"].type===r?"tab-toolbar":"section-toolbar"),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(d),this.appendAddAndDeleteCommands(o),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var m;const t=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),o=ee.useGuid().guid(),r=ee.useGuid().guid(),l=this.resolveCommandController(),a={id:o,code:`${t}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},s={id:r,code:`${t}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:l,shortcut:{},extensions:[]};(m=this.designerHostService.designerContext)!=null&&m.appendIdentifyForNewCommand&&(this.designerHostService.designerContext.appendIdentifyForNewCommand(a),this.designerHostService.designerContext.appendIdentifyForNewCommand(s)),e.commands.push(a,s),this.formSchemaUtils.getFormSchema().module.webcmds.find(c=>c.id===l).refedHandlers.push({host:o,handler:"AddItem"},{host:r,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,t=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],o=e.find(l=>t.includes(l.id));if(o)return o.id;const r="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:r,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),r}createComponentRefNode(e){const 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(e)},contents:o}),t}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Zr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var r,l,a;const{templateId:t}=this.formSchemaUtils.getFormSchema().module,o=(a=(l=(r=e.parentComponentInstance)==null?void 0:r.schema)==null?void 0:l.appearance)==null?void 0:a.class;return t==="double-list-in-tab-template"||["double-list-template","tree-list-template"].includes(t)&&(o!=null&&o.includes("f-page-content-main"))?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){var m,c,f;const t=(f=(c=(m=e.parentComponentInstance)==null?void 0:m.schema)==null?void 0:c.appearance)==null?void 0:f.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let r;if(o==="double-list-in-tab-template"){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),r=p}else if((o==="double-list-template"||o==="tree-list-template")&&(t!=null&&t.includes("f-page-content-main"))){const p=this.resolver.getSchemaByType("section");Object.assign(p,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),r=p}else{const p=this.resolver.getSchemaByType("content-container");Object.assign(p,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),r=p}const l=this.resolver.getSchemaByType("data-grid"),a=[],s=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),u=e.editable&&s.length>0&&s.findIndex(p=>p.id==="editable")>-1;Object.assign(l,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:u,dataSource:e.dataSource||"",editable:u?"viewModel.stateMachine['editable']":!1,pagination:{enable:!e.editable}}),r.contents=[l];const{selectedFields:d}=e;return d==null||d.forEach(p=>{if(p.$type===ee.FormSchemaEntityField$Type.ComplexField)return;const h=Ne.cloneDeep(p),v=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",h,"",u);v&&a.push(v)}),[r]}assembleViewModelFields(e){const t=[],{selectedFields:o}=e;return o==null||o.forEach(r=>{if(r.$type===ee.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=r.type.name;(a===ee.FormSchemaEntityFieldTypeName.Enum||a===ee.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),t.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),t}}function Bn(n,e,t,o){var l,a,s,u,d,m,c;const r=t.parentComponentInstance;if(r&&o){const f=Math.random().toString(36).slice(2,6),p={componentId:`data-grid-${f}`,componentName:((l=t.bindingSourceContext)==null?void 0:l.entityTitle)||((s=(a=t.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:s.name)||`表格-${f}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((u=t.bindingSourceContext)==null?void 0:u.bindTo)||"",dataSource:(m=(d=t.bindingSourceContext)==null?void 0:d.bindingEntity)==null?void 0:m.label,selectedFields:(c=t.bindingSourceContext)==null?void 0:c.bindingEntityFields};return new Jr(n,o).createComponent(p)}else return e}function On(n,e,t){return e}const Qr={$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"]},jn={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},Kr=yt(jn,Qr,Pn,Bn),ea=new Map([["appearance",Lt]]);function ta(n,e,t){return e}const na={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:[]}}}}}},oa={$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"]},Rn={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]},virtualized:{type:Boolean,default:!1},rowOption:{type:Object},columns:{type:Array,default:[{field:"name",title:"",dataType:"string",width:"100%"}]},checkBeforeRemoveItem:{type:Function,default:null},selectedItemClass:{Type:[String,Function],default:"draggable-item--text-truncate",validator:n=>typeof n=="string"||typeof n=="function"}};yt(Rn,oa,ea,ta,na);const ia={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:n=>typeof n=="string"||typeof n=="function"},itemStyle:{type:[String,Function],default:"",validator:n=>typeof n=="string"||typeof n=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function ra(n,e){function t(l){const a=[];let s=l.nextNode();for(;s;)a.push(s),s=l.nextNode();return a}function o(l,a){const s=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return t(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:f})=>{const p=[];let h=0;for(;h<f.length;){const v=f.indexOf(a,h);if(v===-1)break;p.push(v),h=v+a.length}return p.map(v=>{const S=new Range;return S.setStart(c,v),S.setEnd(c,v+a.length),S})}).flat()}function r(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=o(e.value,l.toLocaleLowerCase()),s=new Highlight(...a);CSS.highlights.set("search-result",s)}return{search:r}}function $n(n,e,t,o,r,l,a,s,u,d){const m=i.ref(n.size),c=i.ref(n.textField),f=i.ref(n.titleField),p=i.ref(n.disableField),h=i.computed(()=>{var E,O;return((E=n.selection)==null?void 0:E.multiSelect)&&((O=n.selection)==null?void 0:O.showCheckbox)}),{onMouseenterItem:v,onMouseoverItem:S,onMouseoutItem:T}=l,{getKey:x,listViewItemClass:w,listViewItemStyle:M,onCheckItem:y,onClickItem:b}=a,g=i.computed(()=>{const E={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return n.itemClass?E:{margin:m.value==="small"?"0.25rem 0":"8px 0",...E}});function C(E,O,V){return E.checked=s.findIndexInSelectedItems(E)>-1,i.createVNode("li",{class:w(E,O),id:x(E,O),key:x(E,O),style:M(E,O),onClick:B=>b(E,O,B),onMouseenter:B=>v(B,E,O),onMouseover:B=>S(B,E,O),onMouseout:B=>T(B,E,O)},[h.value&&i.createVNode("div",{class:"f-list-select",onClick:B=>B.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+x(E,O),customClass:"listview-checkbox float-left",disabled:E[p.value],checked:E.checked,"onUpdate:checked":B=>E.checked=B,onChange:B=>{y(E,O,!B.checked)}},null)]),i.createVNode("div",{class:"f-list-content"},[i.createVNode("div",{class:n.itemContentClass,style:g.value,title:E.raw[f.value]||E.raw[c.value]},[E.raw[c.value]])])])}return{renderItem:C}}function aa(n,e,t,o,r,l,a,s,u,d){const m=i.ref(n.multiSelect),c=i.ref(n.disableField),f=i.ref(n.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:v}=l,{getKey:S,listViewItemClass:T,listViewItemStyle:x,onCheckItem:w,onClickItem:M}=a;function y(g,C,E){return n.contentTemplate?i.createVNode(i.Fragment,null,[n.contentTemplate({item:g.raw,index:C,selectedItem:E})]):e.slots.content?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.content({item:g.raw,index:C,selectedItem:E})]):i.createVNode("div",{style:"margin: 10px 0;"},[g.raw[f.value||"name"]])}function b(g,C,E){return i.createVNode("li",{class:T(g,C),id:S(g,C),key:S(g,C),style:x(g,C),onClick:O=>M(g,C,O),onMouseenter:O=>p(O,g,C),onMouseover:O=>h(O,g,C),onMouseout:O=>v(O,g,C)},[m.value&&i.createVNode("div",{class:"f-list-select",onClick:O=>O.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+S(g,C),customClass:"listview-checkbox",disabled:g[c.value]||!g.checked,checked:g.checked,"onUpdate:checked":O=>g.checked=O,onChange:O=>w(g,C,!O.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[y(g,C,E)])])}return{renderItem:b}}function la(n,e,t,o,r,l,a,s,u,d){const m=i.ref(n.multiSelect),c=i.ref(n.disableField),f=i.ref(n.textField),{onMouseenterItem:p,onMouseoverItem:h,onMouseoutItem:v}=l,{getKey:S,listViewItemClass:T,onCheckItem:x,onClickItem:w}=a,{dragstart:M,dragenter:y,dragover:b,dragend:g}=o,{removeItem:C}=u,E=i.computed(()=>({margin:m.value?"10px 0":"10px 0px 10px 14px"}));function O(F,_=""){const $=F.target;$.title=$.scrollWidth>$.clientWidth?_:""}function V(F){return i.createVNode("div",{style:E.value,onMouseenter:_=>O(_,F.raw[f.value||"name"])},[F.raw[f.value||"name"]])}function B(){return e.slots.itemContent?e.slots.itemContent:V}const R=B();function I(F,_,$){return i.createVNode("li",{class:T(F,_),id:S(F,_),key:S(F,_),onClick:P=>w(F,_,P),onMouseenter:P=>p(P,F,_),onMouseover:P=>h(P,F,_),onMouseout:P=>v(P,F,_),draggable:"true",onDragstart:P=>M(P,F,_),onDragenter:P=>y(P,_),onDragend:P=>g(P,F),onDragover:P=>b(P)},[m.value&&i.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[i.createVNode(zt.FCheckbox,{id:"list-"+S(F,_),customClass:"listview-checkbox",disabled:F[c.value]||!F.checked,checked:F.checked,"onUpdate:checked":P=>F.checked=P,onChange:P=>x(F,_,!P.checked)},null)]),i.createVNode("div",{class:"f-list-content"},[R(F)]),i.createVNode("div",{class:"f-list-remove",onClick:P=>{P.stopPropagation(),C(_)}},[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:I}}function sa(n,e,t,o,r,l,a,s,u,d){var S;const m=i.ref(((S=n.group)==null?void 0:S.groupFields)||[]),{collpaseGroupIconClass:c}=r,{toggleGroupRow:f}=d;function p(T,x){x.collapse=!x.collapse,t.value=f(x.collapse?"collapse":"expand",x,t.value)}function h(T,x,w){return e.slots.group?i.createVNode(i.Fragment,null,[e.slots.content&&e.slots.group({item:T.raw,index:x,selectedItem:w})]):i.createVNode("div",{class:"f-navlookup-recentHeader",onClick:M=>p(M,T)},[i.createVNode("div",{class:"fv-grid-group-row-icon"},[i.createVNode("span",{class:c(T)},null)]),i.createVNode("div",{class:"f-navlookup-recommandLabel"},[T.raw[m.value[T.layer]]])])}function v(T,x,w){return T.layer>-1&&h(T,x,w)}return{renderItem:v}}function ca(n,e,t,o){const{dataView:r}=t,{updateSelectedItems:l}=o;function a(s){if(s>-1&&s<r.value.length){if(n!=null&&n.checkBeforeRemoveItem&&!n.checkBeforeRemoveItem(r.value[s]))return;const u=r.value.splice(s,1);l(),e.emit("removeItem",u[0])}}return{removeItem:a}}function da(n,e,t,o,r,l,a,s,u,d){const{t:m}=ut.useI18n(),c=i.ref(n.view),f=i.ref(n.view==="CardView"),p=i.ref({}),h=i.ref(m("listView.emptyMessage")),v=ca(n,e,o,u),S=i.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":n.multiSelect,"d-flex":f.value,"flex-wrap":f.value})),T=i.computed(()=>!!t.value&&t.value.length>0),x=i.computed(()=>t.value.length===0);i.computed(()=>x.value&&!e.slots.empty);function w(){return c.value==="SingleView"?$n:c.value==="DraggableView"?la:(c.value==="ContentView"||c.value==="CardView")&&(n.contentTemplate||e.slots.content)?aa:$n}const M=w(),{renderItem:y}=M(n,e,t,d,r,l,u,a,v,s),{renderItem:b}=sa(n,e,t,d,r,l,u,a,v,s),g=[y,b];function C(){return t.value.filter(V=>V.visible!==!1).map((V,B)=>g[V.type](V,B,p))}function E(){return i.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[i.createVNode("p",{class:"f-empty-title"},[n.emptyTemplate?n.emptyTemplate():e.slots.empty?e.slots.empty():h.value])])}function O(){return i.createVNode("ul",{class:S.value,style:"list-style: none;"},[T.value&&C(),x.value&&E()])}return{renderListArea:O}}function ua(n,e,t){function o(){return e.slots.header&&i.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:o}}function An(n,e,t){const o=i.ref(n.headerClass),r=i.ref(n.placeholder),l=i.ref(""),a=i.computed(()=>!l.value),s=i.computed(()=>!!l.value);function u(f){l.value=""}i.watch(l,f=>{n.enableHighlightSearch&&t.search(f),e.emit("afterSearch",f)});const d=i.computed(()=>{const f={"form-group":!0,"farris-form-group":!0};return o.value&&o.value.split(" ").reduce((h,v)=>(h[v]=!0,h),f),f});function m(f){}function c(){return i.createVNode("div",{class:"f-list-view-header",onClick:i.withModifiers(()=>m,["prevent","stop"])},[i.createVNode("div",{class:d.value},[i.createVNode("div",{class:"farris-input-wrap"},[i.createVNode("div",{class:"f-cmp-inputgroup"},[i.createVNode("div",{class:"input-group f-state-editable"},[i.withDirectives(i.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":f=>l.value=f,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[i.vModelText,l.value]]),i.createVNode("div",{class:"input-group-append"},[s.value&&i.createVNode("span",{class:"input-group-text input-group-clear",onClick:f=>u()},[i.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&i.createVNode("span",{class:"input-group-text"},[i.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}function fa(){const n=i.ref(""),e=i.ref(-1),t=i.ref(""),o=i.ref(-1),r=i.ref(!1);function l(c,f,p){o.value=p}function a(c,f,p){r.value||(o.value=p)}function s(c,f,p){o.value=-1}function u(){r.value=!0}function d(){r.value=!1}function m(){e.value=-1,n.value=""}return{activeIndex:e,focusedItemId:t,hoverIndex:o,clearActiveItem:m,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:s,resumeHover:d,suspendHover:u}}function ma(n,e,t,o){const r=i.ref(n.idField),{dataView:l}=t,a=i.ref(-1),s=i.ref(!1),{activeIndex:u,focusedItemId:d,hoverIndex:m,resumeHover:c,suspendHover:f}=o;let p,h=0,v=0;function S(b,g){const C=b-h,E=g-v;p.style.left=parseInt(p.style.left)+C+"px",p.style.top=parseInt(p.style.top)+E+"px",h=b,v=g}function T(b){const{left:g,top:C}=b.getBoundingClientRect(),E=b.cloneNode(!0);return E.style.cssText=`
2
2
  position:absolute;
3
3
  left:${g}px;
4
4
  top:${document.documentElement.scrollTop?C+document.documentElement.scrollTop:C}px;
@@ -17,7 +17,7 @@
17
17
  `,E.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",E.children[0].children[0].style.cssText=`
18
18
  margin: 10px 0px 10px 14px;
19
19
  overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
20
- `,E.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",E.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(E),E}function x(b,g,C){if(b.stopPropagation(),f(),g){if(p=T(b.target),b.dataTransfer){const E=new Image;E.src="",b.dataTransfer.setDragImage(E,0,0)}h=b.pageX,v=b.pageY,setTimeout(()=>{a.value=C,s.value=!0,g.moving=!0})}}function w(b,g){if(b.preventDefault(),a.value!==g){const C=l.value[a.value],E=l.value;E.splice(a.value,1),E.splice(g,0,C),a.value=g,S(b.pageX,b.pageY)}}function M(b){b.preventDefault(),b.dataTransfer&&(b.dataTransfer.dropEffect="move"),S(b.pageX,b.pageY)}function y(b,g){g&&(g.moving=!1,p&&(document.body.removeChild(p),p=null)),l.value.forEach((C,E)=>{C.__fv_index__=E}),s.value=!1,c(),m.value=g.raw.__fv_index__,u.value=g.raw.__fv_index__,d.value=g.raw[r.value],e.emit("change",l.value),e.emit("activeChange",[g.raw])}return{dragstart:x,dragenter:w,dragover:M,dragend:y,isDragging:s}}function pa(n,e,t,o,r,l){const a=i.ref(n.idField),s=i.ref(n.disableField),u=i.ref(n.draggable);i.ref(n.itemClass);const d=i.ref(n.selection.multiSelect??!1),m=i.ref(n.selection.multiSelectMode),{isDragging:c}=o,{activeIndex:f,focusedItemId:p,hoverIndex:h}=r,{clearSelection:v,getSelectedItems:S,toggleSelectItem:T,currentSelectedDataId:x}=l,w=i.ref(S()),M=I=>w.value.length===0?!1:w.value.some(F=>{let _="";return F.data?_=F.data[a.value]:_=F[a.value],_===I});function y(){w.value=S()}function b(I,F){return I.raw[a.value]!=null?I.raw[a.value]:""}function g(I,F){const _={"f-list-view-group-item":!0,"f-list-view-draggable-item":u.value,"f-un-click":!I.checked,"f-un-select":!!I.raw[s.value],"f-listview-active":d.value&&M(b(I))||!d.value&&I.raw[a.value]===x.value,"f-listview-hover":!c.value&&F===h.value,moving:!!I.moving};if(typeof n.itemClass=="string")return ee.getCustomClass(_,n.itemClass);if(typeof n.itemClass=="function"){const $=n.itemClass(I);return ee.getCustomClass(_,$)}return _}function C(I,F){const _=d.value&&M(b(I))||!d.value&&I.raw[a.value]===x.value,$={};if(_&&($.backgroundColor="#dae9ff"),typeof n.itemStyle=="string")return ee.getCustomStyle($,n.itemStyle);if(typeof n.itemStyle=="function"){const P=n.itemStyle(I);return ee.getCustomStyle($,P)}return $}const E=i.computed(()=>!d.value);function O(I,F,_){I.checked=_,!I.raw[s.value]&&(E.value&&(p.value=I.raw[a.value]),T(I))}const V=i.computed(()=>d.value&&m.value==="OnCheckClearByClick"),B=i.computed(()=>!d.value||d.value&&(m.value==="OnCheckAndClick"||m.value==="OnClick"));function R(I,F,_){if(I.raw[s.value]){_==null||_.preventDefault(),_==null||_.stopPropagation();return}p.value=I.raw[a.value],f.value=F,V.value&&v(),B.value&&(T(I),y()),e.emit("clickItem",{data:w.value,index:F,dataItem:I.raw}),e.emit("activeChange",w.value)}return{getKey:b,selectedItems:w,listViewItemClass:g,listViewItemStyle:C,updateSelectedItems:y,onCheckItem:O,onClickItem:R}}const Ln=i.defineComponent({name:"FListView",props:ia,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(n,e){const t=i.ref(),o=i.ref(!0),r=i.ref(!1),l=i.ref([]),a=0,s=i.ref(n.columns),u=ce.useFilter(n,e),d=ce.useIdentify(n),m=ce.useHierarchy(n),c=ce.useGroupData(n,d),f=ce.useDataView(n,new Map,u,m,d),p=ce.useSelection(n,f,d,l,e),h=ra(n,t),v=ce.usePagination(n,f),S=i.computed(()=>f.dataView.value.length),T=ce.useRow(n,e,p,d),x=ce.useEdit(n,e,d,T,l),w=ce.useVisualDataBound(n),M=ce.useVisualDataCell(n,{},w),y=ce.useVisualDataRow(n,f,x,m,d,w,M),b=ce.useVisualGroupRow(n,d,M,y),g=ce.useVisualSummaryRow(n,d,M,y),C=ce.useVisualData(n,s,f,S,a,y,b,g),{getVisualData:E}=C;l.value=E(0,S.value+a-1);const O=i.computed(()=>{const U={"f-list-view":!0,"f-list-view-multiple":n.multiSelect};return n.size!=="default"&&(U[`${n.size}-item`]=!0),ee.getCustomClass(U,n.customClass)}),V=i.computed(()=>!!e.slots.footer||o.value);function B(){return n.header==="SearchBar"?An:n.header==="ContentHeader"?ua:An}const R=B(),{renderHeader:I}=R(n,e,h),F=fa(),_=ma(n,e,f,F),$=pa(n,e,l,_,F,p),{renderListArea:P}=da(n,e,l,f,c,F,p,C,$,_);function A(U){h.search(U)}function j(U){U&&(f.load(U),l.value=E(0,S.value+a-1))}function N(){p.clearSelection(),F.clearActiveItem()}function D(){return $.selectedItems.value}function J(){return $.selectedItems.value.map(U=>U[d.idField.value])}function ne(U){p.selectedValues.value=U,$.updateSelectedItems()}function X(){return p.currentSelectedDataId.value}function ie(U){T.activeRowById(U)}function W(U){const K=d.idField.value,Fe=l.value.find($e=>$e.raw[K]===U),Ee=l.value.findIndex($e=>$e.raw[K]===U);Fe&&Ee>-1&&$.onClickItem(Fe,Ee)}function q(U){const K=d.idField.value,Fe=l.value.find(Ee=>Ee.raw[K]===U);Fe&&T.changeRow(Fe)}function H(U){v.updatePagination(U)}function Y(U){return l.value.filter(K=>U.includes(K.raw[n.idField]))}e.expose({search:A,updateDataSource:j,clearSelection:N,getSelections:D,updateSelectionByIds:ne,getSelectionIds:J,activeRowById:ie,getCurrentRowId:X,clickRowItemById:W,updatePagination:H,getVisibleDataByIds:Y,selectRowById:q});function se(U){n.multiSelect&&(U.preventDefault(),U.stopPropagation())}i.watch(()=>n.selectionValues,(U,K)=>{U!==K&&ne(U)});const pe=ce.useSidebar(n,p),{sidebarWidth:me,showSidebarCheckBox:ue}=pe,xe=ce.useColumn(n,e),{applyColumnSorter:Pe,columnContext:he,updateColumnRenderContext:ze}=xe,G=ce.useVirtualScroll(n,f,l,he,C,S,a,me,x);return ce.getPagination(n,e,f,G,v,p),()=>i.createVNode("div",{class:O.value,onClick:se},[I(),i.createVNode("div",{ref:t,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[P()]),V.value&&i.createVNode("div",{class:"f-list-view-footer"},[n.footerTemplate?n.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),ha=i.defineComponent({name:"FTransfer",props:Rn,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(n,e){const{t}=ut.useI18n(),o=i.ref(n.identifyField),r={selectedStart:t("transfer.selectedStart"),selectedEnd:t("transfer.selectedEnd")},l=i.ref(n.displayType),a=i.ref(!1),s=i.ref(n.dataSource),u=i.ref(n.textField),d=i.ref(n.selections||[]),m=i.computed(()=>d.value.map(F=>F[o.value])),c=new Map,f=i.ref(),p=i.ref(),h=i.ref();let v;function S(){const F=new Map,_=n.selectionValues||[];_.length&&_.reduce((P,A)=>(P.set(A,!0),P),F);const $=n.selections||[];$.length&&(F.clear(),$.reduce((P,A)=>(P.set(A[o.value],!0),P),F)),d.value.length||(d.value=s.value.filter(P=>F.has(P[o.value])).map(P=>Object.assign({},P))),s.value.forEach(P=>{const A=P[o.value],j=F.has(A);P.checked=j,j&&c.set(A,P)})}S(),i.watch(()=>n.selections,F=>{d.value=F,S()});const T=i.computed(()=>l.value==="List"),x=i.computed(()=>l.value==="Tree");function w(F){const _=Ne.cloneDeep(d.value);d.value=F.map($=>Object.assign({},$)),e.emit("change",d.value,_)}function M(F){e.emit("selectItem",F)}function y(F){e.emit("unSelectItem",F)}function b(){return i.createVNode(Ln,{class:"f-utils-fill",data:s.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:m.value,onSelectionUpdate:w},null)}function g(){return i.createVNode(no,{ref:h,data:s.value,columns:n.columns,virtualized:n.virtualized,rowOption:n.rowOption,textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:m.value,onSelectionUpdate:w,onSelectItem:M,onUnSelectItem:y},null)}function C(){return i.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[i.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[T.value&&b(),x.value&&g()])])])}function E(F){const _=F[o.value];if(_!==null||_!==void 0){d.value=d.value.filter(P=>P[o.value]!==_);const $=c.get(_);$&&($.checked=!1,c.delete(_)),e.emit("change",d.value),e.emit("removeItem",F)}}i.watch(d,F=>{f.value.updateDataSource(Ne.cloneDeep(F));const _=v==null?void 0:v[o.value],$=F.find(P=>_===P[o.value]);$?f.value.activeRowById($[o.value]):(v=null,f.value.activeRowById(""))});function O(F){const _=new Map;d.value.reduce(($,P)=>($.set(P[o.value],P),$),_),d.value=F.map($=>_.get($[o.value])),e.emit("change",d.value)}function V(F){v=F[0],e.emit("activeChange",F)}function B(){var F;return i.createVNode(Ln,{ref:f,columns:n.columns,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:u.value,itemClass:n.selectedItemClass,onChange:O,onRemoveItem:E,onActiveChange:V,checkBeforeRemoveItem:n.checkBeforeRemoveItem},{itemContent:(F=e.slots)!=null&&F.text?_=>{var $;return(($=e.slots)==null?void 0:$.text)&&e.slots.text(_)}:null})}function R(){return i.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[i.createVNode("div",{class:"selection-pane-title"},[i.createVNode("span",{class:"selection-title"},[r.selectedStart]),i.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),i.createVNode("span",{class:"selection-item-title"},[r.selectedEnd])]),i.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[B()])])])}const I=i.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":a.value}));return i.onMounted(()=>{p.value&&p.value.parentElement&&getComputedStyle(p.value.parentElement).display==="flex"&&(a.value=!0)}),()=>i.createVNode("div",{ref:p,class:I.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:d.value}):C(),R()])}}),ga=i.defineComponent({name:"FGridFieldEditor",props:jn,emits:["change"],setup(n,e){const t=i.ref(n.viewModelId),o=i.inject("designViewModelUtils"),r=i.inject("useFormSchema"),l=i.inject("schemaService"),a=i.inject("controlCreatorUtils"),s=i.inject("designerContext");let u=n.gridData.columns;const{fieldEditable:d}=n.gridData,m=i.ref(`共 ${(u||[]).length} 项`),c=i.ref([]),f=i.ref([]);let p=[];function h(I,F=!0){if(s.checkCanDeleteControl){const _=p.find($=>{var P;return((P=$.data)==null?void 0:P.id)===I.id});return s.checkCanDeleteControl(_,F)}return!0}const v={customRowStatus:I=>{const F=I.raw;F.type&&F.type.fields&&F.type.fields.length>0&&(I.disabled=!0),h(F,!1)||(I.disabled=!0)}};function S(){if(c.value=[],!u||u.length===0)return[];const I="[绑定字段不存在,待移除]";u.forEach(F=>{if(F.binding&&F.binding.field){const _=p.find($=>$.data.id===F.binding.field);_?_.data.$type===ee.FormSchemaEntityField$Type.ComplexField?c.value.push(Object.assign({isInValidBinding:!0},_.data,{name:_.data.name+I})):c.value.push(Object.assign({},_.data)):c.value.push({id:F.binding.field,name:F.title+I,label:F.field,bindingField:null,isInValidBinding:!0})}}),m.value=`共 ${c.value.length} 项`}function T(I,F=[]){return I&&I.forEach(_=>{if(F.push(_),_.children&&T(_.children,F),s.appendIdentifyForNewControl){const $=u.find(P=>{var A;return((A=P.binding)==null?void 0:A.field)===_.data.id});(!$||$[s.identifyForNewControl])&&s.appendIdentifyForNewControl(_)}}),F}function x(){if(r.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const I=l.getTableInfoByViewModelId(t.value);if(I!=null&&I.id){const F=l.rtcAddedTreeNodes.value[I.id];F!=null&&F.length&&(f.value=f.value.concat(F))}}}function w(){f.value=o.getAllFields2TreeByVMId(t.value),x(),p=T(f.value)}function M(I,F,_){if(r.getComponents().find(P=>{let A=r.getControlsInCmpWidthBinding(P.viewModel,I);if(A=A.filter(j=>{var D;if(j.id===_)return!1;const N=F.type==="visible"?j[F.type]:(D=j.editor)==null?void 0:D[F.type];if(N&&N.type==="Expression"&&N.expressionId===F.id)return!0}),A.length)return!0}))return!0}function y(I){I.map(F=>{var $;const _=u.find(P=>{var A;return((A=P.binding)==null?void 0:A.field)===F});if(_&&r.getExpressions().length){const P=r.getExpressions(),A=P.findIndex(j=>j.target===F);A>-1&&(($=P[A].rules)==null||$.map(j=>{var N;switch(j.type){case"visible":case"readonly":case"required":{const D=j.type==="visible"?_[j.type]:(N=_.editor)==null?void 0:N[j.type];D&&D.type==="Expression"&&D.expressionId===j.id&&(M(F,j,_.id)||(j.needDelete=!0));break}default:M(F,j,_.id)||(j.needDelete=!0)}}),P[A].rules=P[A].rules.filter(j=>!j.needDelete))}})}function b(){const I=o.getDgViewModel(t.value),F=[],_=[],$=c.value;$.forEach(A=>{const j=u==null?void 0:u.find(N=>{if(N.binding&&N.binding.field)return N.binding.field===A.id});if(j)F.push(j);else{const N=a.setGridFieldProperty(n.gridType,A.data,null,d);I.addField(A),F.push(N)}_.push(A.id)});const P=I.fields.filter(A=>!_.includes(A.id));if(P&&P.length>0){const A=P.map(j=>j.id);I.removeField(A),y(A)}$.length!==c.value.length&&(c.value=$),m.value=`共 ${F.length} 项`,e.emit("change",F)}const g={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{b()},rejectCallback:()=>{}};function C(){return n.getLatestGridData?u=n.getLatestGridData().columns:u=n.gridData.columns,w(),S(),Promise.resolve(!0)}function E(I){c.value=[...c.value,I.raw]}function O(I){const F=c.value.findIndex(_=>_.id===I.raw.id);F>-1&&(c.value=[...c.value.slice(0,F),...c.value.slice(F+1)])}function V(I){const F=c.value.findIndex(_=>_.id===I.id);F>-1&&(c.value=[...c.value.slice(0,F),...c.value.slice(F+1)])}function B(I){const F=I[0].__fv_index__,_=c.value.findIndex(P=>P.id===I[0].id),$=c.value.find(P=>P.id===I[0].id);c.value.splice(_,1),c.value.splice(F,0,$)}const R=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(I,F)=>I.data+` [${F.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return i.onMounted(()=>{w()}),()=>i.createVNode(Xr,{"button-behavior":"Modal","modal-options":g,modelValue:m.value,"onUpdate:modelValue":I=>m.value=I,editable:!1,beforeOpen:C},{default:()=>[i.createVNode("div",{class:"f-utils-absolute-all"},[i.createVNode(ha,{selections:c.value,"data-source":f.value,rowOption:v,class:"mx-2",columns:R,displayType:"Tree",onRemoveItem:V,onSelectItem:E,onUnSelectItem:O,onActiveChange:B,checkBeforeRemoveItem:h},{text:I=>i.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[I.data.name.data,i.createTextVNode(" ["),I.data.bindingField.data,i.createTextVNode("]")])})])]})}}),ya={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},enableGroup:{description:"",type:"boolean",default:!1}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},va={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1}},required:["id","type"]},Zt={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},ba=yt(Zt,ya,Nn,On),Ca=yt(Zt,va,Nn,On);class wa extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class Sa extends ot.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,l)=>{if(r)switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...r.propertyValue]);break}}})}}class xa extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===ee.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===ee.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}const Hn={convertFrom:(n,e)=>(n.editor.remote||{})[e],convertTo:(n,e,t)=>{n.editor.remote=n.editor.remote||{},n.editor.remote[e]=t}};class Fa extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getCommonEditorProperties(e){var t,o,r;return{viewType:{visible:!!((t=e.editor)!=null&&t.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((o=e.editor)!=null&&o.multiSelect)&&((r=e.editor)==null?void 0:r.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(e){var l,a;const t=this;let o="";if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const s=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=s==null?void 0:s.schemaField)!=null&&a.type&&(o=s.schemaField.type.$type)}return t.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Hn,description:"",title:"服务端API",type:"string"},body:{visible:e.editor.dataSourceType==="dynamic",$converter:Hn,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!o||o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(e)},(s,u)=>{if(!s||!u.editor)return;const d=this;switch(s.propertyID){case"dataSourceType":{s.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):s.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!d.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...s.propertyValue]);break}case"viewType":s.propertyValue==="tag"&&(u.editor.editable=!1)}})}getGridFieldEdtiorProperties(e,t){var a,s,u,d;const o=this;let r="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const m=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=m==null?void 0:m.schemaField)!=null&&s.type&&(r=m.schemaField.type.$type)}return o.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!0,...o.getItemCollectionEditor(e,(u=e.editor)==null?void 0:u.valueField,(d=e.editor)==null?void 0:d.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:r==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(e)},(m,c)=>{if(!m||!c.editor)return;const f=this;switch(m.propertyID){case"dataSourceType":{m.propertyValue==="static"?(c.editor.valueField="value",c.editor.textField="name",c.editor.remote=null):m.propertyValue==="dynamic"&&(c.editor.remote={method:"GET"});break}case"data":{!f.checkEnumDataReadonly(c)&&c.formatter&&(c.formatter.data=[...m.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 l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===ee.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Ta extends Bt{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 Ma(){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"}],l=[{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日"}),l.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日"}),l.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:o,yMdFormats:t,mdFormats:r,yFormats:l}}const _a=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],Ea=[{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"}],ka=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],Va=[{id:"yyyy",name:"yyyy"}],{timeFormats:Ia,yMdFormats:Pa,yMFormats:Dn,mdFormats:Na,yFormats:Jt}=Ma();class Ba extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getDatePickerModes(e){return e==="Date"||e==="DateTime"?[{label:"年月日",value:"day"}]:[{label:"年月日",value:"day"},{label:"年月",value:"month"},{label:"年",value:"year"}]}checkMaxMinDate(e){const{minDate:t,maxDate:o,showTime:r}=(e==null?void 0:e.editor)||{},{parseToDate:l,formatTo:a}=ee.useDateFormat();if(o){const s=l(o,"yyyy-MM-dd HH:mm:ss");s&&(e.editor.maxDate=a(s,r?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}if(t){const s=l(t,"yyyy-MM-dd HH:mm:ss");s&&(e.editor.minDate=a(s,r?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}}getEditorProperties(e){var s,u,d,m,c,f,p,h,v,S,T,x,w;const t=this.getDateFormatOptions(e==null?void 0:e.editor),o=this.getValueFormatOptions(e==null?void 0:e.editor),r=this.designViewModelField.type.name,l=this.getDatePickerModes(r),a=this.getExtremeDateFormat(e);return(s=e==null?void 0:e.editor)!=null&&s.selectMode||(e.editor.selectMode="day"),this.checkMaxMinDate(e),this.getComponentConfig(e,{type:"date-picker"},{enableClear:{description:"是否显示清除按钮",title:"启用清除",type:"boolean"},selectMode:{description:"",title:"显示类型",type:"string",refreshPanelAfterChanged:!0,editor:{type:"combo-list",idField:"value",textField:"label",valueField:"value",data:l}},showWeekNumber:{description:"",title:"显示第几周",type:"boolean",visible:((u=e==null?void 0:e.editor)==null?void 0:u.selectMode)==="day"},firstDayOfTheWeek:{description:"",title:"每周起始日",type:"string",editor:{type:"combo-list",idField:"value",valueField:"value",textField:"label",data:[{label:"星期日",value:"Sun"},{label:"星期一",value:"Mon"}]},visible:((d=e==null?void 0:e.editor)==null?void 0:d.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((m=e==null?void 0:e.editor)==null?void 0:m.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((c=e==null?void 0:e.editor)==null?void 0:c.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:t}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:o},visible:((f=e==null?void 0:e.editor)==null?void 0:f.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((p=e==null?void 0:e.editor)==null?void 0:p.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:"1900-01-01 00:00:00",maxDate:((h=e==null?void 0:e.editor)==null?void 0:h.maxDate)||"9999-12-31 23:59:59",showTime:(v=e==null?void 0:e.editor)==null?void 0:v.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((S=e==null?void 0:e.editor)==null?void 0:S.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:((T=e==null?void 0:e.editor)==null?void 0:T.minDate)||"1900-01-01 00:00:00",maxDate:"9999-12-31 23:59:59",showTime:(x=e==null?void 0:e.editor)==null?void 0:x.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((w=e==null?void 0:e.editor)==null?void 0:w.selectMode)==="day"}},this.setEditorPropertyRelates)}getExtremeDateFormat(e){var t,o,r,l;if(((t=e==null?void 0:e.editor)==null?void 0:t.selectMode)==="day")return"yyyy-MM-dd"+((o=e==null?void 0:e.editor)!=null&&o.showTime?" HH:mm:ss":"");if(((r=e==null?void 0:e.editor)==null?void 0:r.selectMode)==="month")return"yyyy-MM";if(((l=e==null?void 0:e.editor)==null?void 0:l.selectMode)==="year")return"yyyy"}getEventPropConfig(e){const t=this,o=[{label:"onDatePicked",name:"日期选择后事件"}],r=t.eventsEditorUtils.formProperties(e,t.viewModelId,o);return{title:"事件",hideTitle:!0,properties:t.createBaseEventProperty(r),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const u=a.propertyValue;delete s[t.viewModelId],u&&t.eventsEditorUtils.saveRelatedParameters(s,t.viewModelId,u.events,u);const d=t.designViewModelUtils.getDgViewModel(t.viewModelId);d&&t.designViewModelField&&d.changeField(t.designViewModelField.id,{valueChanging:s.fieldValueChanging,valueChanged:s.fieldValueChanged})}}}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}case"selectMode":{e.propertyValue!=="day"?(t.editor.showWeekNumber=!1,t.editor.showTime=!1,t.editor.enableQuickSelect=!1,e.propertyValue==="month"?(t.editor.displayFormat="yyyy-MM",t.editor.valueFormat="yyyy-MM"):(t.editor.displayFormat="yyyy",t.editor.valueFormat="yyyy")):(t.editor.displayFormat="yyyy-MM-dd",t.editor.valueFormat="yyyy-MM-dd");break}}}getDateFormatOptions(e){const t=e.selectMode||"day";let o=[];switch(t){case"day":{const r=[];e.showTime&&r.push(...Ia),r.push(...Pa,...Dn,...Jt,...Na),o=r;break}case"month":{o=[...Dn,...Jt];break}case"year":{o=[...Jt];break}}return o}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let o=[..._a];return e.showTime&&(o=[...Ea]),o}case"month":return ka;case"year":return Va;default:return[]}}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)&&(e.editor.fieldType=r.type.name,r.type.name===ee.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const Oa=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],ja="";function Wt(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 Ve={convertFrom:(n,e)=>{const t=n.editor?n.editor:n;return e==="multiSelect"||e==="enableTitle"?!!t[e]:e==="separator"?t[e]||",":e==="onlySelectLeaf"?t[e]==null?!1:t[e]:e==="loadTreeDataType"?t[e]||"default":e==="placeholder"?t.placeholder||"请选择":e==="openType"?t[e]||"Modal":t[e]},convertTo:(n,e,t)=>{const o=n.editor?n.editor:n;if(o[e]=t,e==="multiSelect"&&!t&&(o.enableCascade=!1),e==="openType"){if(t==="Popup")o.showSelections=!1,o.enableCascade=!1;else if(o.dialog){const{width:r}=o.dialog,{displayType:l}=o;l&&l.toUpperCase().indexOf("NAV")>-1&&(!r||r<520)&&(o.dialog.width=960)}}o.multiSelect&&o.openType==="Popup"&&(o.editable=!1,o.allowFreeInput=!1)}};function Ra(n){let e="form_group_"+Date.now();return n&&(e=n.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function $a(n,e){const{enablePager:t,pageSize:o,pageList:r}=e;n.pagination=n.pagination||{},Object.assign(n.pagination,{enable:t,sizeLimits:Wt(r).map(l=>l.value),size:o,showLimits:!0,showGoto:!1,mode:"server"})}const qn={convertFrom:(n,e)=>{var o;return(o=(n.editor?n.editor:n).dataSource)==null?void 0:o.displayName},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=n.editor?n.editor:n,r=t[0],{name:l,id:a,metadataContent:s,code:u}=r;o.dataSource||(o.dataSource={}),o.dataSource.displayName=`${l}(${u})`,o.helpId=a;const{displayType:d,idField:m,textField:c}=s;o.displayType=d,o.dataSource.idField=m,o.textField=c,o.dataSource.type="ViewObject",o.enableEqualSearch=!1;const{pageInfo:f}=s.dataSource;$a(o,f);const{treeInfo:p}=d.toUpperCase()==="NAVTREELIST"?s.navigation:s.dataSource;if(p){const{onlySelectLeaf:h,loadDataType:v}=p;o.loadTreeDataType="default",o.onlySelectLeaf=h??!1}if(o.dataSource.uri||(o.dataSource.uri=Ra(n.id)),o.dialog){const{width:h}=o.dialog;d&&d.toUpperCase().indexOf("NAV")>-1&&(!h||h<520)&&(o.dialog.width=960)}}}},Aa={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}}},La={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}}},Ha={convertFrom:(n,e)=>n.editor.displayType?n.editor.displayType.toUpperCase():"LIST",convertTo:(n,e,t)=>{n.editor.displayType=t}},ct={convertFrom:(n,e)=>{var l;let t=n.editor?n.editor.dialog:n.dialog;const o=n.editor?n.editor.openType:n.openType;if(t||(t={}),e==="title")return t[e]||ja;if(!o||o==="Modal"){if(e==="width")return(l=t.displayType)!=null&&l.toUpperCase().startsWith("NAV")?t[e]||960:t[e]||590;if(e==="height")return t[e]||620;if(e==="navigatorWidth")return t[e]||320}else{if(e==="width")return t[e]||460;if(e==="height")return t[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return t[e]==null?!0:t[e]},convertTo:(n,e,t)=>{const o=n.editor?n.editor:n;o.dialog=o.dialog||{},o.dialog[e]=t}},Da={convertFrom:(n,e)=>{const t=n.editor?n.editor:n;if(t.pagination=t.pagination||{},e==="enable"||e==="showLimits")return t.pagination[e]==null?!1:t.pagination[e];if(e==="sizeLimits"){const o=t.pagination[e];return Wt(o)}if(e==="size")return t.pagination[e]||20},convertTo:(n,e,t)=>{var r;const o=n.editor?n.editor.pagination||{}:n;if(o.pagination=o.pagination||{},e==="sizeLimits"){const l=t.map(s=>s.value);o.pagination[e]=l;const a=((r=o.pagination)==null?void 0:r.size)??20;l.includes(a)||(o.pagination.size=l[0]);return}o.pagination[e]=t}},Wn=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],qa=Symbol("schema_repository_token");function Wa(n,e){const t=o=>o&&o.length?o.map(r=>`${r.name}[${r.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:e.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(o,r)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:qa},dataSourceConverter:qn,defaultConverter:Ve,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:$t.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:$t.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:$t.FieldSelectorRepositoryToken,displayFormatter:t},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const o=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),r=e.schemaService.getPrimaryField();return r?o.filter(l=>l.data.bindingPath!==r):o},formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,displayFormatter:t}}}}function za(n){var l,a;const e={type:"combo-list",enableClear:!1,editable:!1},t={type:"number-spinner",useThousands:!1},o=()=>n.displayType?n.displayType.toUpperCase():"",r=()=>o().startsWith("NAV")?n.showNavigation===void 0?!0:!!n.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:Ve,editor:{...e,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:n.openType!=="Popup",$converter:ct},width:{description:"窗口宽度,最小值:300px",title:"宽度",type:"number",editor:{...t,min:r()?520:300,needValid:!0},$converter:ct},height:{description:"窗口高度,最小值:200px",title:"高度",type:"number",editor:{...t,min:200,needValid:!0},$converter:ct},showNavigation:{description:"显示导航栏",$converter:Ve,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:o().includes("NAV")&&n.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:r()&&n.openType!=="Popup",editor:{...t,min:200,max:(((l=n==null?void 0:n.dialog)==null?void 0:l.width)??960)-200,needValid:!0},$converter:ct},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:n.openType!=="Popup",$converter:ct},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!n.enableUserData&&(((a=n==null?void 0:n.dialog)==null?void 0:a.resizeable)??!0)&&n.openType!=="Popup",$converter:ct},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:n.openType!=="Popup",$converter:ct},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:n.openType!=="Popup",$converter:ct},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:n.openType!=="Popup",$converter:ct}}}function Ga(n,e=!0){var l,a,s,u;const t=!((l=n.pagination)!=null&&l.enable),o=()=>n.displayType?n.displayType.toUpperCase():"",r=(d,m)=>{const c=o()!=="TREELIST"||d.treeToList;return m&&c?d.pagination&&d.pagination[m]:c};return{hide:o()==="TREELIST"||!n.helpId||t,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Da,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:r(n)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:r(n,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Wt((a=n.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:d,data:m})=>!m||!m.length?(d==null||d.warning({message:"每页显示条数不能为空!"}),!1):new Set(m.map(f=>parseInt(f.value,10))).size===m.length?!0:(d==null||d.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:r(n),editor:{type:"combo-list",enableClear:!1,editable:!1,data:Wt((s=n.pagination)==null?void 0:s.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(u=n.pagination)==null?void 0:u.size}}}}}class Ua extends ot.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 ot.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",r)}getPropertyConfig(t,o,r="Card"){var T;const l=(T=t.binding)!=null&&T.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(t,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(t,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(t,o,r),s=this.getBehaviorConfig(t),u=this.getAppearanceProperties(t,o),d=this.getLookupConfig(t),m=this.getEventPropConfig(t),c=this.getDialogPropertyConfig(t),f=this.getPageConfig(t.editor),p=this.getTreePropConfig(t.editor),h=this.getSearchConfig(t),v=this.getExpressionConfig(t,"Field"),S={basic:a,appearance:u,behavior:s,lookup:d,treeConfig:p,dialog:c,pager:f,searchConfig:h,expressions:v};return t.type==="form-group"&&(S.eventsEditor=m),{type:"object",categories:S}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null,"Grid").categories}flattenTreeNodes(t){return t.reduce((o,r)=>{var l;return o.push(r),(l=r.children)!=null&&l.length&&o.push(...this.flattenTreeNodes(r.children)),o},[])}isSimpleStringField(){var s;const 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 l=r.find(u=>u.data.code===o[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!o.reduce((u,d,m)=>[...u,m?`${u[m-1]}.${d}`:d],[]).some(u=>{var d,m,c;return((c=(m=(d=a.find(f=>f.data.path===u))==null?void 0:d.data)==null?void 0:m.type)==null?void 0:c.$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():""}mapFieldsDisplayFormatter(t){return t&&t.length?t.map(o=>`${o.name}[${o.bindingPath}]`).join(","):""}getSearchConfig(t){var o;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:Ve,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:Ve,title:"允许查询所有列",type:"boolean",visible:t.editor.openType!=="Popup"&&t.editor.enableSearchBar==null?!0:!!t.editor.enableSearchBar},enableEqualSearch:{$converter:Ve,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:t.editor.openType!=="Popup"&&(((o=t.editor)==null?void 0:o.enableSearchBar)??!0)!==!1&&this.getDisplayType(t.editor)!=="TREELIST"}},hide:t.editor.openType==="Popup"}}getLookupConfig(t){const o=t.editor,r=()=>{const d=this.formSchemaUtils.getFormSchema().module.entity[0].id,m=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:o,formBasicInfo:m,viewModelId:d,dataSourceId:o.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:s,mappingFieldsEditor:u}=Wa(o,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(d,m)=>{if(d)switch(d.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(m,d);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:Ve},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:Ve,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:Ve,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(o.multiSelect&&o.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:Ve,editor:this.freeInputEditor,visible:!!o.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:Ve},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:d=>d&&d.length?d.map(m=>`${m.name}(${m.code})`).join(","):"",validateFunction:async d=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(d,t),onSubmitModal:d=>{if(d){delete o.mappingFields;const m=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(m.relativePath,d[0].data).then(c=>JSON.parse(c==null?void 0:c.metadata.content))}}},$converter:qn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:Ve,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:$t.FieldSelectorRepositoryToken,beforeOpen:async({repository:d,notifyService:m})=>{var S;if(!(o==null?void 0:o.helpId))return m==null||m.warning({message:"请先配置数据源!"}),!1;const f=r(),h=new ot.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let v={};if(d){const T=await d.getData(f),x=await d.getLookupConditions(f);v={fieldList:T,conditionList:x}}return(S=h.variables)!=null&&S.forms&&(h.variables.forms.items=h.variables.forms.items.filter(T=>T.category==="remote")),{...v,...h,isServerSide:!0}},onSubmitModal:async({loadingService:d,repository:m,conditions:c,originalConditions:f,FMessageBoxService:p})=>{if(m)try{const h=r(),v=await m.getLookupConditions(h)||[];return JSON.stringify(v)!==JSON.stringify(f.value)?(d==null||d.clearAll(),p.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{c.value=v,f.value=JSON.parse(JSON.stringify(c.value))},()=>{}),!1):(JSON.stringify(c.value)===JSON.stringify(f.value)||await m.saveFilterCondition(c.value,h,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return p==null||p.error("保存失败",""),!1}finally{d==null||d.clearAll()}}},visible:!!o.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ha,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{...a},$converter:Aa},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:La,editor:s},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:Ve,editor:{...u}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:Ve,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:Ve,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:Ve,title:"显示已选记录",type:"boolean",visible:!!o.multiSelect&&o.openType!=="Popup"},separator:{description:"多选分隔符",$converter:Ve,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!o.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:Ve,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:Ve,title:"启用收藏夹",type:"boolean",visible:o.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:Ve,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:o.openType!=="Popup"}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")&&t.openType!=="Popup"?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){const o=za(t.editor);return o.openType.$converter=Ve,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:ct,properties:o}}showPagerProperty(t,o){const r=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return o&&r?t.pagination&&t.pagination[o]:r}getPageConfig(t){return Ga(t)}showLoadType(t){const o=this.getDisplayType(t);return(o==="TREELIST"||o==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}isTree(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:Ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:Ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:Ve,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(t)},enableFullTree:{description:"启用构造完整树",$converter:Ve,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:Ve,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(t)},enableCascade:{description:"启用级联选择",$converter:Ve,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(t)&&!!t.multiSelect&&t.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:Ve,title:"显示级联状态",type:"boolean",visible:!!t.enableCascade&&this.isTree(t)},cascadeValue:{description:"缺省级联选择模式",$converter:Ve,title:"缺省级联选择模式",type:"string",visible:!!t.enableCascade&&this.isTree(t),editor:{...this.comboListEditor,data:Oa,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:Ve,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(t){const o=this;let r=Wn;t.editor.openType==="Popup"&&(r=r.filter(s=>s.label!=="beforeSelectData"));const l=o.eventsEditorUtils.formProperties(t,o.viewModelId,r);return{title:"事件",hideTitle:!0,properties:o.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete u[o.viewModelId],d&&o.eventsEditorUtils.saveRelatedParameters(u,o.viewModelId,d.events,d);const m=o.designViewModelUtils.getDgViewModel(o.viewModelId);m&&o.designViewModelField&&m.changeField(o.designViewModelField.id,{valueChanging:u.fieldValueChanging,valueChanged:u.fieldValueChanged})}}}async checkSameBESource(t,o){var r,l,a,s,u;if(t&&((r=o==null?void 0:o.editor)!=null&&r.helpId)&&!o.isRtcControl){if(t.data.id===o.editor.helpId)return!0;const d=await this.metadataService.getPickMetadata("",t.data).then(v=>{var S;if((S=v==null?void 0:v.metadata)!=null&&S.content)return JSON.parse(v.metadata.content)}),m=await this.metadataService.getPickMetadata("",{id:o.editor.helpId}).then(v=>{var S;if((S=v==null?void 0:v.metadata)!=null&&S.content)return JSON.parse(v.metadata.content)}),c=(l=d==null?void 0:d.dataSource)==null?void 0:l.sourceType,f=(a=m.dataSource)==null?void 0:a.sourceType,p=(s=d==null?void 0:d.dataSource)==null?void 0:s.sourceId,h=(u=m==null?void 0:m.dataSource)==null?void 0:u.sourceId;if(c==="BE"&&f==="BE"&&p!==h)return new nn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class Ya extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Xa extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){var r,l,a,s,u,d,m,c;let t;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const f=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(l=f==null?void 0:f.schemaField)!=null&&l.type&&(t=f.schemaField.type.precision,f.schemaField.type.name)}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:(a=e==null?void 0:e.editor)==null?void 0:a.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(s=e==null?void 0:e.editor)==null?void 0:s.max,precision:(u=e==null?void 0:e.editor)==null?void 0:u.precision,needValid:!0},refreshPanelAfterChanged:!0},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((d=e==null?void 0:e.editor)==null?void 0:d.min)===void 0||(m=e==null?void 0:e.editor)==null?void 0:m.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision,needValid:!0},refreshPanelAfterChanged:!0},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},bigNumber:{description:"",title:"启用大数字",type:"boolean",readonly:!0,visible:!1},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(f,p,h){if(f)switch(f.propertyID){case"precision":{p.formatter&&(p.formatter.precision=f.propertyValue);break}}})}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.name)===ee.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=r.type.precision)}}class Za extends Bt{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 l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===ee.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Ja extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===ee.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===ee.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}class Qa extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(t,o)=>{t.propertyID==="use12Hours"&&(o.editor.format=o.editor.format||"hh:mm:ss",o.editor.format=t.propertyValue?o.editor.format.replace("HH","hh"):o.editor.format.replace("hh","HH"))})}}class Ka extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"language-textbox"},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:e.editor.maxLength}}})}}class el extends Mn{constructor(t,o){super(t,o);le(this,"dataGridProps",null);le(this,"notifyService",new nn.FNotifyService)}getPropertyConfig(t,o){var s,u,d;this.dataGridProps=o,this.getBasicPropConfig(t),this.getAppearanceProperties(t,o);const l={formatterEnumData:{description:"",title:"数据",type:"array",visible:!!(((s=t.formatter)==null?void 0:s.type)==="enum"&&((u=t.editor)==null?void 0:u.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(t,"value","name"),refreshPanelAfterChanged:!0}},a=(m,c)=>{if(m)switch(m.propertyID){case"formatterEnumData":{t.formatter&&(t.formatter.data=[...m.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"gridFieldEditor",l,a),this.getFieldEditorProperties(t,o),((d=t.formatter)==null?void 0:d.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(t)),this.getEventPropConfig(t),this.propertyConfig}getItemCollectionEditor(t,o,r){const l=o||"value",a=r||"name";return{editor:{columns:[{field:l,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:l,nameField:a,requiredFields:[l,a],uniqueFields:[l,a],readonly:this.checkEnumDataReadonly(t)}}}checkEnumDataReadonly(t){return!t.binding||t.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===ee.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(t){var s;let o=[{label:"onClickLinkCommand",name:"超链接事件"}];((s=t==null?void 0:t.editor)==null?void 0:s.type)==="lookup"&&(o=[...o,...Wn],t.editor.openType==="Popup"&&(o=o.filter(u=>u.label!=="beforeSelectData")));const r=this,l=r.eventsEditorUtils.formProperties(t,r.viewModelId,o),a=r.createBaseEventProperty(l);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(u,d){var c;const m=u.propertyValue;delete t[r.viewModelId],m&&(m.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(t,r.viewModelId,m.events,m)),t.remoteSort=!!t.columnSorted,t.onClickLinkCommand&&!t.onClickLinkCommand.includes("communication:")&&(t.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
20
+ `,E.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",E.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(E),E}function x(b,g,C){if(b.stopPropagation(),f(),g){if(p=T(b.target),b.dataTransfer){const E=new Image;E.src="",b.dataTransfer.setDragImage(E,0,0)}h=b.pageX,v=b.pageY,setTimeout(()=>{a.value=C,s.value=!0,g.moving=!0})}}function w(b,g){if(b.preventDefault(),a.value!==g){const C=l.value[a.value],E=l.value;E.splice(a.value,1),E.splice(g,0,C),a.value=g,S(b.pageX,b.pageY)}}function M(b){b.preventDefault(),b.dataTransfer&&(b.dataTransfer.dropEffect="move"),S(b.pageX,b.pageY)}function y(b,g){g&&(g.moving=!1,p&&(document.body.removeChild(p),p=null)),l.value.forEach((C,E)=>{C.__fv_index__=E}),s.value=!1,c(),m.value=g.raw.__fv_index__,u.value=g.raw.__fv_index__,d.value=g.raw[r.value],e.emit("change",l.value),e.emit("activeChange",[g.raw])}return{dragstart:x,dragenter:w,dragover:M,dragend:y,isDragging:s}}function pa(n,e,t,o,r,l){const a=i.ref(n.idField),s=i.ref(n.disableField),u=i.ref(n.draggable);i.ref(n.itemClass);const d=i.ref(n.selection.multiSelect??!1),m=i.ref(n.selection.multiSelectMode),{isDragging:c}=o,{activeIndex:f,focusedItemId:p,hoverIndex:h}=r,{clearSelection:v,getSelectedItems:S,toggleSelectItem:T,currentSelectedDataId:x}=l,w=i.ref(S()),M=I=>w.value.length===0?!1:w.value.some(F=>{let _="";return F.data?_=F.data[a.value]:_=F[a.value],_===I});function y(){w.value=S()}function b(I,F){return I.raw[a.value]!=null?I.raw[a.value]:""}function g(I,F){const _={"f-list-view-group-item":!0,"f-list-view-draggable-item":u.value,"f-un-click":!I.checked,"f-un-select":!!I.raw[s.value],"f-listview-active":d.value&&M(b(I))||!d.value&&I.raw[a.value]===x.value,"f-listview-hover":!c.value&&F===h.value,moving:!!I.moving};if(typeof n.itemClass=="string")return ee.getCustomClass(_,n.itemClass);if(typeof n.itemClass=="function"){const $=n.itemClass(I);return ee.getCustomClass(_,$)}return _}function C(I,F){const _=d.value&&M(b(I))||!d.value&&I.raw[a.value]===x.value,$={};if(_&&($.backgroundColor="#dae9ff"),typeof n.itemStyle=="string")return ee.getCustomStyle($,n.itemStyle);if(typeof n.itemStyle=="function"){const P=n.itemStyle(I);return ee.getCustomStyle($,P)}return $}const E=i.computed(()=>!d.value);function O(I,F,_){I.checked=_,!I.raw[s.value]&&(E.value&&(p.value=I.raw[a.value]),T(I))}const V=i.computed(()=>d.value&&m.value==="OnCheckClearByClick"),B=i.computed(()=>!d.value||d.value&&(m.value==="OnCheckAndClick"||m.value==="OnClick"));function R(I,F,_){if(I.raw[s.value]){_==null||_.preventDefault(),_==null||_.stopPropagation();return}p.value=I.raw[a.value],f.value=F,V.value&&v(),B.value&&(T(I),y()),e.emit("clickItem",{data:w.value,index:F,dataItem:I.raw}),e.emit("activeChange",w.value)}return{getKey:b,selectedItems:w,listViewItemClass:g,listViewItemStyle:C,updateSelectedItems:y,onCheckItem:O,onClickItem:R}}const Ln=i.defineComponent({name:"FListView",props:ia,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(n,e){const t=i.ref(),o=i.ref(!0),r=i.ref(!1),l=i.ref([]),a=0,s=i.ref(n.columns),u=ce.useFilter(n,e),d=ce.useIdentify(n),m=ce.useHierarchy(n),c=ce.useGroupData(n,d),f=ce.useDataView(n,new Map,u,m,d),p=ce.useSelection(n,f,d,l,e),h=ra(n,t),v=ce.usePagination(n,f),S=i.computed(()=>f.dataView.value.length),T=ce.useRow(n,e,p,d),x=ce.useEdit(n,e,d,T,l),w=ce.useVisualDataBound(n),M=ce.useVisualDataCell(n,{},w),y=ce.useVisualDataRow(n,f,x,m,d,w,M),b=ce.useVisualGroupRow(n,d,M,y),g=ce.useVisualSummaryRow(n,d,M,y),C=ce.useVisualData(n,s,f,S,a,y,b,g),{getVisualData:E}=C;l.value=E(0,S.value+a-1);const O=i.computed(()=>{const U={"f-list-view":!0,"f-list-view-multiple":n.multiSelect};return n.size!=="default"&&(U[`${n.size}-item`]=!0),ee.getCustomClass(U,n.customClass)}),V=i.computed(()=>!!e.slots.footer||o.value);function B(){return n.header==="SearchBar"?An:n.header==="ContentHeader"?ua:An}const R=B(),{renderHeader:I}=R(n,e,h),F=fa(),_=ma(n,e,f,F),$=pa(n,e,l,_,F,p),{renderListArea:P}=da(n,e,l,f,c,F,p,C,$,_);function A(U){h.search(U)}function j(U){U&&(f.load(U),l.value=E(0,S.value+a-1))}function N(){p.clearSelection(),F.clearActiveItem()}function D(){return $.selectedItems.value}function J(){return $.selectedItems.value.map(U=>U[d.idField.value])}function ne(U){p.selectedValues.value=U,$.updateSelectedItems()}function X(){return p.currentSelectedDataId.value}function ie(U){T.activeRowById(U)}function W(U){const K=d.idField.value,Fe=l.value.find($e=>$e.raw[K]===U),Ee=l.value.findIndex($e=>$e.raw[K]===U);Fe&&Ee>-1&&$.onClickItem(Fe,Ee)}function q(U){const K=d.idField.value,Fe=l.value.find(Ee=>Ee.raw[K]===U);Fe&&T.changeRow(Fe)}function H(U){v.updatePagination(U)}function Y(U){return l.value.filter(K=>U.includes(K.raw[n.idField]))}e.expose({search:A,updateDataSource:j,clearSelection:N,getSelections:D,updateSelectionByIds:ne,getSelectionIds:J,activeRowById:ie,getCurrentRowId:X,clickRowItemById:W,updatePagination:H,getVisibleDataByIds:Y,selectRowById:q});function se(U){n.multiSelect&&(U.preventDefault(),U.stopPropagation())}i.watch(()=>n.selectionValues,(U,K)=>{U!==K&&ne(U)});const pe=ce.useSidebar(n,p),{sidebarWidth:me,showSidebarCheckBox:ue}=pe,xe=ce.useColumn(n,e),{applyColumnSorter:Pe,columnContext:he,updateColumnRenderContext:ze}=xe,G=ce.useVirtualScroll(n,f,l,he,C,S,a,me,x);return ce.getPagination(n,e,f,G,v,p),()=>i.createVNode("div",{class:O.value,onClick:se},[I(),i.createVNode("div",{ref:t,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[P()]),V.value&&i.createVNode("div",{class:"f-list-view-footer"},[n.footerTemplate?n.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),ha=i.defineComponent({name:"FTransfer",props:Rn,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(n,e){const{t}=ut.useI18n(),o=i.ref(n.identifyField),r={selectedStart:t("transfer.selectedStart"),selectedEnd:t("transfer.selectedEnd")},l=i.ref(n.displayType),a=i.ref(!1),s=i.ref(n.dataSource),u=i.ref(n.textField),d=i.ref(n.selections||[]),m=i.computed(()=>d.value.map(F=>F[o.value])),c=new Map,f=i.ref(),p=i.ref(),h=i.ref();let v;function S(){const F=new Map,_=n.selectionValues||[];_.length&&_.reduce((P,A)=>(P.set(A,!0),P),F);const $=n.selections||[];$.length&&(F.clear(),$.reduce((P,A)=>(P.set(A[o.value],!0),P),F)),d.value.length||(d.value=s.value.filter(P=>F.has(P[o.value])).map(P=>Object.assign({},P))),s.value.forEach(P=>{const A=P[o.value],j=F.has(A);P.checked=j,j&&c.set(A,P)})}S(),i.watch(()=>n.selections,F=>{d.value=F,S()});const T=i.computed(()=>l.value==="List"),x=i.computed(()=>l.value==="Tree");function w(F){const _=Ne.cloneDeep(d.value);d.value=F.map($=>Object.assign({},$)),e.emit("change",d.value,_)}function M(F){e.emit("selectItem",F)}function y(F){e.emit("unSelectItem",F)}function b(){return i.createVNode(Ln,{class:"f-utils-fill",data:s.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:m.value,onSelectionUpdate:w},null)}function g(){return i.createVNode(no,{ref:h,data:s.value,columns:n.columns,virtualized:n.virtualized,rowOption:n.rowOption,textField:u.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:m.value,onSelectionUpdate:w,onSelectItem:M,onUnSelectItem:y},null)}function C(){return i.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[i.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[T.value&&b(),x.value&&g()])])])}function E(F){const _=F[o.value];if(_!==null||_!==void 0){d.value=d.value.filter(P=>P[o.value]!==_);const $=c.get(_);$&&($.checked=!1,c.delete(_)),e.emit("change",d.value),e.emit("removeItem",F)}}i.watch(d,F=>{f.value.updateDataSource(Ne.cloneDeep(F));const _=v==null?void 0:v[o.value],$=F.find(P=>_===P[o.value]);$?f.value.activeRowById($[o.value]):(v=null,f.value.activeRowById(""))});function O(F){const _=new Map;d.value.reduce(($,P)=>($.set(P[o.value],P),$),_),d.value=F.map($=>_.get($[o.value])),e.emit("change",d.value)}function V(F){v=F[0],e.emit("activeChange",F)}function B(){var F;return i.createVNode(Ln,{ref:f,columns:n.columns,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:u.value,itemClass:n.selectedItemClass,onChange:O,onRemoveItem:E,onActiveChange:V,checkBeforeRemoveItem:n.checkBeforeRemoveItem},{itemContent:(F=e.slots)!=null&&F.text?_=>{var $;return(($=e.slots)==null?void 0:$.text)&&e.slots.text(_)}:null})}function R(){return i.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[i.createVNode("div",{class:"selection-pane-title"},[i.createVNode("span",{class:"selection-title"},[r.selectedStart]),i.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),i.createVNode("span",{class:"selection-item-title"},[r.selectedEnd])]),i.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[B()])])])}const I=i.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":a.value}));return i.onMounted(()=>{p.value&&p.value.parentElement&&getComputedStyle(p.value.parentElement).display==="flex"&&(a.value=!0)}),()=>i.createVNode("div",{ref:p,class:I.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:d.value}):C(),R()])}}),ga=i.defineComponent({name:"FGridFieldEditor",props:jn,emits:["change"],setup(n,e){const t=i.ref(n.viewModelId),o=i.inject("designViewModelUtils"),r=i.inject("useFormSchema"),l=i.inject("schemaService"),a=i.inject("controlCreatorUtils"),s=i.inject("designerContext");let u=n.gridData.columns;const{fieldEditable:d}=n.gridData,m=i.ref(`共 ${(u||[]).length} 项`),c=i.ref([]),f=i.ref([]);let p=[];function h(I,F=!0){if(s.checkCanDeleteControl){const _=p.find($=>{var P;return((P=$.data)==null?void 0:P.id)===I.id});return s.checkCanDeleteControl(_,F)}return!0}const v={customRowStatus:I=>{const F=I.raw;F.type&&F.type.fields&&F.type.fields.length>0&&(I.disabled=!0),h(F,!1)||(I.disabled=!0)}};function S(){if(c.value=[],!u||u.length===0)return[];const I="[绑定字段不存在,待移除]";u.forEach(F=>{if(F.binding&&F.binding.field){const _=p.find($=>$.data.id===F.binding.field);_?_.data.$type===ee.FormSchemaEntityField$Type.ComplexField?c.value.push(Object.assign({isInValidBinding:!0},_.data,{name:_.data.name+I})):c.value.push(Object.assign({},_.data)):c.value.push({id:F.binding.field,name:F.title+I,label:F.field,bindingField:null,isInValidBinding:!0})}}),m.value=`共 ${c.value.length} 项`}function T(I,F=[]){return I&&I.forEach(_=>{if(F.push(_),_.children&&T(_.children,F),s.appendIdentifyForNewControl){const $=u.find(P=>{var A;return((A=P.binding)==null?void 0:A.field)===_.data.id});(!$||$[s.identifyForNewControl])&&s.appendIdentifyForNewControl(_)}}),F}function x(){if(r.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const I=l.getTableInfoByViewModelId(t.value);if(I!=null&&I.id){const F=l.rtcAddedTreeNodes.value[I.id];F!=null&&F.length&&(f.value=f.value.concat(F))}}}function w(){f.value=o.getAllFields2TreeByVMId(t.value),x(),p=T(f.value)}function M(I,F,_){if(r.getComponents().find(P=>{let A=r.getControlsInCmpWidthBinding(P.viewModel,I);if(A=A.filter(j=>{var D;if(j.id===_)return!1;const N=F.type==="visible"?j[F.type]:(D=j.editor)==null?void 0:D[F.type];if(N&&N.type==="Expression"&&N.expressionId===F.id)return!0}),A.length)return!0}))return!0}function y(I){I.map(F=>{var $;const _=u.find(P=>{var A;return((A=P.binding)==null?void 0:A.field)===F});if(_&&r.getExpressions().length){const P=r.getExpressions(),A=P.findIndex(j=>j.target===F);A>-1&&(($=P[A].rules)==null||$.map(j=>{var N;switch(j.type){case"visible":case"readonly":case"required":{const D=j.type==="visible"?_[j.type]:(N=_.editor)==null?void 0:N[j.type];D&&D.type==="Expression"&&D.expressionId===j.id&&(M(F,j,_.id)||(j.needDelete=!0));break}default:M(F,j,_.id)||(j.needDelete=!0)}}),P[A].rules=P[A].rules.filter(j=>!j.needDelete))}})}function b(){const I=o.getDgViewModel(t.value),F=[],_=[],$=c.value;$.forEach(A=>{const j=u==null?void 0:u.find(N=>{if(N.binding&&N.binding.field)return N.binding.field===A.id});if(j)F.push(j);else{const N=a.setGridFieldProperty(n.gridType,A.data,null,d);I.addField(A),F.push(N)}_.push(A.id)});const P=I.fields.filter(A=>!_.includes(A.id));if(P&&P.length>0){const A=P.map(j=>j.id);I.removeField(A),y(A)}$.length!==c.value.length&&(c.value=$),m.value=`共 ${F.length} 项`,e.emit("change",F)}const g={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{b()},rejectCallback:()=>{}};function C(){return n.getLatestGridData?u=n.getLatestGridData().columns:u=n.gridData.columns,w(),S(),Promise.resolve(!0)}function E(I){c.value=[...c.value,I.raw]}function O(I){const F=c.value.findIndex(_=>_.id===I.raw.id);F>-1&&(c.value=[...c.value.slice(0,F),...c.value.slice(F+1)])}function V(I){const F=c.value.findIndex(_=>_.id===I.id);F>-1&&(c.value=[...c.value.slice(0,F),...c.value.slice(F+1)])}function B(I){const F=I[0].__fv_index__,_=c.value.findIndex(P=>P.id===I[0].id),$=c.value.find(P=>P.id===I[0].id);c.value.splice(_,1),c.value.splice(F,0,$)}const R=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(I,F)=>I.data+` [${F.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return i.onMounted(()=>{w()}),()=>i.createVNode(Xr,{"button-behavior":"Modal","modal-options":g,modelValue:m.value,"onUpdate:modelValue":I=>m.value=I,editable:!1,beforeOpen:C},{default:()=>[i.createVNode("div",{class:"f-utils-absolute-all"},[i.createVNode(ha,{selections:c.value,"data-source":f.value,rowOption:v,class:"mx-2",columns:R,displayType:"Tree",onRemoveItem:V,onSelectItem:E,onUnSelectItem:O,onActiveChange:B,checkBeforeRemoveItem:h},{text:I=>i.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[I.data.name.data,i.createTextVNode(" ["),I.data.bindingField.data,i.createTextVNode("]")])})])]})}}),ya={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},enableGroup:{description:"",type:"boolean",default:!1}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},va={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1}},required:["id","type"]},Zt={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},ba=yt(Zt,ya,Nn,On),Ca=yt(Zt,va,Nn,On);class wa extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class Sa extends ot.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,l)=>{if(r)switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...r.propertyValue]);break}}})}}class xa extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===ee.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===ee.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}const Hn={convertFrom:(n,e)=>(n.editor.remote||{})[e],convertTo:(n,e,t)=>{n.editor.remote=n.editor.remote||{},n.editor.remote[e]=t}};class Fa extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getCommonEditorProperties(e){var t,o,r;return{viewType:{visible:!!((t=e.editor)!=null&&t.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((o=e.editor)!=null&&o.multiSelect)&&((r=e.editor)==null?void 0:r.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(e){var l,a;const t=this;let o="";if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const s=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=s==null?void 0:s.schemaField)!=null&&a.type&&(o=s.schemaField.type.$type)}return t.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Hn,description:"",title:"服务端API",type:"string"},body:{visible:!1,$converter:Hn,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!o||o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(s,u)=>{if(!s||!u.editor)return;const d=this;switch(s.propertyID){case"dataSourceType":{s.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):s.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!d.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...s.propertyValue]);break}case"viewType":s.propertyValue==="tag"&&(u.editor.editable=!1)}})}getGridFieldEdtiorProperties(e,t){var a,s,u,d;const o=this;let r="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const m=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=m==null?void 0:m.schemaField)!=null&&s.type&&(r=m.schemaField.type.$type)}return o.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!0,...o.getItemCollectionEditor(e,(u=e.editor)==null?void 0:u.valueField,(d=e.editor)==null?void 0:d.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:r==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(m,c)=>{if(!m||!c.editor)return;const f=this;switch(m.propertyID){case"dataSourceType":{m.propertyValue==="static"?(c.editor.valueField="value",c.editor.textField="name",c.editor.remote=null):m.propertyValue==="dynamic"&&(c.editor.remote={method:"GET"});break}case"data":{!f.checkEnumDataReadonly(c)&&c.formatter&&(c.formatter.data=[...m.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 l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===ee.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Ta extends Bt{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 Ma(){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"}],l=[{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日"}),l.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日"}),l.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:o,yMdFormats:t,mdFormats:r,yFormats:l}}const _a=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],Ea=[{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"}],ka=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],Va=[{id:"yyyy",name:"yyyy"}],{timeFormats:Ia,yMdFormats:Pa,yMFormats:Dn,mdFormats:Na,yFormats:Jt}=Ma();class Ba extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getDatePickerModes(e){return e==="Date"||e==="DateTime"?[{label:"年月日",value:"day"}]:[{label:"年月日",value:"day"},{label:"年月",value:"month"},{label:"年",value:"year"}]}checkMaxMinDate(e){const{minDate:t,maxDate:o,showTime:r}=(e==null?void 0:e.editor)||{},{parseToDate:l,formatTo:a}=ee.useDateFormat();if(o){const s=l(o,"yyyy-MM-dd HH:mm:ss");s&&(e.editor.maxDate=a(s,r?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}if(t){const s=l(t,"yyyy-MM-dd HH:mm:ss");s&&(e.editor.minDate=a(s,r?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}}getEditorProperties(e){var s,u,d,m,c,f,p,h,v,S,T,x,w;const t=this.getDateFormatOptions(e==null?void 0:e.editor),o=this.getValueFormatOptions(e==null?void 0:e.editor),r=this.designViewModelField.type.name,l=this.getDatePickerModes(r),a=this.getExtremeDateFormat(e);return(s=e==null?void 0:e.editor)!=null&&s.selectMode||(e.editor.selectMode="day"),this.checkMaxMinDate(e),this.getComponentConfig(e,{type:"date-picker"},{enableClear:{description:"是否显示清除按钮",title:"启用清除",type:"boolean"},selectMode:{description:"",title:"显示类型",type:"string",refreshPanelAfterChanged:!0,editor:{type:"combo-list",idField:"value",textField:"label",valueField:"value",data:l}},showWeekNumber:{description:"",title:"显示第几周",type:"boolean",visible:((u=e==null?void 0:e.editor)==null?void 0:u.selectMode)==="day"},firstDayOfTheWeek:{description:"",title:"每周起始日",type:"string",editor:{type:"combo-list",idField:"value",valueField:"value",textField:"label",data:[{label:"星期日",value:"Sun"},{label:"星期一",value:"Mon"}]},visible:((d=e==null?void 0:e.editor)==null?void 0:d.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((m=e==null?void 0:e.editor)==null?void 0:m.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((c=e==null?void 0:e.editor)==null?void 0:c.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:t}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:o},visible:((f=e==null?void 0:e.editor)==null?void 0:f.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((p=e==null?void 0:e.editor)==null?void 0:p.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:"1900-01-01 00:00:00",maxDate:((h=e==null?void 0:e.editor)==null?void 0:h.maxDate)||"9999-12-31 23:59:59",showTime:(v=e==null?void 0:e.editor)==null?void 0:v.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((S=e==null?void 0:e.editor)==null?void 0:S.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:((T=e==null?void 0:e.editor)==null?void 0:T.minDate)||"1900-01-01 00:00:00",maxDate:"9999-12-31 23:59:59",showTime:(x=e==null?void 0:e.editor)==null?void 0:x.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((w=e==null?void 0:e.editor)==null?void 0:w.selectMode)==="day"}},this.setEditorPropertyRelates)}getExtremeDateFormat(e){var t,o,r,l;if(((t=e==null?void 0:e.editor)==null?void 0:t.selectMode)==="day")return"yyyy-MM-dd"+((o=e==null?void 0:e.editor)!=null&&o.showTime?" HH:mm:ss":"");if(((r=e==null?void 0:e.editor)==null?void 0:r.selectMode)==="month")return"yyyy-MM";if(((l=e==null?void 0:e.editor)==null?void 0:l.selectMode)==="year")return"yyyy"}getEventPropConfig(e){const t=this,o=[{label:"onDatePicked",name:"日期选择后事件"}],r=t.eventsEditorUtils.formProperties(e,t.viewModelId,o);return{title:"事件",hideTitle:!0,properties:t.createBaseEventProperty(r),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const u=a.propertyValue;delete s[t.viewModelId],u&&t.eventsEditorUtils.saveRelatedParameters(s,t.viewModelId,u.events,u);const d=t.designViewModelUtils.getDgViewModel(t.viewModelId);d&&t.designViewModelField&&d.changeField(t.designViewModelField.id,{valueChanging:s.fieldValueChanging,valueChanged:s.fieldValueChanged})}}}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}case"selectMode":{e.propertyValue!=="day"?(t.editor.showWeekNumber=!1,t.editor.showTime=!1,t.editor.enableQuickSelect=!1,e.propertyValue==="month"?(t.editor.displayFormat="yyyy-MM",t.editor.valueFormat="yyyy-MM"):(t.editor.displayFormat="yyyy",t.editor.valueFormat="yyyy")):(t.editor.displayFormat="yyyy-MM-dd",t.editor.valueFormat="yyyy-MM-dd");break}}}getDateFormatOptions(e){const t=e.selectMode||"day";let o=[];switch(t){case"day":{const r=[];e.showTime&&r.push(...Ia),r.push(...Pa,...Dn,...Jt,...Na),o=r;break}case"month":{o=[...Dn,...Jt];break}case"year":{o=[...Jt];break}}return o}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let o=[..._a];return e.showTime&&(o=[...Ea]),o}case"month":return ka;case"year":return Va;default:return[]}}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)&&(e.editor.fieldType=r.type.name,r.type.name===ee.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const Oa=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],ja="";function Wt(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 Ve={convertFrom:(n,e)=>{const t=n.editor?n.editor:n;return e==="multiSelect"||e==="enableTitle"?!!t[e]:e==="separator"?t[e]||",":e==="onlySelectLeaf"?t[e]==null?!1:t[e]:e==="loadTreeDataType"?t[e]||"default":e==="placeholder"?t.placeholder||"请选择":e==="openType"?t[e]||"Modal":t[e]},convertTo:(n,e,t)=>{const o=n.editor?n.editor:n;if(o[e]=t,e==="multiSelect"&&!t&&(o.enableCascade=!1),e==="openType"){if(t==="Popup")o.showSelections=!1,o.enableCascade=!1;else if(o.dialog){const{width:r}=o.dialog,{displayType:l}=o;l&&l.toUpperCase().indexOf("NAV")>-1&&(!r||r<520)&&(o.dialog.width=960)}}o.multiSelect&&o.openType==="Popup"&&(o.editable=!1,o.allowFreeInput=!1)}};function Ra(n){let e="form_group_"+Date.now();return n&&(e=n.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function $a(n,e){const{enablePager:t,pageSize:o,pageList:r}=e;n.pagination=n.pagination||{},Object.assign(n.pagination,{enable:t,sizeLimits:Wt(r).map(l=>l.value),size:o,showLimits:!0,showGoto:!1,mode:"server"})}const qn={convertFrom:(n,e)=>{var o;return(o=(n.editor?n.editor:n).dataSource)==null?void 0:o.displayName},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=n.editor?n.editor:n,r=t[0],{name:l,id:a,metadataContent:s,code:u}=r;o.dataSource||(o.dataSource={}),o.dataSource.displayName=`${l}(${u})`,o.helpId=a;const{displayType:d,idField:m,textField:c}=s;o.displayType=d,o.dataSource.idField=m,o.textField=c,o.dataSource.type="ViewObject",o.enableEqualSearch=!1;const{pageInfo:f}=s.dataSource;$a(o,f);const{treeInfo:p}=d.toUpperCase()==="NAVTREELIST"?s.navigation:s.dataSource;if(p){const{onlySelectLeaf:h,loadDataType:v}=p;o.loadTreeDataType="default",o.onlySelectLeaf=h??!1}if(o.dataSource.uri||(o.dataSource.uri=Ra(n.id)),o.dialog){const{width:h}=o.dialog;d&&d.toUpperCase().indexOf("NAV")>-1&&(!h||h<520)&&(o.dialog.width=960)}}}},Aa={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}}},La={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}}},Ha={convertFrom:(n,e)=>n.editor.displayType?n.editor.displayType.toUpperCase():"LIST",convertTo:(n,e,t)=>{n.editor.displayType=t}},ct={convertFrom:(n,e)=>{var l;let t=n.editor?n.editor.dialog:n.dialog;const o=n.editor?n.editor.openType:n.openType;if(t||(t={}),e==="title")return t[e]||ja;if(!o||o==="Modal"){if(e==="width")return(l=t.displayType)!=null&&l.toUpperCase().startsWith("NAV")?t[e]||960:t[e]||590;if(e==="height")return t[e]||620;if(e==="navigatorWidth")return t[e]||320}else{if(e==="width")return t[e]||460;if(e==="height")return t[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return t[e]==null?!0:t[e]},convertTo:(n,e,t)=>{const o=n.editor?n.editor:n;o.dialog=o.dialog||{},o.dialog[e]=t}},Da={convertFrom:(n,e)=>{const t=n.editor?n.editor:n;if(t.pagination=t.pagination||{},e==="enable"||e==="showLimits")return t.pagination[e]==null?!1:t.pagination[e];if(e==="sizeLimits"){const o=t.pagination[e];return Wt(o)}if(e==="size")return t.pagination[e]||20},convertTo:(n,e,t)=>{var r;const o=n.editor?n.editor.pagination||{}:n;if(o.pagination=o.pagination||{},e==="sizeLimits"){const l=t.map(s=>s.value);o.pagination[e]=l;const a=((r=o.pagination)==null?void 0:r.size)??20;l.includes(a)||(o.pagination.size=l[0]);return}o.pagination[e]=t}},Wn=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],qa=Symbol("schema_repository_token");function Wa(n,e){const t=o=>o&&o.length?o.map(r=>`${r.name}[${r.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:e.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(o,r)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:qa},dataSourceConverter:qn,defaultConverter:Ve,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:$t.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:$t.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:$t.FieldSelectorRepositoryToken,displayFormatter:t},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const o=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),r=e.schemaService.getPrimaryField();return r?o.filter(l=>l.data.bindingPath!==r):o},formatter:(o,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,displayFormatter:t}}}}function za(n){var l,a;const e={type:"combo-list",enableClear:!1,editable:!1},t={type:"number-spinner",useThousands:!1},o=()=>n.displayType?n.displayType.toUpperCase():"",r=()=>o().startsWith("NAV")?n.showNavigation===void 0?!0:!!n.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:Ve,editor:{...e,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:n.openType!=="Popup",$converter:ct},width:{description:"窗口宽度,最小值:300px",title:"宽度",type:"number",editor:{...t,min:r()?520:300,needValid:!0},$converter:ct},height:{description:"窗口高度,最小值:200px",title:"高度",type:"number",editor:{...t,min:200,needValid:!0},$converter:ct},showNavigation:{description:"显示导航栏",$converter:Ve,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:o().includes("NAV")&&n.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:r()&&n.openType!=="Popup",editor:{...t,min:200,max:(((l=n==null?void 0:n.dialog)==null?void 0:l.width)??960)-200,needValid:!0},$converter:ct},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:n.openType!=="Popup",$converter:ct},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!n.enableUserData&&(((a=n==null?void 0:n.dialog)==null?void 0:a.resizeable)??!0)&&n.openType!=="Popup",$converter:ct},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:n.openType!=="Popup",$converter:ct},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:n.openType!=="Popup",$converter:ct},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:n.openType!=="Popup",$converter:ct}}}function Ga(n,e=!0){var l,a,s,u;const t=!((l=n.pagination)!=null&&l.enable),o=()=>n.displayType?n.displayType.toUpperCase():"",r=(d,m)=>{const c=o()!=="TREELIST"||d.treeToList;return m&&c?d.pagination&&d.pagination[m]:c};return{hide:o()==="TREELIST"||!n.helpId||t,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Da,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:r(n)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:r(n,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Wt((a=n.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:d,data:m})=>!m||!m.length?(d==null||d.warning({message:"每页显示条数不能为空!"}),!1):new Set(m.map(f=>parseInt(f.value,10))).size===m.length?!0:(d==null||d.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:r(n),editor:{type:"combo-list",enableClear:!1,editable:!1,data:Wt((s=n.pagination)==null?void 0:s.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(u=n.pagination)==null?void 0:u.size}}}}}class Ua extends ot.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 ot.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",r)}getPropertyConfig(t,o,r="Card"){var T;const l=(T=t.binding)!=null&&T.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(t,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(t,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(t,o,r),s=this.getBehaviorConfig(t),u=this.getAppearanceProperties(t,o),d=this.getLookupConfig(t),m=this.getEventPropConfig(t),c=this.getDialogPropertyConfig(t),f=this.getPageConfig(t.editor),p=this.getTreePropConfig(t.editor),h=this.getSearchConfig(t),v=this.getExpressionConfig(t,"Field"),S={basic:a,appearance:u,behavior:s,lookup:d,treeConfig:p,dialog:c,pager:f,searchConfig:h,expressions:v};return t.type==="form-group"&&(S.eventsEditor=m),{type:"object",categories:S}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null,"Grid").categories}flattenTreeNodes(t){return t.reduce((o,r)=>{var l;return o.push(r),(l=r.children)!=null&&l.length&&o.push(...this.flattenTreeNodes(r.children)),o},[])}isSimpleStringField(){var s;const 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 l=r.find(u=>u.data.code===o[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!o.reduce((u,d,m)=>[...u,m?`${u[m-1]}.${d}`:d],[]).some(u=>{var d,m,c;return((c=(m=(d=a.find(f=>f.data.path===u))==null?void 0:d.data)==null?void 0:m.type)==null?void 0:c.$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():""}mapFieldsDisplayFormatter(t){return t&&t.length?t.map(o=>`${o.name}[${o.bindingPath}]`).join(","):""}getSearchConfig(t){var o;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:Ve,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:Ve,title:"允许查询所有列",type:"boolean",visible:t.editor.openType!=="Popup"&&t.editor.enableSearchBar==null?!0:!!t.editor.enableSearchBar},enableEqualSearch:{$converter:Ve,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:t.editor.openType!=="Popup"&&(((o=t.editor)==null?void 0:o.enableSearchBar)??!0)!==!1&&this.getDisplayType(t.editor)!=="TREELIST"}},hide:t.editor.openType==="Popup"}}getLookupConfig(t){const o=t.editor,r=()=>{const d=this.formSchemaUtils.getFormSchema().module.entity[0].id,m=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:o,formBasicInfo:m,viewModelId:d,dataSourceId:o.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:s,mappingFieldsEditor:u}=Wa(o,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(d,m)=>{if(d)switch(d.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(m,d);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:Ve},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:Ve,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:Ve,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(o.multiSelect&&o.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:Ve,editor:this.freeInputEditor,visible:!!o.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:Ve},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:d=>d&&d.length?d.map(m=>`${m.name}(${m.code})`).join(","):"",validateFunction:async d=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(d,t),onSubmitModal:d=>{if(d){delete o.mappingFields;const m=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(m.relativePath,d[0].data).then(c=>JSON.parse(c==null?void 0:c.metadata.content))}}},$converter:qn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:Ve,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:$t.FieldSelectorRepositoryToken,beforeOpen:async({repository:d,notifyService:m})=>{var S;if(!(o==null?void 0:o.helpId))return m==null||m.warning({message:"请先配置数据源!"}),!1;const f=r(),h=new ot.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let v={};if(d){const T=await d.getData(f),x=await d.getLookupConditions(f);v={fieldList:T,conditionList:x}}return(S=h.variables)!=null&&S.forms&&(h.variables.forms.items=h.variables.forms.items.filter(T=>T.category==="remote")),{...v,...h,isServerSide:!0}},onSubmitModal:async({loadingService:d,repository:m,conditions:c,originalConditions:f,FMessageBoxService:p})=>{if(m)try{const h=r(),v=await m.getLookupConditions(h)||[];return JSON.stringify(v)!==JSON.stringify(f.value)?(d==null||d.clearAll(),p.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{c.value=v,f.value=JSON.parse(JSON.stringify(c.value))},()=>{}),!1):(JSON.stringify(c.value)===JSON.stringify(f.value)||await m.saveFilterCondition(c.value,h,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return p==null||p.error("保存失败",""),!1}finally{d==null||d.clearAll()}}},visible:!!o.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ha,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{...a},$converter:Aa},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:La,editor:s},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:Ve,editor:{...u}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:Ve,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:Ve,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:Ve,title:"显示已选记录",type:"boolean",visible:!!o.multiSelect&&o.openType!=="Popup"},separator:{description:"多选分隔符",$converter:Ve,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!o.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:Ve,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:Ve,title:"启用收藏夹",type:"boolean",visible:o.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:Ve,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:o.openType!=="Popup"}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")&&t.openType!=="Popup"?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){const o=za(t.editor);return o.openType.$converter=Ve,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:ct,properties:o}}showPagerProperty(t,o){const r=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return o&&r?t.pagination&&t.pagination[o]:r}getPageConfig(t){return Ga(t)}showLoadType(t){const o=this.getDisplayType(t);return(o==="TREELIST"||o==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}isTree(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:Ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:Ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:Ve,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(t)},enableFullTree:{description:"启用构造完整树",$converter:Ve,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:Ve,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(t)},enableCascade:{description:"启用级联选择",$converter:Ve,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(t)&&!!t.multiSelect&&t.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:Ve,title:"显示级联状态",type:"boolean",visible:!!t.enableCascade&&this.isTree(t)},cascadeValue:{description:"缺省级联选择模式",$converter:Ve,title:"缺省级联选择模式",type:"string",visible:!!t.enableCascade&&this.isTree(t),editor:{...this.comboListEditor,data:Oa,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:Ve,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(t){const o=this;let r=Wn;t.editor.openType==="Popup"&&(r=r.filter(s=>s.label!=="beforeSelectData"));const l=o.eventsEditorUtils.formProperties(t,o.viewModelId,r);return{title:"事件",hideTitle:!0,properties:o.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const d=s.propertyValue;delete u[o.viewModelId],d&&o.eventsEditorUtils.saveRelatedParameters(u,o.viewModelId,d.events,d);const m=o.designViewModelUtils.getDgViewModel(o.viewModelId);m&&o.designViewModelField&&m.changeField(o.designViewModelField.id,{valueChanging:u.fieldValueChanging,valueChanged:u.fieldValueChanged})}}}async checkSameBESource(t,o){var r,l,a,s,u;if(t&&((r=o==null?void 0:o.editor)!=null&&r.helpId)&&!o.isRtcControl){if(t.data.id===o.editor.helpId)return!0;const d=await this.metadataService.getPickMetadata("",t.data).then(v=>{var S;if((S=v==null?void 0:v.metadata)!=null&&S.content)return JSON.parse(v.metadata.content)}),m=await this.metadataService.getPickMetadata("",{id:o.editor.helpId}).then(v=>{var S;if((S=v==null?void 0:v.metadata)!=null&&S.content)return JSON.parse(v.metadata.content)}),c=(l=d==null?void 0:d.dataSource)==null?void 0:l.sourceType,f=(a=m.dataSource)==null?void 0:a.sourceType,p=(s=d==null?void 0:d.dataSource)==null?void 0:s.sourceId,h=(u=m==null?void 0:m.dataSource)==null?void 0:u.sourceId;if(c==="BE"&&f==="BE"&&p!==h)return new nn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class Ya extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Xa extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){var r,l,a,s,u,d,m,c;let t;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const f=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(l=f==null?void 0:f.schemaField)!=null&&l.type&&(t=f.schemaField.type.precision,f.schemaField.type.name)}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:t===0,min:0,max:t,needValid:!0},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,needValid:!0,precision:(a=e==null?void 0:e.editor)==null?void 0:a.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(s=e==null?void 0:e.editor)==null?void 0:s.max,precision:(u=e==null?void 0:e.editor)==null?void 0:u.precision,needValid:!0},refreshPanelAfterChanged:!0},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((d=e==null?void 0:e.editor)==null?void 0:d.min)===void 0||(m=e==null?void 0:e.editor)==null?void 0:m.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision,needValid:!0},refreshPanelAfterChanged:!0},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},bigNumber:{description:"",title:"启用大数字",type:"boolean",readonly:!0,visible:!1},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(f,p,h){if(f)switch(f.propertyID){case"precision":{p.formatter&&(p.formatter.precision=f.propertyValue);break}}})}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.name)===ee.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=r.type.precision)}}class Za extends Bt{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 l;super.changeBindingField(e,t);const r=o;e.editor&&((l=r==null?void 0:r.type)==null?void 0:l.$type)===ee.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class Ja extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var l;super.changeBindingField(e,t);const r=o;if(e.editor&&((l=r==null?void 0:r.type)!=null&&l.name)){let a,s;r.type.name===ee.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),r.type.name===ee.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}class Qa extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(t,o)=>{t.propertyID==="use12Hours"&&(o.editor.format=o.editor.format||"hh:mm:ss",o.editor.format=t.propertyValue?o.editor.format.replace("HH","hh"):o.editor.format.replace("hh","HH"))})}}class Ka extends ot.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"language-textbox"},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:e.editor.maxLength,needValid:!0}}})}}class el extends Mn{constructor(t,o){super(t,o);le(this,"dataGridProps",null);le(this,"notifyService",new nn.FNotifyService)}getPropertyConfig(t,o){var s,u,d;this.dataGridProps=o,this.getBasicPropConfig(t),this.getAppearanceProperties(t,o);const l={formatterEnumData:{description:"",title:"枚举数据",type:"array",visible:!!(((s=t.formatter)==null?void 0:s.type)==="enum"&&((u=t.editor)==null?void 0:u.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(t,"value","name"),refreshPanelAfterChanged:!0}},a=(m,c)=>{if(m)switch(m.propertyID){case"formatterEnumData":{t.formatter&&(t.formatter.data=[...m.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"gridFieldEditor",l,a),this.getFieldEditorProperties(t,o),((d=t.formatter)==null?void 0:d.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(t)),this.getEventPropConfig(t),this.propertyConfig}getItemCollectionEditor(t,o,r){const l=o||"value",a=r||"name";return{editor:{columns:[{field:l,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:l,nameField:a,requiredFields:[l,a],uniqueFields:[l,a],readonly:this.checkEnumDataReadonly(t)}}}checkEnumDataReadonly(t){return!t.binding||t.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===ee.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(t){var s;let o=[{label:"onClickLinkCommand",name:"超链接事件"}];((s=t==null?void 0:t.editor)==null?void 0:s.type)==="lookup"&&(o=[...o,...Wn],t.editor.openType==="Popup"&&(o=o.filter(u=>u.label!=="beforeSelectData")));const r=this,l=r.eventsEditorUtils.formProperties(t,r.viewModelId,o),a=r.createBaseEventProperty(l);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(u,d){var c;const m=u.propertyValue;delete t[r.viewModelId],m&&(m.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(t,r.viewModelId,m.events,m)),t.remoteSort=!!t.columnSorted,t.onClickLinkCommand&&!t.onClickLinkCommand.includes("communication:")&&(t.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
21
21
  @click="(ctx)=>viewModel.current.${t.onClickLinkCommand}({id: rowData.id,context: ctx})">
22
22
  {{rowData.${t.field}}}
23
23
  </span>`,(c=r.getFormDesignerInstance())==null||c.reloadPropertyPanel())}}}getBasicPropConfig(t){const o=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:t,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(r,l,a){if(r)switch(r&&r.propertyID){case"binding":{o.afterChangeBindingType(t,a),r.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(t,o){var l,a;const r=this;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},filterable:{visible:t.dataType!=="enum",description:"启用过滤",title:"启用过滤",type:"boolean"},sortable:{description:"启用排序",title:"启用排序",type:"boolean",visible:o.type!=="tree-grid"},width:{description:"列宽",title:"列宽",type:"number"},showTips:{description:"启用鼠标悬浮提示",title:"鼠标悬浮提示",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((a=(l=this.dataGridProps)==null?void 0:l.summary)!=null&&a.enable)&&t.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0}},setPropertyRelates(s,u,d){if(s)switch(s&&s.propertyID){case"width":{u.actualWidth=s.propertyValue;break}case"summaryType":{const{groupFields:m}=o.summary;!m.includes(u.field)&&s.propertyValue==="sum"&&m.push(u.field),m.includes(u.field)&&s.propertyValue==="none"&&m.splice(m.indexOf(u.field),1);break}case"columnTemplate":{s.propertyValue&&r.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}case"enableGroup":s.propertyValue?o.group.groupFields=[u.field]:o.group.groupFields=[]}}}}getFieldEditorProperties(t,o){o.fieldEditable&&t.editor&&this.getFieldEditorProp(t)}setFormatterEnumData(t){var o,r;(o=t.formatter)!=null&&o.data&&!t.formatterEnumData&&(t.formatterEnumData=(r=t.formatter)==null?void 0:r.data)}getTemplateProperties(t){const o=this,r=Object.prototype.hasOwnProperty;return{title:"列格式化",description:"",properties:{type:{description:"",title:"类型",type:"enum",$converter:"/converter/change-formatter.converter",refreshPanelAfterChanged:!0,editor:{data:{enum:[{id:"enum",name:"枚举"},{id:"none",name:"无"}],boolean:[{id:"boolean",name:"布尔"},{id:"none",name:"无"}],number:[{id:"number",name:"数字"},{id:"none",name:"无"}],date:[{id:"date",name:"日期"},{id:"none",name:"无"}],datetime:[{id:"date",name:"日期"},{id:"none",name:"无"}],string:[{id:"enum",name:"枚举"},{id:"date",name:"日期"},{id:"none",name:"无"}]}[t.dataType]}},trueText:{title:"布尔为true时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"千分位"},dateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:!!t.formatter&&(t.formatter.type==="date"||t.formatter.type==="datetime"),refreshPanelAfterChanged:!0,description:"日期格式",type:"enum",editor:{data:[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"dd/MM/yyyy",name:"dd/MM/yyyy"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"},{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy年MM月",name:"yyyy年MM月"},{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"},{id:"MM月dd日",name:"MM月dd日"},{id:"yyyy",name:"yyyy"},{id:"yyyy年",name:"yyyy年"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"},{id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}]}}},setPropertyRelates(a,s,u){var d;if(a)switch(a&&a.propertyID){case"type":{a.propertyValue!=="none"&&s.columnTemplate&&(s.columnTemplate="",o.notifyService.warning({position:"top-center",message:"注意:已设置列格式化,【列模板】被清空且会失效"})),a.propertyValue==="boolean"&&(r.call(s.formatter,"trueText")||(s.formatter.trueText="是"),r.call(s.formatter,"falseText")||(s.formatter.falseText="否")),a.propertyValue==="number"&&(r.call(s.formatter,"prefix")||(s.formatter.prefix=""),r.call(s.formatter,"suffix")||(s.formatter.suffix=""),r.call(s.formatter,"precision")||(s.formatter.precision=0),r.call(s.formatter,"decimal")||(s.formatter.decimal="."),r.call(s.formatter,"thousand")||(s.formatter.thousand=",")),a.propertyValue==="date"&&(r.call(s.formatter,"dateFormat")||(s.formatter.dateFormat="yyyy-MM-dd")),a.propertyValue==="enum"&&(r.call(s.formatter,"data")||(s.formatter.data=[],(d=s.formatterEnumData)!=null&&d.length&&(s.formatterEnumData=[])));break}}}}}getFieldEditorProp(t,o="gridFieldEditor",r=!1){const l=this.formMetadataConverter.getRealEditorType(t.editor.type);let a;switch(l){case"avatar":a=new wa(this.componentId,this.designerHostService);break;case"check-group":a=new Sa(this.componentId,this.designerHostService);break;case"check-box":a=new xa(this.componentId,this.designerHostService);break;case"combo-list":a=new Fa(this.componentId,this.designerHostService);break;case"date-picker":a=new Ba(this.componentId,this.designerHostService);break;case"lookup":a=new Ua(this.componentId,this.designerHostService);break;case"number-range":a=new Ya(this.componentId,this.designerHostService);break;case"number-spinner":a=new Xa(this.componentId,this.designerHostService);break;case"radio-group":a=new Za(this.componentId,this.designerHostService);break;case"switch":a=new Ja(this.componentId,this.designerHostService);break;case"textarea":a=new Ta(this.componentId,this.designerHostService);break;case"time-picker":a=new Qa(this.componentId,this.designerHostService);break;case"language-textbox":a=new Ka(this.componentId,this.designerHostService);break;default:a=new Sr(this.componentId,this.designerHostService)}this.setDesignViewModelField(t);const s=this,{canChangeControlType:u,editorTypeList:d}=this.getAvailableEditorType(t);this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:t.editor,tabId:"gridFieldEditor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",data:d,readonly:!u}}},setPropertyRelates(f,p){if(f)switch(f&&f.propertyID){case"type":{s.changeFieldEditorType(t,f.propertyValue);break}}}};const m=["id","type","class","style","binding","label","responseLayout","visible"],c=a.getGridFieldEdtiorPropConfig(t);Object.keys(c).map(f=>{const p=c[f],h={};if(Object.keys(p.properties).map(v=>{m.findIndex(S=>S===v)===-1&&p.properties[v]!==!1&&(h[v]=p.properties[v])}),Object.keys(h).length!==0){const v=p==null?void 0:p.title,S="gridFieldEditor",T="编辑器",x=p==null?void 0:p.description,w=(p==null?void 0:p.$converter)||"";s.propertyConfig.categories[o+"_"+f]={title:v,hide:Object.prototype.hasOwnProperty.call(p,"hide")?p.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(p,"hideTitle")?p.hideTitle:!1,tabId:p.tabId||S,tabName:p.tabName||T,description:x,$converter:w,parentPropertyID:"editor",propertyData:t,properties:h,setPropertyRelates:p==null?void 0:p.setPropertyRelates}}})}changeFieldEditorType(t,o){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);r.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const l=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(l,c=>c.type===te["data-grid"].type||c.type===te["tree-grid"].type);if(!a)return;const s=r.fields.find(c=>c.id===this.designViewModelField.id),u=this.controlCreatorUtils.setGridFieldProperty(o,s,null,!0),d=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,m=d.findIndex(c=>c.id===t.id);if(m>-1&&d[m].editor){const c={};["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(d[m].editor,f)&&(c[f]=d[m].editor[f])}),d[m].editor=Object.assign(u.editor,c)}Object.assign(d[m],{dataType:u.dataType},u.formatter?{formatter:u.formatter}:{}),!u.formatter&&d[m].formatter&&delete d[m].formatter}checkCanChangeControlType(t,o){return!(!t.binding||!this.designViewModelField||this.designViewModelField.$type!==ee.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(t){var l;const o=this.checkCanChangeControlType(t,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:t.editor.type,value:((l=te[t.editor.type])==null?void 0:l.name)||t.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===ee.FormSchemaEntityField$Type.SimpleField&&(r=jt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,t.type)),{canChangeControlType:o,editorTypeList:r}}afterChangeBindingType(t,o){!t||!o||(t.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(o),this.controlCreatorUtils.setGridFieldFormatter(t.dataType,t,o))}}function tl(n,e,t){const o=n.schema,r=i.ref(!0),l=i.ref(!0);function a(f){return!1}function s(){return!1}function u(){return!1}function d(){return!0}function m(f){var v,S;const p=new el(f,e),h=(v=n==null?void 0:n.parent)==null?void 0:v.schema;return h!=null&&h.groupFields&&h!=null&&h.groupFields.includes(o.field)&&(o.enableSummary=!0),p.getPropertyConfig(o,(S=n==null?void 0:n.parent)==null?void 0:S.schema)}function c(){var S,T;if(!e||!n)return;const{formSchemaUtils:f}=e;let p=te["data-grid"].name||"表格";const h=f.getControlBasicInfoMap(),v=h.get((T=(S=n.parent)==null?void 0:S.schema)==null?void 0:T.id);v&&v.parentPathName&&(p=v.parentPathName),h.set(o.id,{showName:o.title,parentPathName:`${p} > ${o.title}`,reliedComponentId:v.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:s,checkCanMoveComponent:u,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:r,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:m,setComponentBasicInfoMap:c}}const zn=i.defineComponent({name:"FDataGridColumnDesign",props:Zt,emits:[],setup(n,e){const t=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context");i.inject("data-grid-context");const l=tl(r,o),a=cn(t,r,l);i.onMounted(()=>{t.value.componentInstance=a}),e.expose(a.value);function s(c){var f;(f=r==null?void 0:r.setupContext)==null||f.emit("selectionChange",a.value.schema,r.schema,n.componentId,a.value)}const{checkBindingFieldValidation:u}=xr(o,r,n),m=!i.inject("external-container-id");return()=>{var h;const c=m?u():!0,f="绑定信息已失效,请手动移除列",p=c?"":"color:red";return i.createVNode(i.Fragment,null,[c?"":i.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:f},null),i.createVNode("span",{class:"fv-column-title",style:p,ref:t,onClick:v=>s()},[((h=n.editor)==null?void 0:h.required)===!0&&i.createVNode("span",{class:"text-danger"},[i.createTextVNode("*")]),n.title])])}}}),nl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!1},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},rowOption:{type:"object",properties:{customRowStyle:{description:"",type:"string",default:""},customCellStyle:{description:"",type:"string",default:""},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showSelectAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},multiSelectMode:{description:"多选模式",type:"string",default:"DependOnCheck"},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"enum",default:"client"},multiSort:{description:"",type:"boolean",default:!0}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},emptyTemplate:{description:"",type:"string",default:""}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onDoubleClickRow:"行双击事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件",onFilterChanged:"过滤事件",onSortChanged:"排序事件",onSelectItem:"选中行事件",onUnSelectItem:"取消选中行事件",onSelectAll:"全选事件",onUnSelectAll:"取消全选事件",onEndEditCell:"单元格结束编辑事件"}};function ol(){function n(e,t){const o={};return o.beforeEditCell=r=>t.call("beforeEditCell",[r,e]),o}return{resolve:n}}const Qt=pt.createPropsResolver(wt.dataGridProps,nl,Pn,Bn),Gn=pt.createCollectionBindingResolver(),Un=pt.createDataGridSelectionItemResolver(),Yn=pt.createDataViewUpdateColumnsResolver(),Xn=ol();gt.install=n=>{n.component(gt.name,gt)},gt.register=(n,e,t,o)=>{n["data-grid"]=wt,e["data-grid"]=Qt,n["grid-field-editor"]=ga,e["grid-field-editor"]=Kr,o["data-grid"]={bindingResolver:Gn,selectionItemResolver:Un,updateColumnsResolver:Yn,callbackResolver:Xn}},gt.registerDesigner=(n,e,t)=>{n["data-grid"]=gt,e["data-grid"]=Qt,e["data-grid-column"]=ba,n["data-grid-column"]=zn,e["tree-grid-column"]=Ca,n["tree-grid-column"]=zn};const il=ee.withInstall(gt);be.FDataGridDesign=gt,be.bindingResolver=Gn,be.callbackResolver=Xn,be.default=il,be.getColumnHeader=sn,be.propsResolver=Qt,be.selectionItemResolver=Un,be.updateColumnsResolver=Yn,Object.defineProperties(be,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});