@farris/ui-vue 1.2.9 → 1.3.0

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 (236) hide show
  1. package/components/accordion/index.esm.js +63 -63
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +402 -323
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/button-edit/index.css +1 -1
  6. package/components/button-edit/index.esm.js +98 -96
  7. package/components/button-edit/index.umd.cjs +1 -1
  8. package/components/calendar/index.esm.js +66 -66
  9. package/components/calendar/index.umd.cjs +1 -1
  10. package/components/capsule/index.esm.js +118 -118
  11. package/components/capsule/index.umd.cjs +1 -1
  12. package/components/checkbox/index.esm.js +539 -460
  13. package/components/checkbox/index.umd.cjs +1 -1
  14. package/components/color-picker/index.esm.js +135 -135
  15. package/components/color-picker/index.umd.cjs +2 -2
  16. package/components/combo-list/index.css +1 -0
  17. package/components/combo-list/index.esm.js +1007 -312
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +97 -97
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/common/index.esm.js +778 -700
  22. package/components/common/index.umd.cjs +1 -1
  23. package/components/component/index.esm.js +472 -329
  24. package/components/component/index.umd.cjs +1 -1
  25. package/components/condition/index.css +1 -0
  26. package/components/condition/index.esm.js +2231 -1055
  27. package/components/condition/index.umd.cjs +1 -1
  28. package/components/content-container/index.esm.js +79 -79
  29. package/components/content-container/index.umd.cjs +1 -1
  30. package/components/data-grid/index.css +1 -1
  31. package/components/data-grid/index.esm.js +6408 -5034
  32. package/components/data-grid/index.umd.cjs +1 -1
  33. package/components/data-view/index.css +1 -0
  34. package/components/data-view/index.esm.js +4762 -3511
  35. package/components/data-view/index.umd.cjs +1 -1
  36. package/components/date-picker/index.css +1 -1
  37. package/components/date-picker/index.esm.js +3442 -2742
  38. package/components/date-picker/index.umd.cjs +1 -1
  39. package/components/designer-outline/index.esm.js +14 -13
  40. package/components/designer-outline/index.umd.cjs +1 -1
  41. package/components/dropdown/index.esm.js +73 -73
  42. package/components/dropdown/index.umd.cjs +2 -2
  43. package/components/dynamic-form/index.css +1 -0
  44. package/components/dynamic-form/index.esm.js +2597 -1141
  45. package/components/dynamic-form/index.umd.cjs +1 -1
  46. package/components/dynamic-resolver/index.esm.js +114 -71
  47. package/components/dynamic-resolver/index.umd.cjs +1 -1
  48. package/components/dynamic-view/index.esm.js +303 -290
  49. package/components/dynamic-view/index.umd.cjs +1 -1
  50. package/components/events-editor/index.esm.js +171 -171
  51. package/components/events-editor/index.umd.cjs +1 -1
  52. package/components/expression-editor/index.esm.js +65 -65
  53. package/components/expression-editor/index.umd.cjs +1 -1
  54. package/components/external-container/index.css +1 -1
  55. package/components/external-container/index.esm.js +3075 -2586
  56. package/components/external-container/index.umd.cjs +1 -1
  57. package/components/field-selector/index.css +1 -1
  58. package/components/field-selector/index.esm.js +5272 -8511
  59. package/components/field-selector/index.umd.cjs +1 -1
  60. package/components/filter-bar/index.css +1 -1
  61. package/components/filter-bar/index.esm.js +1726 -1822
  62. package/components/filter-bar/index.umd.cjs +1 -1
  63. package/components/image-cropper/index.esm.js +126 -126
  64. package/components/image-cropper/index.umd.cjs +1 -1
  65. package/components/input-group/index.esm.js +620 -540
  66. package/components/input-group/index.umd.cjs +1 -1
  67. package/components/layout/index.esm.js +88 -88
  68. package/components/layout/index.umd.cjs +1 -1
  69. package/components/list-nav/index.esm.js +71 -71
  70. package/components/list-nav/index.umd.cjs +1 -1
  71. package/components/list-view/index.css +1 -1
  72. package/components/list-view/index.esm.js +3582 -2356
  73. package/components/list-view/index.umd.cjs +1 -1
  74. package/components/lookup/index.css +1 -1
  75. package/components/lookup/index.esm.js +10752 -8972
  76. package/components/lookup/index.umd.cjs +1 -1
  77. package/components/mapping-editor/index.css +1 -1
  78. package/components/mapping-editor/index.esm.js +5601 -5329
  79. package/components/mapping-editor/index.umd.cjs +1 -1
  80. package/components/message-box/index.css +1 -1
  81. package/components/message-box/index.esm.js +511 -471
  82. package/components/message-box/index.umd.cjs +1 -1
  83. package/components/modal/index.css +1 -1
  84. package/components/modal/index.esm.js +438 -398
  85. package/components/modal/index.umd.cjs +1 -1
  86. package/components/nav/index.esm.js +535 -452
  87. package/components/nav/index.umd.cjs +2 -2
  88. package/components/notify/index.esm.js +59 -53
  89. package/components/notify/index.umd.cjs +1 -1
  90. package/components/number-range/index.esm.js +556 -477
  91. package/components/number-range/index.umd.cjs +1 -1
  92. package/components/number-spinner/index.esm.js +504 -425
  93. package/components/number-spinner/index.umd.cjs +1 -1
  94. package/components/order/index.css +1 -1
  95. package/components/order/index.esm.js +1833 -1054
  96. package/components/order/index.umd.cjs +1 -1
  97. package/components/page-footer/index.esm.js +100 -100
  98. package/components/page-footer/index.umd.cjs +1 -1
  99. package/components/page-header/index.esm.js +899 -870
  100. package/components/page-header/index.umd.cjs +1 -1
  101. package/components/pagination/index.esm.js +576 -487
  102. package/components/pagination/index.umd.cjs +1 -1
  103. package/components/popover/index.esm.js +71 -70
  104. package/components/popover/index.umd.cjs +1 -1
  105. package/components/progress/index.esm.js +73 -73
  106. package/components/progress/index.umd.cjs +2 -2
  107. package/components/property-editor/index.css +1 -1
  108. package/components/property-editor/index.esm.js +1916 -1220
  109. package/components/property-editor/index.umd.cjs +3 -3
  110. package/components/property-panel/index.esm.js +783 -886
  111. package/components/property-panel/index.umd.cjs +1 -1
  112. package/components/query-solution/index.css +1 -1
  113. package/components/query-solution/index.esm.js +3632 -2556
  114. package/components/query-solution/index.umd.cjs +1 -1
  115. package/components/radio-button/index.esm.js +72 -72
  116. package/components/radio-button/index.umd.cjs +1 -1
  117. package/components/radio-group/index.esm.js +484 -405
  118. package/components/radio-group/index.umd.cjs +1 -1
  119. package/components/rate/index.esm.js +152 -152
  120. package/components/rate/index.umd.cjs +1 -1
  121. package/components/response-layout/index.esm.js +73 -73
  122. package/components/response-layout/index.umd.cjs +1 -1
  123. package/components/response-layout-editor/index.css +1 -1
  124. package/components/response-layout-editor/index.esm.js +1081 -1043
  125. package/components/response-layout-editor/index.umd.cjs +1 -1
  126. package/components/response-toolbar/index.esm.js +753 -738
  127. package/components/response-toolbar/index.umd.cjs +1 -1
  128. package/components/schema-selector/index.css +1 -1
  129. package/components/schema-selector/index.esm.js +4418 -4177
  130. package/components/schema-selector/index.umd.cjs +2 -2
  131. package/components/search-box/index.esm.js +119 -119
  132. package/components/search-box/index.umd.cjs +1 -1
  133. package/components/section/index.esm.js +92 -91
  134. package/components/section/index.umd.cjs +1 -1
  135. package/components/smoke-detector/index.esm.js +59 -59
  136. package/components/smoke-detector/index.umd.cjs +1 -1
  137. package/components/splitter/index.esm.js +103 -103
  138. package/components/splitter/index.umd.cjs +1 -1
  139. package/components/step/index.esm.js +85 -85
  140. package/components/step/index.umd.cjs +1 -1
  141. package/components/switch/index.esm.js +457 -378
  142. package/components/switch/index.umd.cjs +1 -1
  143. package/components/tabs/index.css +1 -1
  144. package/components/tabs/index.esm.js +1696 -1617
  145. package/components/tabs/index.umd.cjs +1 -1
  146. package/components/tags/index.esm.js +53 -53
  147. package/components/tags/index.umd.cjs +1 -1
  148. package/components/text/index.esm.js +268 -268
  149. package/components/text/index.umd.cjs +1 -1
  150. package/components/textarea/index.esm.js +420 -341
  151. package/components/textarea/index.umd.cjs +1 -1
  152. package/components/time-picker/index.css +1 -1
  153. package/components/time-picker/index.esm.js +1062 -981
  154. package/components/time-picker/index.umd.cjs +1 -1
  155. package/components/transfer/index.css +1 -1
  156. package/components/transfer/index.esm.js +381 -379
  157. package/components/transfer/index.umd.cjs +1 -1
  158. package/components/tree-grid/index.css +1 -1
  159. package/components/tree-grid/index.esm.js +5252 -9560
  160. package/components/tree-grid/index.umd.cjs +1 -1
  161. package/components/tree-view/index.css +1 -0
  162. package/components/tree-view/index.esm.js +3920 -2692
  163. package/components/tree-view/index.umd.cjs +1 -1
  164. package/components/uploader/index.esm.js +373 -367
  165. package/components/uploader/index.umd.cjs +2 -2
  166. package/components/verify-detail/index.esm.js +92 -92
  167. package/components/verify-detail/index.umd.cjs +1 -1
  168. package/components/video/index.esm.js +597 -417
  169. package/components/video/index.umd.cjs +1 -1
  170. package/components/weather/index.esm.js +251 -251
  171. package/components/weather/index.umd.cjs +4 -4
  172. package/farris.all.esm.js +17125 -16176
  173. package/farris.all.umd.cjs +8 -8
  174. package/index.css +1 -1
  175. package/package.json +1 -1
  176. package/types/capsule/src/capsule.props.d.ts +2 -2
  177. package/types/combo-list/src/components/list-container.component.d.ts +0 -3
  178. package/types/combo-list/src/components/list-container.props.d.ts +0 -4
  179. package/types/common/index.d.ts +1 -0
  180. package/types/common/types.d.ts +1 -1
  181. package/types/common/utils/encrypt.d.ts +2 -0
  182. package/types/component/src/component.props.d.ts +7 -0
  183. package/types/component/src/designer/use-designer-rules.d.ts +1 -1
  184. package/types/component/src/property-config/component.property-config.d.ts +9 -0
  185. package/types/components.d.ts +1 -0
  186. package/types/data-grid/index.d.ts +5 -2
  187. package/types/data-grid/src/data-grid.component.d.ts +2 -1
  188. package/types/data-grid/src/data-grid.props.d.ts +1 -0
  189. package/types/data-view/composition/types.d.ts +18 -1
  190. package/types/data-view/composition/visualization/use-virtual-scroll.d.ts +0 -15
  191. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  192. package/types/designer-canvas/src/composition/types.d.ts +1 -1
  193. package/types/dynamic-form/src/composition/use-response-form-layout-setting.d.ts +2 -0
  194. package/types/dynamic-form/src/designer/response-form-layout-setting.component.d.ts +8 -0
  195. package/types/dynamic-form/src/designer/response-form-layout-setting.props.d.ts +4 -0
  196. package/types/dynamic-form/src/designer/use-designer-rules.d.ts +2 -2
  197. package/types/dynamic-form/src/property-config/form.property-config.d.ts +9 -0
  198. package/types/dynamic-form/src/schema/schema-mapper.d.ts +1 -0
  199. package/types/dynamic-form/src/schema/schema-resolver.d.ts +1 -0
  200. package/types/dynamic-form/src/types.d.ts +12 -1
  201. package/types/dynamic-resolver/index.d.ts +1 -0
  202. package/types/dynamic-resolver/src/event-handler-resolver.d.ts +4 -0
  203. package/types/dynamic-resolver/src/types.d.ts +9 -0
  204. package/types/dynamic-view/index.d.ts +1 -0
  205. package/types/dynamic-view/src/event-dispatcher.d.ts +1 -1
  206. package/types/index.d.ts +2 -0
  207. package/types/lookup/src/components/favorite/lookup-favorite.component.d.ts +29 -0
  208. package/types/lookup/src/components/favorite/lookup-favorite.props.d.ts +15 -0
  209. package/types/lookup/src/components/modal-container.component.d.ts +25 -0
  210. package/types/lookup/src/components/modal-container.props.d.ts +29 -0
  211. package/types/lookup/src/composition/types.d.ts +8 -0
  212. package/types/lookup/src/composition/use-check-props.d.ts +9 -2
  213. package/types/lookup/src/composition/use-dialog.d.ts +5 -1
  214. package/types/lookup/src/composition/use-favorite.d.ts +12 -0
  215. package/types/lookup/src/composition/use-http.d.ts +9 -5
  216. package/types/lookup/src/composition/use-input-change.d.ts +3 -0
  217. package/types/lookup/src/composition/use-user-data.d.ts +24 -0
  218. package/types/lookup/src/property-config/lookup.property-config.d.ts +6 -4
  219. package/types/mapping-editor/src/mapping-editor.component.d.ts +3 -0
  220. package/types/mapping-editor/src/mapping-editor.props.d.ts +0 -1
  221. package/types/modal/src/composition/use-draggable.d.ts +2 -1
  222. package/types/modal/src/composition/use-shortcut.d.ts +6 -0
  223. package/types/modal/src/modal.component.d.ts +3 -0
  224. package/types/modal/src/modal.props.d.ts +4 -0
  225. package/types/page-header/src/page-header.props.d.ts +1 -0
  226. package/types/property-panel/src/composition/entity/base-property.d.ts +8 -0
  227. package/types/property-panel/src/composition/entity/input-base-property.d.ts +20 -1
  228. package/types/response-layout-editor/src/composition/converter/use-response-layout-editor-setting.d.ts +2 -0
  229. package/types/response-layout-editor/src/type.d.ts +21 -0
  230. package/types/tabs/src/tabs.props.d.ts +1 -0
  231. package/types/tree-grid/index.d.ts +8 -2
  232. package/types/tree-grid/src/tree-grid.component.d.ts +3 -1
  233. package/types/data-grid/src/designer/use-group-column.d.ts +0 -20
  234. package/types/modal/src/composition/use-esc.d.ts +0 -1
  235. package/types/response-layout-editor/src/composition/converter/response-layout-editor.converter.d.ts +0 -3
  236. package/types/response-layout-editor/src/composition/converter/use-convert-property-value.d.ts +0 -20
@@ -1 +1 @@
1
- (function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js"),require("@vueuse/core"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../filter-bar/index.umd.js"),require("../pagination/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../combo-list/index.umd.js"),require("bignumber.js"),require("../number-spinner/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../combo-tree/index.umd.js"),require("../component/index.umd.js"),require("../color-picker/index.umd.js"),require("../content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../dropdown/index.umd.js"),require("../events-editor/index.umd.js"),require("../field-selector/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../nav/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../search-box/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../weather/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../external-container/index.umd.js"),require("../data-view/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js","@vueuse/core","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../filter-bar/index.umd.js","../pagination/index.umd.js","../dynamic-form/index.umd.js","../combo-list/index.umd.js","bignumber.js","../number-spinner/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../combo-tree/index.umd.js","../component/index.umd.js","../color-picker/index.umd.js","../content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../dropdown/index.umd.js","../events-editor/index.umd.js","../field-selector/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../mapping-editor/index.umd.js","../nav/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../weather/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../schema-selector/index.umd.js","../tree-grid/index.umd.js","../external-container/index.umd.js","../data-view/index.umd.js"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L["mapping-editor"]={},L.Vue,L.LodashES,L.dynamicResolver,L.FTags,L.FPopover,L.designerCanvas,L.common,L.VueUseCore,null,L.FTransfer$1,L.FTabs,L.FOrder,null,L.FCheckBox$1,L.FFilterBar,L.FPagination,L.FDynamicForm,L.FComboList,L.BigNumber,L.FNumberSpinner,L.FAccordion,L.FAvatar,L.FButtonEdit$1,L.FButtonGroup,L.FCalendar,L.FCapsule,L.FComboTree,L.FComponent,L.FColorPicker,L.FContentContainer,L.FDatePicker,L.FDataGrid$1,L.FDropdown,L.FEventsEditor,L.FFieldSelector,L.FImageCropper,L.FInputGroup$1,L.FLayout,L.FListNav,L.FListView$1,L.FLookup,L.FMappingEditor,L.FNav,L.FNumberRange,L.FPageHeader,L.FPageFooter,L.FProgress,L.FQuerySolution,L.FRadioGroup,L.FRate,L.FResponseToolbar,L.FResponseLayout,L.FResponseLayoutEditorSetting,L.FSearchBox,L.FSection,L.FSmokeDetector,L.FSplitter,L.FStep,L.FSwitch,L.FText,L.FTimePicker,L.FTreeview,L.FUploader,L.FVerifyDetail,L.FWeather,L.FVideo,L.FTextArea,L.FSchemaSelector,L.FTreeGrid$1,null,L.dataView))})(this,function(L,t,Re,vt,At,co,uo,ze,dt,bs,fo,po,mo,Cs,at,Gt,Lt,bt,Ct,ws,lt,go,ho,yo,vo,bo,Co,wo,xo,So,_o,Vo,No,ko,Fo,To,Mo,Io,Bo,Oo,$o,jo,Do,Po,Eo,Ro,Ho,Ao,Go,Lo,Wo,zo,qo,Uo,Ko,Xo,Yo,Jo,Qo,Zo,er,tr,nr,or,rr,ir,ar,lr,sr,cr,xs,A){"use strict";var ys=Object.defineProperty;var vs=(L,t,Re)=>t in L?ys(L,t,{enumerable:!0,configurable:!0,writable:!0,value:Re}):L[t]=Re;var z=(L,t,Re)=>vs(L,typeof t!="symbol"?t+"":t,Re);const Wt={},zt={};function wt(e){const{properties:n,title:o,ignore:r}=e,a=r&&Array.isArray(r),i=Object.keys(n).reduce((l,s)=>((!a||!r.find(c=>c==s))&&(l[s]=n[s].type==="object"&&n[s].properties?wt(n[s]):Re.cloneDeep(n[s].default)),l),{});return(!a||!r.find(l=>l=="id"))&&(i.id=`${o}-${Date.now()}`),i}function xt(e,n={},o){const r=Wt[e];if(r){let a=wt(r);const i=zt[e];return a=i?i({getSchemaByType:xt},a,n,o):a,a}return null}function dr(e,n){const o=wt(n);return Object.keys(e).reduce((r,a)=>(r[a]&&typeof r[a]=="object"?Object.assign(r[a],e[a]):r[a]=e[a],r),o),o}function ur(e,n){return Object.keys(e).filter(r=>e[r]!=null).reduce((r,a)=>{if(n.has(a)){const i=n.get(a);if(typeof i=="string")r[i]=e[a];else{const l=i(a,e[a],e);Object.assign(r,l)}}else r[a]=e[a];return r},{})}function fr(e,n,o=new Map){const r=dr(e,n);return ur(r,o)}function pr(e={}){function n(d,p,u,f){if(typeof u=="number")return f[d].length===u;if(typeof u=="object"){const x=Object.keys(u)[0],b=u[x];if(x==="not")return Number(f[d].length)!==Number(b);if(x==="moreThan")return Number(f[d].length)>=Number(b);if(x==="lessThan")return Number(f[d].length)<=Number(b)}return!1}function o(d,p,u,f){return f[d]&&f[d].propertyValue&&String(f[d].propertyValue.value)===String(u)}const r=new Map([["length",n],["getProperty",o]]);Object.keys(e).reduce((d,p)=>(d.set(p,e[p]),d),r);function a(d,p){const u=d;return typeof p=="number"?[{target:u,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:u,operator:"getProperty",param:d,value:!!p}]:typeof p=="object"?Object.keys(p).map(f=>{if(f==="length")return{target:u,operator:"length",param:null,value:p[f]};const x=f,b=p[f];return{target:u,operator:"getProperty",param:x,value:b}}):[]}function i(d){return Object.keys(d).reduce((u,f)=>{const x=a(f,d[f]);return u.push(...x),u},[])}function l(d,p){if(r.has(d.operator)){const u=r.get(d.operator);return u&&u(d.target,d.param,d.value,p)||!1}return!1}function s(d,p){return i(d).reduce((x,b)=>x&&l(b,p),!0)}function c(d,p){const u=Object.keys(d),f=u.includes("allOf"),x=u.includes("anyOf"),b=f||x,C=(b?d[b?f?"allOf":"anyOf":"allOf"]:[d]).map(h=>s(h,p));return f?!C.includes(!1):C.includes(!0)}return{parseValueSchema:c}}const te={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"}},mr={},gr={};pr();function Oe(e,n,o=new Map,r=(l,s,c)=>s,a={},i=l=>l){return Wt[n.title]=n,zt[n.title]=r,mr[n.title]=a,gr[n.title]=i,(l={})=>{const s=fr(l,n,o),c=Object.keys(e).reduce((d,p)=>(d[p]=e[p].default,d),{});return Object.assign(c,s)}}function qe(e,n){return{customClass:n.class,customStyle:n.style}}function hr(){function e(n,o){const{id:r}=n||{},{dataSource:a}=n||{};return a===void 0?{}:{data:o.getValue(r),"onUpdate:data":(...i)=>{}}}return{resolve:e}}function yr(){function e(n,o){return n.selectItemById(o)}return{selectItemById:e}}function vr(){function e(n,o){return n.selectItemById(o)}return{selectItemById:e}}const br=new Map([["appearance",vt.resolveAppearance]]);function Cr(e,n,o){return n}const wr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input 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:"button-edit"},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},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},xr={title:"buttonEdit",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:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}}}}},St={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},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}},qt=Oe(St,wr,br,Cr,xr),Sr={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},_r=t.defineComponent({name:"FOverlay",props:Sr,emits:["click"],setup(e,n){const o=t.ref(e.popupContentPosition),r=t.ref(e.host),a=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function i(s){n.emit("click"),s.preventDefault(),s.stopPropagation()}t.computed(()=>{const s=r.value;if(s){const c=s.getBoundingClientRect(),{left:d,top:p,height:u}=c;return{left:d,top:p+u}}return o.value});const l=t.computed(()=>({}));return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var s,c;return[t.createVNode("div",{class:"overlay-container",onClick:d=>i(d),style:a.value},[t.createVNode("div",{style:l.value},[(c=(s=n.slots).default)==null?void 0:c.call(s)])])]}})}});function Vr(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Nr(e){const n=document.createElement("div");n.style.display="contents";let o;const r=e.onClickCallback||(()=>{}),a=()=>{r(),o&&o.unmount()};return o=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const i=Vr(e);return()=>t.createVNode(_r,{"popup-content-position":e.popupPosition,host:e.host,onClick:a,backgroundColor:e.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(n),o.mount(n),o}class kr{static show(n){return Nr(n)}}const Fr={class:{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},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},reiszeable:{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}};class Ie{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const r=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(r.length>=6){const a=parseInt(r[4],10),i=parseInt(r[5],10);return{x:a,y:i}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new Ie(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new Ie(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let r=0;r<n.changedTouches.length;r++)if(n.changedTouches[r].target===o)return new Ie(n.changedTouches[r].clientX,n.changedTouches[r].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new Ie(0,0);if(window){const r=window.getComputedStyle(n);if(r){const a=parseInt(r.getPropertyValue("left"),10),i=parseInt(r.getPropertyValue("top"),10);o.x=isNaN(a)?0:a,o.y=isNaN(i)?0:i}return o}return null}static copy(n){return new Ie(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class Xe{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new Xe(0,0);if(window){const r=window.getComputedStyle(n);return r&&(o.width=parseInt(r.getPropertyValue("width"),10),o.height=parseInt(r.getPropertyValue("height"),10)),o}return null}static copy(n){return new Xe(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function Tr(e,n){const o=t.ref(),r=t.ref(),a=t.ref(),i=t.ref(),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref(),p=t.ref(),u=t.ref(),f=t.ref(),x=t.ref(),b=t.ref(e.draggable),S=t.ref(!1);function w(){const O=r.value||document.body,D=window.getComputedStyle(O);if(!D||!o.value)return;const j=Ie.getTransformInfo(o.value),P={};c.value&&(P.deltaL=o.value.offsetLeft-c.value.x,P.deltaT=o.value.offsetTop-c.value.y);const E=D.getPropertyValue("position");P.width=O.clientWidth,P.height=O.clientHeight,P.pr=parseInt(D.getPropertyValue("padding-right"),10),P.pb=parseInt(D.getPropertyValue("padding-bottom"),10),P.position=D.getPropertyValue("position"),E==="static"&&(O.style.position="relative"),P.translateX=j.x,P.translateY=j.y,u.value=P}function C(O){if(o.value){i.value=Xe.getCurrent(o.value),l.value=Ie.getCurrent(o.value),s.value=i.value?Xe.copy(i.value):null,c.value=l.value?Ie.copy(l.value):null,w();const D=O.target.getAttribute("type")||"";d.value={n:!!D.match(/n/),s:!!D.match(/s/),w:!!D.match(/w/),e:!!D.match(/e/)}}}function y(){var O,D,j,P;if(o.value){const E=o.value;d.value&&((d.value.n||d.value.s)&&((O=s.value)!=null&&O.height)&&(E.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((D=s.value)!=null&&D.width)&&(E.style.width=s.value.width+"px"),c.value&&((j=c.value)!=null&&j.x&&(E.style.left=c.value.x+"px"),(P=c.value)!=null&&P.y&&(E.style.top=c.value.y+"px")))}}function h(){const O=e.minHeight?e.minHeight:1,D=e.minWidth?e.minWidth:1;s.value&&c.value&&d.value&&i.value&&(s.value.height<O&&(s.value.height=O,d.value.n&&l.value&&(c.value.y=l.value.y+(i.value.height-O))),s.value.width<D&&(s.value.width=D,d.value.w&&l.value&&(c.value.x=l.value.x+(i.value.width-D))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,l.value&&d.value.n&&(c.value.y=l.value.y+(i.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,d.value.w&&l.value&&(c.value.x=l.value.x+(i.value.width-e.maxWidth))))}function N(){if(r.value){const O=u.value;if(c.value&&s.value&&d.value&&i.value){const D=O.width-O.pr-O.deltaL-O.translateX-c.value.x,j=O.height-O.pb-O.deltaT-O.translateY-c.value.y;d.value.n&&c.value.y+O.translateY<0&&l.value&&(c.value.y=-O.translateY,s.value.height=i.value.height+l.value.y+O.translateY),d.value.w&&c.value.x+O.translateX<0&&l.value&&(c.value.x=-O.translateX,s.value.width=i.value.width+l.value.x+O.translateX),s.value.width>D&&(s.value.width=D),s.value.height>j&&(s.value.height=j)}}}function _(O){if(!a.value||!i.value||!l.value||!d.value)return;O.subtract(a.value);const D=O.x,j=O.y;d.value.n?(c.value.y=l.value.y+j,s.value.height=i.value.height-j):d.value.s&&(s.value.height=i.value.height+j),d.value.e?s.value.width=i.value.width+D:d.value.w&&(s.value.width=i.value.width-D,c.value.x=l.value.x+D),N(),h(),y()}function m(O){if(!p.value)return;const D=Ie.fromEvent(O);D&&_(D)}function V(){if(o.value){const{width:O,height:D,x:j,y:P}=o.value.getBoundingClientRect(),E=Ie.getTransformInfo(o.value);return{size:{width:O,height:D},position:{x:j-E.x,y:P-E.y}}}return null}function g(O){if(o.value){const D=V();f.value=D}a.value=void 0,i.value=null,l.value=null,s.value=null,c.value=null,d.value=null,p.value=null,document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",g)}function v(){document.addEventListener("mousemove",m),document.addEventListener("mouseup",g)}function F(O){O instanceof MouseEvent&&O.button===2||b.value&&(O.stopPropagation(),O.preventDefault(),a.value=Ie.fromEvent(O),p.value=O.target,C(O),v())}function I(O){return o.value=O,t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"ng-resizable-handle ng-resizable-n",type:"n",onMousedown:D=>F(D)},null),t.createVNode("div",{class:"ng-resizable-handle ng-resizable-e",type:"e",onMousedown:D=>F(D)},null),t.createVNode("div",{class:"ng-resizable-handle ng-resizable-s",type:"s",onMousedown:D=>F(D)},null),t.createVNode("div",{class:"ng-resizable-handle ng-resizable-w",type:"w",onMousedown:D=>F(D)},null),t.createVNode("div",{class:"ng-resizable-handle ng-resizable-ne",type:"ne",onMousedown:D=>F(D)},null),t.createVNode("div",{class:"ng-resizable-handle ng-resizable-se ng-resizable-diagonal",type:"se",onMousedown:D=>F(D)},null),t.createVNode("div",{class:"ng-resizable-handle ng-resizable-sw",type:"sw",onMousedown:D=>F(D)},null),t.createVNode("div",{class:"ng-resizable-handle ng-resizable-nw",type:"nw",onMousedown:D=>F(D)},null)])}function T(O=!0){const D=r.value||document.body,j=Xe.getCurrent(D),P=o.value;O&&(x.value=V(),x.value.transform=P.style.transform),j&&P&&(s.value=j,P.style.height=s.value.height-14+"px",P.style.width=s.value.width-14+"px",P.style.left="7px",P.style.top="7px",P.style.transform="",f.value={size:s.value,position:{x:0,y:0}},b.value=!1,S.value=!0)}function M(){var O,D;if(x.value){const j={width:x.value.size.width||0,height:x.value.size.height||0},P={x:(window.innerWidth-j.width)/2,y:(window.innerHeight-j.height)/2};(O=s.value)==null||O.set(j),(D=c.value)==null||D.set(P);const E=o.value;E.style.height=j.height+"px",E.style.width=j.width+"px",E.style.left=`${P.x}px`,E.style.top=`${P.y}px`,E.style.transform="",f.value={size:j,position:P},b.value=e.draggable,S.value=!1}}function k(){if(o.value){const O=Xe.getCurrent(o.value);if(O){const{width:D,height:j}=O;o.value.style.left=`${(window.innerWidth-D)/2}px`,o.value.style.top=`${(window.innerHeight-j)/2}px`,o.value.style.transform=""}}}function B(){const O=()=>{S.value?T(!1):k()};return window.addEventListener("resize",O),()=>{window.removeEventListener("resize",O)}}const $=B();return{renderResizeBar:I,boundingElement:r,resizedEventParam:f,maximize:T,restore:M,allowDrag:b,isMaximized:S,unWindowResizeHandle:$}}function Mr(e,n){const o=t.ref(),r=t.ref(e.draggable),a=t.ref(e.lockAxis),i=t.ref(),l=t.ref(),s=t.ref(!1),c=t.ref(new Ie(0,0)),d=t.ref(new Ie(0,0)),p=t.ref(new Ie(0,0)),u=t.ref(new Ie(0,0));function f(m,V){if(V.tagName==="BUTTON")return!1;if(V===m)return!0;for(const g in V.children)if(V.children.hasOwnProperty(g)&&f(m,V.children[g]))return!0;return!1}function x(){var v,F;let m=p.value.x+d.value.x,V=p.value.y+d.value.y;a.value==="x"?(m=((v=c.value)==null?void 0:v.x)||0,p.value.x=0):a.value==="y"&&(V=((F=c.value)==null?void 0:F.y)||0,p.value.y=0);const g=`translate3d(${Math.round(m)}px, ${Math.round(V)}px, 0px)`;o.value&&(o.value.style.transform=g),u.value.x=m,u.value.y=V}function b(){if(!l.value||!o.value)return null;const m=l.value.getBoundingClientRect(),V=o.value.getBoundingClientRect(),g={top:m.top<V.top,right:m.right>V.right,bottom:m.bottom>V.bottom,left:m.left<V.left};return g.top||(p.value.y-=V.top-m.top),g.bottom||(p.value.y-=V.bottom-m.bottom),g.right||(p.value.x-=V.right-m.right),g.left||(p.value.x-=V.left-m.left),x(),g}function S(m){m&&(c.value&&m.subtract(c.value),p.value.set(m),x(),b())}function w(m){s.value&&r.value&&(m.stopPropagation(),m.preventDefault(),S(Ie.fromEvent(m,i.value)))}function C(){var m;s.value&&(s.value=!1,d.value.add(p.value),p.value.reset(),(m=o.value)==null||m.classList.remove("ng-dragging"),document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",C))}function y(){!s.value&&i.value&&(s.value=!0,i.value.classList.add("ng-dragging"),document.addEventListener("mousemove",w),document.addEventListener("mouseup",C))}function h(){if(o.value){const m=Ie.getTransformInfo(o.value);d.value.set(m);return}d.value.reset()}function N(m){if(m instanceof MouseEvent&&m.button===2)return;const V=m.target||m.srcElement;i.value!==void 0&&V&&!f(V,i.value)||r.value!==!1&&(m.stopPropagation(),m.preventDefault(),c.value=Ie.fromEvent(m,o.value),h(),y())}function _(m,V,g){if(m&&r.value&&V){if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)i.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const v=V.querySelector(e.dragHandle);v&&(i.value=v)}}else i.value=m;o.value=V,l.value=g,i.value.classList.add("ng-draggable"),i.value.addEventListener("mousedown",N)}}return{registerDraggle:_,resetTranslate:h}}function Ir(e,n){const o=t.ref(e.enableEsc);function r(a){a.key==="Escape"&&e.enableEsc&&n.emit("esc",{event:a,type:"esc"})}o.value&&document.addEventListener("keydown",r)}const Ut=t.defineComponent({name:"FModal",props:Fr,emits:["update:modelValue","accept","cancel","closed","resize","esc"],setup(e,n){const o=t.ref(e.width||300),r=t.ref(e.height||200),a=t.ref(e.modelValue),i=t.ref(""),l=t.ref(e.class),s=t.ref(e.fitContent),c=t.ref(e.showHeader),d=t.ref(""),p=t.ref(e.showCloseButton),u=t.ref(e.showMaxButton),f=t.ref(!1),x=t.ref(""),b=t.ref(""),S=t.ref(""),w=t.ref(e.showButtons),C=t.ref(e.title),y=t.ref(e.reiszeable),h=t.ref(e.containment||null),N=t.ref();function _(R,K){a.value=!1,n.emit("update:modelValue",!1),K!=null&&n.emit(K?"accept":"cancel"),n.emit("closed",R)}const m=[{name:"cancel",text:"取消",class:"btn btn-light",handle:R=>{_(R,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:R=>{_(R,!0)}}],V=t.ref(e.buttons&&e.buttons.length?e.buttons:m),g=t.computed(()=>!!d.value),v=t.computed(()=>!!w.value&&!!V.value),F=t.ref(),I=t.ref(),T=t.ref(!1),{renderResizeBar:M,maximize:k,restore:B,boundingElement:$,resizedEventParam:O,allowDrag:D,unWindowResizeHandle:j}=Tr(e),{registerDraggle:P}=Mr(e);t.watch(()=>e.title,(R,K)=>{R!==K&&(C.value=R)}),t.watch(()=>e.modelValue,(R,K)=>{R!==K&&(a.value=R)}),t.watch(()=>e.showHeader,(R,K)=>{R!==K&&(c.value=R)}),t.watch(()=>e.showButtons,(R,K)=>{R!==K&&(w.value=R)}),t.watch(()=>O.value,(R,K)=>{const pe=R||{},H=K||{};JSON.stringify(pe)!==JSON.stringify(H)&&n.emit("resize",{newSize:R,oldSize:K})});function E(){const R=document.querySelectorAll(".farris-modal").length;(!R||R-1<=0)&&document.body.classList.remove("modal-open"),N.value&&N.value.classList.remove("show")}const re=t.computed(()=>(a.value?document.body.classList.add("modal-open"):E(),a.value)),se=t.computed(()=>{const R={modal:!0,"farris-modal":!0,fade:!0};return R["f-modal-fitContent"]=!!s.value,R.show=!!re.value,R}),ve=t.computed(()=>{var pe;const R={"modal-dialog":!0},K=(pe=l.value)==null?void 0:pe.split(" ");return K==null||K.reduce((H,de)=>(H[de]=!0,H),R),R}),ke=t.computed(()=>({position:"absolute",top:`${(window.innerHeight-r.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${r.value}px`})),Se=t.computed(()=>({"modal-content":!0,"modal-content-has-header":c.value})),he=t.computed(()=>{const R={display:c.value?"":"none"};return R["pointer-events"]=D.value?"auto":"none",R}),Ce=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:T.value})),_e=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":x.value==="iframe"}));function ae(){return{}}const ue=t.computed(()=>{const R={textAlgin:S.value},K=ae();return Object.assign(R,K)});function W(R){if(R.stopPropagation(),T.value){T.value=!1,B();return}k(),T.value=!0}async function U(R,K){R.handle&&await R.handle(K,R)&&n.emit("closed",K)}function ce(R){R.width&&(o.value=R.width),R.height&&(r.value=R.height),R.buttons&&(V.value=R.buttons),R.title&&(C.value=R.title)}t.onMounted(()=>{I.value&&!h.value&&(h.value=I.value.parentElement,$.value=h.value,P(F.value,I.value,$.value)),re.value&&document.body.classList.add("modal-open"),Ir(e,n)}),t.onUnmounted(()=>{E(),j&&j()}),n.expose({modalElementRef:I,updateModalOptions:ce,close:_});function ee(){return t.createVNode("ul",null,[f.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),u.value&&t.createVNode("li",{onClick:W,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:Ce.value},null)]),p.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:R=>_(R,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function ge(){return t.createVNode("div",{class:"modal-footer",style:ue.value},[V.value&&V.value.map(R=>t.createVNode("button",{name:R.name,type:"button",class:R.class+(R.iconClass?" btn-icontext":""),onClick:K=>{U(R,K)}},[!!R.iconClass&&t.createVNode("i",{class:R.iconClass},null),R.text]))])}return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var R,K;return[re.value&&t.createVNode("div",{class:se.value,style:"display: block",ref:N},[t.createVNode("div",{id:i.value,class:ve.value,style:ke.value,ref:I},[t.createVNode("div",{class:Se.value},[t.createVNode("div",{ref:F,class:"modal-header",style:he.value},[t.createVNode("div",{class:"modal-title"},[g.value&&t.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[C.value])]),t.createVNode("div",{class:"actions"},[ee()])]),t.createVNode("div",{class:_e.value},[(K=(R=n.slots).default)==null?void 0:K.call(R),x.value==="iframe"&&t.createVNode("iframe",{title:i.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:b.value},null)]),v.value&&ge()]),!s.value&&y.value&&I.value&&M(I.value)])])]}})}});function Kt(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Br(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(r,a){t.onUnmounted(()=>{document.body.removeChild(n)});const i=t.ref(),l=t.ref(e.class||""),s=t.ref(!!e.showButtons),c=t.ref(!!e.showHeader),d=t.ref(e.showCloseButton==null?!0:e.showCloseButton),p=t.ref(!0),u=t.ref(e.title||""),f=e.acceptCallback||(()=>{}),x=e.rejectCallback||(()=>{}),b=e.closedCallback||(y=>{}),S=e.resizeHandle||(y=>{}),w=Kt(e),C=y=>{p.value=!1,o.unmount(),b(y)};return t.onMounted(()=>{}),a.expose({modalRef:i}),()=>t.createVNode(Ut,{ref:i,class:l.value,modelValue:p.value,"onUpdate:modelValue":y=>p.value=y,title:u.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":c.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:f,onCancel:x,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:C,onResize:S},{default:()=>[w&&w(o)]})}});return document.body.appendChild(n),o.mount(n),o}class Or{constructor(n){z(this,"appContext",null);z(this,"modalRef",t.ref());z(this,"activeModalIndex",t.ref(0));z(this,"modalRefs",{});z(this,"isUseEscCloseModal",t.ref(!1));z(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Br(o)}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const r=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),a=t.ref(!0),i=r.value.acceptCallback||(()=>{}),l=r.value.rejectCallback||(()=>{}),s=r.value.closedCallback||((C,y)=>{}),c=r.value.resizeHandle||(C=>{});let d;const p=Kt(r.value),u=C=>{var h;a.value=!1;const y=(h=C==null?void 0:C.target)==null?void 0:h.classList.contains("modal_close");s(C,this.isUseEscCloseModal.value?"esc":y?"icon":"button")},f=C=>{u(C),d&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),d=null,this.modalRef.value=null,this.modalRefs){const y=Object.keys(this.modalRefs);y.length>0?this.activeModalIndex.value=Math.max(...y):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},x=C=>{var y;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((y=this.activeModalInstance.value)==null||y.close(C==null?void 0:C.event))},b=()=>t.createVNode(Ut,t.mergeProps({ref:this.modalRef,modelValue:a.value,"onUpdate:modelValue":C=>a.value=C},r.value,{onAccept:i,onCancel:l,onClosed:f,onResize:c,onEsc:x}),{default:()=>[p&&p()]});return d=(C=>{const y=t.h(b,C);return y.appContext=this.appContext,t.render(y,o),y})({...r.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:C=>{r.value={...r.value,...C},d&&t.render(t.cloneVNode(d,{...r}),o)},destroy:f,modalRef:this.activeModalInstance}}}const $r=Symbol("FModalService");function Xt(e,n){function o(){const r=e.beforeOpen||e.beforeClickButton||null;let a=Promise.resolve(!0);if(r){const i=r(n.value);if(typeof i>"u")return a;typeof i=="boolean"?a=Promise.resolve(i):a=i}return a}return{judgeCanOpen:o}}function Yt(e,n,o,r,a){const i=t.ref(e.buttonBehavior),l=t.ref(e.popupOnInput),s=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:c}=Xt(e,a),d=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),p=t.inject($r,null),u=t.ref();async function f(S){if(await c()&&d.value){const w=!!n.slots.default;if(i.value==="Modal"){const C=e.modalOptions,y=p==null?void 0:p.open({...C,render:()=>n.slots.default&&n.slots.default()});u.value=y==null?void 0:y.modalRef}i.value==="Overlay"&&kr.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),w&&i.value==="Popup"&&r.togglePopup(!0),w&&l.value&&r.hidePopup(),n.emit("clickButton",{origin:S,value:e.modelValue})}}function x(S){n.emit("mouseEnterIcon",S)}function b(S){n.emit("mouseLeaveIcon",S)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:x,onMouseLeaveButton:b,modalRef:u}}function jr(e,n,o,r,a,i){const l=t.ref(!1),s=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:c}=i;function d(x){l.value=x}t.watch(a,()=>{d(!!a.value)});function p(x){const b=!e.readonly&&!e.disable&&e.editable,S=!e.editable;x.stopPropagation(),(b||S)&&(c("",!1),d(!l.value),n.emit("clear"))}function u(x){if(s.value){if(!o.value){d(!1);return}!e.disable&&!e.readonly&&d(!0)}}function f(x){s.value&&d(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:p,onMouseEnterTextBox:u,onMouseLeaveTextBox:f}}function Dr(e,n,o,r,a){const i=t.computed(()=>e.popupOnInput),l=t.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=a,c=t.computed(()=>e.enableTitle?o.value:""),d=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=t.computed(()=>e.readonly||!e.editable),u=t.ref(!1),f=t.computed(()=>!e.disable&&u.value),x=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),b=t.computed(()=>({"input-group":!0,"f-state-disable":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":f.value}));function S(v,F=!0){o.value!==v&&(o.value=v,F&&n.emit("change",v),n.emit("update:modelValue",v))}function w(v){s.value=!1,S(v,!0)}t.watch(()=>e.modelValue,v=>{o.value=v});function C(v){u.value=!1,n.emit("blur",v),v.stopPropagation()}function y(v){n.emit("click",v)}function h(v){e.disable||(u.value=!0,p.value||(n.emit("focus",v),l.value&&!s.value&&a.popup()))}function N(v){n.emit("input",v.target.value);const F=v.target.value;r.value=F,o.value!==F&&S(F,!0),i.value&&!s.value&&a.popup()}function _(v){v.target.tagName!=="INPUT"&&v.preventDefault(),v.stopPropagation()}function m(v){n.emit("keydown",v)}function V(v){v.key==="Enter"&&(i.value||l.value)&&a.hidePopup(),n.emit("keyup",v)}function g(v){const F=v.target.value;v.stopPropagation(),S(F)}return{hasFocusedTextBox:f,isTextBoxReadonly:p,textBoxClass:x,textBoxPlaceholder:d,textBoxTitle:c,inputGroupClass:b,changeTextBoxValue:S,commitValue:w,onBlurTextBox:C,onClickTextBox:y,onFocusTextBox:h,onInput:N,onKeyDownTextBox:m,onKeyUpTextBox:V,onMouseDownTextBox:_,onTextBoxValueChange:g}}function Jt(e,n,o,r){const a=t.ref(),i=t.ref(!1),{judgeCanOpen:l}=Xt(e,r);function s(){const u=a.value;u&&u.show(o.value)}async function c(u=!1){if(!!n.slots.default){if(!u&&!i.value&&!await l())return;i.value=!i.value,await t.nextTick(),s()}}async function d(u=!1){if(!!n.slots.default){if(!u&&!await l())return;i.value=!0,await t.nextTick(),s()}}function p(){i.value=!1}return{hidePopup:p,popup:d,shouldPopupContent:i,togglePopup:c,popoverRef:a}}function Pr(e,n,o){const r=t.ref(),{isTextBoxReadonly:a,textBoxClass:i,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:c,onClickTextBox:d,onFocusTextBox:p,onInput:u,onKeyDownTextBox:f,onKeyUpTextBox:x,onMouseDownTextBox:b,onTextBoxValueChange:S}=o;return t.onMounted(()=>{var w,C;e.selectOnCreated&&((w=r.value)==null||w.select()),e.focusOnCreated&&((C=r.value)==null||C.focus())}),()=>t.createVNode("input",{ref:r,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:i.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:a.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:n.value,onBlur:c,onChange:S,onClick:d,onFocus:p,onInput:u,onKeydown:f,onKeyup:x,onMousedown:b},null)}function Er(e,n,o){const r=t.ref(e.separator),{changeTextBoxValue:a}=o,i=t.computed(()=>n.value?n.value.split(r.value).map(s=>({name:s,selectable:!0})):[]);function l(s){a(s.map(c=>c.name).join(r.value),!0)}return()=>t.createVNode(At,{id:`${e.id}-tag-editor`,class:"form-control",data:i.value,showClose:!0,showInput:!0,onChange:l},null)}function Rr(e,n,o,r){const{buttonGroupClass:a,onClickButton:i,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:c,showClearButton:d,onClearValue:p}=r,u=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:a.value},[c.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:p},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,d.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:i,onMouseenter:l,onMouseleave:s},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:u,onClick:i,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:u}}function Hr(e,n,o){const r=t.ref(e.popupMinWidth),{hidePopup:a,popoverRef:i}=o;return()=>t.createVNode(co,{id:`${e.id}-popover`,ref:i,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:r.value,offsetX:e.popupOffsetX,onHidden:a},{default:()=>{var l,s;return[(s=(l=n.slots).default)==null?void 0:s.call(l)]}})}const nt=t.defineComponent({name:"FButtonEdit",props:St,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),r=t.ref(e.customClass),a=t.ref(e.modelValue),i=Jt(e,n,o,a),{shouldPopupContent:l,hidePopup:s,togglePopup:c}=i,d=Yt(e,n,o,i,a),p=t.ref(""),u=Dr(e,n,a,p,i),{hasFocusedTextBox:f,commitValue:x,inputGroupClass:b}=u,S=jr(e,n,a,f,p,u),{onMouseEnterTextBox:w,onMouseLeaveTextBox:C}=S,y=t.computed(()=>{const v={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return r.value&&r.value.split(" ").reduce((F,I)=>(F[I]=!0,F),v),v});function h(){return e.multiSelect&&e.inputType==="tag"?Er(e,a,u):Pr(e,a,u)}let N=h();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{N=h()});const{renderButtonGroup:_,buttonHandleElement:m}=Rr(e,n,d,S),V=Hr(e,n,i),g={commitValue:x,elementRef:o,hidePopup:s,shouldPopupContent:l,togglePopup:c,openDialog:()=>{m.value&&e.buttonBehavior==="Modal"&&m.value.click()},getModal:()=>{var v;return e.buttonBehavior==="Modal"?(v=d.modalRef.value)==null?void 0:v.value:null}};return t.onMounted(()=>{o.value.componentInstance=g,window.onresize=()=>{document.body.click()}}),n.expose(g),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:y.value,id:e.id}),[t.createVNode("div",{id:`${e.id}-input-group`,class:b.value,onMouseenter:w,onMouseleave:C},[N(),_()])]),l.value&&V()])}});function Ar(e,n,o){const{buttonGroupClass:r}=o,a=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:r.value},[n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button"},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:a},null):null]),buttonHandleElement:a}}const Gr=t.defineComponent({name:"FButtonEdit",props:St,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),r=t.inject("design-item-context"),a=uo.useDesignerComponent(o,r),i=t.ref(e.customClass),l=t.ref(e.modelValue),s=Jt(e,n,o,l),c=Yt(e,n,o,s,l),d=t.ref(),p=t.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":!0,"f-state-editable":!1,"f-state-readonly":!0}));t.onMounted(()=>{o.value.componentInstance=a}),n.expose(a.value);const u=t.computed(()=>{const x={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((b,S)=>(b[S]=!0,b),x),x}),{renderButtonGroup:f}=Ar(e,n,c);return()=>t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:u.value,id:e.id}),[t.createVNode("div",{class:p.value},[t.createVNode("input",{ref:d,class:"form-control",readonly:!0,placeholder:e.placeholder},null),f()])])}});nt.register=(e,n,o,r)=>{e["button-edit"]=nt,n["button-edit"]=qt},nt.registerDesigner=(e,n,o)=>{e["button-edit"]=Gr,n["button-edit"]=qt},ze.withInstall(nt);const Qt=new Map([["appearance",qe],["column","columnOption"]]),Zt=new Map([]);var en=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(en||{}),st=(e=>(e.String="String",e.DateTime="DateTime",e.Date="Date",e.Enum="Enum",e.Boolean="Boolean",e.Number="Number",e.Text="Text",e.BigNumber="BigNumber",e))(st||{});const Lr="root-viewmodel";class Wr{constructor(n,o){z(this,"formSchemaUtils");z(this,"controlCreatorUtils");this.resolver=n,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils}createComponent(n){const o=this.createComponentRefNode(n),r=this.createComponentNode(n),a=this.createViewModeNode(n),i=this.formSchemaUtils.getFormSchema();return i.module.viewmodels.push(a),i.module.components.push(r),this.wrapContainerSectionForComponent(o,n)}wrapContainerSectionForComponent(n,o){var i,l;const r=[te["content-container"].type,te["response-layout-item"].type,te["splitter-pane"].type],a=(l=(i=o==null?void 0:o.parentComponentInstance)==null?void 0:i.schema)==null?void 0:l.type;if(a&&r.includes(a)){const s=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance},this.designerHostService);if(s&&s.contents&&s.contents.length){const c=s.contents[0];return c.contents=[n],s}}return n}createComponentRefNode(n){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${n.componentId}-component-ref`,component:`${n.componentId}-component`}),o}createComponentNode(n){const o=this.resolver.getSchemaByType("component"),r=this.createDateGridComponentContents(n);return Object.assign(o,{id:`${n.componentId}-component`,viewModel:`${n.componentId}-component-viewmodel`,componentType:n.componentType,appearance:{class:this.getDataGridComponentClass()},contents:r}),o}createViewModeNode(n){return{id:`${n.componentId}-component-viewmodel`,code:`${n.componentId}-component-viewmodel`,name:n.componentName,bindTo:n.bindTo,parent:Lr,fields:this.assembleViewModelFields(n),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}getDataGridComponentClass(){return this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(n){const o=this.formSchemaUtils.getFormSchema().module.templateId;let r;if(o==="double-list-in-tab-template"){const s=this.resolver.getSchemaByType("section");Object.assign(s,{id:n.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),r=s}else{const s=this.resolver.getSchemaByType("content-container");Object.assign(s,{id:n.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),r=s}const a=this.resolver.getSchemaByType("data-grid"),i=[];Object.assign(a,{id:n.componentId+"-dataGrid",appearance:{class:"f-component-grid f-utils-fill"},fields:i,fieldEditable:n.editable,dataSource:n.dataSource||""}),r.contents=[a];const{selectedFields:l}=n;return l==null||l.forEach(s=>{if(s.$type===en.ComplexField)return;const c=Re.cloneDeep(s),d=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",c,"",n.editable);d&&i.push(d)}),[r]}assembleViewModelFields(n){const o=[],{selectedFields:r}=n;return r==null||r.forEach(a=>{let i="blur";const l=a.type.name;(l===st.Enum||l===st.Boolean)&&(i="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:i,fieldSchema:{}})}),o}}function tn(e,n,o,r){const a=o.parentComponentInstance;if(a){const i=Math.random().toString(36).slice(2,6),l={componentId:`data-grid-${i}`,componentName:`表格-${i}`,componentType:"data-grid",parentContainerId:a.schema.id,parentComponentInstance:a,editable:!0,bindTo:"",dataSource:""};return new Wr(e,r).createComponent(l)}else return n}function nn(e,n,o){return n}const zr={$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},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},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"client",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},clickRow:{description:"行点击事件",type:"string",default:""},selectionChange:{description:"行切换事件",type:"string",default:""},pageIndexChanged:{description:"切换页码事件",type:"string",default:""},pageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type"]},_t={changePolicy:{type:String,default:"push"},columns:{type:Array,default:[]},columnOption:{type:Object},data:{type:Array,default:[]},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},selectOnEditingCell:{type:Boolean,default:!1},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},mergeCell:{type:Boolean,default:!1},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!1},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},enableCommands:{type:Boolean,default:!1},commandOption:{type:Object,default:{enable:!1,commands:[]}},appendOnEnterAtLastCell:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},qr=Object.assign({},_t,{componentId:{type:String,default:""}}),on=Oe(_t,zr,Qt,tn),rn=hr(),Ur=yr();var Be=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Be||{}),Ae=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(Ae||{}),Ye=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(Ye||{}),je=(e=>(e[e.none=0]="none",e[e.filterable=1]="filterable",e[e.sortable=2]="sortable",e[e.filtered=4]="filtered",e[e.sorted=8]="sorted",e[e.ascending=16]="ascending",e[e.descending=32]="descending",e))(je||{}),Vt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(Vt||{});function Kr(){function e(){return t.createVNode("div",{class:"fv-grid-disable"},null)}return{renderDisableMask:e}}function Xr(e,n,o,r,a){const{columnContext:i}=n,{conditions:l,clearCondition:s,removeCondition:c}=r,d=t.ref([]);function p(){const b=[];Array.from(l.value).forEach((S,w)=>{const C={id:S.id,code:S.fieldCode,labelCode:S.fieldCode,name:S.fieldName,editor:{type:S.value.editorType}};b.push(C)}),d.value=b}t.watch(l,()=>p());function u(b){c(`field_filter_${b}`);const S=i.value.primaryHeaderColumns.find(w=>w.field===b);if(S){S.filterValue=null;let w=S.status;w=(w&je.filtered)===je.filtered?w^je.filtered:w,S.status=w}o.refresh(),a.reCalculateVisualDataRows()}function f(){s(),i.value.primaryHeaderColumns.forEach(b=>{b.filterValue=null;let S=b.status;S=(S&je.filtered)===je.filtered?S^je.filtered:S,b.status=S}),o.refresh(),a.reCalculateVisualDataRows()}function x(){return t.createVNode("div",{class:"fv-grid-filter-panel"},[t.createVNode(Gt.FFilterBar,{data:l.value,fields:d.value,mode:"display-only","show-reset":!0,onRemove:u,onReset:f},null)])}return{renderFilterPanel:x}}function Yr(e,n,o,r,a){const{dropOnGroupPanel:i,groupColumnItems:l}=o,{groupFields:s,shouldGroupingData:c}=r,d=t.ref();function p(x){s.value=x.map(b=>b.value),n.updateDataView(),a.reCalculateVisualDataRows()}function u(x){x.preventDefault()}function f(){return c.value&&t.createVNode("div",{class:"fv-grid-group-panel",onDrop:i,onDragover:u},[l.value&&t.createVNode(t.resolveComponent("f-tags"),{ref:d,style:"margin:0.375rem","tag-type":"default",data:l.value,"tag-style":"capsule","show-close":!0,onChange:p},null)])}return{renderGroupPanel:f}}function Nt(e,n){var x;const o=String(Date.now()),r=((x=e.rowOption)==null?void 0:x.height)||28,a=t.ref(n.value.primaryColumnsWidth);function i(b){const S={};return b.reduce((w,C,y)=>{const h=y<b.length-1?b[y+1]:null;return y===0&&(w[C.field]={left:0}),C.actualWidth!==void 0&&(w[C.field].width=C.actualWidth),h&&(w[h.field]={left:w[C.field].left+(C.actualWidth||0)}),w},S),S}function l(b,S,w){const C=r*(w+1),h=S[b.field].left-C+(S[b.field].width||0),N=b.parent.height?`${b.parent.height}px`:"";return{left:`${C}px`,width:`${h}px`,height:`${N}`}}function s(b,S,w){return{right:"0px",height:`${b.parent.height?`${b.parent.height}px`:""}`}}function c(b,S){const w=b.parent.height?`${b.parent.height}px`:"";return{left:`${S[b.field].left}px`,height:`${w}`,width:isNaN(Number(S[b.field].width))?"100%":`${S[b.field].width}px`}}function d(b,S,w){const y=(S.spanned||[]).reduce((N,_)=>N+(_.parent.height||0),0)+(b.height||0);return{top:`${b.top}px`,left:`${w[S.field].left}px`,width:`${w[S.field].width}px`,height:`${y}px`,padding:`calc(${y/2}px - 1rem) 0`}}function p(b,S){return`${o}_${b.type}_r_${b.index}_c_${S}_${b.refreshKey||""}`}function u(b){return`${o}_${b.type}_r_${b.index}_${b.refreshKey||""}`}function f(b){const S=b.height?`${b.height}px`:"";return{top:`${b.top}px`,width:isNaN(a.value)?"100%":`${a.value}px`,height:`${S}`}}return t.watch(n,()=>{a.value=n.value.primaryColumnsWidth}),{calculateCellPositionInRow:i,cellKey:p,cellPosition:c,groupCellPosition:l,rowKey:u,rowPosition:f,rowSpanCellPosition:d,summaryCellPosition:s}}function Jr(e,n,o){const{hasChildrenField:r}=o,a=t.ref("#9399a0"),i=t.ref(28);function l(){return[].concat(...n.value.filter(f=>f.raw.__fv_descendant_index__.length!==0).map(f=>[...f.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((f,x)=>Number(f)-Number(x))}function s(p){const u=new Array(n.value.length).fill(0);if(e.showLines){const f=l();n.value.forEach((x,b)=>{const S=f.includes(b),w=x.raw[r.value];u[b]=`repeating-linear-gradient(90deg, ${a.value} 0 1px, transparent 0px 2px) ${w?"-10px":"0px"} ${i.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${a.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${S?"50%":"100%"} no-repeat`}),u[0]=""}return u[p]}function c(p,u,f){return f[p].parents.set(p,!0).forEach(b=>{f[b].childsLength=f[b].childWithLines.filter(S=>u[S].visible).length}),u}function d(p){const x=p.raw.__fv_parent_index__===void 0||p.raw.__fv_parent_index__===-1?0:8,b=0,S=p.raw[r.value],w=p.visible?{left:`${p.layer*10+p.layer*x+b}px`,background:s(p.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return S||(w.paddingLeft="2rem"),w}return{hierarchyCellContentStyle:d,handleCollapsedPaddingBottom:c}}function Qr(e,n,o){const r=t.ref(e.iconField);function a(i,l){if(r.value)return i.raw[e.iconField];let s="";return i.raw[o.value]!==!0?s=n.value.leafnodes:s=i.collapse?n.value.fold:n.value.unfold,s}return{treeNodeIconsClass:a}}function kt(){function e(o,r){const a=o.pre;if(a){const i=o.visible?(a.__fv_data_position__||0)+(a.__fv_data_height__||0):a.__fv_data_position__;o.top=i,r.__fv_data_position__=i}else o.top=0,r.__fv_data_position__=0}function n(o,r,a){if(o){const i=r.parent;r.cellHeight!==o.offsetHeight&&(r.cellHeight=o.offsetHeight),r.cellHeight&&r.cellHeight>(i.height||0)&&(i.height=r.cellHeight,a.__fv_data_height__=i.height),e(i,a)}}return{updateRowPosition:e,updateVisualInfomation:n}}function Zr(e,n,o,r,a,i){const{dataView:l,fold:s,hasRealChildren:c,unFold:d}=r,{collapseField:p,hasChildrenField:u}=a,{updateRowPosition:f}=kt();function x(w,C){const y=C[w].layer;let h=w+1;for(;h<C.length&&C[h].layer>y;)h++;return h-1}function b(w,C){o.value[w].collapse=!o.value[w].collapse,o.value[w].raw[p.value]=o.value[w].collapse,o.value[w].raw[u.value]=c(o.value[w].raw);const y=o.value[w].collapse;let h=!1,N=w;for(;N<o.value.length;){const m=o.value[N];if((typeof m.raw.__fv_parent_index__=="number"?Number(m.raw.__fv_parent_index__):-1)>C)m.visible=!y,m.raw.__fv_visible__=m.visible,m.collapse&&(N=x(N,o.value)),h=!0;else if(h){N++;break}N++}let _=w;for(;_<o.value.length;){const m=o.value[_];f(m,m.raw),_++}}function S(w){if(w.raw[u.value]){const y=typeof w.raw.__fv_parent_index__=="number"?Number(w.raw.__fv_parent_index__):-1;b(Number(w.raw.__fv_index__),y)}}return{toggleTreeNode:S}}function ei(e,n,o,r,a,i,l,s,c,d,p){const{onClickCell:u}=i,{gridRowClass:f,onClickRow:x,onMouseoverRow:b,onMouseoutRow:S}=s,{clearSelection:w,enableMultiSelect:C,select:y,unSelect:h,isSelectingHirarchyItem:N,multiSelectOnClickRow:_,multiSelectOnlyOnCheck:m,selectItem:V,toggleSelectItem:g}=c;t.ref(e.cellHeight);const v=t.ref(e.treeNodeIconsData||{}),{hasChildrenField:F,shouldShowCheckBox:I,shouldShowIcon:T}=l,{toggleTreeNode:M}=Zr(e,n,r,a,l),{toggleSelectHierarchyItem:k}=d,{cellKey:B,cellPosition:$,rowKey:O,rowPosition:D}=Nt(e,o),{hierarchyCellContentStyle:j}=Jr(e,r,l),{treeNodeIconsClass:P}=Qr(e,v,F);function E(W,U){const ce=W.raw[F.value];return{"fv-tree-node-toggle":ce&&W.collapse,"fv-tree-node-toggle-minus":ce&&!W.collapse}}function re(W,U){W.stopPropagation(),M(U)}function se(W,U){return t.createVNode("div",{class:E(W),onClick:ce=>re(ce,W)},null)}function ve(W,U){return T.value&&t.createVNode("div",{id:"treeNodeIcons",class:P(W,U)},null)}function ke(W){C.value?(W.checked?y(W):h(W),k(W)):V(W)}function Se(W,U){return I.value&&t.createVNode(at.FCheckBox,{id:"checkbox_for_"+B(W,U.index),indeterminate:W.indeterminate,checked:W.checked,"onUpdate:checked":ce=>W.checked=ce,onChange:()=>ke(W)},null)}function he(W,U){return t.createVNode("span",{title:U.data},[U.mode===Be.editing?U.getEditor(U):U.formatter?U.formatter(U,W):U.data!=null?U.data.toString():U.data])}function Ce(W,U,ce){return t.createVNode("div",{ref:U.setRef,key:B(W,U.index),class:"fv-grid-hierarchy-cell",style:$(U,ce)},[t.createVNode("div",{style:j(W)},[se(W),ve(W,U),Se(W,U),he(W,U)])])}function _e(W,U,ce){return t.createVNode("div",{ref:U.setRef,key:B(W,U.index),class:"fv-grid-cell",style:$(U,ce),onClick:ee=>u(ee,U)},[U.mode===Be.editing?U.getEditor(U):U.formatter?U.formatter(U,W):U.data!=null?U.data.toString():U.data])}function ae(W,U){return U==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===W.field||U==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===W.field}function ue(W,U,ce="primary"){return t.createVNode("div",{ref:W.setRef,key:O(W),class:f(W),style:D(W),onMouseover:ee=>b(ee,W),onMouseout:ee=>S(ee,W),onClick:ee=>x(ee,W)},[Object.values(W.data).filter(ee=>U[ee.field]&&ee.rowSpan===1).map((ee,ge)=>ae(ee,ce)?Ce(W,ee,U):_e(W,ee,U))])}return{renderDataRow:ue}}function an(e,n,o){const{horizontalScrollThumbStyle:r,onMouseDownScrollThumb:a,shouldShowHorizontalScrollbar:i}=o;function l(){return i.value&&t.createVNode("div",{class:"fv-grid-horizontal-scroll"},[t.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:r.value,onMousedown:s=>a(s,n,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function ti(e,n,o,r,a){const{currentPage:i,pageSize:l,pageList:s,total:c,showPageIndex:d,showPageList:p,mode:u}=a;function f(S){o.navigatePageTo(S),r.resetScroll(),n.emit("pageIndexChanged",S)}function x(S){o.changePageSizeTo(S),r.resetScroll(),n.emit("pageSizeChanged",S)}t.onMounted(()=>{u.value==="server"&&f(1)});function b(){return t.createVNode("div",{class:"fv-datagrid-pagination"},[t.createVNode(Lt,{mode:"default",currentPage:i.value,"onUpdate:currentPage":S=>i.value=S,pageSize:l.value,"onUpdate:pageSize":S=>l.value=S,showPageList:p.value,showPageNumbers:d.value,totalItems:c.value,pageList:s.value,onPageIndexChanged:f,onPageSizeChanged:x},null)])}return{renderDataGridPagination:b}}function ln(e,n,o,r,a){const{isSelectingHirarchyItem:i,multiSelectOnClickRow:l,multiSelectOnlyOnCheck:s,selectItem:c,toggleSelectItem:d}=o,{onMouseoverRow:p,sidebarRowClass:u}=n,{showRowNumer:f,showSidebarCheckBox:x,sidebarCellPosition:b,rowKey:S,cellKey:w}=r,{gridSideStyle:C}=a;function y(g){g.stopPropagation()}function h(g){return t.createVNode("div",{class:"d-inline-flex "},[t.createVNode("div",{class:"custom-control custom-checkbox f-checkradio-single",style:"margin:0;padding-left:0.5rem"},[t.withDirectives(t.createVNode("input",{id:w(g),title:w(g),type:"checkbox","onUpdate:modelValue":v=>g.checked=v,class:"custom-control-input"},null),[[t.vModelCheckbox,g.checked]]),t.createVNode("label",{class:"custom-control-label",for:w(g),onClick:y},null)])])}function N(g){return t.createVNode("div",{class:"fv-grid-sidebar-row-number justify-content-center",style:"padding:0",onMouseover:v=>p(v,g)},[t.createVNode("div",{title:g.dataIndex,class:{"text-center":!0,"text-truncate":e.rowNumber.showEllipsis,"w-100":e.rowNumber.showEllipsis}},[g.dataIndex])])}function _(g,v,F){i.value?l.value?d(F):c(F):s.value||l.value?d(F):c(F)}function m(g){return(x.value||f.value)&&g.value.map(v=>t.createVNode("div",{key:S(v),class:u(v),style:b(v),onClick:F=>_(F,g,v)},[x.value&&!e.hierarchy&&h(v),f.value&&N(v)]))}function V(g){return t.createVNode("div",{class:"fv-grid-content-side"},[t.createVNode("div",{class:"fv-grid-side",style:C.value},[m(g)])])}return{renderDataGridSidebar:V}}function ni(e,n,o){const{columnContext:r}=o,a=t.ref(e.summary),i=t.computed(()=>{const s=a.value;return s&&s.enable&&s.groupFields&&s.groupFields.length>0});function l(){return i.value&&t.createVNode("div",{class:"fv-datagrid-summary"},[t.createVNode("div",{class:"fv-datagird-summary-panel"},[t.createVNode("span",{class:"fv-datagrid-summary-title"},[t.createTextVNode("当页合计")]),t.createVNode("div",{class:"fv-datagrid-summary-content"},[r.value.summaryColumns.map(s=>t.createVNode("div",{class:"fv-datagrid-summary-field"},[t.createVNode("span",{class:"fv-datagrid-summary-field-title"},[`${s.title}:`]),t.createVNode("span",{class:"fv-datagrid-summary-field-value"},[n.summaries.get(s.field)])]))])])])}return{renderDataGridSummery:l}}function sn(e,n,o){const{verticalScrollThumbStyle:r,onMouseDownScrollThumb:a,shouldShowVirticalScrollbar:i}=o;function l(){return i.value&&t.createVNode("div",{class:"fv-grid-vertical-scroll"},[t.createVNode("div",{class:"fv-grid-vertical-scroll-thumb",style:r.value,onMousedown:s=>a(s,n,"vertical")},null)])}return{renderVerticalScrollbar:l}}function oi(){function e(r,a){switch(r.command){case"edit":case"remove":return a.status===Ae.initial;case"accept":case"cancel":return a.status===Ae.editing;default:return!r.hidden}}function n(r,a,i){switch(r.onClick(a,i.dataIndex,i),r.command){case"edit":i.status,Ae.editing;break;case"accept":case"cancel":i.status,Ae.initial;break}}function o(r,a){return t.createVNode("div",null,[r.commands&&r.commands.map(i=>e(i,a)&&t.createVNode(t.resolveComponent("f-button"),{class:"ml-2",type:i.type,size:i.size||"small",onClick:l=>n(i,l,a)},{default:()=>[t.createTextVNode(" "),i.text,t.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function ri(e){function n(){return t.createVNode("div",{class:"d-flex flex-column f-datagrid-norecords"},[t.createVNode("div",{class:"f-datagrid-norecords-content",style:"margin: 0;width: 100%;position: relative; top: 0"},[t.createTextVNode(" "),e.slots.empty&&e.slots.empty()||"暂无数据"])])}return{renderEmpty:n}}function cn(e){const n=t.ref(e.minHeight),o=t.ref(e.minWidth),r=t.ref(e.height),a=t.ref(e.width),i=t.computed(()=>r.value<=0?0:Math.max(r.value,n.value)),l=t.computed(()=>a.value<=0?0:Math.max(a.value,o.value));return t.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([c,d,p,u])=>{n.value=Number(p),o.value=Number(u),r.value=Number(c),a.value=Number(d)}),{containerStyleObject:t.computed(()=>({height:i.value>0?`${i.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":""}))}}function dn(e){const o={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},r=t.ref(o);function a(){r.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 i=t.ref(e.summary),l=t.computed(()=>{const h=i.value;return(h==null?void 0:h.groupFields)||[]});function s(){r.value.rightColumns.forEach(_=>{_.showSetting=!1}),r.value.primaryColumns.forEach(_=>{_.showSetting=!1});const h=r.value.rightColumns.filter(_=>_.visible),N=r.value.primaryColumns.filter(_=>_.visible);h.length>0?h[h.length-1].showSetting=!0:N.length>0&&(N[N.length-1].showSetting=!0)}function c(h){a();const N=new Map;return l.value&&l.value.reduce((_,m)=>(_.set(m,!0),_),N),h.reduce((_,m)=>(m.visible=m.visible!==!1,m.fixed==="left"?(r.value.leftColumns.push(m),r.value.leftColumnsMap.set(m.field,m),r.value.leftColumnsWidth+=m.actualWidth):m.fixed==="right"?(r.value.rightColumns.push(m),r.value.rightColumnsMap.set(m.field,m),r.value.rightColumnsWidth+=m.actualWidth):(r.value.primaryColumns.push(m),r.value.primaryColumnsMap.set(m.field,m),r.value.primaryColumnsWidth+=m.actualWidth),N.has(m.field)&&r.value.summaryColumns.push(m),_),r),s(),r}c(e.columns);const d=t.computed(()=>r.value.leftColumns.length>0),p=t.computed(()=>r.value.rightColumns.length>0);function u(h,N){return N.sortable&&N.sort&&N.sort!=="none"&&h.push(N),h}function f(h,N){return h.sortOrder=h.sortOrder||0,N.sortOrder=N.sortOrder||0,h.sortOrder===N.sortOrder?0:h.sortOrder<N.sortOrder?-1:1}function x(h,N){return h.sortOrder=h.sortOrder||0,N.sortOrder=N.sortOrder||0,h.sortOrder===N.sortOrder?0:h.sortOrder<N.sortOrder?1:-1}function b(h,N){return N.filterable&&h.push(N),h}function S(){const h=[];return r.value.leftColumns.reduce(b,h),r.value.primaryColumns.reduce(b,h),r.value.rightColumns.reduce(b,h),h}function w(){const h=[];r.value.leftColumns.reduce(u,h),r.value.primaryColumns.reduce(u,h),r.value.rightColumns.reduce(u,h);const N=Math.max(...h.map(_=>_.sortOrder||0));return h.sort(x).map(_=>{const m=_.sortOrder||N+1;return _.sortOrder=m,_}).sort(f).map((_,m)=>{const V=m+1;return _.sortOrder=V,_})}function C(h,N,_){const m=h.map(V=>{const g=_.getSorterByColumn(V),v=V.sort==="asc",F=V.sort==="desc",I=v?g.ascend:F?g.decend:void 0;return{field:V.field,compare:I}});N.setSorters(m)}function y(h,N){const _=w();C(_,h,N)}return{applyColumnSorter:y,collectionFilterableColumns:S,applySortableColumns:C,collectionSortableColumns:w,columnContext:r,hasLeftFixedColumn:d,hasRightFixedColumn:p,updateColumnRenderContext:c,updateColumnSettingIcon:s}}const ii=[{name:"是",value:!0},{name:"否",value:!1}];function ai(e){return e.filter=e.filter||function(n){return String(e.filterValue).split(",").includes(String(n[e.field]))},t.createVNode("div",null,[t.createVNode(t.resolveComponent("f-checkbox-group"),{modelValue:e.filterValue,"onUpdate:modelValue":n=>e.filterValue=n,"enum-data":ii},null)])}const li=t.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function si(e){const n=t.ref(!1);return e.filter=e.filter||function(o){const r=new Date(new Date(e.filterValue).toLocaleDateString()).valueOf();return new Date(new Date(o[e.field]).toLocaleDateString()).valueOf()===r},t.createVNode("div",{style:"display:flex;flex-direction:column;"},[t.createVNode("div",{style:"display:flex;margin-bottom:6px;"},[t.createVNode("label",{style:"margin-right:8px"},[t.createTextVNode("按区间筛选")]),t.createVNode(t.resolveComponent("f-switch"),{modelValue:n.value,"onUpdate:modelValue":o=>n.value=o,size:"small"},null)]),t.createVNode(t.resolveComponent("f-date-picker"),{modelValue:e.filterValue,"onUpdate:modelValue":o=>e.filterValue=o},null),t.createVNode(t.resolveComponent("f-tags"),{style:"margin-top:10px",data:li.value,selectable:!0,"tag-style":"capsule"},null)])}function ci(e){e.filter=e.filter||function(o){const r=Number.parseFloat(e.filterValue),a=Number.parseFloat(o[e.field]);return isNaN(r)?isNaN(a):r===a};function n(o){e.filterValue=o}return t.createVNode("div",null,[t.createVNode(t.resolveComponent("f-number-spinner"),{"can-null":!0,precision:"2",value:e.filterValue,onValueChange:n},null)])}function di(e,n,o,r,a,i){e.filterHistory=e.filterHistory||a.getFilterHistory(e),e.filter=e.filter||function(f){return(f[e.field]||"").startsWith(e.filterValue)};function l(f,x){a.removeFilterHistory(e,f.name),e.filterHistory=a.getFilterHistory(e)}function s(f){e.filterValue=f.name}function c(f){e.filterHistory=f}const d=r.rawView.value.reduce((f,x,b)=>(f.push(x[e.field]),f),[]),u=[...new Set(d)].map((f,x)=>({id:x,name:f}));return t.createVNode("div",{style:"display:flex;flex-direction:column;"},[t.createVNode(t.resolveComponent("f-search-box"),{modelValue:e.filterValue,"onUpdate:modelValue":f=>e.filterValue=f,"popup-host":n.value,"popup-right-boundary":o.value,"popup-offset-x":i.offsetX,"recommended-data":u},null),t.createVNode(t.resolveComponent("f-tags"),{style:"margin-top:10px","tag-type":"default",data:e.filterHistory,"show-close":!0,selectable:!0,onRemove:l,onSelectionChange:s,onChange:c},null)])}function ui(e,n,o,r,a,i){e.filter=e.filter||function(x){return String(e.filterValue).split(",").includes(String(x[e.field]))};const l=",",s=r.rawView.value.reduce((x,b,S)=>(x.push(b[e.field]),x),[]),d=[...new Set(s)].map((x,b)=>({id:b,name:x}));function p(x){return(x==null?void 0:x.split(l))||[]}function u(x){return x.map(S=>S.name).join(l)}function f(x){e.filterValue=u(x)}return t.createVNode(t.resolveComponent("f-list-view"),{data:d,"multi-select":!0,"multi-select-mode":"OnCheckAndClick","id-field":"name",view:"SingleView",header:"Search",size:"Small","selection-values":p(e.filterValue),onSelectChange:x=>f(x)},{default:()=>[t.createTextVNode(" ")]})}function fi(e){t.ref("请输入关键词"),t.ref('<i class="f-icon f-icon-search"></i>');const n=[{name:"发票类型",checked:!1},{name:"发票代码",checked:!1},{name:"开票日期",checked:!1},{name:"票价(燃油附加费)",checked:!1},{name:"税收分类编号",checked:!1},{name:"不含税单价",checked:!1},{name:"往来单位",checked:!1},{name:"商品服务描述",checked:!1},{name:"项目负责人",checked:!1},{name:"所属单位",checked:!1}];return t.createVNode(t.resolveComponent("f-list-view"),{data:n,"multi-select":!0,view:"SingleView",size:"Small"},{default:()=>[t.createTextVNode(" ")]})}function un(e,n,o,r,a){const i=new Map([["boolean","boolean-filter"],["date","date-filter"],["datetime","date-filter"],["number","numeric-filter"],["string","text-filter"],["text","text-filter"],["enum","enum-filter"],["reference","list-filter"]]),l=new Map([["boolean-filter",ai],["date-filter",si],["enum-filter",ui],["list-filter",fi],["numeric-filter",ci],["text-filter",di]]);function s(c){var f,x;const d=((f=c.column)==null?void 0:f.dataType)||"string",p=((x=c.column)==null?void 0:x.filter)||i.get(d)||"text-editor",u=l.get(p);if(u)return u(c,e,n,o,r,a)}return{getFilterEditor:s}}function fn(e){const o=t.ref(e.commandOption.enable||!1),r=t.ref(e.commandOption.commands||[]);function a(i){if(o.value&&!(i.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:r.value,visible:!0};i.value.push(s)}}return{applyCommands:a}}function pn(e,n,o,r,a,i,l){const{columnContext:s}=o,{getGridHeaderCells:c}=a,{groupFields:d}=i,p=t.ref(-1),u=t.ref(!1),f=t.computed(()=>d.value&&d.value.map(y=>{var h;return{name:((h=s.value.primaryColumnsMap.get(y))==null?void 0:h.title)||y,value:y}}));function x(y,h,N){var _,m,V;if(y.stopPropagation(),h){const g=`${(_=h.column)==null?void 0:_.title}:${(m=h.column)==null?void 0:m.field}`;(V=y.dataTransfer)==null||V.setData("Text",g),setTimeout(()=>{p.value=N,u.value=!0})}}function b(y,h){if(y.preventDefault(),p.value!==h){const{primaryColumns:N}=s.value,_=N[p.value],m=N;m.splice(p.value,1),m.splice(h,0,_),s.value.primaryHeaderColumns=Array.from(c(m).values()),p.value=h}}function S(y,h){y.preventDefault(),y.dataTransfer&&(y.dataTransfer.dropEffect="move")}function w(y,h){u.value=!1,r.updateDataView(),l.reCalculateVisualDataRows()}function C(y){var N;y.preventDefault(),y.stopPropagation();const h=(N=y.dataTransfer)==null?void 0:N.getData("Text");if(h){const _=h.split(":");_[0];const m=_[1];i.groupFields.value.push(m)}r.updateDataView(),l.reCalculateVisualDataRows()}return{dragstart:x,dragenter:b,dragover:S,dragend:w,dropOnGroupPanel:C,isDragging:u,groupColumnItems:f}}function mn(e,n,o,r,a){const{getGridHeaderCells:i}=a,l=120,s=50,c=t.computed(()=>{var g;return((g=e.rowNumber)==null?void 0:g.enable)||!1}),d=t.computed(()=>{var g,v;return((g=e.selection)==null?void 0:g.multiSelect)||((v=e.selection)==null?void 0:v.showCheckbox)||!1}),p=t.computed(()=>{var g;return 0+(c.value?((g=e.rowNumber)==null?void 0:g.width)||32:0)+(d.value?s:0)}),u=t.computed(()=>{var g;return(g=e.columnOption)==null?void 0:g.fitColumns}),f=t.computed(()=>{var g;return u.value&&((g=e.columnOption)==null?void 0:g.fitMode)||"average"});function x(g,v,F){const I=parseInt(g.width,10)/100;return F*I}function b(g,v,F){return typeof g.width=="string"?x(g,v,F):g.width||l}function S(g,v){const F=[],I=[];let T=0;g.value.primaryColumns.filter(B=>B.visible).forEach(B=>{typeof B.width=="string"?I.push(B):(B.width=B.width||l,T+=B.width,F.push(B))});const M=v*(F.length/g.value.primaryColumns.filter(B=>B.visible).length);F.forEach(B=>{const $=M*(B.width/T);B.actualWidth=$,g.value.primaryColumnsWidth+=B.actualWidth});const k=v-M;I.forEach(B=>{const $=x(B,g.value,k);B.actualWidth=$,g.value.primaryColumnsWidth+=B.actualWidth})}function w(g,v){const F=v/(g.value.primaryColumns.filter(I=>I.visible).length||1);g.value.primaryColumns.filter(I=>I.visible).forEach(I=>{I.actualWidth=F,g.value.primaryColumnsWidth+=I.actualWidth})}function C(g,v){const F=[],I=[],T=new WeakMap;let M=0,k=0;if(g.value.primaryColumns.filter($=>$.visible).forEach($=>{if(typeof $.width=="string"){const O=x($,g.value,v);T.set($,O),M+=O,I.push($)}else $.width=$.width||l,k+=$.width,F.push($)}),v-M>k){const $=v-M;I.forEach(O=>{O.actualWidth=T.get(O)||l,g.value.primaryColumnsWidth+=O.actualWidth}),F.forEach(O=>{O.actualWidth=$*(O.width/k),g.value.primaryColumnsWidth+=O.actualWidth})}else S(g,v)}function y(g,v){g.value.primaryColumns.filter(F=>F.visible).forEach(F=>{F.actualWidth=b(F,g.value,v),g.value.primaryColumnsWidth+=F.actualWidth})}const h={average:w,expand:C,none:y,percentage:S};function N(g){g.value.leftHeaderColumns=Array.from(i(g.value.leftColumns.filter(v=>v.visible)).values()),g.value.primaryHeaderColumns=Array.from(i(g.value.primaryColumns.filter(v=>v.visible)).values()),g.value.rightHeaderColumns=Array.from(i(g.value.rightColumns.filter(v=>v.visible)).values())}function _(g){g.value.leftColumnsWidth=0,g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,g.value.leftColumns.filter(v=>v.visible).forEach(v=>{g.value.leftColumnsWidth+=v.actualWidth||0}),g.value.primaryColumns.filter(v=>v.visible).forEach(v=>{g.value.primaryColumnsWidth+=v.actualWidth||0}),g.value.rightColumns.filter(v=>v.visible).forEach(v=>{g.value.rightColumnsWidth+=v.actualWidth||0}),g.value=Object.assign({},g.value)}function m(g,v,F){var O;let I=0;const T=g.value.primaryColumns,M=g.value.rightColumns;g.value.rightColumns.filter(D=>D.visible).forEach(D=>{D.actualWidth=b(D,g.value,v),I+=D.actualWidth});const k=F-I,B=h[f.value];if(B&&B(g,k),g.value.primaryColumnsWidth+I<=F)return g.value.primaryColumns=[...T,...M],g.value.primaryColumnsWidth+=I,g.value.rightColumns=[],g.value.rightColumnsWidth=0,!0;const $=new Map;return $.set("primary",[]),$.set("right",[]),g.value.primaryColumns.reduce((D,j)=>{var P,E;return j.fixed==="right"?(P=D.get("right"))==null||P.push(j):(E=D.get("primary"))==null||E.push(j),D},$),(O=$.get("right"))!=null&&O.length&&(g.value.primaryColumns=[...$.get("primary")||[]],g.value.rightColumns=[...$.get("right")||[]]),g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,!1}function V(){if(o.value){n.value.leftColumnsWidth=0,n.value.primaryColumnsWidth=0,n.value.rightColumnsWidth=0;const g=o.value.clientWidth-p.value;n.value.leftColumns.filter(F=>F.visible).forEach(F=>{F.actualWidth=b(F,n.value,g),n.value.leftColumnsWidth+=F.actualWidth});const v=g-n.value.leftColumnsWidth;if(m(n,g,v))r.value=v;else{n.value.rightColumns.filter(T=>T.visible).forEach(T=>{T.actualWidth=b(T,n.value,g),n.value.rightColumnsWidth+=T.actualWidth});const F=g-n.value.leftColumnsWidth-n.value.rightColumnsWidth,I=h[f.value];I&&I(n,F),r.value=F}N(n),n.value=Object.assign({},n.value)}}return t.watch(()=>{var g;return(g=e.columnOption)==null?void 0:g.fitColumns},(g,v)=>{g!==v&&g&&V()}),t.watch(f,(g,v)=>{g!==v&&u.value&&V()}),{calculateColumnHeaders:N,calculateColumnsSize:V,calculateColumnsWidth:_}}const gn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class pi{constructor(n={value:[]}){z(this,"editorType","check-box");z(this,"value");z(this,"valueType","boolean");this.value=n.value}clear(){this.value=[]}setValue(n){this.value=n}getValue(){return this.value}isEmpty(){return this.value.length===0}}class mi{constructor(n={textValue:"",value:"",valueField:""}){z(this,"editorType","combo-lookup");z(this,"textValue");z(this,"value");z(this,"valueField");z(this,"valueType","text");this.textValue=n.textValue,this.value=n.value,this.valueField=n.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(n,o){if(o.length>1){const r=o.shift();return n[r]?this.getPropValue(n[r],o):null}return n[o[0]]}getTextValue(n){const o=n.split("."),r=this.value.split(",").map(a=>this.getPropValue(a,Re.cloneDeep(o)));return r&&r.length?r.join(","):""}getValue(){const n=this.valueField.split("."),o=this.value.split(",").map(r=>this.getPropValue(r,Re.cloneDeep(n)));return o&&o.length?o.join(","):""}setValue(n){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class gi{constructor(n={value:""}){z(this,"editorType","date-picker");z(this,"value");z(this,"valueType","datetime");this.value=n.value}setValue(n){this.value=n.formatted}getValue(){return this.value}isEmpty(){return!this.value}clear(){this.value=void 0}}class hn{constructor(n={begin:"",end:""}){z(this,"editorType","date-range");z(this,"begin","");z(this,"end","");z(this,"valueType","datetime");this.begin=n.begin,this.end=n.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(n){n.dataRange?(this.begin=n.dataRange.split(n.delimiter)[0],this.end=n.dataRange.split(n.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class hi{constructor(n={value:""}){z(this,"editorType","datetime-picker");z(this,"value");z(this,"valueType","datetime");this.value=n.value}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=n.formatted}isEmpty(){return!this.value}}class yi{constructor(n={value:"",dispalyText:""}){z(this,"editorType","combo-list");z(this,"value");z(this,"valueType","enum");z(this,"displayText");this.displayText=n.dispalyText,this.value=n.value}clear(){this.value="",this.displayText=""}getValue(){return this.displayText}setValue(n){this.displayText=n.dispalyText,this.value=n.value}isEmpty(){return!this.displayText}}class vi{constructor(n={value:[],displayText:"",displayField:"",isInputText:!1}){z(this,"editorType","input-group");z(this,"value");z(this,"valueType","text");z(this,"displayText");z(this,"valueField");z(this,"isInputText");this.value=n.value,this.displayText=n.displayText,this.valueField=n.displayField,this.isInputText=n.isInputText}clear(){this.value=[],this.displayText="",this.valueField=""}getPropValue(n,o){if(o.length>1){const r=o.shift();return n[r]?this.getPropValue(n[r],o):""}return n[o[0]]}getTextValue(n){const o=n.split("."),r=this.value.map(a=>this.getPropValue(a,Re.cloneDeep(o)));return r&&r.length?r.join(","):""}getValue(){const n=this.valueField.split(".")||[],o=this.value.map(r=>this.getPropValue(r,Re.cloneDeep(n)));return o&&o.length?o.join(","):""}setValue(n){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText}}class bi{constructor(n={textValue:"",value:[],valueField:"",isInputText:!1}){z(this,"editorType","lookup");z(this,"textValue");z(this,"value");z(this,"valueField");z(this,"valueType","text");z(this,"isInputText");this.value=n.value,this.valueField=n.valueField,this.textValue=n.textValue,this.isInputText=n.isInputText}clear(){this.value=[],this.valueField="",this.textValue=""}getPropValue(n,o){if(o.length>1){const r=o.shift();return n[r]?this.getPropValue(n[r],o):null}return n[o[0]]}getTextValue(n){const o=n.split("."),r=this.value.map(a=>this.getPropValue(a,o));return r&&r.length?r.join(","):""}getValue(){const n=this.valueField.split("."),o=this.value.map(r=>this.getPropValue(r,n));return o&&o.length?o.join(","):""}setValue(n){throw new Error("Method not implemented.")}isEmpty(){return!this.value.length}}class Ci{constructor(n={value:""}){z(this,"editorType","month-picker");z(this,"value");z(this,"valueType","datetime");this.value=n.value}setValue(n){this.value=n.formatted}getValue(){return this.value}clear(){this.value=void 0}isEmpty(){return!this.value}}class wi{constructor(n={begin:"",end:""}){z(this,"editorType","month-range");z(this,"begin");z(this,"end");z(this,"valueType","datetime");this.begin=n.begin,this.end=n.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(n){n.dataRange?(this.begin=n.dataRange.split(n.delimiter)[0],this.end=n.dataRange.split(n.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class xi{constructor(n={begin:null,end:null}){z(this,"editorType","number-range");z(this,"begin");z(this,"end");z(this,"valueType","number");this.begin=n.begin==null?null:parseFloat(n.begin),this.end=n.end==null?null:parseFloat(n.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}setValue(n){this.begin=n.begin==null?null:parseFloat(n.begin),this.end=n.end==null?null:parseFloat(n.end)}isEmpty(){return this.begin==null&&this.end==null}}class Si{constructor(n={value:""}){z(this,"editorType","number-spinner");z(this,"value");z(this,"valueType","number");this.value=n.value==null?null:parseFloat(n.value)}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=isNaN(parseFloat(n))?null:n}isEmpty(){return this.value==null}}class _i{constructor(n={value:null}){z(this,"editorType","radio-group");z(this,"value");z(this,"valueType","enum");this.value=n.value}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=n}isEmpty(){return!this.value}}class yn{constructor(n={value:""}){z(this,"editorType","text");z(this,"value");z(this,"valueType","text");this.value=n.value}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=n}isEmpty(){return!this.value}}function vn(){function e(n,o){switch(n){case"check-box":return new pi(o);case"combo-list":return new yi(o);case"combo-lookup":return new mi(o);case"input-group":return new vi(o);case"date-picker":return new gi(o);case"date-range":return new hn(o);case"datetime-picker":return new hi(o);case"datetime-range":return new hn(o);case"lookup":return new bi(o);case"month-picker":return new Ci(o);case"month-range":return new wi(o);case"number-range":return new xi(o);case"number-spinner":return new Si(o);case"radio-group":return new _i(o);default:return new yn(o)}}return{createConditionValue:e}}function bn(e,n){const o=t.ref(e.fields),r=t.ref([]),a=new Map,{createConditionValue:i}=vn();function l(p){switch(p.editor?p.editor.type:"input-group"){case"date-range":p.editor.type="date-picker";break;case"datetime-range":p.editor.type="datetime-picker";break;case"number-range":p.editor.type="number-spinner";break}return p.editor}function s(p){return p.map(f=>Object.assign({},f)).map(f=>(f.editor=l(f),f))}function c(p=!0){o.value.reduce((u,f)=>(p||(f.editor=l(f)),u.set(f.labelCode,f),u),a)}function d(p){return p.forEach(u=>{if(u&&typeof u.valueConfig=="object"){const f=a.get(u.fieldCode);u.value=i(f.editor.type,u.valueConfig.content)}}),p}return{convertToSingleControl:s,fields:o,fieldMap:a,fieldConditions:r,loadFieldConfigs:c,initialConditionValue:d}}function Vi(e,n,o){const r=t.ref(null),a=t.ref(o),i=t.ref(0),l=t.computed(()=>d(i.value));function s(){a.value&&(r.value=new ResizeObserver(c(p=>{const u=p[0];i.value=u.contentRect.width})),r.value.observe(a.value))}function c(p,u){let f=null;return function(){const x=arguments;f||(f=setTimeout(()=>{f=null},500),p(...x))}}function d(p){let f="col-12";return p>250*6?f="col-2":p>250*4?f="col-3":p>250*3?f="col-4":p>250*2&&(f="col-6"),f}return t.watch([o],([p])=>{a.value=p,s()}),{conditionClass:l,resizeObserver:r}}const Cn=t.defineComponent({name:"FConditionFields",props:gn,emits:["valueChange","blur","focus","click","input"],setup(e,n){const o=t.ref(),r=t.ref(e.key),a=t.ref(e.isControlInline),i=t.ref(e.conditions),l=bn(e),{initialConditionValue:s,fieldMap:c,loadFieldConfigs:d}=l,p=Vi(e,n,o),{conditionClass:u,resizeObserver:f}=p;d(!0),s(i.value),t.onBeforeUnmount(()=>{var C;(C=f.value)==null||C.unobserve(o.value)}),t.watch(()=>e.conditions,()=>{i.value=e.conditions});const x=t.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":a.value})),b=t.computed(()=>u.value);function S(C,y){n.emit("valueChange",C,y)}function w(){return i.value.map(C=>{var y;return t.createVNode(bt.FDynamicFormGroup,{customClass:b.value,label:C.fieldName,editor:(y=c.get(C.fieldCode))==null?void 0:y.editor,modelValue:C.value.value,"onUpdate:modelValue":h=>C.value.value=h,onChange:h=>{S(h,C)}},null)})}return()=>t.createVNode("div",{class:x.value,key:r.value,ref:o},[w()])}}),Ft=new Map([["appearance",qe]]),Ni="root-viewmodel";class ki{constructor(n,o){z(this,"formSchemaUtils");z(this,"controlCreatorUtils");z(this,"designViewModelUtils");this.resolver=n,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(n){const o=this.createComponentRefNode(n),r=this.createComponentNode(n),a=this.createViewModeNode(n),i=this.formSchemaUtils.getFormSchema();return i.module.viewmodels.push(a),i.module.components.push(r),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(n){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${n.componentId}-component-ref`,component:`${n.componentId}-component`}),o}createComponentNode(n){const o=this.resolver.getSchemaByType("component"),r=this.createFormComponentContents(n);return Object.assign(o,{id:`${n.componentId}-component`,viewModel:`${n.componentId}-component-viewmodel`,componentType:n.componentType,appearance:{class:this.getFormComponentClass()},formColumns:n.formColumns,contents:r}),o}getFormComponentClass(){return this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(n){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:n.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:n.componentName});const r=this.resolver.getSchemaByType("response-form"),a=[];Object.assign(r,{id:n.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:a}),o.contents=[r];const{selectedFields:i}=n;return i==null||i.forEach(s=>{const c=Re.cloneDeep(s),d=this.resolveControlClassByFormColumns(n),p=this.controlCreatorUtils.setFormFieldProperty(c,"",d);p&&a.push(p)}),this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"&&(o.appearance.class="f-section-grid f-section-in-main px-0 pt-0",o.fill=!0),[o]}resolveControlClassByFormColumns(n){let o="";switch(n.formColumns){case 1:{o="col-12 col-md-12 col-xl-12 col-el-12";break}case 2:{o="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{o="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{o="col-12 col-md-6 col-xl-3 col-el-2";break}}return o}createViewModeNode(n){return{id:`${n.componentId}-component-viewmodel`,code:`${n.componentId}-component-viewmodel`,name:n.componentName,bindTo:n.bindTo,parent:Ni,fields:this.assembleViewModelFields(n),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}assembleViewModelFields(n){const o=[],{selectedFields:r}=n;return r==null||r.forEach(a=>{let i="blur";const l=a.type.name;(l===st.Enum||l===st.Boolean)&&(i="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:i,fieldSchema:{}})}),o}}function Fi(e,n,o,r){const a=o.parentComponentInstance;if(a){const l={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:"标题",componentType:"form",formColumns:4,parentContainerId:a.schema.id,bindTo:"/"};return new ki(e,r).createComponent(l)}else return n}Oe({customClass:{type:String,default:""}},{$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:[]}},required:["id","type"]},Ft,Fi,{title:"response-form",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 wn={$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"},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"}},required:["id","type"]},xn={id:{type:String,default:""},customClass:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},type:{type:String,default:"input-group"}};Oe(xn,wn,Ft,void 0);function Tt(e,n,o){var _;function r(){o!=null&&o.resolveComponentContext&&o.resolveComponentContext()}r();const a=o&&o.getStyles&&o.getStyles()||"",i=o&&o.getDesignerClass&&o.getDesignerClass()||"",l=t.ref();function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function c(){return!1}function d(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function p(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function u(m){if(!m||!m.value)return null;if(m.value.schema&&m.value.schema.type==="component")return m.value;const V=t.ref(m==null?void 0:m.value.parent),g=u(V);return g||null}function f(m=n){const{componentInstance:V,designerItemElementRef:g}=m;return!V||!V.value?null:V.value.canMove?g:f(m.parent)}function x(m){return!!o&&o.canAccepts(m)}function b(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function S(){}function w(m,V){V&&o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(V)}function C(m,V){const{componentType:g}=m;let v=xt(g,m,V);o&&o.onResolveNewComponentSchema&&(v=o.onResolveNewComponentSchema(m,v));const F=g.toLowerCase().replace("-","_");return v&&!v.id&&v.type===g&&(v.id=`${F}_${Math.random().toString().slice(2,6)}`),v}function y(m,V){const g=String(m.getAttribute("data-controltype")),v=m.getAttribute("data-feature"),F=v?JSON.parse(v):{};F.parentComponentInstance=l.value;let I=xt(g,F);o&&o.onAcceptNewChildElement&&(I=o.onAcceptNewChildElement(m,V,I));const T=g.toLowerCase().replace("-","_");return I&&!I.id&&I.type===g&&(I.id=`${T}_${Math.random().toString().slice(2,6)}`),I}function h(m){}function N(...m){if(o&&o.getPropsConfig)return o.getPropsConfig(...m)}return l.value={canMove:s(),canSelectParent:c(),canDelete:d(),canNested:!p(),contents:n==null?void 0:n.schema.contents,elementRef:e,parent:(_=n==null?void 0:n.parent)==null?void 0:_.componentInstance,schema:n==null?void 0:n.schema,styles:a,designerClass:i,canAccepts:x,getBelongedComponentInstance:u,getDraggableDesignItemElement:f,getDraggingDisplayText:b,getPropConfig:N,getDragScopeElement:S,onAcceptMovedChildElement:w,onAcceptNewChildElement:y,onChildElementMovedOut:h,addNewChildComponentSchema:C,updateDragAndDropRules:r,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1)},l}const Ti={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},Mi=t.defineComponent({name:"FDynamicFormLabel",props:Ti,emits:[],setup(e,n){const o=t.ref(e.title||e.text),r=t.ref(e.required),a=t.ref(e.text);return t.watch(()=>e.text,()=>{a.value=e.text}),t.watch(()=>e.required,(i,l)=>{i!==l&&(r.value=i)}),()=>t.createVNode("label",{class:"col-form-label",title:o.value},[r.value&&t.createVNode("span",{class:"farris-label-info text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"farris-label-text"},[a.value])])}}),Ii=new Map([["appearance",qe]]);function Bi(e,n,o){return n}const Oi={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/input-group.schema.json",title:"input-group",description:"A Farris Input 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:"input-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},labelWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabIndex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"enum",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},addonDisabled:{description:"",type:"boolean",default:!1},addonContent:{description:"",type:"string",default:""},autoHeight:{description:"",type:"boolean",default:!1},enableAddon:{description:"",type:"boolean",default:!1},addonType:{description:"",type:"string",enum:["button","static"],default:"button"},enableClear:{description:"",type:"boolean",default:!0},enableViewPassword:{description:"",type:"boolean",default:!1},inputType:{description:"",type:"string",enum:["input","password","text"],default:"input"},maxHeight:{description:"",type:"number",default:500},popUp:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},Sn={autocomplete:{Type:String,default:"off"},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},editable:{Type:Boolean,default:!0},enableClear:{Type:Boolean,default:!0},enableTitle:{Type:Boolean,default:!0},enableViewPassword:{Type:Boolean,default:!0},forcePlaceholder:{Type:Boolean,default:!1},groupText:{Type:String,default:""},type:{Type:String,default:"text"},max:{type:[Number,String]},min:{type:[Number,String]},maxLength:{Type:Number||void 0,default:void 0},minLength:{Type:Number||void 0,default:void 0},modelValue:{Type:String||Boolean,default:""},showBorder:{Type:Boolean,default:!0},step:{Type:Number,default:1},placeholder:{Type:String,default:""},precision:{Type:Number,default:0},readonly:{Type:Boolean,default:!1},showButtonWhenDisabled:{Type:Boolean,default:!1},tabIndex:{Type:Number||void 0,default:void 0},textAlign:{Type:String,default:"left"},useExtendInfo:{Type:Boolean,default:!1},extendInfo:{Type:String,default:""},value:{Type:String,default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"}};Oe(Sn,Oi,Ii,Bi);function $i(e,n,o,r){const a=t.ref(e.disabled),i=t.ref(!1),l=t.ref("text"),s=t.ref(e.showBorder),c=t.ref(e.textAlign),d=t.ref(e.updateOn),p=t.computed(()=>e.editable||!e.readonly),u=t.computed(()=>e.editable&&!e.disabled&&!e.readonly),f=t.computed(()=>!e.disabled&&i.value),x=t.computed(()=>o.value===""||o.value===null||o.value===void 0),b=t.computed(()=>(e.disabled||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),S=t.computed(()=>e.readonly||!e.editable),w=t.computed(()=>e.enableTitle?o.value:""),C=t.computed(()=>({"form-control":!0,"f-utils-fill":!0,"text-left":c.value==="left","text-center":c.value==="center","text-right":c.value==="right"})),y=t.computed(()=>{const M={"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":a.value,"f-state-editable":u.value,"f-state-readonly":S.value,"f-state-focus":f.value};return(e.customClass||"").split(" ").reduce((B,$)=>(B[$]=!0,B),M),M}),h=t.computed(()=>s.value?"":"border-width : 0 ");function N(M,k=!0){o.value=M,r.value!==M&&(r.value=M),k&&n.emit("change",M),n.emit("update:modelValue",M),n.emit("update:value",M)}t.watch(()=>e.modelValue,(M,k)=>{M!==k&&(o.value=M,r.value=M)}),t.watch(()=>e.disabled,(M,k)=>{M!==k&&(a.value=M)});function _(M){return i.value=!1,n.emit("blur",M),M.stopPropagation(),!1}function m(M){n.emit("click",M)}function V(M){e.disabled||(s.value&&(i.value=!0),p.value&&n.emit("focus",M))}function g(M){n.emit("input",M.target.value);const k=M.target.value;r.value=k,d.value==="input"&&(n.emit("update:modelValue",k),n.emit("update:value",k))}function v(M){n.emit("keydown",M)}function F(M){n.emit("keyup",M)}function I(M){M.target.tagName!=="INPUT"&&M.preventDefault(),M.stopPropagation()}function T(M){if(d.value==="blur"){const k=M.target.value;M.stopPropagation(),N(k)}}return{changeTextBoxValue:N,disabled:a,displayText:r,editable:u,hasFocused:f,inputGroupClass:y,inputType:l,isEmpty:x,modelValue:o,readonly:S,onBlur:_,onClick:m,onFocus:V,onInput:g,onKeydown:v,onKeyup:F,onMousedown:I,onTextBoxValueChange:T,placeholder:b,textBoxClass:C,textBoxTitle:w,inputGroupStyle:h}}function ji(e,n,o){const r=t.ref(!1),a=t.computed(()=>e.enableClear&&!e.readonly&&!e.disabled),{changeTextBoxValue:i,displayText:l,hasFocused:s,isEmpty:c}=o;function d(S){r.value=S}t.watch(l,()=>{s!=null&&s.value?d(!!(l!=null&&l.value)):d(!1)});const p=t.computed(()=>({"input-group-text":!0,"input-group-clear":!0})),u=t.computed(()=>({width:"24px",display:r.value?"flex":"none"}));function f(S){S.stopPropagation(),a.value&&(i("",!0),d(!r.value),n.emit("clear"))}function x(S){a.value&&!c.value&&d(!0)}function b(S){a.value&&d(!1)}return{clearButtonClass:p,clearButtonStyle:u,hasShownClearButton:r,onClearValue:f,onMouseEnter:x,onMouseLeave:b,shouldShowClearButton:a}}const Di=["moz","ms","webkit"];function Pi(){let e=0;return n=>{const o=new Date().getTime(),r=Math.max(0,16-(o-e)),a=setTimeout(()=>{n(o+r)},r);return e=o+r,a}}function Ei(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=Di.filter(n=>`${n}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:Pi()}Ei();const Ri=e=>{const n=e;return n.install=function(o){o.component(n.name,e)},e},Hi={checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}};function Ai(e,n){const o=t.ref(e.groupText),r=t.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),a=t.computed(()=>e.enableClear||!!e.groupText);return{appendedButtonClass:t.computed(()=>({"input-group-append":!0,"append-force-show":r.value})),appendedContent:o,shouldShowAppendedButton:a}}function Gi(e,n,o,r){const{appendedContent:a}=r,i=t.ref(e.enableViewPassword),l=t.computed(()=>e.type==="password"),s='<span class="f-icon f-icon-eye" style="color: rgb(56, 143, 255);"></span>',c='<span class="f-icon f-icon-eye"></span>',d=t.ref(!1);t.watch(()=>[e.readonly,e.disabled],([f,x])=>{l.value&&(o.value=f||x?"password":o.value,a.value=f||x?c:a.value)});function p(){return d.value=!d.value,o.value=d.value?"text":"password",a.value=d.value?s:c,!1}function u(){o.value=l.value?"password":"text",a.value=l.value?i.value?c:"":a.value}return u(),{isPassword:l,onClickAppendedButton:p}}function Li(e,n,o){const r=t.ref(),{onBlurTextBox:a,onFocusTextBox:i,onInput:l,onKeyDown:s,textBoxValue:c}=o,d=t.computed(()=>e.disabled||e.readonly||!e.editable?"":e.placeholder),p=t.computed(()=>({"form-control":!0,"f-utils-fill":!0})),u=t.computed(()=>({"text-align":e.textAlign}));function f(S){S.stopPropagation()}function x(){e.selectOnCreated,e.focusOnCreated}async function b(S){i(S),await t.nextTick,x()}return t.onMounted(async()=>{await t.nextTick,x()}),()=>t.createVNode("input",{ref:r,class:p.value,style:u.value,type:"text",value:c.value,disabled:e.disabled,readonly:e.readonly||!e.editable,placeholder:d.value,onBlur:a,onChange:f,onFocus:b,onInput:l,onKeydown:s},null)}function Wi(e,n,o){const{canDownward:r,canUpward:a,onClickDownButton:i,onClickUpButton:l}=o,s=t.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),c=t.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),d=t.computed(()=>({cursor:a()?"pointer":"not-allowed","margin-left":0})),p=t.computed(()=>({cursor:r()?"pointer":"not-allowed","margin-left":0}));return()=>t.createVNode("div",{class:s.value},[t.createVNode("button",{title:"upButton",class:c.value,style:d.value,onClick:l,disabled:!a()},[t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),t.createVNode("button",{title:"downButton",class:c.value,style:p.value,onClick:i,disabled:!r()},[t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function zi(e,n){const o=lt.useNumber(e,n),r=lt.useFormat(e,n,o),a=lt.useSpinner(e,n,r,o),i=lt.useTextBox(e,n,r,o,a),l=Wi(e,n,a),{displayValue:s,modelValue:c,getRealValue:d}=o,p=Li(e,n,i),{format:u}=r,{isFocus:f}=i,x=t.computed(()=>!e.disabled&&!e.readonly);return t.onMounted(()=>{const b=d(e.modelValue);s.value=u(b)}),t.watch(()=>[e.value],([b])=>{const S=d(b);c.value=S,s.value=u(S)}),t.watch(()=>[e.modelValue],([b])=>{b!==c.value&&(c.value=b,!f.value&&(s.value=u(d(b))))}),t.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{s.value=u(c.value)}),()=>t.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[p(),x.value&&l()])}function qi(e,n,o,r){const a=t.ref(),i=t.ref(e.autocomplete),l=t.ref(e.enableTitle),{isPassword:s}=o,c=t.ref(e.minLength),d=t.ref(e.maxLength),p=t.ref(e.tabIndex),{disabled:u,displayText:f,inputType:x,onBlur:b,onFocus:S,onInput:w,onClick:C,onKeydown:y,onKeyup:h,onMousedown:N,onTextBoxValueChange:_,readonly:m,placeholder:V,textBoxClass:g,textBoxTitle:v}=r;return t.onMounted(()=>{e.selectOnCreated,e.focusOnCreated}),()=>t.createVNode("input",{ref:a,name:"input-group-value",autocomplete:i.value,class:g.value,disabled:u==null?void 0:u.value,maxlength:d.value,minlength:c.value,placeholder:V.value,readonly:m==null?void 0:m.value,tabindex:p.value,title:l.value&&!s.value?v.value:"",type:x.value,value:f==null?void 0:f.value,onBlur:b,onClick:C,onChange:_,onFocus:S,onInput:w,onKeydown:y,onKeyup:h,onMousedown:N},null)}function Ui(e,n){const o=t.computed(()=>e.useExtendInfo&&!!e.extendInfo),r=t.reactive({content:e.extendInfo});function a(){n.emit("updateExtendInfo")}return()=>o.value&&t.withDirectives(t.createVNode("span",{class:"input-group-before-tips",onMouseenter:a},[t.createVNode("i",{class:"f-icon f-icon-info-circle"},null),t.createVNode("b",{class:"tips-arrow"},null)]),[[t.resolveDirective("tooltip"),r]])}function Ki(e,n,o,r,a){const{appendedButtonClass:i,appendedContent:l}=o,s=t.computed(()=>e.showButtonWhenDisabled&&(!e.editable||!e.readonly)&&!e.disabled),c=t.computed(()=>l.value&&!n.slots.groupTextTemplate),d=t.computed(()=>!!n.slots.groupTextTemplate),{clearButtonClass:p,clearButtonStyle:u,onClearValue:f,shouldShowClearButton:x}=r;function b(){return t.createVNode("span",{id:"clearIcon",class:p.value,style:u.value,onClick:V=>f(V)},[t.createVNode("i",{class:"f-icon modal_close"},null)])}function S(V){n.emit("iconMouseEnter",V)}function w(V){n.emit("iconMouseLeave",V)}function C(V){s.value&&n.emit("clickHandle",{originalEvent:V}),V.stopPropagation()}const y=e.type==="password"?a.onClickAppendedButton:C;function h(){return t.createVNode("span",{class:"input-group-text",onMouseenter:V=>S(V),onMouseleave:V=>w(V),innerHTML:l.value,onClick:V=>y(V)},null)}function N(){return n.slots.groupTextTemplate&&n.slots.groupTextTemplate()}function _(){return c.value?h:d.value?N:""}const m=_();return()=>t.createVNode("div",{class:i.value},[x.value&&b(),m&&m()])}const Xi=t.defineComponent({name:"FInputGroup",props:Sn,emits:["clear","change","blur","click","clickHandle","focus","input","keydown","keyup","iconMouseEnter","iconMouseLeave","update:modelValue","update:value","updateExtendInfo","valueChange"],setup(e,n){const o=t.ref(e.modelValue),r=t.ref(e.modelValue),a=$i(e,n,o,r),{inputGroupClass:i,inputType:l,inputGroupStyle:s}=a,c=Ai(e),{shouldShowAppendedButton:d}=c,p=ji(e,n,a),{onMouseEnter:u,onMouseLeave:f}=p,x=Gi(e,n,l,c),b=zi(e,n),S=qi(e,n,x,a),w=Ki(e,n,c,p,x),C=Ui(e,n),y=t.computed(()=>e.type==="number");t.watch(()=>[e.value],([N])=>{o.value=N,r.value=N}),t.watch(()=>[e.modelValue],([N])=>{o.value=N,r.value=N}),t.onMounted(()=>{e.value&&(o.value=e.value,r.value=e.value)});const h=()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:"inputGroup",class:i.value,style:s.value,onMouseenter:u,onMouseleave:f},[y.value?b():t.createVNode(t.Fragment,null,[C(),S(),d.value&&w()])])]);return()=>h()}}),X={},Y={},Q={},Z={};let _n=!1;function Yi(){_n||(_n=!0,ho.register(X,Y,Q,Z),go.register(X,Y,Q,Z),yo.register(X,Y,Q,Z),vo.register(X,Y,Q,Z),bo.register(X,Y,Q,Z),Co.register(X,Y,Q,Z),at.register(X,Y,Q,Z),Ct.register(X,Y,Q,Z),wo.register(X,Y,Q,Z),xo.register(X,Y,Q,Z),_o.register(X,Y,Q,Z),So.register(X,Y,Q,Z),Vo.register(X,Y,Q,Z),No.register(X,Y,Q,Z),ko.register(X,Y,Q,Z),bt.register(X,Y,Q,Z),Fo.register(X,Y,Q,Z),Gt.register(X,Y,Q,Z),To.register(X,Y,Q,Z),Mo.register(X,Y,Q,Z),Io.register(X,Y,Q,Z),Bo.register(X,Y,Q,Z),$o.register(X,Y,Q,Z),Oo.register(X,Y,Q,Z),jo.register(X,Y,Q,Z),Do.register(X,Y,Q,Z),Po.register(X,Y,Q,Z),Eo.register(X,Y,Q,Z),lt.register(X,Y,Q,Z),mo.register(X,Y,Q,Z),Ro.register(X,Y,Q,Z),Ho.register(X,Y,Q,Z),Lt.register(X,Y,Q,Z),Ao.register(X,Y,Q,Z),Go.register(X,Y,Q,Z),Lo.register(X,Y,Q,Z),Wo.register(X,Y,Q,Z),qo.register(X,Y,Q,Z),Uo.register(X,Y,Q,Z),zo.register(X,Y,Q,Z),sr.register(X,Y,Q),Ko.register(X,Y,Q,Z),Xo.register(X,Y,Q,Z),Yo.register(X,Y,Q,Z),Jo.register(X,Y,Q,Z),Qo.register(X,Y,Q,Z),Zo.register(X,Y,Q,Z),po.register(X,Y,Q,Z),At.register(X,Y,Q,Z),er.register(X,Y,Q,Z),tr.register(X,Y,Q,Z),fo.register(X,Y,Q,Z),nr.register(X,Y,Q,Z),rr.register(X,Y,Q,Z),or.register(X,Y,Q,Z),ir.register(X,Y,Q,Z),ar.register(X,Y,Q,Z),lr.register(X,Y,Q,Z),cr.register(X,Y,Q,Z))}function Ji(){Yi();function e(a,i){const l=Y[a];return l?l(i):{}}function n(a){return X[a]||Xi}function o(a){switch(a){case"check-box":return"onChangeValue";case"switch":return"onModelValueChanged";case"check-group":return"onChangeValue";case"combo-list":case"combo-tree":return"onChange";case"combo-lookup":return"";case"date-picker":return"onDatePicked";case"date-range":return"";case"datetime-picker":return"";case"datetime-range":return"";case"month-picker":return"";case"month-range":return"";case"year-picker":return"";case"year-range":return"";case"input-group":return"onChange";case"lookup":return"";case"number-range":return"onValueChange";case"number-spinner":return"onValueChange";case"radio-group":return"onChangeValue";case"text":return"";case"response-layout-editor-setting":return"onChange";case"events-editor":return"onSavedCommandListChanged";case"grid-field-editor":return"onChange";case"field-selector":return"onFieldSelected";case"schema-selector":return"onSchemaSelected";case"mapping-editor":return"onMappingFieldsChanged";case"textarea":return"onValueChange"}}function r(a){switch(a){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:e,resolveEditorType:n,getChangeFunctionName:o,getClearFunctionName:r}}const Qi=t.defineComponent({name:"FDynamicFormGroup",props:xn,emits:["change","update:modelValue"],setup(e,n){const o=t.ref(e.id),r=t.ref(e.customClass),a=t.ref(e.editor),i=t.ref(e.label),l=t.ref(e.modelValue),s=t.ref(e.readonly),c=t.ref(e.required),d=t.ref(e.showLabel),p=t.ref(e.visible);t.ref(e.type);const u=t.ref(),{resolveEditorProps:f,resolveEditorType:x,getChangeFunctionName:b,getClearFunctionName:S}=Ji(),w=t.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":s.value}));function C(N,_){l.value=_!==void 0?_:N,n.emit("update:modelValue",l.value),n.emit("change",l.value)}function y(){n.emit("update:modelValue","")}const h=t.computed(()=>{const N=a.value.type||"input-group",_=x(N),m=f(N,a.value),V=b(N),g=S(a.value.type);return m[V]=C,m[g]=y,()=>t.createVNode(_,t.mergeProps({ref:u},m,{modelValue:l.value,"onUpdate:modelValue":v=>l.value=v}),null)});return t.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([N,_,m,V,g,v,F,I,T])=>{o.value=N,r.value=_,a.value=m,i.value=V,l.value=g,s.value=v,c.value=F,d.value=I,p.value=T}),n.expose({editorRef:u}),()=>p.value&&t.createVNode("div",{id:`${o.value}-input-group`,class:r.value},[t.createVNode("div",{class:"farris-group-wrap"},[t.createVNode("div",{class:w.value},[d.value&&t.createVNode(Mi,{id:`${o.value}-lable`,required:c.value,text:i.value,title:i.value},null),t.createVNode("div",{class:"farris-input-wrap"},[h.value()])])])])}}),Zi={},ea={};class ut{constructor(n,o){z(this,"componentId");z(this,"viewModelId");z(this,"eventsEditorUtils");z(this,"formSchemaUtils");z(this,"formMetadataConverter");z(this,"designViewModelUtils");z(this,"designViewModelField");z(this,"controlCreatorUtils");z(this,"designerHostService");z(this,"schemaService",null);z(this,"metadataService",null);z(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=n,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){const o=n.binding&&n.binding.type==="Form"&&n.binding.field;if(o){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(a=>a.id===o)}n.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(n,o){}getBasicPropConfig(n){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",data:[{value:n.type,name:te[n.type].name}]}}}}}getAppearanceConfig(n=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}}const rt=class rt{static getEditorTypesByMDataType(n){const o=rt.fieldControlTypeMapping[n];return o||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(let o in rt.fieldControlTypeMapping)rt.fieldControlTypeMapping[o].forEach(r=>{n.find(a=>a.key===r.key&&a.value===r.value)||n.push({key:r.key,value:r.value})});return n}};z(rt,"fieldControlTypeMapping",{String:[{key:te["input-group"].type,value:te["input-group"].name},{key:te.lookup.type,value:te.lookup.name},{key:te["date-picker"].type,value:te["date-picker"].name},{key:te["check-box"].type,value:te["check-box"].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}],Text:[{key:te.textarea.type,value:te.textarea.name},{key:te.lookup.type,value:te.lookup.name}],Decimal:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Integer:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Number:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],BigNumber:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Date:[{key:te["date-picker"].type,value:te["date-picker"].name}],DateTime:[{key:te["date-picker"].type,value:te["date-picker"].name}],Boolean:[{key:te.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].name}],Enum:[{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}],Object:[{key:te.lookup.type,value:te.lookup.name},{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}]});let ct=rt;const ft=t.ref(0);function ta(e,n){const o=n.getBoundingClientRect(),r=e.getBoundingClientRect(),a=r.top>=o.top,i=r.top<=o.bottom;return a&&i}function na(e){if(!e)return;let n;if(e.className.includes("dgComponentSelected")?n=e:n=e.querySelector(".dgComponentSelected"),!n)return;const o=n.getBoundingClientRect();if(o.width===0&&o.height===0)return;const r=n.querySelector(".component-btn-group");if(r){if(!ta(n,e)){r.style.display="none";return}r.style.display="";const i=r.getBoundingClientRect(),l=r.querySelector("div");if(l){const s=l.getBoundingClientRect();l.style.top=i.top+"px",l.style.left=i.left-s.width+"px"}}}class He extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n,o){return this.propertyConfig.categories.basic=this.getBasicProperties(n,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n),this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig}getBasicProperties(n,o){var l;var r=this;this.setDesignViewModelField(n);const a=this.formSchemaUtils.getFormMetadataBasicInfo(),i=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:r.designViewModelField?ct.getEditorTypesByMDataType((l=r.designViewModelField.type)==null?void 0:l.name):ct.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:n,formBasicInfo:a},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:i}}},setPropertyRelates(s,c){if(s)switch(s&&s.propertyID){case"type":{r.changeControlType(n,s,o);break}case"label":{s.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(n){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!1,editor:{type:"response-layout-editor-setting"},$converter:"/converter/response-form-layout.converter"}}}}getEditorProperties(n){return this.getComponentConfig(n)}changeControlType(n,o,r){var d,p,u,f;const a=o.propertyValue,i=r&&r.parent&&r.parent.schema;if(!i)return;const l=i.contents.findIndex(x=>x.id===n.id),s=i.contents[l];let c;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:a},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),c=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),c||(c=vt.getSchemaByType("form-group")||{},c.editor=vt.getSchemaByType(a)||{},delete c.editor.id,delete c.editor.binding,delete c.editor.appearance),Object.assign(c,{id:s.id,appearance:s.appearance,size:s.size,label:s.label,binding:s.binding,visible:s.visible}),Object.assign(c.editor,{isTextArea:c.isTextArea&&s.isTextArea,placeholder:(d=s.editor)==null?void 0:d.placeholder,holdPlace:(p=s.editor)==null?void 0:p.holdPlace,readonly:(u=s.editor)==null?void 0:u.readonly,require:(f=s.editor)==null?void 0:f.require}),i.contents.splice(l,1),i.contents.splice(l,0,c),r.schema=Object.assign(s,c),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(x=>x.classList.remove("dgComponentSelected")),ft.value++}getComponentConfig(n,o={},r={}){const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},o),i=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...a,properties:{...i}}}}class oa extends He{constructor(n,o){super(n,o)}}Oe({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},wn,Ft,void 0);var Vn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(Vn||{}),Nn=(e=>(e.Equal="0",e.NotEqual="1",e.Greater="2",e.GreaterOrEqual="3",e.Less="4",e.LessOrEqual="5",e.Like="6",e.LikeStartWith="7",e.LikeEndWith="8",e))(Nn||{});const ra=[{value:"0",name:"等于"},{value:"1",name:"不等于"},{value:"2",name:"大于"},{value:"3",name:"大于等于"},{value:"4",name:"小于"},{value:"5",name:"小于等于"},{value:"6",name:"包含"},{value:"7",name:"开始是"},{value:"8",name:"结束是"}],ia={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function aa(e,n,o){const{fieldMap:r}=o;function a(i){const l=r.get(i.fieldCode);if(!l)return[];const s=l.editor.type,c=new Set(ia[s]);return ra.filter(p=>c.has(p.value))}return{getCompareOperators:a}}function kn(){const e=t.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),n=new Map,o=new Map;let r=0;function a(){return{id:"",fieldCode:"",fieldName:"",compareType:Nn.Equal,valueType:Vn.Value,value:new yn,relation:0,conditionId:Date.now()}}function i(v,F){return{relation:v,items:[],children:[],path:[],groupId:++r,level:F}}function l(){const v=Object.assign({},e.value);o.forEach((F,I)=>{F.groupId===v.groupId&&o.set(I,v)}),n.forEach((F,I)=>{F.groupId===v.groupId&&n.set(I,v)}),e.value=v}function s(v){const F=new Map;let I=0;return v.forEach((T,M)=>{var k,B;if(I+=((k=T.lBracket)==null?void 0:k.length)||0,F.set(M,I),I-=((B=T.rBracket)==null?void 0:B.length)||0,I<0)throw new Error("The right bracket is out of range.")}),F}function c(v,F,I,T,M){for(let k=0;k<F;k++){const B=v+(k+1),$=i(M,B);I.children.push($),o.set($.groupId,I),I=I.children[I.children.length-1],T.push(I)}return I}function d(v,F,I,T,M){for(let O=F;O<=0;O++)T.pop();const k=T[T.length-1];if(!k)throw new Error("The group path is out of range");const B=v+F,$=i(M,B);return k.children.push($),o.set($.groupId,k),I=k.children[k.children.length-1],T.push(I),I}function p(v,F,I,T){I.pop();const M=I[I.length-1],k=i(T,v);return M.children.push(k),o.set(k.groupId,M),F=M.children[M.children.length-1],I.push(F),F}function u(v,F,I,T,M,k){let B=v[v.length-1];if(!B)throw new Error("The group path is out of range");const $=F.get(T)||0,O=F.get(I)||0;if(I<0||I===T)return v[v.length-1];const D=$-O,j=M&&M.relation!==void 0?M.relation:1;return B=D>0?c(O,D,B,v,j):B,B=D<0?d(O,D,B,v,j):B,B=D===0&&O>0&&$>0&&M&&k&&!!M.rBracket&&!!k.lBracket?p(O,B,v,j):B,B}function f(v){const I={relation:v.length&&v[0].relation!==void 0?v[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},T=[I],M=s(v);return v.forEach((k,B)=>{const $=B-1,O=v[$],D=u(T,M,$,B,O,k);D.items.push(k),n.set(k.conditionId,D)}),e.value=I,I}function x(){const v=a();n.set(v.conditionId,e.value),e.value.items.push(v)}function b(v){if(!v)return;const F=n.get(v.conditionId);if(F){const I=F.items.findIndex(M=>M.conditionId===v.conditionId)+1,T=a();n.set(T.conditionId,F),F.items.splice(I,0,T),l()}}function S(v){const F=n.get(v.conditionId);F&&(F.items=F.items.filter(I=>I.conditionId!==v.conditionId),n.delete(v.conditionId),g(),l())}function w(v,F,I,T){v.reduce((M,k)=>{const B=k.conditionId!==void 0,$=k.groupId!==void 0;if(B){const O=k;I.push(O),M.items.set(O.conditionId,O)}if($){const O=k;T.push(O),M.groups.set(O.groupId,O)}return M},F)}function C(v,F,I,T,M){v&&(v.items=F.length?v.items.filter(k=>!I.has(k.conditionId)):v.items,v.children=T.length?v.children.filter(k=>!M.has(k.groupId)):v.children)}function y(v,F,I){F.forEach(T=>{v.items.push(T),n.set(T.conditionId,v)}),I.forEach(T=>{v.children.push(T),o.set(T.groupId,v)})}function h(v){const F=v[0],I=F.conditionId!==void 0?n.get(F.conditionId):o.get(F.groupId),T={items:new Map,groups:new Map},M=[],k=[];if(I){w(v,T,M,k),C(I,M,T.items,k,T.groups);const B=i(I.relation,I.level+1);y(B,M,k),I.children.push(B),o.set(B.groupId,I),l()}}function N(v){const F=[...v.items],I=[...v.children],T=o.get(v.groupId);T&&(T.children=T.children.filter(M=>M.groupId!==v.groupId),o.delete(v.groupId),F.forEach(M=>{T.items.push(M),n.set(M.conditionId,T)}),I.forEach(M=>{T.children.push(M),o.set(M.groupId,T)}),l())}function _(v){v.relation=v.relation===1?2:1,l()}let m;function V(v){const{relation:F}=v;return(v.children&&v.children.length?v.children.map((T,M,k)=>{const B=m(T);return B[0].lBracket=(B[0].lBracket||"")+"(",B[B.length-1].rBracket=(B[B.length-1].rBracket||"")+")",B[B.length-1].relation=M<k.length-1?F:0,B}):[]).flat()}m=(v=e.value)=>{const{relation:F}=v,I=v.items.map((M,k,B)=>(M.lBracket=k===0?"(":"",M.rBracket=k===B.length-1?")":"",M.relation=k<B.length-1?F||1:0,M)),T=V(v);return[...I,...T]};function g(v){const F=v||e.value;if(F.children.length&&F.children.forEach(I=>{g(I)}),F.level===0&&!F.items.length&&F.children.length===1){const I=F.children[0];e.value.relation=I.relation,N(I)}else F.items.length===0&&F.children.length<=1&&N(F)}return{addCondition:x,changeGroupRelation:_,conditionGroupMap:n,getConditions:m,group:h,groupParentMap:o,insertConditionTo:b,loadConditionGroup:f,refresh:l,removeCondition:S,rootGroup:e,unGroup:N}}function la(e,n,o){const r=t.ref(new Set),a=t.ref(new Set),{conditionGroupMap:i,groupParentMap:l}=o;let s,c;function d(C){let y=s.level<=C.level?s:C,h=s.level>C.level?s:C;const N=[];for(;h&&y&&h!==y;)h.level>y.level?(N.push(h),h=l.get(h.groupId)):h.level===y.level&&(y=l.get(y.groupId),y&&N.unshift(y));return N}function p(C){a.value.add(C.groupId),C.items.forEach(y=>r.value.add(y.conditionId)),C.children.forEach(y=>p(y))}function u(C){const{conditionId:y}=C;r.value.add(y),s=r.value.size===0?i.get(y):s;const h=i.get(C.conditionId);d(h).forEach(_=>p(_))}const f=t.computed(()=>r.value.size===0&&a.value.size===1),x=function(C){a.value.delete(C.groupId),C.items.forEach(h=>c(h)),C.children.forEach(h=>!f.value&&x(h));const y=l.get(C.groupId);y&&a.value.has(y.groupId)&&x(y)};c=function(C){const{conditionId:y}=C;if(r.value.has(y)&&r.value.delete(y),a.value.size>0){const h=i.get(y);h&&a.value.has(h.groupId)&&x(h)}};function b(C){const{conditionId:y}=C;r.value.size===0&&(s=i.get(y)),r.value.has(y)?c(C):u(C)}function S(){const C=[];return s&&(s.items.filter(y=>r.value.has(y.conditionId)).forEach(y=>C.push(y)),s.children.filter(y=>a.value.has(y.groupId)).forEach(y=>C.push(y))),C}function w(){r.value.clear(),a.value.clear()}return{clear:w,getSelectedGroupItem:S,selectedItems:r,toggleSelect:b}}const Mt=t.defineComponent({name:"FConditionList",props:gn,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,n){const o=t.ref(e.key),r=t.ref(e.conditions),a=bn(e),{convertToSingleControl:i,fields:l,fieldMap:s,loadFieldConfigs:c}=a,d=kn(),{addCondition:p,changeGroupRelation:u,getConditions:f,group:x,insertConditionTo:b,loadConditionGroup:S,refresh:w,removeCondition:C,rootGroup:y,unGroup:h}=d,{createConditionValue:N}=vn(),_=la(e,n,d),{selectedItems:m,toggleSelect:V}=_,{getCompareOperators:g}=aa(e,n,a);c(!1),l.value=i(l.value),S(r.value);function v(D){var P;const j=((P=s.get(D.fieldCode))==null?void 0:P.editor)||{type:"text"};D.value=N(j.type,void 0),n.emit("labelCodeChange",D)}function F(D,j){n.emit("compareTypeChange",j)}function I(){}n.expose({getConditions:f});function T(D,j){n.emit("valueChange",D,j)}function M(D){return D.items.map(j=>{var P;return t.createVNode("div",{class:"condition-list-item",key:j.conditionId},[t.createVNode("div",{class:"condition-list-item-type mr-3"},[t.createVNode(Ct,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:j.fieldCode,"onUpdate:modelValue":E=>j.fieldCode=E,onChange:E=>v(j)},null)]),t.createVNode("div",{class:"condition-list-item-compare mr-3"},[t.createVNode(Ct,{"value-field":"value","text-field":"name","id-field":"id",data:g(j),modelValue:j.compareType,"onUpdate:modelValue":E=>j.compareType=E,onChange:E=>F(E,j)},null)]),t.createVNode("div",{class:"condition-list-item-control mr-3"},[t.createVNode(Qi,{editor:(P=s.get(j.fieldCode))==null?void 0:P.editor,showLabel:!1,modelValue:j.value.value,"onUpdate:modelValue":E=>j.value.value=E,onChange:E=>{T(E,j)}},null)]),t.createVNode("div",{class:"condition-list-item-extend"},[t.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>b(j)},null),t.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>C(j)},null)]),t.createVNode("div",{class:"custom-control custom-checkbox"},[t.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:m.value.has(j.conditionId)},null),t.createVNode("label",{class:"custom-control-label",onClick:()=>V(j)},null)])])})}function k(D){return t.createVNode("div",{class:"condition-list-relation"},[t.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>h(D)},null),t.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>u(D)},[D.relation===1?"与":"或"])])}function B(D){return t.createVNode("div",{class:"condition-list-content"},[t.createVNode("div",{class:"condition-list-content-group"},[M(D),D.children&&D.children.map(j=>B(j))]),k(D)])}function $(){x(_.getSelectedGroupItem()),_.clear()}function O(){return t.createVNode("div",{class:"condition-list-bottom"},[t.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:p},[t.createVNode("span",{class:"f-icon f-icon-filter-add"},null),t.createVNode("span",{class:"ml-1"},[t.createTextVNode("添加条件")])]),t.createVNode("div",{class:"add-condition-btn mb-1",onClick:$},[t.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),t.createVNode("span",{class:"ml-1"},[t.createTextVNode("生成条件组")])]),t.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:I},[t.createTextVNode("重置")])])}return()=>t.createVNode("div",{class:"condition-list",key:o.value},[t.createVNode("div",{class:"condition-list-body"},[B(y.value)]),O()])}});Mt.install=e=>{e.component(Cn.name,Cn).component(Mt.name,Mt)};const sa=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth"],ca={equal:(e,n,o)=>e&&e[n]===o,notEqual:(e,n,o)=>e&&e[n]!==o,contain:(e,n,o)=>e?(e[n]||"").indexOf(o)>-1:!1,startWidth:(e,n,o)=>e?(e[n]||"").startsWith(o):!1,endWidth:(e,n,o)=>e?(e[n]||"").endsWith(o):!1},da={equal:(e,n,o)=>e&&e[n]===o,notEqual:(e,n,o)=>e&&e[n]!==o},ua={equal:(e,n,o)=>{if(e){const r=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()===r}return!1},notEqual:(e,n,o)=>{if(e){const r=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()!==r}return!1},greaterThan:(e,n,o)=>{if(e){const r=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>r}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const r=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>=r}return!1},lessThan:(e,n,o)=>{if(e){const r=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<r}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const r=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<=r}return!1}},fa={equal:(e,n,o)=>e?String(o).split(",").includes(String(e[n])):!1,notEqual:(e,n,o)=>e?String(o).split(",").findIndex(a=>a===String(e[n]))===-1:!1},pa={equal:(e,n,o)=>{if(e){const r=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[n]));return isNaN(r)?isNaN(a):r===a}return!1},notEqual:(e,n,o)=>{if(e){const r=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[n]));return isNaN(r)?!0:r!==a}return!1},greaterThan:(e,n,o)=>{if(e){const r=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[n]));return isNaN(r)?isNaN(a):a>r}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const r=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[n]));return isNaN(r)?isNaN(a):a>=r}return!1},lessThan:(e,n,o)=>{if(e){const r=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[n]));return isNaN(r)?isNaN(a):a<r}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const r=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[n]));return isNaN(r)?isNaN(a):a<=r}return!1}};function It(){const e=t.ref([]),n=new Map,{loadConditionGroup:o}=kn(),r=new Map([["boolean",da],["datetime",ua],["enum",fa],["number",pa],["text",ca]]);function a(u){n.delete(u),e.value=Array.from(n.values())}function i(){n.clear(),e.value=[]}function l(u){const{valueType:f}=u.value,x=u.compareType||"0",b=sa[Number(x)];return r.get(f)[b]}function s(u){const f=u.relation===2?0:1,x=u.items.map(S=>{const w=l(S);return y=>w(y,S.fieldCode,S.value.getValue())}),b=u.children&&u.children.length?u.children.map(S=>s(S)):[];return{relation:f,filterFunctions:x,children:b}}function c(){const u=o(e.value);return s(u)}function d(u,f){const x=f.filterFunctions.map(S=>S(u)),b=f.children.map(S=>d(u,S));return f.relation===1?x.every(S=>S)&&b.every(S=>S):x.includes(!0)||b.includes(!0)}function p(u){const f=c();return d(u,f)}return{apply:p,clearCondition:i,conditions:e,removeCondition:a}}function Bt(e,n){var w,C;const{idField:o}=n,r=t.ref(e.summary),a=t.ref(e.group),i=t.ref(((w=e.group)==null?void 0:w.groupFields)||[]),l=t.ref(((C=e.group)==null?void 0:C.enable)||!1),s=t.computed(()=>{const y=r.value;return(y==null?void 0:y.groupFields)||[]}),c=t.computed(()=>{const y=a.value;return y&&y.showSummary}),d=new Map;let p=[];function u(y,h,N,_,m){const V=_[N];V&&(h.reduce((g,v,F)=>{var M;const I=v[V];let T=g.get(I);if(!T){const k=s.value.reduce((B,$)=>(B.set($,0),B),new Map);T={field:V,title:((M=m.get(V))==null?void 0:M.title)||V,value:I,layer:N,details:[],groupSummaries:k},g.set(I,T)}return s.value&&s.value.forEach(k=>{if(T){const B=T.groupSummaries.get(k)||0;T.groupSummaries.set(k,B+v[k])}}),T.details.push(v),g},y),N<_.length-1&&y.forEach((g,v)=>{g.nestGroup=new Map,u(g.nestGroup,g.details,N+1,_,m),g.details=[]}))}function f(y,h){return e.group&&e.group.formatter?e.group.formatter(y.value,{...y,total:h}):`${y.title}:${y.value} (${h})`}function x(y){const h=[];return y.forEach(N=>{const _={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:N.field,__fv_data_grid_group_layer__:N.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:N.value};let m=0;if(h.push(_),N.nestGroup){const V=x(N.nestGroup);h.push(...V),m+=V.length}if(N.details&&N.details.length&&(h.push(...N.details),m+=N.details.length),c.value){const V={__fv_data_grid_group_field__:N.field,__fv_data_grid_group_layer__:N.layer,__fv_data_grid_group_summary__:!0};V[o.value]=`summary_of_${N.field}_${N.value}`,V[N.field]=Array.from(N.groupSummaries.entries()).reduce((g,[v,F])=>`${g} ${v} total:${F} `,""),h.push(V)}N.groupSummaries&&N.groupSummaries.size&&N.groupSummaries.forEach((V,g)=>{_[g]=V}),_[o.value]=`group_of_${N.field}_${N.value}`,_[N.field]=f(N,m)}),h.forEach((N,_)=>{N.__fv_data_index__=_}),h}function b(y,h,N){return!y||y.length===0||!h.length?h:(y.join(","),d.clear(),p=[],u(d,h,0,y,N),p=x(d),p)}function S(y){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":y.collapse}}return{collpaseGroupIconClass:S,generateGroupData:b,groupFields:i,shouldGroupingData:l}}function ma(e,n,o,r){const a=t.ref(!!e.hierarchy),{idField:i}=r,{collapseField:l,hasChildrenField:s,parentIdField:c}=o,d=new Map;function p(T,M){const k=new Map;return T.reduce((B,$)=>{const O=$[c.value]!==void 0?$[c.value]:"";if(O&&M.has(O)){const j=M.get(O);$.__fv_parent_index__=j.__fv_index__,j.__fv_hasChildren__=!0}const D=B.has(O)?B.get(O):[];return D.push($),B.set(O,D),B},k),k}function u(T){const M=new Map;return T.reduce((k,B)=>{const $=B[i.value];return k.set($,B),k},M),M}function f(T){T.forEach(M=>{const k=M[i.value];M.__fv_children_index__.map($=>T[$]).forEach($=>{$.__fv_parents__=new Map([...M.__fv_parents__.entries(),[k,!0]])})})}function x(T){T.forEach(M=>{const k=new Set(M.__fv_children_index__);M.__fv_children_index__=[...k].sort((B,$)=>B-$)})}function b(T,M){T.forEach(k=>{const B=k.__fv_parents__;Array.from(B.keys()).map($=>M.get($)).forEach($=>{$.__fv_children_index__.push(k.__fv_index__)})}),x(T)}function S(T){T.forEach(M=>{M.__fv_child_with_lines__=[],M.__fv_child_length__=M.__fv_descendant_index__.length,M.__fv_descendant_index__.map(k=>T[k]).reduce((k,B)=>(k.__fv_child_length__+=B.__fv_children_index__.length,k.__fv_child_with_lines__.push(...B.__fv_children_index__,B.__fv_index__),k),M)})}function w(T,M){return{id:T,index:M,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function C(T,M){Array.from(M.keys()).forEach(k=>{M.get(k).reduce(($,O)=>{const D=O[i.value],j=T.get(O[i.value]),P=T.get(k);return P&&(P.children.set(D,j),P.children.set(D,j),j.parentId=k,j.parentIndex=P.index,j.parents.set(k,P)),$},T)})}function y(T){T.children.forEach(k=>{k.parents=new Map([...T.parents.entries(),[T.id,T]]),y(k)})}function h(T,M){T.filter(k=>k[c.value]===void 0||k[c.value]==="").forEach(k=>{const B=k[i.value],$=M.get(B);y($)})}function N(T){Array.from(T.values()).forEach(M=>{Array.from(M.parents.values()).forEach(k=>{k.descendant.set(M.id,M)})})}function _(T){d.clear(),T.forEach((B,$)=>{const O=B[i.value];d.set(O,w(O,$))});const M=u(T),k=p(T,M);return C(d,k),h(T,d),N(d),d}function m(T){const M=T[i.value],k=d.get(M);return k&&k.children.size>0}function V(T){return T[s.value]&&!m(T)}function g(T){_(n.value);const M=u(T),k=p(T,M);return T.forEach((B,$)=>{var P;const O=B[i.value],D=k.has(O)?(P=k.get(O))==null?void 0:P.map(E=>E.__fv_index__):[],j=w(O,$);B.__fv_graph_node__=j,B.__fv_children_index__=D,B.__fv_descendant_index__=[...D],B.__fv_parents__=new Map,V(B)&&(B[l.value]=!0)}),f(T),b(T,M),e.showLines&&S(T),T}function v(T,M,k){const $=k.value[T][i.value],O=d.get($);if(O){const D=d.get(O.parentId);let j=k.value.length-1;if(D){const P=Array.from(D.children.keys()).indexOf(O.id);if(P===D.children.size-1){const re=Array.from(D.descendant.values())[D.descendant.size-1];j=k.value.findIndex(ve=>ve[i.value]===re.id)+1}else{const re=Array.from(D.children.values())[P+1];j=k.value.findIndex(ve=>ve[i.value]===re.id)}M[s.value]=!1,M[c.value]=D.id,k.value.splice(j,0,M)}}}function F(T,M,k){const B=k.value[T],$=B[i.value];if(d.get($)){const j=k.value.findIndex(P=>P[i.value]===$)+1;B[s.value]=!0,B[l.value]=!1,M[s.value]=!1,M[c.value]=$,k.value.splice(j,0,M)}}function I(T,M){const k=T[i.value],B=d.get(k),$=Array.from(B.descendant.keys());$.unshift(k);const O=d.get(B.parentId);if(O&&(O.children.delete(k),O.children.size===0)){const j=M.find(P=>P[i.value]===B.parentId);j[s.value]=!1,j[l.value]=!1}return M.filter(j=>$.indexOf(j.id)===-1)}return{generateHierarchyData:g,hasRealChildren:m,insertSibling:v,insertChild:F,shouldStratifyData:a,trimmedOriginalData:I}}const ga={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}},ha={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Ot=t.defineComponent({name:"Toast",props:ha,emits:["close","click"],setup:(e,n)=>{const o=t.ref(e.animate),r="fadeOut",a=t.computed(()=>e.options),i=t.ref(!1),l=t.computed(()=>{const C={animated:i.value,toast:!0};return C[e.animate]=!1,C[r]=i.value,C[a.value.type]=!0,a.value.theme&&(C[a.value.theme]=!0),C}),s=t.computed(()=>{const h=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,N={"f-icon":!0};return N[h]=!0,N}),c=t.computed(()=>a.value.title||a.value.message),d=t.computed(()=>a.value.title&&a.value.message),p=t.computed(()=>!a.value.title&&a.value.message),u=t.computed(()=>e.showCloseButton),f=t.computed(()=>!!a.value.buttons||!!n.slots.default);function x(C){C.stopPropagation(),C.preventDefault(),i.value=!1,setTimeout(()=>{n.emit("close",a.value)},200)}function b(C,y){}function S(C){return`f-preten-link ${C.customClass?C.customClass:""}`}t.watch(o,()=>{o.value});const w=()=>{var C;return t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"after-toast-msg text-right"},[!n.slots.default&&((C=a.value.buttons)==null?void 0:C.map(y=>t.createVNode("span",{class:S(y),onClick:h=>void 0},[y.text]))),n.slots.default&&n.slots.default()])])};return()=>t.createVNode("div",{class:l.value},[u.value&&t.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:x},[t.createVNode("span",{class:"f-icon modal_close"},null)]),c.value&&t.createVNode("section",{class:"modal-tips"},[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:s.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[d.value&&t.createVNode(t.Fragment,null,[t.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),t.createVNode("p",{class:"toast-msg",innerHTML:a.value.message},null),f.value&&w()]),p.value&&(a.value.buttons?t.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null),t.createVNode("div",{class:"after-toast-title text-right ml-auto"},[w()])]):t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null))])])])}}),pt=t.defineComponent({name:"Notify",props:ga,emits:["close","empty"],setup(e,n){const o=t.computed(()=>({"farris-notify":!0})),r={left:12,right:12,top:20,bottom:12},a=t.ref(),i=t.ref(e.options),l=t.ref(e.showCloseButton),s=t.computed(()=>e.position||"bottom-right"),c=t.computed(()=>e.timeout!=null?e.timeout:3e3),d=t.computed(()=>{const f=e.bottom?e.bottom:r.bottom,x=e.top?e.top:r.top,b={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:r.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:r.right}px`:"",top:s.value.indexOf("top")>-1?`${x}px`:"",bottom:s.value.indexOf("bottom")>-1?`${f}px`:""};return s.value.indexOf("center")>-1&&(b.left="50%",b.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(b.top="50%",b.transform="translate(-50%, -50%)")),b});function p(f){n.emit("close")}c.value&&setTimeout(()=>{p()},c.value),n.expose({closeToast:p,container:a,notifyPosition:s});function u(f,x){p()}return()=>t.createVNode("div",{class:o.value,style:d.value,ref:a},[t.createVNode(Ot,{options:i.value,showCloseButton:l.value,animate:e.animate,onClose:f=>u(f,i.value)},null)])}});class Fn{constructor(){z(this,"notifyRefs",[]);z(this,"globalConfig",t.reactive({}))}createNotifyInstance(n){const o=this,a=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...n}),i=document.createElement("div");i.style.display="contents";const l=t.createApp({setup(){const s=t.ref();function c(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(a,s),l.unmount()},220)}if(a.position.indexOf("top")>-1){const d=o.getNotifyInstances(a.position),p=d[d.length-1];if(p){const u=p.value.container.getBoundingClientRect();a.top=u.bottom}}return t.onUnmounted(()=>{document.body.removeChild(i)}),t.onMounted(()=>{o.updateNotifyPositionForCreate(a,s)}),()=>t.createVNode(pt,t.mergeProps({ref:s},a,{onClose:c}),null)}});return l.provide("NotifyService",this),document.body.appendChild(i),l.mount(i),l}getNotifyInstances(n){return this.notifyRefs.filter(o=>o.value.notifyPosition===n)}updateNotifyPositionForCreate(n,o){if(this.notifyRefs&&this.notifyRefs.length){const r=window.innerHeight;n.position.indexOf("bottom")>-1&&this.getNotifyInstances(n.position).forEach(a=>{const i=a.value.container.getBoundingClientRect();a.value.container.style.bottom=i.height+r-i.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(n,o){const r=this.notifyRefs.indexOf(o);if(n.position.indexOf("top")>-1){const a=this.getNotifyInstances(n.position),i=a.indexOf(o);a.slice(i+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}r>-1&&this.notifyRefs.splice(r,1)}show(n){return this.createNotifyInstance(n)}buildNotifyProps(n,o){let r="",a="",i,l,s;typeof o=="string"?r=o:o&&(r=o.message||"",a=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,i=o.timeout!=null?o.timeout:null);const d={options:{type:n,message:r,title:a}};return l!=null&&(d.position=l),s!=null&&(d.showCloseButton=s),i!=null&&(d.timeout=i),d}info(n){const o=this.buildNotifyProps("info",n);return this.show(o)}success(n){const o=this.buildNotifyProps("success",n);return this.show(o)}warning(n){const o=this.buildNotifyProps("warning",n);return this.show(o)}error(n){const o=this.buildNotifyProps("error",n);return this.show(o)}close(n){n&&n.unmount()}closeAll(){this.notifyRefs.forEach(n=>{n==null||n.value.closeToast()}),this.notifyRefs.length=0}}const ya=Symbol("NOTIFY_SERVICE_TOKEN");pt.install=e=>{e.component(pt.name,pt),e.component(Ot.name,Ot);const n=new Fn;e.provide(ya,n),e.provide("FNotifyService",n)};function Tn(e,n,o,r,a){var Ue;const{pageSize:i,total:l,shouldRenderPagination:s,currentPage:c,mode:d}=a,p=new Map,u=new Map,f=new Map,x=new Map,b=new Map,S=t.ref([]),w=t.ref([]),C=It(),y=Bt(e,r),{generateGroupData:h,groupFields:N,shouldGroupingData:_}=y,m=t.ref(e.data),V=ma(e,m,o,r),{generateHierarchyData:g,hasRealChildren:v,insertSibling:F,insertChild:I,shouldStratifyData:T,trimmedOriginalData:M}=V,{idField:k,reviseIdentifyField:B}=r,$=t.ref(e.newDataItem),O=t.ref(e.data),D=t.ref(e.data),{flatTreeData:j}=Oa(e);if(e.data&&((Ue=e.data[0])!=null&&Ue.children)){const G=Ce(e.data);m.value=G,O.value=G,D.value=G}const P=t.ref(e.summary),E=t.computed(()=>{const G=P.value;return(G==null?void 0:G.groupFields)||[]});let re=new Map;const se=t.computed(()=>{var G;return((G=O.value)==null?void 0:G.length)||0}),ve=t.ref(e.pagination),ke=new Fn,Se=t.computed(()=>s.value?d.value==="server"?0:(c.value-1)*i.value:0),he=t.computed(()=>s.value?d.value==="server"?Math.min(i.value,l.value,se.value):Math.min(Se.value+i.value,l.value,se.value):se.value);function Ce(G){return j(G)}function _e(){var ie;O.value=m.value,_.value&&(O.value=h(N.value,m.value,n)),re=E.value.reduce((Fe,Pe)=>(Fe.set(Pe,0),Fe),re);const G=Se.value,ne=he.value;let le=0;const Ne=[];if((ie=O.value)!=null&&ie.length){B(O.value);const Fe=k.value!==e.idField;for(let Pe=G;Pe<ne;Pe++){const be=O.value[Pe];be.__fv_data_grid_group_row__?(le=0,be.__fv_data_index__=""):be.__fv_data_grid_group_summary__?be.__fv_data_index__="":(le++,s.value?be.__fv_data_index__=le+(c.value-1)*i.value:be.__fv_data_index__=le),be.__fv_index__=Pe,Fe&&(be[k.value]=Pe),E.value.forEach(De=>{const Ee=re.get(De)||0;re.set(De,Ee+be[De])}),Ne.push(be)}}return T.value&&g(Ne),D.value=[...Ne],Ne}const ae=t.ref(_e());function ue(G,ne,le=!1){const ie=(le?_e():[...D.value]).filter(be=>C.apply(be)),Fe=G&&G.length?ie.filter(be=>G.reduce((De,Ee)=>De&&Ee.filter(be),!0)):ie,Pe=ne&&ne.length?Fe.sort((be,De)=>{const Ee=[...ne],we=Ee.shift();let Ke=we.compare(be[we.field],De[we.field]);for(;Ke===0&&Ee.length!==0;){const it=Ee.shift();it&&(Ke=it.compare(be[it.field],De[it.field]))}return Ke}):Fe;return ae.value=Pe.map((be,De)=>{if(be.__fv_data_grid_group_row__){const Ee=`group_of_${be.__fv_data_grid_group_field__}_${be.__fv_data_grid_group_value__}`;be.__fv_data_grid_group_collapse__=!!p.get(Ee)}return be.__fv_index__=De,be}),ae.value}function W(G){return b.clear(),w.value=G,w.value.reduce((ne,le)=>(ne.set(le.field,le),ne),b),ue([],w.value)}function U(G,ne){return b.set(G,ne),w.value=Array.from(b.values()),ue([],w.value)}function ce(G){return b.delete(G),w.value=Array.from(b.values()),ue([],w.value)}function ee(G,ne){return u.set(G,ne),S.value=Array.from(u.values()),ue([],Array.from(b.values()))}function ge(G){return u.delete(G),S.value=Array.from(u.values()),ue([],Array.from(b.values()),!0)}function R(){return u.clear(),S.value=[],ue([],Array.from(b.values()),!0)}function K(G,ne){const le=`group_of_${G}_${ne}`;p.set(le,!0);const Ne=ie=>ie[G]!==ne;return f.set(`collapse_${G}_${ne}`,{field:G,fieldName:G,fieldType:"string",filterValue:ne,filter:Ne}),ue(Array.from(f.values()),Array.from(b.values()))}function pe(G,ne){const le=`group_of_${G}_${ne}`;return p.set(le,!1),f.delete(`collapse_${G}_${ne}`),ue(Array.from(f.values()),Array.from(b.values()),!0)}function H(G){const ne=G.raw[k.value],le=Ne=>!Ne.__fv_parents__.has(ne);x.set(`fold_${ne}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(ne),filter:le}),ue(Array.from(x.values()),Array.from(b.values())),g(ae.value)}function de(G){const ne=G[k.value];x.delete(`fold_${ne}`)}function me(G){de(G.raw),ue(Array.from(x.values()),Array.from(b.values()),!0),g(ae.value)}function q(){const G=_e();ae.value=G,e.hierarchy&&(ue(Array.from(x.values()),Array.from(b.values())),g(ae.value))}function ye(G){var ne;if(G&&((ne=G[0])!=null&&ne.children)){const le=Ce(G);m.value=le,O.value=le,D.value=le}else m.value=G,O.value=G,D.value=G;q()}function Me(G,ne,le){return(G&&G.length?ae.value.filter((ie,Fe)=>G.reduce((Pe,be)=>Pe&&be.filter(ie),!0)):ae.value).slice(ne,le)}function J(G){(G-1)*i.value<=se.value&&q()}function oe(G){m.value.push(Re.cloneDeep(G)),ae.value=_e()}function fe(G=0){if(!(G>-1))return!1;const le=$.value();e.hierarchy?F(G,le,m):m.value.splice(G,0,le),q()}function Ve(G=0){if(!(G>-1&&e.hierarchy))return!1;const le=$.value(),Ne=m.value[G];de(Ne),I(G,le,m),q()}function Te(G){const ne=G?G-1:0;m.value.splice(ne,1),q()}function $e(G){const ne=m.value.findIndex(le=>le[k.value]===G);ne!==-1&&(m.value.splice(ne,1),q())}function Ge(G){const ne=G>-1?m.value[G]:null;if(!(ne&&ne.deletable!==!1))return!1;m.value=M(ne,m.value),q()}function Le(){const G=f.size>0?Array.from(f.values()):[];return ue(G,Array.from(b.values()))}function Ze(G){ve.value&&(ve.value.size=G,q())}function et(G,ne){const le=m.value[Number(G)-1];le.editable!==!1?(le.name=ne,q()):ke.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function tt(G){return G.map(le=>{const Ne=D.value.findIndex(ie=>ie[k.value]===le);return Ne>-1?D.value[Ne]:null}).filter(le=>le!=null)}return{addFilter:ee,addNewDataItem:oe,addSorter:U,changePageSizeTo:Ze,collapse:K,dataView:ae,editDataItem:et,expand:pe,filters:S,fold:H,getRange:Me,getSelectionItems:tt,hasRealChildren:v,load:ye,navigatePageTo:J,summaries:re,totalItems:se,insertNewDataItem:fe,insertNewChildDataItem:Ve,removeAllFilter:R,removeDataItem:Te,removeDataItemById:$e,removeFilter:ge,removeHierarchyDataItem:Ge,removeSorter:ce,rawView:D,refresh:Le,setSorters:W,sorters:w,updateDataView:q,unFold:me,startIndex:Se,endIndex:he,originalData:m}}function Mn(){function n(l){return l.field}function o(l){const s=n(l),c=localStorage.getItem(s);return c?JSON.parse(c):[]}function r(l,s){const c=n(l);localStorage.setItem(c,JSON.stringify(s))}function a(l,s){if(!s)return;const c=o(l),p=[c.find(u=>u.name===s)||{id:Date.now(),name:s,selectable:!0},...c.filter(u=>u.name!==s)];p.length>5&&(p.length=5),r(l,p)}function i(l,s){const d=[...o(l).filter(u=>u.name!==s)],p=n(l);localStorage.setItem(p,JSON.stringify(d))}return{getFilterHistory:o,removeFilterHistory:i,setFilterHistory:r,updateFilterHistory:a}}function In(e){t.ref(e.selection.showCheckbox||!1);const n=t.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),o=t.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),r=t.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.parentIdField)||"parent"}),a=t.computed(()=>e.hierarchy&&e.selection.showCheckbox),i=t.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:n,hasChildrenField:o,parentIdField:r,shouldShowCheckBox:a,shouldShowIcon:i}}function va(e,n,o,r){var S,w,C,y,h,N;const{idField:a}=o,i=t.ref(((w=(S=e.hierarchy)==null?void 0:S.cascadeOption)==null?void 0:w.autoCheckChildren)||!1),l=t.ref(((y=(C=e.hierarchy)==null?void 0:C.cascadeOption)==null?void 0:y.autoCheckParent)||!1),s=t.ref(((N=(h=e.hierarchy)==null?void 0:h.cascadeOption)==null?void 0:N.selectionRange)||"All");t.watch(()=>{var _;return(_=e.hierarchy)==null?void 0:_.cascadeOption},_=>{i.value=_?!!_.autoCheckChildren:!1,l.value=_?!!_.autoCheckParent:!1,s.value=_?_.selectionRange:"All"});function c(_,m){for(let V=0;V<m.length;V++)if(!_.includes(m[V]))return!1;return!0}function d(_,m){return _.filter(g=>m.indexOf(g)===-1)}const p=t.computed(()=>s.value==="OnlyParent"),u=t.computed(()=>s.value==="OnlyChildren");function f(_,m){let V=_;const g=n.value[m],v=g.raw[a.value],F=Array.from(g.raw.__fv_descendant_index__).map($=>n.value[$]),I=F.map($=>$.raw[a.value]),T=c(_,I),M=c(_,[v]);return M&&T&&p.value&&(V=d(_,I),F.forEach($=>{$.disable=!0})),M&&T&&u.value&&(V=d(_,[v]),F.forEach($=>{$.disable=!0})),V}function x(_,m){let V=_;const g=m[a.value],v=Array.from(m.__fv_children_index__).map(B=>n.value[B]),F=v.map(B=>B.raw[a.value]),I=c(_,F),T=c(_,[m[a.value]]);return T&&I&&p.value&&(V=d(_,F),v.forEach(B=>{B.disable=!0})),T&&I&&u.value&&(V=d(_,[g]),v.forEach(B=>{B.disable=!0})),V}function b(_,m){let V=_.map(I=>I[a.value]);return m.__fv_parent_index__>0&&(V=f(V,m.__fv_parent_index__)),m.__fv_children_index__.length>0&&(V=x(V,m)),_.filter(I=>V.includes(I[a.value]))}return{autoCheckChildren:i,autoCheckParent:l,interactAfterCheckHierarchyItem:b}}function ba(e,n,o,r,a){const{select:i,unSelect:l,indeterminate:s,getSelectedItems:c}=r,{autoCheckChildren:d,autoCheckParent:p,interactAfterCheckHierarchyItem:u}=va(e,n,o),{idField:f}=o;function x(){return n.value.filter(m=>!!m.checked).map(m=>m.raw.__fv_index__)}function b(m,V){return m.filter(v=>V.indexOf(v)===-1)}function S(m){const V=x();m.raw.__fv_children_index__.some(v=>V.includes(v))&&!!m.checked!==!0&&s(m)}function w(m){let V=m.raw.__fv_parent_index__;for(;V!==void 0;){const g=x(),v=n.value[V],F=b(v.raw.__fv_children_index__,g);F.length===v.raw.__fv_children_index__.length&&F.length!==0?l(v):F.length===0?p.value&&i(v):F.length<v.raw.__fv_children_index__.length&&v.checked!==!0&&s(v),V=v.raw.__fv_parent_index__}}function C(m){const V=!!m.checked;d.value&&m.raw.__fv_children_index__.map(g=>n.value[g]).forEach(g=>{V?i(g):l(g)})}function y(m){C(m),w(m);const V=m.raw;let g=c();g=u(g,V),S(m),a.emit("selectionChange",g)}function h(m,V){let g=-1;if(m.raw.__fv_parent_index__>-1){const T=n.value[m.raw.__fv_parent_index__].raw.__fv_descendant_index__,M=T.length>1,k=T.findIndex($=>$===V),B=k===T.length-1;g=M?B?T[k-1]:T[k+1]:-1}return g>-1?n.value[g]:null}function N(m){return m.raw.__fv_parent_index__>-1?n.value[m.raw.__fv_parent_index__]:null}function _(m){const V=n.value[m];if(!V)return null;const g=h(V,m),F=g!==null?g:N(V);return F?F.raw[f.value]:null}return{getNextSelectableHierarchyItemId:_,toggleSelectHierarchyItem:y}}function Bn(e,n,o,r,a,i,l,s){var Me;const{dataView:c}=n,{getVisualData:d,maxVisibleRowIndex:p,minVisibleRowIndex:u}=a,f=t.ref(r.value.primaryColumnsWidth),x=t.ref(r.value.leftColumnsWidth),b=t.ref(r.value.rightColumnsWidth),S=((Me=e.rowOption)==null?void 0:Me.height)||28,w=t.ref(0),C=t.ref(0);let y=0,h=i.value-1;const N=t.ref(0),_=t.ref(0),m=t.ref(0);function V(){if(c.value.length<=0)return 0;const J=p.value<c.value.length?c.value[p.value]:c.value[c.value.length-1];return(J.__fv_data_position__||0)+(J.__fv_data_height__||0)+Math.max(c.value.length-1-p.value,0)*S}const g=t.computed(()=>{const J=V();return c.value.length>i.value+l?Math.floor((i.value+l)/c.value.length*_.value):Math.floor(_.value/Math.max(J,_.value)*_.value)}),v=t.computed(()=>Math.floor(m.value/Math.max(f.value,m.value)*N.value)),F=0,I=0,T=t.computed(()=>N.value-(x.value+f.value+b.value+s.value));function M(J){const oe=c.value.find(fe=>fe.__fv_data_position__>J);return oe?oe.__fv_index__-1:0}function k(J){var Ge,Le;if(!c.value.length){o.value=[];return}const oe=(Ge=e.pagination)!=null&&Ge.enable?0:Math.max(y-l,0),fe=c.value[c.value.length-1].__fv_index__,Ve=(Le=e.pagination)!=null&&Le.enable?c.value.length-1:Math.min(h+l-1,fe),Te=c.value[oe-1],$e=d(oe,Ve,Te,J);$e.length&&(o.value=[...$e])}const B=t.computed(()=>V()>_.value),$=t.computed(()=>Math.floor(f.value)>m.value);function O(J){let oe=w.value+J;oe>F&&(oe=F);const fe=oe>F,Ve=V(),Te=B.value;Te&&oe<_.value-Ve&&(oe=_.value-Ve),(!Te||fe)&&(oe=F),w.value!==oe&&(w.value=oe,y=M(Math.abs(w.value)),h=y+i.value,(y<u.value||h>p.value-l/2)&&k())}function D(J){if(!$.value){C.value=0;return}let oe=C.value+J;oe>I&&(oe=I),oe<T.value&&(oe=T.value),C.value!==oe&&(C.value=oe)}function j(){Math.abs(C.value)+m.value>f.value&&(C.value=Math.min(m.value-f.value,0))}function P(){w.value=0,y=0,h=i.value-1,k()}t.watch(m,()=>{D(0)}),t.watch(r,()=>{f.value=r.value.primaryColumnsWidth,x.value=r.value.leftColumnsWidth,b.value=r.value.rightColumnsWidth});function E(J){let{deltaX:oe}=J.deltaX,fe=-1*J.deltaY;return typeof oe>"u"&&(oe=-1*J.wheelDeltaX/6),typeof fe>"u"&&(fe=J.wheelDeltaY/6),J.deltaMode&&J.deltaMode===1&&(oe*=10,fe*=10),J.shiftKey?{deltaY:-fe,deltaX:-oe}:{deltaX:oe,deltaY:fe}}function re(J){J.preventDefault(),J.stopPropagation();const{deltaX:oe,deltaY:fe}=E(J);O(fe),D(oe)}const se=t.computed(()=>({height:`${c.value.length*S}px`,width:`${x.value}px`,transform:`translateY(${w.value}px)`})),ve=t.computed(()=>({transform:`translateY(${w.value}px)`})),ke=t.computed(()=>({height:`${c.value.length*S}px`,width:`${f.value}px`,transform:`translate(${C.value}px, ${w.value}px)`})),Se=t.computed(()=>({transform:`translate(${C.value}px, ${w.value}px)`})),he=t.computed(()=>({height:`${c.value.length*S}px`,width:`${b.value}px`,transform:`translateY(${w.value}px)`})),Ce=t.computed(()=>({transform:`translateY(${w.value}px)`})),_e=t.computed(()=>({height:`${c.value.length*S}px`,width:`${s.value}px`,transform:`translateY(${w.value}px)`})),ae=t.computed(()=>({width:`${x.value}px`})),ue=t.computed(()=>({transform:`translateX(${C.value}px)`})),W=t.computed(()=>({width:`${b.value}px`})),U=t.computed(()=>{const J=V();return w.value/(_.value-J)*(_.value-g.value)}),ce=t.computed(()=>({height:`${g.value}px`,top:`${U.value}px`})),ee=t.computed(()=>C.value/T.value*(N.value-v.value)),ge=t.computed(()=>({width:`${v.value}px`,left:`${ee.value}px`})),R=t.ref(!1),K=t.ref(-1),pe=t.ref(-1),H=t.ref();function de(J){if(R.value&&pe.value!==-1){const oe=pe.value-J.pageX,fe=N.value-v.value;if(Math.abs(oe)<=fe){const Ve=oe/(m.value-v.value)*(f.value-m.value);D(Ve),pe.value=J.pageX}}}function me(J){if(R.value&&K.value!==-1){const oe=K.value-J.pageY,fe=V(),Ve=fe-g.value;if(Math.abs(oe)<=Ve){const Te=oe/(_.value-g.value)*(fe-_.value);O(Te),K.value=J.pageY}}}function q(J){R.value=!1,K.value=-1,pe.value=-1,document.removeEventListener("mouseup",q),document.removeEventListener("mousemove",de),document.removeEventListener("mousemove",me),document.body.style.userSelect="",H.value&&(H.value.style.opacity=null)}function ye(J,oe,fe){var $e;R.value=!0;const Ve=($e=J.target)==null?void 0:$e.parentElement;Ve&&(Ve.style.opacity=1,H.value=Ve);const Te=fe==="horizontal"?de:me;fe==="vertical"&&(K.value=J.pageY),fe==="horizontal"&&(pe.value=J.pageX),oe.value&&(oe.value,document.addEventListener("mousemove",Te),document.addEventListener("mouseup",q),document.body.style.userSelect="none")}return{onMouseDownScrollThumb:ye,onWheel:re,dataGridWidth:N,gridDataStyle:ke,gridHeaderColumnsStyle:ue,gridMergedDataStyle:Se,gridSideStyle:_e,fitHorizontalScroll:j,viewPortWidth:m,viewPortHeight:_,horizontalScrollThumbStyle:ge,leftFixedGridDataStyle:se,leftFixedGridHeaderColumnsStyle:ae,leftFixedGridMergedDataStyle:ve,reCalculateVisualDataRows:k,resetScroll:P,rightFixedGridDataStyle:he,rightFixedGridHeaderColumnsStyle:W,rightFixedGridMergedDataStyle:Ce,shouldShowHorizontalScrollbar:$,shouldShowVirticalScrollbar:B,verticalScrollThumbStyle:ce,offsetX:C,offsetY:w}}function On(e,n,o,r,a,i,l,s){const c=t.ref(r.value-1+a),d=t.ref(0),{renderDataRow:p}=i,u=l?l.renderGroupRow:p,f=s?s.renderSummaryRow:p;function x(w){let C=p;return w.__fv_data_grid_group_row__&&(C=u),w.__fv_data_grid_group_summary__&&(C=f),C}function b(w,C,y,h){const{dataView:N}=o,_=[];if(N.value.length>0){const m=h?Date.now().toString():"";for(let V=w,g=0;V<=C;V++,g++){const v=N.value[V],F=N.value[V-1]||y,I=_[g-1],T=F?(F.__fv_data_position__||0)+(F.__fv_data_height__||0):0,k=x(v)(v,F,I,V,T,n.value);k.refreshKey=m,_.push(k)}}return d.value=_.length>0?_[0].index:0,c.value=_.length>0?_[_.length-1].index:0,_}function S(w,C,y){const h=C.groupField||"",{groupValue:N}=C;o[w](h,N);const{dataView:_}=o,m=y[0].index,V=Math.min(m+r.value+a+1,_.value.length-1);return b(m,V)}return{getVisualData:b,maxVisibleRowIndex:c,minVisibleRowIndex:d,toggleGroupRow:S}}function Ca(){function e(n,o){var i,l;const r=o.raw[n.field],a=(i=n.editor)==null?void 0:i.enumData.find(s=>{var c;return s[(c=n.editor)==null?void 0:c.idField]===r});return a==null?void 0:a[((l=n.editor)==null?void 0:l.textField)||"name"]}return{renderEnumColumn:e}}function wa(){function e(r,a){return r?t.createVNode("span",{innerHTML:a.formatter.trueText},null):t.createVNode("span",{innerHTML:a.formatter.falseText},null)}function n(r,a){var i,l;return r?(i=a.formatter)==null?void 0:i.trueText:(l=a.formatter)==null?void 0:l.falseText}function o(r,a){const{formatter:i}=r,l=a.raw[r.field];if(i.type===Vt.TEXT)return n(l,r);if(i.type===Vt.IMAGE)return e(l,r)}return{renderBooleanColumn:o}}function xa(){const{formatTo:e}=ze.useDateFormat();function n(r,a){return e(r,a.formatter.dateFormat)}function o(r,a){const i=a.raw[r.field];return n(i,r)}return{renderDateColumn:o}}function Sa(){const{formatTo:e}=ze.useNumberFormat();function n(r,a){const{formatter:i}=a,l={precision:i.precision,prefix:i.prefix||"",suffix:i.suffix||"",decimalSeparator:i.decimal||".",groupSeparator:i.thousand||""};return e(r,l)}function o(r,a){const i=a.raw[r.field];return n(i,r)}return{renderNumberColumn:o}}function _a(){const{renderBooleanColumn:e}=wa(),{renderEnumColumn:n}=Ca(),{renderNumberColumn:o}=Sa(),{renderDateColumn:r}=xa();function a(s){return s}function i(s,c){const{formatter:d}=c;return d.customFormat?new Function(`return ${d.customFormat}`)():s}function l(s,c,d){const p=d.data[c.field],{formatter:u}=c;return u.type==="none"?p:u.type==="custom"?i(p,c):u.type==="enum"?n(c,d):u.type==="number"?o(c,d):u.type==="boolean"?e(c,d):u.type==="date"?r(c,d):p}return{renderFormatColumn:l}}function $n(e,n,o){var S;const r=t.ref(e.mergeCell),i=((S=t.ref(e.rowOption).value)==null?void 0:S.wrapContent)||!1,{updateVisualInfomation:l}=o,{renderCommandColumn:s}=oi(),{renderFormatColumn:c}=_a();function d(w,C,y,h,N,_=1){const m={colSpan:_,rowSpan:1,index:y,field:w,data:h[w],editingData:h[w],parent:N,mode:C,getEditor:V=>V.data,setRef:V=>l(V,m,h),update:()=>{},accept:()=>{},cancel:()=>{}};return m}function p(w,C,y){return w.getEditor=h=>n.getEditor(h,C,h.parent),w.setRef=h=>i&&l(h,w,y),w.update=h=>{h!==void 0&&(w.editingData=h)},w.accept=()=>{y[C.field]=w.editingData,w.data=y[C.field]},w.cancel=()=>{w.editingData=w.data},w}function u(w,C){C.dataType==="commands"?w.formatter=(y,h)=>s(C,h):C.formatter&&(w.formatter=(y,h)=>typeof C.formatter=="function"?C.formatter(y,h):c(C.dataType,C,h))}function f(w,C,y){const h=C&&C.data[y];if(h&&h.data===w.data){const _=h&&h.spannedBy||h;_.rowSpan++,_.spanned=_.spanned||[],_.spanned.push(w),w.colSpan=0,w.rowSpan=0,w.spannedBy=_}}function x(w,C,y){r.value&&f(w,C,y.field)}function b(w,C,y,h,N){const _=w.readonly?Be.readonly:Be.editable,m=d(w.field,_,C,y,h);return p(m,w,y),u(m,w),x(m,N,w),m}return{createCellByColumn:b,createCellByField:d}}function jn(e,n,o,r,a,i){var C,y;const l=t.ref(e.rowOption),s=((C=l.value)==null?void 0:C.height)||28,c=((y=l.value)==null?void 0:y.wrapContent)||!1,{idField:d}=r,{collapseField:p}=o,{updateRowPosition:u}=a,{createCellByColumn:f}=i;function x(h,N,_,m,V,g){var re,se;const{__fv_data_grid_group_field__:v,__fv_data_grid_group_value__:F,__fv_data_index__:I}=_,T=_.__fv_data_grid_group_layer__||_.__fv_parents__?(re=_.__fv_parents__)==null?void 0:re.size:0,M=typeof _.parent=="number"?Number(_.parent):-1,k=_.__fv_data_grid_group_collapse__||_[p.value],B=_.__fv_visible__===void 0?!0:_.__fv_visible__,$=_.__fv_checked__,O=_.__fv_indeterminate__,D=m&&m[d.value]===_.parent,j=m&&m.parent===_.parent,P=D&&V&&(V.collapse||!V.visible)||j&&V&&!V.visible,E={collapse:k,data:{},dataIndex:I,groupField:v,groupValue:F,layer:T,index:N,parentIndex:M,pre:m,top:g,type:h,raw:_,checked:$,disabled:_.disabled,indeterminate:O,setRef:ve=>{E.ref=ve},visible:B&&!P,status:Ae.initial};return m||(_.__fv_data_position__=0),c||(E.height=s,_.__fv_data_height__=E.height,u(E,_)),(se=l.value)!=null&&se.customRowStatus&&(l.value.customRowStatus(E),_.__fv_collapse__=E.collapse,_.__fv_visible__=E.visible),E}function b(h,N,_,m,V,g){const v=x(Ye.data,V,N,_,m,g);return h.forEach((F,I)=>{v.data[F.field]=f(F,V,N,v,m)}),v}function S(h,N,_,m,V){return Object.assign(h,{index:N,dataIndex:_,top:m,pre:V})}function w(h,N,_,m,V,g){const v=h.__fv_data_index__,F=h[d.value],I=n.getEditingSnapshot(F);return I===null?b(g,h,N,_,m,V):S(I,m,v,V,_)}return{createEmptyRow:x,createNewRowFromDataItem:b,renderDataRow:w}}function Va(e,n,o,r){const a=t.ref(e.summary),{idField:i}=n,{createCellByField:l}=o,{createEmptyRow:s}=r,c=t.computed(()=>{const f=a.value;return(f==null?void 0:f.groupFields)||[]}),d=t.computed(()=>{const f=a.value;return f&&f.enable&&f.groupFields&&f.groupFields.length>0});function p(f,x,b,S){if(d.value){const w=f.data[x];let C=w.colSpan;const y=c.value.reduce((h,N)=>(h.set(N,!0),h),new Map);S.reduce((h,N,_)=>{if(y.has(N.field)){const m=l(N.field,Be.readonly,_,b,f);f.data[N.field]=m,C-1>_&&(C=_)}return h},f),w.colSpan=C}}function u(f,x,b,S,w,C){const y=f.__fv_data_grid_group_field__,h=s(Ye.group,S,f,x,b,w);return h.data[i.value]=l(i.value,Be.readonly,-1,f,h,0),h.data[y]=l(y,Be.readonly,1,f,h,C.length),p(h,y,f,C),h}return{renderGroupRow:u}}function Na(e,n,o,r){const{idField:a}=n,{createCellByField:i}=o,{createEmptyRow:l}=r;function s(c,d,p,u,f,x){const b=c.__fv_data_grid_group_field__,S=l(Ye.summary,u,c,d,p,f);return S.data[a.value]=i(a.value,Be.readonly,-1,c,S),S.data[b]=i(b,Be.readonly,1,c,S,x.length),S}return{renderSummaryRow:s}}function Dn(e,n,o){var V;const{idField:r}=o,a=t.ref(e.editable),i=t.ref(e.editOption),l=t.ref(((V=e.rowOption)==null?void 0:V.wrapContent)||!1);t.watch(()=>e.editable,()=>{a.value=e.editable}),t.watch(()=>{var g;return(g=e.editOption)==null?void 0:g.editMode},g=>{i.value.editMode=g});const s=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let c,d,p,u;function f(g){return d&&d.raw[r.value]===g?d:null}function x(g,v,F){g.mode=Be.editing,c=g,d=v,p=v.raw[g.field],u=F}function b(g){g.accept(),g.mode=Be.editable,n.emit("endEditCell",{cell:g,row:d,newValue:d==null?void 0:d.raw[g.field],oldValue:p,column:u})}function S(g){c&&(b(c),d&&(d=null)),document.body.removeEventListener("click",S)}function w(g,v,F,I){a.value&&i.value.editMode==="cell"&&v.mode===Be.editable&&(c&&b(c),x(v,F,I),document.body.removeEventListener("click",S),document.body.addEventListener("click",S))}function C(g){Object.values(g.data).filter(v=>v.mode===Be.editable&&v.field!=="__commands__").forEach(v=>{v.mode=Be.editing}),g.status=Ae.editing,d=g}function y(g,v){Object.values(g.data).filter(F=>F.mode===Be.editing).forEach(F=>{v?F.accept():F.cancel(),F.mode=Be.editable}),g.status=Ae.initial,d===g&&(d=null)}function h(g){a.value&&i.value.editMode==="row"&&d!==g&&(d&&y(d,!1),C(g))}function N(g){y(g,!0),g.status=Ae.initial}function _(g){y(g,!1),g.status=Ae.initial}function m(g,v,F){const I=v.dataType,T=v.editor||{type:s.get(I)||"input-group"};return!l.value&&T.type==="text"&&(T.type="input-group"),T?t.createVNode(bt.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:T,modelValue:g.editingData,"onUpdate:modelValue":M=>g.editingData=M},null):g.data}return{onClickCell:w,onEditingRow:h,acceptEditingRow:N,cancelEditingRow:_,getEditingSnapshot:f,getEditor:m}}function Pn(e){const n=t.ref(e.idField);function o(r){if(r&&r.length){const a=r[0];Object.keys(a).includes(n.value)||(n.value="__fv_indetify__")}}return{idField:n,reviseIdentifyField:o}}function ka(e,n,o,r,a,i){const{addNewDataItemAtLast:l}=o,{columnContext:s}=r,{onClickCell:c}=a;function d(b,S){const w=s.value.primaryColumns.findIndex(V=>V.field===b.field),C=b.parent,y=C.index,h=s.value.primaryColumns.length-1,N=i.value.length-1,_=w===h,m=y===N;if(w>-1&&!_){const V=s.value.primaryColumns[w+1],g=C.data[V.field];c(S,g)}if(_&&!m){const g=i.value[y+1].data[s.value.primaryColumns[0].field];c(S,g)}if(_&&m){if(e.appendOnEnterAtLastCell){l();const g=i.value[y+1].data[s.value.primaryColumns[0].field];c(S,g)}n.emit("enterUpInLastCell")}}function p(b,S){const w=s.value.primaryColumns.findIndex(N=>N.field===b.field),C=b.parent,y=s.value.primaryColumns.length-1;if(w>0&&w<=y){const N=s.value.primaryColumns[w-1],_=C.data[N.field];c(S,_)}}function u(b,S){const w=b.field,y=b.parent.index,h=i.value.length-1;if(y>-1&&y<h){const m=i.value[y+1].data[w];c(S,m)}}function f(b,S){const w=b.field,y=b.parent.index,h=i.value.length-1;if(y>0&&y<=h){const m=i.value[y-1].data[w];c(S,m)}}function x(b,S){const{key:w,shiftKey:C}=b;if(w==="Enter"&&!C){d(S,b);return}if(C&&w==="Enter"){p(S,b);return}if(w==="ArrowDown"){u(S,b);return}w==="ArrowUp"&&f(S,b)}return{navigateOnKeyUp:x}}function En(e,n,o,r){const{idField:a}=r,{currentSelectedDataId:i,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:c,selectedValues:d,toggleSelectItem:p,enableSelectRow:u}=o,f=t.ref(0),x=t.ref(-1);function b(m){return u.value&&(s.value?d.value.includes(m.raw[a.value]):m.raw[a.value]===i.value)}function S(m){var g;const V={"fv-grid-row":m.type===Ye.data,"fv-grid-group-row":m.type===Ye.group,"fv-grid-summary-row":m.type===Ye.summary,"fv-grid-row-hover":m.index===x.value,"fv-grid-row-selected":b(m),"fv-grid-row-odd":m.dataIndex%2>0,"fv-grid-row-even":m.dataIndex%2===0,"fv-grid-disabled":m.disabled};if((g=e.rowOption)!=null&&g.customRowStyle){const v=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},V,v)}return V}function w(m){var g;const V={"fv-grid-cell":!0};if((g=e.rowOption)!=null&&g.customCellStyle){const v=e.rowOption.customCellStyle(m)||{};return Object.assign({},V,v)}return V}function C(m){f.value+=1,setTimeout(()=>{f.value===1&&n.emit("ClickRow",m.index,m.raw),f.value=0},250),f.value>1&&(n.emit("doubleClickRow",m.index,m.raw),console.log(`on double click row: ${m.index}`),f.value=0)}function y(m,V){if(V.disabled)return;s.value&&m.shiftKey||l.value?p(V):c(V),C(V),m.stopPropagation()}function h(m,V){}function N(m,V){}function _(m){var g;const V={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":m.index===x.value,"fv-grid-sidebar-row-selected":b(m),"fv-grid-sidebar-row-odd":m.dataIndex%2>0,"fv-grid-sidebar-row-even":m.dataIndex%2===0};if((g=e.rowOption)!=null&&g.customRowStyle){const v=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},V,v)}return V}return{gridCellClass:w,gridRowClass:S,onClickRow:y,onMouseoverRow:h,sidebarRowClass:_,onMouseoutRow:N}}function Rn(e,n,o,r,a){const{idField:i}=o,l=t.ref(""),s=t.computed(()=>e.selection.enableSelectRow),c=t.ref(e.selection.multiSelect??!1),d=t.ref(e.selection.multiSelectMode),p=t.ref(e.selection.showCheckbox),u=t.ref(e.selection.showSelectAll),f=t.ref(e.selectionValues);t.watch(()=>e.selection.showSelectAll,(j,P)=>{j!==P&&(u.value=j)});function x(){return n.getSelectionItems(f.value)}function b(){const j=r.value.reduce((E,re)=>(E.set(re.raw[i.value],re),E),new Map);return f.value.map(E=>j.get(E)).filter(E=>!!E)}const S=t.computed(()=>s.value&&c.value),w=t.computed(()=>!!e.hierarchy),C=t.computed(()=>{const j=p.value&&d.value==="DependOnCheck";return S.value&&j}),y=t.computed(()=>S.value&&!p.value),h=t.computed(()=>S.value&&p.value&&d.value==="OnCheckAndClick");t.computed(()=>h.value);function N(){const j=n.getSelectionItems(f.value);a.emit("selectionChange",j)}function _(){r.value.forEach(P=>{P.checked=!1,P.indeterminate=!1,P.raw.__fv_checked__=!1,P.raw.__fv_indeterminate__=!1}),b().forEach(P=>{P.checked=!0,P.raw.__fv_checked__=!0})}t.watch(()=>r.value,()=>{_()}),t.watch(()=>e.selectionValues,j=>{f.value=j,_()},{immediate:!0}),t.watch(()=>e.selection,j=>{c.value=!!j.multiSelect,d.value=j.multiSelectMode||"DependOnCheck",p.value=!!j.showCheckbox});const m=t.computed(()=>!c.value);function V(j){return j.raw[i.value]||""}function g(j){return f.value.findIndex(E=>E===V(j))}function v(){b().forEach(E=>{E.checked=!1}),n.getSelectionItems(f.value).forEach(E=>{E.__fv_checked__=!1}),f.value=[],l.value=""}function F(j){const P=j.raw;P.__fv_checked__=!0,P.__fv_indeterminate__=!1;const E=new Set(f.value);E.add(P[i.value]),f.value=Array.from(E.values()),j.checked=!0,j.indeterminate=!1,l.value=j.raw[i.value]}function I(j){const P=j.raw;P.__fv_checked__=!1,P.__fv_indeterminate__=!1,f.value=f.value.filter(E=>E!==P[i.value]),j.checked=!1,j.indeterminate=!1,l.value=""}function T(j){const P=j.raw;P.__fv_checked__=!1,P.__fv_indeterminate__=!0,f.value=f.value.filter(E=>E!==P[i.value]),j.checked=!1,j.indeterminate=!0}function M(j){m.value&&v(),j.checked?I(j):F(j),N()}function k(j){j.raw[i.value]!==l.value&&(v(),F(j),N())}function B(j){const P=r.value.find(E=>E.raw[i.value]===j);P&&k(P)}function $(){r.value.forEach(j=>F(j)),l.value="",N()}function O(){f.value.splice(0,f.value.length),l.value="",r.value.forEach(j=>{const P=j.raw;P.__fv_checked__=!1,P.__fv_indeterminate__=!1,j.checked=!1,j.indeterminate=!1}),N()}function D(){return r.value.find(j=>j.raw[i.value]===l.value)}return{clearSelection:v,currentSelectedDataId:l,enableMultiSelect:c,enableSelectRow:s,findIndexInSelectedItems:g,getSelectedItems:x,getSelectionRow:D,indeterminate:T,isSelectingHirarchyItem:w,multiSelectMode:d,multiSelectOnClickRow:h,multiSelectOnClickRowWithShift:y,multiSelectOnlyOnCheck:C,select:F,selectAll:$,selectedValues:f,selectItem:k,selectItemById:B,showCheckBox:p,showSelectAll:u,toggleSelectItem:M,unSelect:I,unSelectAll:O}}function Hn(e,n){var w,C;const o=String(Date.now()),r=50,{showCheckBox:a,showSelectAll:i}=n,l=t.ref(((w=e.rowNumber)==null?void 0:w.enable)??!1),s=t.computed(()=>e.hierarchy&&a.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:a.value),c=t.ref(l.value?((C=e.rowNumber)==null?void 0:C.width)??32:0),d=t.ref(s.value?r:0),p=t.computed(()=>{var y;return l.value?((y=e.rowNumber)==null?void 0:y.heading)??"序号":""}),u=t.computed(()=>(s.value&&!e.hierarchy?Number(d.value):0)+(l.value?Number(c.value):0));t.watch(()=>e.rowNumber,y=>{y&&y.enable!==void 0&&(l.value=y.enable),y&&y.width!==void 0&&(c.value=y.width)});function f(y){return{top:`${y.top}px`,width:`${u.value}px`,height:`${y.height||""}px`}}const x=t.computed(()=>({width:`${u.value}px`}));function b(y){return`${o}_${y.type}_r_${y.index}_${y.refreshKey||""}`}function S(y){return`${o}_${y.type}_r_${y.index}_${y.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:f,sidebarCornerCellStyle:x,sidebarTitle:p,sidebarWidth:u,rowKey:S,cellKey:b}}const Fa={ascend:(e,n)=>e===n?0:e===!1?-1:1,decend:(e,n)=>e===n?0:e===!0?-1:1},Ta={ascend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),r=new Date(new Date(n).toLocaleDateString()).valueOf();return o===r?0:o<r?-1:1},decend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),r=new Date(new Date(n).toLocaleDateString()).valueOf();return o===r?0:o<r?1:-1}},Ma={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1},Ia={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1};function An(e){const n=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),o=new Map([["boolean-sorter",Fa],["datetime-sorter",Ta],["numeric-sorter",Ma],["text-sorter",Ia]]);function r(l){const s=(l==null?void 0:l.dataType)||"string",c=n.get(s)||"text-sorter";return o.get(c)||(l==null?void 0:l.sorter)}function a(l){return r(l.column)}function i(l,s){const c=a(l),d=(l.status&je.sortable)===je.sortable&&(l.status&je.sorted)===je.sorted,p=(l.status&je.ascending)===je.ascending,u=(l.status&je.descending)===je.descending;if(d&&c){const f=p?c.ascend:u?c.decend:void 0;f?s.addSorter(l.field,{field:l.field,compare:f}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:r,updateSorter:i}}function Ba(e){function n(r){return{}}function o(r,a){const i=e.value.primaryColumnsMap.get(r.field)||e.value.leftColumnsMap.get(r.field)||e.value.rightColumnsMap.get(r.field)||{valign:"middle",align:"center"},{valign:l,align:s}=i;return{"d-flex":!0,"h-100":!0,"w-100":a==null?void 0:a.showEllipsis,"justify-content-start":s!=="center"&&s!=="right","justify-content-center":s==="center","justify-content-right":s==="right","align-items-start":l!=="middle"&&l!=="bottom","align-items-center":l==="middle","align-items-end":l==="bottom"}}return{cellContentPosition:n,cellContentClass:o}}function Je(e){return typeof e>"u"}function Gn(e){var u,f,x,b,S,w,C,y;const n=t.ref((u=e.pagination)==null?void 0:u.enable),o=t.ref(((f=e.pagination)==null?void 0:f.index)||1),r=t.ref((x=e.pagination)==null?void 0:x.size),a=t.ref((b=e.pagination)==null?void 0:b.sizeLimits),i=t.ref((S=e.pagination)==null?void 0:S.mode),l=t.ref((w=e.pagination)==null?void 0:w.showIndex),s=t.ref((C=e.pagination)==null?void 0:C.showLimits),c=t.ref(((y=e.pagination)==null?void 0:y.total)||0),d=t.computed(()=>i.value==="server"?c.value||0:c.value||e.data.length||0);return t.watch(()=>{var h;return(h=e.pagination)==null?void 0:h.sizeLimits},(h,N)=>{a.value=h},{immediate:!0,deep:!0}),t.watch(()=>{var h;return(h=e.pagination)==null?void 0:h.showIndex},(h,N)=>{h!==N&&(l.value=h)}),t.watch(()=>{var h;return(h=e.pagination)==null?void 0:h.showLimits},(h,N)=>{h!==N&&(s.value=h)}),t.watch(()=>{var h;return(h=e.pagination)==null?void 0:h.total},(h,N)=>{h!==N&&(c.value=h)}),t.watch(()=>{var h;return(h=e.pagination)==null?void 0:h.enable},(h,N)=>{h!==N&&(n.value=h)}),{currentPage:o,pageSize:r,pageList:a,total:d,shouldRenderPagination:n,showPageIndex:l,showPageList:s,mode:i,updatePagination:h=>{if(!h)return;const{enable:N,total:_,size:m,index:V,sizeLimits:g,showIndex:v,showLimits:F}=h;Je(N)||(n.value=N),Je(V)||(o.value=V),Je(m)||(r.value=m),Je(g)||(a.value=g),Je(v)||(l.value=v),Je(F)||(s.value=F),Je(_)||(c.value=_)}}}function Oa(e){const n="parent",o="layer",r="hasChildren",a=(i,l=1,s=[],c=null)=>(i=i||[],i.reduce((d,p)=>(p.id=p.id||p.data[e.idField],p.data[n]=c,p.data[o]=l,p.data[r]=!1,d.push(p.data),p.children&&p.children.length&&(p.data[r]=!0,a(p.children,l+1,s,p.id)),d),s),s);return{flatTreeData:a}}function Ln(e,n,o,r,a,i,l,s,c,d,p,u,f,x,b){const{calculateCellPositionInRow:S,cellKey:w,cellPosition:C,rowKey:y,rowPosition:h,rowSpanCellPosition:N,groupCellPosition:_,summaryCellPosition:m}=l,{cellContentClass:V,cellContentPosition:g}=i,{collpaseGroupIconClass:v}=d,{gridCellClass:F,gridRowClass:I,onClickRow:T,onMouseoverRow:M,onMouseoutRow:k}=u,{onClickCell:B}=c,{toggleGroupRow:$}=f,{columnContext:O,hasLeftFixedColumn:D,hasRightFixedColumn:j}=s,{navigateOnKeyUp:P}=p,{gridDataStyle:E,gridMergedDataStyle:re,leftFixedGridDataStyle:se,leftFixedGridMergedDataStyle:ve,rightFixedGridDataStyle:ke,rightFixedGridMergedDataStyle:Se}=x;function he(H,de){de.collapse=!de.collapse,b.value=$(de.collapse?"collapse":"expand",de,b.value)}function Ce(H,de){const me=[];if(H.groupField&&de[H.groupField]){for(let ye=0;ye<=H.layer;ye++)me.push(t.createVNode("div",{class:"fv-grid-group-row-icon",onClick:Me=>he(Me,H)},[t.createVNode("span",{class:v(H)},null)]));const q=H.data[H.groupField];me.push(t.createVNode("div",{ref:q.setRef,key:w(H,H.layer+1),class:"fv-grid-cell",style:_(q,de,H.layer)},[q.data])),Object.values(H.data).filter(ye=>ye.field!==H.groupField&&ye.colSpan!==0).forEach(ye=>{me.push(t.createVNode("div",{ref:ye.setRef,key:w(H,ye.index),class:"fv-grid-cell",style:C(ye,de)},[ye.data]))})}return me}function _e(H,de,me){return H.layer>-1&&t.createVNode("div",{ref:H.setRef,key:y(H),class:I(H),style:h(H),onClick:q=>T(q,H),onMouseover:q=>M(q,H)},[Ce(H,de)])}function ae(H,de){const me=[];if(H.groupField&&de[H.groupField]){const q=H.data[H.groupField];me.push(t.createVNode("div",{ref:q.setRef,key:w(H,H.layer+1),class:"fv-grid-cell",style:m(q,de,H.layer)},[q.data]))}return me}function ue(H,de,me){return H.layer>-1&&t.createVNode("div",{ref:H.setRef,key:y(H),class:I(H),style:h(H),onClick:q=>T(q,H),onMouseover:q=>M(q,H)},[ae(H,de)])}function W(H,de,me){return t.createVNode("div",{ref:H.setRef,key:y(H),class:I(H),style:h(H),onClick:q=>T(q,H),onMouseover:q=>M(q,H),onMouseout:q=>k(q,H)},[Object.values(H.data).filter(q=>de[q.field]&&q.rowSpan===1).map(q=>{const ye=me==null?void 0:me.find(Me=>Me.field===q.field);return t.createVNode("div",{ref:q.setRef,key:w(H,q.index),class:F(q),style:C(q,de),onClick:Me=>B(Me,q,H,ye),onKeyup:Me=>P(Me,q)},[t.createVNode("div",{class:V(q,ye),style:g(q)},[t.createVNode("div",{class:{"text-truncate":ye==null?void 0:ye.showEllipsis,"w-100":ye==null?void 0:ye.showEllipsis,"text-center":!0}},[q.data!=null&&n.slots.cellTemplate?n.slots.cellTemplate({cell:q,row:H}):q.mode===Be.editing?q.getEditor(q):q.formatter?q.formatter(q,H):q.data!=null?q.data.toString():q.data])])])})])}const U=[W,_e,ue];function ce(H,de){const me=S(H);return b.value.map(q=>U[q.type](q,me,H))}function ee(H){const de=S(H);return b.value.map(me=>Object.values(me.data).filter(q=>de[q.field]&&q.rowSpan>1).map(q=>t.createVNode("div",{key:w(me,q.index),class:"fv-grid-cell fv-grid-merged-cell",style:N(me,q,de)},[q.data])))}function ge(){return t.createVNode("div",{ref:r,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:se.value},[ce(O.value.leftColumns.filter(H=>H.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:ve.value},[ee(O.value.leftColumns.filter(H=>H.visible))])])}function R(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:E.value},[ce(O.value.primaryColumns.filter(H=>H.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:re.value},[ee(O.value.primaryColumns.filter(H=>H.visible))])])}function K(){return t.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:ke.value},[ce(O.value.rightColumns.filter(H=>H.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:Se.value},[ee(O.value.rightColumns.filter(H=>H.visible))])])}function pe(){const H=[];return D.value&&H.push(ge()),H.push(R()),j.value&&H.push(K()),H}return{renderDataArea:pe}}const Qe=t.defineComponent({name:"FDataGrid",props:_t,emits:["ClickRow","doubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged","endEditCell"],setup(e,n){var ao;const a=t.ref(e.columns),i=A.useIdentify(e),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref(),p=t.ref(),u=t.ref([]),f=t.ref(!1),x=t.ref(((ao=e.rowOption)==null?void 0:ao.wrapContent)||!1),b=A.useGroupData(e,i),S=A.useFilter(),w=A.useHierarchy(e),{showLoading:C,renderLoading:y}=A.useLoading(e,l),h=A.usePagination(e),{shouldRenderPagination:N}=h,_=A.useDataView(e,new Map,w,i,h),m=A.useSelection(e,_,i,u,n),V=t.computed(()=>e.disable),g=t.computed(()=>N.value?_.dataView.value.length:Math.min(_.totalItems.value,100));t.computed(()=>e.loadingConfig.message);const{containerStyleObject:v}=A.useDataViewContainerStyle(e),F=A.useCommandColumn(e),{applyCommands:I}=F;I(a);const T=A.useColumn(e),M=A.useSort(e),{applyColumnSorter:k,columnContext:B,updateColumnRenderContext:$}=T;k(_,M);const O=A.useGroupColumn(e,B),D=A.useEdit(e,n,i),j=A.useVisualDataBound(),P=A.useVisualDataCell(e,D,j),E=A.useVisualDataRow(e,D,w,i,j,P),re=A.useVisualGroupRow(e,i,P,E),se=A.useVisualSummaryRow(e,i,P,E),ve=A.useVisualData(e,a,_,g,0,E,re,se),{getVisualData:ke}=ve,Se=A.useCellContentStyle(B),he=A.useCellPosition(e,B),Ce=A.useSidebar(e,m),{sidebarWidth:_e}=Ce;u.value=ke(0,g.value+0-1);const ae=A.useVirtualScroll(e,_,u,B,ve,g,0,_e),{onWheel:ue,dataGridWidth:W,viewPortHeight:U,viewPortWidth:ce,resetScroll:ee}=ae,ge=A.useFitColumn(e,B,s,ce,O),{calculateColumnsSize:R}=ge,K=A.useFilterHistory(),pe=A.useColumnFilter(s,p,_,K,ae),H=A.useRow(e,n,m,i),de=A.useDragColumn(e,n,T,_,O,b,ae),me=t.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":e.showStripe})),q=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":x.value})),{renderGridHeader:ye,renderGridColumnResizeOverlay:Me}=A.getColumnHeader(e,s,d,p,T,_,de,pe,S,K,ge,O,m,Ce,M,ae,ce,u),{renderDataGridPagination:J}=A.getPagination(e,n,_,ae,h),{renderDataGridSidebar:oe}=A.getSidebar(e,H,m,Ce,ae),{renderDisableMask:fe}=A.getDisableMask(),{renderDataGridSummery:Ve}=A.getSummary(e,_,T),{renderHorizontalScrollbar:Te}=A.getHorizontalScrollbar(e,s,ae),{renderVerticalScrollbar:$e}=A.getVerticalScrollbar(e,s,ae),{renderFilterPanel:Ge}=A.getFilterPanel(e,T,_,S,ae),{renderGroupPanel:Le}=A.getGroupPanel(e,_,de,b,ae);function Ze(){var xe,yt;U.value=((xe=c.value)==null?void 0:xe.clientHeight)||0,W.value=((yt=s.value)==null?void 0:yt.clientWidth)||0,R()}t.onMounted(()=>{s.value&&(dt.useResizeObserver(s.value,Ze),R(),t.nextTick(()=>{s.value&&(W.value=s.value.clientWidth),c.value&&(ce.value=c.value.clientWidth,U.value=c.value.clientHeight)})),C.value&&y()}),t.onUnmounted(()=>{}),t.watch(ce,()=>{});function et(){_.insertNewDataItem(),ee()}function tt(){_.insertNewDataItem(u.value.length),ee()}function Ue(xe){D.onEditingRow(xe)}function G(xe){_.removeDataItem(xe),ee()}function ne(xe){_.removeDataItemById(xe),ee()}function le(xe){D.acceptEditingRow(xe)}function Ne(xe){D.cancelEditingRow(xe)}function ie(xe){xe&&(a.value=xe,I(a),$(a.value),k(_,M),R())}function Fe(xe){xe&&(_.load(xe),u.value=ke(0,g.value+0-1))}function Pe(xe){h.updatePagination(xe)}t.watch([_.startIndex,_.endIndex],([xe,yt],[gs,hs])=>{var lo,so;xe!==gs&&Fe((lo=_.originalData)==null?void 0:lo.value),yt!==hs&&Fe((so=_.originalData)==null?void 0:so.value)}),t.watch(()=>e.data,xe=>{e.changePolicy==="default"&&Fe(xe)},{deep:!0});function be(xe){m.selectItemById(xe)}const De={addNewDataItem:et,addNewDataItemAtLast:tt,removeDataItem:G,removeDataItemById:ne,editDataItem:Ue,acceptDataItem:le,cancelDataItem:Ne,selectItemById:be,updateColumns:ie,updateDataSource:Fe,updatePagination:Pe};n.expose(De);const Ee=A.useNavigation(e,n,De,T,D,u),{renderDataArea:we}=Ln(e,n,c,d,p,Se,he,T,D,b,Ee,H,ve,ae,u),Ke=t.computed(()=>!u.value||!u.value.length),{renderEmpty:it}=A.getEmpty(n);return()=>t.createVNode("div",{ref:l,class:me.value,style:v.value,onWheel:ue},[Ge(),Le(),ye(),Ke.value&&it(),t.createVNode("div",{ref:s,class:q.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[oe(u),we(),Te(),$e()]),Ve(),N.value&&J(),Me(),V.value&&fe()])}}),$a={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{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"],ignore:["id","appearance","binding"]},ja=new Map([["appearance",qe]]);function Da(e,n,o){return n}const Wn={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}};Oe(Wn,$a,ja,Da);const Pa=t.defineComponent({name:"FCheckBox",props:Wn,emits:["change","changeValue","update:modelValue","update:checked"],setup(e,n){const o=t.inject(ze.CHECKBOX_CONTEXT,null),{buttonClass:r,disabled:a,name:i,shouldRenderButton:l,shouldRenderNative:s,shouldRenderTag:c,tagClass:d,checked:p,onClickCheckBox:u}=ze.useCheck(e,n,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);t.ref();const f=t.ref(e.id),x=t.ref(e.customClass),b=t.ref(e.modelValue),S=t.ref(e.indeterminate);return t.computed(()=>{const w={"custom-control":!0,"custom-checkbox":!0};return x.value&&x.value.split(" ").reduce((C,y)=>(C[y]=!0,C),w),w}),t.watch(()=>e.modelValue,w=>{b.value=w}),t.watch(()=>e.indeterminate,w=>{S.value=w}),t.onMounted(()=>{}),()=>{var w,C,y,h,N,_;return t.createVNode(t.Fragment,null,[l.value&&t.createVNode("div",{class:r.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:u},[(C=(w=n.slots).default)==null?void 0:C.call(w)]),c.value&&t.createVNode("div",{class:d.value,onClick:u},[t.createVNode("div",{class:"title"},[(h=(y=n.slots).default)==null?void 0:h.call(y)]),t.createVNode("div",{class:"tip"},null),t.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),s.value&&t.createVNode("div",{class:"custom-control custom-checkbox",onClick:u},[t.createVNode("input",{type:"checkbox",class:"custom-control-input",name:i.value,id:f,value:e.value,checked:p.value,disabled:a.value},null),t.createVNode("div",{class:"custom-control-label"},[(_=(N=n.slots).default)==null?void 0:_.call(N)])])])}}}),Ea={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}},Ra={id:{type:String}},Ha=t.defineComponent({name:"FDesignerPlaceholder",props:Ra,emits:[],setup(e){const n=t.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=t.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>t.createVNode("div",{class:n.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[t.createTextVNode("拖拽组件到这里")])}});function Aa(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const $t=t.defineComponent({name:"FDesignerItem",props:Ea,emits:["selectionChange"],setup(e,n){const o=t.ref(`${e.modelValue.id}-component`),r=t.ref(e.canMove),a=t.ref(e.canDelete),i=t.ref(!1),l=t.ref(e.modelValue),s=t.ref(e.componentId||""),c=t.ref(""),d=t.ref(""),p=t.ref(e.customClass),u=t.ref(),f=t.inject("canvas-dragula"),x=t.ref(),b=t.inject("design-item-context"),S={designerItemElementRef:u,componentInstance:x,schema:l.value,parent:b,setupContext:n};t.provide("design-item-context",S);const w=t.inject("useFormSchema"),C=t.computed(()=>{const k=e.modelValue.appearance&&e.modelValue.appearance.class||"";let B={"farris-component":!0,"flex-fill":l.value.id=="root-component","position-relative":r.value&&a.value,"farris-nested":i.value,"can-move":r.value,"d-none":u.value&&u.value.classList.contains("d-none"),dgComponentSelected:u.value&&u.value.classList.contains("dgComponentSelected"),dgComponentFocused:u.value&&u.value.classList.contains("dgComponentFocused")};return B[`farris-component-${l.value.type}`]=!0,B=ze.getCustomClass(B,k),B=ze.getCustomClass(B,d.value),B=ze.getCustomClass(B,p.value),B}),y=t.computed(()=>{const k={},B=e.modelValue.appearance&&e.modelValue.appearance.style||"";return B&&B.split(";").reduce(($,O)=>{const[D,j]=O.split(":");return $[D]=j,$},k),c.value&&c.value.split(";").reduce(($,O)=>{const[D,j]=O.split(":");return D&&($[D]=j),$},k),k});function h(k,B){var D,j,P;if(k&&(k.preventDefault(),k.stopPropagation()),x.value.triggerBelongedComponentToDeleteWhenDeleted){const E=x.value.getBelongedComponentInstance(x);if(E&&E.parent){const re=t.ref(E==null?void 0:E.parent),se=re.value.contents.findIndex(ve=>ve.id===E.schema.id);(j=(D=re.value)==null?void 0:D.contents)==null||j.splice(se,1),(P=re.value)==null||P.updateDragAndDropRules(),ft.value++}return}let $=b,O=E=>E.id===B.id;if(B.type==="component"&&($=b==null?void 0:b.parent,O=E=>E.component===B.id),$&&$.schema.contents){const E=$.schema.contents.findIndex(O);$.schema.contents.splice(E,1),$.componentInstance.value.updateDragAndDropRules(),ft.value++,n.emit("selectionChange")}}function N(k){return a.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:B=>{h(B,k)}},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function _(){return r.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function m(){return e.customButtons&&!!e.customButtons.length&&e.customButtons.map(k=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${k.class||""}`,title:k.title,ref:k.id},[t.createVNode("i",{class:k.icon},null)]))}function V(k){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[N(k),_(),m()])])}function g(k,B,$,O){n.emit("selectionChange",k,B,$,O)}function v(k){let B;const $=k.type,O=Zi[$],D=ea[$],j=D?D(k):{};j.customClass=e.ignore?j.customClass:"",j.componentId=s.value;const P=k.contents&&k.contents.length===0;return k.contents&&!!k.contents.length&&O?t.createVNode(O,t.mergeProps({ref:x},j),Aa(B=k.contents.map(re=>t.createVNode($t,{key:re.id,modelValue:re,"onUpdate:modelValue":se=>re=se,componentId:s.value,onSelectionChange:g},null)))?B:{default:()=>[B]}):O?P?t.createVNode(O,t.mergeProps({ref:x},j),{default:()=>[t.createVNode(Ha,null,null)]}):t.createVNode(O,t.mergeProps({ref:x},j),null):t.createVNode("div",null,null)}function F(k){if(k.type==="component-ref"){let $=w==null?void 0:w.getFormSchema().module.components.find(O=>O.id===k.component);if($)return t.createVNode($t,{key:$.id,modelValue:$,"onUpdate:modelValue":O=>$=O,componentId:$.id,onSelectionChange:g},null)}}t.watch(()=>e.modelValue,k=>{l.value=k,o.value=`${k.id}-component`});function I(k){const B=k.target;na(B)}function T(){var k,B;(B=(k=l.value)==null?void 0:k.contents)!=null&&B.length&&u.value&&u.value.addEventListener("scroll",I)}t.onMounted(()=>{if(u.value&&x.value&&x.value.schema){const k=u.value.querySelector(`[data-dragref='${x.value.schema.id}-container']`);f&&k&&f.attachComponents(k,l.value),i.value=x.value.canNested!==void 0?x.value.canNested:i.value,a.value=x.value.canDelete!==void 0?x.value.canDelete:a.value,r.value=x.value.canMove!==void 0?x.value.canMove:r.value,c.value=x.value.styles||"",d.value=x.value.designerClass||"",u.value&&(u.value.componentInstance=x,u.value.designItemContext=S)}T(),ft.value++}),t.onBeforeUnmount(()=>{u.value&&u.value.removeEventListener("scroll",I)});function M(k){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach($=>$.classList.remove("dgComponentFocused")),k&&(k.preventDefault(),k.stopPropagation());const B=u.value;if(B){const $=document.getElementsByClassName("dgComponentSelected");if(!($&&$.length===1&&$[0]===u.value)&&(Array.from($).forEach(D=>D.classList.remove("dgComponentSelected")),B.classList.add("dgComponentFocused"),n.emit("selectionChange",l.value.type,l.value,s.value,x.value),x.value.getDraggableDesignItemElement)){const D=x.value.getDraggableDesignItemElement(S);D&&D.value&&D.value.classList.add("dgComponentSelected")}}I(k)}return()=>l.value.type==="component-ref"?F(l.value):t.createVNode("div",{id:`${l.value.id}-design-item`,ref:u,class:C.value,style:y.value,onClick:M},[V(l.value),v(l.value)])}});function zn(e,n,o,r,a,i,l,s,c,d,p,u,f,x,b,S,w,C,y,h="data-grid-column"){const{showSelectAll:N,selectAll:_,unSelectAll:m,selectedValues:V}=x,{showRowNumer:g,showSidebarCheckBox:v,sidebarTitle:F,sidebarCornerCellStyle:I}=b,{columnContext:T,hasLeftFixedColumn:M,hasRightFixedColumn:k}=i,{gridHeaderColumnsStyle:B,leftFixedGridHeaderColumnsStyle:$,rightFixedGridHeaderColumnsStyle:O}=w,D=t.computed(()=>N.value||v.value||g.value),j=T.value.defaultColumnWidth,P=32,E=new Map([[0,0]]);function re(ee,ge){const R=E.get(ge)||0,K={height:`${ee.depth*P}px`,left:`${ee.left}px`,top:`${(ee.layer-1)*P}px`,width:`${ee.actualWidth}px`,padding:0};return T.value.headerDepth>1&&(K["line-height"]=`${ee.depth*P}px`),E.set(ge+1,R+(ee.actualWidth||j)),K}const se=t.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":T.value.headerDepth>1})),ve=t.computed(()=>({height:`${T.value.headerDepth*P}px`}));function ke(ee,ge,R,K){var pe;(pe=e==null?void 0:e.setupContext)==null||pe.emit("selectionChange",ee,ge,R,K)}function Se(ee,ge,R){let K=ee.column;return t.createVNode("div",{class:"fv-grid-header-cell",style:re(ee,R)},[t.createVNode($t,{modelValue:K,"onUpdate:modelValue":pe=>K=pe,customClass:"w-100 d-flex align-items-center justify-content-center",canAdd:!1,canDelete:!1,canMove:!1,key:K==null?void 0:K.id,type:h,componentId:n.componentId,onSelectionChange:ke},null)])}function he(ee){return ee.map((ge,R)=>{const K=[];if(K.push(Se(ge,ee,R)),ge.children&&ge.children.length){const pe=he(ge.children);K.push(...pe)}return K})}function Ce(){return t.createVNode("div",{class:"fv-grid-header-left-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:$.value},[he(T.value.leftHeaderColumns)])])}function _e(){return t.createVNode("div",{class:"fv-grid-header-right-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:O.value},[he(T.value.rightHeaderColumns)])])}const ae=t.ref(y.value.length===V.value.length);function ue(ee){ae.value?_():m()}const W=t.computed(()=>V.value.length>0&&y.value.length!==V.value.length);function U(){return t.createVNode("div",{class:"fv-grid-header-corner d-flex",style:I.value},[N.value&&t.createVNode(Pa,{id:"checkbox_for_select_all",indeterminate:W.value,modelValue:ae.value,"onUpdate:modelValue":ee=>ae.value=ee,onChange:ue,style:"margin-left:8px"},null),g.value&&t.createVNode("div",{style:"line-height:18px"},[F.value])])}function ce(){return t.createVNode("div",{class:se.value,style:ve.value},[D.value&&U(),M.value&&Ce(),t.createVNode("div",{class:"fv-grid-header-primary"},[t.createVNode("div",{class:"fv-grid-header-columns",style:B.value},[he(T.value.primaryHeaderColumns)])]),k.value&&_e()])}return{renderGridHeader:ce}}function qn(e,n){var d;const o=t.ref((d=e.columnOption)==null?void 0:d.groups);function r(p,u,f,x,b){const S={actualWidth:0,children:[],depth:1,field:p.field,layer:1,left:0,parent:f,resizable:!1,title:p.title||"",status:A.HeaderCellStatus.none,popoverRef:t.ref(),showPopover:!1,column:null,filterValue:null,sortType:"none"},w=x||S;if(p.group){let C=1;p.group.reduce((y,h)=>{if(typeof h=="string"){const N=u.get(h);N&&(b.fieldToRootMap.set(h,w),y.actualWidth+=N.actualWidth,y.children.push(N))}else{const N=r(h,u,y,w,b);C=Math.max(C,N.depth),y.actualWidth+=N.actualWidth,y.children.push(N)}return y},S),S.depth+=C}return n.value.headerDepth=Math.max(n.value.headerDepth,S.depth),S}function a(p){const u={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((f,x)=>{const b=r(x,p,null,null,u);return f.groupedCells.set(x.field,b),f},u),u}function i(p){if(!p||p.length===0)return 0;const u=p[0];return u.children&&u.children.length>0&&(u.left=i(u.children)),u.left}function l(p,u){const f=n.value.headerDepth;p.forEach(x=>{x.layer=u?u.layer+1:1;const b=x.children&&x.children.length===0;x.depth=b?f-(x.layer-1):1,x.left=b?x.left:i(x.children),x.children&&l(x.children,x)})}function s(p,u){const f=new Map;return p.forEach(x=>{const b=u.fieldToRootMap.get(x.field),S=b!=null;S&&!f.has(b.field)&&f.set(b.field,b),S||f.set(x.field,x)}),l(Array.from(f.values())),f}function c(p){let u=new Map,f=0;if(p.reduce((x,b)=>{let S=A.HeaderCellStatus.none;S=b.sortable?S|A.HeaderCellStatus.sortable:S,S=b.filterable?S|A.HeaderCellStatus.filterable:S,S=b.sort&&b.sort!=="none"?S|A.HeaderCellStatus.sorted|(b.sort==="asc"?A.HeaderCellStatus.ascending:A.HeaderCellStatus.descending):S;let w=b.binding&&b.binding.field?b.binding.field:b.field;return x.set(w,{actualWidth:b.actualWidth||0,children:[],depth:1,layer:1,left:f,field:w,parent:null,resizable:b.resizable||!1,title:b.title,status:S,popoverRef:t.ref(),showPopover:!1,column:b,filterValue:null,sortType:b.sort||"none",showSetting:b.showSetting}),f+=b.actualWidth||0,x},u),o.value){const x=a(u);u=s(u,x)}return u}return{getGridHeaderCells:c}}class Ga extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getEventPropConfig(n),this.propertyConfig}getBasicPropConfig(n){var i,l,s;const o=(s=(l=(i=this.formSchemaUtils.getFormSchema())==null?void 0:i.module)==null?void 0:l.entity[0])==null?void 0:s.entities[0],r=this.assembleSchemaEntityToTree(o,0),a=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"data-grid",value:te["data-grid"].name}]}},dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:r,readonly:n.columns&&n.columns.length>0,editable:!1}}},setPropertyRelates(c,d){switch(c&&c.propertyID){case"dataSource":{const p=a.formSchemaUtils.getViewModelById(a.viewModelId);if(p){const u=r.find(f=>f.label===c.propertyValue);p.bindTo=u.bindTo}a.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(n,o,r,a="",i=[]){const l=a?`${a}/${n.label}`:"/";return i.push({id:n.id,name:n.name,label:n.label,layer:o,parent:r&&r.id,bindTo:l.replace("//","/")}),n.type.entities&&n.type.entities.length&&n.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,n,l,i)),i}getAppearanceProperties(n){var o,r,a;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:n,getLatestGridData:i=>n},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(i,l){switch(i&&i.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"columns":n.columns=i.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=n.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"client",value:"客户端"},{key:"server",value:"服务器端"}]}},showIndex:{visible:((r=n.pagination)==null?void 0:r.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=n.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"clickRow",name:"行点击事件"},{label:"selectionChange",name:"行切换事件"},{label:"pageIndexChanged",name:"切换页码事件"},{label:"pageSizeChanged",name:"分页条数变化事件"}];var r=this;const a=r.eventsEditorUtils.formProperties(n,r.viewModelId,o),i={};i[r.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:i,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const c=l.propertyValue;delete n[r.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(n,r.viewModelId,c.events,c)),n.remoteSort=!!n.columnSorted}}}}function La(e,n){const o=e.schema,r=t.ref(!0),a=t.ref(!0);function i(f){return f&&f.sourceType==="control"?f.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function c(){return!0}function d(f){}function p(){}function u(f){return new Ga(f,n).getPropertyConfig(o)}return{canAccepts:i,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:r,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:u}}const jt=t.defineComponent({name:"FDataGridDesign",props:qr,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,n){var Ee;const o=t.ref(),r=t.inject("designer-host-service"),a=t.inject("design-item-context"),i=La(a,r),l=Tt(o,a,i);l.value.styles="display:flex;flex:1;",t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value);const s=t.ref(e.columns),c=20,d=Pn(e),p=0,u=t.ref(),f=t.ref(),x=t.ref(),b=t.ref(),S=t.ref(e.showStripe),w=t.ref([]),C=t.ref(!1),y=t.ref(((Ee=e.rowOption)==null?void 0:Ee.wrapContent)||!1),h=Bt(e,d),N=It(),_=In(e),m=Gn(e),V=Tn(e,new Map,_,d,m),g=Rn(e,V,d,w,n),v=t.computed(()=>e.disable),F=t.computed(()=>V.totalItems.value<c?V.totalItems.value:c),{containerStyleObject:I}=cn(e),T=fn(e),{applyCommands:M}=T;M(s);const k=dn(e),B=An(),{applyColumnSorter:$,columnContext:O,updateColumnRenderContext:D}=k;$(V,B);const j=qn(e,O),P=Dn(e,d),E=kt(),re=$n(e,P,E),se=jn(e,P,_,d,E,re),ve=Va(e,d,re,se),ke=Na(e,d,re,se),Se=On(e,s,V,F,p,se,ve,ke),{getVisualData:he}=Se,Ce=Ba(O),_e=Nt(e,O),ae=Hn(e,g),{sidebarWidth:ue}=ae;w.value=he(0,F.value+p-1);const W=Bn(e,V,w,O,Se,F,p,ue),{onWheel:U,dataGridWidth:ce,viewPortHeight:ee,viewPortWidth:ge,resetScroll:R}=W,K=mn(e,O,u,ge,j),{calculateColumnsSize:pe}=K,H=Mn(),de=un(u,b,V,H,W),me=En(e,n,g,d),q=pn(e,n,k,V,j,h,W),ye=t.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":S.value})),Me=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":C.value,"fv-grid-wrap-content":y.value})),{renderGridHeader:J}=zn(a,e,u,x,b,k,V,q,de,N,H,K,j,g,ae,B,W,ge,w);ti(e,n,V,W,m);const{renderDataGridSidebar:oe}=ln(e,me,g,ae,W),{renderDisableMask:fe}=Kr(),{renderDataGridSummery:Ve}=ni(e,V,k),{renderHorizontalScrollbar:Te}=an(e,u,W),{renderVerticalScrollbar:$e}=sn(e,u,W),{renderFilterPanel:Ge}=Xr(e,k,V,N,W),{renderGroupPanel:Le}=Yr(e,V,q,h,W);function Ze(){var we,Ke;ee.value=((we=f.value)==null?void 0:we.clientHeight)||0,ce.value=((Ke=u.value)==null?void 0:Ke.clientWidth)||0,pe()}t.onMounted(()=>{u.value&&(dt.useResizeObserver(u.value,Ze),pe(),t.nextTick(()=>{u.value&&(ce.value=u.value.clientWidth),f.value&&(ge.value=f.value.clientWidth,ee.value=f.value.clientHeight)}))}),t.onUnmounted(()=>{}),t.watch(ge,()=>{u.value&&pe()}),t.watch(()=>e.columns,we=>{ie(we)});function et(){V.insertNewDataItem(),R()}function tt(){V.insertNewDataItem(w.value.length),R()}function Ue(we){P.onEditingRow(we)}function G(we){V.removeDataItem(we),R()}function ne(we){V.removeDataItemById(we),R()}function le(we){P.acceptEditingRow(we)}function Ne(we){P.cancelEditingRow(we)}function ie(we){we&&(s.value=we,M(s),D(s.value),$(V,B),pe())}function Fe(we){we&&(V.load(we),w.value=he(0,F.value+p-1))}const be=ka(e,n,{addNewDataItem:et,addNewDataItemAtLast:tt,removeDataItem:G,removeDataItemById:ne,editDataItem:Ue,acceptDataItem:le,cancelDataItem:Ne,updateColumns:ie,updateDataSource:Fe},k,P,w),{renderDataArea:De}=Ln(e,n,f,x,b,Ce,_e,k,P,h,be,me,Se,W,w);return()=>t.createVNode("div",{ref:o,class:ye.value,style:I.value,onWheel:U},[Ge(),Le(),J(),t.createVNode("div",{ref:u,class:Me.value,onMouseover:()=>{C.value=!0},onMouseleave:()=>{C.value=!1}},[oe(w),De(),Te(),$e()]),Ve(),v.value&&fe()])}}),Wa={$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"]},Un={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},za=Oe(Un,Wa,Qt,tn),qa=new Map([["appearance",qe]]);function Ua(e,n,o){return n}const Ka={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:[]}}}}}},Xa={$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"]},Kn={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:[]}};Oe(Kn,Xa,qa,Ua,Ka);const Ya=new Map([["appearance",qe]]);function Ja(e,n,o){return n}const Qa={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Za={title:"list-view",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Xn={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{Type:Boolean,default:!1},multiSelectMode:{Type:String,default:"OnCheck"},idField:{Type:String,default:"id"},valueField:{Type:String,default:"id"},textField:{Type:String,default:"name"},titleField:{Type:String,default:"name"},view:{Type:String,default:"ContentView"},size:{Type:String,default:"default"},placeholder:{type:String,default:""},header:{Type:String,default:"ContentHeader"},headerClass:{Type:String,default:""},itemClass:{Type:String,default:""},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}};Oe(Xn,Qa,Ya,Ja,Za);function el(e,n){function o(i){const l=[];let s=i.nextNode();for(;s;)l.push(s),s=i.nextNode();return l}function r(i,l){const s=document.createTreeWalker(i,NodeFilter.SHOW_TEXT);return o(s).map(u=>({textNode:u,text:(u.textContent||"").toLocaleLowerCase()})).map(({textNode:u,text:f})=>{const x=[];let b=0;for(;b<f.length;){const S=f.indexOf(l,b);if(S===-1)break;x.push(S),b=S+l.length}return x.map(S=>{const w=new Range;return w.setStart(u,S),w.setEnd(u,S+l.length),w})}).flat()}function a(i){if(!CSS.highlights||(CSS.highlights.clear(),!i||!n))return;const l=r(n.value,i.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:a}}function Yn(e,n,o,r,a,i,l,s,c,d){const p=t.ref(e.size),u=t.ref(e.textField),f=t.ref(e.titleField),x=t.ref(e.disableField),b=t.computed(()=>{var g,v;return((g=e.selection)==null?void 0:g.multiSelect)&&((v=e.selection)==null?void 0:v.showCheckbox)}),{onMouseenterItem:S,onMouseoverItem:w,onMouseoutItem:C}=i,{getKey:y,listViewItemClass:h,onCheckItem:N,onClickItem:_}=l,m=t.computed(()=>({margin:p.value==="small"?"0.25rem 0":"10px 0"}));function V(g,v,F){return g.checked=s.findIndexInSelectedItems(g)>-1,t.createVNode("li",{class:h(g,v),id:y(g,v),key:y(g,v),onClick:I=>_(I,g,v),onMouseenter:I=>S(I,g,v),onMouseover:I=>w(I,g,v),onMouseout:I=>C(I,g,v)},[b.value&&t.createVNode("div",{class:"f-list-select",onClick:I=>I.stopPropagation()},[t.createVNode(at.FCheckBox,{id:"list-"+y(g,v),customClass:"listview-checkbox",disabled:g[x.value],checked:g.checked,"onUpdate:checked":I=>g.checked=I,onChange:I=>{N(g,v,!I.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{style:m.value,title:g.raw[f.value]||g.raw[u.value]},[g.raw[u.value]])])])}return{renderItem:V}}function tl(e,n,o,r,a,i,l,s,c,d){const p=t.ref(e.multiSelect),u=t.ref(e.disableField),{onMouseenterItem:f,onMouseoverItem:x,onMouseoutItem:b}=i,{getKey:S,listViewItemClass:w,onCheckItem:C,onClickItem:y}=l;function h(_,m,V){return n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:_.raw,index:m,selectedItem:V})]):t.createVNode("div",{style:"margin: 10px 0;"},[_.raw.name])}function N(_,m,V){return t.createVNode("li",{class:w(_,m),id:S(_,m),key:S(_,m),onClick:g=>y(g,_,m),onMouseenter:g=>f(g,_,m),onMouseover:g=>x(g,_,m),onMouseout:g=>b(g,_,m)},[p.value&&t.createVNode("div",{class:"f-list-select",onClick:g=>g.stopPropagation()},[t.createVNode(at.FCheckBox,{id:"list-"+S(_,m),customClass:"listview-checkbox",disabled:_[u.value]||!_.checked,checked:_.checked,"onUpdate:checked":g=>_.checked=g,onChange:g=>C(_,m,!g.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[h(_,m,V)])])}return{renderItem:N}}function nl(e,n,o,r,a,i,l,s,c,d){const p=t.ref(e.multiSelect),u=t.ref(e.disableField),{onMouseenterItem:f,onMouseoverItem:x,onMouseoutItem:b}=i,{getKey:S,listViewItemClass:w,onCheckItem:C,onClickItem:y}=l,{dragstart:h,dragenter:N,dragover:_,dragend:m}=r,{removeItem:V}=c,g=t.computed(()=>({margin:p.value?"10px 0":"10px 0px 10px 14px"}));function v(M){return t.createVNode("div",{style:g.value},[M.raw.name])}function F(){return n.slots.itemContent?n.slots.itemContent:v}const I=F();function T(M,k,B){return t.createVNode("li",{class:w(M,k),id:S(M,k),key:S(M,k),onClick:$=>y($,M,k),onMouseenter:$=>f($,M,k),onMouseover:$=>x($,M,k),onMouseout:$=>b($,M,k),draggable:"true",onDragstart:$=>h($,M,k),onDragenter:$=>N($,k),onDragend:$=>m($,M),onDragover:$=>_($,k)},[p.value&&t.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[t.createVNode(at.FCheckBox,{id:"list-"+S(M,k),customClass:"listview-checkbox",disabled:M[u.value]||!M.checked,checked:M.checked,"onUpdate:checked":$=>M.checked=$,onChange:$=>C(M,k,!$.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[I(M)]),t.createVNode("div",{class:"f-list-remove",onClick:$=>V(k)},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:T}}function ol(e,n,o,r,a,i,l,s,c,d){var S;const p=t.ref(((S=e.group)==null?void 0:S.groupFields)||[]),{collpaseGroupIconClass:u}=a,{toggleGroupRow:f}=d;function x(w,C){C.collapse=!C.collapse,o.value=f(C.collapse?"collapse":"expand",C,o.value)}function b(w,C,y){return w.layer>-1&&t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:h=>x(h,w)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:u(w)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[w.raw[p.value[w.layer]]])])}return{renderItem:b}}function rl(){const e=t.ref(-1),n=t.ref(""),o=t.ref(-1),r=t.ref(!1);function a(d,p,u){o.value=u}function i(d,p,u){r.value||(o.value=u)}function l(d,p,u){o.value=-1}function s(){r.value=!0}function c(){r.value=!1}return{activeIndex:e,focusedItemId:n,hoverIndex:o,onMouseenterItem:a,onMouseoverItem:i,onMouseoutItem:l,resumeHover:c,suspendHover:s}}function il(e,n,o,r){const a=t.ref(e.idField),{dataView:i}=o,l=t.ref(-1),s=t.ref(!1),{activeIndex:c,focusedItemId:d,hoverIndex:p,resumeHover:u,suspendHover:f}=r;function x(C,y,h){C.stopPropagation(),f(),y&&setTimeout(()=>{l.value=h,s.value=!0,y.moving=!0})}function b(C,y){if(C.preventDefault(),l.value!==y){const h=i.value[l.value],N=i.value;N.splice(l.value,1),N.splice(y,0,h),l.value=y}}function S(C,y){C.preventDefault(),C.dataTransfer&&(C.dataTransfer.dropEffect="move")}function w(C,y){y&&(y.moving=!1),i.value.forEach((h,N)=>{h.__fv_index__=N}),s.value=!1,u(),p.value=y.raw.__fv_index__,c.value=y.raw.__fv_index__,d.value=y.raw[a.value],n.emit("change",i.value),n.emit("activeChange",y)}return{dragstart:x,dragenter:b,dragover:S,dragend:w,isDragging:s}}function al(e,n,o){const{dataView:r}=o;function a(i){if(i>-1&&i<r.value.length){const l=r.value.splice(i,1);n.emit("removeItem",l[0])}}return{removeItem:a}}function ll(e,n,o,r,a,i){const l=t.ref(e.idField),s=t.ref(e.disableField),c=t.ref(e.draggable),d=t.ref(e.itemClass),p=t.ref(e.selection.multiSelect??!1),u=t.ref(e.selection.multiSelectMode),{isDragging:f}=r,{activeIndex:x,focusedItemId:b,hoverIndex:S}=a,{clearSelection:w,getSelectedItems:C,toggleSelectItem:y}=i,h=t.ref(C());function N(I,T){const M={"f-listview-item":!0,"f-list-view-group-item":!0,"f-list-view-draggable-item":c.value,"f-un-click":!I.checked,"f-un-select":!!I.raw[s.value],"f-listview-active":h.value.findIndex(B=>B[l.value]===I.raw[l.value])>-1,"f-listview-item-active":h.value.findIndex(B=>B[l.value]===I.raw[l.value])>-1,"f-listview-hover":!f.value&&T===S.value,moving:!!I.moving};return d.value.split(" ").reduce((B,$)=>(B[$]=!0,B),M),M}function _(I,T){return I.raw[l.value]||""}const m=t.computed(()=>!p.value);function V(I,T,M){I.checked=M,!I.raw[s.value]&&(m.value&&(b.value=I.raw[l.value]),y(I))}const g=t.computed(()=>p.value&&u.value==="OnCheckClearByClick"),v=t.computed(()=>!p.value||p.value&&(u.value==="OnCheckAndClick"||u.value==="OnClick"));function F(I,T,M){if(T.raw[s.value]){I.preventDefault(),I.stopPropagation();return}b.value=T.raw[l.value],x.value=M,g.value&&w(o.value),v.value&&(y(T),h.value=C()),n.emit("clickItem",{data:h.value,index:M}),n.emit("activeChange",h.value)}return{getKey:_,listViewItemClass:N,onCheckItem:V,onClickItem:F}}function sl(e,n,o,r,a,i,l){const s=t.ref(e.view),c=t.ref(e.view==="CardView"),d=t.ref({}),p=t.ref("暂无数据"),u=rl(),f=il(e,n,r,u),x=al(e,n,r),b=ll(e,n,o,f,u,i),S=t.computed(()=>({"f-list-view-group":!0,"d-flex":c.value,"flex-wrap":c.value})),w=t.computed(()=>!!o.value&&o.value.length>0),C=t.computed(()=>o.value.length===0),y=t.computed(()=>C.value&&!n.slots.empty);function h(){return s.value==="SingleView"?Yn:s.value==="DraggableView"?nl:(s.value==="ContentView"||s.value==="CardView")&&n.slots.content?tl:Yn}const N=h(),{renderItem:_}=N(e,n,o,f,a,u,b,i,x,l),{renderItem:m}=ol(e,n,o,f,a,u,b,i,x,l),V=[_,m];function g(){return o.value.filter(I=>I.visible!==!1).map((I,T)=>V[I.type](I,T,d))}function v(){return t.createVNode("div",{class:"f-list-view-emptydata"},[t.createVNode("p",{class:"f-empty-title"},[p.value])])}function F(){return t.createVNode("ul",{class:S.value,style:"list-style: none;"},[w.value&&g(),y.value&&v(),n.slots.empty&&n.slots.empty()])}return{renderListArea:F}}function cl(e,n,o){function r(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:r}}function Jn(e,n,o){const r=t.ref(e.headerClass),a=t.ref(e.placeholder),i=t.ref(""),l=t.computed(()=>!i.value),s=t.computed(()=>!!i.value);function c(f){i.value=""}t.watch(i,f=>{e.enableHighlightSearch&&o.search(f),n.emit("afterSearch",f)});const d=t.computed(()=>{const f={"form-group":!0,"farris-form-group":!0};return r.value&&r.value.split(" ").reduce((b,S)=>(b[S]=!0,b),f),f});function p(f){}function u(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>p,["prevent","stop"])},[t.createVNode("div",{class:d.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":f=>i.value=f,name:"input-group-value",type:"text",placeholder:a.value,autocomplete:"off"},null),[[t.vModelText,i.value]]),t.createVNode("div",{class:"input-group-append"},[s.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:f=>c()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:u}}const Qn=t.defineComponent({name:"FListView",props:Xn,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,n){const o=t.ref(),r=t.ref(!0),a=t.ref(!1),i=t.ref([]),l=0,s=t.ref(e.columns),c=A.useIdentify(e),d=A.useHierarchy(e),p=A.useGroupData(e,c),u=A.usePagination(e),f=A.useDataView(e,new Map,d,c,u),x=A.useSelection(e,f,c,i,n),b=el(e,o),S=t.computed(()=>f.dataView.value.length),w=A.useEdit(e,n,c),C=A.useVisualDataBound(),y=A.useVisualDataCell(e,{},C),h=A.useVisualDataRow(e,w,d,c,C,y),N=A.useVisualGroupRow(e,c,y,h),_=A.useVisualSummaryRow(e,c,y,h),m=A.useVisualData(e,s,f,S,l,h,N,_),{getVisualData:V}=m;i.value=V(0,S.value+l-1);const g=t.computed(()=>{const O={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(O[`${e.size}-item`]=!0),O}),v=t.computed(()=>!!n.slots.footer||r.value);function F(){return e.header==="SearchBar"?Jn:e.header==="ContentHeader"?cl:Jn}const I=F(),{renderHeader:T}=I(e,n,b),{renderListArea:M}=sl(e,n,i,f,p,x,m);function k(O){b.search(O)}function B(O){O&&(f.load(O),i.value=V(0,S.value+l-1))}n.expose({search:k,updateDataSource:B});function $(O){e.multiSelect&&(O.preventDefault(),O.stopPropagation())}return()=>t.createVNode("div",{class:g.value,onClick:$},[T(),t.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{a.value=!0},onMouseleave:()=>{a.value=!1}},[M()]),v.value&&t.createVNode("div",{class:"f-list-view-footer"},[n.slots.footer&&n.slots.footer()])])}}),dl=t.defineComponent({name:"FTransfer",props:Kn,emits:["change","activeChange"],setup(e,n){const o=t.ref(e.identifyField),r=t.ref("已选:"),a=t.ref("项数据"),i=t.ref(e.displayType),l=t.ref(!1),s=t.ref(e.dataSource),c=t.ref(e.selections||[]),d=t.computed(()=>c.value.map(v=>v[o.value])),p=new Map,u=t.ref();function f(){const v=new Map,F=e.selectionValues||[];F.length&&F.reduce((T,M)=>(T.set(M,!0),T),v);const I=e.selections||[];I.length&&(v.clear(),I.reduce((T,M)=>(T.set(M[o.value],!0),T),v)),c.value.length||(c.value=s.value.filter(T=>v.has(T[o.value])).map(T=>Object.assign({},T))),s.value.forEach(T=>{const M=T[o.value],k=v.has(M);T.checked=k,k&&p.set(M,T)})}f();const x=t.computed(()=>i.value==="List"),b=t.computed(()=>i.value==="Tree");function S(v){c.value=v.map(F=>Object.assign({},F)),n.emit("change",c.value)}function w(){return t.createVNode(Qn,{class:"f-utils-fill",data:s.value,multiSelect:!0,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box","selection-values":d.value,onSelectionChange:S},{default:()=>[t.createTextVNode(" ")]})}function C(){return t.createVNode(t.Fragment,null,null)}function y(){return t.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[t.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[t.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[x.value&&w(),b.value&&C()])])])}function h(v){const F=v[o.value];if(F!==null||F!==void 0){c.value=c.value.filter(T=>T[o.value]!==F);const I=p.get(F);I&&(I.checked=!1,p.delete(F)),n.emit("change",c.value)}}t.watch(c,v=>{u.value.updateDataSource(v)});function N(v){const F=new Map;c.value.reduce((I,T)=>(I.set(T[o.value],T),I),F),c.value=v.map(I=>F.get(I[o.value])),n.emit("change",c.value)}function _(v){n.emit("activeChange",v)}function m(){return t.createVNode(Qn,{ref:u,style:"flex:1",data:c.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:N,onRemoveItem:h,onActiveChange:_},null)}function V(){return t.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[t.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[t.createVNode("div",{class:"selection-pane-title"},[t.createVNode("span",{class:"selection-title"},[r.value]),t.createVNode("span",{class:"selection-count"},[c.value&&c.value.length]),t.createVNode("span",{class:"selection-item-title"},[a.value])]),t.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[m()])])])}const g=t.computed(()=>({transfer:!0,row:!0,"f-utils-fill":l.value}));return()=>t.createVNode("div",{class:g.value,style:"height:480px"},[y(),V()])}}),ul=t.defineComponent({name:"FGridFieldEditor",props:Un,emits:["change"],setup(e,n){const o=t.ref(e.viewModelId),r=t.inject("designViewModelUtils"),a=t.inject("useFormSchema"),i=t.inject("controlCreatorUtils"),l=t.ref(e.modelValue);let s=e.gridData.columns;const c=t.ref([]),d=t.ref([]);let p=[];t.onMounted(()=>{u()});function u(){d.value=r.getAllFields2TreeByVMId(o.value),p=x(d.value)}function f(){if(c.value=[],!s||s.length===0)return[];s.forEach(y=>{if(y.binding&&y.binding.field){const h=p.find(N=>N.data.id===y.binding.field);h?c.value.push(Object.assign({},h.data)):c.value.push({id:y.binding.field,name:y.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}})}function x(y,h=[]){return y&&y.forEach(N=>{h.push(N),N.children&&x(N.children,h)}),h}function b(){const y=r.getDgViewModel(o.value),h=[],N=[];c.value.forEach(m=>{delete m.inValidTip,delete m.isInValidBinding;let V=s==null?void 0:s.find(g=>{if(g.binding&&g.binding.field)return g.binding.field===m.id});if(V)h.push(V);else{const g=d.value.find(F=>F.id==m.id),v=i.setGridFieldProperty(e.gridType,g.data,null,!0);y.addField(m),h.push(v)}N.push(m.id)});const _=y.fields.filter(m=>!N.includes(m.id));if(_&&_.length>0){const m=_.map(V=>V.id);y.removeField(m),a.expressions&&a.expressions.length&&m.length&&(a.expressions=a.expressions.filter(V=>!m.includes(V.fieldId)))}l.value=`共 ${h.length} 项`,n.emit("change",h)}const S={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{b()},rejectCallback:()=>{}};function w(y){c.value=y?[...y]:[]}function C(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),u()),s=e.gridData.columns,f(),Promise.resolve(!0)}return()=>t.createVNode(nt,{"button-behavior":"Modal","modal-options":S,modelValue:l.value,"onUpdate:modelValue":y=>l.value=y,editable:!1,beforeOpen:C},{default:()=>[t.createVNode("div",{class:"f-utils-absolute-all"},[t.createVNode(dl,{selections:c.value,"data-source":d.value,class:"mx-2",onChange:y=>w(y)},null)])]})}}),fl={$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:"col"},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120}}},pl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"}}},Dt={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:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},isMultilingualField:{type:Boolean,default:!1},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},ml=Oe(Dt,fl,Zt,nn),gl=Oe(Dt,pl,Zt,nn);class hl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class yl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"check-group"},{placeholder:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",type:"array"}})}}class vl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"check-group"},{placeholder:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}class bl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},textField:{description:"",title:"数据源显示字段",type:"string"},idField:{description:"",title:"数据源值字段",type:"string"}})}}class Cl extends He{constructor(n,o){super(n,o)}}class wl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"date-picker"},{displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},maxYear:{description:"",title:"最大年限",type:"number"},minYear:{description:"",title:"最小年限",type:"number"}})}}const xl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/field-selector.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{}},Sl=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Pt=Symbol("Field_Selector Component Repository Service Token");Oe({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:null},bindingType:{type:Object,default:{enable:!0,data:[{value:"Form",text:"绑定字段"},{value:"LocaleVariable",text:"绑定组件变量"},{value:"RemoteVariable",text:"绑定表单变量"}],value:"Form",textField:"text",valueField:"value"}},data:{type:Array,default:[]},idField:{type:String,default:"id"},columns:{type:Array,default:Sl},title:{type:String,default:"字段选择器"},modalWidth:{type:Number,default:600},modalHeight:{type:Number,default:500},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},bindingData:{type:Array,default:[]},textField:{type:String,default:"code"},beforeOpenDialog:{type:Function,default:null},editorParams:{type:Object,default:null},onFieldSelected:{type:Function,default:null},repositoryToken:{type:Symbol,default:null}},xl);function _l(e,n,o){return!n||!n.length?{columns:[]}:(n.forEach(r=>{r.title=r.caption?r.caption:r.title,r.field=r.binding?r.binding.path:r.field}),{columns:n})}const Zn=new Map([["appearance",qe],["column","columnOption"],["fields",_l]]);function Vl(e,n,o){var u;const r=o.parentComponentInstance,a=r.schema.type,i=String(((u=r.schema.appearance)==null?void 0:u.class)||"").split(" "),l=a==="section"||a==="tab-page",s=i.includes("f-page-content-nav"),c=i.includes("f-page-main"),d=e.getSchemaByType("component");d.id=`${n.id}-component`,d.componentType="data-grid";let p="";return p+=l?"f-struct-data-grid-in-card f-struct-is-subgrid":"",p+=s?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",p+=c?"f-struct-data-grid f-struct-wrapper":"",d.appearance={class:p},d.contents=[n],d}function Nl(e,n,o){const r=o.parentComponentInstance,a=String(r.schema.appearance.class||"").split(" "),i=a.includes("f-page-content-nav"),l=a.includes("f-page-main"),s=e.getSchemaByType("section");s.id=`${n.id}-section`;let c="";return c+=i?"f-section-in-nav ":"",c+=l?"f-section-in-managelist ":"",c+="f-section-grid",s.appearance={class:c},s.contents=[n],s}function kl(e,n,o){const r=e.getSchemaByType("content-container");return r.id=`${n.id}-layout`,r.appearance={class:"f-grid-is-sub f-utils-flex-column"},r.contents=[n],r}function eo(e,n,o){const a=o.parentComponentInstance.schema.type,i=a==="section"||a==="tab-page";n.appearance={class:"f-component-grid"};const s=(i?kl:Nl)(e,n,o);return Vl(e,s,o)}const to={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"tree-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showTreeNodeIcons:{type:"boolean",default:!1},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},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"string",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},selection:{type:"object",properties:{enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type"]},Et={columns:{type:Array,default:[]},displayField:{type:String,default:"name"},showLines:{type:Boolean,default:!1},columnOption:{type:Object},data:{type:Array,default:[]},disable:{type:Boolean,default:!1},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},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},pagination:{type:Object,default:{enable:!1,size:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},commandOption:{type:Object,default:{enable:!1,commands:[]}},hierarchy:{type:Object,default:{cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},autoCheckChildren:{type:Boolean,default:!1},showSetting:{type:Boolean,default:!1}},Fl=Oe(Et,to,Zn,eo),Tl=vr(),no=Object.assign({},Et,{componentId:{type:String,default:""}}),Ml=Oe(no,to,Zn,eo);function oo(e,n,o,r,a,i,l,s,c,d,p,u,f,x,b,S){const{calculateCellPositionInRow:w}=i,{columnContext:C,hasLeftFixedColumn:y,hasRightFixedColumn:h}=l,{gridDataStyle:N,leftFixedGridDataStyle:_,rightFixedGridDataStyle:m}=x,{renderDataRow:V}=ei(e,n,C,S,s,c,d,p,u,f),g=[V];function v(k,B){const $=w(k);return S.value.filter(O=>O.visible!==!1).map(O=>g[O.type](O,$,B))}function F(){return t.createVNode("div",{ref:r,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:_.value},[v(C.value.leftColumns.filter(k=>k.visible),"left")])])}function I(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:N.value},[v(C.value.primaryColumns.filter(k=>k.visible),"primary")])])}function T(){return t.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:m.value},[v(C.value.rightColumns.filter(k=>k.visible),"right")])])}function M(){const k=[];return y.value&&k.push(F()),k.push(I()),h.value&&k.push(T()),k}return{renderDataArea:M}}const mt=t.defineComponent({name:"FTreeGrid",props:Et,emits:["selectionChange"],setup(e,n){var Ne;const a=t.ref(),i=t.ref(),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref([]),p=t.ref(!1),u=t.ref(((Ne=e.rowOption)==null?void 0:Ne.wrapContent)||!1),{showLoading:f,renderLoading:x}=A.useLoading(e,a),b=A.useIdentify(e),S=A.useGroupData(e,b),w=A.useFilter(),C=A.useHierarchy(e),y=A.usePagination(e),h=A.useDataView(e,new Map,C,b,y),N=A.useSelection(e,h,b,d,n),_=A.useSelectHierarchyItem(e,d,b,N,n),m=t.computed(()=>e.disable),V=t.computed(()=>Math.min(h.dataView.value.length,100)),{containerStyleObject:g}=A.useDataViewContainerStyle(e),v=A.useCommandColumn(e),F=t.ref(e.columns),{applyCommands:I}=v;I(F);const T=A.useColumn(e),M=A.useSort(e),{applyColumnSorter:k,columnContext:B,updateColumnRenderContext:$}=T;k(h,M);const O=A.useGroupColumn(e,B),D=A.useEdit(e,n,b),j=A.useVisualDataBound(),P=A.useVisualDataCell(e,D,j),E=A.useVisualDataRow(e,D,C,b,j,P),re=A.useVisualData(e,F,h,V,0,E),{getVisualData:se}=re,ve=A.useCellPosition(e,B),ke=A.useSidebar(e,N),{sidebarWidth:Se}=ke;d.value=se(0,V.value+0-1);const he=A.useVirtualScroll(e,h,d,B,re,V,0,Se),{onWheel:Ce,dataGridWidth:_e,viewPortHeight:ae,viewPortWidth:ue}=he,W=A.useFitColumn(e,B,i,ue,O),{calculateColumnsSize:U}=W,ce=A.useFilterHistory(),ee=A.useColumnFilter(i,c,h,ce,he),ge=A.useRow(e,n,N,b),R=A.useDragColumn(e,n,T,h,O,S,he),K=t.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),pe=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":u.value})),{renderDataArea:H}=oo(e,n,l,s,c,ve,T,h,D,C,ge,N,_,he,re,d),{renderGridHeader:de,renderGridColumnResizeOverlay:me}=A.getColumnHeader(e,i,s,c,T,h,R,ee,w,ce,W,O,N,ke,M,he,ue,d),{renderDataGridSidebar:q}=A.getSidebar(e,ge,N,ke,he),{renderDisableMask:ye}=A.getDisableMask(),{renderHorizontalScrollbar:Me}=A.getHorizontalScrollbar(e,i,he),{renderVerticalScrollbar:J}=A.getVerticalScrollbar(e,i,he);function oe(){var ie,Fe;ae.value=((ie=l.value)==null?void 0:ie.clientHeight)||0,_e.value=((Fe=i.value)==null?void 0:Fe.clientWidth)||0,U()}t.onMounted(()=>{i.value&&(dt.useResizeObserver(i.value,oe),U(),t.nextTick(()=>{i.value&&(_e.value=i.value.clientWidth),l.value&&(ue.value=l.value.clientWidth,ae.value=l.value.clientHeight)})),f.value&&x()}),t.onUnmounted(()=>{}),t.watch(ue,()=>{i.value&&U()});function fe(){const ie=N.getSelectionRow();return ie?ie.dataIndex-1:-1}function Ve(){const ie=fe();h.insertNewDataItem(ie),d.value=se(0,V.value+0-1)}function Te(){const ie=fe();h.insertNewChildDataItem(ie),d.value=se(0,V.value+0-1)}function $e(){const ie=fe(),Fe=_.getNextSelectableHierarchyItemId(ie);h.removeHierarchyDataItem(ie),d.value=se(0,V.value+0-1),Fe&&N.selectItemById(Fe)}function Ge(ie){D.onEditingRow(ie)}function Le(ie){D.acceptEditingRow(ie)}function Ze(ie){D.cancelEditingRow(ie)}function et(ie){ie&&(F.value=ie,I(F),$(F.value),k(h,M),U())}function tt(ie){ie&&(h.load(ie),d.value=se(0,V.value+0-1))}function Ue(ie){N.selectItemById(ie)}function G(){return N.getSelectedItems()}const ne=t.computed(()=>!d.value||!d.value.length),{renderEmpty:le}=A.getEmpty(n);return n.expose({addNewDataItem:Ve,addNewChildDataItem:Te,removeDataItem:$e,editDataItem:Ge,acceptDataItem:Le,cancelDataItem:Ze,updateColumns:et,updateDataSource:tt,selectItemById:Ue,getSelectedItems:G}),()=>t.createVNode("div",{ref:a,class:K.value,style:g.value,onWheel:Ce},[de(),ne.value&&le(),t.createVNode("div",{ref:i,class:pe.value,onMouseover:()=>{},onMouseleave:()=>{}},[q(d),H(),Me(),J()]),me(),m.value&&ye()])}});class Il extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getEventPropConfig(n),this.propertyConfig}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"tree-grid",value:te["tree-grid"].name}]}}}}}getAppearanceProperties(n){var o,r,a;this.propertyConfig.categories.appearance={title:"外观",properties:{fields:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:n,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"},showTreeNodeIcons:{title:"显示图标",type:"boolean",description:"是否显示图标"}},setPropertyRelates(i,l){switch(i&&i.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"fields":n.fields=i.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=n.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"client",name:"客户端"},{value:"server",name:"服务器端"}]}},showIndex:{visible:((r=n.pagination)==null?void 0:r.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=n.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"selectionChange",name:"行切换事件"}];var r=this;const a=r.eventsEditorUtils.formProperties(n,r.viewModelId,o),i={};i[r.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:i,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const c=l.propertyValue;delete n[r.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(n,r.viewModelId,c.events,c)),n.remoteSort=!!n.columnSorted}}}}function Bl(e,n){const o=e.schema,r=t.ref(!0),a=t.ref(!0);function i(f){return f&&f.sourceType==="control"?f.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function c(){return!0}function d(f){}function p(){}function u(f){return new Il(f,n).getPropertyConfig(o)}return{canAccepts:i,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:r,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:u}}const Ol=t.defineComponent({name:"FTreeGridDesign",props:no,emits:[],setup(e,n){var Ve;const o=t.ref(),r=0,a=100,i=t.ref(),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref([]),p=t.ref(!1),u=t.ref(((Ve=e.rowOption)==null?void 0:Ve.wrapContent)||!1),f=t.inject("designer-host-service"),x=t.inject("design-item-context"),b=Bl(x,f),S=Tt(o,x,b);S.value.designerClass="f-utils-fill-flex-column";const w=Pn(e),C=Bt(e,w),y=It(),h=In(e),N=Gn(e),_=Tn(e,new Map,h,w,N),m=Rn(e,_,w,d,n),V=ba(e,d,w,m,n),g=t.computed(()=>Math.min(_.dataView.value.length,a)),{containerStyleObject:v}=cn(e),F=fn(e),I=t.ref(e.columns),{applyCommands:T}=F;T(I);const M=dn(e),k=An(),{applyColumnSorter:B,columnContext:$,updateColumnRenderContext:O}=M;B(_,k);const D=qn(e,$),j=Dn(e,n,w),P=kt(),E=$n(e,j,P),re=jn(e,j,h,w,P,E),se=On(e,I,_,g,r,re),{getVisualData:ve}=se,ke=Nt(e,$),Se=Hn(e,m),{sidebarWidth:he}=Se;d.value=ve(0,g.value+r-1);const Ce=Bn(e,_,d,$,se,g,r,he),{onWheel:_e,dataGridWidth:ae,viewPortHeight:ue,viewPortWidth:W}=Ce,U=mn(e,$,i,W,D),{calculateColumnsSize:ce}=U,ee=Mn(),ge=un(i,c,_,ee,Ce),R=En(e,n,m,w),K=pn(e,n,M,_,D,C,Ce),pe=t.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),H=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":u.value})),{renderDataArea:de}=oo(e,n,l,s,c,ke,M,_,j,h,R,m,V,Ce,se,d),{renderGridHeader:me}=zn(x,e,i,s,c,M,_,K,ge,y,ee,U,D,m,Se,k,Ce,W,d,"tree-grid-column"),{renderDataGridSidebar:q}=ln(e,R,m,Se,Ce),{renderHorizontalScrollbar:ye}=an(e,i,Ce),{renderVerticalScrollbar:Me}=sn(e,i,Ce);function J(){var Te,$e;ue.value=((Te=l.value)==null?void 0:Te.clientHeight)||0,ae.value=(($e=i.value)==null?void 0:$e.clientWidth)||0,ce()}t.onMounted(()=>{o.value.componentInstance=S,i.value&&(dt.useResizeObserver(i.value,J),ce(),t.nextTick(()=>{i.value&&(ae.value=i.value.clientWidth),l.value&&(W.value=l.value.clientWidth,ue.value=l.value.clientHeight)}))}),t.onUnmounted(()=>{}),t.watch(W,()=>{i.value&&ce()});const oe=t.computed(()=>!d.value||!d.value.length),{renderEmpty:fe}=ri(n);return n.expose(S.value),()=>t.createVNode("div",{ref:o,dragref:`${x.schema.id}-container`,class:pe.value,style:v.value,onWheel:_e},[me(),oe.value&&fe(),t.createVNode("div",{ref:i,class:H.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[q(d),de(),ye(),Me()])])}});mt.register=(e,n,o,r)=>{e["tree-grid"]=mt,n["tree-grid"]=Fl,r["tree-grid"]={bindingResolver:rn,selectionItemResolver:Tl}},mt.registerDesigner=(e,n,o)=>{e["tree-grid"]=Ol,n["tree-grid"]=Ml},Ri(mt);function $l(e,n,o){return n}const jl=new Map([["appearance",qe]]),Dl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-group.schema.json",title:"radio-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a radio-group",type:"string"},type:{description:"The type string of radio-group component",type:"string",default:"radio-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",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},horizontal:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},enumData:{description:"",type:"array"}},required:["id","type"],ignore:["id","appearance","binding"]},Pl={...Hi,id:String,disabled:{type:Boolean,default:!1},enumData:{type:Array,default:[{value:"example",name:"example1"}]},horizontal:{type:Boolean,default:!1},direction:{type:String,default:"horizontal"},modelValue:{type:String,default:""},name:{type:String,default:""},tabIndex:Number,textField:{type:String,default:"name"},valueField:{type:String,default:"value"}};Oe(Pl,Dl,jl,$l);const ot={convertFrom:(e,n)=>n==="multiSelect"?!!e.editor[n]:n==="separator"?e.editor[n]||",":e.editor[n],convertTo:(e,n,o)=>{e.editor[n]=o}},El={convertFrom:(e,n)=>e[n]==null?!0:e[n],convertTo:(e,n,o)=>{e[n]=o}};function Rl(e){let n="form_group_"+Date.now();return e&&(n=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+n}const Hl={convertFrom:(e,n)=>{var o;return(o=e.editor[n])==null?void 0:o.displayName},convertTo:(e,n,o)=>{if(o&&o.length>0){const r=o[0],{name:a,id:i,metadataContent:l}=r;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=a,e.editor.helpId=i;const{displayType:s,idField:c,textField:d}=l;e.editor.displayType=s,e.editor.dataSource.idField=c,e.editor.textField=d,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=Rl(e.id))}}},Al={convertFrom:(e,n)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,n,o)=>{if(o&&o.length>0){const r=o[0];e.editor.dataSource.idField=r==null?void 0:r.bindingPath}}},Gl={convertFrom:(e,n)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,n,o)=>{if(o&&o.length>0){const r=o[0];e.editor.textField=r==null?void 0:r.bindingPath}}},Ll={convertFrom:(e,n)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,n,o)=>{e.editor.displayType=o}},Wl=Symbol("schema_repository_token");class zl extends He{getPropertyConfig(n,o){const r=this.getBasicProperties(n,o),a=this.getAppearanceConfig(),i=this.getBehaviorConfig(n),l=this.getLookupConfig(n.editor);return{type:"object",categories:{basic:r,appearance:a,behavior:i,lookup:l}}}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ot},readonly:{description:"",title:"只读",type:"boolean",$converter:ot},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:ot},visible:{description:"",title:"可见",type:"boolean",$converter:El},placeHolder:{visible:!1,description:"",title:"提示文本",type:"string"},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}getLookupConfig(n){return{description:"Basic Infomation",title:"编辑器",properties:{dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(o,r)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Wl,onSubmitModal:o=>{if(o){const r=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(r.relativePath,o[0].data).then(a=>JSON.parse(a==null?void 0:a.metadata.content))}}},$converter:Hl},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ll,editor:{type:"combo-list",data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pt},$converter:Al},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Gl,editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ot,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,fromData:{editable:!1,editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},formatter:(o,r)=>`${r.raw[o.field]} [${r.raw.bindingPath}]`,idField:"id",textField:"name",valueField:"bindingPath",repositoryToken:Pt},toData:{idField:"id",textField:"name",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(o,r)=>`${r.raw[o.field]} [${r.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:ot,title:"启用多选",type:"boolean"},separator:{description:"多选分隔符",$converter:ot,title:"多选分隔符",type:"string"}}}}}class ql extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Ul extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-spinner"},{textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}})}}class Kl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-spinner"},{readonly:{visible:!1},placeholder:{visible:!1},horizontal:{description:"",title:"是否横向",type:"boolean"},textField:{description:"",title:"显示文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",title:"数据",type:"array"}})}}class Xl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"switch"},{readonly:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开时标签",type:"string"},offLabel:{description:"",title:"关闭时标签",type:"string"},onBackground:{description:"",title:"打开时背景色",type:"string"},offBackground:{description:"",title:"关闭时背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{value:"small",name:"小号"},{value:"middle",name:"中号"},{value:"large",name:"大号"}]}}})}}class Yl extends He{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"HH:mm:ss",name:"HH:mm:ss"}]}},showHeader:{description:"",title:"是否显示头部区域",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean"}})}}class Jl extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n,o){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getFieldEditorProperties(n,o),this.propertyConfig}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"}}}}getAppearanceProperties(n){this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{halign:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"靠左"},{id:"right",name:"靠右"},{id:"center",name:"居中"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"靠上"},{id:"middle",name:"居中"},{id:"bottom",name:"靠下"}]}}}}}getFieldEditorProperties(n,o){o.fieldEditable&&n.editor&&this.getFieldEditorProp(n)}getFieldEditorProp(n,o="gridFieldEditor",r=!1){const a=this.formMetadataConverter.getRealEditorType(n.editor.type);let i;switch(a){case"avatar":i=new hl(this.componentId,this.designerHostService);break;case"check-group":i=new yl(this.componentId,this.designerHostService);break;case"check-box":i=new vl(this.componentId,this.designerHostService);break;case"combo-list":i=new bl(this.componentId,this.designerHostService);break;case"date-picker":i=new wl(this.componentId,this.designerHostService);break;case"lookup":i=new zl(this.componentId,this.designerHostService);break;case"number-range":i=new ql(this.componentId,this.designerHostService);break;case"number-spinner":i=new Ul(this.componentId,this.designerHostService);break;case"radio-group":i=new Kl(this.componentId,this.designerHostService);break;case"switch":i=new Xl(this.componentId,this.designerHostService);break;case"textarea":i=new Cl(this.componentId,this.designerHostService);break;case"time-picker":i=new Yl(this.componentId,this.designerHostService);break;default:i=new oa(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);var l=this;this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:n.editor,tabId:"gridFieldEditor",parentPropertyID:"editor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",data:ct.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(d,p){if(d)switch(d&&d.propertyID){case"type":{l.changeFieldEditorType(n,d.propertyValue);break}}}};const s=["id","type","class","style","binding","label","responseLayout"],c=i.getPropertyConfig(n).categories;Object.keys(c).map(d=>{const p=c[d];let u={};if(Object.keys(p.properties).map(f=>{s.findIndex(x=>x==f)==-1&&p.properties[f]!==!1&&(u[f]=p.properties[f])}),Object.keys(u).length!=0){const f=p==null?void 0:p.title,x="gridFieldEditor",b="编辑器",S=p==null?void 0:p.description,w=(p==null?void 0:p.$converter)||"";l.propertyConfig.categories[o+"_"+d]={title:f,tabId:x,tabName:b,description:S,$converter:w,propertyData:n,properties:u}}})}changeFieldEditorType(n,o){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);r.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const a=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),i=this.formSchemaUtils.selectNode(a,p=>p.type===te["data-grid"].type||p.type===te["tree-grid"].type);if(!i)return;const l=r.fields.find(p=>p.id==this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),c=i.hasOwnProperty("columns")?i.columns:i.fields,d=c.findIndex(p=>p.id===n.id);d>-1&&c[d].editor&&(c[d].editor=Object.assign(s.editor,{required:c[d].editor.required}))}}function Ql(e,n){const o=e.schema,r=t.ref(!0),a=t.ref(!0);function i(f){return!1}function l(){return!1}function s(){return!1}function c(){return!0}function d(f){}function p(){}function u(f){var b;return new Jl(f,n).getPropertyConfig(o,(b=e==null?void 0:e.parent)==null?void 0:b.schema)}return{canAccepts:i,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:r,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:u}}const ro=t.defineComponent({name:"FDataGridColumnDesign",props:Dt,emits:[],setup(e,n){const o=t.ref(),r=t.inject("designer-host-service"),a=t.inject("design-item-context"),i=Ql(a,r),l=Tt(o,a,i);t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value);function s(c){var d;(d=a==null?void 0:a.setupContext)==null||d.emit("selectionChange",l.value.schema,a.schema,e.componentId,l.value)}return()=>t.createVNode("span",{class:"fv-column-title",ref:o,onClick:c=>s()},[e.title])}});Qe.install=e=>{e.component(Qe.name,Qe),e.component(jt.name,jt)},Qe.register=(e,n,o,r)=>{e["data-grid"]=Qe,n["data-grid"]=on,e["grid-field-editor"]=ul,n["grid-field-editor"]=za,r["data-grid"]={bindingResolver:rn,selectionItemResolver:Ur}},Qe.registerDesigner=(e,n,o)=>{e["data-grid"]=jt,n["data-grid"]=on,n["data-grid-column"]=ml,e["data-grid-column"]=ro,n["tree-grid-column"]=gl,e["tree-grid-column"]=ro};const Zl={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"}};function Rt(){return new DOMException("The request is not allowed","NotAllowedError")}async function es(e){if(!navigator.clipboard)throw Rt();return navigator.clipboard.writeText(e)}async function ts(e){const n=document.createElement("span");n.textContent=e,n.style.whiteSpace="pre",n.style.webkitUserSelect="auto",n.style.userSelect="all",document.body.appendChild(n);const o=window.getSelection(),r=window.document.createRange();o==null||o.removeAllRanges(),r.selectNode(n),o==null||o.addRange(r);let a=!1;try{a=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(n)}if(!a)throw Rt()}async function ns(e){try{await es(e)}catch(n){try{await ts(e)}catch(o){throw o||n||Rt()}}}function os(){async function e(n){await ns(n)}return{onCopy:e}}function rs(e,n,o,r){const a=t.ref(14),i=t.ref(140),l=t.ref(""),s=t.ref(r.value.length),c=t.computed(()=>r.value),d=t.computed(()=>({"font-size":`${a.value}px`,height:"100%"}));function p(u){if(u.currentTarget){const f=u.currentTarget.value||"";s.value=f.length}}return()=>t.createVNode(t.Fragment,null,[t.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:i.value,onInput:u=>p(u)},[c.value]),t.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+i.value])])}function is(e,n,o,r){const a=rs(e,n,o,r),i=new Map([["text-area",a]]);function l(s){return i.get(s)||null}return{getEditorRender:l}}function as(){const e=t.ref(!1),n=t.ref("复制成功");return{feedbackStyle:t.computed(()=>{const r={position:"absolute",left:"50%",top:"50%",width:"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease"};return r.opacity=e.value?"0.8":"0",r.display=e.value?"":"none",r}),feedbackMessage:n,toShowFeedback:e}}function ls(e,n){const o=n.getEditorRender(e.promptEditorType);return()=>o&&o()}function ss(e){const n=t.ref(3),o=t.ref(480),r=t.computed(()=>!!e.value&&!!e.value.date),a=t.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),i=t.computed(()=>!!e.value&&!!e.value.detail),l=t.computed(()=>{const w=`${o.value}px`;return{overflow:"hidden","text-overflow":"ellipsis",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":n.value,"max-height":w}}),s=t.computed(()=>e.value&&e.value.detail||""),c=t.computed(()=>!0),d=t.ref(!1),p=t.ref("展开"),u=t.ref("收起"),f=t.computed(()=>{const w={display:"block",color:"#2A87FF"};return w["text-align"]=d.value?"":"right",w});function x(w,C){d.value=!d.value,n.value=d.value?20:3}function b(w){return x()}function S(w){return x()}return()=>t.createVNode("div",{class:"toast-msg-detail"},[r.value&&t.createVNode("div",null,[a.value]),i.value&&t.createVNode("div",{id:"exception_error_msg",ref:"exceptionMessageRef",style:l.value},[t.createTextVNode("详细信息 : "),t.createVNode("span",{innerHTML:s.value},null)]),c.value&&t.createVNode("span",{style:f.value},[d.value&&t.createVNode("span",{onClick:b,style:"cursor: pointer;"},[u.value]),!d.value&&t.createVNode("span",{onClick:S,style:"cursor: pointer;"},[p.value])])])}function cs(e){return()=>t.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function ds(e,n,o,r){const a=t.ref(e.exceptionInfo),i=t.computed(()=>{const f={"f-icon":!0},x=`f-icon-${n.value}`;return f[x]=!0,f}),l=t.computed(()=>o.value||a.value&&a.value.message),s=t.computed(()=>r.value),c=t.computed(()=>!!r.value),d=t.computed(()=>!!a.value);function p(){return d.value?ss(a):c.value?cs(s):()=>null}const u=p();return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:i.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[t.createVNode("p",{class:"toast-msg-title",innerHTML:l.value},null),u()])])}function us(e,n,o){const{onCopy:r}=n,{toShowFeedback:a}=o,i=t.ref("复制成功"),l=t.ref("复制详细信息"),s=t.ref(e.exceptionInfo||{date:"",message:"",detail:""}),c=t.computed(()=>s.value&&s.value.detail||"");function d(p){r(c.value).catch(u=>{i.value="复制失败"}).finally(()=>{a.value=!0,setTimeout(()=>{a.value=!1},700)})}return()=>t.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[t.createVNode("span",{onClick:d,style:"cursor: pointer;"},[l.value])])}function fs(e,n,o,r){const a=t.ref(e.type),i=t.ref([]),l=t.ref(e.exceptionInfo),s=t.ref(e.okButtonText),c=t.ref(e.cancelButtonText),d=t.ref(!0),p=t.ref(!0),u=t.computed(()=>!!(i.value&&i.value.length)),f=t.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),x=t.computed(()=>!(i.value&&i.value.length)&&(s.value||c.value)),b=t.computed(()=>p.value&&s.value),S=t.computed(()=>d.value&&c.value),w=us(e,o,r);function C(h){a.value==="question"&&n.emit("reject"),n.emit("close")}function y(h){a.value==="question"&&n.emit("accept"),n.emit("close")}return()=>t.createVNode("div",{class:"modal-footer"},[f.value&&w(),x.value&&S.value&&t.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:C},[c.value]),x.value&&b.value&&t.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:y},[s.value]),u.value&&i.value.length&&i.value.map(h=>t.createVNode("button",{type:"button",onClick:h.handle,class:h.class},[h.iconClass&&t.createVNode("span",{class:h.iconClass},null),h.text]))])}const gt=t.defineComponent({name:"FMessageBox",props:Zl,emits:["accept","reject","close"],setup(e,n){const o=t.ref(e.type),r=t.ref(e.title),a=t.ref(e.detail),i=t.computed(()=>{const w={"modal-tips":!0,"d-flex":!0,"flex-row":!0},C=`messager-type-${o.value}`;return w[C]=!0,w}),l=t.computed(()=>{const w={};return o.value==="prompt"?w.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(w.padding="0.5rem 1.5rem 1rem 1.5rem"),w}),s=os(),c=is(e,o,r,a),d=as(),{feedbackStyle:p,feedbackMessage:u}=d;function f(){return t.createVNode("div",{style:p.value},[u.value])}function x(){switch(o.value){case"prompt":return ls(e,c);default:return ds(e,o,r,a)}}const b=x(),S=fs(e,n,s,d);return()=>t.createVNode("div",{class:"farris-messager"},[t.createVNode("section",{class:i.value,style:l.value},[b()]),S(),f()])}});class We{static show(n){let o=new Or;const r=t.reactive({...n}),a=!1,i=r.type==="error"||r.type==="prompt",l=r.type==="error"?"错误提示":r.type==="prompt"&&r.title||"",s=r.acceptCallback||(()=>{}),c=r.rejectCallback||(()=>{});let d=null;const p=()=>{d&&(d==null||d.destroy(),o=null)};d=o==null?void 0:o.open({class:"modal-message modal-message-type-info",title:l,showButtons:a,showHeader:i,width:r.width||400,fitContent:!0,showMaxButton:!1,render:()=>t.createVNode(gt,t.mergeProps(r,{onAccept:s,onReject:c,onClose:p}),null)})}static info(n,o){const r=t.reactive({type:"info",title:n,detail:o,okButtonText:"知道了",cancelButtonText:""});We.show(r)}static warning(n,o){const r=t.reactive({type:"warning",title:n,detail:o,okButtonText:"知道了",cancelButtonText:""});We.show(r)}static success(n,o){const r=t.reactive({type:"success",title:n,detail:o,okButtonText:"关闭",cancelButtonText:""});We.show(r)}static error(n,o,r){const a=t.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:r,message:n,detail:o}});We.show(a)}static prompt(n,o){const r=t.reactive({type:"prompt",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消"});We.show(r)}static question(n,o,r,a){const i=t.reactive({type:"question",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:r,rejectCallback:a});We.show(i)}}gt.install=e=>{e.component(gt.name,gt),e.provide("FMessageBoxService",We)};const ps={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/mapping-editor.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{}},Ht={fromData:{type:Object,default:{}},toData:{type:Object,default:{}},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},title:{type:String,default:"字段映射编辑器"},modalWidth:{type:Number,default:600},modalHeight:{type:Number,default:500},modelValue:{type:Object,default:{}},onMappingFieldsChanged:{type:Function,default:null}},io=Oe(Ht,ps),ht=t.defineComponent({name:"FMappingEditor",props:Ht,emits:["submitModal","update:modelValue"],setup(e,n){const o='<i class="f-icon f-icon-lookup"></i>',r=t.ref(),a=t.ref(e.modelValue||{}),i=t.ref([]),l=[{field:"sourceField",title:"数据源字段",dataType:"string",editor:{type:"combo-tree",data:e.fromData.dataSource,idField:e.fromData.idField||"id",textField:e.fromData.textField||"name",valueField:e.fromData.valueField||"id",formatter:e.fromData.formatter,editorParams:e.fromData.editorParams,repositoryToken:e.fromData.repositoryToken}},{field:"targetField",title:"目标字段",dataType:"string",editor:{type:"combo-tree",data:e.toData.dataSource,idField:e.toData.idField||"id",textField:e.toData.textField||"name",valueField:e.toData.valueField||"id",formatter:e.toData.formatter,editorParams:e.toData.editorParams,repositoryToken:e.toData.repositoryToken}}];function s(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)}const c=t.computed(()=>{let C=a.value;return typeof a.value=="string"&&(C=JSON.parse(a.value)),Object.keys(C).map(y=>({id:s(),sourceField:y,targetField:C[y]}))}),d=t.computed(()=>{var C;return`共 ${((C=c.value)==null?void 0:C.length)||0} 项`});function p(){var C;(C=r.value)==null||C.addNewDataItem()}function u(){return{sourceField:"",targetField:"",id:s()}}function f(){if(i!=null&&i.value.length){const C=c.value.findIndex(y=>y.id===(i==null?void 0:i.value[0].id));i.value=[],r==null||r.value.removeDataItem(C)}}function x(){We.question("确定要清空所有映射字段吗?","",()=>{var C;a.value={},(C=r.value)==null||C.updateDataSource([])},()=>{})}function b(){const C={};return c.value.forEach(y=>{C[y.sourceField]=y.targetField}),C}t.watch(()=>e.modelValue,C=>{a.value=C});const S={title:e.title,fitContent:!1,height:e.modalHeight,width:e.modalWidth,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:C=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:C=>{const y=b();return a.value=y,n.emit("submitModal",y),n.emit("update:modelValue",y),e.onMappingFieldsChanged&&typeof e.onMappingFieldsChanged=="function"&&e.onMappingFieldsChanged(JSON.stringify(y)),!0}}],reiszeable:!0,draggable:!0};function w(C){i.value=C}return()=>t.createVNode(nt,{modelValue:d.value,"onUpdate:modelValue":C=>d.value=C,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableClear:!1,buttonContent:o,buttonBehavior:"Modal",modalOptions:S},{default:()=>[t.createVNode("div",{class:"h-100 d-flex flex-column"},[t.createVNode("div",{class:"px-2"},[t.createVNode("button",{class:"btn btn-primary",onClick:p},[t.createTextVNode("新增")]),t.createVNode("button",{class:"btn btn-secondary ml-2",onClick:f},[t.createTextVNode("删除")]),t.createVNode("button",{class:"btn btn-secondary ml-3",onClick:x},[t.createTextVNode("清空")])]),t.createVNode("div",{class:" f-utils-fill p-2"},[t.createVNode(Qe,{ref:r,pagination:{enable:!1},summary:{enable:!1},columnOption:{fitColumns:!0},editOption:{editMode:"cell"},rowNumber:!1,showBorder:!0,editable:"true",fit:!0,columns:l,data:c.value,newDataItem:u,onSelectionChange:w},null)])])]})}}),ms={install(e){e.component(ht.name,ht)},register(e,n,o,r){e["mapping-editor"]=ht,n["mapping-editor"]=io}};L.MappingEditor=ht,L.default=ms,L.mappingEditorProps=Ht,L.propsResolver=io,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(G,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js"),require("@vueuse/core"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../filter-bar/index.umd.js"),require("../pagination/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../combo-list/index.umd.js"),require("../property-panel/index.umd.js/src/composition/entity/base-property"),require("../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting"),require("../designer-canvas/index.umd.js/src/composition/dg-control"),require("bignumber.js"),require("../number-spinner/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../combo-tree/index.umd.js"),require("../component/index.umd.js"),require("../color-picker/index.umd.js"),require("../content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../dropdown/index.umd.js"),require("../events-editor/index.umd.js"),require("../field-selector/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../nav/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../search-box/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../weather/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../external-container/index.umd.js"),require("../data-view/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js","@vueuse/core","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../filter-bar/index.umd.js","../pagination/index.umd.js","../dynamic-form/index.umd.js","../combo-list/index.umd.js","../property-panel/index.umd.js/src/composition/entity/base-property","../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting","../designer-canvas/index.umd.js/src/composition/dg-control","bignumber.js","../number-spinner/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../combo-tree/index.umd.js","../component/index.umd.js","../color-picker/index.umd.js","../content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../dropdown/index.umd.js","../events-editor/index.umd.js","../field-selector/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../mapping-editor/index.umd.js","../nav/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../weather/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../schema-selector/index.umd.js","../tree-grid/index.umd.js","../external-container/index.umd.js","../data-view/index.umd.js"],t):(G=typeof globalThis<"u"?globalThis:G||self,t(G["mapping-editor"]={},G.Vue,G.LodashES,G.dynamicResolver,G.FTags,G.FPopover,G.designerCanvas,G.common,G.VueUseCore,null,G.FTransfer$1,G.FTabs,G.FOrder,null,G.FCheckBox$1,G.FFilterBar,G.FPagination,G.FDynamicForm,G.FComboList,null,G.useResponseLayoutEditorSetting,null,G.BigNumber,G.FNumberSpinner,G.FAccordion,G.FAvatar,G.FButtonEdit$1,G.FButtonGroup,G.FCalendar,G.FCapsule,G.FComboTree,G.FComponent,G.FColorPicker,G.FContentContainer,G.FDatePicker,G.FDataGrid$1,G.FDropdown,G.FEventsEditor,G.FFieldSelector,G.FImageCropper,G.FInputGroup$1,G.FLayout,G.FListNav,G.FListView$1,G.FLookup,G.FMappingEditor,G.FNav,G.FNumberRange,G.FPageHeader,G.FPageFooter,G.FProgress,G.FQuerySolution,G.FRadioGroup,G.FRate,G.FResponseToolbar,G.FResponseLayout,G.FResponseLayoutEditorSetting,G.FSearchBox,G.FSection,G.FSmokeDetector,G.FSplitter,G.FStep,G.FSwitch,G.FText,G.FTimePicker,G.FTreeview,G.FUploader,G.FVerifyDetail,G.FWeather,G.FVideo,G.FTextArea,G.FSchemaSelector,G.FTreeGrid$1,null,G.dataView))})(this,function(G,t,je,ut,Ht,co,uo,qe,ft,Ms,fo,po,mo,Is,lt,Gt,Lt,bt,Ct,Bs,ho,Os,$s,st,go,yo,vo,bo,Co,wo,So,xo,_o,Vo,No,ko,Fo,To,Mo,Io,Bo,Oo,$o,jo,Po,Eo,Do,Ro,Ao,Ho,Go,Lo,Wo,qo,zo,Uo,Ko,Xo,Yo,Jo,Qo,Zo,ei,ti,ni,oi,ii,ri,ai,li,si,ci,di,js,H){"use strict";var Fs=Object.defineProperty;var Ts=(G,t,je)=>t in G?Fs(G,t,{enumerable:!0,configurable:!0,writable:!0,value:je}):G[t]=je;var W=(G,t,je)=>Ts(G,typeof t!="symbol"?t+"":t,je);const Wt={},qt={};function wt(e){const{properties:n,title:o,ignore:i}=e,r=i&&Array.isArray(i),a=Object.keys(n).reduce((l,s)=>((!r||!i.find(c=>c==s))&&(l[s]=n[s].type==="object"&&n[s].properties?wt(n[s]):je.cloneDeep(n[s].default)),l),{});return(!r||!i.find(l=>l=="id"))&&(a.id=`${o}-${Date.now()}`),a}function St(e,n={},o){const i=Wt[e];if(i){let r=wt(i);const a=qt[e];return r=a?a({getSchemaByType:St},r,n,o):r,r}return null}function ui(e,n){const o=wt(n);return Object.keys(e).reduce((i,r)=>(i[r]&&je.isPlainObject(i[r])&&je.isPlainObject(e[r])?Object.assign(i[r],e[r]):i[r]=e[r],i),o),o}function fi(e,n){return Object.keys(e).filter(i=>e[i]!=null).reduce((i,r)=>{if(n.has(r)){const a=n.get(r);if(typeof a=="string")i[a]=e[r];else{const l=a(r,e[r],e);Object.assign(i,l)}}else i[r]=e[r];return i},{})}function pi(e,n,o=new Map){const i=ui(e,n);return fi(i,o)}function mi(e={}){function n(d,p,u,f){if(typeof u=="number")return f[d].length===u;if(typeof u=="object"){const w=Object.keys(u)[0],y=u[w];if(w==="not")return Number(f[d].length)!==Number(y);if(w==="moreThan")return Number(f[d].length)>=Number(y);if(w==="lessThan")return Number(f[d].length)<=Number(y)}return!1}function o(d,p,u,f){return f[d]&&f[d].propertyValue&&String(f[d].propertyValue.value)===String(u)}const i=new Map([["length",n],["getProperty",o]]);Object.keys(e).reduce((d,p)=>(d.set(p,e[p]),d),i);function r(d,p){const u=d;return typeof p=="number"?[{target:u,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:u,operator:"getProperty",param:d,value:!!p}]:typeof p=="object"?Object.keys(p).map(f=>{if(f==="length")return{target:u,operator:"length",param:null,value:p[f]};const w=f,y=p[f];return{target:u,operator:"getProperty",param:w,value:y}}):[]}function a(d){return Object.keys(d).reduce((u,f)=>{const w=r(f,d[f]);return u.push(...w),u},[])}function l(d,p){if(i.has(d.operator)){const u=i.get(d.operator);return u&&u(d.target,d.param,d.value,p)||!1}return!1}function s(d,p){return a(d).reduce((w,y)=>w&&l(y,p),!0)}function c(d,p){const u=Object.keys(d),f=u.includes("allOf"),w=u.includes("anyOf"),y=f||w,C=(y?d[y?f?"allOf":"anyOf":"allOf"]:[d]).map(v=>s(v,p));return f?!C.includes(!1):C.includes(!0)}return{parseValueSchema:c}}const te={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"}},hi={},gi={};mi();function $e(e,n,o=new Map,i=(l,s,c)=>s,r={},a=l=>l){return Wt[n.title]=n,qt[n.title]=i,hi[n.title]=r,gi[n.title]=a,(l={})=>{const s=pi(l,n,o),c=Object.keys(e).reduce((d,p)=>(d[p]=e[p].default,d),{});return Object.assign(c,s)}}function ze(e,n){return{customClass:n.class,customStyle:n.style}}function yi(){function e(n,o){const{id:i}=n||{},{dataSource:r}=n||{};return r===void 0?{}:{data:o.getValue(i),"onUpdate:data":(...a)=>{}}}return{resolve:e}}function vi(){function e(n,o){const{dataSource:i}=n||{};return i===void 0?{}:{}}return{resolve:e}}function bi(){function e(n,o){return n.selectItemById(o)}return{selectItemById:e}}function Ci(){function e(n,o){return n.selectItemById(o)}return{selectItemById:e}}const wi=new Map([["appearance",ut.resolveAppearance]]);function Si(e,n,o){return n}const xi={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input 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:"button-edit"},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},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},_i={title:"buttonEdit",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:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}}}}},xt={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},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"}},zt=$e(xt,xi,wi,Si,_i),Vi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},Ni=t.defineComponent({name:"FOverlay",props:Vi,emits:["click"],setup(e,n){const o=t.ref(e.popupContentPosition),i=t.ref(e.host),r=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function a(s){n.emit("click"),s.preventDefault(),s.stopPropagation()}t.computed(()=>{const s=i.value;if(s){const c=s.getBoundingClientRect(),{left:d,top:p,height:u}=c;return{left:d,top:p+u}}return o.value});const l=t.computed(()=>({}));return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var s,c;return[t.createVNode("div",{class:"overlay-container",onClick:d=>a(d),style:r.value},[t.createVNode("div",{style:l.value},[(c=(s=n.slots).default)==null?void 0:c.call(s)])])]}})}});function ki(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Fi(e){const n=document.createElement("div");n.style.display="contents";let o;const i=e.onClickCallback||(()=>{}),r=()=>{i(),o&&o.unmount()};return o=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const a=ki(e);return()=>t.createVNode(Ni,{"popup-content-position":e.popupPosition,host:e.host,onClick:r,backgroundColor:e.backgroundColor},{default:()=>[a&&a()]})}}),document.body.appendChild(n),o.mount(n),o}class Ti{static show(n){return Fi(n)}}const Mi={class:{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},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},reiszeable:{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}};class Me{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const i=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const r=parseInt(i[4],10),a=parseInt(i[5],10);return{x:r,y:a}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new Me(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new Me(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let i=0;i<n.changedTouches.length;i++)if(n.changedTouches[i].target===o)return new Me(n.changedTouches[i].clientX,n.changedTouches[i].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new Me(0,0);if(window){const i=window.getComputedStyle(n);if(i){const r=parseInt(i.getPropertyValue("left"),10),a=parseInt(i.getPropertyValue("top"),10);o.x=isNaN(r)?0:r,o.y=isNaN(a)?0:a}return o}return null}static copy(n){return new Me(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class Ye{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new Ye(0,0);if(window){const i=window.getComputedStyle(n);return i&&(o.width=parseInt(i.getPropertyValue("width"),10),o.height=parseInt(i.getPropertyValue("height"),10)),o}return null}static copy(n){return new Ye(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function Ii(e,n){const o=t.ref(),i=t.ref(),r=t.ref(),a=t.ref(),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref(),p=t.ref(),u=t.ref(),f=t.ref(),w=t.ref(),y=t.ref(e.draggable),S=t.ref(!1);function V(){const B=i.value||document.body,j=window.getComputedStyle(B);if(!j||!o.value)return;const D=Me.getTransformInfo(o.value),E={};c.value&&(E.deltaL=o.value.offsetLeft-c.value.x,E.deltaT=o.value.offsetTop-c.value.y);const R=j.getPropertyValue("position");E.width=B.clientWidth,E.height=B.clientHeight,E.pr=parseInt(j.getPropertyValue("padding-right"),10),E.pb=parseInt(j.getPropertyValue("padding-bottom"),10),E.position=j.getPropertyValue("position"),R==="static"&&(B.style.position="relative"),E.translateX=D.x,E.translateY=D.y,u.value=E}function C(B){if(o.value){a.value=Ye.getCurrent(o.value),l.value=Me.getCurrent(o.value),s.value=a.value?Ye.copy(a.value):null,c.value=l.value?Me.copy(l.value):null,V();const j=B.target.getAttribute("type")||"";d.value={n:!!j.match(/n/),s:!!j.match(/s/),w:!!j.match(/w/),e:!!j.match(/e/)}}}function g(){var B,j,D,E;if(o.value){const R=o.value;d.value&&((d.value.n||d.value.s)&&((B=s.value)!=null&&B.height)&&(R.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((j=s.value)!=null&&j.width)&&(R.style.width=s.value.width+"px"),c.value&&((D=c.value)!=null&&D.x&&(R.style.left=c.value.x+"px"),(E=c.value)!=null&&E.y&&(R.style.top=c.value.y+"px")))}}function v(){const B=e.minHeight?e.minHeight:1,j=e.minWidth?e.minWidth:1;s.value&&c.value&&d.value&&a.value&&(s.value.height<B&&(s.value.height=B,d.value.n&&l.value&&(c.value.y=l.value.y+(a.value.height-B))),s.value.width<j&&(s.value.width=j,d.value.w&&l.value&&(c.value.x=l.value.x+(a.value.width-j))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,l.value&&d.value.n&&(c.value.y=l.value.y+(a.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,d.value.w&&l.value&&(c.value.x=l.value.x+(a.value.width-e.maxWidth))))}function _(){if(i.value){const B=u.value;if(c.value&&s.value&&d.value&&a.value){const j=B.width-B.pr-B.deltaL-B.translateX-c.value.x,D=B.height-B.pb-B.deltaT-B.translateY-c.value.y;d.value.n&&c.value.y+B.translateY<0&&l.value&&(c.value.y=-B.translateY,s.value.height=a.value.height+l.value.y+B.translateY),d.value.w&&c.value.x+B.translateX<0&&l.value&&(c.value.x=-B.translateX,s.value.width=a.value.width+l.value.x+B.translateX),s.value.width>j&&(s.value.width=j),s.value.height>D&&(s.value.height=D)}}}function N(B){if(!r.value||!a.value||!l.value||!d.value)return;B.subtract(r.value);const j=B.x,D=B.y;d.value.n?(c.value.y=l.value.y+D,s.value.height=a.value.height-D):d.value.s&&(s.value.height=a.value.height+D),d.value.e?s.value.width=a.value.width+j:d.value.w&&(s.value.width=a.value.width-j,c.value.x=l.value.x+j),_(),v(),g()}function h(B){if(!p.value)return;const j=Me.fromEvent(B);j&&N(j)}function x(){if(o.value){const{width:B,height:j,x:D,y:E}=o.value.getBoundingClientRect(),R=Me.getTransformInfo(o.value);return{size:{width:B,height:j},position:{x:D-R.x,y:E-R.y}}}return null}function b(B){if(o.value){const j=x();f.value=j}r.value=void 0,a.value=null,l.value=null,s.value=null,c.value=null,d.value=null,p.value=null,document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",b)}function m(){document.addEventListener("mousemove",h),document.addEventListener("mouseup",b)}function F(B){B instanceof MouseEvent&&B.button===2||y.value&&(B.stopPropagation(),B.preventDefault(),r.value=Me.fromEvent(B),p.value=B.target,C(B),m())}function T(B){return o.value=B,t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:j=>F(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:j=>F(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:j=>F(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:j=>F(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:j=>F(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:j=>F(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:j=>F(j)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:j=>F(j)},null)])}function I(B=!0){const j=i.value||document.body,D=Ye.getCurrent(j),E=o.value;B&&(w.value=x(),w.value.transform=E.style.transform),D&&E&&(s.value=D,E.style.height=s.value.height-14+"px",E.style.width=s.value.width-14+"px",E.style.left="7px",E.style.top="7px",E.style.transform="",f.value={size:s.value,position:{x:0,y:0}},y.value=!1,S.value=!0)}function M(){var B,j;if(w.value){const D={width:w.value.size.width||0,height:w.value.size.height||0},E={x:(window.innerWidth-D.width)/2,y:(window.innerHeight-D.height)/2};(B=s.value)==null||B.set(D),(j=c.value)==null||j.set(E);const R=o.value;R.style.height=D.height+"px",R.style.width=D.width+"px",R.style.left=`${E.x}px`,R.style.top=`${E.y}px`,R.style.transform="",f.value={size:D,position:E},y.value=e.draggable,S.value=!1}}function k(){if(o.value){const B=Ye.getCurrent(o.value);if(B){const{width:j,height:D}=B;o.value.style.left=`${(window.innerWidth-j)/2}px`,o.value.style.top=`${(window.innerHeight-D)/2}px`,o.value.style.transform=""}}}function O(){const B=()=>{S.value?I(!1):k()};return window.addEventListener("resize",B),()=>{window.removeEventListener("resize",B)}}const $=O();return{renderResizeBar:T,boundingElement:i,resizedEventParam:f,maximize:I,restore:M,allowDrag:y,isMaximized:S,unWindowResizeHandle:$}}function Bi(e,n,o){const i=t.ref(),r=t.ref(e.draggable),a=t.ref(e.lockAxis),l=t.ref(),s=t.ref(),c=t.ref(!1),d=t.ref(new Me(0,0)),p=t.ref(new Me(0,0)),u=t.ref(new Me(0,0)),f=t.ref(new Me(0,0));t.watch(()=>o.value,x=>{l.value.style.cursor=x?"move":"default"});function w(x,b){if(b.tagName==="BUTTON")return!1;if(b===x)return!0;for(const m in b.children)if(b.children.hasOwnProperty(m)&&w(x,b.children[m]))return!0;return!1}function y(){var F,T;let x=u.value.x+p.value.x,b=u.value.y+p.value.y;a.value==="x"?(x=((F=d.value)==null?void 0:F.x)||0,u.value.x=0):a.value==="y"&&(b=((T=d.value)==null?void 0:T.y)||0,u.value.y=0);const m=`translate3d(${Math.round(x)}px, ${Math.round(b)}px, 0px)`;i.value&&(i.value.style.transform=m),f.value.x=x,f.value.y=b}function S(){if(!s.value||!i.value)return null;const x=s.value.getBoundingClientRect(),b=i.value.getBoundingClientRect(),m={top:x.top<b.top,right:x.right>b.right,bottom:x.bottom>b.bottom,left:x.left<b.left};return m.top||(u.value.y-=b.top-x.top),m.bottom||(u.value.y-=b.bottom-x.bottom),m.right||(u.value.x-=b.right-x.right),m.left||(u.value.x-=b.left-x.left),y(),m}function V(x){x&&(d.value&&x.subtract(d.value),u.value.set(x),y(),S())}function C(x){c.value&&r.value&&(x.stopPropagation(),x.preventDefault(),V(Me.fromEvent(x,l.value)))}function g(){var x;c.value&&(c.value=!1,p.value.add(u.value),u.value.reset(),(x=i.value)==null||x.classList.remove("ng-dragging"),document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",g))}function v(){!c.value&&l.value&&(c.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",C),document.addEventListener("mouseup",g))}function _(){if(i.value){const x=Me.getTransformInfo(i.value);p.value.set(x);return}p.value.reset()}function N(x){if(!o.value||x instanceof MouseEvent&&x.button===2)return;const b=x.target||x.srcElement;l.value!==void 0&&b&&!w(b,l.value)||r.value!==!1&&(document.body.click(),x.stopPropagation(),x.preventDefault(),d.value=Me.fromEvent(x,i.value),_(),v())}function h(x,b,m){if(r.value&&b){if(x)l.value=x;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const F=b.querySelector(e.dragHandle);F&&(l.value=F)}}i.value=b,s.value=m,l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",N)}}return{registerDraggle:h,resetTranslate:_}}function Ut(e,n){if(e){const o=i=>{i.key.toLowerCase()===e.toLowerCase()&&n({event:i,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function Oi(e,n){const o=t.ref(e.enableEsc);let i=null;return o.value?(i=Ut("Escape",r=>{n.emit("esc",{event:r.event,type:"esc"})}),{remove:i}):null}function $i(e,n){const o=t.ref(e.enableEnter);let i=null;return o.value?(i=Ut("Enter",r=>{n.emit("enter",{event:r.event,type:"enter"})}),{remove:i}):null}const Kt=t.defineComponent({name:"FModal",props:Mi,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(e,n){const o=t.ref(e.width||300),i=t.ref(e.height||200),r=t.ref(e.modelValue),a=t.ref(""),l=t.ref(e.class),s=t.ref(e.fitContent),c=t.ref(e.showHeader),d=t.ref(""),p=t.ref(e.showCloseButton),u=t.ref(e.showMaxButton),f=t.ref(!1),w=t.ref(""),y=t.ref(""),S=t.ref(""),V=t.ref(e.showButtons),C=t.ref(e.title),g=t.ref(e.reiszeable),v=t.ref(e.containment||null),_=t.ref();function N(P,X){r.value=!1,n.emit("update:modelValue",!1),X!=null&&n.emit(X?"accept":"cancel"),n.emit("closed",P)}const h=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:P=>{N(P,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:P=>{N(P,!0)}}],x=t.ref(e.buttons&&e.buttons.length?e.buttons:h),b=t.computed(()=>!!d.value),m=t.computed(()=>!!V.value&&!!x.value),F=t.ref(),T=t.ref(),I=t.ref(!1),{renderResizeBar:M,maximize:k,restore:O,boundingElement:$,resizedEventParam:B,allowDrag:j,unWindowResizeHandle:D}=Ii(e),{registerDraggle:E}=Bi(e,n,j);t.watch(()=>e.title,(P,X)=>{P!==X&&(C.value=P)}),t.watch(()=>e.modelValue,(P,X)=>{P!==X&&(r.value=P)}),t.watch(()=>e.showHeader,(P,X)=>{P!==X&&(c.value=P)}),t.watch(()=>e.showButtons,(P,X)=>{P!==X&&(V.value=P)}),t.watch(()=>B.value,(P,X)=>{const re=P||{},q=X||{};JSON.stringify(re)!==JSON.stringify(q)&&n.emit("resize",{newSize:P,oldSize:X})});function R(){const P=document.querySelectorAll(".farris-modal").length;(!P||P-1<=0)&&document.body.classList.remove("modal-open"),_.value&&_.value.classList.remove("show")}const z=t.computed(()=>(r.value?document.body.classList.add("modal-open"):R(),r.value)),ie=t.computed(()=>{const P={modal:!0,"farris-modal":!0,fade:!0};return P["f-modal-fitContent"]=!!s.value,P.show=!!z.value,P}),he=t.computed(()=>{var re;const P={"modal-dialog":!0},X=(re=l.value)==null?void 0:re.split(" ");return X==null||X.reduce((q,xe)=>(q[xe]=!0,q),P),P}),Fe=t.computed(()=>({position:"absolute",top:`${(window.innerHeight-i.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${i.value}px`})),de=t.computed(()=>({"modal-content":!0,"modal-content-has-header":c.value})),_e=t.computed(()=>{const P={display:c.value?"":"none"};return P["pointer-events"]=j.value?"auto":"none",P}),Se=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:I.value})),me=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":w.value==="iframe"}));function ue(){return{}}const ge=t.computed(()=>{const P={textAlgin:S.value},X=ue();return Object.assign(P,X)});function L(P){if(P.stopPropagation(),I.value){I.value=!1,O();return}k(),I.value=!0}async function U(P,X){P.handle&&await P.handle(X,P)&&n.emit("closed",X)}function se(P){P.width&&(o.value=P.width),P.height&&(i.value=P.height),P.buttons&&(x.value=P.buttons),P.title&&(C.value=P.title)}let ee=null,ce=null;t.onMounted(()=>{T.value&&!v.value&&(v.value=T.value.parentElement,$.value=v.value,E(F.value,T.value,$.value)),z.value&&document.body.classList.add("modal-open"),ee=Oi(e,n),ce=$i(e,n)}),t.onUnmounted(()=>{R(),D&&D(),ee&&ee.remove(),ce&&ce.remove()}),n.expose({modalElementRef:T,updateModalOptions:se,close:N,maxDialog:L});function be(){return t.createVNode("ul",null,[f.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),u.value&&t.createVNode("li",{onClick:L,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:Se.value},null)]),p.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:P=>N(P,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function fe(){return t.createVNode("div",{class:"modal-footer",style:ge.value},[x.value&&x.value.map(P=>t.createVNode("button",{name:P.name,type:"button",class:P.class+(P.iconClass?" btn-icontext":""),onClick:X=>{U(P,X)}},[!!P.iconClass&&t.createVNode("i",{class:P.iconClass},null),P.text]))])}function Ce(){return t.createVNode("div",{ref:F,class:"modal-header",style:_e.value},[t.createVNode("div",{class:"modal-title"},[b.value&&t.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[C.value])]),t.createVNode("div",{class:"actions"},[be()])])}function Ie(P){P.stopPropagation()}return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>[z.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>{var P,X;return[t.createVNode("div",{class:ie.value,style:"display: block",ref:_,onClick:Ie},[t.createVNode("div",{id:a.value,class:he.value,style:Fe.value,ref:T},[t.createVNode("div",{class:de.value},[c.value&&Ce(),t.createVNode("div",{class:me.value},[(X=(P=n.slots).default)==null?void 0:X.call(P),w.value==="iframe"&&t.createVNode("iframe",{title:a.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:y.value},null)]),m.value&&fe()]),!s.value&&g.value&&T.value&&M(T.value)])])]}})]})}});function Xt(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ji(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(i,r){t.onUnmounted(()=>{document.body.removeChild(n)});const a=t.ref(),l=t.ref(e.class||""),s=t.ref(!!e.showButtons),c=t.ref(!!e.showHeader),d=t.ref(e.showCloseButton==null?!0:e.showCloseButton),p=t.ref(!0),u=t.ref(e.title||""),f=e.acceptCallback||(()=>{}),w=e.rejectCallback||(()=>{}),y=e.closedCallback||(g=>{}),S=e.resizeHandle||(g=>{}),V=Xt(e),C=g=>{p.value=!1,o.unmount(),y(g)};return t.onMounted(()=>{}),r.expose({modalRef:a}),()=>t.createVNode(Kt,{ref:a,class:l.value,modelValue:p.value,"onUpdate:modelValue":g=>p.value=g,title:u.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":c.value,"show-buttons":s.value,"show-close-button":d.value,"show-max-button":!1,onAccept:f,onCancel:w,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:C,onResize:S},{default:()=>[V&&V(o)]})}});return document.body.appendChild(n),o.mount(n),o}class Pi{constructor(n){W(this,"appContext",null);W(this,"modalRef",t.ref());W(this,"activeModalIndex",t.ref(0));W(this,"modalRefs",{});W(this,"isUseEscCloseModal",t.ref(!1));W(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return ji(o)}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const i=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),r=t.ref(!0),a=i.value.acceptCallback||(()=>{}),l=i.value.rejectCallback||(()=>{}),s=i.value.closedCallback||((C,g)=>{}),c=i.value.resizeHandle||(C=>{});let d;const p=Xt(i.value),u=C=>{var v;r.value=!1;const g=(v=C==null?void 0:C.target)==null?void 0:v.classList.contains("modal_close");s(C,this.isUseEscCloseModal.value?"esc":g?"icon":"button")},f=C=>{u(C),d&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),d=null,this.modalRef.value=null,this.modalRefs){const g=Object.keys(this.modalRefs);g.length>0?this.activeModalIndex.value=Math.max(...g):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},w=C=>{var g;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((g=this.activeModalInstance.value)==null||g.close(C==null?void 0:C.event))},y=()=>t.createVNode(Kt,t.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":C=>r.value=C},i.value,{onAccept:a,onCancel:l,onClosed:f,onResize:c,onEsc:w}),{default:()=>[p&&p()]});return d=(C=>{const g=t.h(y,C);return g.appContext=this.appContext,t.render(g,o),g})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:C=>{i.value={...i.value,...C},d&&t.render(t.cloneVNode(d,{...i}),o)},destroy:f,modalRef:this.activeModalInstance}}}const Ei=Symbol("FModalService");function Yt(e,n){function o(){const i=e.beforeOpen||e.beforeClickButton||null;let r=Promise.resolve(!0);if(i){const a=i(n.value);if(typeof a>"u")return r;typeof a=="boolean"?r=Promise.resolve(a):r=a}return r}return{judgeCanOpen:o}}function Jt(e,n,o,i,r){const a=t.ref(e.buttonBehavior),l=t.ref(e.popupOnInput),s=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:c}=Yt(e,r),d=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),p=t.inject(Ei,null),u=t.ref();async function f(S){if(await c()&&d.value){const V=!!n.slots.default;if(a.value==="Modal"){const C=e.modalOptions,g=p==null?void 0:p.open({...C,render:()=>n.slots.default&&n.slots.default()});u.value=g==null?void 0:g.modalRef}a.value==="Overlay"&&Ti.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),V&&a.value==="Popup"&&i.togglePopup(!0),V&&l.value&&i.hidePopup(),n.emit("clickButton",{origin:S,value:e.modelValue})}}function w(S){n.emit("mouseEnterIcon",S)}function y(S){n.emit("mouseLeaveIcon",S)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:w,onMouseLeaveButton:y,modalRef:u}}function Di(e,n,o,i,r,a){const l=t.ref(!1),s=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:c}=a;function d(w){l.value=w}t.watch(r,()=>{d(!!r.value)});function p(w){const y=!e.readonly&&!e.disable&&e.editable,S=!e.editable;w.stopPropagation(),(y||S)&&(c("",!1),d(!l.value),n.emit("clear"))}function u(w){if(s.value){if(!o.value){d(!1);return}!e.disable&&!e.readonly&&d(!0)}}function f(w){s.value&&d(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:p,onMouseEnterTextBox:u,onMouseLeaveTextBox:f}}function Ri(e,n,o,i,r){const a=t.computed(()=>e.popupOnInput),l=t.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=r,c=t.computed(()=>e.enableTitle?o.value:""),d=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=t.computed(()=>e.readonly||!e.editable),u=t.ref(!1),f=t.computed(()=>!e.disable&&u.value),w=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),y=t.computed(()=>({"input-group":!0,"f-state-disable":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":f.value}));function S(m,F=!0){o.value!==m&&(o.value=m,F&&(n.emit("change",m),n.emit("update:modelValue",m)))}function V(m){s.value=!1,S(m,!0)}t.watch(()=>e.modelValue,m=>{o.value=m});function C(m){u.value=!1,n.emit("blur",m),m.stopPropagation()}function g(m){n.emit("click",m)}function v(m){e.disable||(u.value=!0,p.value||(n.emit("focus",m),l.value&&!s.value&&r.popup()))}function _(m){n.emit("input",m.target.value);const F=m.target.value;i.value=F,o.value!==F&&S(F,e.updateOn==="change"),a.value&&!s.value&&r.popup()}function N(m){m.target.tagName!=="INPUT"&&m.preventDefault(),m.stopPropagation()}function h(m){n.emit("keydown",m)}function x(m){m.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),n.emit("keyup",m)}function b(m){const F=m.target.value;m.stopPropagation(),S(F)}return{hasFocusedTextBox:f,isTextBoxReadonly:p,textBoxClass:w,textBoxPlaceholder:d,textBoxTitle:c,inputGroupClass:y,changeTextBoxValue:S,commitValue:V,onBlurTextBox:C,onClickTextBox:g,onFocusTextBox:v,onInput:_,onKeyDownTextBox:h,onKeyUpTextBox:x,onMouseDownTextBox:N,onTextBoxValueChange:b}}function Qt(e,n,o,i){const r=t.ref(),a=t.ref(!1),{judgeCanOpen:l}=Yt(e,i);function s(){const u=r.value;u&&u.show(o.value)}async function c(u=!1){if(!!n.slots.default){if(!u&&!a.value&&!await l())return;a.value=!a.value,await t.nextTick(),s()}}async function d(u=!1){if(!!n.slots.default){if(!u&&!await l())return;a.value=!0,await t.nextTick(),s()}}function p(){a.value=!1}return{hidePopup:p,popup:d,shouldPopupContent:a,togglePopup:c,popoverRef:r}}function Ai(e,n,o){const i=t.ref(),{isTextBoxReadonly:r,textBoxClass:a,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:c,onClickTextBox:d,onFocusTextBox:p,onInput:u,onKeyDownTextBox:f,onKeyUpTextBox:w,onMouseDownTextBox:y,onTextBoxValueChange:S}=o;return t.onMounted(()=>{var V,C;e.selectOnCreated&&((V=i.value)==null||V.select()),e.focusOnCreated&&((C=i.value)==null||C.focus())}),()=>t.createVNode("input",{ref:i,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:a.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:r.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:n.value,onBlur:c,onChange:S,onClick:d,onFocus:p,onInput:u,onKeydown:f,onKeyup:w,onMousedown:y},null)}function Hi(e,n,o){const i=t.ref(e.separator),{changeTextBoxValue:r}=o,a=t.computed(()=>n.value?n.value.split(i.value).map(s=>({name:s,selectable:!0})):[]);function l(s){r(s.map(c=>c.name).join(i.value),!0)}return()=>t.createVNode(Ht,{id:`${e.id}-tag-editor`,class:"form-control",data:a.value,showClose:!0,showInput:!0,onChange:l},null)}function Gi(e,n,o,i){const{buttonGroupClass:r,onClickButton:a,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:c,showClearButton:d,onClearValue:p}=i,u=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:r.value},[c.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:p},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,d.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:a,onMouseenter:l,onMouseleave:s},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:u,onClick:a,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:u}}function Li(e,n,o){const i=t.ref(e.popupMinWidth),{hidePopup:r,popoverRef:a}=o;return()=>t.createVNode(co,{id:`${e.id}-popover`,ref:a,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:i.value,offsetX:e.popupOffsetX,onHidden:r},{default:()=>{var l,s;return[(s=(l=n.slots).default)==null?void 0:s.call(l)]}})}const nt=t.defineComponent({name:"FButtonEdit",props:xt,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),i=t.ref(e.customClass),r=t.ref(e.modelValue),a=Qt(e,n,o,r),{shouldPopupContent:l,hidePopup:s,togglePopup:c}=a,d=Jt(e,n,o,a,r),p=t.ref(""),u=Ri(e,n,r,p,a),{hasFocusedTextBox:f,commitValue:w,inputGroupClass:y}=u,S=Di(e,n,r,f,p,u),{onMouseEnterTextBox:V,onMouseLeaveTextBox:C}=S,g=t.computed(()=>{const m={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((F,T)=>(F[T]=!0,F),m),m});function v(){return e.multiSelect&&e.inputType==="tag"?Hi(e,r,u):Ai(e,r,u)}let _=v();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{_=v()});const{renderButtonGroup:N,buttonHandleElement:h}=Gi(e,n,d,S),x=Li(e,n,a),b={commitValue:w,elementRef:o,hidePopup:s,shouldPopupContent:l,togglePopup:c,openDialog:()=>{h.value&&e.buttonBehavior==="Modal"&&h.value.click()},getModal:()=>{var m;return e.buttonBehavior==="Modal"?(m=d.modalRef.value)==null?void 0:m.value:null}};return t.onMounted(()=>{o.value.componentInstance=b,window.onresize=()=>{document.body.click()}}),n.expose(b),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:g.value,id:e.id}),[t.createVNode("div",{id:`${e.id}-input-group`,class:y.value,onMouseenter:V,onMouseleave:C},[_(),N()])]),l.value&&x()])}});function Wi(e,n,o){const{buttonGroupClass:i}=o,r=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:i.value},[n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button"},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:r},null):null]),buttonHandleElement:r}}const qi=t.defineComponent({name:"FButtonEdit",props:xt,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),i=t.inject("design-item-context"),r=uo.useDesignerComponent(o,i),a=t.ref(e.customClass),l=t.ref(e.modelValue),s=Qt(e,n,o,l),c=Jt(e,n,o,s,l),d=t.ref(),p=t.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":!0,"f-state-editable":!1,"f-state-readonly":!0}));t.onMounted(()=>{o.value.componentInstance=r}),n.expose(r.value);const u=t.computed(()=>{const w={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((y,S)=>(y[S]=!0,y),w),w}),{renderButtonGroup:f}=Wi(e,n,c);return()=>t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:u.value,id:e.id}),[t.createVNode("div",{class:p.value},[t.createVNode("input",{ref:d,class:"form-control",readonly:!0,placeholder:e.placeholder},null),f()])])}});nt.register=(e,n,o,i)=>{e["button-edit"]=nt,n["button-edit"]=zt},nt.registerDesigner=(e,n,o)=>{e["button-edit"]=qi,n["button-edit"]=zt},qe.withInstall(nt);const Zt=new Map([["appearance",ze],["column","columnOption"]]),en=new Map([]);var tn=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(tn||{}),ct=(e=>(e.String="String",e.DateTime="DateTime",e.Date="Date",e.Enum="Enum",e.Boolean="Boolean",e.Number="Number",e.Text="Text",e.BigNumber="BigNumber",e))(ct||{});const zi="root-viewmodel";class Ui{constructor(n,o){W(this,"formSchemaUtils");W(this,"controlCreatorUtils");this.resolver=n,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils}createComponent(n){const o=this.createComponentRefNode(n),i=this.createComponentNode(n),r=this.createViewModeNode(n),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(i),this.wrapContainerSectionForComponent(o,n)}wrapContainerSectionForComponent(n,o){var a,l;const i=[te["content-container"].type,te["response-layout-item"].type,te["splitter-pane"].type],r=(l=(a=o==null?void 0:o.parentComponentInstance)==null?void 0:a.schema)==null?void 0:l.type;if(r&&i.includes(r)){const s=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance},this.designerHostService);if(s&&s.contents&&s.contents.length){const c=s.contents[0];return c.contents=[n],s}}return n}createComponentRefNode(n){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${n.componentId}-component-ref`,component:`${n.componentId}-component`}),o}createComponentNode(n){const o=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(n);return Object.assign(o,{id:`${n.componentId}-component`,viewModel:`${n.componentId}-component-viewmodel`,componentType:n.componentType,appearance:{class:this.getDataGridComponentClass()},contents:i}),o}createViewModeNode(n){return{id:`${n.componentId}-component-viewmodel`,code:`${n.componentId}-component-viewmodel`,name:n.componentName,bindTo:n.bindTo,parent:zi,fields:this.assembleViewModelFields(n),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}getDataGridComponentClass(){return this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(n){const o=this.formSchemaUtils.getFormSchema().module.templateId;let i;if(o==="double-list-in-tab-template"){const s=this.resolver.getSchemaByType("section");Object.assign(s,{id:n.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),i=s}else{const s=this.resolver.getSchemaByType("content-container");Object.assign(s,{id:n.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=s}const r=this.resolver.getSchemaByType("data-grid"),a=[];Object.assign(r,{id:n.componentId+"-dataGrid",appearance:{class:"f-component-grid f-utils-fill"},fields:a,fieldEditable:n.editable,dataSource:n.dataSource||""}),i.contents=[r];const{selectedFields:l}=n;return l==null||l.forEach(s=>{if(s.$type===tn.ComplexField)return;const c=je.cloneDeep(s),d=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",c,"",n.editable);d&&a.push(d)}),[i]}assembleViewModelFields(n){const o=[],{selectedFields:i}=n;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===ct.Enum||l===ct.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function nn(e,n,o,i){const r=o.parentComponentInstance;if(r){const a=Math.random().toString(36).slice(2,6),l={componentId:`data-grid-${a}`,componentName:`表格-${a}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:"",dataSource:""};return new Ui(e,i).createComponent(l)}else return n}function on(e,n,o){return n}const Ki={$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},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},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"client",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},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},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type"]},_t={changePolicy:{type:String,default:"push"},columns:{type:Array,default:[]},columnOption:{type:Object},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"}},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},selectOnEditingCell:{type:Boolean,default:!1},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},mergeCell:{type:Boolean,default:!1},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!1},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},enableCommands:{type:Boolean,default:!1},commandOption:{type:Object,default:{enable:!1,commands:[]}},appendOnEnterAtLastCell:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},Xi=Object.assign({},_t,{componentId:{type:String,default:""}}),rn=$e(_t,Ki,Zt,nn),Yi=yi(),Ji=bi();var Oe=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Oe||{}),He=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(He||{}),Je=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(Je||{}),ke=(e=>(e[e.none=0]="none",e[e.filterable=1]="filterable",e[e.sortable=2]="sortable",e[e.filtered=4]="filtered",e[e.sorted=8]="sorted",e[e.ascending=16]="ascending",e[e.descending=32]="descending",e))(ke||{}),Vt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(Vt||{});function Qi(){function e(){return t.createVNode("div",{class:"fv-grid-disable"},null)}return{renderDisableMask:e}}function Zi(e,n,o,i,r){const{columnContext:a}=n,{conditions:l,clearCondition:s,removeCondition:c}=i,d=t.ref([]);function p(){const y=[];Array.from(l.value).forEach((S,V)=>{const C={id:S.id,code:S.fieldCode,labelCode:S.fieldCode,name:S.fieldName,editor:{type:S.value.editorType}};y.push(C)}),d.value=y}t.watch(l,()=>p());function u(y){c(`field_filter_${y}`);const S=a.value.primaryHeaderColumns.find(V=>V.field===y);if(S){S.filterValue=null;let V=S.status;V=(V&ke.filtered)===ke.filtered?V^ke.filtered:V,S.status=V}o.refresh(),r.reCalculateVisualDataRows()}function f(){s(),a.value.primaryHeaderColumns.forEach(y=>{y.filterValue=null;let S=y.status;S=(S&ke.filtered)===ke.filtered?S^ke.filtered:S,y.status=S}),o.refresh(),r.reCalculateVisualDataRows()}function w(){return t.createVNode("div",{class:"fv-grid-filter-panel"},[t.createVNode(Gt.FFilterBar,{data:l.value,fields:d.value,mode:"display-only","show-reset":!0,onRemove:u,onReset:f},null)])}return{renderFilterPanel:w}}function er(e,n,o,i,r){const{dropOnGroupPanel:a,groupColumnItems:l}=o,{groupFields:s,shouldGroupingData:c,shouldGroupPanel:d}=i,p=t.ref();function u(y){s.value=y.map(S=>S.value),n.updateDataView(),r.reCalculateVisualDataRows()}function f(y){y.preventDefault()}function w(){return c.value&&d.value&&t.createVNode("div",{class:"fv-grid-group-panel",onDrop:a,onDragover:f},[l.value&&t.createVNode(t.resolveComponent("f-tags"),{ref:p,style:"margin:0.375rem","tag-type":"default",data:l.value,"tag-style":"capsule","show-close":!0,onChange:u},null)])}return{renderGroupPanel:w}}function Nt(e,n){var w;const o=String(Date.now()),i=((w=e.rowOption)==null?void 0:w.height)||28,r=t.ref(n.value.primaryColumnsWidth);function a(y){const S={};return y.reduce((V,C,g)=>{const v=g<y.length-1?y[g+1]:null;return g===0&&(V[C.field]={left:0}),C.actualWidth!==void 0&&(V[C.field].width=C.actualWidth),v&&(V[v.field]={left:V[C.field].left+(C.actualWidth||0)}),V},S),S}function l(y,S,V){const C=i*(V+1),v=S[y.field].left-C+(S[y.field].width||0),_=y.parent.height?`${y.parent.height}px`:"";return{left:`${C}px`,width:`${v}px`,height:`${_}`}}function s(y,S,V){return{right:"0px",height:`${y.parent.height?`${y.parent.height}px`:""}`}}function c(y,S){const V=y.parent.height?`${y.parent.height}px`:"";return{left:`${S[y.field].left}px`,height:`${V}`,width:isNaN(Number(S[y.field].width))?"100%":`${S[y.field].width}px`}}function d(y,S,V){const g=(S.spanned||[]).reduce((_,N)=>_+(N.parent.height||0),0)+(y.height||0);return{top:`${y.top}px`,left:`${V[S.field].left}px`,width:`${V[S.field].width}px`,height:`${g}px`,padding:`calc(${g/2}px - 1rem) 0`}}function p(y,S){return`${o}_${y.type}_r_${y.index}_c_${S}_${y.refreshKey||""}`}function u(y){return`${o}_${y.type}_r_${y.index}_${y.refreshKey||""}`}function f(y){const S=y.height?`${y.height}px`:"";return{top:`${y.top}px`,width:isNaN(r.value)?"100%":`${r.value}px`,height:`${S}`}}return t.watch(n,()=>{r.value=n.value.primaryColumnsWidth}),{calculateCellPositionInRow:a,cellKey:p,cellPosition:c,groupCellPosition:l,rowKey:u,rowPosition:f,rowSpanCellPosition:d,summaryCellPosition:s}}function tr(e,n,o){const{hasChildrenField:i}=o,r=t.ref("#9399a0"),a=t.ref(28);function l(){return[].concat(...n.value.filter(f=>f.raw.__fv_descendant_index__.length!==0).map(f=>[...f.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((f,w)=>Number(f)-Number(w))}function s(p){const u=new Array(n.value.length).fill(0);if(e.showLines){const f=l();n.value.forEach((w,y)=>{const S=f.includes(y),V=w.raw[i.value];u[y]=`repeating-linear-gradient(90deg, ${r.value} 0 1px, transparent 0px 2px) ${V?"-10px":"0px"} ${a.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${r.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${S?"50%":"100%"} no-repeat`}),u[0]=""}return u[p]}function c(p,u,f){return f[p].parents.set(p,!0).forEach(y=>{f[y].childsLength=f[y].childWithLines.filter(S=>u[S].visible).length}),u}function d(p){const w=p.raw.__fv_parent_index__===void 0||p.raw.__fv_parent_index__===-1?0:8,y=0,S=p.raw[i.value],V=p.visible?{left:`${p.layer*10+p.layer*w+y}px`,background:s(p.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return S||(V.paddingLeft="2rem"),V}return{hierarchyCellContentStyle:d,handleCollapsedPaddingBottom:c}}function nr(e,n,o){const i=t.ref(e.iconField);function r(a,l){if(i.value)return a.raw[e.iconField];let s="";return a.raw[o.value]!==!0?s=n.value.leafnodes:s=a.collapse?n.value.fold:n.value.unfold,s}return{treeNodeIconsClass:r}}function kt(){function e(o,i){const r=o.pre;if(r){const a=o.visible?(r.__fv_data_position__||0)+(r.__fv_data_height__||0):r.__fv_data_position__;o.top=a,i.__fv_data_position__=a}else o.top=0,i.__fv_data_position__=0}function n(o,i,r){if(o){const a=i.parent;i.cellHeight!==o.offsetHeight&&(i.cellHeight=o.offsetHeight),i.cellHeight&&i.cellHeight>(a.height||0)&&(a.height=i.cellHeight,r.__fv_data_height__=a.height),e(a,r)}}return{updateRowPosition:e,updateVisualInfomation:n}}function or(e,n,o,i,r,a){const{dataView:l,fold:s,hasRealChildren:c,unFold:d}=i,{collapseField:p,hasChildrenField:u}=r,{updateRowPosition:f}=kt();function w(V,C){const g=C[V].layer;let v=V+1;for(;v<C.length&&C[v].layer>g;)v++;return v-1}function y(V,C){o.value[V].collapse=!o.value[V].collapse,o.value[V].raw[p.value]=o.value[V].collapse,o.value[V].raw[u.value]=c(o.value[V].raw);const g=o.value[V].collapse;let v=!1,_=V;for(;_<o.value.length;){const h=o.value[_];if((typeof h.raw.__fv_parent_index__=="number"?Number(h.raw.__fv_parent_index__):-1)>C)h.visible=!g,h.raw.__fv_visible__=h.visible,h.collapse&&(_=w(_,o.value)),v=!0;else if(v){_++;break}_++}let N=V;for(;N<o.value.length;){const h=o.value[N];f(h,h.raw),N++}}function S(V){if(V.raw[u.value]){const g=typeof V.raw.__fv_parent_index__=="number"?Number(V.raw.__fv_parent_index__):-1;y(Number(V.raw.__fv_index__),g)}n.emit("expandNode",{row:V})}return{toggleTreeNode:S}}function ir(e,n,o,i,r,a,l,s,c,d,p){const{onClickCell:u}=a,{gridRowClass:f,onClickRow:w,onMouseoverRow:y,onMouseoutRow:S}=s,{clearSelection:V,enableMultiSelect:C,select:g,unSelect:v,isSelectingHirarchyItem:_,multiSelectOnClickRow:N,multiSelectOnlyOnCheck:h,selectItem:x,toggleSelectItem:b}=c;t.ref(e.cellHeight);const m=t.ref(e.treeNodeIconsData||{}),{hasChildrenField:F,shouldShowCheckBox:T,shouldShowIcon:I}=l,{toggleTreeNode:M}=or(e,n,i,r,l),{toggleSelectHierarchyItem:k}=d,{cellKey:O,cellPosition:$,rowKey:B,rowPosition:j}=Nt(e,o),{hierarchyCellContentStyle:D}=tr(e,i,l),{treeNodeIconsClass:E}=nr(e,m,F);function R(L,U){const se=L.raw[F.value];return{"fv-tree-node-toggle":se&&L.collapse,"fv-tree-node-toggle-minus":se&&!L.collapse}}function z(L,U){L.stopPropagation(),M(U)}function ie(L,U){return t.createVNode("div",{class:R(L),onClick:se=>z(se,L)},null)}function he(L,U){return I.value&&t.createVNode("div",{id:"treeNodeIcons",class:E(L,U)},null)}function Fe(L){C.value?(L.checked?g(L):v(L),k(L)):x(L)}function de(L,U){return T.value&&t.createVNode(lt.FCheckBox,{id:"checkbox_for_"+O(L,U.index),indeterminate:L.indeterminate,checked:L.checked,"onUpdate:checked":se=>L.checked=se,onChange:()=>Fe(L)},null)}function _e(L,U){return t.createVNode("span",{title:U.data},[U.mode===Oe.editing?U.getEditor(U):U.formatter?U.formatter(U,L):U.data!=null?U.data.toString():U.data])}function Se(L,U,se){return t.createVNode("div",{ref:U.setRef,key:O(L,U.index),class:"fv-grid-hierarchy-cell",style:$(U,se)},[t.createVNode("div",{style:D(L)},[ie(L),he(L,U),de(L,U),_e(L,U)])])}function me(L,U,se){return t.createVNode("div",{ref:U.setRef,key:O(L,U.index),class:"fv-grid-cell",style:$(U,se),onClick:ee=>u(ee,U)},[U.mode===Oe.editing?U.getEditor(U):U.formatter?U.formatter(U,L):U.data!=null?U.data.toString():U.data])}function ue(L,U){return U==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===L.field||U==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===L.field}function ge(L,U,se="primary"){return t.createVNode("div",{ref:L.setRef,key:B(L),class:f(L),style:j(L),onMouseover:ee=>y(ee,L),onMouseout:ee=>S(ee,L),onClick:ee=>w(ee,L)},[Object.values(L.data).filter(ee=>U[ee.field]&&ee.rowSpan===1).map((ee,ce)=>ue(ee,se)?Se(L,ee,U):me(L,ee,U))])}return{renderDataRow:ge}}function an(e,n,o){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:a}=o;function l(){return a.value&&t.createVNode("div",{class:"fv-grid-horizontal-scroll"},[t.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:s=>r(s,n,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function rr(e,n,o,i,r){const{currentPage:a,pageSize:l,pageList:s,total:c,showPageIndex:d,showPageList:p,mode:u}=r;function f({pageIndex:S,pageSize:V}){o.navigatePageTo(S),i.resetScroll(),n.emit("pageIndexChanged",{pageIndex:S,pageSize:V})}function w({pageIndex:S,pageSize:V}){o.changePageSizeTo(V),i.resetScroll(),n.emit("pageSizeChanged",{pageIndex:S,pageSize:V})}t.onMounted(()=>{});function y(){return t.createVNode("div",{class:"fv-datagrid-pagination"},[t.createVNode(Lt,{mode:"default",currentPage:a.value,"onUpdate:currentPage":S=>a.value=S,pageSize:l.value,"onUpdate:pageSize":S=>l.value=S,showPageList:p.value,showPageNumbers:d.value,totalItems:c.value,pageList:s.value,onPageIndexChanged:f,onPageSizeChanged:w},null)])}return{renderDataGridPagination:y}}function ln(e,n,o,i,r){const{isSelectingHirarchyItem:a,multiSelectOnClickRow:l,multiSelectOnlyOnCheck:s,selectItem:c,toggleSelectItem:d}=o,{onMouseoverRow:p,sidebarRowClass:u}=n,{showRowNumer:f,showSidebarCheckBox:w,sidebarCellPosition:y,rowKey:S,cellKey:V}=i,{gridSideStyle:C}=r;function g(b){b.stopPropagation()}function v(b){return t.createVNode("div",{class:"d-inline-flex "},[t.createVNode("div",{class:"custom-control custom-checkbox f-checkradio-single",style:"margin:0;padding-left:0.5rem"},[t.withDirectives(t.createVNode("input",{id:V(b),title:V(b),type:"checkbox","onUpdate:modelValue":m=>b.checked=m,class:"custom-control-input"},null),[[t.vModelCheckbox,b.checked]]),t.createVNode("label",{class:"custom-control-label",for:V(b),onClick:g},null)])])}function _(b){return t.createVNode("div",{class:"fv-grid-sidebar-row-number justify-content-center",style:"padding:0",onMouseover:m=>p(m,b)},[t.createVNode("div",{title:b.dataIndex,class:{"text-center":!0,"text-truncate":e.rowNumber.showEllipsis,"w-100":e.rowNumber.showEllipsis}},[b.dataIndex])])}function N(b,m,F){a.value?l.value?d(F):c(F):s.value||l.value?d(F):c(F)}function h(b){return(w.value||f.value)&&b.value.map(m=>t.createVNode("div",{key:S(m),class:u(m),style:y(m),onClick:F=>N(F,b,m)},[w.value&&!e.hierarchy&&v(m),f.value&&_(m)]))}function x(b){return t.createVNode("div",{class:"fv-grid-content-side"},[t.createVNode("div",{class:"fv-grid-side",style:C.value},[h(b)])])}return{renderDataGridSidebar:x}}function ar(e,n,o){const{columnContext:i}=o,r=t.ref(e.summary),a=t.computed(()=>{const s=r.value;return s&&s.enable&&s.groupFields&&s.groupFields.length>0});function l(){return a.value&&t.createVNode("div",{class:"fv-datagrid-summary"},[t.createVNode("div",{class:"fv-datagird-summary-panel"},[t.createVNode("span",{class:"fv-datagrid-summary-title"},[t.createTextVNode("当页合计")]),t.createVNode("div",{class:"fv-datagrid-summary-content"},[i.value.summaryColumns.map(s=>t.createVNode("div",{class:"fv-datagrid-summary-field"},[t.createVNode("span",{class:"fv-datagrid-summary-field-title"},[`${s.title}:`]),t.createVNode("span",{class:"fv-datagrid-summary-field-value"},[n.summaries.get(s.field)])]))])])])}return{renderDataGridSummery:l}}function sn(e,n,o){const{verticalScrollThumbStyle:i,onMouseDownScrollThumb:r,shouldShowVirticalScrollbar:a}=o;function l(){return a.value&&t.createVNode("div",{class:"fv-grid-vertical-scroll"},[t.createVNode("div",{class:"fv-grid-vertical-scroll-thumb",style:i.value,onMousedown:s=>r(s,n,"vertical")},null)])}return{renderVerticalScrollbar:l}}function lr(){function e(i,r){switch(i.command){case"edit":case"remove":return r.status===He.initial;case"accept":case"cancel":return r.status===He.editing;default:return!i.hidden}}function n(i,r,a){switch(i.onClick(r,a.dataIndex,a),i.command){case"edit":a.status,He.editing;break;case"accept":case"cancel":a.status,He.initial;break}}function o(i,r){return t.createVNode("div",null,[i.commands&&i.commands.map(a=>e(a,r)&&t.createVNode(t.resolveComponent("f-button"),{class:"ml-2",type:a.type,size:a.size||"small",onClick:l=>n(a,l,r)},{default:()=>[t.createTextVNode(" "),a.text,t.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function sr(e){function n(){return t.createVNode("div",{class:"d-flex flex-column f-datagrid-norecords"},[t.createVNode("div",{class:"f-datagrid-norecords-content",style:"margin: 0;width: 100%;position: relative; top: 0"},[t.createTextVNode(" "),e.slots.empty&&e.slots.empty()||"暂无数据"])])}return{renderEmpty:n}}function cn(e){const n=t.ref(e.minHeight),o=t.ref(e.minWidth),i=t.ref(e.height),r=t.ref(e.width),a=t.computed(()=>i.value<=0?0:Math.max(i.value,n.value)),l=t.computed(()=>r.value<=0?0:Math.max(r.value,o.value));return t.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([c,d,p,u])=>{n.value=Number(p),o.value=Number(u),i.value=Number(c),r.value=Number(d)}),{containerStyleObject:t.computed(()=>({height:a.value>0?`${a.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":""}))}}function dn(e){const o={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},i=t.ref(o);function r(){i.value={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]}}const a=t.ref(e.summary),l=t.computed(()=>{const v=a.value;return(v==null?void 0:v.groupFields)||[]});function s(){i.value.rightColumns.forEach(N=>{N.showSetting=!1}),i.value.primaryColumns.forEach(N=>{N.showSetting=!1});const v=i.value.rightColumns.filter(N=>N.visible),_=i.value.primaryColumns.filter(N=>N.visible);v.length>0?v[v.length-1].showSetting=!0:_.length>0&&(_[_.length-1].showSetting=!0)}function c(v){r();const _=new Map;return l.value&&l.value.reduce((N,h)=>(N.set(h,!0),N),_),v.reduce((N,h)=>(h.visible=h.visible!==!1,h.fixed==="left"?(i.value.leftColumns.push(h),i.value.leftColumnsMap.set(h.field,h),i.value.leftColumnsWidth+=h.actualWidth):h.fixed==="right"?(i.value.rightColumns.push(h),i.value.rightColumnsMap.set(h.field,h),i.value.rightColumnsWidth+=h.actualWidth):(i.value.primaryColumns.push(h),i.value.primaryColumnsMap.set(h.field,h),i.value.primaryColumnsWidth+=h.actualWidth),_.has(h.field)&&i.value.summaryColumns.push(h),N),i),s(),i}c(e.columns);const d=t.computed(()=>i.value.leftColumns.length>0),p=t.computed(()=>i.value.rightColumns.length>0);function u(v,_){return _.sortable&&_.sort&&_.sort!=="none"&&v.push(_),v}function f(v,_){return v.sortOrder=v.sortOrder||0,_.sortOrder=_.sortOrder||0,v.sortOrder===_.sortOrder?0:v.sortOrder<_.sortOrder?-1:1}function w(v,_){return v.sortOrder=v.sortOrder||0,_.sortOrder=_.sortOrder||0,v.sortOrder===_.sortOrder?0:v.sortOrder<_.sortOrder?1:-1}function y(v,_){return _.filterable&&v.push(_),v}function S(){const v=[];return i.value.leftColumns.reduce(y,v),i.value.primaryColumns.reduce(y,v),i.value.rightColumns.reduce(y,v),v}function V(){const v=[];i.value.leftColumns.reduce(u,v),i.value.primaryColumns.reduce(u,v),i.value.rightColumns.reduce(u,v);const _=Math.max(...v.map(N=>N.sortOrder||0));return v.sort(w).map(N=>{const h=N.sortOrder||_+1;return N.sortOrder=h,N}).sort(f).map((N,h)=>{const x=h+1;return N.sortOrder=x,N})}function C(v,_,N){const h=v.map(x=>{const b=N.getSorterByColumn(x),m=x.sort==="asc",F=x.sort==="desc",T=m?b.ascend:F?b.decend:void 0;return{field:x.field,compare:T}});_.setSorters(h)}function g(v,_){const N=V();C(N,v,_)}return{applyColumnSorter:g,collectionFilterableColumns:S,applySortableColumns:C,collectionSortableColumns:V,columnContext:i,hasLeftFixedColumn:d,hasRightFixedColumn:p,updateColumnRenderContext:c,updateColumnSettingIcon:s}}const cr=[{name:"是",value:!0},{name:"否",value:!1}];function dr(e){return e.filter=e.filter||function(n){return String(e.filterValue).split(",").includes(String(n[e.field]))},t.createVNode("div",null,[t.createVNode(t.resolveComponent("f-checkbox-group"),{modelValue:e.filterValue,"onUpdate:modelValue":n=>e.filterValue=n,"enum-data":cr},null)])}const ur=t.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function fr(e){const n=t.ref(!1);return e.filter=e.filter||function(o){const i=new Date(new Date(e.filterValue).toLocaleDateString()).valueOf();return new Date(new Date(o[e.field]).toLocaleDateString()).valueOf()===i},t.createVNode("div",{style:"display:flex;flex-direction:column;"},[t.createVNode("div",{style:"display:flex;margin-bottom:6px;"},[t.createVNode("label",{style:"margin-right:8px"},[t.createTextVNode("按区间筛选")]),t.createVNode(t.resolveComponent("f-switch"),{modelValue:n.value,"onUpdate:modelValue":o=>n.value=o,size:"small"},null)]),t.createVNode(t.resolveComponent("f-date-picker"),{modelValue:e.filterValue,"onUpdate:modelValue":o=>e.filterValue=o},null),t.createVNode(t.resolveComponent("f-tags"),{style:"margin-top:10px",data:ur.value,selectable:!0,"tag-style":"capsule"},null)])}function pr(e){e.filter=e.filter||function(o){const i=Number.parseFloat(e.filterValue),r=Number.parseFloat(o[e.field]);return isNaN(i)?isNaN(r):i===r};function n(o){e.filterValue=o}return t.createVNode("div",null,[t.createVNode(t.resolveComponent("f-number-spinner"),{"can-null":!0,precision:"2",value:e.filterValue,onValueChange:n},null)])}function mr(e,n,o,i,r,a){e.filterHistory=e.filterHistory||r.getFilterHistory(e),e.filter=e.filter||function(f){return(f[e.field]||"").startsWith(e.filterValue)};function l(f,w){r.removeFilterHistory(e,f.name),e.filterHistory=r.getFilterHistory(e)}function s(f){e.filterValue=f.name}function c(f){e.filterHistory=f}const d=i.rawView.value.reduce((f,w,y)=>(f.push(w[e.field]),f),[]),u=[...new Set(d)].map((f,w)=>({id:w,name:f}));return t.createVNode("div",{style:"display:flex;flex-direction:column;"},[t.createVNode(t.resolveComponent("f-search-box"),{modelValue:e.filterValue,"onUpdate:modelValue":f=>e.filterValue=f,"popup-host":n.value,"popup-right-boundary":o.value,"popup-offset-x":a.offsetX,"recommended-data":u},null),t.createVNode(t.resolveComponent("f-tags"),{style:"margin-top:10px","tag-type":"default",data:e.filterHistory,"show-close":!0,selectable:!0,onRemove:l,onSelectionChange:s,onChange:c},null)])}function hr(e,n,o,i,r,a){e.filter=e.filter||function(w){return String(e.filterValue).split(",").includes(String(w[e.field]))};const l=",",s=i.rawView.value.reduce((w,y,S)=>(w.push(y[e.field]),w),[]),d=[...new Set(s)].map((w,y)=>({id:y,name:w}));function p(w){return(w==null?void 0:w.split(l))||[]}function u(w){return w.map(S=>S.name).join(l)}function f(w){e.filterValue=u(w)}return t.createVNode(t.resolveComponent("f-list-view"),{data:d,"multi-select":!0,"multi-select-mode":"OnCheckAndClick","id-field":"name",view:"SingleView",header:"Search",size:"Small","selection-values":p(e.filterValue),onSelectChange:w=>f(w)},{default:()=>[t.createTextVNode(" ")]})}function gr(e){t.ref("请输入关键词"),t.ref('<i class="f-icon f-icon-search"></i>');const n=[{name:"发票类型",checked:!1},{name:"发票代码",checked:!1},{name:"开票日期",checked:!1},{name:"票价(燃油附加费)",checked:!1},{name:"税收分类编号",checked:!1},{name:"不含税单价",checked:!1},{name:"往来单位",checked:!1},{name:"商品服务描述",checked:!1},{name:"项目负责人",checked:!1},{name:"所属单位",checked:!1}];return t.createVNode(t.resolveComponent("f-list-view"),{data:n,"multi-select":!0,view:"SingleView",size:"Small"},{default:()=>[t.createTextVNode(" ")]})}function un(e,n,o,i,r){const a=new Map([["boolean","boolean-filter"],["date","date-filter"],["datetime","date-filter"],["number","numeric-filter"],["string","text-filter"],["text","text-filter"],["enum","enum-filter"],["reference","list-filter"]]),l=new Map([["boolean-filter",dr],["date-filter",fr],["enum-filter",hr],["list-filter",gr],["numeric-filter",pr],["text-filter",mr]]);function s(c){var f,w;const d=((f=c.column)==null?void 0:f.dataType)||"string",p=((w=c.column)==null?void 0:w.filter)||a.get(d)||"text-editor",u=l.get(p);if(u)return u(c,e,n,o,i,r)}return{getFilterEditor:s}}function fn(e){const o=t.ref(e.commandOption.enable||!1),i=t.ref(e.commandOption.commands||[]);function r(a){if(o.value&&!(a.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};a.value.push(s)}}return{applyCommands:r}}function pn(e,n,o,i,r,a,l){const{columnContext:s}=o,{getGridHeaderCells:c}=r,{groupFields:d}=a,p=t.ref(-1),u=t.ref(!1),f=t.computed(()=>d.value&&d.value.map(g=>{var v;return{name:((v=s.value.primaryColumnsMap.get(g))==null?void 0:v.title)||g,value:g}}));function w(g,v,_){var N,h,x;if(g.stopPropagation(),v){const b=`${(N=v.column)==null?void 0:N.title}:${(h=v.column)==null?void 0:h.field}`;(x=g.dataTransfer)==null||x.setData("Text",b),setTimeout(()=>{p.value=_,u.value=!0})}}function y(g,v){if(g.preventDefault(),p.value!==v){const{primaryColumns:_}=s.value,N=_[p.value],h=_;h.splice(p.value,1),h.splice(v,0,N),s.value.primaryHeaderColumns=Array.from(c(h).values()),p.value=v}}function S(g,v){g.preventDefault(),g.dataTransfer&&(g.dataTransfer.dropEffect="move")}function V(g,v){u.value=!1,i.updateDataView(),l.reCalculateVisualDataRows()}function C(g){var _;g.preventDefault(),g.stopPropagation();const v=(_=g.dataTransfer)==null?void 0:_.getData("Text");if(v){const N=v.split(":");N[0];const h=N[1];a.groupFields.value.push(h)}i.updateDataView(),l.reCalculateVisualDataRows()}return{dragstart:w,dragenter:y,dragover:S,dragend:V,dropOnGroupPanel:C,isDragging:u,groupColumnItems:f}}function mn(e,n,o,i,r){const{getGridHeaderCells:a}=r,l=120,s=50,c=t.computed(()=>{var b;return((b=e.rowNumber)==null?void 0:b.enable)||!1}),d=t.computed(()=>{var b,m;return((b=e.selection)==null?void 0:b.multiSelect)||((m=e.selection)==null?void 0:m.showCheckbox)||!1}),p=t.computed(()=>{var b;return 0+(c.value?((b=e.rowNumber)==null?void 0:b.width)||32:0)+(d.value?s:0)}),u=t.computed(()=>{var b;return(b=e.columnOption)==null?void 0:b.fitColumns}),f=t.computed(()=>{var b;return u.value&&((b=e.columnOption)==null?void 0:b.fitMode)||"average"});function w(b,m,F){const T=parseInt(b.width,10)/100;return F*T}function y(b,m,F){return typeof b.width=="string"?w(b,m,F):b.width||l}function S(b,m){const F=[],T=[];let I=0;b.value.primaryColumns.filter(O=>O.visible).forEach(O=>{typeof O.width=="string"?T.push(O):(O.width=O.width||l,I+=O.width,F.push(O))});const M=m*(F.length/b.value.primaryColumns.filter(O=>O.visible).length);F.forEach(O=>{const $=M*(O.width/I);O.actualWidth=$,b.value.primaryColumnsWidth+=O.actualWidth});const k=m-M;T.forEach(O=>{const $=w(O,b.value,k);O.actualWidth=$,b.value.primaryColumnsWidth+=O.actualWidth})}function V(b,m){const F=m/(b.value.primaryColumns.filter(T=>T.visible).length||1);b.value.primaryColumns.filter(T=>T.visible).forEach(T=>{T.actualWidth=F,b.value.primaryColumnsWidth+=T.actualWidth})}function C(b,m){const F=[],T=[],I=new WeakMap;let M=0,k=0;if(b.value.primaryColumns.filter($=>$.visible).forEach($=>{if(typeof $.width=="string"){const B=w($,b.value,m);I.set($,B),M+=B,T.push($)}else $.width=$.width||l,k+=$.width,F.push($)}),m-M>k){const $=m-M;T.forEach(B=>{B.actualWidth=I.get(B)||l,b.value.primaryColumnsWidth+=B.actualWidth}),F.forEach(B=>{B.actualWidth=$*(B.width/k),b.value.primaryColumnsWidth+=B.actualWidth})}else S(b,m)}function g(b,m){b.value.primaryColumns.filter(F=>F.visible).forEach(F=>{F.actualWidth=y(F,b.value,m),b.value.primaryColumnsWidth+=F.actualWidth})}const v={average:V,expand:C,none:g,percentage:S};function _(b){b.value.leftHeaderColumns=Array.from(a(b.value.leftColumns.filter(m=>m.visible)).values()),b.value.primaryHeaderColumns=Array.from(a(b.value.primaryColumns.filter(m=>m.visible)).values()),b.value.rightHeaderColumns=Array.from(a(b.value.rightColumns.filter(m=>m.visible)).values())}function N(b){b.value.leftColumnsWidth=0,b.value.primaryColumnsWidth=0,b.value.rightColumnsWidth=0,b.value.leftColumns.filter(m=>m.visible).forEach(m=>{b.value.leftColumnsWidth+=m.actualWidth||0}),b.value.primaryColumns.filter(m=>m.visible).forEach(m=>{b.value.primaryColumnsWidth+=m.actualWidth||0}),b.value.rightColumns.filter(m=>m.visible).forEach(m=>{b.value.rightColumnsWidth+=m.actualWidth||0}),b.value=Object.assign({},b.value)}function h(b,m,F){var B;let T=0;const I=b.value.primaryColumns,M=b.value.rightColumns;b.value.rightColumns.filter(j=>j.visible).forEach(j=>{j.actualWidth=y(j,b.value,m),T+=j.actualWidth});const k=F-T,O=v[f.value];if(O&&O(b,k),b.value.primaryColumnsWidth+T<=F)return b.value.primaryColumns=[...I,...M],b.value.primaryColumnsWidth+=T,b.value.rightColumns=[],b.value.rightColumnsWidth=0,!0;const $=new Map;return $.set("primary",[]),$.set("right",[]),b.value.primaryColumns.reduce((j,D)=>{var E,R;return D.fixed==="right"?(E=j.get("right"))==null||E.push(D):(R=j.get("primary"))==null||R.push(D),j},$),(B=$.get("right"))!=null&&B.length&&(b.value.primaryColumns=[...$.get("primary")||[]],b.value.rightColumns=[...$.get("right")||[]]),b.value.primaryColumnsWidth=0,b.value.rightColumnsWidth=0,!1}function x(){if(o.value){n.value.leftColumnsWidth=0,n.value.primaryColumnsWidth=0,n.value.rightColumnsWidth=0;const b=o.value.clientWidth-p.value;n.value.leftColumns.filter(F=>F.visible).forEach(F=>{F.actualWidth=y(F,n.value,b),n.value.leftColumnsWidth+=F.actualWidth});const m=b-n.value.leftColumnsWidth;if(h(n,b,m))i.value=m;else{n.value.rightColumns.filter(I=>I.visible).forEach(I=>{I.actualWidth=y(I,n.value,b),n.value.rightColumnsWidth+=I.actualWidth});const F=b-n.value.leftColumnsWidth-n.value.rightColumnsWidth,T=v[f.value];T&&T(n,F),i.value=F}_(n),n.value=Object.assign({},n.value)}}return t.watch(()=>{var b;return(b=e.columnOption)==null?void 0:b.fitColumns},(b,m)=>{b!==m&&b&&x()}),t.watch(f,(b,m)=>{b!==m&&u.value&&x()}),{calculateColumnHeaders:_,calculateColumnsSize:x,calculateColumnsWidth:N}}function hn(e,n){var d;const o=t.ref((d=e.columnOption)==null?void 0:d.groups);function i(p,u,f,w,y){const S={actualWidth:0,children:[],depth:1,field:p.field,layer:1,left:0,parent:f,resizable:!1,title:p.title||"",status:ke.none,popoverRef:t.ref(),showPopover:!1,column:null,filterValue:null,sortType:"none"},V=w||S;if(p.group){let C=1;p.group.reduce((g,v)=>{if(typeof v=="string"){const _=u.get(v);_&&(y.fieldToRootMap.set(v,V),g.actualWidth+=_.actualWidth,g.children.push(_))}else{const _=i(v,u,g,V,y);C=Math.max(C,_.depth),g.actualWidth+=_.actualWidth,g.children.push(_)}return g},S),S.depth+=C}return n.value.headerDepth=Math.max(n.value.headerDepth,S.depth),S}function r(p){const u={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((f,w)=>{const y=i(w,p,null,null,u);return f.groupedCells.set(w.field,y),f},u),u}function a(p){if(!p||p.length===0)return 0;const u=p[0];return u.children&&u.children.length>0&&(u.left=a(u.children)),u.left}function l(p,u){const f=n.value.headerDepth;p.forEach(w=>{w.layer=u?u.layer+1:1;const y=w.children&&w.children.length===0;w.depth=y?f-(w.layer-1):1,w.left=y?w.left:a(w.children),w.children&&l(w.children,w)})}function s(p,u){const f=new Map;return p.forEach(w=>{const y=u.fieldToRootMap.get(w.field),S=y!=null;S&&!f.has(y.field)&&f.set(y.field,y),S||f.set(w.field,w)}),l(Array.from(f.values())),f}function c(p){let u=new Map,f=0;if(p.reduce((w,y)=>{let S=ke.none;S=y.sortable?S|ke.sortable:S,S=y.filterable?S|ke.filterable:S,S=y.sort&&y.sort!=="none"?S|ke.sorted|(y.sort==="asc"?ke.ascending:ke.descending):S;const V=y.binding&&y.binding.field?y.binding.field:y.field;return w.set(V,{actualWidth:y.actualWidth||0,children:[],depth:1,layer:1,left:f,field:V,parent:null,resizable:y.resizable||!1,title:y.title,status:S,popoverRef:t.ref(),showPopover:!1,column:y,filterValue:null,sortType:y.sort||"none",showSetting:y.showSetting}),f+=y.actualWidth||0,w},u),o.value){const w=r(u);u=s(u,w)}return u}return{getGridHeaderCells:c}}const gn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class yr{constructor(n={value:[]}){W(this,"editorType","check-box");W(this,"value");W(this,"valueType","boolean");this.value=n.value}clear(){this.value=[]}setValue(n){this.value=n}getValue(){return this.value}isEmpty(){return this.value.length===0}}class vr{constructor(n={textValue:"",value:"",valueField:""}){W(this,"editorType","combo-lookup");W(this,"textValue");W(this,"value");W(this,"valueField");W(this,"valueType","text");this.textValue=n.textValue,this.value=n.value,this.valueField=n.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(n,o){if(o.length>1){const i=o.shift();return n[i]?this.getPropValue(n[i],o):null}return n[o[0]]}getTextValue(n){const o=n.split("."),i=this.value.split(",").map(r=>this.getPropValue(r,je.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const n=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,je.cloneDeep(n)));return o&&o.length?o.join(","):""}setValue(n){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class br{constructor(n={value:""}){W(this,"editorType","date-picker");W(this,"value");W(this,"valueType","datetime");this.value=n.value}setValue(n){this.value=n.formatted}getValue(){return this.value}isEmpty(){return!this.value}clear(){this.value=void 0}}class yn{constructor(n={begin:"",end:""}){W(this,"editorType","date-range");W(this,"begin","");W(this,"end","");W(this,"valueType","datetime");this.begin=n.begin,this.end=n.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(n){n.dataRange?(this.begin=n.dataRange.split(n.delimiter)[0],this.end=n.dataRange.split(n.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class Cr{constructor(n={value:""}){W(this,"editorType","datetime-picker");W(this,"value");W(this,"valueType","datetime");this.value=n.value}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=n.formatted}isEmpty(){return!this.value}}class wr{constructor(n={value:"",dispalyText:""}){W(this,"editorType","combo-list");W(this,"value");W(this,"valueType","enum");W(this,"displayText");this.displayText=n.dispalyText,this.value=n.value}clear(){this.value="",this.displayText=""}getValue(){return this.displayText}setValue(n){this.displayText=n.dispalyText,this.value=n.value}isEmpty(){return!this.displayText}}class Sr{constructor(n={value:[],displayText:"",displayField:"",isInputText:!1}){W(this,"editorType","input-group");W(this,"value");W(this,"valueType","text");W(this,"displayText");W(this,"valueField");W(this,"isInputText");this.value=n.value,this.displayText=n.displayText,this.valueField=n.displayField,this.isInputText=n.isInputText}clear(){this.value=[],this.displayText="",this.valueField=""}getPropValue(n,o){if(o.length>1){const i=o.shift();return n[i]?this.getPropValue(n[i],o):""}return n[o[0]]}getTextValue(n){const o=n.split("."),i=this.value.map(r=>this.getPropValue(r,je.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const n=this.valueField.split(".")||[],o=this.value.map(i=>this.getPropValue(i,je.cloneDeep(n)));return o&&o.length?o.join(","):""}setValue(n){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText}}class xr{constructor(n={textValue:"",value:[],valueField:"",isInputText:!1}){W(this,"editorType","lookup");W(this,"textValue");W(this,"value");W(this,"valueField");W(this,"valueType","text");W(this,"isInputText");this.value=n.value,this.valueField=n.valueField,this.textValue=n.textValue,this.isInputText=n.isInputText}clear(){this.value=[],this.valueField="",this.textValue=""}getPropValue(n,o){if(o.length>1){const i=o.shift();return n[i]?this.getPropValue(n[i],o):null}return n[o[0]]}getTextValue(n){const o=n.split("."),i=this.value.map(r=>this.getPropValue(r,o));return i&&i.length?i.join(","):""}getValue(){const n=this.valueField.split("."),o=this.value.map(i=>this.getPropValue(i,n));return o&&o.length?o.join(","):""}setValue(n){throw new Error("Method not implemented.")}isEmpty(){return!this.value.length}}class _r{constructor(n={value:""}){W(this,"editorType","month-picker");W(this,"value");W(this,"valueType","datetime");this.value=n.value}setValue(n){this.value=n.formatted}getValue(){return this.value}clear(){this.value=void 0}isEmpty(){return!this.value}}class Vr{constructor(n={begin:"",end:""}){W(this,"editorType","month-range");W(this,"begin");W(this,"end");W(this,"valueType","datetime");this.begin=n.begin,this.end=n.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(n){n.dataRange?(this.begin=n.dataRange.split(n.delimiter)[0],this.end=n.dataRange.split(n.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class Nr{constructor(n={begin:null,end:null}){W(this,"editorType","number-range");W(this,"begin");W(this,"end");W(this,"valueType","number");this.begin=n.begin==null?null:parseFloat(n.begin),this.end=n.end==null?null:parseFloat(n.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}setValue(n){this.begin=n.begin==null?null:parseFloat(n.begin),this.end=n.end==null?null:parseFloat(n.end)}isEmpty(){return this.begin==null&&this.end==null}}class kr{constructor(n={value:""}){W(this,"editorType","number-spinner");W(this,"value");W(this,"valueType","number");this.value=n.value==null?null:parseFloat(n.value)}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=isNaN(parseFloat(n))?null:n}isEmpty(){return this.value==null}}class Fr{constructor(n={value:null}){W(this,"editorType","radio-group");W(this,"value");W(this,"valueType","enum");this.value=n.value}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=n}isEmpty(){return!this.value}}class vn{constructor(n={value:""}){W(this,"editorType","text");W(this,"value");W(this,"valueType","text");this.value=n.value}clear(){this.value=void 0}getValue(){return this.value}setValue(n){this.value=n}isEmpty(){return!this.value}}function bn(){function e(n,o){switch(n){case"check-box":return new yr(o);case"combo-list":return new wr(o);case"combo-lookup":return new vr(o);case"input-group":return new Sr(o);case"date-picker":return new br(o);case"date-range":return new yn(o);case"datetime-picker":return new Cr(o);case"datetime-range":return new yn(o);case"lookup":return new xr(o);case"month-picker":return new _r(o);case"month-range":return new Vr(o);case"number-range":return new Nr(o);case"number-spinner":return new kr(o);case"radio-group":return new Fr(o);default:return new vn(o)}}return{createConditionValue:e}}function Cn(e,n){const o=t.ref(e.fields),i=t.ref([]),r=new Map,{createConditionValue:a}=bn();function l(p){switch(p.editor?p.editor.type:"input-group"){case"date-range":p.editor.type="date-picker";break;case"datetime-range":p.editor.type="datetime-picker";break;case"number-range":p.editor.type="number-spinner";break}return p.editor}function s(p){return p.map(f=>Object.assign({},f)).map(f=>(f.editor=l(f),f))}function c(p=!0){o.value.reduce((u,f)=>(p||(f.editor=l(f)),u.set(f.labelCode,f),u),r)}function d(p){return p.forEach(u=>{if(u&&typeof u.valueConfig=="object"){const f=r.get(u.fieldCode);u.value=a(f.editor.type,u.valueConfig.content)}}),p}return{convertToSingleControl:s,fields:o,fieldMap:r,fieldConditions:i,loadFieldConfigs:c,initialConditionValue:d}}function Tr(e,n,o){const i=t.ref(null),r=t.ref(o),a=t.ref(0),l=t.computed(()=>d(a.value));function s(){r.value&&(i.value=new ResizeObserver(c(p=>{const u=p[0];a.value=u.contentRect.width})),i.value.observe(r.value))}function c(p,u){let f=null;return function(){const w=arguments;f||(f=setTimeout(()=>{f=null},500),p(...w))}}function d(p){let f="col-12";return p>250*6?f="col-2":p>250*4?f="col-3":p>250*3?f="col-4":p>250*2&&(f="col-6"),f}return t.watch([o],([p])=>{r.value=p,s()}),{conditionClass:l,resizeObserver:i}}const wn=t.defineComponent({name:"FConditionFields",props:gn,emits:["valueChange","blur","focus","click","input"],setup(e,n){const o=t.ref(),i=t.ref(e.key),r=t.ref(e.isControlInline),a=t.ref(e.conditions),l=Cn(e),{initialConditionValue:s,fieldMap:c,loadFieldConfigs:d}=l,p=Tr(e,n,o),{conditionClass:u,resizeObserver:f}=p;d(!0),s(a.value),t.onBeforeUnmount(()=>{var C;(C=f.value)==null||C.unobserve(o.value)}),t.watch(()=>e.conditions,()=>{a.value=e.conditions});const w=t.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":r.value})),y=t.computed(()=>u.value);function S(C,g){n.emit("valueChange",C,g)}function V(){return a.value.map(C=>{var g;return t.createVNode(bt.FDynamicFormGroup,{customClass:y.value,label:C.fieldName,editor:(g=c.get(C.fieldCode))==null?void 0:g.editor,modelValue:C.value.value,"onUpdate:modelValue":v=>C.value.value=v,onChange:v=>{S(v,C)}},null)})}return()=>t.createVNode("div",{class:w.value,key:i.value,ref:o},[V()])}}),Ft=new Map([["appearance",ze]]),Mr=new Map([]),Ir="root-viewmodel";class Br{constructor(n,o){W(this,"formSchemaUtils");W(this,"controlCreatorUtils");W(this,"designViewModelUtils");this.resolver=n,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(n){const o=this.createComponentRefNode(n),i=this.createComponentNode(n),r=this.createViewModeNode(n),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(n){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${n.componentId}-component-ref`,component:`${n.componentId}-component`}),o}createComponentNode(n){const o=this.resolver.getSchemaByType("component"),i=this.createFormComponentContents(n);return Object.assign(o,{id:`${n.componentId}-component`,viewModel:`${n.componentId}-component-viewmodel`,componentType:n.componentType,appearance:{class:this.getFormComponentClass()},formColumns:n.formColumns,contents:i}),o}getFormComponentClass(){return this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(n){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:n.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:n.componentName});const i=this.resolver.getSchemaByType("response-form"),r=[];Object.assign(i,{id:n.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:r}),o.contents=[i];const{selectedFields:a}=n;return a==null||a.forEach(s=>{const c=je.cloneDeep(s),d=this.resolveControlClassByFormColumns(n),p=this.controlCreatorUtils.setFormFieldProperty(c,"",d);p&&r.push(p)}),this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"&&(o.appearance.class="f-section-grid f-section-in-main px-0 pt-0",o.fill=!0),[o]}resolveControlClassByFormColumns(n){let o="";switch(n.formColumns){case 1:{o="col-12 col-md-12 col-xl-12 col-el-12";break}case 2:{o="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{o="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{o="col-12 col-md-6 col-xl-3 col-el-2";break}}return o}createViewModeNode(n){return{id:`${n.componentId}-component-viewmodel`,code:`${n.componentId}-component-viewmodel`,name:n.componentName,bindTo:n.bindTo,parent:Ir,fields:this.assembleViewModelFields(n),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}assembleViewModelFields(n){const o=[],{selectedFields:i}=n;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===ct.Enum||l===ct.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function Or(e,n,o,i){const r=o.parentComponentInstance;if(r){const l={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:"标题",componentType:"form",formColumns:4,parentContainerId:r.schema.id,bindTo:"/"};return new Br(e,i).createComponent(l)}else return n}function $r(e,n,o){return n}$e({customClass:{type:String,default:""}},{$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:[]}},required:["id","type"]},Ft,Or);const Sn={$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"},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"}},required:["id","type"]},xn={id:{type:String,default:""},customClass:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},type:{type:String,default:"input-group"}};$e(xn,Sn,Ft,void 0);function Tt(e,n,o){var N;function i(){o!=null&&o.resolveComponentContext&&o.resolveComponentContext()}i();const r=o&&o.getStyles&&o.getStyles()||"",a=o&&o.getDesignerClass&&o.getDesignerClass()||"",l=t.ref();function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function c(){return!1}function d(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function p(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function u(h){if(!h||!h.value)return null;if(h.value.schema&&h.value.schema.type==="component")return h.value;const x=t.ref(h==null?void 0:h.value.parent),b=u(x);return b||null}function f(h=n){const{componentInstance:x,designerItemElementRef:b}=h;return!x||!x.value?null:x.value.canMove?b:f(h.parent)}function w(h){return!!o&&o.canAccepts(h)}function y(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function S(){}function V(h,x){x&&o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(x)}function C(h,x){const{componentType:b}=h;let m=St(b,h,x);o&&o.onResolveNewComponentSchema&&(m=o.onResolveNewComponentSchema(h,m));const F=b.toLowerCase().replace("-","_");return m&&!m.id&&m.type===b&&(m.id=`${F}_${Math.random().toString().slice(2,6)}`),m}function g(h,x){const b=String(h.getAttribute("data-controltype")),m=h.getAttribute("data-feature"),F=m?JSON.parse(m):{};F.parentComponentInstance=l.value;let T=St(b,F);o&&o.onAcceptNewChildElement&&(T=o.onAcceptNewChildElement(h,x,T));const I=b.toLowerCase().replace("-","_");return T&&!T.id&&T.type===b&&(T.id=`${I}_${Math.random().toString().slice(2,6)}`),T}function v(h){}function _(...h){if(o&&o.getPropsConfig)return o.getPropsConfig(...h)}return l.value={canMove:s(),canSelectParent:c(),canDelete:d(),canNested:!p(),contents:n==null?void 0:n.schema.contents,elementRef:e,parent:(N=n==null?void 0:n.parent)==null?void 0:N.componentInstance,schema:n==null?void 0:n.schema,styles:r,designerClass:a,canAccepts:w,getBelongedComponentInstance:u,getDraggableDesignItemElement:f,getDraggingDisplayText:y,getPropConfig:_,getDragScopeElement:S,onAcceptMovedChildElement:V,onAcceptNewChildElement:g,onChildElementMovedOut:v,addNewChildComponentSchema:C,updateDragAndDropRules:i,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1)},l}const jr={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},Pr=t.defineComponent({name:"FDynamicFormLabel",props:jr,emits:[],setup(e,n){const o=t.ref(e.title||e.text),i=t.ref(e.required),r=t.ref(e.text);return t.watch(()=>e.text,()=>{r.value=e.text}),t.watch(()=>e.required,(a,l)=>{a!==l&&(i.value=a)}),()=>r.value&&t.createVNode("label",{class:"col-form-label",title:o.value},[i.value&&t.createVNode("span",{class:"farris-label-info text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"farris-label-text"},[r.value])])}}),Er=new Map([["appearance",ze]]);function Dr(e,n,o){return n}const Rr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/input-group.schema.json",title:"input-group",description:"A Farris Input 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:"input-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},labelWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabIndex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"enum",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},addonDisabled:{description:"",type:"boolean",default:!1},addonContent:{description:"",type:"string",default:""},autoHeight:{description:"",type:"boolean",default:!1},enableAddon:{description:"",type:"boolean",default:!1},addonType:{description:"",type:"string",enum:["button","static"],default:"button"},enableClear:{description:"",type:"boolean",default:!0},enableViewPassword:{description:"",type:"boolean",default:!1},inputType:{description:"",type:"string",enum:["input","password","text"],default:"input"},maxHeight:{description:"",type:"number",default:500},popUp:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},_n={id:{Type:String,default:""},autocomplete:{Type:String,default:"off"},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},editable:{Type:Boolean,default:!0},enableClear:{Type:Boolean,default:!0},enableTitle:{Type:Boolean,default:!0},enableViewPassword:{Type:Boolean,default:!0},forcePlaceholder:{Type:Boolean,default:!1},groupText:{Type:String,default:""},type:{Type:String,default:"text"},max:{type:[Number,String]},min:{type:[Number,String]},maxLength:{Type:Number||void 0,default:void 0},minLength:{Type:Number||void 0,default:void 0},modelValue:{Type:String||Boolean,default:""},showBorder:{Type:Boolean,default:!0},step:{Type:Number,default:1},placeholder:{Type:String,default:""},precision:{Type:Number,default:0},readonly:{Type:Boolean,default:!1},showButtonWhenDisabled:{Type:Boolean,default:!1},tabIndex:{Type:Number||void 0,default:void 0},textAlign:{Type:String,default:"left"},useExtendInfo:{Type:Boolean,default:!1},extendInfo:{Type:String,default:""},value:{Type:String,default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"}};$e(_n,Rr,Er,Dr);function Ar(e,n,o,i){const r=t.ref(e.disabled),a=t.ref(!1),l=t.ref("text"),s=t.ref(e.showBorder),c=t.ref(e.textAlign),d=t.ref(e.updateOn),p=t.computed(()=>e.editable||!e.readonly),u=t.computed(()=>e.editable&&!e.disabled&&!e.readonly),f=t.computed(()=>!e.disabled&&a.value),w=t.computed(()=>o.value===""||o.value===null||o.value===void 0),y=t.computed(()=>(e.disabled||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),S=t.computed(()=>e.readonly||!e.editable),V=t.computed(()=>e.enableTitle?o.value:""),C=t.computed(()=>({"form-control":!0,"f-utils-fill":!0,"text-left":c.value==="left","text-center":c.value==="center","text-right":c.value==="right"})),g=t.computed(()=>{const M={"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":r.value,"f-state-editable":u.value,"f-state-readonly":S.value,"f-state-focus":f.value};return(e.customClass||"").split(" ").reduce((O,$)=>(O[$]=!0,O),M),M}),v=t.computed(()=>s.value?"":"border-width : 0 ");function _(M,k=!0){o.value=M,i.value!==M&&(i.value=M),k&&n.emit("change",M),n.emit("update:modelValue",M),n.emit("update:value",M)}t.watch(()=>e.modelValue,(M,k)=>{M!==k&&(o.value=M,i.value=M)}),t.watch(()=>e.disabled,(M,k)=>{M!==k&&(r.value=M)});function N(M){return a.value=!1,n.emit("blur",M),M.stopPropagation(),!1}function h(M){n.emit("click",M)}function x(M){e.disabled||(s.value&&(a.value=!0),p.value&&n.emit("focus",M))}function b(M){n.emit("input",M.target.value);const k=M.target.value;i.value=k,d.value==="change"&&(n.emit("update:modelValue",k),n.emit("update:value",k))}function m(M){n.emit("keydown",M)}function F(M){n.emit("keyup",M)}function T(M){M.target.tagName!=="INPUT"&&M.preventDefault(),M.stopPropagation()}function I(M){if(d.value==="blur"){const k=M.target.value;M.stopPropagation(),_(k)}}return{changeTextBoxValue:_,disabled:r,displayText:i,editable:u,hasFocused:f,inputGroupClass:g,inputType:l,isEmpty:w,modelValue:o,readonly:S,onBlur:N,onClick:h,onFocus:x,onInput:b,onKeydown:m,onKeyup:F,onMousedown:T,onTextBoxValueChange:I,placeholder:y,textBoxClass:C,textBoxTitle:V,inputGroupStyle:v}}function Hr(e,n,o){const i=t.ref(!1),r=t.computed(()=>e.enableClear&&!e.readonly&&!e.disabled),{changeTextBoxValue:a,displayText:l,hasFocused:s,isEmpty:c}=o;function d(S){i.value=S}t.watch(l,()=>{s!=null&&s.value?d(!!(l!=null&&l.value)):d(!1)});const p=t.computed(()=>({"input-group-text":!0,"input-group-clear":!0})),u=t.computed(()=>({width:"24px",display:i.value?"flex":"none"}));function f(S){S.stopPropagation(),r.value&&(a("",!0),d(!i.value),n.emit("clear"))}function w(S){r.value&&!c.value&&d(!0)}function y(S){r.value&&d(!1)}return{clearButtonClass:p,clearButtonStyle:u,hasShownClearButton:i,onClearValue:f,onMouseEnter:w,onMouseLeave:y,shouldShowClearButton:r}}const Gr=["moz","ms","webkit"];function Lr(){let e=0;return n=>{const o=new Date().getTime(),i=Math.max(0,16-(o-e)),r=setTimeout(()=>{n(o+i)},i);return e=o+i,r}}function Wr(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=Gr.filter(n=>`${n}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:Lr()}Wr();const qr=e=>{const n=e;return n.install=function(o){o.component(n.name,e)},e},zr={checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}};function Ur(e,n){const o=t.ref(e.groupText),i=t.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),r=t.computed(()=>e.enableClear||!!e.groupText);return{appendedButtonClass:t.computed(()=>({"input-group-append":!0,"append-force-show":i.value})),appendedContent:o,shouldShowAppendedButton:r}}function Kr(e,n,o,i){const{appendedContent:r}=i,a=t.ref(e.enableViewPassword),l=t.computed(()=>e.type==="password"),s='<span class="f-icon f-icon-eye" style="color: rgb(56, 143, 255);"></span>',c='<span class="f-icon f-icon-eye"></span>',d=t.ref(!1);t.watch(()=>[e.readonly,e.disabled],([f,w])=>{l.value&&(o.value=f||w?"password":o.value,r.value=f||w?c:r.value)});function p(){return d.value=!d.value,o.value=d.value?"text":"password",r.value=d.value?s:c,!1}function u(){o.value=l.value?"password":"text",r.value=l.value?a.value?c:"":r.value}return u(),{isPassword:l,onClickAppendedButton:p}}function Xr(e,n,o){const i=t.ref(),{onBlurTextBox:r,onFocusTextBox:a,onInput:l,onKeyDown:s,textBoxValue:c}=o,d=t.computed(()=>e.disabled||e.readonly||!e.editable?"":e.placeholder),p=t.computed(()=>({"form-control":!0,"f-utils-fill":!0})),u=t.computed(()=>({"text-align":e.textAlign}));function f(S){S.stopPropagation()}function w(){e.selectOnCreated,e.focusOnCreated}async function y(S){a(S),await t.nextTick,w()}return t.onMounted(async()=>{await t.nextTick,w()}),()=>t.createVNode("input",{ref:i,class:p.value,style:u.value,type:"text",value:c.value,disabled:e.disabled,readonly:e.readonly||!e.editable,placeholder:d.value,onBlur:r,onChange:f,onFocus:y,onInput:l,onKeydown:s},null)}function Yr(e,n,o){const{canDownward:i,canUpward:r,onClickDownButton:a,onClickUpButton:l}=o,s=t.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),c=t.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),d=t.computed(()=>({cursor:r()?"pointer":"not-allowed","margin-left":0})),p=t.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0}));return()=>t.createVNode("div",{class:s.value},[t.createVNode("button",{title:"upButton",class:c.value,style:d.value,onClick:l,disabled:!r()},[t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),t.createVNode("button",{title:"downButton",class:c.value,style:p.value,onClick:a,disabled:!i()},[t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function Jr(e,n){const o=st.useNumber(e,n),i=st.useFormat(e,n,o),r=st.useSpinner(e,n,i,o),a=st.useTextBox(e,n,i,o,r),l=Yr(e,n,r),{displayValue:s,modelValue:c,getRealValue:d}=o,p=Xr(e,n,a),{format:u}=i,{isFocus:f}=a,w=t.computed(()=>!e.disabled&&!e.readonly);return t.onMounted(()=>{const y=d(e.modelValue);s.value=u(y)}),t.watch(()=>[e.value],([y])=>{const S=d(y);c.value=S,s.value=u(S)}),t.watch(()=>[e.modelValue],([y])=>{y!==c.value&&(c.value=y,!f.value&&(s.value=u(d(y))))}),t.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{s.value=u(c.value)}),()=>t.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[p(),w.value&&l()])}function Qr(e,n,o,i){const r=t.ref(),a=t.ref(e.autocomplete),l=t.ref(e.enableTitle),{isPassword:s}=o,c=t.ref(e.minLength),d=t.ref(e.maxLength),p=t.ref(e.tabIndex),{disabled:u,displayText:f,inputType:w,onBlur:y,onFocus:S,onInput:V,onClick:C,onKeydown:g,onKeyup:v,onMousedown:_,onTextBoxValueChange:N,readonly:h,placeholder:x,textBoxClass:b,textBoxTitle:m}=i;return t.onMounted(()=>{e.selectOnCreated,e.focusOnCreated}),()=>t.createVNode("input",{ref:r,name:"input-group-value",autocomplete:a.value,class:b.value,disabled:u==null?void 0:u.value,maxlength:d.value,minlength:c.value,placeholder:x.value,readonly:h==null?void 0:h.value,tabindex:p.value,title:l.value&&!s.value?m.value:"",type:w.value,value:f==null?void 0:f.value,onBlur:y,onClick:C,onChange:N,onFocus:S,onInput:V,onKeydown:g,onKeyup:v,onMousedown:_},null)}function Zr(e,n){const o=t.computed(()=>e.useExtendInfo&&!!e.extendInfo),i=t.reactive({content:e.extendInfo});function r(){n.emit("updateExtendInfo")}return()=>o.value&&t.withDirectives(t.createVNode("span",{class:"input-group-before-tips",onMouseenter:r},[t.createVNode("i",{class:"f-icon f-icon-info-circle"},null),t.createVNode("b",{class:"tips-arrow"},null)]),[[t.resolveDirective("tooltip"),i]])}function ea(e,n,o,i,r){const{appendedButtonClass:a,appendedContent:l}=o,s=t.computed(()=>e.showButtonWhenDisabled&&(!e.editable||!e.readonly)&&!e.disabled),c=t.computed(()=>l.value&&!n.slots.groupTextTemplate),d=t.computed(()=>!!n.slots.groupTextTemplate),{clearButtonClass:p,clearButtonStyle:u,onClearValue:f,shouldShowClearButton:w}=i;function y(){return t.createVNode("span",{id:"clearIcon",class:p.value,style:u.value,onClick:x=>f(x)},[t.createVNode("i",{class:"f-icon modal_close"},null)])}function S(x){n.emit("iconMouseEnter",x)}function V(x){n.emit("iconMouseLeave",x)}function C(x){s.value&&n.emit("clickHandle",{originalEvent:x}),x.stopPropagation()}const g=e.type==="password"?r.onClickAppendedButton:C;function v(){return t.createVNode("span",{class:"input-group-text",onMouseenter:x=>S(x),onMouseleave:x=>V(x),innerHTML:l.value,onClick:x=>g(x)},null)}function _(){return n.slots.groupTextTemplate&&n.slots.groupTextTemplate()}function N(){return c.value?v:d.value?_:""}const h=N();return()=>t.createVNode("div",{class:a.value},[w.value&&y(),h&&h()])}const ta=t.defineComponent({name:"FInputGroup",props:_n,emits:["clear","change","blur","click","clickHandle","focus","input","keydown","keyup","iconMouseEnter","iconMouseLeave","update:modelValue","update:value","updateExtendInfo","valueChange"],setup(e,n){const o=t.ref(e.modelValue),i=t.ref(e.modelValue),r=Ar(e,n,o,i),{inputGroupClass:a,inputType:l,inputGroupStyle:s}=r,c=Ur(e),{shouldShowAppendedButton:d}=c,p=Hr(e,n,r),{onMouseEnter:u,onMouseLeave:f}=p,w=Kr(e,n,l,c),y=Jr(e,n),S=Qr(e,n,w,r),V=ea(e,n,c,p,w),C=Zr(e,n),g=t.computed(()=>e.type==="number");t.watch(()=>[e.value],([_])=>{o.value=_,i.value=_}),t.watch(()=>[e.modelValue],([_])=>{o.value=_,i.value=_}),t.onMounted(()=>{e.value&&(o.value=e.value,i.value=e.value)});const v=()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:e.id,class:a.value,style:s.value,onMouseenter:u,onMouseleave:f},[g.value?y():t.createVNode(t.Fragment,null,[C(),S(),d.value&&V()])])]);return()=>v()}}),Y={},J={},Q={},Z={};let Vn=!1;function na(){Vn||(Vn=!0,yo.register(Y,J,Q,Z),go.register(Y,J,Q,Z),vo.register(Y,J,Q,Z),bo.register(Y,J,Q,Z),Co.register(Y,J,Q,Z),wo.register(Y,J,Q,Z),lt.register(Y,J,Q,Z),Ct.register(Y,J,Q,Z),So.register(Y,J,Q,Z),xo.register(Y,J,Q,Z),Vo.register(Y,J,Q,Z),_o.register(Y,J,Q,Z),No.register(Y,J,Q,Z),ko.register(Y,J,Q,Z),Fo.register(Y,J,Q,Z),bt.register(Y,J,Q,Z),To.register(Y,J,Q,Z),Gt.register(Y,J,Q,Z),Mo.register(Y,J,Q,Z),Io.register(Y,J,Q,Z),Bo.register(Y,J,Q,Z),Oo.register(Y,J,Q,Z),jo.register(Y,J,Q,Z),$o.register(Y,J,Q,Z),Po.register(Y,J,Q,Z),Eo.register(Y,J,Q,Z),Do.register(Y,J,Q,Z),Ro.register(Y,J,Q,Z),st.register(Y,J,Q,Z),mo.register(Y,J,Q,Z),Ao.register(Y,J,Q,Z),Ho.register(Y,J,Q,Z),Lt.register(Y,J,Q,Z),Go.register(Y,J,Q,Z),Lo.register(Y,J,Q,Z),Wo.register(Y,J,Q,Z),qo.register(Y,J,Q,Z),Uo.register(Y,J,Q,Z),Ko.register(Y,J,Q,Z),zo.register(Y,J,Q,Z),ci.register(Y,J,Q),Xo.register(Y,J,Q,Z),Yo.register(Y,J,Q,Z),Jo.register(Y,J,Q,Z),Qo.register(Y,J,Q,Z),Zo.register(Y,J,Q,Z),ei.register(Y,J,Q,Z),po.register(Y,J,Q,Z),Ht.register(Y,J,Q,Z),ti.register(Y,J,Q,Z),ni.register(Y,J,Q,Z),fo.register(Y,J,Q,Z),oi.register(Y,J,Q,Z),ri.register(Y,J,Q,Z),ii.register(Y,J,Q,Z),ai.register(Y,J,Q,Z),li.register(Y,J,Q,Z),si.register(Y,J,Q,Z),di.register(Y,J,Q,Z))}function oa(){na();function e(r,a){const l=J[r];return l?l(a):{}}function n(r){return Y[r]||ta}function o(r){switch(r){case"check-box":return"onChangeValue";case"switch":return"onModelValueChanged";case"check-group":return"onChangeValue";case"combo-list":case"combo-tree":return"onChange";case"combo-lookup":return"";case"date-picker":return"onDatePicked";case"date-range":return"";case"datetime-picker":return"";case"datetime-range":return"";case"month-picker":return"";case"month-range":return"";case"year-picker":return"";case"year-range":return"";case"input-group":return"onChange";case"lookup":return"onUpdate:modelValue";case"number-range":return"onValueChange";case"number-spinner":return"onValueChange";case"radio-group":return"onChangeValue";case"text":return"";case"response-layout-editor-setting":return"onChange";case"events-editor":return"onSavedCommandListChanged";case"grid-field-editor":return"onChange";case"response-form-layout-setting":return"onChange";case"field-selector":return"onFieldSelected";case"schema-selector":return"onSchemaSelected";case"mapping-editor":return"onMappingFieldsChanged";case"textarea":return"onValueChange"}}function i(r){switch(r){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:e,resolveEditorType:n,getChangeFunctionName:o,getClearFunctionName:i}}const ia=t.defineComponent({name:"FDynamicFormGroup",props:xn,emits:["change","update:modelValue"],setup(e,n){const o=t.ref(e.id),i=t.ref(e.customClass),r=t.ref(e.editor),a=t.ref(e.label),l=t.ref(e.modelValue),s=t.ref(e.readonly),c=t.ref(e.required),d=t.ref(e.showLabel),p=t.ref(e.visible);t.ref(e.type);const u=t.ref(),{resolveEditorProps:f,resolveEditorType:w,getChangeFunctionName:y,getClearFunctionName:S}=oa(),V=t.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":s.value}));function C(_,N){l.value=N!==void 0?N:_,n.emit("update:modelValue",l.value),n.emit("change",l.value)}function g(){n.emit("update:modelValue","")}const v=t.computed(()=>{const _=r.value.type||"input-group",N=w(_),h=f(_,r.value),x=y(_),b=S(r.value.type);return h[x]=C,h[b]=g,(h.id==null||h.id==="")&&(h.id=o.value),()=>t.createVNode(N,t.mergeProps({ref:u},h,{modelValue:l.value,"onUpdate:modelValue":m=>l.value=m}),null)});return t.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([_,N,h,x,b,m,F,T,I])=>{o.value=_,i.value=N,r.value=h,a.value=x,l.value=b,s.value=m,c.value=F,d.value=T,p.value=I}),n.expose({editorRef:u}),()=>p.value&&t.createVNode("div",{id:`${o.value}-input-group`,class:i.value},[t.createVNode("div",{class:"farris-group-wrap"},[t.createVNode("div",{class:V.value},[d.value&&t.createVNode(Pr,{id:`${o.value}-lable`,required:c.value,text:a.value,title:a.value},null),t.createVNode("div",{class:"farris-input-wrap"},[v.value()])])])])}}),ra={},aa={};class pt{constructor(n,o){W(this,"componentId");W(this,"viewModelId");W(this,"eventsEditorUtils");W(this,"formSchemaUtils");W(this,"formMetadataConverter");W(this,"designViewModelUtils");W(this,"designViewModelField");W(this,"controlCreatorUtils");W(this,"designerHostService");W(this,"schemaService",null);W(this,"metadataService",null);W(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=n,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){const o=n.binding&&n.binding.type==="Form"&&n.binding.field;if(o){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(r=>r.id===o)}n.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(n,o){}getBasicPropConfig(n){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",data:[{value:n.type,name:te[n.type].name}]}}}}}getAppearanceConfig(n=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(n,o){const i=o&&o.parent&&o.parent.schema;if(!i)return;const r=i.contents.findIndex(l=>l.id===n),a=je.cloneDeep(i.contents[r]);i.contents.splice(r,1),i.contents.splice(r,0,a)}}const it=class it{static getEditorTypesByMDataType(n){const o=it.fieldControlTypeMapping[n];return o||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(let o in it.fieldControlTypeMapping)it.fieldControlTypeMapping[o].forEach(i=>{n.find(r=>r.key===i.key&&r.value===i.value)||n.push({key:i.key,value:i.value})});return n}};W(it,"fieldControlTypeMapping",{String:[{key:te["input-group"].type,value:te["input-group"].name},{key:te.lookup.type,value:te.lookup.name},{key:te["date-picker"].type,value:te["date-picker"].name},{key:te["check-box"].type,value:te["check-box"].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}],Text:[{key:te.textarea.type,value:te.textarea.name},{key:te.lookup.type,value:te.lookup.name}],Decimal:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Integer:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Number:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],BigNumber:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Date:[{key:te["date-picker"].type,value:te["date-picker"].name}],DateTime:[{key:te["date-picker"].type,value:te["date-picker"].name}],Boolean:[{key:te.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].name}],Enum:[{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}],Object:[{key:te.lookup.type,value:te.lookup.name},{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}]});let dt=it;const mt=t.ref(0);function la(e,n){const o=n.getBoundingClientRect(),i=e.getBoundingClientRect(),r=i.top>=o.top,a=i.top<=o.bottom;return r&&a}function sa(e){if(!e)return;let n;if(e.className.includes("dgComponentSelected")?n=e:n=e.querySelector(".dgComponentSelected"),!n)return;const o=n.getBoundingClientRect();if(o.width===0&&o.height===0)return;const i=n.querySelector(".component-btn-group");if(i){if(!la(n,e)){i.style.display="none";return}i.style.display="";const a=i.getBoundingClientRect(),l=i.querySelector("div");if(l){const s=l.getBoundingClientRect();l.style.top=a.top+"px",l.style.left=a.left-s.width+"px"}}}class Ae extends pt{constructor(o,i){super(o,i);W(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=ho.useResponseLayoutEditorSetting(this.formSchemaUtils)}getPropertyConfig(o,i){return this.propertyConfig.categories.basic=this.getBasicProperties(o,i),this.propertyConfig.categories.appearance=this.getAppearanceProperties(o,i),this.propertyConfig.categories.editor=this.getEditorProperties(o),this.propertyConfig}getBasicProperties(o,i){var s;var r=this;this.setDesignViewModelField(o);const a=this.formSchemaUtils.getFormMetadataBasicInfo(),l=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:r.designViewModelField?dt.getEditorTypesByMDataType((s=r.designViewModelField.type)==null?void 0:s.name):dt.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:o,formBasicInfo:a},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:l}}},setPropertyRelates(c,d){if(c)switch(c&&c.propertyID){case"type":{r.changeControlType(o,c,i);break}case"label":{c.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,i){var r=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,r.componentId)}}},setPropertyRelates(a,l){if(a)switch(a&&a.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,r.componentId||o.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(o.id,i),delete o.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(a.propertyValue,o.id,this.componentId),r.updateElementByParentContainer(o.id,i);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,i,r){var p,u,f,w;const a=i.propertyValue,l=r&&r.parent&&r.parent.schema;if(!l)return;const s=l.contents.findIndex(y=>y.id===o.id),c=l.contents[s];let d;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:a},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),d=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),d||(d=ut.getSchemaByType("form-group")||{},d.editor=ut.getSchemaByType(a)||{},delete d.editor.id,delete d.editor.binding,delete d.editor.appearance),Object.assign(d,{id:c.id,appearance:c.appearance,size:c.size,label:c.label,binding:c.binding,visible:c.visible}),Object.assign(d.editor,{isTextArea:d.isTextArea&&c.isTextArea,placeholder:(p=c.editor)==null?void 0:p.placeholder,holdPlace:(u=c.editor)==null?void 0:u.holdPlace,readonly:(f=c.editor)==null?void 0:f.readonly,require:(w=c.editor)==null?void 0:w.require}),l.contents.splice(s,1),l.contents.splice(s,0,d),r.schema=Object.assign(c,d),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(y=>y.classList.remove("dgComponentSelected")),mt.value++}getComponentConfig(o,i={},r={}){const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),l=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...a,properties:{...l}}}updateUnifiedLayoutAfterControlChanged(o,i,r){const a=o.split(" ");let l=a.find(u=>/^col-([1-9]|10|11|12)$/.test(u)),s=a.find(u=>/^col-md-([1-9]|10|11|12)$/.test(u)),c=a.find(u=>/^col-xl-([1-9]|10|11|12)$/.test(u)),d=a.find(u=>/^col-el-([1-9]|10|11|12)$/.test(u));l=l||"col-12",s=s||"col-md-"+l.replace("col-",""),c=c||"col-xl-"+s.replace("col-md-",""),d=d||"col-el-"+c.replace("col-xl-","");const p={id:i,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(c.replace("col-xl-",""),10),columnInEL:parseInt(d.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,p)}updateUnifiedLayoutAfterResponseLayoutChanged(o,i){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!r||!r.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,a,1),i){const y=a.find(S=>S.id===i.id);Object.assign(y||{},i)}const l=a.map(y=>y.columnInSM),s=a.map(y=>y.columnInMD),c=a.map(y=>y.columnInLG),d=a.map(y=>y.columnInEL),p=this.checkIsUniqueColumn(l)?l[0]:null,u=this.checkIsUniqueColumn(s)?s[0]:null,f=this.checkIsUniqueColumn(c)?c[0]:null,w=this.checkIsUniqueColumn(d)?d[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:p,uniqueColClassInMD:u,uniqueColClassInLG:f,uniqueColClassInEL:w})}checkIsUniqueColumn(o){const i=new Set(o);return Array.from(i).length===1}}class ca extends Ae{constructor(n,o){super(n,o)}}$e({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Sn,Ft,void 0);const da={$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"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"Object",default:null}},required:["id","type"]},ua={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};ut.createPropsResolver(ua,da,Mr,$r);const fa={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"}};function Mt(){return new DOMException("The request is not allowed","NotAllowedError")}async function pa(e){if(!navigator.clipboard)throw Mt();return navigator.clipboard.writeText(e)}async function ma(e){const n=document.createElement("span");n.textContent=e,n.style.whiteSpace="pre",n.style.webkitUserSelect="auto",n.style.userSelect="all",document.body.appendChild(n);const o=window.getSelection(),i=window.document.createRange();o==null||o.removeAllRanges(),i.selectNode(n),o==null||o.addRange(i);let r=!1;try{r=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(n)}if(!r)throw Mt()}async function ha(e){try{await pa(e)}catch(n){try{await ma(e)}catch(o){throw o||n||Mt()}}}function ga(){async function e(n){await ha(n)}return{onCopy:e}}function ya(e,n,o,i){const r=t.ref(14),a=t.ref(140),l=t.ref(""),s=t.ref(i.value.length),c=t.computed(()=>i.value),d=t.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function p(u){if(u.currentTarget){const f=u.currentTarget.value||"";s.value=f.length}}return()=>t.createVNode(t.Fragment,null,[t.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:d.value,rows:"4",maxlength:a.value,onInput:u=>p(u)},[c.value]),t.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+a.value])])}function va(e,n,o,i){const r=ya(e,n,o,i),a=new Map([["text-area",r]]);function l(s){return a.get(s)||null}return{getEditorRender:l}}function ba(){const e=t.ref(!1),n=t.ref("复制成功");return{feedbackStyle:t.computed(()=>{const i={position:"absolute",left:"50%",top:"50%",width:"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease"};return i.opacity=e.value?"0.8":"0",i.display=e.value?"":"none",i}),feedbackMessage:n,toShowFeedback:e}}function Ca(e,n){const o=n.getEditorRender(e.promptEditorType);return()=>o&&o()}function wa(e){const n=t.ref(3),o=t.ref(480),i=t.computed(()=>!!e.value&&!!e.value.date),r=t.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),a=t.computed(()=>!!e.value&&!!e.value.detail),l=t.computed(()=>{const V=`${o.value}px`;return{overflow:"hidden","text-overflow":"ellipsis",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":n.value,"max-height":V}}),s=t.computed(()=>e.value&&e.value.detail||""),c=t.computed(()=>!0),d=t.ref(!1),p=t.ref("展开"),u=t.ref("收起"),f=t.computed(()=>{const V={display:"block",color:"#2A87FF"};return V["text-align"]=d.value?"":"right",V});function w(V,C){d.value=!d.value,n.value=d.value?20:3}function y(V){return w()}function S(V){return w()}return()=>t.createVNode("div",{class:"toast-msg-detail"},[i.value&&t.createVNode("div",null,[r.value]),a.value&&t.createVNode("div",{id:"exception_error_msg",ref:"exceptionMessageRef",style:l.value},[t.createTextVNode("详细信息 : "),t.createVNode("span",{innerHTML:s.value},null)]),c.value&&t.createVNode("span",{style:f.value},[d.value&&t.createVNode("span",{onClick:y,style:"cursor: pointer;"},[u.value]),!d.value&&t.createVNode("span",{onClick:S,style:"cursor: pointer;"},[p.value])])])}function Sa(e){return()=>t.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function xa(e,n,o,i){const r=t.ref(e.exceptionInfo),a=t.computed(()=>{const f={"f-icon":!0},w=`f-icon-${n.value}`;return f[w]=!0,f}),l=t.computed(()=>o.value||r.value&&r.value.message),s=t.computed(()=>i.value),c=t.computed(()=>!!i.value),d=t.computed(()=>!!r.value);function p(){return d.value?wa(r):c.value?Sa(s):()=>null}const u=p();return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:a.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[t.createVNode("p",{class:"toast-msg-title",innerHTML:l.value},null),u()])])}function _a(e,n,o){const{onCopy:i}=n,{toShowFeedback:r}=o,a=t.ref("复制成功"),l=t.ref("复制详细信息"),s=t.ref(e.exceptionInfo||{date:"",message:"",detail:""}),c=t.computed(()=>s.value&&s.value.detail||"");function d(p){i(c.value).catch(u=>{a.value="复制失败"}).finally(()=>{r.value=!0,setTimeout(()=>{r.value=!1},700)})}return()=>t.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[t.createVNode("span",{onClick:d,style:"cursor: pointer;"},[l.value])])}function Va(e,n,o,i){const r=t.ref(e.type),a=t.ref([]),l=t.ref(e.exceptionInfo),s=t.ref(e.okButtonText),c=t.ref(e.cancelButtonText),d=t.ref(!0),p=t.ref(!0),u=t.computed(()=>!!(a.value&&a.value.length)),f=t.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),w=t.computed(()=>!(a.value&&a.value.length)&&(s.value||c.value)),y=t.computed(()=>p.value&&s.value),S=t.computed(()=>d.value&&c.value),V=_a(e,o,i);function C(v){r.value==="question"&&n.emit("reject"),n.emit("close")}function g(v){r.value==="question"&&n.emit("accept"),n.emit("close")}return()=>t.createVNode("div",{class:"modal-footer"},[f.value&&V(),w.value&&S.value&&t.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:C},[c.value]),w.value&&y.value&&t.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:g},[s.value]),u.value&&a.value.length&&a.value.map(v=>t.createVNode("button",{type:"button",onClick:v.handle,class:v.class},[v.iconClass&&t.createVNode("span",{class:v.iconClass},null),v.text]))])}const ht=t.defineComponent({name:"FMessageBox",props:fa,emits:["accept","reject","close"],setup(e,n){const o=t.ref(e.type),i=t.ref(e.title),r=t.ref(e.detail),a=t.computed(()=>{const V={"modal-tips":!0,"d-flex":!0,"flex-row":!0},C=`messager-type-${o.value}`;return V[C]=!0,V}),l=t.computed(()=>{const V={};return o.value==="prompt"?V.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(V.padding="0.5rem 1.5rem 1rem 1.5rem"),V}),s=ga(),c=va(e,o,i,r),d=ba(),{feedbackStyle:p,feedbackMessage:u}=d;function f(){return t.createVNode("div",{style:p.value},[u.value])}function w(){switch(o.value){case"prompt":return Ca(e,c);default:return xa(e,o,i,r)}}const y=w(),S=Va(e,n,s,d);return()=>t.createVNode("div",{class:"farris-messager"},[t.createVNode("section",{class:a.value,style:l.value},[y()]),S(),f()])}});class We{static show(n){let o=new Pi;const i=t.reactive({...n}),r=!1,a=i.type==="error"||i.type==="prompt",l=i.type==="error"?"错误提示":i.type==="prompt"&&i.title||"",s=i.acceptCallback||(()=>{}),c=i.rejectCallback||(()=>{});let d=null;const p=()=>{d&&(d==null||d.destroy(),o=null)};d=o==null?void 0:o.open({class:"modal-message modal-message-type-info",title:l,showButtons:r,showHeader:a,width:i.width||400,fitContent:!0,showMaxButton:!1,render:()=>t.createVNode(ht,t.mergeProps(i,{onAccept:s,onReject:c,onClose:p}),null)})}static info(n,o){const i=t.reactive({type:"info",title:n,detail:o,okButtonText:"知道了",cancelButtonText:""});We.show(i)}static warning(n,o){const i=t.reactive({type:"warning",title:n,detail:o,okButtonText:"知道了",cancelButtonText:""});We.show(i)}static success(n,o){const i=t.reactive({type:"success",title:n,detail:o,okButtonText:"关闭",cancelButtonText:""});We.show(i)}static error(n,o,i){const r=t.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:i,message:n,detail:o}});We.show(r)}static prompt(n,o){const i=t.reactive({type:"prompt",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消"});We.show(i)}static question(n,o,i,r){const a=t.reactive({type:"question",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:i,rejectCallback:r});We.show(a)}}ht.install=e=>{e.component(ht.name,ht),e.provide("FMessageBoxService",We)};var Nn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(Nn||{}),kn=(e=>(e.Equal="0",e.NotEqual="1",e.Greater="2",e.GreaterOrEqual="3",e.Less="4",e.LessOrEqual="5",e.Like="6",e.LikeStartWith="7",e.LikeEndWith="8",e))(kn||{});const Na=[{value:"0",name:"等于"},{value:"1",name:"不等于"},{value:"2",name:"大于"},{value:"3",name:"大于等于"},{value:"4",name:"小于"},{value:"5",name:"小于等于"},{value:"6",name:"包含"},{value:"7",name:"开始是"},{value:"8",name:"结束是"}],ka={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function Fa(e,n,o){const{fieldMap:i}=o;function r(a){const l=i.get(a.fieldCode);if(!l)return[];const s=l.editor.type,c=new Set(ka[s]);return Na.filter(p=>c.has(p.value))}return{getCompareOperators:r}}function Fn(){const e=t.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),n=new Map,o=new Map;let i=0;function r(){return{id:"",fieldCode:"",fieldName:"",compareType:kn.Equal,valueType:Nn.Value,value:new vn,relation:0,conditionId:Date.now()}}function a(m,F){return{relation:m,items:[],children:[],path:[],groupId:++i,level:F}}function l(){const m=Object.assign({},e.value);o.forEach((F,T)=>{F.groupId===m.groupId&&o.set(T,m)}),n.forEach((F,T)=>{F.groupId===m.groupId&&n.set(T,m)}),e.value=m}function s(m){const F=new Map;let T=0;return m.forEach((I,M)=>{var k,O;if(T+=((k=I.lBracket)==null?void 0:k.length)||0,F.set(M,T),T-=((O=I.rBracket)==null?void 0:O.length)||0,T<0)throw new Error("The right bracket is out of range.")}),F}function c(m,F,T,I,M){for(let k=0;k<F;k++){const O=m+(k+1),$=a(M,O);T.children.push($),o.set($.groupId,T),T=T.children[T.children.length-1],I.push(T)}return T}function d(m,F,T,I,M){for(let B=F;B<=0;B++)I.pop();const k=I[I.length-1];if(!k)throw new Error("The group path is out of range");const O=m+F,$=a(M,O);return k.children.push($),o.set($.groupId,k),T=k.children[k.children.length-1],I.push(T),T}function p(m,F,T,I){T.pop();const M=T[T.length-1],k=a(I,m);return M.children.push(k),o.set(k.groupId,M),F=M.children[M.children.length-1],T.push(F),F}function u(m,F,T,I,M,k){let O=m[m.length-1];if(!O)throw new Error("The group path is out of range");const $=F.get(I)||0,B=F.get(T)||0;if(T<0||T===I)return m[m.length-1];const j=$-B,D=M&&M.relation!==void 0?M.relation:1;return O=j>0?c(B,j,O,m,D):O,O=j<0?d(B,j,O,m,D):O,O=j===0&&B>0&&$>0&&M&&k&&!!M.rBracket&&!!k.lBracket?p(B,O,m,D):O,O}function f(m){const T={relation:m.length&&m[0].relation!==void 0?m[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},I=[T],M=s(m);return m.forEach((k,O)=>{const $=O-1,B=m[$],j=u(I,M,$,O,B,k);j.items.push(k),n.set(k.conditionId,j)}),e.value=T,T}function w(){const m=r();n.set(m.conditionId,e.value),e.value.items.push(m)}function y(m){if(!m)return;const F=n.get(m.conditionId);if(F){const T=F.items.findIndex(M=>M.conditionId===m.conditionId)+1,I=r();n.set(I.conditionId,F),F.items.splice(T,0,I),l()}}function S(m){const F=n.get(m.conditionId);F&&(F.items=F.items.filter(T=>T.conditionId!==m.conditionId),n.delete(m.conditionId),b(),l())}function V(m,F,T,I){m.reduce((M,k)=>{const O=k.conditionId!==void 0,$=k.groupId!==void 0;if(O){const B=k;T.push(B),M.items.set(B.conditionId,B)}if($){const B=k;I.push(B),M.groups.set(B.groupId,B)}return M},F)}function C(m,F,T,I,M){m&&(m.items=F.length?m.items.filter(k=>!T.has(k.conditionId)):m.items,m.children=I.length?m.children.filter(k=>!M.has(k.groupId)):m.children)}function g(m,F,T){F.forEach(I=>{m.items.push(I),n.set(I.conditionId,m)}),T.forEach(I=>{m.children.push(I),o.set(I.groupId,m)})}function v(m){const F=m[0],T=F.conditionId!==void 0?n.get(F.conditionId):o.get(F.groupId),I={items:new Map,groups:new Map},M=[],k=[];if(T){V(m,I,M,k),C(T,M,I.items,k,I.groups);const O=a(T.relation,T.level+1);g(O,M,k),T.children.push(O),o.set(O.groupId,T),l()}}function _(m){const F=[...m.items],T=[...m.children],I=o.get(m.groupId);I&&(I.children=I.children.filter(M=>M.groupId!==m.groupId),o.delete(m.groupId),F.forEach(M=>{I.items.push(M),n.set(M.conditionId,I)}),T.forEach(M=>{I.children.push(M),o.set(M.groupId,I)}),l())}function N(m){m.relation=m.relation===1?2:1,l()}let h;function x(m){const{relation:F}=m;return(m.children&&m.children.length?m.children.map((I,M,k)=>{const O=h(I);return O[0].lBracket=(O[0].lBracket||"")+"(",O[O.length-1].rBracket=(O[O.length-1].rBracket||"")+")",O[O.length-1].relation=M<k.length-1?F:0,O}):[]).flat()}h=(m=e.value)=>{const{relation:F}=m,T=m.items.map((M,k,O)=>(M.lBracket=k===0?"(":"",M.rBracket=k===O.length-1?")":"",M.relation=k<O.length-1?F||1:0,M)),I=x(m);return[...T,...I]};function b(m){const F=m||e.value;if(F.children.length&&F.children.forEach(T=>{b(T)}),F.level===0&&!F.items.length&&F.children.length===1){const T=F.children[0];e.value.relation=T.relation,_(T)}else F.items.length===0&&F.children.length<=1&&_(F)}return{addCondition:w,changeGroupRelation:N,conditionGroupMap:n,getConditions:h,group:v,groupParentMap:o,insertConditionTo:y,loadConditionGroup:f,refresh:l,removeCondition:S,rootGroup:e,unGroup:_}}function Ta(e,n,o){const i=t.ref(new Set),r=t.ref(new Set),{conditionGroupMap:a,groupParentMap:l}=o;let s,c;function d(C){let g=s.level<=C.level?s:C,v=s.level>C.level?s:C;const _=[];for(;v&&g&&v!==g;)v.level>g.level?(_.push(v),v=l.get(v.groupId)):v.level===g.level&&(g=l.get(g.groupId),g&&_.unshift(g));return _}function p(C){r.value.add(C.groupId),C.items.forEach(g=>i.value.add(g.conditionId)),C.children.forEach(g=>p(g))}function u(C){const{conditionId:g}=C;i.value.add(g),s=i.value.size===0?a.get(g):s;const v=a.get(C.conditionId);d(v).forEach(N=>p(N))}const f=t.computed(()=>i.value.size===0&&r.value.size===1),w=function(C){r.value.delete(C.groupId),C.items.forEach(v=>c(v)),C.children.forEach(v=>!f.value&&w(v));const g=l.get(C.groupId);g&&r.value.has(g.groupId)&&w(g)};c=function(C){const{conditionId:g}=C;if(i.value.has(g)&&i.value.delete(g),r.value.size>0){const v=a.get(g);v&&r.value.has(v.groupId)&&w(v)}};function y(C){const{conditionId:g}=C;i.value.size===0&&(s=a.get(g)),i.value.has(g)?c(C):u(C)}function S(){const C=[];return s&&(s.items.filter(g=>i.value.has(g.conditionId)).forEach(g=>C.push(g)),s.children.filter(g=>r.value.has(g.groupId)).forEach(g=>C.push(g))),C}function V(){i.value.clear(),r.value.clear()}return{clear:V,getSelectedGroupItem:S,selectedItems:i,toggleSelect:y}}const It=t.defineComponent({name:"FConditionList",props:gn,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,n){const o=t.ref(e.key),i=t.ref(e.conditions),r=Cn(e),{convertToSingleControl:a,fields:l,fieldMap:s,loadFieldConfigs:c}=r,d=Fn(),{addCondition:p,changeGroupRelation:u,getConditions:f,group:w,insertConditionTo:y,loadConditionGroup:S,refresh:V,removeCondition:C,rootGroup:g,unGroup:v}=d,{createConditionValue:_}=bn(),N=Ta(e,n,d),{selectedItems:h,toggleSelect:x}=N,{getCompareOperators:b}=Fa(e,n,r);c(!1),l.value=a(l.value),S(i.value);function m(j){var E;const D=((E=s.get(j.fieldCode))==null?void 0:E.editor)||{type:"text"};j.value=_(D.type,void 0),n.emit("labelCodeChange",j)}function F(j,D){n.emit("compareTypeChange",D)}function T(){}n.expose({getConditions:f});function I(j,D){n.emit("valueChange",j,D)}function M(j){return j.items.map(D=>{var E;return t.createVNode("div",{class:"condition-list-item",key:D.conditionId},[t.createVNode("div",{class:"condition-list-item-type mr-3"},[t.createVNode(Ct,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:D.fieldCode,"onUpdate:modelValue":R=>D.fieldCode=R,onChange:R=>m(D)},null)]),t.createVNode("div",{class:"condition-list-item-compare mr-3"},[t.createVNode(Ct,{"value-field":"value","text-field":"name","id-field":"id",data:b(D),modelValue:D.compareType,"onUpdate:modelValue":R=>D.compareType=R,onChange:R=>F(R,D)},null)]),t.createVNode("div",{class:"condition-list-item-control mr-3"},[t.createVNode(ia,{editor:(E=s.get(D.fieldCode))==null?void 0:E.editor,showLabel:!1,modelValue:D.value.value,"onUpdate:modelValue":R=>D.value.value=R,onChange:R=>{I(R,D)}},null)]),t.createVNode("div",{class:"condition-list-item-extend"},[t.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>y(D)},null),t.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>C(D)},null)]),t.createVNode("div",{class:"custom-control custom-checkbox"},[t.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:h.value.has(D.conditionId)},null),t.createVNode("label",{class:"custom-control-label",onClick:()=>x(D)},null)])])})}function k(j){return t.createVNode("div",{class:"condition-list-relation"},[t.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>v(j)},null),t.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>u(j)},[j.relation===1?"与":"或"])])}function O(j){return t.createVNode("div",{class:"condition-list-content"},[t.createVNode("div",{class:"condition-list-content-group"},[M(j),j.children&&j.children.map(D=>O(D))]),k(j)])}function $(){w(N.getSelectedGroupItem()),N.clear()}function B(){return t.createVNode("div",{class:"condition-list-bottom"},[t.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:p},[t.createVNode("span",{class:"f-icon f-icon-filter-add"},null),t.createVNode("span",{class:"ml-1"},[t.createTextVNode("添加条件")])]),t.createVNode("div",{class:"add-condition-btn mb-1",onClick:$},[t.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),t.createVNode("span",{class:"ml-1"},[t.createTextVNode("生成条件组")])]),t.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:T},[t.createTextVNode("重置")])])}return()=>t.createVNode("div",{class:"condition-list",key:o.value},[t.createVNode("div",{class:"condition-list-body"},[O(g.value)]),B()])}});It.install=e=>{e.component(wn.name,wn).component(It.name,It)};const Ma=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth"],Ia={equal:(e,n,o)=>e&&e[n]===o,notEqual:(e,n,o)=>e&&e[n]!==o,contain:(e,n,o)=>e?(e[n]||"").indexOf(o)>-1:!1,startWidth:(e,n,o)=>e?(e[n]||"").startsWith(o):!1,endWidth:(e,n,o)=>e?(e[n]||"").endsWith(o):!1},Ba={equal:(e,n,o)=>e&&e[n]===o,notEqual:(e,n,o)=>e&&e[n]!==o},Oa={equal:(e,n,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()===i}return!1},notEqual:(e,n,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()!==i}return!1},greaterThan:(e,n,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(e,n,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<=i}return!1}},$a={equal:(e,n,o)=>e?String(o).split(",").includes(String(e[n])):!1,notEqual:(e,n,o)=>e?String(o).split(",").findIndex(r=>r===String(e[n]))===-1:!1},ja={equal:(e,n,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[n]));return isNaN(i)?isNaN(r):i===r}return!1},notEqual:(e,n,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[n]));return isNaN(i)?!0:i!==r}return!1},greaterThan:(e,n,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[n]));return isNaN(i)?isNaN(r):r>i}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[n]));return isNaN(i)?isNaN(r):r>=i}return!1},lessThan:(e,n,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[n]));return isNaN(i)?isNaN(r):r<i}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[n]));return isNaN(i)?isNaN(r):r<=i}return!1}};function Bt(){const e=t.ref([]),n=new Map,{loadConditionGroup:o}=Fn(),i=new Map([["boolean",Ba],["datetime",Oa],["enum",$a],["number",ja],["text",Ia]]);function r(u){n.delete(u),e.value=Array.from(n.values())}function a(){n.clear(),e.value=[]}function l(u){const{valueType:f}=u.value,w=u.compareType||"0",y=Ma[Number(w)];return i.get(f)[y]}function s(u){const f=u.relation===2?0:1,w=u.items.map(S=>{const V=l(S);return g=>V(g,S.fieldCode,S.value.getValue())}),y=u.children&&u.children.length?u.children.map(S=>s(S)):[];return{relation:f,filterFunctions:w,children:y}}function c(){const u=o(e.value);return s(u)}function d(u,f){const w=f.filterFunctions.map(S=>S(u)),y=f.children.map(S=>d(u,S));return f.relation===1?w.every(S=>S)&&y.every(S=>S):w.includes(!0)||y.includes(!0)}function p(u){const f=c();return d(u,f)}return{apply:p,clearCondition:a,conditions:e,removeCondition:r}}function Ot(e,n){var C;const{idField:o}=n,i=t.ref(e.summary),r=t.ref(e.group),a=t.ref(((C=e.group)==null?void 0:C.groupFields)||[]),l=t.computed(()=>{var g;return(g=e.group)==null?void 0:g.enable}),s=t.computed(()=>{var g;return(g=e.group)==null?void 0:g.showGroupPanel}),c=t.computed(()=>{const g=i.value;return(g==null?void 0:g.groupFields)||[]}),d=t.computed(()=>{const g=r.value;return g&&g.showSummary}),p=new Map;let u=[];function f(g,v,_,N,h){const x=N[_];x&&(v.reduce((b,m,F)=>{var M;const T=m[x];let I=b.get(T);if(!I){const k=c.value.reduce((O,$)=>(O.set($,0),O),new Map);I={field:x,title:((M=h.get(x))==null?void 0:M.title)||x,value:T,layer:_,details:[],groupSummaries:k},b.set(T,I)}return c.value&&c.value.forEach(k=>{if(I){const O=I.groupSummaries.get(k)||0;I.groupSummaries.set(k,O+m[k])}}),I.details.push(m),b},g),_<N.length-1&&g.forEach((b,m)=>{b.nestGroup=new Map,f(b.nestGroup,b.details,_+1,N,h),b.details=[]}))}function w(g,v){return e.group&&e.group.formatter?e.group.formatter(g.value,{...g,total:v}):`${g.title}:${g.value} (${v})`}function y(g){const v=[];return g.forEach(_=>{const N={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:_.field,__fv_data_grid_group_layer__:_.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:_.value};let h=0;if(v.push(N),_.nestGroup){const x=y(_.nestGroup);v.push(...x),h+=x.length}if(_.details&&_.details.length&&(v.push(..._.details),h+=_.details.length),d.value){const x={__fv_data_grid_group_field__:_.field,__fv_data_grid_group_layer__:_.layer,__fv_data_grid_group_summary__:!0};x[o.value]=`summary_of_${_.field}_${_.value}`,x[_.field]=Array.from(_.groupSummaries.entries()).reduce((b,[m,F])=>`${b} ${m} total:${F} `,""),v.push(x)}_.groupSummaries&&_.groupSummaries.size&&_.groupSummaries.forEach((x,b)=>{N[b]=x}),N[o.value]=`group_of_${_.field}_${_.value}`,N[_.field]=w(_,h)}),v.forEach((_,N)=>{_.__fv_data_index__=N}),v}function S(g,v,_){return!g||g.length===0||!v.length?v:(g.join(","),p.clear(),u=[],f(p,v,0,g,_),u=y(p),u)}function V(g){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":g.collapse}}return{collpaseGroupIconClass:V,generateGroupData:S,groupFields:a,shouldGroupingData:l,shouldGroupPanel:s}}function Pa(e,n,o,i){const r=t.ref(!!e.hierarchy),{idField:a}=i,{collapseField:l,hasChildrenField:s,parentIdField:c}=o,d=new Map;function p(I,M){const k=new Map;return I.reduce((O,$)=>{const B=$[c.value]!==void 0?$[c.value]:"";if(B&&M.has(B)){const D=M.get(B);$.__fv_parent_index__=D.__fv_index__,D.__fv_hasChildren__=!0}const j=O.has(B)?O.get(B):[];return j.push($),O.set(B,j),O},k),k}function u(I){const M=new Map;return I.reduce((k,O)=>{const $=O[a.value];return k.set($,O),k},M),M}function f(I){I.forEach(M=>{const k=M[a.value];M.__fv_children_index__.map($=>I[$]).forEach($=>{$.__fv_parents__=new Map([...M.__fv_parents__.entries(),[k,!0]])})})}function w(I){I.forEach(M=>{const k=new Set(M.__fv_children_index__);M.__fv_children_index__=[...k].sort((O,$)=>O-$)})}function y(I,M){I.forEach(k=>{const O=k.__fv_parents__;Array.from(O.keys()).map($=>M.get($)).forEach($=>{$.__fv_children_index__.push(k.__fv_index__)})}),w(I)}function S(I){I.forEach(M=>{M.__fv_child_with_lines__=[],M.__fv_child_length__=M.__fv_descendant_index__.length,M.__fv_descendant_index__.map(k=>I[k]).reduce((k,O)=>(k.__fv_child_length__+=O.__fv_children_index__.length,k.__fv_child_with_lines__.push(...O.__fv_children_index__,O.__fv_index__),k),M)})}function V(I,M){return{id:I,index:M,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function C(I,M){Array.from(M.keys()).forEach(k=>{M.get(k).reduce(($,B)=>{const j=B[a.value],D=I.get(B[a.value]),E=I.get(k);return E&&(E.children.set(j,D),E.children.set(j,D),D.parentId=k,D.parentIndex=E.index,D.parents.set(k,E)),$},I)})}function g(I){I.children.forEach(k=>{k.parents=new Map([...I.parents.entries(),[I.id,I]]),g(k)})}function v(I,M){I.filter(k=>k[c.value]===void 0||k[c.value]==="").forEach(k=>{const O=k[a.value],$=M.get(O);g($)})}function _(I){Array.from(I.values()).forEach(M=>{Array.from(M.parents.values()).forEach(k=>{k.descendant.set(M.id,M)})})}function N(I){d.clear(),I.forEach((O,$)=>{const B=O[a.value];d.set(B,V(B,$))});const M=u(I),k=p(I,M);return C(d,k),v(I,d),_(d),d}function h(I){const M=I[a.value],k=d.get(M);return k&&k.children.size>0}function x(I){return I[s.value]&&!h(I)}function b(I){N(n.value);const M=u(I),k=p(I,M);return I.forEach((O,$)=>{var E;const B=O[a.value],j=k.has(B)?(E=k.get(B))==null?void 0:E.map(R=>R.__fv_index__):[],D=V(B,$);O.__fv_graph_node__=D,O.__fv_children_index__=j,O.__fv_descendant_index__=[...j],O.__fv_parents__=new Map,x(O)&&(O[l.value]=!0)}),f(I),y(I,M),e.showLines&&S(I),I}function m(I,M,k){const $=k.value[I][a.value],B=d.get($);if(B){const j=d.get(B.parentId);let D=k.value.length-1;if(j){const E=Array.from(j.children.keys()).indexOf(B.id);if(E===j.children.size-1){const z=Array.from(j.descendant.values())[j.descendant.size-1];D=k.value.findIndex(he=>he[a.value]===z.id)+1}else{const z=Array.from(j.children.values())[E+1];D=k.value.findIndex(he=>he[a.value]===z.id)}M[s.value]=!1,M[c.value]=j.id,k.value.splice(D,0,M)}}}function F(I,M,k){const O=k.value[I],$=O[a.value];if(d.get($)){const D=k.value.findIndex(E=>E[a.value]===$)+1;O[s.value]=!0,O[l.value]=!1,M[s.value]=!1,M[c.value]=$,k.value.splice(D,0,M)}}function T(I,M){const k=I[a.value],O=d.get(k),$=Array.from(O.descendant.keys());$.unshift(k);const B=d.get(O.parentId);if(B&&(B.children.delete(k),B.children.size===0)){const D=M.find(E=>E[a.value]===O.parentId);D[s.value]=!1,D[l.value]=!1}return M.filter(D=>$.indexOf(D.id)===-1)}return{generateHierarchyData:b,hasRealChildren:h,insertSibling:m,insertChild:F,shouldStratifyData:r,trimmedOriginalData:T}}const Ea={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}},Da={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},$t=t.defineComponent({name:"Toast",props:Da,emits:["close","click"],setup:(e,n)=>{const o=t.ref(e.animate),i="fadeOut",r=t.computed(()=>e.options),a=t.ref(!1),l=t.computed(()=>{const C={animated:a.value,toast:!0};return C[e.animate]=!1,C[i]=a.value,C[r.value.type]=!0,r.value.theme&&(C[r.value.theme]=!0),C}),s=t.computed(()=>{const v=`f-icon-${r.value&&r.value.type?r.value.type.replace("toasty-type-",""):"default"}`,_={"f-icon":!0};return _[v]=!0,_}),c=t.computed(()=>r.value.title||r.value.message),d=t.computed(()=>r.value.title&&r.value.message),p=t.computed(()=>!r.value.title&&r.value.message),u=t.computed(()=>e.showCloseButton),f=t.computed(()=>!!r.value.buttons||!!n.slots.default);function w(C){C.stopPropagation(),C.preventDefault(),a.value=!1,setTimeout(()=>{n.emit("close",r.value)},200)}function y(C,g){}function S(C){return`f-preten-link ${C.customClass?C.customClass:""}`}t.watch(o,()=>{o.value});const V=()=>{var C;return t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"after-toast-msg text-right"},[!n.slots.default&&((C=r.value.buttons)==null?void 0:C.map(g=>t.createVNode("span",{class:S(g),onClick:v=>void 0},[g.text]))),n.slots.default&&n.slots.default()])])};return()=>t.createVNode("div",{class:l.value},[u.value&&t.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:w},[t.createVNode("span",{class:"f-icon modal_close"},null)]),c.value&&t.createVNode("section",{class:"modal-tips"},[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:s.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[d.value&&t.createVNode(t.Fragment,null,[t.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:r.value.title},null),t.createVNode("p",{class:"toast-msg",innerHTML:r.value.message},null),f.value&&V()]),p.value&&(r.value.buttons?t.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null),t.createVNode("div",{class:"after-toast-title text-right ml-auto"},[V()])]):t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null))])])])}}),gt=t.defineComponent({name:"Notify",props:Ea,emits:["close","empty"],setup(e,n){const o=t.computed(()=>({"farris-notify":!0})),i={left:12,right:12,top:20,bottom:12},r=t.ref(),a=t.ref(e.options),l=t.ref(e.showCloseButton),s=t.computed(()=>e.position||"bottom-right"),c=t.computed(()=>e.timeout!=null?e.timeout:3e3),d=t.computed(()=>{const f=e.bottom?e.bottom:i.bottom,w=e.top?e.top:i.top,y={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:i.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:i.right}px`:"",top:s.value.indexOf("top")>-1?`${w}px`:"",bottom:s.value.indexOf("bottom")>-1?`${f}px`:""};return s.value.indexOf("center")>-1&&(y.left="50%",y.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(y.top="50%",y.transform="translate(-50%, -50%)")),y});function p(f){n.emit("close")}c.value&&setTimeout(()=>{p()},c.value),n.expose({closeToast:p,container:r,notifyPosition:s});function u(f,w){p()}return()=>t.createVNode("div",{class:o.value,style:d.value,ref:r},[t.createVNode($t,{options:a.value,showCloseButton:l.value,animate:e.animate,onClose:f=>u(f,a.value)},null)])}});class Tn{constructor(){W(this,"notifyRefs",[]);W(this,"globalConfig",t.reactive({}))}createNotifyInstance(n){const o=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...n}),a=document.createElement("div");a.style.display="contents";const l=t.createApp({setup(){const s=t.ref();function c(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(r,s),l.unmount()},220)}if(r.position.indexOf("top")>-1){const d=o.getNotifyInstances(r.position),p=d[d.length-1];if(p){const u=p.value.container.getBoundingClientRect();r.top=u.bottom}}return t.onUnmounted(()=>{document.body.removeChild(a)}),t.onMounted(()=>{o.updateNotifyPositionForCreate(r,s)}),()=>t.createVNode(t.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[t.createVNode(gt,t.mergeProps({ref:s},r,{onClose:c}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(a),l.mount(a),l}getNotifyInstances(n){return this.notifyRefs.filter(o=>o.value.notifyPosition===n)}updateNotifyPositionForCreate(n,o){if(this.notifyRefs&&this.notifyRefs.length){const i=window.innerHeight;n.position.indexOf("bottom")>-1&&this.getNotifyInstances(n.position).forEach(r=>{const a=r.value.container.getBoundingClientRect();r.value.container.style.bottom=a.height+i-a.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(n,o){const i=this.notifyRefs.indexOf(o);if(n.position.indexOf("top")>-1){const r=this.getNotifyInstances(n.position),a=r.indexOf(o);r.slice(a+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}i>-1&&this.notifyRefs.splice(i,1)}show(n){return this.createNotifyInstance(n)}buildNotifyProps(n,o){let i="",r="",a,l,s;typeof o=="string"?i=o:o&&(i=o.message||"",r=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,a=o.timeout!=null?o.timeout:null);const d={options:{type:n,message:i,title:r}};return l!=null&&(d.position=l),s!=null&&(d.showCloseButton=s),a!=null&&(d.timeout=a),d}info(n){const o=this.buildNotifyProps("info",n);return this.show(o)}success(n){const o=this.buildNotifyProps("success",n);return this.show(o)}warning(n){const o=this.buildNotifyProps("warning",n);return this.show(o)}error(n){const o=this.buildNotifyProps("error",n);return this.show(o)}close(n){n&&n.unmount()}closeAll(){this.notifyRefs.forEach(n=>{n==null||n.value.closeToast()}),this.notifyRefs.length=0}}const Ra=Symbol("NOTIFY_SERVICE_TOKEN");gt.install=e=>{e.component(gt.name,gt),e.component($t.name,$t);const n=new Tn;e.provide(Ra,n),e.provide("FNotifyService",n)};function Mn(e,n,o,i,r){var Ke;const{pageSize:a,total:l,shouldRenderPagination:s,currentPage:c,mode:d}=r,p=new Map,u=new Map,f=new Map,w=new Map,y=new Map,S=t.ref([]),V=t.ref([]),C=Bt(),g=Ot(e,i),{generateGroupData:v,groupFields:_,shouldGroupingData:N}=g,h=t.ref(e.data),x=Pa(e,h,o,i),{generateHierarchyData:b,hasRealChildren:m,insertSibling:F,insertChild:T,shouldStratifyData:I,trimmedOriginalData:M}=x,{idField:k,reviseIdentifyField:O}=i,$=t.ref(e.newDataItem),B=t.ref(e.data),j=t.ref(e.data),{flatTreeData:D}=tl(e);if(e.data&&((Ke=e.data[0])!=null&&Ke.children)){const A=Se(e.data);h.value=A,B.value=A,j.value=A}const E=t.ref(e.summary),R=t.computed(()=>{const A=E.value;return(A==null?void 0:A.groupFields)||[]});let z=new Map;const ie=t.computed(()=>{var A;return((A=B.value)==null?void 0:A.length)||0}),he=t.ref(e.pagination),Fe=new Tn,de=t.computed(()=>s.value?d.value==="server"?0:(c.value-1)*a.value:0),_e=t.computed(()=>s.value?d.value==="server"?Math.min(a.value,ie.value):Math.min(de.value+a.value,l.value,ie.value):ie.value);function Se(A){return D(A)}function me(){var ae;B.value=h.value,N.value&&(B.value=v(_.value,h.value,n)),z=R.value.reduce((Be,Ee)=>(Be.set(Ee,0),Be),z);const A=de.value,ne=_e.value;let le=0;const Ne=[];if((ae=B.value)!=null&&ae.length){O(B.value);const Be=k.value!==e.idField;for(let Ee=A;Ee<ne;Ee++){const ye=B.value[Ee];ye.__fv_data_grid_group_row__?(le=0,ye.__fv_data_index__=""):ye.__fv_data_grid_group_summary__?ye.__fv_data_index__="":(ye.__fv_disabled__=ye[e.disabledField],le++,s.value?ye.__fv_data_index__=le+(c.value-1)*a.value:ye.__fv_data_index__=le),ye.__fv_index__=Ee,Be&&(ye[k.value]=Ee),R.value.forEach(De=>{const Re=z.get(De)||0;z.set(De,Re+ye[De])}),Ne.push(ye)}}return I.value&&b(Ne),j.value=[...Ne],Ne}const ue=t.ref(me());function ge(A,ne,le=!1){const ae=(le?me():[...j.value]).filter(ye=>C.apply(ye)),Be=A&&A.length?ae.filter(ye=>A.reduce((De,Re)=>De&&Re.filter(ye),!0)):ae,Ee=ne&&ne.length?Be.sort((ye,De)=>{const Re=[...ne],we=Re.shift();let Xe=we.compare(ye[we.field],De[we.field]);for(;Xe===0&&Re.length!==0;){const rt=Re.shift();rt&&(Xe=rt.compare(ye[rt.field],De[rt.field]))}return Xe}):Be;return ue.value=Ee.map((ye,De)=>{if(ye.__fv_data_grid_group_row__){const Re=`group_of_${ye.__fv_data_grid_group_field__}_${ye.__fv_data_grid_group_value__}`;ye.__fv_data_grid_group_collapse__=!!p.get(Re)}return ye.__fv_index__=De,ye}),ue.value}function L(A){return y.clear(),V.value=A,V.value.reduce((ne,le)=>(ne.set(le.field,le),ne),y),ge([],V.value)}function U(A,ne){return y.set(A,ne),V.value=Array.from(y.values()),ge([],V.value)}function se(A){return y.delete(A),V.value=Array.from(y.values()),ge([],V.value)}function ee(A,ne){return u.set(A,ne),S.value=Array.from(u.values()),ge([],Array.from(y.values()))}function ce(A){return u.delete(A),S.value=Array.from(u.values()),ge([],Array.from(y.values()),!0)}function be(){return u.clear(),S.value=[],ge([],Array.from(y.values()),!0)}function fe(A,ne){const le=`group_of_${A}_${ne}`;p.set(le,!0);const Ne=ae=>ae[A]!==ne;return f.set(`collapse_${A}_${ne}`,{field:A,fieldName:A,fieldType:"string",filterValue:ne,filter:Ne}),ge(Array.from(f.values()),Array.from(y.values()))}function Ce(A,ne){const le=`group_of_${A}_${ne}`;return p.set(le,!1),f.delete(`collapse_${A}_${ne}`),ge(Array.from(f.values()),Array.from(y.values()),!0)}function Ie(A){const ne=A.raw[k.value],le=Ne=>!Ne.__fv_parents__.has(ne);w.set(`fold_${ne}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(ne),filter:le}),ge(Array.from(w.values()),Array.from(y.values())),b(ue.value)}function P(A){const ne=A[k.value];w.delete(`fold_${ne}`)}function X(A){P(A.raw),ge(Array.from(w.values()),Array.from(y.values()),!0),b(ue.value)}function re(){const A=me();ue.value=A,e.hierarchy&&(ge(Array.from(w.values()),Array.from(y.values())),b(ue.value))}function q(A){var ne;if(A&&((ne=A[0])!=null&&ne.children)){const le=Se(A);h.value=le,B.value=le,j.value=le}else h.value=A,B.value=A,j.value=A;re()}function xe(A,ne,le){return(A&&A.length?ue.value.filter((ae,Be)=>A.reduce((Ee,ye)=>Ee&&ye.filter(ae),!0)):ue.value).slice(ne,le)}function K(A){(A-1)*a.value<=ie.value&&re()}function oe(A){h.value.push(je.cloneDeep(A)),ue.value=me()}function pe(A=0){if(!(A>-1))return!1;const le=$.value();e.hierarchy?F(A,le,h):h.value.splice(A,0,le),re()}function Ve(A=0){if(!(A>-1&&e.hierarchy))return!1;const le=$.value(),Ne=h.value[A];P(Ne),T(A,le,h),re()}function Te(A){const ne=A?A-1:0;h.value.splice(ne,1),re()}function Pe(A){const ne=h.value.findIndex(le=>le[k.value]===A);ne!==-1&&(h.value.splice(ne,1),re())}function Ge(A){const ne=A>-1?h.value[A]:null;if(!(ne&&ne.deletable!==!1))return!1;h.value=M(ne,h.value),re()}function Le(){const A=f.size>0?Array.from(f.values()):[];return ge(A,Array.from(y.values()))}function Ze(A){he.value&&(he.value.size=A,re())}function et(A,ne){const le=h.value[Number(A)-1];le.editable!==!1?(le.name=ne,re()):Fe.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function tt(A){return A.map(le=>{const Ne=j.value.findIndex(ae=>ae[k.value]===le);return Ne>-1?j.value[Ne]:null}).filter(le=>le!=null)}return{addFilter:ee,addNewDataItem:oe,addSorter:U,changePageSizeTo:Ze,collapse:fe,dataView:ue,editDataItem:et,expand:Ce,filters:S,fold:Ie,getRange:xe,getSelectionItems:tt,hasRealChildren:m,load:q,navigatePageTo:K,summaries:z,totalItems:ie,insertNewDataItem:pe,insertNewChildDataItem:Ve,removeAllFilter:be,removeDataItem:Te,removeDataItemById:Pe,removeFilter:ce,removeHierarchyDataItem:Ge,removeSorter:se,rawView:j,refresh:Le,setSorters:L,sorters:V,updateDataView:re,unFold:X,startIndex:de,endIndex:_e,originalData:h}}function In(){function n(l){return l.field}function o(l){const s=n(l),c=localStorage.getItem(s);return c?JSON.parse(c):[]}function i(l,s){const c=n(l);localStorage.setItem(c,JSON.stringify(s))}function r(l,s){if(!s)return;const c=o(l),p=[c.find(u=>u.name===s)||{id:Date.now(),name:s,selectable:!0},...c.filter(u=>u.name!==s)];p.length>5&&(p.length=5),i(l,p)}function a(l,s){const d=[...o(l).filter(u=>u.name!==s)],p=n(l);localStorage.setItem(p,JSON.stringify(d))}return{getFilterHistory:o,removeFilterHistory:a,setFilterHistory:i,updateFilterHistory:r}}function Bn(e){t.ref(e.selection.showCheckbox||!1);const n=t.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),o=t.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),i=t.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.parentIdField)||"parent"}),r=t.computed(()=>e.hierarchy&&e.selection.showCheckbox),a=t.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:n,hasChildrenField:o,parentIdField:i,shouldShowCheckBox:r,shouldShowIcon:a}}function Aa(e,n,o,i){var S,V,C,g,v,_;const{idField:r}=o,a=t.ref(((V=(S=e.hierarchy)==null?void 0:S.cascadeOption)==null?void 0:V.autoCheckChildren)||!1),l=t.ref(((g=(C=e.hierarchy)==null?void 0:C.cascadeOption)==null?void 0:g.autoCheckParent)||!1),s=t.ref(((_=(v=e.hierarchy)==null?void 0:v.cascadeOption)==null?void 0:_.selectionRange)||"All");t.watch(()=>{var N;return(N=e.hierarchy)==null?void 0:N.cascadeOption},N=>{a.value=N?!!N.autoCheckChildren:!1,l.value=N?!!N.autoCheckParent:!1,s.value=N?N.selectionRange:"All"});function c(N,h){for(let x=0;x<h.length;x++)if(!N.includes(h[x]))return!1;return!0}function d(N,h){return N.filter(b=>h.indexOf(b)===-1)}const p=t.computed(()=>s.value==="OnlyParent"),u=t.computed(()=>s.value==="OnlyChildren");function f(N,h){let x=N;const b=n.value[h],m=b.raw[r.value],F=Array.from(b.raw.__fv_descendant_index__).map($=>n.value[$]),T=F.map($=>$.raw[r.value]),I=c(N,T),M=c(N,[m]);return M&&I&&p.value&&(x=d(N,T),F.forEach($=>{$.disable=!0})),M&&I&&u.value&&(x=d(N,[m]),F.forEach($=>{$.disable=!0})),x}function w(N,h){let x=N;const b=h[r.value],m=Array.from(h.__fv_children_index__).map(O=>n.value[O]),F=m.map(O=>O.raw[r.value]),T=c(N,F),I=c(N,[h[r.value]]);return I&&T&&p.value&&(x=d(N,F),m.forEach(O=>{O.disable=!0})),I&&T&&u.value&&(x=d(N,[b]),m.forEach(O=>{O.disable=!0})),x}function y(N,h){let x=N.map(T=>T[r.value]);return h.__fv_parent_index__>0&&(x=f(x,h.__fv_parent_index__)),h.__fv_children_index__.length>0&&(x=w(x,h)),N.filter(T=>x.includes(T[r.value]))}return{autoCheckChildren:a,autoCheckParent:l,interactAfterCheckHierarchyItem:y}}function Ha(e,n,o,i,r){const{select:a,unSelect:l,indeterminate:s,getSelectedItems:c}=i,{autoCheckChildren:d,autoCheckParent:p,interactAfterCheckHierarchyItem:u}=Aa(e,n,o),{idField:f}=o;function w(){return n.value.filter(h=>!!h.checked).map(h=>h.raw.__fv_index__)}function y(h,x){return h.filter(m=>x.indexOf(m)===-1)}function S(h){const x=w();h.raw.__fv_children_index__.some(m=>x.includes(m))&&!!h.checked!==!0&&s(h)}function V(h){let x=h.raw.__fv_parent_index__;for(;x!==void 0;){const b=w(),m=n.value[x],F=y(m.raw.__fv_children_index__,b);F.length===m.raw.__fv_children_index__.length&&F.length!==0?l(m):F.length===0?p.value&&a(m):F.length<m.raw.__fv_children_index__.length&&m.checked!==!0&&s(m),x=m.raw.__fv_parent_index__}}function C(h){const x=!!h.checked;d.value&&h.raw.__fv_children_index__.map(b=>n.value[b]).forEach(b=>{x?a(b):l(b)})}function g(h){C(h),V(h);const x=h.raw;let b=c();b=u(b,x),S(h),r.emit("selectionChange",b)}function v(h,x){let b=-1;if(h.raw.__fv_parent_index__>-1){const I=n.value[h.raw.__fv_parent_index__].raw.__fv_descendant_index__,M=I.length>1,k=I.findIndex($=>$===x),O=k===I.length-1;b=M?O?I[k-1]:I[k+1]:-1}return b>-1?n.value[b]:null}function _(h){return h.raw.__fv_parent_index__>-1?n.value[h.raw.__fv_parent_index__]:null}function N(h){const x=n.value[h];if(!x)return null;const b=v(x,h),F=b!==null?b:_(x);return F?F.raw[f.value]:null}return{getNextSelectableHierarchyItemId:N,toggleSelectHierarchyItem:g}}function On(e,n,o,i,r,a,l,s){var xe;const{dataView:c}=n,{getVisualData:d,maxVisibleRowIndex:p,minVisibleRowIndex:u}=r,f=t.ref(i.value.primaryColumnsWidth),w=t.ref(i.value.leftColumnsWidth),y=t.ref(i.value.rightColumnsWidth),S=((xe=e.rowOption)==null?void 0:xe.height)||28,V=t.ref(0),C=t.ref(0);let g=0,v=a.value-1;const _=t.ref(0),N=t.ref(0),h=t.ref(0);function x(){if(c.value.length<=0)return 0;const K=p.value<c.value.length?c.value[p.value]:c.value[c.value.length-1];return(K.__fv_data_position__||0)+(K.__fv_data_height__||0)+Math.max(c.value.length-1-p.value,0)*S}const b=t.computed(()=>{const K=x();return c.value.length>a.value+l?Math.floor((a.value+l)/c.value.length*N.value):Math.floor(N.value/Math.max(K,N.value)*N.value)}),m=t.computed(()=>Math.floor(h.value/Math.max(f.value,h.value)*_.value)),F=0,T=0,I=t.computed(()=>_.value-(w.value+f.value+y.value+s.value));function M(K){const oe=c.value.find(pe=>pe.__fv_data_position__>K);return oe?oe.__fv_index__-1:0}function k(K){var Ge,Le;if(!c.value.length){o.value=[];return}const oe=(Ge=e.pagination)!=null&&Ge.enable?0:Math.max(g-l,0),pe=c.value[c.value.length-1].__fv_index__,Ve=(Le=e.pagination)!=null&&Le.enable?c.value.length-1:Math.min(v+l-1,pe),Te=c.value[oe-1],Pe=d(oe,Ve,Te,K);Pe.length&&(o.value=[...Pe])}const O=t.computed(()=>x()>N.value),$=t.computed(()=>Math.floor(f.value)>h.value);function B(K){let oe=V.value+K;oe>F&&(oe=F);const pe=oe>F,Ve=x(),Te=O.value;Te&&oe<N.value-Ve&&(oe=N.value-Ve),(!Te||pe)&&(oe=F),V.value!==oe&&(V.value=oe,g=M(Math.abs(V.value)),v=g+a.value,(g<u.value||v>p.value-l/2)&&k())}function j(K){if(!$.value){C.value=0;return}let oe=C.value+K;oe>T&&(oe=T),oe<I.value&&(oe=I.value),C.value!==oe&&(C.value=oe)}function D(){Math.abs(C.value)+h.value>f.value&&(C.value=Math.min(h.value-f.value,0))}function E(){V.value=0,g=0,v=a.value-1,k()}t.watch(h,()=>{j(0)}),t.watch(i,()=>{f.value=i.value.primaryColumnsWidth,w.value=i.value.leftColumnsWidth,y.value=i.value.rightColumnsWidth});function R(K){let{deltaX:oe}=K.deltaX,pe=-1*K.deltaY;return typeof oe>"u"&&(oe=-1*K.wheelDeltaX/6),typeof pe>"u"&&(pe=K.wheelDeltaY/6),K.deltaMode&&K.deltaMode===1&&(oe*=10,pe*=10),K.shiftKey?{deltaY:-pe,deltaX:-oe}:{deltaX:oe,deltaY:pe}}function z(K){if(e.disabled)return;K.preventDefault(),K.stopPropagation();const{deltaX:oe,deltaY:pe}=R(K);B(pe),j(oe)}const ie=t.computed(()=>({height:`${c.value.length*S}px`,width:`${w.value}px`,transform:`translateY(${V.value}px)`})),he=t.computed(()=>({transform:`translateY(${V.value}px)`})),Fe=t.computed(()=>({height:`${c.value.length*S}px`,width:`${f.value}px`,transform:`translate(${C.value}px, ${V.value}px)`})),de=t.computed(()=>({transform:`translate(${C.value}px, ${V.value}px)`})),_e=t.computed(()=>({height:`${c.value.length*S}px`,width:`${y.value}px`,transform:`translateY(${V.value}px)`})),Se=t.computed(()=>({transform:`translateY(${V.value}px)`})),me=t.computed(()=>({height:`${c.value.length*S}px`,width:`${s.value}px`,transform:`translateY(${V.value}px)`})),ue=t.computed(()=>({width:`${w.value}px`})),ge=t.computed(()=>({transform:`translateX(${C.value}px)`})),L=t.computed(()=>({width:`${y.value}px`})),U=t.computed(()=>{const K=x();return V.value/(N.value-K)*(N.value-b.value)}),se=t.computed(()=>({height:`${b.value}px`,top:`${U.value}px`})),ee=t.computed(()=>C.value/I.value*(_.value-m.value)),ce=t.computed(()=>({width:`${m.value}px`,left:`${ee.value}px`})),be=t.ref(!1),fe=t.ref(-1),Ce=t.ref(-1),Ie=t.ref();function P(K){if(be.value&&Ce.value!==-1){const oe=Ce.value-K.pageX,pe=_.value-m.value;if(Math.abs(oe)<=pe){const Ve=oe/(h.value-m.value)*(f.value-h.value);j(Ve),Ce.value=K.pageX}}}function X(K){if(be.value&&fe.value!==-1){const oe=fe.value-K.pageY,pe=x(),Ve=pe-b.value;if(Math.abs(oe)<=Ve){const Te=oe/(N.value-b.value)*(pe-N.value);B(Te),fe.value=K.pageY}}}function re(K){be.value=!1,fe.value=-1,Ce.value=-1,document.removeEventListener("mouseup",re),document.removeEventListener("mousemove",P),document.removeEventListener("mousemove",X),document.body.style.userSelect="",Ie.value&&(Ie.value.style.opacity=null)}function q(K,oe,pe){var Pe;be.value=!0;const Ve=(Pe=K.target)==null?void 0:Pe.parentElement;Ve&&(Ve.style.opacity=1,Ie.value=Ve);const Te=pe==="horizontal"?P:X;pe==="vertical"&&(fe.value=K.pageY),pe==="horizontal"&&(Ce.value=K.pageX),oe.value&&(oe.value,document.addEventListener("mousemove",Te),document.addEventListener("mouseup",re),document.body.style.userSelect="none")}return{onMouseDownScrollThumb:q,onWheel:z,dataGridWidth:_,gridDataStyle:Fe,gridHeaderColumnsStyle:ge,gridMergedDataStyle:de,gridSideStyle:me,fitHorizontalScroll:D,viewPortWidth:h,viewPortHeight:N,horizontalScrollThumbStyle:ce,leftFixedGridDataStyle:ie,leftFixedGridHeaderColumnsStyle:ue,leftFixedGridMergedDataStyle:he,reCalculateVisualDataRows:k,resetScroll:E,rightFixedGridDataStyle:_e,rightFixedGridHeaderColumnsStyle:L,rightFixedGridMergedDataStyle:Se,shouldShowHorizontalScrollbar:$,shouldShowVirticalScrollbar:O,verticalScrollThumbStyle:se,offsetX:C,offsetY:V}}function $n(e,n,o,i,r,a,l,s){const c=t.ref(i.value-1+r),d=t.ref(0),{renderDataRow:p}=a,u=l?l.renderGroupRow:p,f=s?s.renderSummaryRow:p;function w(V){let C=p;return V.__fv_data_grid_group_row__&&(C=u),V.__fv_data_grid_group_summary__&&(C=f),C}function y(V,C,g,v){const{dataView:_}=o,N=[];if(_.value.length>0){const h=v?Date.now().toString():"";for(let x=V,b=0;x<=C;x++,b++){const m=_.value[x],F=_.value[x-1]||g,T=N[b-1],I=F?(F.__fv_data_position__||0)+(F.__fv_data_height__||0):0,k=w(m)(m,F,T,x,I,n.value,N);k.refreshKey=h,N.push(k)}}return d.value=N.length>0?N[0].index:0,c.value=N.length>0?N[N.length-1].index:0,N}function S(V,C,g){const v=C.groupField||"",{groupValue:_}=C;o[V](v,_);const{dataView:N}=o,h=g[0].index,x=Math.min(h+i.value+r+1,N.value.length-1);return y(h,x)}return{getVisualData:y,maxVisibleRowIndex:c,minVisibleRowIndex:d,toggleGroupRow:S}}function Ga(){function e(n,o){var a,l;const i=o.raw[n.field],r=(a=n.editor)==null?void 0:a.enumData.find(s=>{var c;return s[(c=n.editor)==null?void 0:c.idField]===i});return r==null?void 0:r[((l=n.editor)==null?void 0:l.textField)||"name"]}return{renderEnumColumn:e}}function La(){function e(i,r){return i?t.createVNode("span",{innerHTML:r.formatter.trueText},null):t.createVNode("span",{innerHTML:r.formatter.falseText},null)}function n(i,r){var a,l;return i?(a=r.formatter)==null?void 0:a.trueText:(l=r.formatter)==null?void 0:l.falseText}function o(i,r){const{formatter:a}=i,l=r.raw[i.field];if(a.type===Vt.TEXT)return n(l,i);if(a.type===Vt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function Wa(){const{formatTo:e}=qe.useDateFormat();function n(i,r){return e(i,r.formatter.dateFormat)}function o(i,r){const a=r.raw[i.field];return n(a,i)}return{renderDateColumn:o}}function qa(){const{formatTo:e}=qe.useNumberFormat();function n(i,r){const{formatter:a}=r,l={precision:a.precision,prefix:a.prefix||"",suffix:a.suffix||"",decimalSeparator:a.decimal||".",groupSeparator:a.thousand||""};return e(i,l)}function o(i,r){const a=r.raw[i.field];return n(a,i)}return{renderNumberColumn:o}}function za(){const{renderBooleanColumn:e}=La(),{renderEnumColumn:n}=Ga(),{renderNumberColumn:o}=qa(),{renderDateColumn:i}=Wa();function r(s){return s}function a(s,c){const{formatter:d}=c;return d.customFormat?new Function(`return ${d.customFormat}`)():s}function l(s,c,d){const p=d.data[c.field],{formatter:u}=c;return u.type==="none"?p:u.type==="custom"?a(p,c):u.type==="enum"?n(c,d):u.type==="number"?o(c,d):u.type==="boolean"?e(c,d):u.type==="date"?i(c,d):p}return{renderFormatColumn:l}}function jn(e,n,o){var V;const i=t.ref(e.mergeCell),a=((V=t.ref(e.rowOption).value)==null?void 0:V.wrapContent)||!1,{updateVisualInfomation:l}=o,{renderCommandColumn:s}=lr(),{renderFormatColumn:c}=za();function d(C,g,v,_,N,h=1){const x={colSpan:h,rowSpan:1,index:v,field:C,data:_[C],editingData:_[C],parent:N,mode:g,align:"left",valign:"start",showEllipsis:!0,getEditor:b=>b.data,setRef:b=>l(b,x,_),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return x}function p(C,g,v){return C.getEditor=_=>n.getEditor(_,g,_.parent),C.setRef=_=>a&&l(_,C,v),C.update=_=>{_!==void 0&&(C.editingData=_)},C.accept=()=>{v[g.field]=C.editingData,C.data=v[g.field]},C.cancel=()=>{C.editingData=C.data},C.updateData=_=>{v[g.field]=_[g.field],C.data=v[g.field]},C}function u(C,g){g.dataType==="commands"?C.formatter=(v,_)=>s(g,_):g.formatter&&(C.formatter=(v,_)=>typeof g.formatter=="function"?g.formatter(v,_):c(g.dataType,g,_))}function f(C,g,v){const _=g&&g.data[v];if(_&&_.data===C.data){const h=_&&_.spannedBy||_;h.rowSpan++,h.spanned=h.spanned||[],h.spanned.push(C),C.colSpan=0,C.rowSpan=0,C.spannedBy=h}}function w(C,g,v){i.value&&f(C,g,v.field)}function y(C,g){g.showEllipsis!==void 0&&(C.showEllipsis=g.showEllipsis),C.align=g.align,C.valign=g.valign}function S(C,g,v,_,N){const h=C.readonly?Oe.readonly:Oe.editable,x=d(C.field,h,g,v,_);return y(x,C),p(x,C,v),u(x,C),w(x,N,C),x}return{createCellByColumn:S,createCellByField:d}}function Pn(e,n,o,i,r,a){var C,g;const l=t.ref(e.rowOption),s=((C=l.value)==null?void 0:C.height)||28,c=((g=l.value)==null?void 0:g.wrapContent)||!1,{idField:d}=i,{collapseField:p}=o,{updateRowPosition:u}=r,{createCellByColumn:f}=a;function w(v,_,N,h,x,b,m){var he,Fe;const{__fv_data_grid_group_field__:F,__fv_data_grid_group_value__:T,__fv_data_index__:I}=N,M=N.__fv_data_grid_group_layer__||N.__fv_parents__?(he=N.__fv_parents__)==null?void 0:he.size:0,k=typeof N.parent=="number"?Number(N.parent):-1,O=N.__fv_data_grid_group_collapse__||N[p.value],$=N.__fv_visible__===void 0?!0:N.__fv_visible__,B=N.__fv_checked__,j=N.__fv_indeterminate__,D=N.__fv_disabled__||N[e.disabledField],E=m==null?void 0:m.find(de=>de.raw[d.value]===N.parent),R=E&&E.collapse;h&&(h.parent,N.parent);const z=R||E&&!E.visible,ie={collapse:O,data:{},dataIndex:I,groupField:F,groupValue:T,layer:M,index:_,parentIndex:k,pre:h,top:b,type:v,raw:N,checked:B,disabled:D,indeterminate:j,setRef:de=>{ie.ref=de},visible:$&&!z,status:He.initial};return h||(N.__fv_data_position__=0),c||(ie.height=s,N.__fv_data_height__=ie.height,u(ie,N)),(Fe=l.value)!=null&&Fe.customRowStatus&&(l.value.customRowStatus(ie),N.__fv_collapse__=ie.collapse,N.__fv_visible__=ie.visible,N.__fv_disabled__=ie.disabled),ie}function y(v,_,N,h,x,b,m){const F=w(Je.data,x,_,N,h,b,m);return v.forEach((T,I)=>{F.data[T.field]=f(T,x,_,F,h)}),F}function S(v,_,N,h,x){return Object.assign(v,{index:_,dataIndex:N,top:h,pre:x})}function V(v,_,N,h,x,b,m){const F=v.__fv_data_index__,T=v[d.value],I=n.getEditingSnapshot(T);return I===null?y(b,v,_,N,h,x,m):S(I,h,F,x,N)}return{createEmptyRow:w,createNewRowFromDataItem:y,renderDataRow:V}}function Ua(e,n,o,i){const r=t.ref(e.summary),{idField:a}=n,{createCellByField:l}=o,{createEmptyRow:s}=i,c=t.computed(()=>{const f=r.value;return(f==null?void 0:f.groupFields)||[]}),d=t.computed(()=>{const f=r.value;return f&&f.enable&&f.groupFields&&f.groupFields.length>0});function p(f,w,y,S){if(d.value){const V=f.data[w];let C=V.colSpan;const g=c.value.reduce((v,_)=>(v.set(_,!0),v),new Map);S.reduce((v,_,N)=>{if(g.has(_.field)){const h=l(_.field,Oe.readonly,N,y,f);f.data[_.field]=h,C-1>N&&(C=N)}return v},f),V.colSpan=C}}function u(f,w,y,S,V,C){const g=f.__fv_data_grid_group_field__,v=s(Je.group,S,f,w,y,V);return v.data[a.value]=l(a.value,Oe.readonly,-1,f,v,0),v.data[g]=l(g,Oe.readonly,1,f,v,C.length),p(v,g,f,C),v}return{renderGroupRow:u}}function Ka(e,n,o,i){const{idField:r}=n,{createCellByField:a}=o,{createEmptyRow:l}=i;function s(c,d,p,u,f,w){const y=c.__fv_data_grid_group_field__,S=l(Je.summary,u,c,d,p,f);return S.data[r.value]=a(r.value,Oe.readonly,-1,c,S),S.data[y]=a(y,Oe.readonly,1,c,S,w.length),S}return{renderSummaryRow:s}}function En(e,n,o){var b;const{idField:i}=o,r=t.ref(e.editable),a=t.ref(e.editOption),l=t.ref(((b=e.rowOption)==null?void 0:b.wrapContent)||!1);t.watch(()=>e.editable,()=>{r.value=e.editable}),t.watch(()=>{var m;return(m=e.editOption)==null?void 0:m.editMode},m=>{a.value.editMode=m});const s=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let c,d,p,u;function f(m){return d&&d.raw[i.value]===m?d:null}const w=t.reactive({});function y(m,F,T){m.mode=Oe.editing,c=m,d=F,p=F.raw[m.field],u=T}function S(m){m.accept(),m.mode=Oe.editable,c=null,n.emit("endEditCell",{cell:m,row:d,newValue:d==null?void 0:d.raw[m.field],oldValue:p,column:u,editor:w})}function V(m){document.body.classList.contains("lookup-modal-open")||(c&&(S(c),d&&(d=null)),document.body.removeEventListener("click",V))}function C(m,F,T,I){r.value&&a.value.editMode==="cell"&&F.mode===Oe.editable&&(c&&S(c),y(F,T,I),document.body.removeEventListener("click",V),document.body.addEventListener("click",V))}function g(m){Object.values(m.data).filter(F=>F.mode===Oe.editable&&F.field!=="__commands__").forEach(F=>{F.mode=Oe.editing}),m.status=He.editing,d=m}function v(m,F){Object.values(m.data).filter(T=>T.mode===Oe.editing).forEach(T=>{F?T.accept():T.cancel(),T.mode=Oe.editable}),m.status=He.initial,d===m&&(d=null)}function _(m){r.value&&a.value.editMode==="row"&&d!==m&&(d&&v(d,!1),g(m))}function N(m){v(m,!0),m.status=He.initial}function h(m){v(m,!1),m.status=He.initial}function x(m,F,T){const I=F.dataType,M=F.editor||{type:s.get(I)||"input-group"};return!l.value&&M.type==="text"&&(M.type="input-group"),M?(M.context={rowData:T.raw,column:F,cell:m,editor:w},t.createVNode(bt.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:M,modelValue:m.editingData,"onUpdate:modelValue":k=>m.editingData=k,id:F.id},null)):m.data}return{onClickCell:C,onEditingRow:_,acceptEditingRow:N,cancelEditingRow:h,getEditingSnapshot:f,getEditor:x}}function Dn(e){const n=t.ref(e.idField);function o(i){if(i&&i.length){const r=i[0];Object.keys(r).includes(n.value)||(n.value="__fv_indetify__")}}return{idField:n,reviseIdentifyField:o}}function Xa(e,n,o,i,r,a){const{addNewDataItemAtLast:l}=o,{columnContext:s}=i,{onClickCell:c}=r;function d(y,S){const V=s.value.primaryColumns.findIndex(x=>x.field===y.field),C=y.parent,g=C.index,v=s.value.primaryColumns.length-1,_=a.value.length-1,N=V===v,h=g===_;if(V>-1&&!N){const x=s.value.primaryColumns[V+1],b=C.data[x.field];c(S,b)}if(N&&!h){const b=a.value[g+1].data[s.value.primaryColumns[0].field];c(S,b)}if(N&&h){if(e.appendOnEnterAtLastCell){l();const b=a.value[g+1].data[s.value.primaryColumns[0].field];c(S,b)}n.emit("enterUpInLastCell")}}function p(y,S){const V=s.value.primaryColumns.findIndex(_=>_.field===y.field),C=y.parent,g=s.value.primaryColumns.length-1;if(V>0&&V<=g){const _=s.value.primaryColumns[V-1],N=C.data[_.field];c(S,N)}}function u(y,S){const V=y.field,g=y.parent.index,v=a.value.length-1;if(g>-1&&g<v){const h=a.value[g+1].data[V];c(S,h)}}function f(y,S){const V=y.field,g=y.parent.index,v=a.value.length-1;if(g>0&&g<=v){const h=a.value[g-1].data[V];c(S,h)}}function w(y,S){const{key:V,shiftKey:C}=y;if(V==="Enter"&&!C){d(S,y);return}if(C&&V==="Enter"){p(S,y);return}if(V==="ArrowDown"){u(S,y);return}V==="ArrowUp"&&f(S,y)}return{navigateOnKeyUp:w}}function Rn(e,n,o,i){const{idField:r}=i,{currentSelectedDataId:a,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:c,selectedValues:d,toggleSelectItem:p,enableSelectRow:u}=o,f=t.ref(0),w=t.ref(-1);function y(h){return u.value&&(s.value?d.value.includes(h.raw[r.value]):h.raw[r.value]===a.value)}function S(h){var b;const x={"fv-grid-row":h.type===Je.data,"fv-grid-group-row":h.type===Je.group,"fv-grid-summary-row":h.type===Je.summary,"fv-grid-row-hover":h.index===w.value,"fv-grid-row-selected":y(h),"fv-grid-row-odd":h.dataIndex%2>0,"fv-grid-row-even":h.dataIndex%2===0,"fv-grid-disabled":h.disabled};if((b=e.rowOption)!=null&&b.customRowStyle){const m=e.rowOption.customRowStyle(h.raw)||{};return Object.assign({},x,m)}return x}function V(h){var b;const x={"fv-grid-cell":!0};if((b=e.rowOption)!=null&&b.customCellStyle){const m=e.rowOption.customCellStyle(h)||{};return Object.assign({},x,m)}return x}function C(h){f.value+=1,setTimeout(()=>{f.value===1&&n.emit("ClickRow",h.index,h.raw),f.value=0},250),f.value>1&&(n.emit("doubleClickRow",h.index,h.raw),console.log(`on double click row: ${h.index}`),f.value=0)}function g(h,x){if(x.disabled)return;s.value&&h.shiftKey||l.value?p(x):c(x),C(x),h.stopPropagation()}function v(h,x){}function _(h,x){}function N(h){var b;const x={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":h.index===w.value,"fv-grid-sidebar-row-selected":y(h),"fv-grid-sidebar-row-odd":h.dataIndex%2>0,"fv-grid-sidebar-row-even":h.dataIndex%2===0};if((b=e.rowOption)!=null&&b.customRowStyle){const m=e.rowOption.customRowStyle(h.raw)||{};return Object.assign({},x,m)}return x}return{gridCellClass:V,gridRowClass:S,onClickRow:g,onMouseoverRow:v,sidebarRowClass:N,onMouseoutRow:_}}function An(e,n,o,i,r){const{idField:a}=o,l=t.ref(""),s=t.computed(()=>e.selection.enableSelectRow),c=t.ref(e.selection.multiSelect??!1),d=t.ref(e.selection.multiSelectMode),p=t.ref(e.selection.showCheckbox),u=t.ref(e.selection.showSelectAll),f=t.ref(e.selectionValues);t.watch(()=>e.selection.showSelectAll,(E,R)=>{E!==R&&(u.value=E)});function w(){return n.getSelectionItems(f.value)}function y(){const E=i.value.reduce((z,ie)=>(z.set(ie.raw[a.value],ie),z),new Map);return f.value.map(z=>E.get(z)).filter(z=>!!z)}const S=t.computed(()=>s.value&&c.value),V=t.computed(()=>!!e.hierarchy),C=t.computed(()=>{const E=p.value&&d.value==="DependOnCheck";return S.value&&E}),g=t.computed(()=>S.value&&!p.value),v=t.computed(()=>S.value&&p.value&&d.value==="OnCheckAndClick");t.computed(()=>v.value);function _(){const E=n.getSelectionItems(f.value);r.emit("selectionChange",E)}function N(){i.value.forEach(R=>{R.checked=!1,R.indeterminate=!1,R.raw.__fv_checked__=!1,R.raw.__fv_indeterminate__=!1}),y().forEach(R=>{R.checked=!0,R.raw.__fv_checked__=!0})}t.watch(()=>i.value,()=>{N()}),t.watch(()=>e.selectionValues,E=>{f.value=E,N()},{immediate:!0}),t.watch(()=>e.selection,E=>{c.value=!!E.multiSelect,d.value=E.multiSelectMode||"DependOnCheck",p.value=!!E.showCheckbox});const h=t.computed(()=>!c.value);function x(E){return E.raw[a.value]||""}function b(E){return f.value.findIndex(z=>z===x(E))}function m(){y().forEach(z=>{z.checked=!1}),n.getSelectionItems(f.value).forEach(z=>{z.__fv_checked__=!1}),f.value=[],l.value=""}function F(E){const R=E.raw;R.__fv_checked__=!0,R.__fv_indeterminate__=!1;const z=new Set(f.value);z.add(R[a.value]),f.value=Array.from(z.values()),E.checked=!0,E.indeterminate=!1,l.value=E.raw[a.value]}function T(E){const R=E.raw;R.__fv_checked__=!1,R.__fv_indeterminate__=!1,f.value=f.value.filter(z=>z!==R[a.value]),E.checked=!1,E.indeterminate=!1,l.value=""}function I(E){const R=E.raw;R.__fv_checked__=!1,R.__fv_indeterminate__=!0,f.value=f.value.filter(z=>z!==R[a.value]),E.checked=!1,E.indeterminate=!0}function M(E){h.value&&m(),E.checked?T(E):F(E),_()}function k(E){E.raw[a.value]!==l.value&&(m(),F(E),_())}function O(E){const R=i.value.find(z=>z.raw[a.value]===E);R&&k(R)}function $(E){const R=i.value.filter(z=>E.includes(z.raw[a.value]));R&&R.length&&(m(),R.forEach(z=>{F(z)}),_())}function B(){i.value.forEach(E=>F(E)),l.value="",_()}function j(){f.value.splice(0,f.value.length),l.value="",i.value.forEach(E=>{const R=E.raw;R.__fv_checked__=!1,R.__fv_indeterminate__=!1,E.checked=!1,E.indeterminate=!1}),_()}function D(){return i.value.find(E=>E.raw[a.value]===l.value)}return{clearSelection:m,currentSelectedDataId:l,enableMultiSelect:c,enableSelectRow:s,findIndexInSelectedItems:b,getSelectedItems:w,getSelectionRow:D,indeterminate:I,isSelectingHirarchyItem:V,multiSelectMode:d,multiSelectOnClickRow:v,multiSelectOnClickRowWithShift:g,multiSelectOnlyOnCheck:C,select:F,selectAll:B,selectedValues:f,selectItem:k,selectItemById:O,selectItemByIds:$,showCheckBox:p,showSelectAll:u,toggleSelectItem:M,unSelect:T,unSelectAll:j}}function Hn(e,n){var V,C;const o=String(Date.now()),i=50,{showCheckBox:r,showSelectAll:a}=n,l=t.ref(((V=e.rowNumber)==null?void 0:V.enable)??!1),s=t.computed(()=>e.hierarchy&&r.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:r.value),c=t.ref(l.value?((C=e.rowNumber)==null?void 0:C.width)??32:0),d=t.ref(s.value?i:0),p=t.computed(()=>{var g;return l.value?((g=e.rowNumber)==null?void 0:g.heading)??"序号":""}),u=t.computed(()=>(s.value&&!e.hierarchy?Number(d.value):0)+(l.value?Number(c.value):0));t.watch(()=>e.rowNumber,g=>{g&&g.enable!==void 0&&(l.value=g.enable),g&&g.width!==void 0&&(c.value=g.width)});function f(g){return{top:`${g.top}px`,width:`${u.value}px`,height:`${g.height||""}px`}}const w=t.computed(()=>({width:`${u.value}px`}));function y(g){return`${o}_${g.type}_r_${g.index}_${g.refreshKey||""}`}function S(g){return`${o}_${g.type}_r_${g.index}_${g.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:f,sidebarCornerCellStyle:w,sidebarTitle:p,sidebarWidth:u,rowKey:S,cellKey:y}}const Ya={ascend:(e,n)=>e===n?0:e===!1?-1:1,decend:(e,n)=>e===n?0:e===!0?-1:1},Ja={ascend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(n).toLocaleDateString()).valueOf();return o===i?0:o<i?-1:1},decend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(n).toLocaleDateString()).valueOf();return o===i?0:o<i?1:-1}},Qa={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1},Za={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1};function Gn(e){const n=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),o=new Map([["boolean-sorter",Ya],["datetime-sorter",Ja],["numeric-sorter",Qa],["text-sorter",Za]]);function i(l){const s=(l==null?void 0:l.dataType)||"string",c=n.get(s)||"text-sorter";return o.get(c)||(l==null?void 0:l.sorter)}function r(l){return i(l.column)}function a(l,s){const c=r(l),d=(l.status&ke.sortable)===ke.sortable&&(l.status&ke.sorted)===ke.sorted,p=(l.status&ke.ascending)===ke.ascending,u=(l.status&ke.descending)===ke.descending;if(d&&c){const f=p?c.ascend:u?c.decend:void 0;f?s.addSorter(l.field,{field:l.field,compare:f}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:i,updateSorter:a}}function el(e){function n(r){return{}}function o(r){const{valign:a,align:l}=r;return{"d-flex":!0,"h-100":!0,"w-100":!0,"justify-content-start":l!=="center"&&l!=="right","justify-content-center":l==="center","justify-content-right":l==="right","align-items-start":a!=="middle"&&a!=="bottom","align-items-center":a==="middle","align-items-end":a==="bottom"}}function i(r){const{align:a,showEllipsis:l}=r;return{"w-100":!0,"text-left":a!=="center"&&a!=="right","text-center":a==="center","text-right":a==="right","text-truncate":l}}return{cellContentPosition:n,cellContentClass:o,cellContentClassWithEllipsis:i}}function Ue(e){return typeof e>"u"}function Ln(e){var u,f,w,y,S,V,C,g;const n=t.ref((u=e.pagination)==null?void 0:u.enable),o=t.ref(((f=e.pagination)==null?void 0:f.index)||1),i=t.ref((w=e.pagination)==null?void 0:w.size),r=t.ref((y=e.pagination)==null?void 0:y.sizeLimits),a=t.ref((S=e.pagination)==null?void 0:S.mode),l=t.ref((V=e.pagination)==null?void 0:V.showIndex),s=t.ref((C=e.pagination)==null?void 0:C.showLimits),c=t.ref(((g=e.pagination)==null?void 0:g.total)||0),d=t.computed(()=>c.value||e.data.length||0);return t.watch(()=>{var v;return(v=e.pagination)==null?void 0:v.sizeLimits},(v,_)=>{r.value=v},{immediate:!0,deep:!0}),t.watch(()=>{var v;return(v=e.pagination)==null?void 0:v.showIndex},(v,_)=>{v!==_&&(l.value=v)}),t.watch(()=>{var v;return(v=e.pagination)==null?void 0:v.showLimits},(v,_)=>{v!==_&&(s.value=v)}),t.watch(()=>{var v;return(v=e.pagination)==null?void 0:v.total},(v,_)=>{v!==_&&(c.value=v)}),t.watch(()=>{var v;return(v=e.pagination)==null?void 0:v.enable},(v,_)=>{v!==_&&(n.value=v)}),{currentPage:o,pageSize:i,pageList:r,pageTotal:c,total:d,shouldRenderPagination:n,showPageIndex:l,showPageList:s,mode:a,updatePagination:v=>{if(!v)return;const{enable:_,total:N,size:h,index:x,sizeLimits:b,showIndex:m,showLimits:F,mode:T}=v;Ue(_)||(n.value=_),Ue(x)||(o.value=x),Ue(h)||(i.value=h),Ue(b)||(r.value=b),Ue(m)||(l.value=m),Ue(F)||(s.value=F),Ue(N)||(c.value=N),Ue(T)||(a.value=T)}}}function tl(e){const n="parent",o="layer",i="hasChildren",r=(a,l=1,s=[],c=null)=>(a=a||[],a.reduce((d,p)=>(p.id=p.id||p.data[e.idField],p[n]=c,p[o]=l,p[i]=!1,p={...p,...p.data},s.push(p),p.children&&p.children.length&&(p[i]=!0,r(p.children,l+1,s,p.id)),d),s),s);return{flatTreeData:r}}function Wn(e,n,o,i,r,a,l,s,c,d,p,u,f,w,y){const{calculateCellPositionInRow:S,cellKey:V,cellPosition:C,rowKey:g,rowPosition:v,rowSpanCellPosition:_,groupCellPosition:N,summaryCellPosition:h}=l,{cellContentClass:x,cellContentPosition:b,cellContentClassWithEllipsis:m}=a,{collpaseGroupIconClass:F}=d,{gridCellClass:T,gridRowClass:I,onClickRow:M,onMouseoverRow:k,onMouseoutRow:O}=u,{onClickCell:$}=c,{toggleGroupRow:B}=f,{columnContext:j,hasLeftFixedColumn:D,hasRightFixedColumn:E}=s,{navigateOnKeyUp:R}=p,{gridDataStyle:z,gridMergedDataStyle:ie,leftFixedGridDataStyle:he,leftFixedGridMergedDataStyle:Fe,rightFixedGridDataStyle:de,rightFixedGridMergedDataStyle:_e}=w;function Se(P,X){X.collapse=!X.collapse,y.value=B(X.collapse?"collapse":"expand",X,y.value)}function me(P,X){const re=[];if(P.groupField&&X[P.groupField]){for(let xe=0;xe<=P.layer;xe++)re.push(t.createVNode("div",{class:"fv-grid-group-row-icon",onClick:K=>Se(K,P)},[t.createVNode("span",{class:F(P)},null)]));const q=P.data[P.groupField];re.push(t.createVNode("div",{ref:q.setRef,key:V(P,P.layer+1),class:"fv-grid-cell",style:N(q,X,P.layer)},[q.data])),Object.values(P.data).filter(xe=>xe.field!==P.groupField&&xe.colSpan!==0).forEach(xe=>{re.push(t.createVNode("div",{ref:xe.setRef,key:V(P,xe.index),class:"fv-grid-cell",style:C(xe,X)},[xe.data]))})}return re}function ue(P,X,re){return P.layer>-1&&t.createVNode("div",{ref:P.setRef,key:g(P),class:I(P),style:v(P),onClick:q=>M(q,P),onMouseover:q=>k(q,P)},[me(P,X)])}function ge(P,X){const re=[];if(P.groupField&&X[P.groupField]){const q=P.data[P.groupField];re.push(t.createVNode("div",{ref:q.setRef,key:V(P,P.layer+1),class:"fv-grid-cell",style:h(q,X,P.layer)},[q.data]))}return re}function L(P,X,re){return P.layer>-1&&t.createVNode("div",{ref:P.setRef,key:g(P),class:I(P),style:v(P),onClick:q=>M(q,P),onMouseover:q=>k(q,P)},[ge(P,X)])}function U(P,X,re){return t.createVNode("div",{ref:P.setRef,key:g(P),class:I(P),style:v(P),onClick:q=>M(q,P),onMouseover:q=>k(q,P),onMouseout:q=>O(q,P)},[Object.values(P.data).filter(q=>X[q.field]&&q.rowSpan===1).map(q=>{const xe=re==null?void 0:re.find(K=>K.field===q.field);return t.createVNode("div",{ref:q.setRef,key:V(P,q.index),class:T(q),style:C(q,X),onClick:K=>$(K,q,P,xe),onKeyup:K=>R(K,q)},[t.createVNode("div",{class:x(q,xe),style:b(q)},[t.createVNode("div",{class:m(q)},[q.data!=null&&n.slots.cellTemplate?n.slots.cellTemplate({cell:q,row:P}):q.mode===Oe.editing?q.getEditor(q):q.formatter?q.formatter(q,P):q.data!=null?q.data.toString():q.data])])])})])}const se=[U,ue,L];function ee(P,X){const re=S(P);return y.value.map(q=>se[q.type](q,re,P))}function ce(P){const X=S(P);return y.value.map(re=>Object.values(re.data).filter(q=>X[q.field]&&q.rowSpan>1).map(q=>t.createVNode("div",{key:V(re,q.index),class:"fv-grid-cell fv-grid-merged-cell",style:_(re,q,X)},[q.data])))}function be(){return t.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:he.value},[ee(j.value.leftColumns.filter(P=>P.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:Fe.value},[ce(j.value.leftColumns.filter(P=>P.visible))])])}function fe(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:z.value},[ee(j.value.primaryColumns.filter(P=>P.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:ie.value},[ce(j.value.primaryColumns.filter(P=>P.visible))])])}function Ce(){return t.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:de.value},[ee(j.value.rightColumns.filter(P=>P.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:_e.value},[ce(j.value.rightColumns.filter(P=>P.visible))])])}function Ie(){const P=[];return D.value&&P.push(be()),P.push(fe()),E.value&&P.push(Ce()),P}return{renderDataArea:Ie}}const Qe=t.defineComponent({name:"FDataGrid",props:_t,emits:["ClickRow","doubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(e,n){var ao;const r=t.ref(e.columns),a=H.useIdentify(e),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref(),p=t.ref(),u=t.ref([]),f=t.ref(!1),w=t.ref(((ao=e.rowOption)==null?void 0:ao.wrapContent)||!1),y=H.useGroupData(e,a),S=H.useFilter(),V=H.useHierarchy(e),{showLoading:C,renderLoading:g}=H.useLoading(e,l),v=H.usePagination(e),{shouldRenderPagination:_}=v,N=H.useDataView(e,new Map,V,a,v),h=H.useSelection(e,N,a,u,n),x=t.computed(()=>Math.min(N.dataView.value.length,100));t.computed(()=>e.loadingConfig.message);const{containerStyleObject:b}=H.useDataViewContainerStyle(e),m=H.useCommandColumn(e),{applyCommands:F}=m;F(r);const T=H.useColumn(e),I=H.useSort(e),{applyColumnSorter:M,columnContext:k,updateColumnRenderContext:O}=T;M(N,I);const $=H.useGroupColumn(e,k),B=H.useEdit(e,n,a),j=H.useVisualDataBound(),D=H.useVisualDataCell(e,B,j),E=H.useVisualDataRow(e,B,V,a,j,D),R=H.useVisualGroupRow(e,a,D,E),z=H.useVisualSummaryRow(e,a,D,E),ie=H.useVisualData(e,r,N,x,0,E,R,z),{getVisualData:he}=ie,Fe=H.useCellContentStyle(k),de=H.useCellPosition(e,k),_e=H.useSidebar(e,h),{sidebarWidth:Se}=_e;u.value=he(0,x.value+0-1);const me=H.useVirtualScroll(e,N,u,k,ie,x,0,Se),{onWheel:ue,dataGridWidth:ge,viewPortHeight:L,viewPortWidth:U,resetScroll:se}=me,ee=H.useFitColumn(e,k,s,U,$),{calculateColumnsSize:ce}=ee,be=H.useFilterHistory(),fe=H.useColumnFilter(s,p,N,be,me),Ce=H.useRow(e,n,h,a),Ie=H.useDragColumn(e,n,T,N,$,y,me),P=t.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":e.showStripe})),X=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":w.value})),{renderGridHeader:re,renderGridColumnResizeOverlay:q}=H.getColumnHeader(e,s,d,p,T,N,Ie,fe,S,be,ee,$,h,_e,I,me,U,u),{renderDataGridPagination:xe}=H.getPagination(e,n,N,me,v),{renderDataGridSidebar:K}=H.getSidebar(e,Ce,h,_e,me),{renderDisableMask:oe}=H.getDisableMask(),{renderDataGridSummery:pe}=H.getSummary(e,N,T),{renderHorizontalScrollbar:Ve}=H.getHorizontalScrollbar(e,s,me),{renderVerticalScrollbar:Te}=H.getVerticalScrollbar(e,s,me),{renderFilterPanel:Pe}=H.getFilterPanel(e,T,N,S,me),{renderGroupPanel:Ge}=H.getGroupPanel(e,N,Ie,y,me);function Le(){var ve,at;L.value=((ve=c.value)==null?void 0:ve.clientHeight)||0,ge.value=((at=s.value)==null?void 0:at.clientWidth)||0,ce()}t.onMounted(()=>{s.value&&(ft.useResizeObserver(s.value,Le),ce(),t.nextTick(()=>{s.value&&(ge.value=s.value.clientWidth),c.value&&(U.value=c.value.clientWidth,L.value=c.value.clientHeight)})),C.value&&g()}),t.onUnmounted(()=>{}),t.watch(U,()=>{});function Ze(){N.insertNewDataItem(),se()}function et(){N.insertNewDataItem(u.value.length),se()}function tt(ve){B.onEditingRow(ve)}function Ke(ve){N.removeDataItem(ve),se()}function A(ve){N.removeDataItemById(ve),se()}function ne(ve){B.acceptEditingRow(ve)}function le(ve){B.cancelEditingRow(ve)}function Ne(ve){ve&&(r.value=ve,F(r),O(r.value),M(N,I),ce())}function ae(ve){ve&&(se(),N.load(ve),u.value=he(0,x.value+0-1))}function Be(ve){v.updatePagination(ve)}t.watch([N.startIndex,N.endIndex],([ve,at],[Ns,ks])=>{var lo,so;ve!==Ns&&ae((lo=N.originalData)==null?void 0:lo.value),at!==ks&&ae((so=N.originalData)==null?void 0:so.value)}),t.watch(()=>e.data,ve=>{e.changePolicy==="default"&&ae(ve)},{deep:!0});function Ee(ve){h.selectItemById(ve)}function ye(ve){h.selectItemByIds(ve)}function De(){return u.value}function Re(ve){return u.value.filter(at=>ve.includes(at.raw[e.idField]))}const we={addNewDataItem:Ze,addNewDataItemAtLast:et,removeDataItem:Ke,removeDataItemById:A,editDataItem:tt,acceptDataItem:ne,cancelDataItem:le,selectItemById:Ee,selectItemByIds:ye,updateColumns:Ne,updateDataSource:ae,updatePagination:Be,getVisibleData:De,getVisibleDataByIds:Re};n.expose(we);const Xe=H.useNavigation(e,n,we,T,B,u),{renderDataArea:rt}=Wn(e,n,c,d,p,Fe,de,T,B,y,Xe,Ce,ie,me,u),_s=t.computed(()=>!u.value||!u.value.length),{renderEmpty:Vs}=H.getEmpty(n);return()=>t.createVNode("div",{ref:l,class:P.value,style:b.value,onWheel:ue},[Pe(),Ge(),re(),_s.value&&Vs(),t.createVNode("div",{ref:s,class:X.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[K(u),rt(),Ve(),Te()]),pe(),_.value&&xe(),q(),e.disabled&&oe()])}}),nl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{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"],ignore:["id","appearance","binding"]},ol=new Map([["appearance",ze]]);function il(e,n,o){return n}const qn={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}};$e(qn,nl,ol,il);const rl=t.defineComponent({name:"FCheckBox",props:qn,emits:["change","changeValue","update:modelValue","update:checked"],setup(e,n){const o=t.inject(qe.CHECKBOX_CONTEXT,null),{buttonClass:i,disabled:r,name:a,shouldRenderButton:l,shouldRenderNative:s,shouldRenderTag:c,tagClass:d,checked:p,onClickCheckBox:u}=qe.useCheck(e,n,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);t.ref();const f=t.ref(e.id),w=t.ref(e.customClass),y=t.ref(e.modelValue),S=t.ref(e.indeterminate);return t.computed(()=>{const V={"custom-control":!0,"custom-checkbox":!0};return w.value&&w.value.split(" ").reduce((C,g)=>(C[g]=!0,C),V),V}),t.watch(()=>e.modelValue,V=>{y.value=V}),t.watch(()=>e.indeterminate,V=>{S.value=V}),t.onMounted(()=>{}),()=>{var V,C,g,v,_,N;return t.createVNode(t.Fragment,null,[l.value&&t.createVNode("div",{class:i.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:u},[(C=(V=n.slots).default)==null?void 0:C.call(V)]),c.value&&t.createVNode("div",{class:d.value,onClick:u},[t.createVNode("div",{class:"title"},[(v=(g=n.slots).default)==null?void 0:v.call(g)]),t.createVNode("div",{class:"tip"},null),t.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),s.value&&t.createVNode("div",{class:"custom-control custom-checkbox",onClick:u},[t.createVNode("input",{type:"checkbox",class:"custom-control-input",name:a.value,id:f,value:e.value,checked:p.value,disabled:r.value},null),t.createVNode("div",{class:"custom-control-label"},[(N=(_=n.slots).default)==null?void 0:N.call(_)])])])}}}),al={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}},ll={id:{type:String}},sl=t.defineComponent({name:"FDesignerPlaceholder",props:ll,emits:[],setup(e){const n=t.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=t.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>t.createVNode("div",{class:n.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[t.createTextVNode("拖拽组件到这里")])}});function cl(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const jt=t.defineComponent({name:"FDesignerItem",props:al,emits:["selectionChange"],setup(e,n){const o=t.ref(`${e.modelValue.id}-component`),i=t.ref(e.canMove),r=t.ref(e.canDelete),a=t.ref(!1),l=t.ref(e.modelValue),s=t.ref(e.componentId||""),c=t.ref(""),d=t.ref(""),p=t.ref(e.customClass),u=t.ref(),f=t.inject("canvas-dragula"),w=t.ref(),y=t.inject("design-item-context"),S={designerItemElementRef:u,componentInstance:w,schema:l.value,parent:y,setupContext:n};t.provide("design-item-context",S);const V=t.inject("useFormSchema"),C=t.computed(()=>{const k=e.modelValue.appearance&&e.modelValue.appearance.class||"";let O={"farris-component":!0,"flex-fill":l.value.id=="root-component","position-relative":i.value&&r.value,"farris-nested":a.value,"can-move":i.value,"d-none":u.value&&u.value.classList.contains("d-none"),dgComponentSelected:u.value&&u.value.classList.contains("dgComponentSelected"),dgComponentFocused:u.value&&u.value.classList.contains("dgComponentFocused")};return O[`farris-component-${l.value.type}`]=!0,O=qe.getCustomClass(O,k),O=qe.getCustomClass(O,d.value),O=qe.getCustomClass(O,p.value),O}),g=t.computed(()=>{const k={},O=e.modelValue.appearance&&e.modelValue.appearance.style||"";return O&&O.split(";").reduce(($,B)=>{const[j,D]=B.split(":");return $[j]=D,$},k),c.value&&c.value.split(";").reduce(($,B)=>{const[j,D]=B.split(":");return j&&($[j]=D),$},k),k});function v(k,O){var j,D,E;if(k&&(k.preventDefault(),k.stopPropagation()),w.value.triggerBelongedComponentToDeleteWhenDeleted){const R=w.value.getBelongedComponentInstance(w);if(R&&R.parent){const z=t.ref(R==null?void 0:R.parent),ie=z.value.contents.findIndex(he=>he.id===R.schema.id);(D=(j=z.value)==null?void 0:j.contents)==null||D.splice(ie,1),(E=z.value)==null||E.updateDragAndDropRules(),mt.value++}return}let $=y,B=R=>R.id===O.id;if(O.type==="component"&&($=y==null?void 0:y.parent,B=R=>R.component===O.id),$&&$.schema.contents){const R=$.schema.contents.findIndex(B);$.schema.contents.splice(R,1),$.componentInstance.value.updateDragAndDropRules(),mt.value++,n.emit("selectionChange")}}function _(k){return r.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:O=>{v(O,k)}},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function N(){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function h(){return e.customButtons&&!!e.customButtons.length&&e.customButtons.map(k=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${k.class||""}`,title:k.title,ref:k.id},[t.createVNode("i",{class:k.icon},null)]))}function x(k){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[_(k),N(),h()])])}function b(k,O,$,B){n.emit("selectionChange",k,O,$,B)}function m(k){let O;const $=k.type,B=ra[$],j=aa[$],D=j?j(k):{};D.customClass=e.ignore?D.customClass:"",D.componentId=s.value;const E=k.contents&&k.contents.length===0;return k.contents&&!!k.contents.length&&B?t.createVNode(B,t.mergeProps({ref:w},D),cl(O=k.contents.map(z=>t.createVNode(jt,{key:z.id,modelValue:z,"onUpdate:modelValue":ie=>z=ie,componentId:s.value,onSelectionChange:b},null)))?O:{default:()=>[O]}):B?E?t.createVNode(B,t.mergeProps({ref:w},D),{default:()=>[t.createVNode(sl,null,null)]}):t.createVNode(B,t.mergeProps({ref:w},D),null):t.createVNode("div",null,null)}function F(k){if(k.type==="component-ref"){let $=V==null?void 0:V.getFormSchema().module.components.find(B=>B.id===k.component);if($)return t.createVNode(jt,{key:$.id,modelValue:$,"onUpdate:modelValue":B=>$=B,componentId:$.id,onSelectionChange:b},null)}}t.watch(()=>e.modelValue,k=>{l.value=k,o.value=`${k.id}-component`});function T(k){const O=k.target;sa(O)}function I(){var k,O;(O=(k=l.value)==null?void 0:k.contents)!=null&&O.length&&u.value&&u.value.addEventListener("scroll",T)}t.onMounted(()=>{if(u.value&&w.value&&w.value.schema){const k=u.value.querySelector(`[data-dragref='${w.value.schema.id}-container']`);f&&k&&f.attachComponents(k,l.value),a.value=w.value.canNested!==void 0?w.value.canNested:a.value,r.value=w.value.canDelete!==void 0?w.value.canDelete:r.value,i.value=w.value.canMove!==void 0?w.value.canMove:i.value,c.value=w.value.styles||"",d.value=w.value.designerClass||"",u.value&&(u.value.componentInstance=w,u.value.designItemContext=S)}I(),mt.value++}),t.onBeforeUnmount(()=>{u.value&&u.value.removeEventListener("scroll",T)});function M(k){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach($=>$.classList.remove("dgComponentFocused")),k&&(k.preventDefault(),k.stopPropagation());const O=u.value;if(O){const $=document.getElementsByClassName("dgComponentSelected");if(!($&&$.length===1&&$[0]===u.value)&&(Array.from($).forEach(j=>j.classList.remove("dgComponentSelected")),O.classList.add("dgComponentFocused"),n.emit("selectionChange",l.value.type,l.value,s.value,w.value),w.value.getDraggableDesignItemElement)){const j=w.value.getDraggableDesignItemElement(S);j&&j.value&&j.value.classList.add("dgComponentSelected")}}T(k)}return()=>l.value.type==="component-ref"?F(l.value):t.createVNode("div",{id:`${l.value.id}-design-item`,ref:u,class:C.value,style:g.value,onClick:M},[x(l.value),m(l.value)])}});function zn(e,n,o,i,r,a,l,s,c,d,p,u,f,w,y,S,V,C,g,v="data-grid-column"){const{showSelectAll:_,selectAll:N,unSelectAll:h,selectedValues:x}=w,{showRowNumer:b,showSidebarCheckBox:m,sidebarTitle:F,sidebarCornerCellStyle:T}=y,{columnContext:I,hasLeftFixedColumn:M,hasRightFixedColumn:k}=a,{gridHeaderColumnsStyle:O,leftFixedGridHeaderColumnsStyle:$,rightFixedGridHeaderColumnsStyle:B}=V,j=t.computed(()=>_.value||m.value||b.value),D=I.value.defaultColumnWidth,E=32,R=new Map([[0,0]]);function z(ee,ce){const be=R.get(ce)||0,fe={height:`${ee.depth*E}px`,left:`${ee.left}px`,top:`${(ee.layer-1)*E}px`,width:`${ee.actualWidth}px`,padding:0};return I.value.headerDepth>1&&(fe["line-height"]=`${ee.depth*E}px`),R.set(ce+1,be+(ee.actualWidth||D)),fe}const ie=t.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":I.value.headerDepth>1})),he=t.computed(()=>({height:`${I.value.headerDepth*E}px`}));function Fe(ee,ce,be,fe){var Ce;(Ce=e==null?void 0:e.setupContext)==null||Ce.emit("selectionChange",ee,ce,be,fe)}function de(ee,ce,be){let fe=ee.column;return t.createVNode("div",{class:"fv-grid-header-cell",style:z(ee,be)},[t.createVNode(jt,{modelValue:fe,"onUpdate:modelValue":Ce=>fe=Ce,customClass:"w-100 d-flex align-items-center justify-content-center",canAdd:!1,canDelete:!1,canMove:!1,key:fe==null?void 0:fe.id,type:v,componentId:n.componentId,onSelectionChange:Fe},null)])}function _e(ee){return ee.map((ce,be)=>{const fe=[];if(fe.push(de(ce,ee,be)),ce.children&&ce.children.length){const Ce=_e(ce.children);fe.push(...Ce)}return fe})}function Se(){return t.createVNode("div",{class:"fv-grid-header-left-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:$.value},[_e(I.value.leftHeaderColumns)])])}function me(){return t.createVNode("div",{class:"fv-grid-header-right-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:B.value},[_e(I.value.rightHeaderColumns)])])}const ue=t.ref(g.value.length===x.value.length);function ge(ee){ue.value?N():h()}const L=t.computed(()=>x.value.length>0&&g.value.length!==x.value.length);function U(){return t.createVNode("div",{class:"fv-grid-header-corner d-flex",style:T.value},[_.value&&t.createVNode(rl,{id:"checkbox_for_select_all",indeterminate:L.value,modelValue:ue.value,"onUpdate:modelValue":ee=>ue.value=ee,onChange:ge,style:"margin-left:8px"},null),b.value&&t.createVNode("div",{style:"line-height:18px"},[F.value])])}function se(){return t.createVNode("div",{class:ie.value,style:he.value},[j.value&&U(),M.value&&Se(),t.createVNode("div",{class:"fv-grid-header-primary"},[t.createVNode("div",{class:"fv-grid-header-columns",style:O.value},[_e(I.value.primaryHeaderColumns)])]),k.value&&me()])}return{renderGridHeader:se}}class dl extends pt{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getEventPropConfig(n),this.propertyConfig}getBasicPropConfig(n){var a,l,s;const o=(s=(l=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:l.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),r=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"data-grid",value:te["data-grid"].name}]}},dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,readonly:n.columns&&n.columns.length>0,editable:!1}}},setPropertyRelates(c,d){switch(c&&c.propertyID){case"dataSource":{const p=r.formSchemaUtils.getViewModelById(r.viewModelId);if(p){const u=i.find(f=>f.label===c.propertyValue);p.bindTo=u.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(n,o,i,r="",a=[]){const l=r?`${r}/${n.label}`:"/";return a.push({id:n.id,name:n.name,label:n.label,layer:o,parent:i&&i.id,bindTo:l.replace("//","/")}),n.type.entities&&n.type.entities.length&&n.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,n,l,a)),a}getAppearanceProperties(n){var o,i,r;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:n,getLatestGridData:a=>n},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"columns":n.columns=a.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=n.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"client",value:"客户端"},{key:"server",value:"服务器端"}]}},showIndex:{visible:((i=n.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((r=n.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"onClickRow",name:"行点击事件"},{label:"onSelectionChange",name:"行切换事件"},{label:"onPageIndexChanged",name:"切换页码事件"},{label:"onPageSizeChanged",name:"分页条数变化事件"}];var i=this;const r=i.eventsEditorUtils.formProperties(n,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const c=l.propertyValue;delete n[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(n,i.viewModelId,c.events,c)),n.remoteSort=!!n.columnSorted}}}}function ul(e,n){const o=e.schema,i=t.ref(!0),r=t.ref(!0);function a(f){return f&&f.sourceType==="control"?f.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function c(){return!0}function d(f){}function p(){}function u(f){return new dl(f,n).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const Pt=t.defineComponent({name:"FDataGridDesign",props:Xi,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,n){var Re;const o=t.ref(),i=t.inject("designer-host-service"),r=t.inject("design-item-context"),a=ul(r,i),l=Tt(o,r,a);l.value.styles="display:flex;flex:1;",t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value);const s=t.ref(e.columns),c=20,d=Dn(e),p=0,u=t.ref(),f=t.ref(),w=t.ref(),y=t.ref(),S=t.ref(e.showStripe),V=t.ref([]),C=t.ref(!1),g=t.ref(((Re=e.rowOption)==null?void 0:Re.wrapContent)||!1),v=Ot(e,d),_=Bt(),N=Bn(e),h=Ln(e),x=Mn(e,new Map,N,d,h),b=An(e,x,d,V,n),m=t.computed(()=>e.disable),F=t.computed(()=>x.totalItems.value<c?x.totalItems.value:c),{containerStyleObject:T}=cn(e),I=fn(e),{applyCommands:M}=I;M(s);const k=dn(e),O=Gn(),{applyColumnSorter:$,columnContext:B,updateColumnRenderContext:j}=k;$(x,O);const D=hn(e,B),E=En(e,n,d),R=kt(),z=jn(e,E,R),ie=Pn(e,E,N,d,R,z),he=Ua(e,d,z,ie),Fe=Ka(e,d,z,ie),de=$n(e,s,x,F,p,ie,he,Fe),{getVisualData:_e}=de,Se=el(),me=Nt(e,B),ue=Hn(e,b),{sidebarWidth:ge}=ue;V.value=_e(0,F.value+p-1);const L=On(e,x,V,B,de,F,p,ge),{onWheel:U,dataGridWidth:se,viewPortHeight:ee,viewPortWidth:ce,resetScroll:be}=L,fe=mn(e,B,u,ce,D),{calculateColumnsSize:Ce}=fe,Ie=In(),P=un(u,y,x,Ie,L),X=Rn(e,n,b,d),re=pn(e,n,k,x,D,v,L),q=t.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":S.value})),xe=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":C.value,"fv-grid-wrap-content":g.value})),{renderGridHeader:K}=zn(r,e,u,w,y,k,x,re,P,_,Ie,fe,D,b,ue,O,L,ce,V);rr(e,n,x,L,h);const{renderDataGridSidebar:oe}=ln(e,X,b,ue,L),{renderDisableMask:pe}=Qi(),{renderDataGridSummery:Ve}=ar(e,x,k),{renderHorizontalScrollbar:Te}=an(e,u,L),{renderVerticalScrollbar:Pe}=sn(e,u,L),{renderFilterPanel:Ge}=Zi(e,k,x,_,L),{renderGroupPanel:Le}=er(e,x,re,v,L);function Ze(){var we,Xe;ee.value=((we=f.value)==null?void 0:we.clientHeight)||0,se.value=((Xe=u.value)==null?void 0:Xe.clientWidth)||0,Ce()}t.onMounted(()=>{u.value&&(ft.useResizeObserver(u.value,Ze),Ce(),t.nextTick(()=>{u.value&&(se.value=u.value.clientWidth),f.value&&(ce.value=f.value.clientWidth,ee.value=f.value.clientHeight)}))}),t.onUnmounted(()=>{}),t.watch(ce,()=>{u.value&&Ce()}),t.watch(()=>e.columns,we=>{ae(we)});function et(){x.insertNewDataItem(),be()}function tt(){x.insertNewDataItem(V.value.length),be()}function Ke(we){E.onEditingRow(we)}function A(we){x.removeDataItem(we),be()}function ne(we){x.removeDataItemById(we),be()}function le(we){E.acceptEditingRow(we)}function Ne(we){E.cancelEditingRow(we)}function ae(we){we&&(s.value=we,M(s),j(s.value),$(x,O),Ce())}function Be(we){we&&(x.load(we),V.value=_e(0,F.value+p-1))}const ye=Xa(e,n,{addNewDataItem:et,addNewDataItemAtLast:tt,removeDataItem:A,removeDataItemById:ne,editDataItem:Ke,acceptDataItem:le,cancelDataItem:Ne,updateColumns:ae,updateDataSource:Be},k,E,V),{renderDataArea:De}=Wn(e,n,f,w,y,Se,me,k,E,v,ye,X,de,L,V);return()=>t.createVNode("div",{ref:o,class:q.value,style:T.value,onWheel:U},[Ge(),Le(),K(),t.createVNode("div",{ref:u,class:xe.value,onMouseover:()=>{C.value=!0},onMouseleave:()=>{C.value=!1}},[oe(V),De(),Te(),Pe()]),Ve(),m.value&&pe()])}}),fl={$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"]},Un={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},pl=$e(Un,fl,Zt,nn),ml=new Map([["appearance",ze]]);function hl(e,n,o){return n}const gl={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:[]}}}}}},yl={$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"]},Kn={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:[]}};$e(Kn,yl,ml,hl,gl);const vl=new Map([["appearance",ze]]);function bl(e,n,o){return n}const Cl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},wl={title:"list-view",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Xn={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{Type:Boolean,default:!1},multiSelectMode:{Type:String,default:"OnCheck"},idField:{Type:String,default:"id"},valueField:{Type:String,default:"id"},textField:{Type:String,default:"name"},titleField:{Type:String,default:"name"},view:{Type:String,default:"ContentView"},size:{Type:String,default:"default"},placeholder:{type:String,default:""},header:{Type:String,default:"ContentHeader"},headerClass:{Type:String,default:""},itemClass:{Type:String,default:""},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}};$e(Xn,Cl,vl,bl,wl);function Sl(e,n){function o(a){const l=[];let s=a.nextNode();for(;s;)l.push(s),s=a.nextNode();return l}function i(a,l){const s=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);return o(s).map(u=>({textNode:u,text:(u.textContent||"").toLocaleLowerCase()})).map(({textNode:u,text:f})=>{const w=[];let y=0;for(;y<f.length;){const S=f.indexOf(l,y);if(S===-1)break;w.push(S),y=S+l.length}return w.map(S=>{const V=new Range;return V.setStart(u,S),V.setEnd(u,S+l.length),V})}).flat()}function r(a){if(!CSS.highlights||(CSS.highlights.clear(),!a||!n))return;const l=i(n.value,a.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:r}}function Yn(e,n,o,i,r,a,l,s,c,d){const p=t.ref(e.size),u=t.ref(e.textField),f=t.ref(e.titleField),w=t.ref(e.disableField),y=t.computed(()=>{var b,m;return((b=e.selection)==null?void 0:b.multiSelect)&&((m=e.selection)==null?void 0:m.showCheckbox)}),{onMouseenterItem:S,onMouseoverItem:V,onMouseoutItem:C}=a,{getKey:g,listViewItemClass:v,onCheckItem:_,onClickItem:N}=l,h=t.computed(()=>({margin:p.value==="small"?"0.25rem 0":"10px 0"}));function x(b,m,F){return b.checked=s.findIndexInSelectedItems(b)>-1,t.createVNode("li",{class:v(b,m),id:g(b,m),key:g(b,m),onClick:T=>N(T,b,m),onMouseenter:T=>S(T,b,m),onMouseover:T=>V(T,b,m),onMouseout:T=>C(T,b,m)},[y.value&&t.createVNode("div",{class:"f-list-select",onClick:T=>T.stopPropagation()},[t.createVNode(lt.FCheckBox,{id:"list-"+g(b,m),customClass:"listview-checkbox",disabled:b[w.value],checked:b.checked,"onUpdate:checked":T=>b.checked=T,onChange:T=>{_(b,m,!T.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{style:h.value,title:b.raw[f.value]||b.raw[u.value]},[b.raw[u.value]])])])}return{renderItem:x}}function xl(e,n,o,i,r,a,l,s,c,d){const p=t.ref(e.multiSelect),u=t.ref(e.disableField),{onMouseenterItem:f,onMouseoverItem:w,onMouseoutItem:y}=a,{getKey:S,listViewItemClass:V,onCheckItem:C,onClickItem:g}=l;function v(N,h,x){return n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:N.raw,index:h,selectedItem:x})]):t.createVNode("div",{style:"margin: 10px 0;"},[N.raw.name])}function _(N,h,x){return t.createVNode("li",{class:V(N,h),id:S(N,h),key:S(N,h),onClick:b=>g(b,N,h),onMouseenter:b=>f(b,N,h),onMouseover:b=>w(b,N,h),onMouseout:b=>y(b,N,h)},[p.value&&t.createVNode("div",{class:"f-list-select",onClick:b=>b.stopPropagation()},[t.createVNode(lt.FCheckBox,{id:"list-"+S(N,h),customClass:"listview-checkbox",disabled:N[u.value]||!N.checked,checked:N.checked,"onUpdate:checked":b=>N.checked=b,onChange:b=>C(N,h,!b.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[v(N,h,x)])])}return{renderItem:_}}function _l(e,n,o,i,r,a,l,s,c,d){const p=t.ref(e.multiSelect),u=t.ref(e.disableField),{onMouseenterItem:f,onMouseoverItem:w,onMouseoutItem:y}=a,{getKey:S,listViewItemClass:V,onCheckItem:C,onClickItem:g}=l,{dragstart:v,dragenter:_,dragover:N,dragend:h}=i,{removeItem:x}=c,b=t.computed(()=>({margin:p.value?"10px 0":"10px 0px 10px 14px"}));function m(M){return t.createVNode("div",{style:b.value},[M.raw.name])}function F(){return n.slots.itemContent?n.slots.itemContent:m}const T=F();function I(M,k,O){return t.createVNode("li",{class:V(M,k),id:S(M,k),key:S(M,k),onClick:$=>g($,M,k),onMouseenter:$=>f($,M,k),onMouseover:$=>w($,M,k),onMouseout:$=>y($,M,k),draggable:"true",onDragstart:$=>v($,M,k),onDragenter:$=>_($,k),onDragend:$=>h($,M),onDragover:$=>N($,k)},[p.value&&t.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[t.createVNode(lt.FCheckBox,{id:"list-"+S(M,k),customClass:"listview-checkbox",disabled:M[u.value]||!M.checked,checked:M.checked,"onUpdate:checked":$=>M.checked=$,onChange:$=>C(M,k,!$.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[T(M)]),t.createVNode("div",{class:"f-list-remove",onClick:$=>x(k)},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:I}}function Vl(e,n,o,i,r,a,l,s,c,d){var S;const p=t.ref(((S=e.group)==null?void 0:S.groupFields)||[]),{collpaseGroupIconClass:u}=r,{toggleGroupRow:f}=d;function w(V,C){C.collapse=!C.collapse,o.value=f(C.collapse?"collapse":"expand",C,o.value)}function y(V,C,g){return V.layer>-1&&t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:v=>w(v,V)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:u(V)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[V.raw[p.value[V.layer]]])])}return{renderItem:y}}function Nl(){const e=t.ref(-1),n=t.ref(""),o=t.ref(-1),i=t.ref(!1);function r(d,p,u){o.value=u}function a(d,p,u){i.value||(o.value=u)}function l(d,p,u){o.value=-1}function s(){i.value=!0}function c(){i.value=!1}return{activeIndex:e,focusedItemId:n,hoverIndex:o,onMouseenterItem:r,onMouseoverItem:a,onMouseoutItem:l,resumeHover:c,suspendHover:s}}function kl(e,n,o,i){const r=t.ref(e.idField),{dataView:a}=o,l=t.ref(-1),s=t.ref(!1),{activeIndex:c,focusedItemId:d,hoverIndex:p,resumeHover:u,suspendHover:f}=i;function w(C,g,v){C.stopPropagation(),f(),g&&setTimeout(()=>{l.value=v,s.value=!0,g.moving=!0})}function y(C,g){if(C.preventDefault(),l.value!==g){const v=a.value[l.value],_=a.value;_.splice(l.value,1),_.splice(g,0,v),l.value=g}}function S(C,g){C.preventDefault(),C.dataTransfer&&(C.dataTransfer.dropEffect="move")}function V(C,g){g&&(g.moving=!1),a.value.forEach((v,_)=>{v.__fv_index__=_}),s.value=!1,u(),p.value=g.raw.__fv_index__,c.value=g.raw.__fv_index__,d.value=g.raw[r.value],n.emit("change",a.value),n.emit("activeChange",g)}return{dragstart:w,dragenter:y,dragover:S,dragend:V,isDragging:s}}function Fl(e,n,o){const{dataView:i}=o;function r(a){if(a>-1&&a<i.value.length){const l=i.value.splice(a,1);n.emit("removeItem",l[0])}}return{removeItem:r}}function Tl(e,n,o,i,r,a){const l=t.ref(e.idField),s=t.ref(e.disableField),c=t.ref(e.draggable),d=t.ref(e.itemClass),p=t.ref(e.selection.multiSelect??!1),u=t.ref(e.selection.multiSelectMode),{isDragging:f}=i,{activeIndex:w,focusedItemId:y,hoverIndex:S}=r,{clearSelection:V,getSelectedItems:C,toggleSelectItem:g}=a,v=t.ref(C());function _(T,I){const M={"f-listview-item":!0,"f-list-view-group-item":!0,"f-list-view-draggable-item":c.value,"f-un-click":!T.checked,"f-un-select":!!T.raw[s.value],"f-listview-active":v.value.findIndex(O=>O[l.value]===T.raw[l.value])>-1,"f-listview-item-active":v.value.findIndex(O=>O[l.value]===T.raw[l.value])>-1,"f-listview-hover":!f.value&&I===S.value,"f-listview-item-hover":!f.value&&I===S.value,moving:!!T.moving};return d.value.split(" ").reduce((O,$)=>(O[$]=!0,O),M),M}function N(T,I){return T.raw[l.value]||""}const h=t.computed(()=>!p.value);function x(T,I,M){T.checked=M,!T.raw[s.value]&&(h.value&&(y.value=T.raw[l.value]),g(T))}const b=t.computed(()=>p.value&&u.value==="OnCheckClearByClick"),m=t.computed(()=>!p.value||p.value&&(u.value==="OnCheckAndClick"||u.value==="OnClick"));function F(T,I,M){if(I.raw[s.value]){T.preventDefault(),T.stopPropagation();return}y.value=I.raw[l.value],w.value=M,b.value&&V(o.value),m.value&&(g(I),v.value=C()),n.emit("clickItem",{data:v.value,index:M}),n.emit("activeChange",v.value)}return{getKey:N,listViewItemClass:_,onCheckItem:x,onClickItem:F}}function Ml(e,n,o,i,r,a,l){const s=t.ref(e.view),c=t.ref(e.view==="CardView"),d=t.ref({}),p=t.ref("暂无数据"),u=Nl(),f=kl(e,n,i,u),w=Fl(e,n,i),y=Tl(e,n,o,f,u,a),S=t.computed(()=>({"f-list-view-group":!0,"d-flex":c.value,"flex-wrap":c.value})),V=t.computed(()=>!!o.value&&o.value.length>0),C=t.computed(()=>o.value.length===0);t.computed(()=>C.value&&!n.slots.empty);function g(){return s.value==="SingleView"?Yn:s.value==="DraggableView"?_l:(s.value==="ContentView"||s.value==="CardView")&&n.slots.content?xl:Yn}const v=g(),{renderItem:_}=v(e,n,o,f,r,u,y,a,w,l),{renderItem:N}=Vl(e,n,o,f,r,u,y,a,w,l),h=[_,N];function x(){return o.value.filter(F=>F.visible!==!1).map((F,T)=>h[F.type](F,T,d))}function b(){return t.createVNode("div",{class:"f-list-view-emptydata"},[t.createVNode("p",{class:"f-empty-title"},[n.slots.empty?n.slots.empty():p.value])])}function m(){return t.createVNode("ul",{class:S.value,style:"list-style: none;"},[V.value&&x(),C.value&&b()])}return{renderListArea:m}}function Il(e,n,o){function i(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:i}}function Jn(e,n,o){const i=t.ref(e.headerClass),r=t.ref(e.placeholder),a=t.ref(""),l=t.computed(()=>!a.value),s=t.computed(()=>!!a.value);function c(f){a.value=""}t.watch(a,f=>{e.enableHighlightSearch&&o.search(f),n.emit("afterSearch",f)});const d=t.computed(()=>{const f={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((y,S)=>(y[S]=!0,y),f),f});function p(f){}function u(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>p,["prevent","stop"])},[t.createVNode("div",{class:d.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":f=>a.value=f,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[t.vModelText,a.value]]),t.createVNode("div",{class:"input-group-append"},[s.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:f=>c()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:u}}const Qn=t.defineComponent({name:"FListView",props:Xn,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,n){const o=t.ref(),i=t.ref(!0),r=t.ref(!1),a=t.ref([]),l=0,s=t.ref(e.columns),c=H.useIdentify(e),d=H.useHierarchy(e),p=H.useGroupData(e,c),u=H.usePagination(e),f=H.useDataView(e,new Map,d,c,u),w=H.useSelection(e,f,c,a,n),y=Sl(e,o),S=t.computed(()=>f.dataView.value.length),V=H.useEdit(e,n,c),C=H.useVisualDataBound(),g=H.useVisualDataCell(e,{},C),v=H.useVisualDataRow(e,V,d,c,C,g),_=H.useVisualGroupRow(e,c,g,v),N=H.useVisualSummaryRow(e,c,g,v),h=H.useVisualData(e,s,f,S,l,v,_,N),{getVisualData:x}=h;a.value=x(0,S.value+l-1);const b=t.computed(()=>{const B={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(B[`${e.size}-item`]=!0),B}),m=t.computed(()=>!!n.slots.footer||i.value);function F(){return e.header==="SearchBar"?Jn:e.header==="ContentHeader"?Il:Jn}const T=F(),{renderHeader:I}=T(e,n,y),{renderListArea:M}=Ml(e,n,a,f,p,w,h);function k(B){y.search(B)}function O(B){B&&(f.load(B),a.value=x(0,S.value+l-1))}n.expose({search:k,updateDataSource:O});function $(B){e.multiSelect&&(B.preventDefault(),B.stopPropagation())}return()=>t.createVNode("div",{class:b.value,onClick:$},[I(),t.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[M()]),m.value&&t.createVNode("div",{class:"f-list-view-footer"},[n.slots.footer&&n.slots.footer()])])}}),Bl=t.defineComponent({name:"FTransfer",props:Kn,emits:["change","activeChange"],setup(e,n){const o=t.ref(e.identifyField),i=t.ref("已选:"),r=t.ref("项数据"),a=t.ref(e.displayType),l=t.ref(!1),s=t.ref(e.dataSource),c=t.ref(e.selections||[]),d=t.computed(()=>c.value.map(m=>m[o.value])),p=new Map,u=t.ref();function f(){const m=new Map,F=e.selectionValues||[];F.length&&F.reduce((I,M)=>(I.set(M,!0),I),m);const T=e.selections||[];T.length&&(m.clear(),T.reduce((I,M)=>(I.set(M[o.value],!0),I),m)),c.value.length||(c.value=s.value.filter(I=>m.has(I[o.value])).map(I=>Object.assign({},I))),s.value.forEach(I=>{const M=I[o.value],k=m.has(M);I.checked=k,k&&p.set(M,I)})}f();const w=t.computed(()=>a.value==="List"),y=t.computed(()=>a.value==="Tree");function S(m){c.value=m.map(F=>Object.assign({},F)),n.emit("change",c.value)}function V(){return t.createVNode(Qn,{class:"f-utils-fill",data:s.value,multiSelect:!0,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box","selection-values":d.value,onSelectionChange:S},{default:()=>[t.createTextVNode(" ")]})}function C(){return t.createVNode(t.Fragment,null,null)}function g(){return t.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[t.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[t.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[w.value&&V(),y.value&&C()])])])}function v(m){const F=m[o.value];if(F!==null||F!==void 0){c.value=c.value.filter(I=>I[o.value]!==F);const T=p.get(F);T&&(T.checked=!1,p.delete(F)),n.emit("change",c.value)}}t.watch(c,m=>{u.value.updateDataSource(m)});function _(m){const F=new Map;c.value.reduce((T,I)=>(T.set(I[o.value],I),T),F),c.value=m.map(T=>F.get(T[o.value])),n.emit("change",c.value)}function N(m){n.emit("activeChange",m)}function h(){return t.createVNode(Qn,{ref:u,style:"flex:1",data:c.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:_,onRemoveItem:v,onActiveChange:N},null)}function x(){return t.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[t.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[t.createVNode("div",{class:"selection-pane-title"},[t.createVNode("span",{class:"selection-title"},[i.value]),t.createVNode("span",{class:"selection-count"},[c.value&&c.value.length]),t.createVNode("span",{class:"selection-item-title"},[r.value])]),t.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[h()])])])}const b=t.computed(()=>({transfer:!0,row:!0,"f-utils-fill":l.value}));return()=>t.createVNode("div",{class:b.value,style:"height:480px"},[g(),x()])}}),Ol=t.defineComponent({name:"FGridFieldEditor",props:Un,emits:["change"],setup(e,n){const o=t.ref(e.viewModelId),i=t.inject("designViewModelUtils"),r=t.inject("useFormSchema"),a=t.inject("controlCreatorUtils"),l=t.ref(e.modelValue);let s=e.gridData.columns;const c=t.ref([]),d=t.ref([]);let p=[];t.onMounted(()=>{u()});function u(){d.value=i.getAllFields2TreeByVMId(o.value),p=w(d.value)}function f(){if(c.value=[],!s||s.length===0)return[];s.forEach(g=>{if(g.binding&&g.binding.field){const v=p.find(_=>_.data.id===g.binding.field);v?c.value.push(Object.assign({},v.data)):c.value.push({id:g.binding.field,name:g.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}})}function w(g,v=[]){return g&&g.forEach(_=>{v.push(_),_.children&&w(_.children,v)}),v}function y(){const g=i.getDgViewModel(o.value),v=[],_=[];c.value.forEach(h=>{delete h.inValidTip,delete h.isInValidBinding;let x=s==null?void 0:s.find(b=>{if(b.binding&&b.binding.field)return b.binding.field===h.id});if(x)v.push(x);else{const b=d.value.find(F=>F.id==h.id),m=a.setGridFieldProperty(e.gridType,b.data,null,!0);g.addField(h),v.push(m)}_.push(h.id)});const N=g.fields.filter(h=>!_.includes(h.id));if(N&&N.length>0){const h=N.map(x=>x.id);g.removeField(h),r.expressions&&r.expressions.length&&h.length&&(r.expressions=r.expressions.filter(x=>!h.includes(x.fieldId)))}l.value=`共 ${v.length} 项`,n.emit("change",v)}const S={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{y()},rejectCallback:()=>{}};function V(g){c.value=g?[...g]:[]}function C(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),u()),s=e.gridData.columns,f(),Promise.resolve(!0)}return()=>t.createVNode(nt,{"button-behavior":"Modal","modal-options":S,modelValue:l.value,"onUpdate:modelValue":g=>l.value=g,editable:!1,beforeOpen:C},{default:()=>[t.createVNode("div",{class:"f-utils-absolute-all"},[t.createVNode(Bl,{selections:c.value,"data-source":d.value,class:"mx-2",onChange:g=>V(g)},null)])]})}}),$l={$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:"col"},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120}}},jl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"}}},Et={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:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},isMultilingualField:{type:Boolean,default:!1},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},Pl=$e(Et,$l,en,on),El=$e(Et,jl,en,on);class Dl extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class Rl extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"check-group"},{placeholder:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",type:"array"}})}}class Al extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"check-group"},{placeholder:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}class Hl extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},textField:{description:"",title:"数据源显示字段",type:"string"},idField:{description:"",title:"数据源值字段",type:"string"}})}}class Gl extends Ae{constructor(n,o){super(n,o)}}class Ll extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"date-picker"},{displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},maxYear:{description:"",title:"最大年限",type:"number"},minYear:{description:"",title:"最小年限",type:"number"}})}}const Wl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/field-selector.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{}},ql=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Dt=Symbol("Field_Selector Component Repository Service Token");$e({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:null},bindingType:{type:Object,default:{enable:!0,data:[{value:"Form",text:"绑定字段"},{value:"LocaleVariable",text:"绑定组件变量"},{value:"RemoteVariable",text:"绑定表单变量"}],value:"Form",textField:"text",valueField:"value"}},data:{type:Array,default:[]},idField:{type:String,default:"id"},columns:{type:Array,default:ql},title:{type:String,default:"字段选择器"},modalWidth:{type:Number,default:600},modalHeight:{type:Number,default:500},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},bindingData:{type:Array,default:[]},textField:{type:String,default:"code"},beforeOpenDialog:{type:Function,default:null},editorParams:{type:Object,default:null},onFieldSelected:{type:Function,default:null},repositoryToken:{type:Symbol,default:null}},Wl);function zl(e,n,o){return!n||!n.length?{columns:[]}:(n.forEach(i=>{i.title=i.caption?i.caption:i.title,i.field=i.binding?i.binding.path:i.field}),{columns:n})}const Zn=new Map([["appearance",ze],["column","columnOption"],["fields",zl]]);function Ul(e,n,o){var u;const i=o.parentComponentInstance,r=i.schema.type,a=String(((u=i.schema.appearance)==null?void 0:u.class)||"").split(" "),l=r==="section"||r==="tab-page",s=a.includes("f-page-content-nav"),c=a.includes("f-page-main"),d=e.getSchemaByType("component");d.id=`${n.id}-component`,d.componentType="data-grid";let p="";return p+=l?"f-struct-data-grid-in-card f-struct-is-subgrid":"",p+=s?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",p+=c?"f-struct-data-grid f-struct-wrapper":"",d.appearance={class:p},d.contents=[n],d}function Kl(e,n,o){const i=o.parentComponentInstance,r=String(i.schema.appearance.class||"").split(" "),a=r.includes("f-page-content-nav"),l=r.includes("f-page-main"),s=e.getSchemaByType("section");s.id=`${n.id}-section`;let c="";return c+=a?"f-section-in-nav ":"",c+=l?"f-section-in-managelist ":"",c+="f-section-grid",s.appearance={class:c},s.contents=[n],s}function Xl(e,n,o){const i=e.getSchemaByType("content-container");return i.id=`${n.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[n],i}function eo(e,n,o){const r=o.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";n.appearance={class:"f-component-grid"};const s=(a?Xl:Kl)(e,n,o);return Ul(e,s,o)}const to={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"tree-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showTreeNodeIcons:{type:"boolean",default:!1},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},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"string",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},onSelectionChange:{description:"行切换事件",type:"string",default:""}},required:["id","type"]},Rt={columns:{type:Array,default:[]},displayField:{type:String,default:"name"},showLines:{type:Boolean,default:!1},columnOption:{type:Object},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"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},pagination:{type:Object,default:{enable:!1,size:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},commandOption:{type:Object,default:{enable:!1,commands:[]}},hierarchy:{type:Object,default:{cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},autoCheckChildren:{type:Boolean,default:!1},showSetting:{type:Boolean,default:!1}},Yl=$e(Rt,to,Zn,eo),Jl=Ci(),Ql=vi(),no=Object.assign({},Rt,{componentId:{type:String,default:""}}),Zl=$e(no,to,Zn,eo);function oo(e,n,o,i,r,a,l,s,c,d,p,u,f,w,y,S){const{calculateCellPositionInRow:V}=a,{columnContext:C,hasLeftFixedColumn:g,hasRightFixedColumn:v}=l,{gridDataStyle:_,leftFixedGridDataStyle:N,rightFixedGridDataStyle:h}=w,{renderDataRow:x}=ir(e,n,C,S,s,c,d,p,u,f),b=[x];function m(k,O){const $=V(k);return S.value.filter(B=>B.visible!==!1).map(B=>b[B.type](B,$,O))}function F(){return t.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:N.value},[m(C.value.leftColumns.filter(k=>k.visible),"left")])])}function T(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:_.value},[m(C.value.primaryColumns.filter(k=>k.visible),"primary")])])}function I(){return t.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:h.value},[m(C.value.rightColumns.filter(k=>k.visible),"right")])])}function M(){const k=[];return g.value&&k.push(F()),k.push(T()),v.value&&k.push(I()),k}return{renderDataArea:M}}const yt=t.defineComponent({name:"FTreeGrid",props:Rt,emits:["selectionChange","clickRow","expandNode"],setup(e,n){var Ne;const r=t.ref(),a=t.ref(),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref([]),p=t.ref(!1),u=t.ref(((Ne=e.rowOption)==null?void 0:Ne.wrapContent)||!1),{showLoading:f,renderLoading:w}=H.useLoading(e,r),y=H.useIdentify(e),S=H.useGroupData(e,y),V=H.useFilter(),C=H.useHierarchy(e),g=H.usePagination(e),v=H.useDataView(e,new Map,C,y,g),_=H.useSelection(e,v,y,d,n),N=H.useSelectHierarchyItem(e,d,y,_,n),h=t.computed(()=>Math.min(v.dataView.value.length,100)),{containerStyleObject:x}=H.useDataViewContainerStyle(e),b=H.useCommandColumn(e),m=t.ref(e.columns),{applyCommands:F}=b;F(m);const T=H.useColumn(e),I=H.useSort(e),{applyColumnSorter:M,columnContext:k,updateColumnRenderContext:O}=T;M(v,I);const $=H.useGroupColumn(e,k),B=H.useEdit(e,n,y),j=H.useVisualDataBound(),D=H.useVisualDataCell(e,B,j),E=H.useVisualDataRow(e,B,C,y,j,D),R=H.useVisualData(e,m,v,h,0,E),{getVisualData:z}=R,ie=H.useCellPosition(e,k),he=H.useSidebar(e,_),{sidebarWidth:Fe}=he;d.value=z(0,h.value+0-1);const de=H.useVirtualScroll(e,v,d,k,R,h,0,Fe),{onWheel:_e,dataGridWidth:Se,viewPortHeight:me,viewPortWidth:ue,resetScroll:ge}=de,L=H.useFitColumn(e,k,a,ue,$),{calculateColumnsSize:U}=L,se=H.useFilterHistory(),ee=H.useColumnFilter(a,c,v,se,de),ce=H.useRow(e,n,_,y),be=H.useDragColumn(e,n,T,v,$,S,de),fe=t.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),Ce=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":u.value})),{renderDataArea:Ie}=oo(e,n,l,s,c,ie,T,v,B,C,ce,_,N,de,R,d),{renderGridHeader:P,renderGridColumnResizeOverlay:X}=H.getColumnHeader(e,a,s,c,T,v,be,ee,V,se,L,$,_,he,I,de,ue,d),{renderDataGridSidebar:re}=H.getSidebar(e,ce,_,he,de),{renderDisableMask:q}=H.getDisableMask(),{renderHorizontalScrollbar:xe}=H.getHorizontalScrollbar(e,a,de),{renderVerticalScrollbar:K}=H.getVerticalScrollbar(e,a,de);function oe(){var ae,Be;me.value=((ae=l.value)==null?void 0:ae.clientHeight)||0,Se.value=((Be=a.value)==null?void 0:Be.clientWidth)||0,U()}t.onMounted(()=>{a.value&&(ft.useResizeObserver(a.value,oe),U(),t.nextTick(()=>{a.value&&(Se.value=a.value.clientWidth),l.value&&(ue.value=l.value.clientWidth,me.value=l.value.clientHeight)})),f.value&&w()}),t.onUnmounted(()=>{}),t.watch(ue,()=>{a.value&&U()});function pe(){const ae=_.getSelectionRow();return ae?ae.dataIndex-1:-1}function Ve(){const ae=pe();v.insertNewDataItem(ae),d.value=z(0,h.value+0-1)}function Te(){const ae=pe();v.insertNewChildDataItem(ae),d.value=z(0,h.value+0-1)}function Pe(){const ae=pe(),Be=N.getNextSelectableHierarchyItemId(ae);v.removeHierarchyDataItem(ae),d.value=z(0,h.value+0-1),Be&&_.selectItemById(Be)}function Ge(ae){B.onEditingRow(ae)}function Le(ae){B.acceptEditingRow(ae)}function Ze(ae){B.cancelEditingRow(ae)}function et(ae){ae&&(m.value=ae,F(m),O(m.value),M(v,I),U())}function tt(ae){ae&&(ge(),v.load(ae),d.value=z(0,h.value+0-1))}function Ke(ae){_.selectItemById(ae)}function A(){return _.getSelectedItems()}const ne=t.computed(()=>!d.value||!d.value.length),{renderEmpty:le}=H.getEmpty(n);return n.expose({addNewDataItem:Ve,addNewChildDataItem:Te,removeDataItem:Pe,editDataItem:Ge,acceptDataItem:Le,cancelDataItem:Ze,updateColumns:et,updateDataSource:tt,selectItemById:Ke,getSelectedItems:A}),()=>t.createVNode("div",{ref:r,class:fe.value,style:x.value,onWheel:_e},[P(),ne.value&&le(),t.createVNode("div",{ref:a,class:Ce.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[re(d),Ie(),xe(),K()]),X(),e.disabled&&q()])}});class es extends pt{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getEventPropConfig(n),this.propertyConfig}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"tree-grid",value:te["tree-grid"].name}]}}}}}getAppearanceProperties(n){var o,i,r;this.propertyConfig.categories.appearance={title:"外观",properties:{fields:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:n,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"},showTreeNodeIcons:{title:"显示图标",type:"boolean",description:"是否显示图标"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"fields":n.fields=a.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=n.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"client",name:"客户端"},{value:"server",name:"服务器端"}]}},showIndex:{visible:((i=n.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((r=n.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"onSelectionChange",name:"行切换事件"}];var i=this;const r=i.eventsEditorUtils.formProperties(n,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const c=l.propertyValue;delete n[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(n,i.viewModelId,c.events,c)),n.remoteSort=!!n.columnSorted}}}}function ts(e,n){const o=e.schema,i=t.ref(!0),r=t.ref(!0);function a(f){return f&&f.sourceType==="control"?f.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function c(){return!0}function d(f){}function p(){}function u(f){return new es(f,n).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const ns=t.defineComponent({name:"FTreeGridDesign",props:no,emits:[],setup(e,n){var Ve;const o=t.ref(),i=0,r=100,a=t.ref(),l=t.ref(),s=t.ref(),c=t.ref(),d=t.ref([]),p=t.ref(!1),u=t.ref(((Ve=e.rowOption)==null?void 0:Ve.wrapContent)||!1),f=t.inject("designer-host-service"),w=t.inject("design-item-context"),y=ts(w,f),S=Tt(o,w,y);S.value.designerClass="f-utils-fill-flex-column";const V=Dn(e),C=Ot(e,V),g=Bt(),v=Bn(e),_=Ln(e),N=Mn(e,new Map,v,V,_),h=An(e,N,V,d,n),x=Ha(e,d,V,h,n),b=t.computed(()=>Math.min(N.dataView.value.length,r)),{containerStyleObject:m}=cn(e),F=fn(e),T=t.ref(e.columns),{applyCommands:I}=F;I(T);const M=dn(e),k=Gn(),{applyColumnSorter:O,columnContext:$,updateColumnRenderContext:B}=M;O(N,k);const j=hn(e,$),D=En(e,n,V),E=kt(),R=jn(e,D,E),z=Pn(e,D,v,V,E,R),ie=$n(e,T,N,b,i,z),{getVisualData:he}=ie,Fe=Nt(e,$),de=Hn(e,h),{sidebarWidth:_e}=de;d.value=he(0,b.value+i-1);const Se=On(e,N,d,$,ie,b,i,_e),{onWheel:me,dataGridWidth:ue,viewPortHeight:ge,viewPortWidth:L}=Se,U=mn(e,$,a,L,j),{calculateColumnsSize:se}=U,ee=In(),ce=un(a,c,N,ee,Se),be=Rn(e,n,h,V),fe=pn(e,n,M,N,j,C,Se),Ce=t.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),Ie=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":u.value})),{renderDataArea:P}=oo(e,n,l,s,c,Fe,M,N,D,v,be,h,x,Se,ie,d),{renderGridHeader:X}=zn(w,e,a,s,c,M,N,fe,ce,g,ee,U,j,h,de,k,Se,L,d,"tree-grid-column"),{renderDataGridSidebar:re}=ln(e,be,h,de,Se),{renderHorizontalScrollbar:q}=an(e,a,Se),{renderVerticalScrollbar:xe}=sn(e,a,Se);function K(){var Te,Pe;ge.value=((Te=l.value)==null?void 0:Te.clientHeight)||0,ue.value=((Pe=a.value)==null?void 0:Pe.clientWidth)||0,se()}t.onMounted(()=>{o.value.componentInstance=S,a.value&&(ft.useResizeObserver(a.value,K),se(),t.nextTick(()=>{a.value&&(ue.value=a.value.clientWidth),l.value&&(L.value=l.value.clientWidth,ge.value=l.value.clientHeight)}))}),t.onUnmounted(()=>{}),t.watch(L,()=>{a.value&&se()});const oe=t.computed(()=>!d.value||!d.value.length),{renderEmpty:pe}=sr(n);return n.expose(S.value),()=>t.createVNode("div",{ref:o,dragref:`${w.schema.id}-container`,class:Ce.value,style:m.value,onWheel:me},[X(),oe.value&&pe(),t.createVNode("div",{ref:a,class:Ie.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[re(d),P(),q(),xe()])])}});yt.register=(e,n,o,i)=>{e["tree-grid"]=yt,n["tree-grid"]=Yl,i["tree-grid"]={bindingResolver:Ql,selectionItemResolver:Jl}},yt.registerDesigner=(e,n,o)=>{e["tree-grid"]=ns,n["tree-grid"]=Zl},qr(yt);function os(e,n,o){return n}const is=new Map([["appearance",ze]]),rs={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-group.schema.json",title:"radio-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a radio-group",type:"string"},type:{description:"The type string of radio-group component",type:"string",default:"radio-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",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},horizontal:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},enumData:{description:"",type:"array"}},required:["id","type"],ignore:["id","appearance","binding"]},as={...zr,id:String,disabled:{type:Boolean,default:!1},enumData:{type:Array,default:[{value:"example",name:"example1"}]},horizontal:{type:Boolean,default:!1},direction:{type:String,default:"horizontal"},modelValue:{type:String,default:""},name:{type:String,default:""},tabIndex:Number,textField:{type:String,default:"name"},valueField:{type:String,default:"value"}};$e(as,rs,is,os);const ot={convertFrom:(e,n)=>n==="multiSelect"?!!e.editor[n]:n==="separator"?e.editor[n]||",":e.editor[n],convertTo:(e,n,o)=>{e.editor[n]=o}},ls={convertFrom:(e,n)=>e[n]==null?!0:e[n],convertTo:(e,n,o)=>{e[n]=o}};function ss(e){let n="form_group_"+Date.now();return e&&(n=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+n}const cs={convertFrom:(e,n)=>{var o;return(o=e.editor[n])==null?void 0:o.displayName},convertTo:(e,n,o)=>{if(o&&o.length>0){const i=o[0],{name:r,id:a,metadataContent:l}=i;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=r,e.editor.helpId=a;const{displayType:s,idField:c,textField:d}=l;e.editor.displayType=s,e.editor.dataSource.idField=c,e.editor.textField=d,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=ss(e.id))}}},ds={convertFrom:(e,n)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,n,o)=>{if(o&&o.length>0){const i=o[0];e.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},us={convertFrom:(e,n)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,n,o)=>{if(o&&o.length>0){const i=o[0];e.editor.textField=i==null?void 0:i.bindingPath}}},fs={convertFrom:(e,n)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,n,o)=>{e.editor.displayType=o}},ps=Symbol("schema_repository_token");class ms extends Ae{getPropertyConfig(n,o){const i=this.getBasicProperties(n,o),r=this.getAppearanceConfig(),a=this.getBehaviorConfig(n),l=this.getLookupConfig(n.editor);return{type:"object",categories:{basic:i,appearance:r,behavior:a,lookup:l}}}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ot},readonly:{description:"",title:"只读",type:"boolean",$converter:ot},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:ot},visible:{description:"",title:"可见",type:"boolean",$converter:ls},placeHolder:{visible:!1,description:"",title:"提示文本",type:"string"},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}getLookupConfig(n){return{description:"Basic Infomation",title:"编辑器",properties:{dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(o,i)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:ps,onSubmitModal:o=>{if(o){const i=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(i.relativePath,o[0].data).then(r=>JSON.parse(r==null?void 0:r.metadata.content))}}},$converter:cs},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:fs,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Dt},$converter:ds},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:us,editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Dt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ot,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`,idField:"id",textField:"bindingPath",valueField:"bindingPath",repositoryToken:Dt},toData:{idField:"id",textField:"bindingPath",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:ot,title:"启用多选",type:"boolean"},separator:{description:"多选分隔符",$converter:ot,title:"多选分隔符",type:"string"}}}}}class hs extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class gs extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-spinner"},{textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}})}}class ys extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-spinner"},{readonly:{visible:!1},placeholder:{visible:!1},horizontal:{description:"",title:"是否横向",type:"boolean"},textField:{description:"",title:"显示文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",title:"数据",type:"array"}})}}class vs extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"switch"},{readonly:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开时标签",type:"string"},offLabel:{description:"",title:"关闭时标签",type:"string"},onBackground:{description:"",title:"打开时背景色",type:"string"},offBackground:{description:"",title:"关闭时背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{value:"small",name:"小号"},{value:"middle",name:"中号"},{value:"large",name:"大号"}]}}})}}class bs extends Ae{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"HH:mm:ss",name:"HH:mm:ss"}]}},showHeader:{description:"",title:"是否显示头部区域",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean"}})}}class Cs extends pt{constructor(n,o){super(n,o)}getPropertyConfig(n,o){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getFieldEditorProperties(n,o),this.propertyConfig}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"}}}}getAppearanceProperties(n){this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{halign:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"靠左"},{id:"right",name:"靠右"},{id:"center",name:"居中"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"靠上"},{id:"middle",name:"居中"},{id:"bottom",name:"靠下"}]}}}}}getFieldEditorProperties(n,o){o.fieldEditable&&n.editor&&this.getFieldEditorProp(n)}getFieldEditorProp(n,o="gridFieldEditor",i=!1){const r=this.formMetadataConverter.getRealEditorType(n.editor.type);let a;switch(r){case"avatar":a=new Dl(this.componentId,this.designerHostService);break;case"check-group":a=new Rl(this.componentId,this.designerHostService);break;case"check-box":a=new Al(this.componentId,this.designerHostService);break;case"combo-list":a=new Hl(this.componentId,this.designerHostService);break;case"date-picker":a=new Ll(this.componentId,this.designerHostService);break;case"lookup":a=new ms(this.componentId,this.designerHostService);break;case"number-range":a=new hs(this.componentId,this.designerHostService);break;case"number-spinner":a=new gs(this.componentId,this.designerHostService);break;case"radio-group":a=new ys(this.componentId,this.designerHostService);break;case"switch":a=new vs(this.componentId,this.designerHostService);break;case"textarea":a=new Gl(this.componentId,this.designerHostService);break;case"time-picker":a=new bs(this.componentId,this.designerHostService);break;default:a=new ca(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);var l=this;this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:n.editor,tabId:"gridFieldEditor",parentPropertyID:"editor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",data:dt.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(d,p){if(d)switch(d&&d.propertyID){case"type":{l.changeFieldEditorType(n,d.propertyValue);break}}}};const s=["id","type","class","style","binding","label","responseLayout"],c=a.getPropertyConfig(n).categories;Object.keys(c).map(d=>{const p=c[d];let u={};if(Object.keys(p.properties).map(f=>{s.findIndex(w=>w==f)==-1&&p.properties[f]!==!1&&(u[f]=p.properties[f])}),Object.keys(u).length!=0){const f=p==null?void 0:p.title,w="gridFieldEditor",y="编辑器",S=p==null?void 0:p.description,V=(p==null?void 0:p.$converter)||"";l.propertyConfig.categories[o+"_"+d]={title:f,tabId:w,tabName:y,description:S,$converter:V,propertyData:n,properties:u}}})}changeFieldEditorType(n,o){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);i.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const r=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(r,p=>p.type===te["data-grid"].type||p.type===te["tree-grid"].type);if(!a)return;const l=i.fields.find(p=>p.id==this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),c=a.hasOwnProperty("columns")?a.columns:a.fields,d=c.findIndex(p=>p.id===n.id);d>-1&&c[d].editor&&(c[d].editor=Object.assign(s.editor,{required:c[d].editor.required}))}}function ws(e,n){const o=e.schema,i=t.ref(!0),r=t.ref(!0);function a(f){return!1}function l(){return!1}function s(){return!1}function c(){return!0}function d(f){}function p(){}function u(f){var y;return new Cs(f,n).getPropertyConfig(o,(y=e==null?void 0:e.parent)==null?void 0:y.schema)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const io=t.defineComponent({name:"FDataGridColumnDesign",props:Et,emits:[],setup(e,n){const o=t.ref(),i=t.inject("designer-host-service"),r=t.inject("design-item-context"),a=ws(r,i),l=Tt(o,r,a);t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value);function s(c){var d;(d=r==null?void 0:r.setupContext)==null||d.emit("selectionChange",l.value.schema,r.schema,e.componentId,l.value)}return()=>t.createVNode("span",{class:"fv-column-title",ref:o,onClick:c=>s()},[e.title])}});Qe.install=e=>{e.component(Qe.name,Qe),e.component(Pt.name,Pt)},Qe.register=(e,n,o,i)=>{e["data-grid"]=Qe,n["data-grid"]=rn,e["grid-field-editor"]=Ol,n["grid-field-editor"]=pl,i["data-grid"]={bindingResolver:Yi,selectionItemResolver:Ji}},Qe.registerDesigner=(e,n,o)=>{e["data-grid"]=Pt,n["data-grid"]=rn,n["data-grid-column"]=Pl,e["data-grid-column"]=io,n["tree-grid-column"]=El,e["tree-grid-column"]=io};const Ss={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/mapping-editor.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{}},At={fromData:{type:Object,default:{}},toData:{type:Object,default:{}},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},title:{type:String,default:"字段映射编辑器"},modalWidth:{type:Number,default:600},modalHeight:{type:Number,default:500},modelValue:{type:Object,default:{}},editorParams:{type:Object,default:null},onMappingFieldsChanged:{type:Function,default:null}},ro=$e(At,Ss),vt=t.defineComponent({name:"FMappingEditor",props:At,emits:["submitModal","update:modelValue"],setup(e,n){const o='<i class="f-icon f-icon-lookup"></i>',i=t.ref(),r=t.ref(e.modelValue||{}),a=t.ref([]),l=t.ref(e.fromData.dataSource||[]),s=t.ref(e.toData.dataSource||[]),c=t.inject(e.fromData.repositoryToken),d=t.inject(e.toData.repositoryToken),p=[{field:"sourceField",title:"数据源字段",dataType:"string",editor:{type:"combo-tree",data:l.value,idField:e.fromData.idField||"id",textField:e.fromData.textField||"name",valueField:e.fromData.valueField||"id",formatter:e.fromData.formatter,editorParams:e.fromData.editorParams,editable:!1}},{field:"targetField",title:"目标字段",dataType:"string",editor:{type:"combo-tree",data:s.value,idField:e.toData.idField||"id",textField:e.toData.textField||"name",valueField:e.toData.valueField||"id",formatter:e.toData.formatter,editorParams:e.toData.editorParams,editable:!1}}];function u(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)}const f=t.computed(()=>{let h=r.value||{};return typeof r.value=="string"&&(h=JSON.parse(r.value)),Object.keys(h).map(x=>({id:u(),sourceField:x,targetField:h[x]}))}),w=t.computed(()=>{var h;return`共 ${((h=f.value)==null?void 0:h.length)||0} 项`});function y(){var h;(h=i.value)==null||h.addNewDataItemAtLast()}function S(){return{sourceField:"",targetField:"",id:u()}}function V(){if(a!=null&&a.value.length){const h=f.value.findIndex(x=>x.id===(a==null?void 0:a.value[0].id));a.value=[],i==null||i.value.removeDataItem(h)}}function C(){We.question("确定要清空所有映射字段吗?","",()=>{var h;r.value={},(h=i.value)==null||h.updateDataSource([])},()=>{})}function g(){const h={};return f.value.forEach(x=>{x.sourceField&&x.targetField&&(h[x.sourceField]=x.targetField)}),h}t.watch(()=>e.modelValue,h=>{r.value=h});const v={title:e.title,fitContent:!1,height:e.modalHeight,width:e.modalWidth,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:h=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:h=>{const x=g();return r.value=x,n.emit("submitModal",x),n.emit("update:modelValue",x),e.onMappingFieldsChanged&&typeof e.onMappingFieldsChanged=="function"&&e.onMappingFieldsChanged(JSON.stringify(x)),!0}}],reiszeable:!0,draggable:!0};function _(h){a.value=h}function N(){const h=[],x=c?c.getData(e.editorParams):Promise.resolve(l.value);h.push(x);const b=d?d.getData(e.editorParams):Promise.resolve(s.value);return h.push(b),Promise.all(h).then(([m,F])=>(p[0].editor.data=m,p[1].editor.data=F,!0))}return()=>t.createVNode(nt,{modelValue:w.value,"onUpdate:modelValue":h=>w.value=h,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableClear:!1,buttonContent:o,buttonBehavior:"Modal",modalOptions:v,beforeOpen:N},{default:()=>[t.createVNode("div",{class:"h-100 d-flex flex-column"},[t.createVNode("div",{class:"px-2"},[t.createVNode("button",{class:"btn btn-primary",onClick:y},[t.createTextVNode("新增")]),t.createVNode("button",{class:"btn btn-secondary ml-2",onClick:V},[t.createTextVNode("删除")]),t.createVNode("button",{class:"btn btn-secondary ml-3",onClick:C},[t.createTextVNode("清空")])]),t.createVNode("div",{class:" f-utils-fill p-2"},[t.createVNode(Qe,{ref:i,pagination:{enable:!1},summary:{enable:!1},columnOption:{fitColumns:!0},editOption:{editMode:"cell"},rowNumber:!1,showBorder:!0,editable:"true",fit:!0,columns:p,data:f.value,newDataItem:S,onSelectionChange:_},null)])])]})}}),xs={install(e){e.component(vt.name,vt)},register(e,n,o,i){e["mapping-editor"]=vt,n["mapping-editor"]=ro}};G.MappingEditor=vt,G.default=xs,G.mappingEditorProps=At,G.propsResolver=ro,Object.defineProperties(G,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});