@farris/ui-vue 1.2.9 → 1.3.1

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 (287) hide show
  1. package/components/accordion/index.esm.js +64 -64
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +521 -336
  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 +99 -97
  7. package/components/button-edit/index.umd.cjs +1 -1
  8. package/components/calendar/index.esm.js +496 -504
  9. package/components/calendar/index.umd.cjs +1 -1
  10. package/components/capsule/index.esm.js +251 -259
  11. package/components/capsule/index.umd.cjs +1 -1
  12. package/components/checkbox/index.esm.js +696 -519
  13. package/components/checkbox/index.umd.cjs +1 -1
  14. package/components/color-picker/index.esm.js +368 -376
  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 +1141 -340
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +116 -116
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/common/index.esm.js +986 -798
  22. package/components/common/index.umd.cjs +1 -1
  23. package/components/component/index.esm.js +463 -998
  24. package/components/component/index.umd.cjs +1 -1
  25. package/components/condition/index.css +1 -0
  26. package/components/condition/index.esm.js +2233 -1057
  27. package/components/condition/index.umd.cjs +1 -1
  28. package/components/content-container/index.esm.js +335 -1002
  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 +6193 -4702
  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 +4562 -3294
  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 +3420 -2623
  38. package/components/date-picker/index.umd.cjs +1 -1
  39. package/components/designer-canvas/index.css +1 -1
  40. package/components/designer-canvas/index.esm.js +914 -883
  41. package/components/designer-canvas/index.umd.cjs +1 -1
  42. package/components/designer-outline/index.esm.js +14 -13
  43. package/components/designer-outline/index.umd.cjs +1 -1
  44. package/components/dropdown/index.esm.js +204 -212
  45. package/components/dropdown/index.umd.cjs +2 -2
  46. package/components/dynamic-form/index.css +1 -0
  47. package/components/dynamic-form/index.esm.js +2795 -1835
  48. package/components/dynamic-form/index.umd.cjs +1 -1
  49. package/components/dynamic-resolver/index.esm.js +180 -130
  50. package/components/dynamic-resolver/index.umd.cjs +1 -1
  51. package/components/dynamic-view/index.esm.js +303 -290
  52. package/components/dynamic-view/index.umd.cjs +1 -1
  53. package/components/events-editor/index.esm.js +328 -336
  54. package/components/events-editor/index.umd.cjs +1 -1
  55. package/components/expression-editor/index.esm.js +65 -65
  56. package/components/expression-editor/index.umd.cjs +1 -1
  57. package/components/external-container/index.css +1 -1
  58. package/components/external-container/index.esm.js +3349 -3626
  59. package/components/external-container/index.umd.cjs +1 -1
  60. package/components/field-selector/index.css +1 -1
  61. package/components/field-selector/index.esm.js +5344 -8588
  62. package/components/field-selector/index.umd.cjs +1 -1
  63. package/components/filter-bar/index.css +1 -1
  64. package/components/filter-bar/index.esm.js +2179 -2227
  65. package/components/filter-bar/index.umd.cjs +1 -1
  66. package/components/flow-canvas/index.css +1 -1
  67. package/components/flow-canvas/index.esm.js +684 -675
  68. package/components/flow-canvas/index.umd.cjs +1 -1
  69. package/components/image-cropper/index.esm.js +482 -490
  70. package/components/image-cropper/index.umd.cjs +1 -1
  71. package/components/input-group/index.esm.js +746 -569
  72. package/components/input-group/index.umd.cjs +1 -1
  73. package/components/layout/index.esm.js +409 -385
  74. package/components/layout/index.umd.cjs +1 -1
  75. package/components/list-nav/index.esm.js +348 -1019
  76. package/components/list-nav/index.umd.cjs +1 -1
  77. package/components/list-view/index.css +1 -1
  78. package/components/list-view/index.esm.js +3606 -2388
  79. package/components/list-view/index.umd.cjs +1 -1
  80. package/components/lookup/index.css +1 -1
  81. package/components/lookup/index.esm.js +10871 -8970
  82. package/components/lookup/index.umd.cjs +1 -1
  83. package/components/mapping-editor/index.css +1 -1
  84. package/components/mapping-editor/index.esm.js +6019 -5631
  85. package/components/mapping-editor/index.umd.cjs +1 -1
  86. package/components/message-box/index.css +1 -1
  87. package/components/message-box/index.esm.js +511 -471
  88. package/components/message-box/index.umd.cjs +1 -1
  89. package/components/modal/index.css +1 -1
  90. package/components/modal/index.esm.js +438 -398
  91. package/components/modal/index.umd.cjs +1 -1
  92. package/components/nav/index.esm.js +912 -1281
  93. package/components/nav/index.umd.cjs +3 -3
  94. package/components/notify/index.esm.js +59 -53
  95. package/components/notify/index.umd.cjs +1 -1
  96. package/components/number-range/index.esm.js +660 -484
  97. package/components/number-range/index.umd.cjs +1 -1
  98. package/components/number-spinner/index.esm.js +682 -506
  99. package/components/number-spinner/index.umd.cjs +1 -1
  100. package/components/order/index.css +1 -1
  101. package/components/order/index.esm.js +1848 -1658
  102. package/components/order/index.umd.cjs +1 -1
  103. package/components/page-footer/index.esm.js +100 -100
  104. package/components/page-footer/index.umd.cjs +1 -1
  105. package/components/page-header/index.esm.js +1120 -1923
  106. package/components/page-header/index.umd.cjs +1 -1
  107. package/components/pagination/index.esm.js +875 -1214
  108. package/components/pagination/index.umd.cjs +1 -1
  109. package/components/popover/index.esm.js +71 -70
  110. package/components/popover/index.umd.cjs +1 -1
  111. package/components/progress/index.esm.js +229 -237
  112. package/components/progress/index.umd.cjs +3 -3
  113. package/components/property-editor/index.css +1 -1
  114. package/components/property-editor/index.esm.js +2314 -1521
  115. package/components/property-editor/index.umd.cjs +3 -3
  116. package/components/property-panel/index.esm.js +867 -868
  117. package/components/property-panel/index.umd.cjs +1 -1
  118. package/components/query-solution/index.css +1 -1
  119. package/components/query-solution/index.esm.js +4332 -3623
  120. package/components/query-solution/index.umd.cjs +1 -1
  121. package/components/radio-button/index.esm.js +72 -72
  122. package/components/radio-button/index.umd.cjs +1 -1
  123. package/components/radio-group/index.esm.js +613 -437
  124. package/components/radio-group/index.umd.cjs +1 -1
  125. package/components/rate/index.esm.js +255 -263
  126. package/components/rate/index.umd.cjs +1 -1
  127. package/components/response-layout/index.esm.js +144 -152
  128. package/components/response-layout/index.umd.cjs +1 -1
  129. package/components/response-layout-editor/index.css +1 -1
  130. package/components/response-layout-editor/index.esm.js +1101 -1038
  131. package/components/response-layout-editor/index.umd.cjs +1 -1
  132. package/components/response-toolbar/index.esm.js +935 -1750
  133. package/components/response-toolbar/index.umd.cjs +1 -1
  134. package/components/schema-selector/index.css +1 -1
  135. package/components/schema-selector/index.esm.js +5264 -5677
  136. package/components/schema-selector/index.umd.cjs +2 -2
  137. package/components/search-box/index.esm.js +151 -154
  138. package/components/search-box/index.umd.cjs +1 -1
  139. package/components/section/index.esm.js +438 -1125
  140. package/components/section/index.umd.cjs +1 -1
  141. package/components/smoke-detector/index.esm.js +93 -101
  142. package/components/smoke-detector/index.umd.cjs +1 -1
  143. package/components/splitter/index.esm.js +563 -1202
  144. package/components/splitter/index.umd.cjs +1 -1
  145. package/components/splitter/style.js +2 -0
  146. package/components/step/index.esm.js +248 -256
  147. package/components/step/index.umd.cjs +1 -1
  148. package/components/switch/index.esm.js +549 -373
  149. package/components/switch/index.umd.cjs +1 -1
  150. package/components/tabs/index.css +1 -1
  151. package/components/tabs/index.esm.js +2436 -3110
  152. package/components/tabs/index.umd.cjs +1 -1
  153. package/components/tags/index.esm.js +328 -336
  154. package/components/tags/index.umd.cjs +1 -1
  155. package/components/text/index.esm.js +339 -347
  156. package/components/text/index.umd.cjs +1 -1
  157. package/components/textarea/index.esm.js +554 -378
  158. package/components/textarea/index.umd.cjs +1 -1
  159. package/components/time-picker/index.css +1 -1
  160. package/components/time-picker/index.esm.js +1322 -1144
  161. package/components/time-picker/index.umd.cjs +1 -1
  162. package/components/transfer/index.css +1 -1
  163. package/components/transfer/index.esm.js +537 -543
  164. package/components/transfer/index.umd.cjs +1 -1
  165. package/components/tree-grid/index.css +1 -1
  166. package/components/tree-grid/index.esm.js +5113 -9426
  167. package/components/tree-grid/index.umd.cjs +1 -1
  168. package/components/tree-view/index.css +1 -0
  169. package/components/tree-view/index.esm.js +3900 -2677
  170. package/components/tree-view/index.umd.cjs +1 -1
  171. package/components/uploader/index.esm.js +568 -570
  172. package/components/uploader/index.umd.cjs +2 -2
  173. package/components/verify-detail/index.esm.js +266 -274
  174. package/components/verify-detail/index.umd.cjs +1 -1
  175. package/components/video/index.esm.js +553 -1052
  176. package/components/video/index.umd.cjs +1 -1
  177. package/components/weather/index.esm.js +558 -566
  178. package/components/weather/index.umd.cjs +5 -5
  179. package/farris.all.esm.js +22009 -22688
  180. package/farris.all.umd.cjs +9 -9
  181. package/index.css +1 -1
  182. package/package.json +1 -1
  183. package/types/capsule/src/capsule.props.d.ts +2 -2
  184. package/types/combo-list/src/components/list-container.component.d.ts +0 -3
  185. package/types/combo-list/src/components/list-container.props.d.ts +0 -4
  186. package/types/common/directive/area-response.d.ts +10 -0
  187. package/types/common/index.d.ts +9 -0
  188. package/types/common/radio-checkbox/radio-checkbox.props.d.ts +1 -0
  189. package/types/common/types.d.ts +1 -1
  190. package/types/common/utils/encrypt.d.ts +2 -0
  191. package/types/common/utils/resolve-field.d.ts +2 -0
  192. package/types/common/utils/use-class.d.ts +7 -0
  193. package/types/component/src/component.props.d.ts +7 -0
  194. package/types/component/src/designer/use-designer-rules.d.ts +2 -2
  195. package/types/component/src/property-config/component.property-config.d.ts +9 -0
  196. package/types/components.d.ts +1 -0
  197. package/types/condition/src/types.d.ts +2 -1
  198. package/types/content-container/src/designer/use-designer-rules.d.ts +3 -3
  199. package/types/data-grid/index.d.ts +11 -5
  200. package/types/data-grid/src/data-grid.component.d.ts +4 -2
  201. package/types/data-grid/src/data-grid.props.d.ts +1 -0
  202. package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
  203. package/types/data-grid/src/designer/use-designer-rules.d.ts +2 -2
  204. package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
  205. package/types/data-view/composition/data/use-tree-data.d.ts +1 -1
  206. package/types/data-view/composition/types.d.ts +19 -4
  207. package/types/data-view/composition/visualization/use-virtual-scroll.d.ts +0 -15
  208. package/types/designer-canvas/index.d.ts +2 -1
  209. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  210. package/types/designer-canvas/src/composition/rule/use-dragula-common-rule.d.ts +4 -0
  211. package/types/designer-canvas/src/composition/rule/use-template-rule.d.ts +30 -0
  212. package/types/designer-canvas/src/composition/types.d.ts +2 -3
  213. package/types/designer-canvas/src/types.d.ts +2 -1
  214. package/types/dynamic-form/src/composition/use-response-form-layout-setting.d.ts +2 -0
  215. package/types/dynamic-form/src/designer/response-form-layout-setting.component.d.ts +8 -0
  216. package/types/dynamic-form/src/designer/response-form-layout-setting.props.d.ts +4 -0
  217. package/types/dynamic-form/src/designer/response-form.design.component.d.ts +7 -1
  218. package/types/dynamic-form/src/designer/use-designer-rules.d.ts +1 -1
  219. package/types/dynamic-form/src/property-config/form.property-config.d.ts +9 -0
  220. package/types/dynamic-form/src/schema/schema-mapper.d.ts +1 -0
  221. package/types/dynamic-form/src/schema/schema-resolver.d.ts +1 -0
  222. package/types/dynamic-form/src/types.d.ts +12 -1
  223. package/types/dynamic-resolver/index.d.ts +1 -0
  224. package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +1 -1
  225. package/types/dynamic-resolver/src/event-handler-resolver.d.ts +4 -0
  226. package/types/dynamic-resolver/src/types.d.ts +9 -0
  227. package/types/dynamic-view/index.d.ts +1 -0
  228. package/types/dynamic-view/src/event-dispatcher.d.ts +1 -1
  229. package/types/external-container/src/designer/use-designer-rules.d.ts +3 -3
  230. package/types/index.d.ts +2 -0
  231. package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +3 -3
  232. package/types/list-nav/src/designer/use-designer-rules.d.ts +3 -0
  233. package/types/lookup/src/components/favorite/lookup-favorite.component.d.ts +29 -0
  234. package/types/lookup/src/components/favorite/lookup-favorite.props.d.ts +15 -0
  235. package/types/lookup/src/components/modal-container.component.d.ts +25 -0
  236. package/types/lookup/src/components/modal-container.props.d.ts +29 -0
  237. package/types/lookup/src/composition/types.d.ts +8 -0
  238. package/types/lookup/src/composition/use-check-props.d.ts +9 -2
  239. package/types/lookup/src/composition/use-dialog.d.ts +5 -1
  240. package/types/lookup/src/composition/use-favorite.d.ts +12 -0
  241. package/types/lookup/src/composition/use-http.d.ts +9 -5
  242. package/types/lookup/src/composition/use-input-change.d.ts +3 -0
  243. package/types/lookup/src/composition/use-user-data.d.ts +24 -0
  244. package/types/lookup/src/property-config/lookup.property-config.d.ts +6 -4
  245. package/types/mapping-editor/src/mapping-editor.component.d.ts +3 -0
  246. package/types/mapping-editor/src/mapping-editor.props.d.ts +0 -1
  247. package/types/modal/src/composition/use-draggable.d.ts +2 -1
  248. package/types/modal/src/composition/use-shortcut.d.ts +6 -0
  249. package/types/modal/src/modal.component.d.ts +3 -0
  250. package/types/modal/src/modal.props.d.ts +4 -0
  251. package/types/page-header/src/page-header.props.d.ts +1 -0
  252. package/types/pagination/src/components/buttons/goto-buttons.component.d.ts +2 -2
  253. package/types/pagination/src/components/buttons/next-buttons.component.d.ts +2 -2
  254. package/types/pagination/src/components/buttons/previous-buttons.component.d.ts +2 -2
  255. package/types/pagination/src/components/pages/page-list.component.d.ts +2 -2
  256. package/types/pagination/src/components/pages/page-number.component.d.ts +2 -2
  257. package/types/property-panel/index.d.ts +2 -1
  258. package/types/property-panel/src/composition/entity/base-property.d.ts +8 -0
  259. package/types/property-panel/src/composition/entity/input-base-property.d.ts +20 -1
  260. package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +34 -27
  261. package/types/query-solution/src/designer/query-solution-config/composition/use-panel.d.ts +2 -16
  262. package/types/{data-grid/src/designer/use-group-column.d.ts → query-solution/src/designer/query-solution-config/composition/use-property.d.ts} +4 -5
  263. package/types/query-solution/src/designer/query-solution-config/composition/use-querysolution-rules.d.ts +3 -0
  264. package/types/query-solution/src/designer/query-solution-config/composition/use-transfer.d.ts +1 -1
  265. package/types/query-solution/src/property-config/query-solution.property-config.d.ts +60 -0
  266. package/types/query-solution/src/solutions.d.ts +108 -509
  267. package/types/response-layout-editor/index.d.ts +3 -1
  268. package/types/response-layout-editor/src/composition/converter/use-response-layout-editor-setting.d.ts +2 -0
  269. package/types/response-layout-editor/src/type.d.ts +21 -0
  270. package/types/response-toolbar/src/designer/use-designer-rules.d.ts +3 -3
  271. package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -0
  272. package/types/section/src/designer/use-designer-rules.d.ts +3 -3
  273. package/types/splitter/src/components/splitter-pane.component.d.ts +1 -1
  274. package/types/splitter/src/designer/splitter-pane-use-designer-rules.d.ts +3 -3
  275. package/types/splitter/src/designer/splitter-use-designer-rules.d.ts +3 -3
  276. package/types/tabs/src/designer/tab-page-use-designer-rules.d.ts +3 -3
  277. package/types/tabs/src/designer/tab-use-designer-rules.d.ts +3 -3
  278. package/types/tabs/src/tabs.props.d.ts +1 -0
  279. package/types/tree-grid/index.d.ts +8 -2
  280. package/types/tree-grid/src/tree-grid.component.d.ts +3 -1
  281. package/types/designer-canvas/src/composition/rule/use-drag-drop-rules.d.ts +0 -19
  282. package/types/designer-canvas/src/composition/use-dragula-common-rule.d.ts +0 -4
  283. package/types/list-nav/src/composition/use-designer-rules.d.ts +0 -3
  284. package/types/modal/src/composition/use-esc.d.ts +0 -1
  285. package/types/query-solution/src/designer/query-solution-config/composition/mock-data.d.ts +0 -6
  286. package/types/response-layout-editor/src/composition/converter/response-layout-editor.converter.d.ts +0 -3
  287. package/types/response-layout-editor/src/composition/converter/use-convert-property-value.d.ts +0 -20
@@ -1 +1 @@
1
- (function(E,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("@vueuse/core"),require("../data-view/index.umd.js"),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("../common/index.umd.js"),require("../button-edit/index.umd.js/src/designer/button-edit.design.component")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../designer-canvas/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","@vueuse/core","../data-view/index.umd.js","../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","../common/index.umd.js","../button-edit/index.umd.js/src/designer/button-edit.design.component"],n):(E=typeof globalThis<"u"?globalThis:E||self,n(E.lookup={},E.Vue,E.LodashES,E.dynamicResolver,E.designerCanvas,E.FTags,E.FPopover,E.VueUseCore,E.dataView,null,E.FTransfer$1,E.FTabs,E.FOrder,null,E.FCheckBox$1,E.FFilterBar,E.FPagination,E.FDynamicForm,E.FComboList$1,E.BigNumber,E.FNumberSpinner,E.FAccordion,E.FAvatar,E.FButtonEdit$1,E.FButtonGroup,E.FCalendar,E.FCapsule,E.FComboTree,E.FComponent,E.FColorPicker,E.FContentContainer,E.FDatePicker,E.FDataGrid$1,E.FDropdown,E.FEventsEditor,E.FFieldSelector,E.FImageCropper,E.FInputGroup$1,E.FLayout$1,E.FListNav,E.FListView$1,E.FLookup$1,E.FMappingEditor,E.FNav,E.FNumberRange,E.FPageHeader,E.FPageFooter,E.FProgress,E.FQuerySolution,E.FRadioGroup,E.FRate,E.FResponseToolbar,E.FResponseLayout,E.FResponseLayoutEditorSetting,E.FSearchBox,E.FSection,E.FSmokeDetector,E.FSplitter,E.FStep,E.FSwitch,E.FText,E.FTimePicker,E.FTreeview,E.FUploader,E.FVerifyDetail,E.FWeather,E.FVideo,E.FTextArea,E.FSchemaSelector,E.FTreeGrid$1,null,E.common,E.FButtonEditDesign$1))})(this,function(E,n,Re,Tt,nn,on,zo,St,R,ic,qo,Uo,Ko,ac,ft,an,rn,It,Ot,rc,pt,Xo,Yo,ln,Jo,Qo,Zo,ei,ti,ni,oi,ii,ai,ri,li,si,ci,di,ui,fi,sn,pi,mi,gi,hi,yi,vi,bi,Ci,wi,Si,xi,_i,Fi,Vi,Ni,ki,Ti,Ii,Oi,$i,Bi,Mi,ji,Pi,Di,Ri,Ei,Li,Ai,lc,Xe,Hi){"use strict";var nc=Object.defineProperty;var oc=(E,n,Re)=>n in E?nc(E,n,{enumerable:!0,configurable:!0,writable:!0,value:Re}):E[n]=Re;var z=(E,n,Re)=>oc(E,typeof n!="symbol"?n+"":n,Re);const cn={},dn={};function $t(e){const{properties:t,title:o,ignore:i}=e,a=i&&Array.isArray(i),r=Object.keys(t).reduce((l,s)=>((!a||!i.find(f=>f==s))&&(l[s]=t[s].type==="object"&&t[s].properties?$t(t[s]):Re.cloneDeep(t[s].default)),l),{});return(!a||!i.find(l=>l=="id"))&&(r.id=`${o}-${Date.now()}`),r}function Bt(e,t={},o){const i=cn[e];if(i){let a=$t(i);const r=dn[e];return a=r?r({getSchemaByType:Bt},a,t,o):a,a}return null}function Gi(e,t){const o=$t(t);return Object.keys(e).reduce((i,a)=>(i[a]&&typeof i[a]=="object"?Object.assign(i[a],e[a]):i[a]=e[a],i),o),o}function Wi(e,t){return Object.keys(e).filter(i=>e[i]!=null).reduce((i,a)=>{if(t.has(a)){const r=t.get(a);if(typeof r=="string")i[r]=e[a];else{const l=r(a,e[a],e);Object.assign(i,l)}}else i[a]=e[a];return i},{})}function zi(e,t,o=new Map){const i=Gi(e,t);return Wi(i,o)}function qi(e={}){function t(d,p,c,u){if(typeof c=="number")return u[d].length===c;if(typeof c=="object"){const _=Object.keys(c)[0],m=c[_];if(_==="not")return Number(u[d].length)!==Number(m);if(_==="moreThan")return Number(u[d].length)>=Number(m);if(_==="lessThan")return Number(u[d].length)<=Number(m)}return!1}function o(d,p,c,u){return u[d]&&u[d].propertyValue&&String(u[d].propertyValue.value)===String(c)}const i=new Map([["length",t],["getProperty",o]]);Object.keys(e).reduce((d,p)=>(d.set(p,e[p]),d),i);function a(d,p){const c=d;return typeof p=="number"?[{target:c,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:c,operator:"getProperty",param:d,value:!!p}]:typeof p=="object"?Object.keys(p).map(u=>{if(u==="length")return{target:c,operator:"length",param:null,value:p[u]};const _=u,m=p[u];return{target:c,operator:"getProperty",param:_,value:m}}):[]}function r(d){return Object.keys(d).reduce((c,u)=>{const _=a(u,d[u]);return c.push(..._),c},[])}function l(d,p){if(i.has(d.operator)){const c=i.get(d.operator);return c&&c(d.target,d.param,d.value,p)||!1}return!1}function s(d,p){return r(d).reduce((_,m)=>_&&l(m,p),!0)}function f(d,p){const c=Object.keys(d),u=c.includes("allOf"),_=c.includes("anyOf"),m=u||_,S=(m?d[m?u?"allOf":"anyOf":"allOf"]:[d]).map(g=>s(g,p));return u?!S.includes(!1):S.includes(!0)}return{parseValueSchema:f}}const Z={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"}},Ui={},Ki={};qi();function Ie(e,t,o=new Map,i=(l,s,f)=>s,a={},r=l=>l){return cn[t.title]=t,dn[t.title]=i,Ui[t.title]=a,Ki[t.title]=r,(l={})=>{const s=zi(l,t,o),f=Object.keys(e).reduce((d,p)=>(d[p]=e[p].default,d),{});return Object.assign(f,s)}}function Ge(e,t){return{customClass:t.class,customStyle:t.style}}function Xi(){function e(t,o){const{id:i}=t||{},{dataSource:a}=t||{};return a===void 0?{}:{data:o.getValue(i),"onUpdate:data":(...r)=>{}}}return{resolve:e}}function Yi(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function Ji(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}const Qi=new Map([["appearance",Tt.resolveAppearance]]);function Zi(e,t,o){return t}const ea={$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"]},ta={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:"右对齐"}]}}}}}},Mt={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}},un=Ie(Mt,ea,Qi,Zi,ta),na={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},oa=n.defineComponent({name:"FOverlay",props:na,emits:["click"],setup(e,t){const o=n.ref(e.popupContentPosition),i=n.ref(e.host),a=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(s){t.emit("click"),s.preventDefault(),s.stopPropagation()}n.computed(()=>{const s=i.value;if(s){const f=s.getBoundingClientRect(),{left:d,top:p,height:c}=f;return{left:d,top:p+c}}return o.value});const l=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var s,f;return[n.createVNode("div",{class:"overlay-container",onClick:d=>r(d),style:a.value},[n.createVNode("div",{style:l.value},[(f=(s=t.slots).default)==null?void 0:f.call(s)])])]}})}});function ia(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function aa(e){const t=document.createElement("div");t.style.display="contents";let o;const i=e.onClickCallback||(()=>{}),a=()=>{i(),o&&o.unmount()};return o=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const r=ia(e);return()=>n.createVNode(oa,{"popup-content-position":e.popupPosition,host:e.host,onClick:a,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(t),o.mount(t),o}class ra{static show(t){return aa(t)}}const fn=Symbol("FModalService");function pn(e,t){function o(){const i=e.beforeOpen||e.beforeClickButton||null;let a=Promise.resolve(!0);if(i){const r=i(t.value);if(typeof r>"u")return a;typeof r=="boolean"?a=Promise.resolve(r):a=r}return a}return{judgeCanOpen:o}}function mn(e,t,o,i,a){const r=n.ref(e.buttonBehavior),l=n.ref(e.popupOnInput),s=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:f}=pn(e,a),d=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),p=n.inject(fn,null),c=n.ref();async function u(y){if(await f()&&d.value){const b=!!t.slots.default;if(r.value==="Modal"){const S=e.modalOptions,C=p==null?void 0:p.open({...S,render:()=>t.slots.default&&t.slots.default()});c.value=C==null?void 0:C.modalRef}r.value==="Overlay"&&ra.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),b&&r.value==="Popup"&&i.togglePopup(!0),b&&l.value&&i.hidePopup(),t.emit("clickButton",{origin:y,value:e.modelValue})}}function _(y){t.emit("mouseEnterIcon",y)}function m(y){t.emit("mouseLeaveIcon",y)}return{buttonGroupClass:s,onClickButton:u,onMouseEnterButton:_,onMouseLeaveButton:m,modalRef:c}}function gn(e,t,o,i){const a=n.ref(),r=n.ref(!1),{judgeCanOpen:l}=pn(e,i);function s(){const c=a.value;c&&c.show(o.value)}async function f(c=!1){if(!!t.slots.default){if(!c&&!r.value&&!await l())return;r.value=!r.value,await n.nextTick(),s()}}async function d(c=!1){if(!!t.slots.default){if(!c&&!await l())return;r.value=!0,await n.nextTick(),s()}}function p(){r.value=!1}return{hidePopup:p,popup:d,shouldPopupContent:r,togglePopup:f,popoverRef:a}}function la(e,t,o){const{buttonGroupClass:i}=o,a=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:i.value},[t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button"},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:a},null):null]),buttonHandleElement:a}}const hn=n.defineComponent({name:"FButtonEdit",props:Mt,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const o=n.ref(),i=n.inject("design-item-context"),a=nn.useDesignerComponent(o,i),r=n.ref(e.customClass),l=n.ref(e.modelValue),s=gn(e,t,o,l),f=mn(e,t,o,s,l),d=n.ref(),p=n.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":!0,"f-state-editable":!1,"f-state-readonly":!0}));n.onMounted(()=>{o.value.componentInstance=a}),t.expose(a.value);const c=n.computed(()=>{const _={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return r.value&&r.value.split(" ").reduce((m,y)=>(m[y]=!0,m),_),_}),{renderButtonGroup:u}=la(e,t,f);return()=>n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:c.value,id:e.id}),[n.createVNode("div",{class:p.value},[n.createVNode("input",{ref:d,class:"form-control",readonly:!0,placeholder:e.placeholder},null),u()])])}});function rt(e,t,o){var x;function i(){o!=null&&o.resolveComponentContext&&o.resolveComponentContext()}i();const a=o&&o.getStyles&&o.getStyles()||"",r=o&&o.getDesignerClass&&o.getDesignerClass()||"",l=n.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function f(){return!1}function d(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function p(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function c(h){if(!h||!h.value)return null;if(h.value.schema&&h.value.schema.type==="component")return h.value;const V=n.ref(h==null?void 0:h.value.parent),v=c(V);return v||null}function u(h=t){const{componentInstance:V,designerItemElementRef:v}=h;return!V||!V.value?null:V.value.canMove?v:u(h.parent)}function _(h){return!!o&&o.canAccepts(h)}function m(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function y(){}function b(h,V){V&&o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(V)}function S(h,V){const{componentType:v}=h;let w=Bt(v,h,V);o&&o.onResolveNewComponentSchema&&(w=o.onResolveNewComponentSchema(h,w));const k=v.toLowerCase().replace("-","_");return w&&!w.id&&w.type===v&&(w.id=`${k}_${Math.random().toString().slice(2,6)}`),w}function C(h,V){const v=String(h.getAttribute("data-controltype")),w=h.getAttribute("data-feature"),k=w?JSON.parse(w):{};k.parentComponentInstance=l.value;let I=Bt(v,k);o&&o.onAcceptNewChildElement&&(I=o.onAcceptNewChildElement(h,V,I));const O=v.toLowerCase().replace("-","_");return I&&!I.id&&I.type===v&&(I.id=`${O}_${Math.random().toString().slice(2,6)}`),I}function g(h){}function F(...h){if(o&&o.getPropsConfig)return o.getPropsConfig(...h)}return l.value={canMove:s(),canSelectParent:f(),canDelete:d(),canNested:!p(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(x=t==null?void 0:t.parent)==null?void 0:x.componentInstance,schema:t==null?void 0:t.schema,styles:a,designerClass:r,canAccepts:_,getBelongedComponentInstance:c,getDraggableDesignItemElement:u,getDraggingDisplayText:m,getPropConfig:F,getDragScopeElement:y,onAcceptMovedChildElement:b,onAcceptNewChildElement:C,onChildElementMovedOut:g,addNewChildComponentSchema:S,updateDragAndDropRules:i,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1)},l}const sa=new Map([["appearance",Ge],["mappingFields",(e,t,o)=>{let{mappingFields:i}=o;return typeof i=="string"&&i.startsWith("{")&&i.endsWith("}")?(i=i.replace(/'/g,'"'),{mappingFields:JSON.parse(i)}):{mappingFields:i}}],["uri",(e,t,o)=>{var i;return{uri:(i=o==null?void 0:o.dataSource)==null?void 0:i.uri}}]]),ca={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/lookup.schema.json",title:"lookup",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"lookup"},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:"帮助"},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},required:{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},textField:{description:"帮助显示文本字段",type:"string",default:""},mappingFields:{description:"帮助字段映射",type:"object",default:{}},uri:{type:"string",default:""}},required:["id","type"],ignore:["id","appearance","binding"]};function da(e,t,o){return t}var Ue=(e=>(e.List="LIST",e.Tree="TREELIST",e.ListList="NAVLIST",e.TreeList="NAVTREELIST",e.ListTree="NAVLISTTREE",e))(Ue||{}),jt=(e=>(e.default="default",e.all="all",e.async="async",e))(jt||{});const yn=Symbol("f_lookup-http-service_token");var Pt=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.Greater=2]="Greater",e[e.GreaterOrEqual=3]="GreaterOrEqual",e[e.Less=4]="Less",e[e.LessOrEqual=5]="LessOrEqual",e[e.Like=6]="Like",e[e.LikeStartWith=7]="LikeStartWith",e[e.LikeEndWith=8]="LikeEndWith",e[e.NotLike=9]="NotLike",e[e.NotLikeStartWith=10]="NotLikeStartWith",e[e.NotLikeEndWith=11]="NotLikeEndWith",e[e.Is=12]="Is",e[e.IsNot=13]="IsNot",e[e.In=14]="In",e[e.NotIn=15]="NotIn",e))(Pt||{}),xt=(e=>(e[e.Empty=0]="Empty",e[e.And=1]="And",e[e.Or=2]="Or",e))(xt||{}),vn=(e=>(e[e.Value=0]="Value",e[e.Expression=1]="Expression",e.FrontExpress="frontExpress",e))(vn||{});const mt={id:{type:String,require:!0},uri:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},mappingFields:{type:Object,default:null},fitColumns:{type:Boolean,default:!0},columns:{type:Array,default:[]},idField:{type:String,default:"id"},textField:{type:String,defalut:"name"},data:{type:Array,default:[]},displayType:{type:String,default:Ue.List},dialog:{type:Object,default:{title:"选择"}},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},pagination:{type:Object,default:{enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1}},enableClear:{type:Boolean,default:!0},inputType:{type:String,default:"text"},idValue:{type:String,default:""},dictPicking:{type:Function,default:null},dictPicked:{type:Function,default:null},beforeSelectData:{type:Function,default:null},enableSearchBar:{type:Boolean,default:!0},searchFields:{type:Array,default:[]},showAllSearchColumns:{type:Boolean,default:!0},navigation:{type:Object,default:null},textChangeType:{type:String,default:"any"},enableMultiFieldSearch:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},navTreeToList:{type:Boolean,default:!1},loadTreeDataType:{type:String,default:jt.all},enableToSelect:{type:Boolean,default:!0},customData:{type:Object,default:null},modelValue:{type:String,default:""}},Dt=Ie(mt,ca,sa,da);function bn(e,t){e.schema;const o=n.ref(!0),i=n.ref(!0);function a(c){return!1}function r(){return!1}function l(){return!1}function s(){return!0}function f(c){}function d(){}function p(c){return null}return{canAccepts:a,checkCanDeleteComponent:r,checkCanMoveComponent:l,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:f,resolveComponentContext:d,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:p}}class _t{constructor(t,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 i;this.componentId=t,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(t))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){const o=t.binding&&t.binding.type==="Form"&&t.binding.field;if(o){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(a=>a.id===o)}t.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(t,o){}getBasicPropConfig(t){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:t.type,name:Z[t.type].name}]}}}}}getAppearanceConfig(t=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 dt=class dt{static getEditorTypesByMDataType(t){const o=dt.fieldControlTypeMapping[t];return o||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(let o in dt.fieldControlTypeMapping)dt.fieldControlTypeMapping[o].forEach(i=>{t.find(a=>a.key===i.key&&a.value===i.value)||t.push({key:i.key,value:i.value})});return t}};z(dt,"fieldControlTypeMapping",{String:[{key:Z["input-group"].type,value:Z["input-group"].name},{key:Z.lookup.type,value:Z.lookup.name},{key:Z["date-picker"].type,value:Z["date-picker"].name},{key:Z["check-box"].type,value:Z["check-box"].name},{key:Z["radio-group"].type,value:Z["radio-group"].name},{key:Z["combo-list"].type,value:Z["combo-list"].name},{key:Z.textarea.type,value:Z.textarea.name}],Text:[{key:Z.textarea.type,value:Z.textarea.name},{key:Z.lookup.type,value:Z.lookup.name}],Decimal:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],Integer:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],Number:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],BigNumber:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],Date:[{key:Z["date-picker"].type,value:Z["date-picker"].name}],DateTime:[{key:Z["date-picker"].type,value:Z["date-picker"].name}],Boolean:[{key:Z.switch.type,value:Z.switch.name},{key:Z["check-box"].type,value:Z["check-box"].name}],Enum:[{key:Z["combo-list"].type,value:Z["combo-list"].name},{key:Z["radio-group"].type,value:Z["radio-group"].name}],Object:[{key:Z.lookup.type,value:Z.lookup.name},{key:Z["combo-list"].type,value:Z["combo-list"].name},{key:Z["radio-group"].type,value:Z["radio-group"].name}]});let gt=dt;const Ft=n.ref(0);function ua(e,t){const o=t.getBoundingClientRect(),i=e.getBoundingClientRect(),a=i.top>=o.top,r=i.top<=o.bottom;return a&&r}function fa(e){if(!e)return;let t;if(e.className.includes("dgComponentSelected")?t=e:t=e.querySelector(".dgComponentSelected"),!t)return;const o=t.getBoundingClientRect();if(o.width===0&&o.height===0)return;const i=t.querySelector(".component-btn-group");if(i){if(!ua(t,e)){i.style.display="none";return}i.style.display="";const r=i.getBoundingClientRect(),l=i.querySelector("div");if(l){const s=l.getBoundingClientRect();l.style.top=r.top+"px",l.style.left=r.left-s.width+"px"}}}class Ae extends _t{constructor(t,o){super(t,o)}getPropertyConfig(t,o){return this.propertyConfig.categories.basic=this.getBasicProperties(t,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig}getBasicProperties(t,o){var l;var i=this;this.setDesignViewModelField(t);const a=this.formSchemaUtils.getFormMetadataBasicInfo(),r=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:i.designViewModelField?gt.getEditorTypesByMDataType((l=i.designViewModelField.type)==null?void 0:l.name):gt.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:t,formBasicInfo:a},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:r}}},setPropertyRelates(s,f){if(s)switch(s&&s.propertyID){case"type":{i.changeControlType(t,s,o);break}case"label":{s.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(t){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(t){return this.getComponentConfig(t)}changeControlType(t,o,i){var d,p,c,u;const a=o.propertyValue,r=i&&i.parent&&i.parent.schema;if(!r)return;const l=r.contents.findIndex(_=>_.id===t.id),s=r.contents[l];let f;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),f=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),f||(f=Tt.getSchemaByType("form-group")||{},f.editor=Tt.getSchemaByType(a)||{},delete f.editor.id,delete f.editor.binding,delete f.editor.appearance),Object.assign(f,{id:s.id,appearance:s.appearance,size:s.size,label:s.label,binding:s.binding,visible:s.visible}),Object.assign(f.editor,{isTextArea:f.isTextArea&&s.isTextArea,placeholder:(d=s.editor)==null?void 0:d.placeholder,holdPlace:(p=s.editor)==null?void 0:p.holdPlace,readonly:(c=s.editor)==null?void 0:c.readonly,require:(u=s.editor)==null?void 0:u.require}),r.contents.splice(l,1),r.contents.splice(l,0,f),i.schema=Object.assign(s,f),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(_=>_.classList.remove("dgComponentSelected")),Ft.value++}getComponentConfig(t,o={},i={}){const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},o),r=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},i);return{...a,properties:{...r}}}}function pa(e,t,o,i,a,r){const l=n.ref(!1),s=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:f}=r;function d(_){l.value=_}n.watch(a,()=>{d(!!a.value)});function p(_){const m=!e.readonly&&!e.disable&&e.editable,y=!e.editable;_.stopPropagation(),(m||y)&&(f("",!1),d(!l.value),t.emit("clear"))}function c(_){if(s.value){if(!o.value){d(!1);return}!e.disable&&!e.readonly&&d(!0)}}function u(_){s.value&&d(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:p,onMouseEnterTextBox:c,onMouseLeaveTextBox:u}}function ma(e,t,o,i,a){const r=n.computed(()=>e.popupOnInput),l=n.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=a,f=n.computed(()=>e.enableTitle?o.value:""),d=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=n.computed(()=>e.readonly||!e.editable),c=n.ref(!1),u=n.computed(()=>!e.disable&&c.value),_=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),m=n.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":u.value}));function y(w,k=!0){o.value!==w&&(o.value=w,k&&t.emit("change",w),t.emit("update:modelValue",w))}function b(w){s.value=!1,y(w,!0)}n.watch(()=>e.modelValue,w=>{o.value=w});function S(w){c.value=!1,t.emit("blur",w),w.stopPropagation()}function C(w){t.emit("click",w)}function g(w){e.disable||(c.value=!0,p.value||(t.emit("focus",w),l.value&&!s.value&&a.popup()))}function F(w){t.emit("input",w.target.value);const k=w.target.value;i.value=k,o.value!==k&&y(k,!0),r.value&&!s.value&&a.popup()}function x(w){w.target.tagName!=="INPUT"&&w.preventDefault(),w.stopPropagation()}function h(w){t.emit("keydown",w)}function V(w){w.key==="Enter"&&(r.value||l.value)&&a.hidePopup(),t.emit("keyup",w)}function v(w){const k=w.target.value;w.stopPropagation(),y(k)}return{hasFocusedTextBox:u,isTextBoxReadonly:p,textBoxClass:_,textBoxPlaceholder:d,textBoxTitle:f,inputGroupClass:m,changeTextBoxValue:y,commitValue:b,onBlurTextBox:S,onClickTextBox:C,onFocusTextBox:g,onInput:F,onKeyDownTextBox:h,onKeyUpTextBox:V,onMouseDownTextBox:x,onTextBoxValueChange:v}}function ga(e,t,o){const i=n.ref(),{isTextBoxReadonly:a,textBoxClass:r,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:f,onClickTextBox:d,onFocusTextBox:p,onInput:c,onKeyDownTextBox:u,onKeyUpTextBox:_,onMouseDownTextBox:m,onTextBoxValueChange:y}=o;return n.onMounted(()=>{var b,S;e.selectOnCreated&&((b=i.value)==null||b.select()),e.focusOnCreated&&((S=i.value)==null||S.focus())}),()=>n.createVNode("input",{ref:i,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:r.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:t.value,onBlur:f,onChange:y,onClick:d,onFocus:p,onInput:c,onKeydown:u,onKeyup:_,onMousedown:m},null)}function ha(e,t,o){const i=n.ref(e.separator),{changeTextBoxValue:a}=o,r=n.computed(()=>t.value?t.value.split(i.value).map(s=>({name:s,selectable:!0})):[]);function l(s){a(s.map(f=>f.name).join(i.value),!0)}return()=>n.createVNode(on,{id:`${e.id}-tag-editor`,class:"form-control",data:r.value,showClose:!0,showInput:!0,onChange:l},null)}function ya(e,t,o,i){const{buttonGroupClass:a,onClickButton:r,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:f,showClearButton:d,onClearValue:p}=i,c=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:a.value},[f.value&&n.withDirectives(n.createVNode("span",{class:"input-group-text input-group-clear",onClick:p},[n.createVNode("i",{class:"f-icon modal_close"},null)]),[[n.vShow,d.value]]),t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:r,onMouseenter:l,onMouseleave:s},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:c,onClick:r,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:c}}function va(e,t,o){const i=n.ref(e.popupMinWidth),{hidePopup:a,popoverRef:r}=o;return()=>n.createVNode(zo,{id:`${e.id}-popover`,ref:r,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:a},{default:()=>{var l,s;return[(s=(l=t.slots).default)==null?void 0:s.call(l)]}})}const Ze=n.defineComponent({name:"FButtonEdit",props:Mt,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const o=n.ref(),i=n.ref(e.customClass),a=n.ref(e.modelValue),r=gn(e,t,o,a),{shouldPopupContent:l,hidePopup:s,togglePopup:f}=r,d=mn(e,t,o,r,a),p=n.ref(""),c=ma(e,t,a,p,r),{hasFocusedTextBox:u,commitValue:_,inputGroupClass:m}=c,y=pa(e,t,a,u,p,c),{onMouseEnterTextBox:b,onMouseLeaveTextBox:S}=y,C=n.computed(()=>{const w={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((k,I)=>(k[I]=!0,k),w),w});function g(){return e.multiSelect&&e.inputType==="tag"?ha(e,a,c):ga(e,a,c)}let F=g();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{F=g()});const{renderButtonGroup:x,buttonHandleElement:h}=ya(e,t,d,y),V=va(e,t,r),v={commitValue:_,elementRef:o,hidePopup:s,shouldPopupContent:l,togglePopup:f,openDialog:()=>{h.value&&e.buttonBehavior==="Modal"&&h.value.click()},getModal:()=>{var w;return e.buttonBehavior==="Modal"?(w=d.modalRef.value)==null?void 0:w.value:null}};return n.onMounted(()=>{o.value.componentInstance=v,window.onresize=()=>{document.body.click()}}),t.expose(v),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:C.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:m.value,onMouseenter:b,onMouseleave:S},[F(),x()])]),l.value&&V()])}}),ba={$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:{}},Ca=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Rt=Symbol("Field_Selector Component Repository Service Token");Ie({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:Ca},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}},ba);function wa(e,t,o){return!t||!t.length?{columns:[]}:(t.forEach(i=>{i.title=i.caption?i.caption:i.title,i.field=i.binding?i.binding.path:i.field}),{columns:t})}const Cn=new Map([["appearance",Ge],["column","columnOption"],["fields",wa]]);function Sa(e,t,o){var c;const i=o.parentComponentInstance,a=i.schema.type,r=String(((c=i.schema.appearance)==null?void 0:c.class)||"").split(" "),l=a==="section"||a==="tab-page",s=r.includes("f-page-content-nav"),f=r.includes("f-page-main"),d=e.getSchemaByType("component");d.id=`${t.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+=f?"f-struct-data-grid f-struct-wrapper":"",d.appearance={class:p},d.contents=[t],d}function xa(e,t,o){const i=o.parentComponentInstance,a=String(i.schema.appearance.class||"").split(" "),r=a.includes("f-page-content-nav"),l=a.includes("f-page-main"),s=e.getSchemaByType("section");s.id=`${t.id}-section`;let f="";return f+=r?"f-section-in-nav ":"",f+=l?"f-section-in-managelist ":"",f+="f-section-grid",s.appearance={class:f},s.contents=[t],s}function _a(e,t,o){const i=e.getSchemaByType("content-container");return i.id=`${t.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[t],i}function wn(e,t,o){const a=o.parentComponentInstance.schema.type,r=a==="section"||a==="tab-page";t.appearance={class:"f-component-grid"};const s=(r?_a:xa)(e,t,o);return Sa(e,s,o)}const Sn={$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}},Fa=Ie(Et,Sn,Cn,wn),Va=Ji(),xn=Object.assign({},Et,{componentId:{type:String,default:""}}),Na=Ie(xn,Sn,Cn,wn);var Me=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Me||{}),We=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(We||{}),et=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(et||{}),Pe=(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))(Pe||{}),Lt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(Lt||{});function ka(){function e(){return n.createVNode("div",{class:"fv-grid-disable"},null)}return{renderDisableMask:e}}function Ta(e,t,o,i,a){const{columnContext:r}=t,{conditions:l,clearCondition:s,removeCondition:f}=i,d=n.ref([]);function p(){const m=[];Array.from(l.value).forEach((y,b)=>{const S={id:y.id,code:y.fieldCode,labelCode:y.fieldCode,name:y.fieldName,editor:{type:y.value.editorType}};m.push(S)}),d.value=m}n.watch(l,()=>p());function c(m){f(`field_filter_${m}`);const y=r.value.primaryHeaderColumns.find(b=>b.field===m);if(y){y.filterValue=null;let b=y.status;b=(b&Pe.filtered)===Pe.filtered?b^Pe.filtered:b,y.status=b}o.refresh(),a.reCalculateVisualDataRows()}function u(){s(),r.value.primaryHeaderColumns.forEach(m=>{m.filterValue=null;let y=m.status;y=(y&Pe.filtered)===Pe.filtered?y^Pe.filtered:y,m.status=y}),o.refresh(),a.reCalculateVisualDataRows()}function _(){return n.createVNode("div",{class:"fv-grid-filter-panel"},[n.createVNode(an.FFilterBar,{data:l.value,fields:d.value,mode:"display-only","show-reset":!0,onRemove:c,onReset:u},null)])}return{renderFilterPanel:_}}function Ia(e,t,o,i,a){const{dropOnGroupPanel:r,groupColumnItems:l}=o,{groupFields:s,shouldGroupingData:f}=i,d=n.ref();function p(_){s.value=_.map(m=>m.value),t.updateDataView(),a.reCalculateVisualDataRows()}function c(_){_.preventDefault()}function u(){return f.value&&n.createVNode("div",{class:"fv-grid-group-panel",onDrop:r,onDragover:c},[l.value&&n.createVNode(n.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:u}}function At(e,t){var _;const o=String(Date.now()),i=((_=e.rowOption)==null?void 0:_.height)||28,a=n.ref(t.value.primaryColumnsWidth);function r(m){const y={};return m.reduce((b,S,C)=>{const g=C<m.length-1?m[C+1]:null;return C===0&&(b[S.field]={left:0}),S.actualWidth!==void 0&&(b[S.field].width=S.actualWidth),g&&(b[g.field]={left:b[S.field].left+(S.actualWidth||0)}),b},y),y}function l(m,y,b){const S=i*(b+1),g=y[m.field].left-S+(y[m.field].width||0),F=m.parent.height?`${m.parent.height}px`:"";return{left:`${S}px`,width:`${g}px`,height:`${F}`}}function s(m,y,b){return{right:"0px",height:`${m.parent.height?`${m.parent.height}px`:""}`}}function f(m,y){const b=m.parent.height?`${m.parent.height}px`:"";return{left:`${y[m.field].left}px`,height:`${b}`,width:isNaN(Number(y[m.field].width))?"100%":`${y[m.field].width}px`}}function d(m,y,b){const C=(y.spanned||[]).reduce((F,x)=>F+(x.parent.height||0),0)+(m.height||0);return{top:`${m.top}px`,left:`${b[y.field].left}px`,width:`${b[y.field].width}px`,height:`${C}px`,padding:`calc(${C/2}px - 1rem) 0`}}function p(m,y){return`${o}_${m.type}_r_${m.index}_c_${y}_${m.refreshKey||""}`}function c(m){return`${o}_${m.type}_r_${m.index}_${m.refreshKey||""}`}function u(m){const y=m.height?`${m.height}px`:"";return{top:`${m.top}px`,width:isNaN(a.value)?"100%":`${a.value}px`,height:`${y}`}}return n.watch(t,()=>{a.value=t.value.primaryColumnsWidth}),{calculateCellPositionInRow:r,cellKey:p,cellPosition:f,groupCellPosition:l,rowKey:c,rowPosition:u,rowSpanCellPosition:d,summaryCellPosition:s}}function Oa(e,t,o){const{hasChildrenField:i}=o,a=n.ref("#9399a0"),r=n.ref(28);function l(){return[].concat(...t.value.filter(u=>u.raw.__fv_descendant_index__.length!==0).map(u=>[...u.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((u,_)=>Number(u)-Number(_))}function s(p){const c=new Array(t.value.length).fill(0);if(e.showLines){const u=l();t.value.forEach((_,m)=>{const y=u.includes(m),b=_.raw[i.value];c[m]=`repeating-linear-gradient(90deg, ${a.value} 0 1px, transparent 0px 2px) ${b?"-10px":"0px"} ${r.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${a.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${y?"50%":"100%"} no-repeat`}),c[0]=""}return c[p]}function f(p,c,u){return u[p].parents.set(p,!0).forEach(m=>{u[m].childsLength=u[m].childWithLines.filter(y=>c[y].visible).length}),c}function d(p){const _=p.raw.__fv_parent_index__===void 0||p.raw.__fv_parent_index__===-1?0:8,m=0,y=p.raw[i.value],b=p.visible?{left:`${p.layer*10+p.layer*_+m}px`,background:s(p.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return y||(b.paddingLeft="2rem"),b}return{hierarchyCellContentStyle:d,handleCollapsedPaddingBottom:f}}function $a(e,t,o){const i=n.ref(e.iconField);function a(r,l){if(i.value)return r.raw[e.iconField];let s="";return r.raw[o.value]!==!0?s=t.value.leafnodes:s=r.collapse?t.value.fold:t.value.unfold,s}return{treeNodeIconsClass:a}}function Ht(){function e(o,i){const a=o.pre;if(a){const r=o.visible?(a.__fv_data_position__||0)+(a.__fv_data_height__||0):a.__fv_data_position__;o.top=r,i.__fv_data_position__=r}else o.top=0,i.__fv_data_position__=0}function t(o,i,a){if(o){const r=i.parent;i.cellHeight!==o.offsetHeight&&(i.cellHeight=o.offsetHeight),i.cellHeight&&i.cellHeight>(r.height||0)&&(r.height=i.cellHeight,a.__fv_data_height__=r.height),e(r,a)}}return{updateRowPosition:e,updateVisualInfomation:t}}function Ba(e,t,o,i,a,r){const{dataView:l,fold:s,hasRealChildren:f,unFold:d}=i,{collapseField:p,hasChildrenField:c}=a,{updateRowPosition:u}=Ht();function _(b,S){const C=S[b].layer;let g=b+1;for(;g<S.length&&S[g].layer>C;)g++;return g-1}function m(b,S){o.value[b].collapse=!o.value[b].collapse,o.value[b].raw[p.value]=o.value[b].collapse,o.value[b].raw[c.value]=f(o.value[b].raw);const C=o.value[b].collapse;let g=!1,F=b;for(;F<o.value.length;){const h=o.value[F];if((typeof h.raw.__fv_parent_index__=="number"?Number(h.raw.__fv_parent_index__):-1)>S)h.visible=!C,h.raw.__fv_visible__=h.visible,h.collapse&&(F=_(F,o.value)),g=!0;else if(g){F++;break}F++}let x=b;for(;x<o.value.length;){const h=o.value[x];u(h,h.raw),x++}}function y(b){if(b.raw[c.value]){const C=typeof b.raw.__fv_parent_index__=="number"?Number(b.raw.__fv_parent_index__):-1;m(Number(b.raw.__fv_index__),C)}}return{toggleTreeNode:y}}function Ma(e,t,o,i,a,r,l,s,f,d,p){const{onClickCell:c}=r,{gridRowClass:u,onClickRow:_,onMouseoverRow:m,onMouseoutRow:y}=s,{clearSelection:b,enableMultiSelect:S,select:C,unSelect:g,isSelectingHirarchyItem:F,multiSelectOnClickRow:x,multiSelectOnlyOnCheck:h,selectItem:V,toggleSelectItem:v}=f;n.ref(e.cellHeight);const w=n.ref(e.treeNodeIconsData||{}),{hasChildrenField:k,shouldShowCheckBox:I,shouldShowIcon:O}=l,{toggleTreeNode:T}=Ba(e,t,i,a,l),{toggleSelectHierarchyItem:N}=d,{cellKey:$,cellPosition:B,rowKey:j,rowPosition:P}=At(e,o),{hierarchyCellContentStyle:M}=Oa(e,i,l),{treeNodeIconsClass:D}=$a(e,w,k);function H(G,q){const le=G.raw[k.value];return{"fv-tree-node-toggle":le&&G.collapse,"fv-tree-node-toggle-minus":le&&!G.collapse}}function ne(G,q){G.stopPropagation(),T(q)}function re(G,q){return n.createVNode("div",{class:H(G),onClick:le=>ne(le,G)},null)}function be(G,q){return O.value&&n.createVNode("div",{id:"treeNodeIcons",class:D(G,q)},null)}function $e(G){S.value?(G.checked?C(G):g(G),N(G)):V(G)}function _e(G,q){return I.value&&n.createVNode(ft.FCheckBox,{id:"checkbox_for_"+$(G,q.index),indeterminate:G.indeterminate,checked:G.checked,"onUpdate:checked":le=>G.checked=le,onChange:()=>$e(G)},null)}function ve(G,q){return n.createVNode("span",{title:q.data},[q.mode===Me.editing?q.getEditor(q):q.formatter?q.formatter(q,G):q.data!=null?q.data.toString():q.data])}function Se(G,q,le){return n.createVNode("div",{ref:q.setRef,key:$(G,q.index),class:"fv-grid-hierarchy-cell",style:B(q,le)},[n.createVNode("div",{style:M(G)},[re(G),be(G,q),_e(G,q),ve(G,q)])])}function ke(G,q,le){return n.createVNode("div",{ref:q.setRef,key:$(G,q.index),class:"fv-grid-cell",style:B(q,le),onClick:Q=>c(Q,q)},[q.mode===Me.editing?q.getEditor(q):q.formatter?q.formatter(q,G):q.data!=null?q.data.toString():q.data])}function ie(G,q){return q==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===G.field||q==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===G.field}function fe(G,q,le="primary"){return n.createVNode("div",{ref:G.setRef,key:j(G),class:u(G),style:P(G),onMouseover:Q=>m(Q,G),onMouseout:Q=>y(Q,G),onClick:Q=>_(Q,G)},[Object.values(G.data).filter(Q=>q[Q.field]&&Q.rowSpan===1).map((Q,me)=>ie(Q,le)?Se(G,Q,q):ke(G,Q,q))])}return{renderDataRow:fe}}function _n(e,t,o){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:a,shouldShowHorizontalScrollbar:r}=o;function l(){return r.value&&n.createVNode("div",{class:"fv-grid-horizontal-scroll"},[n.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:s=>a(s,t,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function ja(e,t,o,i,a){const{currentPage:r,pageSize:l,pageList:s,total:f,showPageIndex:d,showPageList:p,mode:c}=a;function u(y){o.navigatePageTo(y),i.resetScroll(),t.emit("pageIndexChanged",y)}function _(y){o.changePageSizeTo(y),i.resetScroll(),t.emit("pageSizeChanged",y)}n.onMounted(()=>{c.value==="server"&&u(1)});function m(){return n.createVNode("div",{class:"fv-datagrid-pagination"},[n.createVNode(rn,{mode:"default",currentPage:r.value,"onUpdate:currentPage":y=>r.value=y,pageSize:l.value,"onUpdate:pageSize":y=>l.value=y,showPageList:p.value,showPageNumbers:d.value,totalItems:f.value,pageList:s.value,onPageIndexChanged:u,onPageSizeChanged:_},null)])}return{renderDataGridPagination:m}}function Fn(e,t,o,i,a){const{isSelectingHirarchyItem:r,multiSelectOnClickRow:l,multiSelectOnlyOnCheck:s,selectItem:f,toggleSelectItem:d}=o,{onMouseoverRow:p,sidebarRowClass:c}=t,{showRowNumer:u,showSidebarCheckBox:_,sidebarCellPosition:m,rowKey:y,cellKey:b}=i,{gridSideStyle:S}=a;function C(v){v.stopPropagation()}function g(v){return n.createVNode("div",{class:"d-inline-flex "},[n.createVNode("div",{class:"custom-control custom-checkbox f-checkradio-single",style:"margin:0;padding-left:0.5rem"},[n.withDirectives(n.createVNode("input",{id:b(v),title:b(v),type:"checkbox","onUpdate:modelValue":w=>v.checked=w,class:"custom-control-input"},null),[[n.vModelCheckbox,v.checked]]),n.createVNode("label",{class:"custom-control-label",for:b(v),onClick:C},null)])])}function F(v){return n.createVNode("div",{class:"fv-grid-sidebar-row-number justify-content-center",style:"padding:0",onMouseover:w=>p(w,v)},[n.createVNode("div",{title:v.dataIndex,class:{"text-center":!0,"text-truncate":e.rowNumber.showEllipsis,"w-100":e.rowNumber.showEllipsis}},[v.dataIndex])])}function x(v,w,k){r.value?l.value?d(k):f(k):s.value||l.value?d(k):f(k)}function h(v){return(_.value||u.value)&&v.value.map(w=>n.createVNode("div",{key:y(w),class:c(w),style:m(w),onClick:k=>x(k,v,w)},[_.value&&!e.hierarchy&&g(w),u.value&&F(w)]))}function V(v){return n.createVNode("div",{class:"fv-grid-content-side"},[n.createVNode("div",{class:"fv-grid-side",style:S.value},[h(v)])])}return{renderDataGridSidebar:V}}function Pa(e,t,o){const{columnContext:i}=o,a=n.ref(e.summary),r=n.computed(()=>{const s=a.value;return s&&s.enable&&s.groupFields&&s.groupFields.length>0});function l(){return r.value&&n.createVNode("div",{class:"fv-datagrid-summary"},[n.createVNode("div",{class:"fv-datagird-summary-panel"},[n.createVNode("span",{class:"fv-datagrid-summary-title"},[n.createTextVNode("当页合计")]),n.createVNode("div",{class:"fv-datagrid-summary-content"},[i.value.summaryColumns.map(s=>n.createVNode("div",{class:"fv-datagrid-summary-field"},[n.createVNode("span",{class:"fv-datagrid-summary-field-title"},[`${s.title}:`]),n.createVNode("span",{class:"fv-datagrid-summary-field-value"},[t.summaries.get(s.field)])]))])])])}return{renderDataGridSummery:l}}function Vn(e,t,o){const{verticalScrollThumbStyle:i,onMouseDownScrollThumb:a,shouldShowVirticalScrollbar:r}=o;function l(){return r.value&&n.createVNode("div",{class:"fv-grid-vertical-scroll"},[n.createVNode("div",{class:"fv-grid-vertical-scroll-thumb",style:i.value,onMousedown:s=>a(s,t,"vertical")},null)])}return{renderVerticalScrollbar:l}}function Da(){function e(i,a){switch(i.command){case"edit":case"remove":return a.status===We.initial;case"accept":case"cancel":return a.status===We.editing;default:return!i.hidden}}function t(i,a,r){switch(i.onClick(a,r.dataIndex,r),i.command){case"edit":r.status,We.editing;break;case"accept":case"cancel":r.status,We.initial;break}}function o(i,a){return n.createVNode("div",null,[i.commands&&i.commands.map(r=>e(r,a)&&n.createVNode(n.resolveComponent("f-button"),{class:"ml-2",type:r.type,size:r.size||"small",onClick:l=>t(r,l,a)},{default:()=>[n.createTextVNode(" "),r.text,n.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function Ra(e){function t(){return n.createVNode("div",{class:"d-flex flex-column f-datagrid-norecords"},[n.createVNode("div",{class:"f-datagrid-norecords-content",style:"margin: 0;width: 100%;position: relative; top: 0"},[n.createTextVNode(" "),e.slots.empty&&e.slots.empty()||"暂无数据"])])}return{renderEmpty:t}}function Nn(e){const t=n.ref(e.minHeight),o=n.ref(e.minWidth),i=n.ref(e.height),a=n.ref(e.width),r=n.computed(()=>i.value<=0?0:Math.max(i.value,t.value)),l=n.computed(()=>a.value<=0?0:Math.max(a.value,o.value));return n.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([f,d,p,c])=>{t.value=Number(p),o.value=Number(c),i.value=Number(f),a.value=Number(d)}),{containerStyleObject:n.computed(()=>({height:r.value>0?`${r.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":""}))}}function kn(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=n.ref(o);function a(){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 r=n.ref(e.summary),l=n.computed(()=>{const g=r.value;return(g==null?void 0:g.groupFields)||[]});function s(){i.value.rightColumns.forEach(x=>{x.showSetting=!1}),i.value.primaryColumns.forEach(x=>{x.showSetting=!1});const g=i.value.rightColumns.filter(x=>x.visible),F=i.value.primaryColumns.filter(x=>x.visible);g.length>0?g[g.length-1].showSetting=!0:F.length>0&&(F[F.length-1].showSetting=!0)}function f(g){a();const F=new Map;return l.value&&l.value.reduce((x,h)=>(x.set(h,!0),x),F),g.reduce((x,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),F.has(h.field)&&i.value.summaryColumns.push(h),x),i),s(),i}f(e.columns);const d=n.computed(()=>i.value.leftColumns.length>0),p=n.computed(()=>i.value.rightColumns.length>0);function c(g,F){return F.sortable&&F.sort&&F.sort!=="none"&&g.push(F),g}function u(g,F){return g.sortOrder=g.sortOrder||0,F.sortOrder=F.sortOrder||0,g.sortOrder===F.sortOrder?0:g.sortOrder<F.sortOrder?-1:1}function _(g,F){return g.sortOrder=g.sortOrder||0,F.sortOrder=F.sortOrder||0,g.sortOrder===F.sortOrder?0:g.sortOrder<F.sortOrder?1:-1}function m(g,F){return F.filterable&&g.push(F),g}function y(){const g=[];return i.value.leftColumns.reduce(m,g),i.value.primaryColumns.reduce(m,g),i.value.rightColumns.reduce(m,g),g}function b(){const g=[];i.value.leftColumns.reduce(c,g),i.value.primaryColumns.reduce(c,g),i.value.rightColumns.reduce(c,g);const F=Math.max(...g.map(x=>x.sortOrder||0));return g.sort(_).map(x=>{const h=x.sortOrder||F+1;return x.sortOrder=h,x}).sort(u).map((x,h)=>{const V=h+1;return x.sortOrder=V,x})}function S(g,F,x){const h=g.map(V=>{const v=x.getSorterByColumn(V),w=V.sort==="asc",k=V.sort==="desc",I=w?v.ascend:k?v.decend:void 0;return{field:V.field,compare:I}});F.setSorters(h)}function C(g,F){const x=b();S(x,g,F)}return{applyColumnSorter:C,collectionFilterableColumns:y,applySortableColumns:S,collectionSortableColumns:b,columnContext:i,hasLeftFixedColumn:d,hasRightFixedColumn:p,updateColumnRenderContext:f,updateColumnSettingIcon:s}}const Ea=[{name:"是",value:!0},{name:"否",value:!1}];function La(e){return e.filter=e.filter||function(t){return String(e.filterValue).split(",").includes(String(t[e.field]))},n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-checkbox-group"),{modelValue:e.filterValue,"onUpdate:modelValue":t=>e.filterValue=t,"enum-data":Ea},null)])}const Aa=n.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function Ha(e){const t=n.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},n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode("div",{style:"display:flex;margin-bottom:6px;"},[n.createVNode("label",{style:"margin-right:8px"},[n.createTextVNode("按区间筛选")]),n.createVNode(n.resolveComponent("f-switch"),{modelValue:t.value,"onUpdate:modelValue":o=>t.value=o,size:"small"},null)]),n.createVNode(n.resolveComponent("f-date-picker"),{modelValue:e.filterValue,"onUpdate:modelValue":o=>e.filterValue=o},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px",data:Aa.value,selectable:!0,"tag-style":"capsule"},null)])}function Ga(e){e.filter=e.filter||function(o){const i=Number.parseFloat(e.filterValue),a=Number.parseFloat(o[e.field]);return isNaN(i)?isNaN(a):i===a};function t(o){e.filterValue=o}return n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-number-spinner"),{"can-null":!0,precision:"2",value:e.filterValue,onValueChange:t},null)])}function Wa(e,t,o,i,a,r){e.filterHistory=e.filterHistory||a.getFilterHistory(e),e.filter=e.filter||function(u){return(u[e.field]||"").startsWith(e.filterValue)};function l(u,_){a.removeFilterHistory(e,u.name),e.filterHistory=a.getFilterHistory(e)}function s(u){e.filterValue=u.name}function f(u){e.filterHistory=u}const d=i.rawView.value.reduce((u,_,m)=>(u.push(_[e.field]),u),[]),c=[...new Set(d)].map((u,_)=>({id:_,name:u}));return n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode(n.resolveComponent("f-search-box"),{modelValue:e.filterValue,"onUpdate:modelValue":u=>e.filterValue=u,"popup-host":t.value,"popup-right-boundary":o.value,"popup-offset-x":r.offsetX,"recommended-data":c},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px","tag-type":"default",data:e.filterHistory,"show-close":!0,selectable:!0,onRemove:l,onSelectionChange:s,onChange:f},null)])}function za(e,t,o,i,a,r){e.filter=e.filter||function(_){return String(e.filterValue).split(",").includes(String(_[e.field]))};const l=",",s=i.rawView.value.reduce((_,m,y)=>(_.push(m[e.field]),_),[]),d=[...new Set(s)].map((_,m)=>({id:m,name:_}));function p(_){return(_==null?void 0:_.split(l))||[]}function c(_){return _.map(y=>y.name).join(l)}function u(_){e.filterValue=c(_)}return n.createVNode(n.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:_=>u(_)},{default:()=>[n.createTextVNode(" ")]})}function qa(e){n.ref("请输入关键词"),n.ref('<i class="f-icon f-icon-search"></i>');const t=[{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 n.createVNode(n.resolveComponent("f-list-view"),{data:t,"multi-select":!0,view:"SingleView",size:"Small"},{default:()=>[n.createTextVNode(" ")]})}function Tn(e,t,o,i,a){const r=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",La],["date-filter",Ha],["enum-filter",za],["list-filter",qa],["numeric-filter",Ga],["text-filter",Wa]]);function s(f){var u,_;const d=((u=f.column)==null?void 0:u.dataType)||"string",p=((_=f.column)==null?void 0:_.filter)||r.get(d)||"text-editor",c=l.get(p);if(c)return c(f,e,t,o,i,a)}return{getFilterEditor:s}}function In(e){const o=n.ref(e.commandOption.enable||!1),i=n.ref(e.commandOption.commands||[]);function a(r){if(o.value&&!(r.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};r.value.push(s)}}return{applyCommands:a}}function On(e,t,o,i,a,r,l){const{columnContext:s}=o,{getGridHeaderCells:f}=a,{groupFields:d}=r,p=n.ref(-1),c=n.ref(!1),u=n.computed(()=>d.value&&d.value.map(C=>{var g;return{name:((g=s.value.primaryColumnsMap.get(C))==null?void 0:g.title)||C,value:C}}));function _(C,g,F){var x,h,V;if(C.stopPropagation(),g){const v=`${(x=g.column)==null?void 0:x.title}:${(h=g.column)==null?void 0:h.field}`;(V=C.dataTransfer)==null||V.setData("Text",v),setTimeout(()=>{p.value=F,c.value=!0})}}function m(C,g){if(C.preventDefault(),p.value!==g){const{primaryColumns:F}=s.value,x=F[p.value],h=F;h.splice(p.value,1),h.splice(g,0,x),s.value.primaryHeaderColumns=Array.from(f(h).values()),p.value=g}}function y(C,g){C.preventDefault(),C.dataTransfer&&(C.dataTransfer.dropEffect="move")}function b(C,g){c.value=!1,i.updateDataView(),l.reCalculateVisualDataRows()}function S(C){var F;C.preventDefault(),C.stopPropagation();const g=(F=C.dataTransfer)==null?void 0:F.getData("Text");if(g){const x=g.split(":");x[0];const h=x[1];r.groupFields.value.push(h)}i.updateDataView(),l.reCalculateVisualDataRows()}return{dragstart:_,dragenter:m,dragover:y,dragend:b,dropOnGroupPanel:S,isDragging:c,groupColumnItems:u}}function $n(e,t,o,i,a){const{getGridHeaderCells:r}=a,l=120,s=50,f=n.computed(()=>{var v;return((v=e.rowNumber)==null?void 0:v.enable)||!1}),d=n.computed(()=>{var v,w;return((v=e.selection)==null?void 0:v.multiSelect)||((w=e.selection)==null?void 0:w.showCheckbox)||!1}),p=n.computed(()=>{var v;return 0+(f.value?((v=e.rowNumber)==null?void 0:v.width)||32:0)+(d.value?s:0)}),c=n.computed(()=>{var v;return(v=e.columnOption)==null?void 0:v.fitColumns}),u=n.computed(()=>{var v;return c.value&&((v=e.columnOption)==null?void 0:v.fitMode)||"average"});function _(v,w,k){const I=parseInt(v.width,10)/100;return k*I}function m(v,w,k){return typeof v.width=="string"?_(v,w,k):v.width||l}function y(v,w){const k=[],I=[];let O=0;v.value.primaryColumns.filter($=>$.visible).forEach($=>{typeof $.width=="string"?I.push($):($.width=$.width||l,O+=$.width,k.push($))});const T=w*(k.length/v.value.primaryColumns.filter($=>$.visible).length);k.forEach($=>{const B=T*($.width/O);$.actualWidth=B,v.value.primaryColumnsWidth+=$.actualWidth});const N=w-T;I.forEach($=>{const B=_($,v.value,N);$.actualWidth=B,v.value.primaryColumnsWidth+=$.actualWidth})}function b(v,w){const k=w/(v.value.primaryColumns.filter(I=>I.visible).length||1);v.value.primaryColumns.filter(I=>I.visible).forEach(I=>{I.actualWidth=k,v.value.primaryColumnsWidth+=I.actualWidth})}function S(v,w){const k=[],I=[],O=new WeakMap;let T=0,N=0;if(v.value.primaryColumns.filter(B=>B.visible).forEach(B=>{if(typeof B.width=="string"){const j=_(B,v.value,w);O.set(B,j),T+=j,I.push(B)}else B.width=B.width||l,N+=B.width,k.push(B)}),w-T>N){const B=w-T;I.forEach(j=>{j.actualWidth=O.get(j)||l,v.value.primaryColumnsWidth+=j.actualWidth}),k.forEach(j=>{j.actualWidth=B*(j.width/N),v.value.primaryColumnsWidth+=j.actualWidth})}else y(v,w)}function C(v,w){v.value.primaryColumns.filter(k=>k.visible).forEach(k=>{k.actualWidth=m(k,v.value,w),v.value.primaryColumnsWidth+=k.actualWidth})}const g={average:b,expand:S,none:C,percentage:y};function F(v){v.value.leftHeaderColumns=Array.from(r(v.value.leftColumns.filter(w=>w.visible)).values()),v.value.primaryHeaderColumns=Array.from(r(v.value.primaryColumns.filter(w=>w.visible)).values()),v.value.rightHeaderColumns=Array.from(r(v.value.rightColumns.filter(w=>w.visible)).values())}function x(v){v.value.leftColumnsWidth=0,v.value.primaryColumnsWidth=0,v.value.rightColumnsWidth=0,v.value.leftColumns.filter(w=>w.visible).forEach(w=>{v.value.leftColumnsWidth+=w.actualWidth||0}),v.value.primaryColumns.filter(w=>w.visible).forEach(w=>{v.value.primaryColumnsWidth+=w.actualWidth||0}),v.value.rightColumns.filter(w=>w.visible).forEach(w=>{v.value.rightColumnsWidth+=w.actualWidth||0}),v.value=Object.assign({},v.value)}function h(v,w,k){var j;let I=0;const O=v.value.primaryColumns,T=v.value.rightColumns;v.value.rightColumns.filter(P=>P.visible).forEach(P=>{P.actualWidth=m(P,v.value,w),I+=P.actualWidth});const N=k-I,$=g[u.value];if($&&$(v,N),v.value.primaryColumnsWidth+I<=k)return v.value.primaryColumns=[...O,...T],v.value.primaryColumnsWidth+=I,v.value.rightColumns=[],v.value.rightColumnsWidth=0,!0;const B=new Map;return B.set("primary",[]),B.set("right",[]),v.value.primaryColumns.reduce((P,M)=>{var D,H;return M.fixed==="right"?(D=P.get("right"))==null||D.push(M):(H=P.get("primary"))==null||H.push(M),P},B),(j=B.get("right"))!=null&&j.length&&(v.value.primaryColumns=[...B.get("primary")||[]],v.value.rightColumns=[...B.get("right")||[]]),v.value.primaryColumnsWidth=0,v.value.rightColumnsWidth=0,!1}function V(){if(o.value){t.value.leftColumnsWidth=0,t.value.primaryColumnsWidth=0,t.value.rightColumnsWidth=0;const v=o.value.clientWidth-p.value;t.value.leftColumns.filter(k=>k.visible).forEach(k=>{k.actualWidth=m(k,t.value,v),t.value.leftColumnsWidth+=k.actualWidth});const w=v-t.value.leftColumnsWidth;if(h(t,v,w))i.value=w;else{t.value.rightColumns.filter(O=>O.visible).forEach(O=>{O.actualWidth=m(O,t.value,v),t.value.rightColumnsWidth+=O.actualWidth});const k=v-t.value.leftColumnsWidth-t.value.rightColumnsWidth,I=g[u.value];I&&I(t,k),i.value=k}F(t),t.value=Object.assign({},t.value)}}return n.watch(()=>{var v;return(v=e.columnOption)==null?void 0:v.fitColumns},(v,w)=>{v!==w&&v&&V()}),n.watch(u,(v,w)=>{v!==w&&c.value&&V()}),{calculateColumnHeaders:F,calculateColumnsSize:V,calculateColumnsWidth:x}}const Bn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class Ua{constructor(t={value:[]}){z(this,"editorType","check-box");z(this,"value");z(this,"valueType","boolean");this.value=t.value}clear(){this.value=[]}setValue(t){this.value=t}getValue(){return this.value}isEmpty(){return this.value.length===0}}class Ka{constructor(t={textValue:"",value:"",valueField:""}){z(this,"editorType","combo-lookup");z(this,"textValue");z(this,"value");z(this,"valueField");z(this,"valueType","text");this.textValue=t.textValue,this.value=t.value,this.valueField=t.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.split(",").map(a=>this.getPropValue(a,Re.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,Re.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class Xa{constructor(t={value:""}){z(this,"editorType","date-picker");z(this,"value");z(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}isEmpty(){return!this.value}clear(){this.value=void 0}}class Mn{constructor(t={begin:"",end:""}){z(this,"editorType","date-range");z(this,"begin","");z(this,"end","");z(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class Ya{constructor(t={value:""}){z(this,"editorType","datetime-picker");z(this,"value");z(this,"valueType","datetime");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t.formatted}isEmpty(){return!this.value}}class Ja{constructor(t={value:"",dispalyText:""}){z(this,"editorType","combo-list");z(this,"value");z(this,"valueType","enum");z(this,"displayText");this.displayText=t.dispalyText,this.value=t.value}clear(){this.value="",this.displayText=""}getValue(){return this.displayText}setValue(t){this.displayText=t.dispalyText,this.value=t.value}isEmpty(){return!this.displayText}}class Qa{constructor(t={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=t.value,this.displayText=t.displayText,this.valueField=t.displayField,this.isInputText=t.isInputText}clear(){this.value=[],this.displayText="",this.valueField=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):""}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(a=>this.getPropValue(a,Re.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split(".")||[],o=this.value.map(i=>this.getPropValue(i,Re.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText}}class Za{constructor(t={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=t.value,this.valueField=t.valueField,this.textValue=t.textValue,this.isInputText=t.isInputText}clear(){this.value=[],this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(a=>this.getPropValue(a,o));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.map(i=>this.getPropValue(i,t));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.value.length}}class er{constructor(t={value:""}){z(this,"editorType","month-picker");z(this,"value");z(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}clear(){this.value=void 0}isEmpty(){return!this.value}}class tr{constructor(t={begin:"",end:""}){z(this,"editorType","month-range");z(this,"begin");z(this,"end");z(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class nr{constructor(t={begin:null,end:null}){z(this,"editorType","number-range");z(this,"begin");z(this,"end");z(this,"valueType","number");this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}setValue(t){this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}isEmpty(){return this.begin==null&&this.end==null}}class or{constructor(t={value:""}){z(this,"editorType","number-spinner");z(this,"value");z(this,"valueType","number");this.value=t.value==null?null:parseFloat(t.value)}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=isNaN(parseFloat(t))?null:t}isEmpty(){return this.value==null}}class ir{constructor(t={value:null}){z(this,"editorType","radio-group");z(this,"value");z(this,"valueType","enum");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}class jn{constructor(t={value:""}){z(this,"editorType","text");z(this,"value");z(this,"valueType","text");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}function Pn(){function e(t,o){switch(t){case"check-box":return new Ua(o);case"combo-list":return new Ja(o);case"combo-lookup":return new Ka(o);case"input-group":return new Qa(o);case"date-picker":return new Xa(o);case"date-range":return new Mn(o);case"datetime-picker":return new Ya(o);case"datetime-range":return new Mn(o);case"lookup":return new Za(o);case"month-picker":return new er(o);case"month-range":return new tr(o);case"number-range":return new nr(o);case"number-spinner":return new or(o);case"radio-group":return new ir(o);default:return new jn(o)}}return{createConditionValue:e}}function Dn(e,t){const o=n.ref(e.fields),i=n.ref([]),a=new Map,{createConditionValue:r}=Pn();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(u=>Object.assign({},u)).map(u=>(u.editor=l(u),u))}function f(p=!0){o.value.reduce((c,u)=>(p||(u.editor=l(u)),c.set(u.labelCode,u),c),a)}function d(p){return p.forEach(c=>{if(c&&typeof c.valueConfig=="object"){const u=a.get(c.fieldCode);c.value=r(u.editor.type,c.valueConfig.content)}}),p}return{convertToSingleControl:s,fields:o,fieldMap:a,fieldConditions:i,loadFieldConfigs:f,initialConditionValue:d}}function ar(e,t,o){const i=n.ref(null),a=n.ref(o),r=n.ref(0),l=n.computed(()=>d(r.value));function s(){a.value&&(i.value=new ResizeObserver(f(p=>{const c=p[0];r.value=c.contentRect.width})),i.value.observe(a.value))}function f(p,c){let u=null;return function(){const _=arguments;u||(u=setTimeout(()=>{u=null},500),p(..._))}}function d(p){let u="col-12";return p>250*6?u="col-2":p>250*4?u="col-3":p>250*3?u="col-4":p>250*2&&(u="col-6"),u}return n.watch([o],([p])=>{a.value=p,s()}),{conditionClass:l,resizeObserver:i}}const Rn=n.defineComponent({name:"FConditionFields",props:Bn,emits:["valueChange","blur","focus","click","input"],setup(e,t){const o=n.ref(),i=n.ref(e.key),a=n.ref(e.isControlInline),r=n.ref(e.conditions),l=Dn(e),{initialConditionValue:s,fieldMap:f,loadFieldConfigs:d}=l,p=ar(e,t,o),{conditionClass:c,resizeObserver:u}=p;d(!0),s(r.value),n.onBeforeUnmount(()=>{var S;(S=u.value)==null||S.unobserve(o.value)}),n.watch(()=>e.conditions,()=>{r.value=e.conditions});const _=n.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":a.value})),m=n.computed(()=>c.value);function y(S,C){t.emit("valueChange",S,C)}function b(){return r.value.map(S=>{var C;return n.createVNode(It.FDynamicFormGroup,{customClass:m.value,label:S.fieldName,editor:(C=f.get(S.fieldCode))==null?void 0:C.editor,modelValue:S.value.value,"onUpdate:modelValue":g=>S.value.value=g,onChange:g=>{y(g,S)}},null)})}return()=>n.createVNode("div",{class:_.value,key:i.value,ref:o},[b()])}}),Gt=new Map([["appearance",Ge]]);var En=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(En||{}),ht=(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))(ht||{});const rr="root-viewmodel";class lr{constructor(t,o){z(this,"formSchemaUtils");z(this,"controlCreatorUtils");z(this,"designViewModelUtils");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),a=this.createViewModeNode(t),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(a),r.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createFormComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getFormComponentClass()},formColumns:t.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(t){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:t.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:t.componentName});const i=this.resolver.getSchemaByType("response-form"),a=[];Object.assign(i,{id:t.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:a}),o.contents=[i];const{selectedFields:r}=t;return r==null||r.forEach(s=>{const f=Re.cloneDeep(s),d=this.resolveControlClassByFormColumns(t),p=this.controlCreatorUtils.setFormFieldProperty(f,"",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(t){let o="";switch(t.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(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:rr,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(a=>{let r="blur";const l=a.type.name;(l===ht.Enum||l===ht.Boolean)&&(r="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function sr(e,t,o,i){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 lr(e,i).createComponent(l)}else return t}Ie({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"]},Gt,sr,{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 Ln={$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"]},An={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"}};Ie(An,Ln,Gt,void 0);function cr(){function e(t){var a,r;if(!t)return!1;const o=((a=t.targetContainer)==null?void 0:a.componentInstance)&&t.targetContainer.componentInstance.value;if(!o)return!1;const i=(r=o.schema.appearance)==null?void 0:r.class;if(t.controlCategory==="input"||t.controlType==="form-group"){const l=o.schema.type,s=(l==="response-form"||l==="content-container")&&i&&i.includes("farris-form");if(o.schema.type!=="response-layout-item"&&!s)return!1}return t.controlType!=="field-set"}return{basalDragulaRuleForContainer:e}}const dr={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},ur=n.defineComponent({name:"FDynamicFormLabel",props:dr,emits:[],setup(e,t){const o=n.ref(e.title||e.text),i=n.ref(e.required),a=n.ref(e.text);return n.watch(()=>e.text,()=>{a.value=e.text}),n.watch(()=>e.required,(r,l)=>{r!==l&&(i.value=r)}),()=>n.createVNode("label",{class:"col-form-label",title:o.value},[i.value&&n.createVNode("span",{class:"farris-label-info text-danger"},[n.createTextVNode("*")]),n.createVNode("span",{class:"farris-label-text"},[a.value])])}}),fr=new Map([["appearance",Ge]]);function pr(e,t,o){return t}const mr={$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"]},Hn={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"}};Ie(Hn,mr,fr,pr);function gr(e,t,o,i){const a=n.ref(e.disabled),r=n.ref(!1),l=n.ref("text"),s=n.ref(e.showBorder),f=n.ref(e.textAlign),d=n.ref(e.updateOn),p=n.computed(()=>e.editable||!e.readonly),c=n.computed(()=>e.editable&&!e.disabled&&!e.readonly),u=n.computed(()=>!e.disabled&&r.value),_=n.computed(()=>o.value===""||o.value===null||o.value===void 0),m=n.computed(()=>(e.disabled||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),y=n.computed(()=>e.readonly||!e.editable),b=n.computed(()=>e.enableTitle?o.value:""),S=n.computed(()=>({"form-control":!0,"f-utils-fill":!0,"text-left":f.value==="left","text-center":f.value==="center","text-right":f.value==="right"})),C=n.computed(()=>{const T={"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":a.value,"f-state-editable":c.value,"f-state-readonly":y.value,"f-state-focus":u.value};return(e.customClass||"").split(" ").reduce(($,B)=>($[B]=!0,$),T),T}),g=n.computed(()=>s.value?"":"border-width : 0 ");function F(T,N=!0){o.value=T,i.value!==T&&(i.value=T),N&&t.emit("change",T),t.emit("update:modelValue",T),t.emit("update:value",T)}n.watch(()=>e.modelValue,(T,N)=>{T!==N&&(o.value=T,i.value=T)}),n.watch(()=>e.disabled,(T,N)=>{T!==N&&(a.value=T)});function x(T){return r.value=!1,t.emit("blur",T),T.stopPropagation(),!1}function h(T){t.emit("click",T)}function V(T){e.disabled||(s.value&&(r.value=!0),p.value&&t.emit("focus",T))}function v(T){t.emit("input",T.target.value);const N=T.target.value;i.value=N,d.value==="input"&&(t.emit("update:modelValue",N),t.emit("update:value",N))}function w(T){t.emit("keydown",T)}function k(T){t.emit("keyup",T)}function I(T){T.target.tagName!=="INPUT"&&T.preventDefault(),T.stopPropagation()}function O(T){if(d.value==="blur"){const N=T.target.value;T.stopPropagation(),F(N)}}return{changeTextBoxValue:F,disabled:a,displayText:i,editable:c,hasFocused:u,inputGroupClass:C,inputType:l,isEmpty:_,modelValue:o,readonly:y,onBlur:x,onClick:h,onFocus:V,onInput:v,onKeydown:w,onKeyup:k,onMousedown:I,onTextBoxValueChange:O,placeholder:m,textBoxClass:S,textBoxTitle:b,inputGroupStyle:g}}function hr(e,t,o){const i=n.ref(!1),a=n.computed(()=>e.enableClear&&!e.readonly&&!e.disabled),{changeTextBoxValue:r,displayText:l,hasFocused:s,isEmpty:f}=o;function d(y){i.value=y}n.watch(l,()=>{s!=null&&s.value?d(!!(l!=null&&l.value)):d(!1)});const p=n.computed(()=>({"input-group-text":!0,"input-group-clear":!0})),c=n.computed(()=>({width:"24px",display:i.value?"flex":"none"}));function u(y){y.stopPropagation(),a.value&&(r("",!0),d(!i.value),t.emit("clear"))}function _(y){a.value&&!f.value&&d(!0)}function m(y){a.value&&d(!1)}return{clearButtonClass:p,clearButtonStyle:c,hasShownClearButton:i,onClearValue:u,onMouseEnter:_,onMouseLeave:m,shouldShowClearButton:a}}const yr=["moz","ms","webkit"];function vr(){let e=0;return t=>{const o=new Date().getTime(),i=Math.max(0,16-(o-e)),a=setTimeout(()=>{t(o+i)},i);return e=o+i,a}}function br(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=yr.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:vr()}br();function Cr(e,t){return((t==null?void 0:t.split(" "))||[]).reduce((i,a)=>(a&&(i[a]=!0),i),e),e}function wr(e,t){return((t==null?void 0:t.split(";"))||[]).reduce((i,a)=>{if(a){const r=a.split(":");i[r[0]]=r[1]}return i},e),e}const Gn=e=>{const t=e;return t.install=function(o){o.component(t.name,e)},e},Sr={checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}};function xr(e,t){const o=n.ref(e.groupText),i=n.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),a=n.computed(()=>e.enableClear||!!e.groupText);return{appendedButtonClass:n.computed(()=>({"input-group-append":!0,"append-force-show":i.value})),appendedContent:o,shouldShowAppendedButton:a}}function _r(e,t,o,i){const{appendedContent:a}=i,r=n.ref(e.enableViewPassword),l=n.computed(()=>e.type==="password"),s='<span class="f-icon f-icon-eye" style="color: rgb(56, 143, 255);"></span>',f='<span class="f-icon f-icon-eye"></span>',d=n.ref(!1);n.watch(()=>[e.readonly,e.disabled],([u,_])=>{l.value&&(o.value=u||_?"password":o.value,a.value=u||_?f:a.value)});function p(){return d.value=!d.value,o.value=d.value?"text":"password",a.value=d.value?s:f,!1}function c(){o.value=l.value?"password":"text",a.value=l.value?r.value?f:"":a.value}return c(),{isPassword:l,onClickAppendedButton:p}}function Fr(e,t,o){const i=n.ref(),{onBlurTextBox:a,onFocusTextBox:r,onInput:l,onKeyDown:s,textBoxValue:f}=o,d=n.computed(()=>e.disabled||e.readonly||!e.editable?"":e.placeholder),p=n.computed(()=>({"form-control":!0,"f-utils-fill":!0})),c=n.computed(()=>({"text-align":e.textAlign}));function u(y){y.stopPropagation()}function _(){e.selectOnCreated,e.focusOnCreated}async function m(y){r(y),await n.nextTick,_()}return n.onMounted(async()=>{await n.nextTick,_()}),()=>n.createVNode("input",{ref:i,class:p.value,style:c.value,type:"text",value:f.value,disabled:e.disabled,readonly:e.readonly||!e.editable,placeholder:d.value,onBlur:a,onChange:u,onFocus:m,onInput:l,onKeydown:s},null)}function Vr(e,t,o){const{canDownward:i,canUpward:a,onClickDownButton:r,onClickUpButton:l}=o,s=n.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),f=n.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),d=n.computed(()=>({cursor:a()?"pointer":"not-allowed","margin-left":0})),p=n.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0}));return()=>n.createVNode("div",{class:s.value},[n.createVNode("button",{title:"upButton",class:f.value,style:d.value,onClick:l,disabled:!a()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),n.createVNode("button",{title:"downButton",class:f.value,style:p.value,onClick:r,disabled:!i()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function Nr(e,t){const o=pt.useNumber(e,t),i=pt.useFormat(e,t,o),a=pt.useSpinner(e,t,i,o),r=pt.useTextBox(e,t,i,o,a),l=Vr(e,t,a),{displayValue:s,modelValue:f,getRealValue:d}=o,p=Fr(e,t,r),{format:c}=i,{isFocus:u}=r,_=n.computed(()=>!e.disabled&&!e.readonly);return n.onMounted(()=>{const m=d(e.modelValue);s.value=c(m)}),n.watch(()=>[e.value],([m])=>{const y=d(m);f.value=y,s.value=c(y)}),n.watch(()=>[e.modelValue],([m])=>{m!==f.value&&(f.value=m,!u.value&&(s.value=c(d(m))))}),n.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{s.value=c(f.value)}),()=>n.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[p(),_.value&&l()])}function kr(e,t,o,i){const a=n.ref(),r=n.ref(e.autocomplete),l=n.ref(e.enableTitle),{isPassword:s}=o,f=n.ref(e.minLength),d=n.ref(e.maxLength),p=n.ref(e.tabIndex),{disabled:c,displayText:u,inputType:_,onBlur:m,onFocus:y,onInput:b,onClick:S,onKeydown:C,onKeyup:g,onMousedown:F,onTextBoxValueChange:x,readonly:h,placeholder:V,textBoxClass:v,textBoxTitle:w}=i;return n.onMounted(()=>{e.selectOnCreated,e.focusOnCreated}),()=>n.createVNode("input",{ref:a,name:"input-group-value",autocomplete:r.value,class:v.value,disabled:c==null?void 0:c.value,maxlength:d.value,minlength:f.value,placeholder:V.value,readonly:h==null?void 0:h.value,tabindex:p.value,title:l.value&&!s.value?w.value:"",type:_.value,value:u==null?void 0:u.value,onBlur:m,onClick:S,onChange:x,onFocus:y,onInput:b,onKeydown:C,onKeyup:g,onMousedown:F},null)}function Tr(e,t){const o=n.computed(()=>e.useExtendInfo&&!!e.extendInfo),i=n.reactive({content:e.extendInfo});function a(){t.emit("updateExtendInfo")}return()=>o.value&&n.withDirectives(n.createVNode("span",{class:"input-group-before-tips",onMouseenter:a},[n.createVNode("i",{class:"f-icon f-icon-info-circle"},null),n.createVNode("b",{class:"tips-arrow"},null)]),[[n.resolveDirective("tooltip"),i]])}function Ir(e,t,o,i,a){const{appendedButtonClass:r,appendedContent:l}=o,s=n.computed(()=>e.showButtonWhenDisabled&&(!e.editable||!e.readonly)&&!e.disabled),f=n.computed(()=>l.value&&!t.slots.groupTextTemplate),d=n.computed(()=>!!t.slots.groupTextTemplate),{clearButtonClass:p,clearButtonStyle:c,onClearValue:u,shouldShowClearButton:_}=i;function m(){return n.createVNode("span",{id:"clearIcon",class:p.value,style:c.value,onClick:V=>u(V)},[n.createVNode("i",{class:"f-icon modal_close"},null)])}function y(V){t.emit("iconMouseEnter",V)}function b(V){t.emit("iconMouseLeave",V)}function S(V){s.value&&t.emit("clickHandle",{originalEvent:V}),V.stopPropagation()}const C=e.type==="password"?a.onClickAppendedButton:S;function g(){return n.createVNode("span",{class:"input-group-text",onMouseenter:V=>y(V),onMouseleave:V=>b(V),innerHTML:l.value,onClick:V=>C(V)},null)}function F(){return t.slots.groupTextTemplate&&t.slots.groupTextTemplate()}function x(){return f.value?g:d.value?F:""}const h=x();return()=>n.createVNode("div",{class:r.value},[_.value&&m(),h&&h()])}const Or=n.defineComponent({name:"FInputGroup",props:Hn,emits:["clear","change","blur","click","clickHandle","focus","input","keydown","keyup","iconMouseEnter","iconMouseLeave","update:modelValue","update:value","updateExtendInfo","valueChange"],setup(e,t){const o=n.ref(e.modelValue),i=n.ref(e.modelValue),a=gr(e,t,o,i),{inputGroupClass:r,inputType:l,inputGroupStyle:s}=a,f=xr(e),{shouldShowAppendedButton:d}=f,p=hr(e,t,a),{onMouseEnter:c,onMouseLeave:u}=p,_=_r(e,t,l,f),m=Nr(e,t),y=kr(e,t,_,a),b=Ir(e,t,f,p,_),S=Tr(e,t),C=n.computed(()=>e.type==="number");n.watch(()=>[e.value],([F])=>{o.value=F,i.value=F}),n.watch(()=>[e.modelValue],([F])=>{o.value=F,i.value=F}),n.onMounted(()=>{e.value&&(o.value=e.value,i.value=e.value)});const g=()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{id:"inputGroup",class:r.value,style:s.value,onMouseenter:c,onMouseleave:u},[C.value?m():n.createVNode(n.Fragment,null,[S(),y(),d.value&&b()])])]);return()=>g()}}),U={},K={},Y={},J={};let Wn=!1;function $r(){Wn||(Wn=!0,Yo.register(U,K,Y,J),Xo.register(U,K,Y,J),ln.register(U,K,Y,J),Jo.register(U,K,Y,J),Qo.register(U,K,Y,J),Zo.register(U,K,Y,J),ft.register(U,K,Y,J),Ot.register(U,K,Y,J),ei.register(U,K,Y,J),ti.register(U,K,Y,J),oi.register(U,K,Y,J),ni.register(U,K,Y,J),ii.register(U,K,Y,J),ai.register(U,K,Y,J),ri.register(U,K,Y,J),It.register(U,K,Y,J),li.register(U,K,Y,J),an.register(U,K,Y,J),si.register(U,K,Y,J),ci.register(U,K,Y,J),di.register(U,K,Y,J),ui.register(U,K,Y,J),sn.register(U,K,Y,J),fi.register(U,K,Y,J),pi.register(U,K,Y,J),mi.register(U,K,Y,J),gi.register(U,K,Y,J),hi.register(U,K,Y,J),pt.register(U,K,Y,J),Ko.register(U,K,Y,J),yi.register(U,K,Y,J),vi.register(U,K,Y,J),rn.register(U,K,Y,J),bi.register(U,K,Y,J),Ci.register(U,K,Y,J),wi.register(U,K,Y,J),Si.register(U,K,Y,J),_i.register(U,K,Y,J),Fi.register(U,K,Y,J),xi.register(U,K,Y,J),Li.register(U,K,Y),Vi.register(U,K,Y,J),Ni.register(U,K,Y,J),ki.register(U,K,Y,J),Ti.register(U,K,Y,J),Ii.register(U,K,Y,J),Oi.register(U,K,Y,J),Uo.register(U,K,Y,J),on.register(U,K,Y,J),$i.register(U,K,Y,J),Bi.register(U,K,Y,J),qo.register(U,K,Y,J),Mi.register(U,K,Y,J),Pi.register(U,K,Y,J),ji.register(U,K,Y,J),Di.register(U,K,Y,J),Ri.register(U,K,Y,J),Ei.register(U,K,Y,J),Ai.register(U,K,Y,J))}function Br(){$r();function e(a,r){const l=K[a];return l?l(r):{}}function t(a){return U[a]||Or}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 i(a){switch(a){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:e,resolveEditorType:t,getChangeFunctionName:o,getClearFunctionName:i}}const Mr=n.defineComponent({name:"FDynamicFormGroup",props:An,emits:["change","update:modelValue"],setup(e,t){const o=n.ref(e.id),i=n.ref(e.customClass),a=n.ref(e.editor),r=n.ref(e.label),l=n.ref(e.modelValue),s=n.ref(e.readonly),f=n.ref(e.required),d=n.ref(e.showLabel),p=n.ref(e.visible);n.ref(e.type);const c=n.ref(),{resolveEditorProps:u,resolveEditorType:_,getChangeFunctionName:m,getClearFunctionName:y}=Br(),b=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":s.value}));function S(F,x){l.value=x!==void 0?x:F,t.emit("update:modelValue",l.value),t.emit("change",l.value)}function C(){t.emit("update:modelValue","")}const g=n.computed(()=>{const F=a.value.type||"input-group",x=_(F),h=u(F,a.value),V=m(F),v=y(a.value.type);return h[V]=S,h[v]=C,()=>n.createVNode(x,n.mergeProps({ref:c},h,{modelValue:l.value,"onUpdate:modelValue":w=>l.value=w}),null)});return n.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([F,x,h,V,v,w,k,I,O])=>{o.value=F,i.value=x,a.value=h,r.value=V,l.value=v,s.value=w,f.value=k,d.value=I,p.value=O}),t.expose({editorRef:c}),()=>p.value&&n.createVNode("div",{id:`${o.value}-input-group`,class:i.value},[n.createVNode("div",{class:"farris-group-wrap"},[n.createVNode("div",{class:b.value},[d.value&&n.createVNode(ur,{id:`${o.value}-lable`,required:f.value,text:r.value,title:r.value},null),n.createVNode("div",{class:"farris-input-wrap"},[g.value()])])])])}}),jr={},Pr={};class Dr extends Ae{constructor(t,o){super(t,o)}}Ie({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}},Ln,Gt,void 0);var zn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(zn||{}),qn=(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))(qn||{});const Rr=[{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:"结束是"}],Er={"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 Lr(e,t,o){const{fieldMap:i}=o;function a(r){const l=i.get(r.fieldCode);if(!l)return[];const s=l.editor.type,f=new Set(Er[s]);return Rr.filter(p=>f.has(p.value))}return{getCompareOperators:a}}function Un(){const e=n.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),t=new Map,o=new Map;let i=0;function a(){return{id:"",fieldCode:"",fieldName:"",compareType:qn.Equal,valueType:zn.Value,value:new jn,relation:0,conditionId:Date.now()}}function r(w,k){return{relation:w,items:[],children:[],path:[],groupId:++i,level:k}}function l(){const w=Object.assign({},e.value);o.forEach((k,I)=>{k.groupId===w.groupId&&o.set(I,w)}),t.forEach((k,I)=>{k.groupId===w.groupId&&t.set(I,w)}),e.value=w}function s(w){const k=new Map;let I=0;return w.forEach((O,T)=>{var N,$;if(I+=((N=O.lBracket)==null?void 0:N.length)||0,k.set(T,I),I-=(($=O.rBracket)==null?void 0:$.length)||0,I<0)throw new Error("The right bracket is out of range.")}),k}function f(w,k,I,O,T){for(let N=0;N<k;N++){const $=w+(N+1),B=r(T,$);I.children.push(B),o.set(B.groupId,I),I=I.children[I.children.length-1],O.push(I)}return I}function d(w,k,I,O,T){for(let j=k;j<=0;j++)O.pop();const N=O[O.length-1];if(!N)throw new Error("The group path is out of range");const $=w+k,B=r(T,$);return N.children.push(B),o.set(B.groupId,N),I=N.children[N.children.length-1],O.push(I),I}function p(w,k,I,O){I.pop();const T=I[I.length-1],N=r(O,w);return T.children.push(N),o.set(N.groupId,T),k=T.children[T.children.length-1],I.push(k),k}function c(w,k,I,O,T,N){let $=w[w.length-1];if(!$)throw new Error("The group path is out of range");const B=k.get(O)||0,j=k.get(I)||0;if(I<0||I===O)return w[w.length-1];const P=B-j,M=T&&T.relation!==void 0?T.relation:1;return $=P>0?f(j,P,$,w,M):$,$=P<0?d(j,P,$,w,M):$,$=P===0&&j>0&&B>0&&T&&N&&!!T.rBracket&&!!N.lBracket?p(j,$,w,M):$,$}function u(w){const I={relation:w.length&&w[0].relation!==void 0?w[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},O=[I],T=s(w);return w.forEach((N,$)=>{const B=$-1,j=w[B],P=c(O,T,B,$,j,N);P.items.push(N),t.set(N.conditionId,P)}),e.value=I,I}function _(){const w=a();t.set(w.conditionId,e.value),e.value.items.push(w)}function m(w){if(!w)return;const k=t.get(w.conditionId);if(k){const I=k.items.findIndex(T=>T.conditionId===w.conditionId)+1,O=a();t.set(O.conditionId,k),k.items.splice(I,0,O),l()}}function y(w){const k=t.get(w.conditionId);k&&(k.items=k.items.filter(I=>I.conditionId!==w.conditionId),t.delete(w.conditionId),v(),l())}function b(w,k,I,O){w.reduce((T,N)=>{const $=N.conditionId!==void 0,B=N.groupId!==void 0;if($){const j=N;I.push(j),T.items.set(j.conditionId,j)}if(B){const j=N;O.push(j),T.groups.set(j.groupId,j)}return T},k)}function S(w,k,I,O,T){w&&(w.items=k.length?w.items.filter(N=>!I.has(N.conditionId)):w.items,w.children=O.length?w.children.filter(N=>!T.has(N.groupId)):w.children)}function C(w,k,I){k.forEach(O=>{w.items.push(O),t.set(O.conditionId,w)}),I.forEach(O=>{w.children.push(O),o.set(O.groupId,w)})}function g(w){const k=w[0],I=k.conditionId!==void 0?t.get(k.conditionId):o.get(k.groupId),O={items:new Map,groups:new Map},T=[],N=[];if(I){b(w,O,T,N),S(I,T,O.items,N,O.groups);const $=r(I.relation,I.level+1);C($,T,N),I.children.push($),o.set($.groupId,I),l()}}function F(w){const k=[...w.items],I=[...w.children],O=o.get(w.groupId);O&&(O.children=O.children.filter(T=>T.groupId!==w.groupId),o.delete(w.groupId),k.forEach(T=>{O.items.push(T),t.set(T.conditionId,O)}),I.forEach(T=>{O.children.push(T),o.set(T.groupId,O)}),l())}function x(w){w.relation=w.relation===1?2:1,l()}let h;function V(w){const{relation:k}=w;return(w.children&&w.children.length?w.children.map((O,T,N)=>{const $=h(O);return $[0].lBracket=($[0].lBracket||"")+"(",$[$.length-1].rBracket=($[$.length-1].rBracket||"")+")",$[$.length-1].relation=T<N.length-1?k:0,$}):[]).flat()}h=(w=e.value)=>{const{relation:k}=w,I=w.items.map((T,N,$)=>(T.lBracket=N===0?"(":"",T.rBracket=N===$.length-1?")":"",T.relation=N<$.length-1?k||1:0,T)),O=V(w);return[...I,...O]};function v(w){const k=w||e.value;if(k.children.length&&k.children.forEach(I=>{v(I)}),k.level===0&&!k.items.length&&k.children.length===1){const I=k.children[0];e.value.relation=I.relation,F(I)}else k.items.length===0&&k.children.length<=1&&F(k)}return{addCondition:_,changeGroupRelation:x,conditionGroupMap:t,getConditions:h,group:g,groupParentMap:o,insertConditionTo:m,loadConditionGroup:u,refresh:l,removeCondition:y,rootGroup:e,unGroup:F}}function Ar(e,t,o){const i=n.ref(new Set),a=n.ref(new Set),{conditionGroupMap:r,groupParentMap:l}=o;let s,f;function d(S){let C=s.level<=S.level?s:S,g=s.level>S.level?s:S;const F=[];for(;g&&C&&g!==C;)g.level>C.level?(F.push(g),g=l.get(g.groupId)):g.level===C.level&&(C=l.get(C.groupId),C&&F.unshift(C));return F}function p(S){a.value.add(S.groupId),S.items.forEach(C=>i.value.add(C.conditionId)),S.children.forEach(C=>p(C))}function c(S){const{conditionId:C}=S;i.value.add(C),s=i.value.size===0?r.get(C):s;const g=r.get(S.conditionId);d(g).forEach(x=>p(x))}const u=n.computed(()=>i.value.size===0&&a.value.size===1),_=function(S){a.value.delete(S.groupId),S.items.forEach(g=>f(g)),S.children.forEach(g=>!u.value&&_(g));const C=l.get(S.groupId);C&&a.value.has(C.groupId)&&_(C)};f=function(S){const{conditionId:C}=S;if(i.value.has(C)&&i.value.delete(C),a.value.size>0){const g=r.get(C);g&&a.value.has(g.groupId)&&_(g)}};function m(S){const{conditionId:C}=S;i.value.size===0&&(s=r.get(C)),i.value.has(C)?f(S):c(S)}function y(){const S=[];return s&&(s.items.filter(C=>i.value.has(C.conditionId)).forEach(C=>S.push(C)),s.children.filter(C=>a.value.has(C.groupId)).forEach(C=>S.push(C))),S}function b(){i.value.clear(),a.value.clear()}return{clear:b,getSelectedGroupItem:y,selectedItems:i,toggleSelect:m}}const Wt=n.defineComponent({name:"FConditionList",props:Bn,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,t){const o=n.ref(e.key),i=n.ref(e.conditions),a=Dn(e),{convertToSingleControl:r,fields:l,fieldMap:s,loadFieldConfigs:f}=a,d=Un(),{addCondition:p,changeGroupRelation:c,getConditions:u,group:_,insertConditionTo:m,loadConditionGroup:y,refresh:b,removeCondition:S,rootGroup:C,unGroup:g}=d,{createConditionValue:F}=Pn(),x=Ar(e,t,d),{selectedItems:h,toggleSelect:V}=x,{getCompareOperators:v}=Lr(e,t,a);f(!1),l.value=r(l.value),y(i.value);function w(P){var D;const M=((D=s.get(P.fieldCode))==null?void 0:D.editor)||{type:"text"};P.value=F(M.type,void 0),t.emit("labelCodeChange",P)}function k(P,M){t.emit("compareTypeChange",M)}function I(){}t.expose({getConditions:u});function O(P,M){t.emit("valueChange",P,M)}function T(P){return P.items.map(M=>{var D;return n.createVNode("div",{class:"condition-list-item",key:M.conditionId},[n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(Ot,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:M.fieldCode,"onUpdate:modelValue":H=>M.fieldCode=H,onChange:H=>w(M)},null)]),n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(Ot,{"value-field":"value","text-field":"name","id-field":"id",data:v(M),modelValue:M.compareType,"onUpdate:modelValue":H=>M.compareType=H,onChange:H=>k(H,M)},null)]),n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(Mr,{editor:(D=s.get(M.fieldCode))==null?void 0:D.editor,showLabel:!1,modelValue:M.value.value,"onUpdate:modelValue":H=>M.value.value=H,onChange:H=>{O(H,M)}},null)]),n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>m(M)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>S(M)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:h.value.has(M.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>V(M)},null)])])})}function N(P){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>g(P)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>c(P)},[P.relation===1?"与":"或"])])}function $(P){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[T(P),P.children&&P.children.map(M=>$(M))]),N(P)])}function B(){_(x.getSelectedGroupItem()),x.clear()}function j(){return n.createVNode("div",{class:"condition-list-bottom"},[n.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:p},[n.createVNode("span",{class:"f-icon f-icon-filter-add"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("添加条件")])]),n.createVNode("div",{class:"add-condition-btn mb-1",onClick:B},[n.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("生成条件组")])]),n.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:I},[n.createTextVNode("重置")])])}return()=>n.createVNode("div",{class:"condition-list",key:o.value},[n.createVNode("div",{class:"condition-list-body"},[$(C.value)]),j()])}});Wt.install=e=>{e.component(Rn.name,Rn).component(Wt.name,Wt)};const Hr=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth"],Gr={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o,contain:(e,t,o)=>e?(e[t]||"").indexOf(o)>-1:!1,startWidth:(e,t,o)=>e?(e[t]||"").startsWith(o):!1,endWidth:(e,t,o)=>e?(e[t]||"").endsWith(o):!1},Wr={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o},zr={equal:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()===i}return!1},notEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()!==i}return!1},greaterThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<=i}return!1}},qr={equal:(e,t,o)=>e?String(o).split(",").includes(String(e[t])):!1,notEqual:(e,t,o)=>e?String(o).split(",").findIndex(a=>a===String(e[t]))===-1:!1},Ur={equal:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):i===a}return!1},notEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?!0:i!==a}return!1},greaterThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a<=i}return!1}};function zt(){const e=n.ref([]),t=new Map,{loadConditionGroup:o}=Un(),i=new Map([["boolean",Wr],["datetime",zr],["enum",qr],["number",Ur],["text",Gr]]);function a(c){t.delete(c),e.value=Array.from(t.values())}function r(){t.clear(),e.value=[]}function l(c){const{valueType:u}=c.value,_=c.compareType||"0",m=Hr[Number(_)];return i.get(u)[m]}function s(c){const u=c.relation===2?0:1,_=c.items.map(y=>{const b=l(y);return C=>b(C,y.fieldCode,y.value.getValue())}),m=c.children&&c.children.length?c.children.map(y=>s(y)):[];return{relation:u,filterFunctions:_,children:m}}function f(){const c=o(e.value);return s(c)}function d(c,u){const _=u.filterFunctions.map(y=>y(c)),m=u.children.map(y=>d(c,y));return u.relation===1?_.every(y=>y)&&m.every(y=>y):_.includes(!0)||m.includes(!0)}function p(c){const u=f();return d(c,u)}return{apply:p,clearCondition:r,conditions:e,removeCondition:a}}function qt(e,t){var b,S;const{idField:o}=t,i=n.ref(e.summary),a=n.ref(e.group),r=n.ref(((b=e.group)==null?void 0:b.groupFields)||[]),l=n.ref(((S=e.group)==null?void 0:S.enable)||!1),s=n.computed(()=>{const C=i.value;return(C==null?void 0:C.groupFields)||[]}),f=n.computed(()=>{const C=a.value;return C&&C.showSummary}),d=new Map;let p=[];function c(C,g,F,x,h){const V=x[F];V&&(g.reduce((v,w,k)=>{var T;const I=w[V];let O=v.get(I);if(!O){const N=s.value.reduce(($,B)=>($.set(B,0),$),new Map);O={field:V,title:((T=h.get(V))==null?void 0:T.title)||V,value:I,layer:F,details:[],groupSummaries:N},v.set(I,O)}return s.value&&s.value.forEach(N=>{if(O){const $=O.groupSummaries.get(N)||0;O.groupSummaries.set(N,$+w[N])}}),O.details.push(w),v},C),F<x.length-1&&C.forEach((v,w)=>{v.nestGroup=new Map,c(v.nestGroup,v.details,F+1,x,h),v.details=[]}))}function u(C,g){return e.group&&e.group.formatter?e.group.formatter(C.value,{...C,total:g}):`${C.title}:${C.value} (${g})`}function _(C){const g=[];return C.forEach(F=>{const x={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:F.field,__fv_data_grid_group_layer__:F.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:F.value};let h=0;if(g.push(x),F.nestGroup){const V=_(F.nestGroup);g.push(...V),h+=V.length}if(F.details&&F.details.length&&(g.push(...F.details),h+=F.details.length),f.value){const V={__fv_data_grid_group_field__:F.field,__fv_data_grid_group_layer__:F.layer,__fv_data_grid_group_summary__:!0};V[o.value]=`summary_of_${F.field}_${F.value}`,V[F.field]=Array.from(F.groupSummaries.entries()).reduce((v,[w,k])=>`${v} ${w} total:${k} `,""),g.push(V)}F.groupSummaries&&F.groupSummaries.size&&F.groupSummaries.forEach((V,v)=>{x[v]=V}),x[o.value]=`group_of_${F.field}_${F.value}`,x[F.field]=u(F,h)}),g.forEach((F,x)=>{F.__fv_data_index__=x}),g}function m(C,g,F){return!C||C.length===0||!g.length?g:(C.join(","),d.clear(),p=[],c(d,g,0,C,F),p=_(d),p)}function y(C){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":C.collapse}}return{collpaseGroupIconClass:y,generateGroupData:m,groupFields:r,shouldGroupingData:l}}function Kr(e,t,o,i){const a=n.ref(!!e.hierarchy),{idField:r}=i,{collapseField:l,hasChildrenField:s,parentIdField:f}=o,d=new Map;function p(O,T){const N=new Map;return O.reduce(($,B)=>{const j=B[f.value]!==void 0?B[f.value]:"";if(j&&T.has(j)){const M=T.get(j);B.__fv_parent_index__=M.__fv_index__,M.__fv_hasChildren__=!0}const P=$.has(j)?$.get(j):[];return P.push(B),$.set(j,P),$},N),N}function c(O){const T=new Map;return O.reduce((N,$)=>{const B=$[r.value];return N.set(B,$),N},T),T}function u(O){O.forEach(T=>{const N=T[r.value];T.__fv_children_index__.map(B=>O[B]).forEach(B=>{B.__fv_parents__=new Map([...T.__fv_parents__.entries(),[N,!0]])})})}function _(O){O.forEach(T=>{const N=new Set(T.__fv_children_index__);T.__fv_children_index__=[...N].sort(($,B)=>$-B)})}function m(O,T){O.forEach(N=>{const $=N.__fv_parents__;Array.from($.keys()).map(B=>T.get(B)).forEach(B=>{B.__fv_children_index__.push(N.__fv_index__)})}),_(O)}function y(O){O.forEach(T=>{T.__fv_child_with_lines__=[],T.__fv_child_length__=T.__fv_descendant_index__.length,T.__fv_descendant_index__.map(N=>O[N]).reduce((N,$)=>(N.__fv_child_length__+=$.__fv_children_index__.length,N.__fv_child_with_lines__.push(...$.__fv_children_index__,$.__fv_index__),N),T)})}function b(O,T){return{id:O,index:T,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function S(O,T){Array.from(T.keys()).forEach(N=>{T.get(N).reduce((B,j)=>{const P=j[r.value],M=O.get(j[r.value]),D=O.get(N);return D&&(D.children.set(P,M),D.children.set(P,M),M.parentId=N,M.parentIndex=D.index,M.parents.set(N,D)),B},O)})}function C(O){O.children.forEach(N=>{N.parents=new Map([...O.parents.entries(),[O.id,O]]),C(N)})}function g(O,T){O.filter(N=>N[f.value]===void 0||N[f.value]==="").forEach(N=>{const $=N[r.value],B=T.get($);C(B)})}function F(O){Array.from(O.values()).forEach(T=>{Array.from(T.parents.values()).forEach(N=>{N.descendant.set(T.id,T)})})}function x(O){d.clear(),O.forEach(($,B)=>{const j=$[r.value];d.set(j,b(j,B))});const T=c(O),N=p(O,T);return S(d,N),g(O,d),F(d),d}function h(O){const T=O[r.value],N=d.get(T);return N&&N.children.size>0}function V(O){return O[s.value]&&!h(O)}function v(O){x(t.value);const T=c(O),N=p(O,T);return O.forEach(($,B)=>{var D;const j=$[r.value],P=N.has(j)?(D=N.get(j))==null?void 0:D.map(H=>H.__fv_index__):[],M=b(j,B);$.__fv_graph_node__=M,$.__fv_children_index__=P,$.__fv_descendant_index__=[...P],$.__fv_parents__=new Map,V($)&&($[l.value]=!0)}),u(O),m(O,T),e.showLines&&y(O),O}function w(O,T,N){const B=N.value[O][r.value],j=d.get(B);if(j){const P=d.get(j.parentId);let M=N.value.length-1;if(P){const D=Array.from(P.children.keys()).indexOf(j.id);if(D===P.children.size-1){const ne=Array.from(P.descendant.values())[P.descendant.size-1];M=N.value.findIndex(be=>be[r.value]===ne.id)+1}else{const ne=Array.from(P.children.values())[D+1];M=N.value.findIndex(be=>be[r.value]===ne.id)}T[s.value]=!1,T[f.value]=P.id,N.value.splice(M,0,T)}}}function k(O,T,N){const $=N.value[O],B=$[r.value];if(d.get(B)){const M=N.value.findIndex(D=>D[r.value]===B)+1;$[s.value]=!0,$[l.value]=!1,T[s.value]=!1,T[f.value]=B,N.value.splice(M,0,T)}}function I(O,T){const N=O[r.value],$=d.get(N),B=Array.from($.descendant.keys());B.unshift(N);const j=d.get($.parentId);if(j&&(j.children.delete(N),j.children.size===0)){const M=T.find(D=>D[r.value]===$.parentId);M[s.value]=!1,M[l.value]=!1}return T.filter(M=>B.indexOf(M.id)===-1)}return{generateHierarchyData:v,hasRealChildren:h,insertSibling:w,insertChild:k,shouldStratifyData:a,trimmedOriginalData:I}}const Xr={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}},Yr={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Ut=n.defineComponent({name:"Toast",props:Yr,emits:["close","click"],setup:(e,t)=>{const o=n.ref(e.animate),i="fadeOut",a=n.computed(()=>e.options),r=n.ref(!1),l=n.computed(()=>{const S={animated:r.value,toast:!0};return S[e.animate]=!1,S[i]=r.value,S[a.value.type]=!0,a.value.theme&&(S[a.value.theme]=!0),S}),s=n.computed(()=>{const g=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,F={"f-icon":!0};return F[g]=!0,F}),f=n.computed(()=>a.value.title||a.value.message),d=n.computed(()=>a.value.title&&a.value.message),p=n.computed(()=>!a.value.title&&a.value.message),c=n.computed(()=>e.showCloseButton),u=n.computed(()=>!!a.value.buttons||!!t.slots.default);function _(S){S.stopPropagation(),S.preventDefault(),r.value=!1,setTimeout(()=>{t.emit("close",a.value)},200)}function m(S,C){}function y(S){return`f-preten-link ${S.customClass?S.customClass:""}`}n.watch(o,()=>{o.value});const b=()=>{var S;return n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"after-toast-msg text-right"},[!t.slots.default&&((S=a.value.buttons)==null?void 0:S.map(C=>n.createVNode("span",{class:y(C),onClick:g=>void 0},[C.text]))),t.slots.default&&t.slots.default()])])};return()=>n.createVNode("div",{class:l.value},[c.value&&n.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:_},[n.createVNode("span",{class:"f-icon modal_close"},null)]),f.value&&n.createVNode("section",{class:"modal-tips"},[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:s.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[d.value&&n.createVNode(n.Fragment,null,[n.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),n.createVNode("p",{class:"toast-msg",innerHTML:a.value.message},null),u.value&&b()]),p.value&&(a.value.buttons?n.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null),n.createVNode("div",{class:"after-toast-title text-right ml-auto"},[b()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null))])])])}}),Vt=n.defineComponent({name:"Notify",props:Xr,emits:["close","empty"],setup(e,t){const o=n.computed(()=>({"farris-notify":!0})),i={left:12,right:12,top:20,bottom:12},a=n.ref(),r=n.ref(e.options),l=n.ref(e.showCloseButton),s=n.computed(()=>e.position||"bottom-right"),f=n.computed(()=>e.timeout!=null?e.timeout:3e3),d=n.computed(()=>{const u=e.bottom?e.bottom:i.bottom,_=e.top?e.top:i.top,m={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?`${_}px`:"",bottom:s.value.indexOf("bottom")>-1?`${u}px`:""};return s.value.indexOf("center")>-1&&(m.left="50%",m.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(m.top="50%",m.transform="translate(-50%, -50%)")),m});function p(u){t.emit("close")}f.value&&setTimeout(()=>{p()},f.value),t.expose({closeToast:p,container:a,notifyPosition:s});function c(u,_){p()}return()=>n.createVNode("div",{class:o.value,style:d.value,ref:a},[n.createVNode(Ut,{options:r.value,showCloseButton:l.value,animate:e.animate,onClose:u=>c(u,r.value)},null)])}});class Kn{constructor(){z(this,"notifyRefs",[]);z(this,"globalConfig",n.reactive({}))}createNotifyInstance(t){const o=this,a=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...t}),r=document.createElement("div");r.style.display="contents";const l=n.createApp({setup(){const s=n.ref();function f(){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 c=p.value.container.getBoundingClientRect();a.top=c.bottom}}return n.onUnmounted(()=>{document.body.removeChild(r)}),n.onMounted(()=>{o.updateNotifyPositionForCreate(a,s)}),()=>n.createVNode(Vt,n.mergeProps({ref:s},a,{onClose:f}),null)}});return l.provide("NotifyService",this),document.body.appendChild(r),l.mount(r),l}getNotifyInstances(t){return this.notifyRefs.filter(o=>o.value.notifyPosition===t)}updateNotifyPositionForCreate(t,o){if(this.notifyRefs&&this.notifyRefs.length){const i=window.innerHeight;t.position.indexOf("bottom")>-1&&this.getNotifyInstances(t.position).forEach(a=>{const r=a.value.container.getBoundingClientRect();a.value.container.style.bottom=r.height+i-r.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(t,o){const i=this.notifyRefs.indexOf(o);if(t.position.indexOf("top")>-1){const a=this.getNotifyInstances(t.position),r=a.indexOf(o);a.slice(r+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(t){return this.createNotifyInstance(t)}buildNotifyProps(t,o){let i="",a="",r,l,s;typeof o=="string"?i=o:o&&(i=o.message||"",a=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,r=o.timeout!=null?o.timeout:null);const d={options:{type:t,message:i,title:a}};return l!=null&&(d.position=l),s!=null&&(d.showCloseButton=s),r!=null&&(d.timeout=r),d}info(t){const o=this.buildNotifyProps("info",t);return this.show(o)}success(t){const o=this.buildNotifyProps("success",t);return this.show(o)}warning(t){const o=this.buildNotifyProps("warning",t);return this.show(o)}error(t){const o=this.buildNotifyProps("error",t);return this.show(o)}close(t){t&&t.unmount()}closeAll(){this.notifyRefs.forEach(t=>{t==null||t.value.closeToast()}),this.notifyRefs.length=0}}const Xn=Symbol("NOTIFY_SERVICE_TOKEN");Vt.install=e=>{e.component(Vt.name,Vt),e.component(Ut.name,Ut);const t=new Kn;e.provide(Xn,t),e.provide("FNotifyService",t)};function Yn(e,t,o,i,a){var Je;const{pageSize:r,total:l,shouldRenderPagination:s,currentPage:f,mode:d}=a,p=new Map,c=new Map,u=new Map,_=new Map,m=new Map,y=n.ref([]),b=n.ref([]),S=zt(),C=qt(e,i),{generateGroupData:g,groupFields:F,shouldGroupingData:x}=C,h=n.ref(e.data),V=Kr(e,h,o,i),{generateHierarchyData:v,hasRealChildren:w,insertSibling:k,insertChild:I,shouldStratifyData:O,trimmedOriginalData:T}=V,{idField:N,reviseIdentifyField:$}=i,B=n.ref(e.newDataItem),j=n.ref(e.data),P=n.ref(e.data),{flatTreeData:M}=fl(e);if(e.data&&((Je=e.data[0])!=null&&Je.children)){const A=Se(e.data);h.value=A,j.value=A,P.value=A}const D=n.ref(e.summary),H=n.computed(()=>{const A=D.value;return(A==null?void 0:A.groupFields)||[]});let ne=new Map;const re=n.computed(()=>{var A;return((A=j.value)==null?void 0:A.length)||0}),be=n.ref(e.pagination),$e=new Kn,_e=n.computed(()=>s.value?d.value==="server"?0:(f.value-1)*r.value:0),ve=n.computed(()=>s.value?d.value==="server"?Math.min(r.value,l.value,re.value):Math.min(_e.value+r.value,l.value,re.value):re.value);function Se(A){return M(A)}function ke(){var oe;j.value=h.value,x.value&&(j.value=g(F.value,h.value,t)),ne=H.value.reduce((Ne,Ee)=>(Ne.set(Ee,0),Ne),ne);const A=_e.value,ee=ve.value;let ae=0;const Ve=[];if((oe=j.value)!=null&&oe.length){$(j.value);const Ne=N.value!==e.idField;for(let Ee=A;Ee<ee;Ee++){const he=j.value[Ee];he.__fv_data_grid_group_row__?(ae=0,he.__fv_data_index__=""):he.__fv_data_grid_group_summary__?he.__fv_data_index__="":(ae++,s.value?he.__fv_data_index__=ae+(f.value-1)*r.value:he.__fv_data_index__=ae),he.__fv_index__=Ee,Ne&&(he[N.value]=Ee),H.value.forEach(De=>{const Le=ne.get(De)||0;ne.set(De,Le+he[De])}),Ve.push(he)}}return O.value&&v(Ve),P.value=[...Ve],Ve}const ie=n.ref(ke());function fe(A,ee,ae=!1){const oe=(ae?ke():[...P.value]).filter(he=>S.apply(he)),Ne=A&&A.length?oe.filter(he=>A.reduce((De,Le)=>De&&Le.filter(he),!0)):oe,Ee=ee&&ee.length?Ne.sort((he,De)=>{const Le=[...ee],Ce=Le.shift();let Qe=Ce.compare(he[Ce.field],De[Ce.field]);for(;Qe===0&&Le.length!==0;){const ut=Le.shift();ut&&(Qe=ut.compare(he[ut.field],De[ut.field]))}return Qe}):Ne;return ie.value=Ee.map((he,De)=>{if(he.__fv_data_grid_group_row__){const Le=`group_of_${he.__fv_data_grid_group_field__}_${he.__fv_data_grid_group_value__}`;he.__fv_data_grid_group_collapse__=!!p.get(Le)}return he.__fv_index__=De,he}),ie.value}function G(A){return m.clear(),b.value=A,b.value.reduce((ee,ae)=>(ee.set(ae.field,ae),ee),m),fe([],b.value)}function q(A,ee){return m.set(A,ee),b.value=Array.from(m.values()),fe([],b.value)}function le(A){return m.delete(A),b.value=Array.from(m.values()),fe([],b.value)}function Q(A,ee){return c.set(A,ee),y.value=Array.from(c.values()),fe([],Array.from(m.values()))}function me(A){return c.delete(A),y.value=Array.from(c.values()),fe([],Array.from(m.values()),!0)}function ge(){return c.clear(),y.value=[],fe([],Array.from(m.values()),!0)}function ce(A,ee){const ae=`group_of_${A}_${ee}`;p.set(ae,!0);const Ve=oe=>oe[A]!==ee;return u.set(`collapse_${A}_${ee}`,{field:A,fieldName:A,fieldType:"string",filterValue:ee,filter:Ve}),fe(Array.from(u.values()),Array.from(m.values()))}function xe(A,ee){const ae=`group_of_${A}_${ee}`;return p.set(ae,!1),u.delete(`collapse_${A}_${ee}`),fe(Array.from(u.values()),Array.from(m.values()),!0)}function L(A){const ee=A.raw[N.value],ae=Ve=>!Ve.__fv_parents__.has(ee);_.set(`fold_${ee}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(ee),filter:ae}),fe(Array.from(_.values()),Array.from(m.values())),v(ie.value)}function se(A){const ee=A[N.value];_.delete(`fold_${ee}`)}function ue(A){se(A.raw),fe(Array.from(_.values()),Array.from(m.values()),!0),v(ie.value)}function W(){const A=ke();ie.value=A,e.hierarchy&&(fe(Array.from(_.values()),Array.from(m.values())),v(ie.value))}function pe(A){var ee;if(A&&((ee=A[0])!=null&&ee.children)){const ae=Se(A);h.value=ae,j.value=ae,P.value=ae}else h.value=A,j.value=A,P.value=A;W()}function Be(A,ee,ae){return(A&&A.length?ie.value.filter((oe,Ne)=>A.reduce((Ee,he)=>Ee&&he.filter(oe),!0)):ie.value).slice(ee,ae)}function X(A){(A-1)*r.value<=re.value&&W()}function te(A){h.value.push(Re.cloneDeep(A)),ie.value=ke()}function de(A=0){if(!(A>-1))return!1;const ae=B.value();e.hierarchy?k(A,ae,h):h.value.splice(A,0,ae),W()}function Fe(A=0){if(!(A>-1&&e.hierarchy))return!1;const ae=B.value(),Ve=h.value[A];se(Ve),I(A,ae,h),W()}function Te(A){const ee=A?A-1:0;h.value.splice(ee,1),W()}function je(A){const ee=h.value.findIndex(ae=>ae[N.value]===A);ee!==-1&&(h.value.splice(ee,1),W())}function ze(A){const ee=A>-1?h.value[A]:null;if(!(ee&&ee.deletable!==!1))return!1;h.value=T(ee,h.value),W()}function qe(){const A=u.size>0?Array.from(u.values()):[];return fe(A,Array.from(m.values()))}function ot(A){be.value&&(be.value.size=A,W())}function it(A,ee){const ae=h.value[Number(A)-1];ae.editable!==!1?(ae.name=ee,W()):$e.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function at(A){return A.map(ae=>{const Ve=P.value.findIndex(oe=>oe[N.value]===ae);return Ve>-1?P.value[Ve]:null}).filter(ae=>ae!=null)}return{addFilter:Q,addNewDataItem:te,addSorter:q,changePageSizeTo:ot,collapse:ce,dataView:ie,editDataItem:it,expand:xe,filters:y,fold:L,getRange:Be,getSelectionItems:at,hasRealChildren:w,load:pe,navigatePageTo:X,summaries:ne,totalItems:re,insertNewDataItem:de,insertNewChildDataItem:Fe,removeAllFilter:ge,removeDataItem:Te,removeDataItemById:je,removeFilter:me,removeHierarchyDataItem:ze,removeSorter:le,rawView:P,refresh:qe,setSorters:G,sorters:b,updateDataView:W,unFold:ue,startIndex:_e,endIndex:ve,originalData:h}}function Jn(){function t(l){return l.field}function o(l){const s=t(l),f=localStorage.getItem(s);return f?JSON.parse(f):[]}function i(l,s){const f=t(l);localStorage.setItem(f,JSON.stringify(s))}function a(l,s){if(!s)return;const f=o(l),p=[f.find(c=>c.name===s)||{id:Date.now(),name:s,selectable:!0},...f.filter(c=>c.name!==s)];p.length>5&&(p.length=5),i(l,p)}function r(l,s){const d=[...o(l).filter(c=>c.name!==s)],p=t(l);localStorage.setItem(p,JSON.stringify(d))}return{getFilterHistory:o,removeFilterHistory:r,setFilterHistory:i,updateFilterHistory:a}}function Qn(e){n.ref(e.selection.showCheckbox||!1);const t=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),o=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),i=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.parentIdField)||"parent"}),a=n.computed(()=>e.hierarchy&&e.selection.showCheckbox),r=n.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:t,hasChildrenField:o,parentIdField:i,shouldShowCheckBox:a,shouldShowIcon:r}}function Jr(e,t,o,i){var y,b,S,C,g,F;const{idField:a}=o,r=n.ref(((b=(y=e.hierarchy)==null?void 0:y.cascadeOption)==null?void 0:b.autoCheckChildren)||!1),l=n.ref(((C=(S=e.hierarchy)==null?void 0:S.cascadeOption)==null?void 0:C.autoCheckParent)||!1),s=n.ref(((F=(g=e.hierarchy)==null?void 0:g.cascadeOption)==null?void 0:F.selectionRange)||"All");n.watch(()=>{var x;return(x=e.hierarchy)==null?void 0:x.cascadeOption},x=>{r.value=x?!!x.autoCheckChildren:!1,l.value=x?!!x.autoCheckParent:!1,s.value=x?x.selectionRange:"All"});function f(x,h){for(let V=0;V<h.length;V++)if(!x.includes(h[V]))return!1;return!0}function d(x,h){return x.filter(v=>h.indexOf(v)===-1)}const p=n.computed(()=>s.value==="OnlyParent"),c=n.computed(()=>s.value==="OnlyChildren");function u(x,h){let V=x;const v=t.value[h],w=v.raw[a.value],k=Array.from(v.raw.__fv_descendant_index__).map(B=>t.value[B]),I=k.map(B=>B.raw[a.value]),O=f(x,I),T=f(x,[w]);return T&&O&&p.value&&(V=d(x,I),k.forEach(B=>{B.disable=!0})),T&&O&&c.value&&(V=d(x,[w]),k.forEach(B=>{B.disable=!0})),V}function _(x,h){let V=x;const v=h[a.value],w=Array.from(h.__fv_children_index__).map($=>t.value[$]),k=w.map($=>$.raw[a.value]),I=f(x,k),O=f(x,[h[a.value]]);return O&&I&&p.value&&(V=d(x,k),w.forEach($=>{$.disable=!0})),O&&I&&c.value&&(V=d(x,[v]),w.forEach($=>{$.disable=!0})),V}function m(x,h){let V=x.map(I=>I[a.value]);return h.__fv_parent_index__>0&&(V=u(V,h.__fv_parent_index__)),h.__fv_children_index__.length>0&&(V=_(V,h)),x.filter(I=>V.includes(I[a.value]))}return{autoCheckChildren:r,autoCheckParent:l,interactAfterCheckHierarchyItem:m}}function Qr(e,t,o,i,a){const{select:r,unSelect:l,indeterminate:s,getSelectedItems:f}=i,{autoCheckChildren:d,autoCheckParent:p,interactAfterCheckHierarchyItem:c}=Jr(e,t,o),{idField:u}=o;function _(){return t.value.filter(h=>!!h.checked).map(h=>h.raw.__fv_index__)}function m(h,V){return h.filter(w=>V.indexOf(w)===-1)}function y(h){const V=_();h.raw.__fv_children_index__.some(w=>V.includes(w))&&!!h.checked!==!0&&s(h)}function b(h){let V=h.raw.__fv_parent_index__;for(;V!==void 0;){const v=_(),w=t.value[V],k=m(w.raw.__fv_children_index__,v);k.length===w.raw.__fv_children_index__.length&&k.length!==0?l(w):k.length===0?p.value&&r(w):k.length<w.raw.__fv_children_index__.length&&w.checked!==!0&&s(w),V=w.raw.__fv_parent_index__}}function S(h){const V=!!h.checked;d.value&&h.raw.__fv_children_index__.map(v=>t.value[v]).forEach(v=>{V?r(v):l(v)})}function C(h){S(h),b(h);const V=h.raw;let v=f();v=c(v,V),y(h),a.emit("selectionChange",v)}function g(h,V){let v=-1;if(h.raw.__fv_parent_index__>-1){const O=t.value[h.raw.__fv_parent_index__].raw.__fv_descendant_index__,T=O.length>1,N=O.findIndex(B=>B===V),$=N===O.length-1;v=T?$?O[N-1]:O[N+1]:-1}return v>-1?t.value[v]:null}function F(h){return h.raw.__fv_parent_index__>-1?t.value[h.raw.__fv_parent_index__]:null}function x(h){const V=t.value[h];if(!V)return null;const v=g(V,h),k=v!==null?v:F(V);return k?k.raw[u.value]:null}return{getNextSelectableHierarchyItemId:x,toggleSelectHierarchyItem:C}}function Zn(e,t,o,i,a,r,l,s){var Be;const{dataView:f}=t,{getVisualData:d,maxVisibleRowIndex:p,minVisibleRowIndex:c}=a,u=n.ref(i.value.primaryColumnsWidth),_=n.ref(i.value.leftColumnsWidth),m=n.ref(i.value.rightColumnsWidth),y=((Be=e.rowOption)==null?void 0:Be.height)||28,b=n.ref(0),S=n.ref(0);let C=0,g=r.value-1;const F=n.ref(0),x=n.ref(0),h=n.ref(0);function V(){if(f.value.length<=0)return 0;const X=p.value<f.value.length?f.value[p.value]:f.value[f.value.length-1];return(X.__fv_data_position__||0)+(X.__fv_data_height__||0)+Math.max(f.value.length-1-p.value,0)*y}const v=n.computed(()=>{const X=V();return f.value.length>r.value+l?Math.floor((r.value+l)/f.value.length*x.value):Math.floor(x.value/Math.max(X,x.value)*x.value)}),w=n.computed(()=>Math.floor(h.value/Math.max(u.value,h.value)*F.value)),k=0,I=0,O=n.computed(()=>F.value-(_.value+u.value+m.value+s.value));function T(X){const te=f.value.find(de=>de.__fv_data_position__>X);return te?te.__fv_index__-1:0}function N(X){var ze,qe;if(!f.value.length){o.value=[];return}const te=(ze=e.pagination)!=null&&ze.enable?0:Math.max(C-l,0),de=f.value[f.value.length-1].__fv_index__,Fe=(qe=e.pagination)!=null&&qe.enable?f.value.length-1:Math.min(g+l-1,de),Te=f.value[te-1],je=d(te,Fe,Te,X);je.length&&(o.value=[...je])}const $=n.computed(()=>V()>x.value),B=n.computed(()=>Math.floor(u.value)>h.value);function j(X){let te=b.value+X;te>k&&(te=k);const de=te>k,Fe=V(),Te=$.value;Te&&te<x.value-Fe&&(te=x.value-Fe),(!Te||de)&&(te=k),b.value!==te&&(b.value=te,C=T(Math.abs(b.value)),g=C+r.value,(C<c.value||g>p.value-l/2)&&N())}function P(X){if(!B.value){S.value=0;return}let te=S.value+X;te>I&&(te=I),te<O.value&&(te=O.value),S.value!==te&&(S.value=te)}function M(){Math.abs(S.value)+h.value>u.value&&(S.value=Math.min(h.value-u.value,0))}function D(){b.value=0,C=0,g=r.value-1,N()}n.watch(h,()=>{P(0)}),n.watch(i,()=>{u.value=i.value.primaryColumnsWidth,_.value=i.value.leftColumnsWidth,m.value=i.value.rightColumnsWidth});function H(X){let{deltaX:te}=X.deltaX,de=-1*X.deltaY;return typeof te>"u"&&(te=-1*X.wheelDeltaX/6),typeof de>"u"&&(de=X.wheelDeltaY/6),X.deltaMode&&X.deltaMode===1&&(te*=10,de*=10),X.shiftKey?{deltaY:-de,deltaX:-te}:{deltaX:te,deltaY:de}}function ne(X){X.preventDefault(),X.stopPropagation();const{deltaX:te,deltaY:de}=H(X);j(de),P(te)}const re=n.computed(()=>({height:`${f.value.length*y}px`,width:`${_.value}px`,transform:`translateY(${b.value}px)`})),be=n.computed(()=>({transform:`translateY(${b.value}px)`})),$e=n.computed(()=>({height:`${f.value.length*y}px`,width:`${u.value}px`,transform:`translate(${S.value}px, ${b.value}px)`})),_e=n.computed(()=>({transform:`translate(${S.value}px, ${b.value}px)`})),ve=n.computed(()=>({height:`${f.value.length*y}px`,width:`${m.value}px`,transform:`translateY(${b.value}px)`})),Se=n.computed(()=>({transform:`translateY(${b.value}px)`})),ke=n.computed(()=>({height:`${f.value.length*y}px`,width:`${s.value}px`,transform:`translateY(${b.value}px)`})),ie=n.computed(()=>({width:`${_.value}px`})),fe=n.computed(()=>({transform:`translateX(${S.value}px)`})),G=n.computed(()=>({width:`${m.value}px`})),q=n.computed(()=>{const X=V();return b.value/(x.value-X)*(x.value-v.value)}),le=n.computed(()=>({height:`${v.value}px`,top:`${q.value}px`})),Q=n.computed(()=>S.value/O.value*(F.value-w.value)),me=n.computed(()=>({width:`${w.value}px`,left:`${Q.value}px`})),ge=n.ref(!1),ce=n.ref(-1),xe=n.ref(-1),L=n.ref();function se(X){if(ge.value&&xe.value!==-1){const te=xe.value-X.pageX,de=F.value-w.value;if(Math.abs(te)<=de){const Fe=te/(h.value-w.value)*(u.value-h.value);P(Fe),xe.value=X.pageX}}}function ue(X){if(ge.value&&ce.value!==-1){const te=ce.value-X.pageY,de=V(),Fe=de-v.value;if(Math.abs(te)<=Fe){const Te=te/(x.value-v.value)*(de-x.value);j(Te),ce.value=X.pageY}}}function W(X){ge.value=!1,ce.value=-1,xe.value=-1,document.removeEventListener("mouseup",W),document.removeEventListener("mousemove",se),document.removeEventListener("mousemove",ue),document.body.style.userSelect="",L.value&&(L.value.style.opacity=null)}function pe(X,te,de){var je;ge.value=!0;const Fe=(je=X.target)==null?void 0:je.parentElement;Fe&&(Fe.style.opacity=1,L.value=Fe);const Te=de==="horizontal"?se:ue;de==="vertical"&&(ce.value=X.pageY),de==="horizontal"&&(xe.value=X.pageX),te.value&&(te.value,document.addEventListener("mousemove",Te),document.addEventListener("mouseup",W),document.body.style.userSelect="none")}return{onMouseDownScrollThumb:pe,onWheel:ne,dataGridWidth:F,gridDataStyle:$e,gridHeaderColumnsStyle:fe,gridMergedDataStyle:_e,gridSideStyle:ke,fitHorizontalScroll:M,viewPortWidth:h,viewPortHeight:x,horizontalScrollThumbStyle:me,leftFixedGridDataStyle:re,leftFixedGridHeaderColumnsStyle:ie,leftFixedGridMergedDataStyle:be,reCalculateVisualDataRows:N,resetScroll:D,rightFixedGridDataStyle:ve,rightFixedGridHeaderColumnsStyle:G,rightFixedGridMergedDataStyle:Se,shouldShowHorizontalScrollbar:B,shouldShowVirticalScrollbar:$,verticalScrollThumbStyle:le,offsetX:S,offsetY:b}}function eo(e,t,o,i,a,r,l,s){const f=n.ref(i.value-1+a),d=n.ref(0),{renderDataRow:p}=r,c=l?l.renderGroupRow:p,u=s?s.renderSummaryRow:p;function _(b){let S=p;return b.__fv_data_grid_group_row__&&(S=c),b.__fv_data_grid_group_summary__&&(S=u),S}function m(b,S,C,g){const{dataView:F}=o,x=[];if(F.value.length>0){const h=g?Date.now().toString():"";for(let V=b,v=0;V<=S;V++,v++){const w=F.value[V],k=F.value[V-1]||C,I=x[v-1],O=k?(k.__fv_data_position__||0)+(k.__fv_data_height__||0):0,N=_(w)(w,k,I,V,O,t.value);N.refreshKey=h,x.push(N)}}return d.value=x.length>0?x[0].index:0,f.value=x.length>0?x[x.length-1].index:0,x}function y(b,S,C){const g=S.groupField||"",{groupValue:F}=S;o[b](g,F);const{dataView:x}=o,h=C[0].index,V=Math.min(h+i.value+a+1,x.value.length-1);return m(h,V)}return{getVisualData:m,maxVisibleRowIndex:f,minVisibleRowIndex:d,toggleGroupRow:y}}function Zr(){function e(t,o){var r,l;const i=o.raw[t.field],a=(r=t.editor)==null?void 0:r.enumData.find(s=>{var f;return s[(f=t.editor)==null?void 0:f.idField]===i});return a==null?void 0:a[((l=t.editor)==null?void 0:l.textField)||"name"]}return{renderEnumColumn:e}}function el(){function e(i,a){return i?n.createVNode("span",{innerHTML:a.formatter.trueText},null):n.createVNode("span",{innerHTML:a.formatter.falseText},null)}function t(i,a){var r,l;return i?(r=a.formatter)==null?void 0:r.trueText:(l=a.formatter)==null?void 0:l.falseText}function o(i,a){const{formatter:r}=i,l=a.raw[i.field];if(r.type===Lt.TEXT)return t(l,i);if(r.type===Lt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function tl(){const{formatTo:e}=Xe.useDateFormat();function t(i,a){return e(i,a.formatter.dateFormat)}function o(i,a){const r=a.raw[i.field];return t(r,i)}return{renderDateColumn:o}}function nl(){const{formatTo:e}=Xe.useNumberFormat();function t(i,a){const{formatter:r}=a,l={precision:r.precision,prefix:r.prefix||"",suffix:r.suffix||"",decimalSeparator:r.decimal||".",groupSeparator:r.thousand||""};return e(i,l)}function o(i,a){const r=a.raw[i.field];return t(r,i)}return{renderNumberColumn:o}}function ol(){const{renderBooleanColumn:e}=el(),{renderEnumColumn:t}=Zr(),{renderNumberColumn:o}=nl(),{renderDateColumn:i}=tl();function a(s){return s}function r(s,f){const{formatter:d}=f;return d.customFormat?new Function(`return ${d.customFormat}`)():s}function l(s,f,d){const p=d.data[f.field],{formatter:c}=f;return c.type==="none"?p:c.type==="custom"?r(p,f):c.type==="enum"?t(f,d):c.type==="number"?o(f,d):c.type==="boolean"?e(f,d):c.type==="date"?i(f,d):p}return{renderFormatColumn:l}}function to(e,t,o){var y;const i=n.ref(e.mergeCell),r=((y=n.ref(e.rowOption).value)==null?void 0:y.wrapContent)||!1,{updateVisualInfomation:l}=o,{renderCommandColumn:s}=Da(),{renderFormatColumn:f}=ol();function d(b,S,C,g,F,x=1){const h={colSpan:x,rowSpan:1,index:C,field:b,data:g[b],editingData:g[b],parent:F,mode:S,getEditor:V=>V.data,setRef:V=>l(V,h,g),update:()=>{},accept:()=>{},cancel:()=>{}};return h}function p(b,S,C){return b.getEditor=g=>t.getEditor(g,S,g.parent),b.setRef=g=>r&&l(g,b,C),b.update=g=>{g!==void 0&&(b.editingData=g)},b.accept=()=>{C[S.field]=b.editingData,b.data=C[S.field]},b.cancel=()=>{b.editingData=b.data},b}function c(b,S){S.dataType==="commands"?b.formatter=(C,g)=>s(S,g):S.formatter&&(b.formatter=(C,g)=>typeof S.formatter=="function"?S.formatter(C,g):f(S.dataType,S,g))}function u(b,S,C){const g=S&&S.data[C];if(g&&g.data===b.data){const x=g&&g.spannedBy||g;x.rowSpan++,x.spanned=x.spanned||[],x.spanned.push(b),b.colSpan=0,b.rowSpan=0,b.spannedBy=x}}function _(b,S,C){i.value&&u(b,S,C.field)}function m(b,S,C,g,F){const x=b.readonly?Me.readonly:Me.editable,h=d(b.field,x,S,C,g);return p(h,b,C),c(h,b),_(h,F,b),h}return{createCellByColumn:m,createCellByField:d}}function no(e,t,o,i,a,r){var S,C;const l=n.ref(e.rowOption),s=((S=l.value)==null?void 0:S.height)||28,f=((C=l.value)==null?void 0:C.wrapContent)||!1,{idField:d}=i,{collapseField:p}=o,{updateRowPosition:c}=a,{createCellByColumn:u}=r;function _(g,F,x,h,V,v){var ne,re;const{__fv_data_grid_group_field__:w,__fv_data_grid_group_value__:k,__fv_data_index__:I}=x,O=x.__fv_data_grid_group_layer__||x.__fv_parents__?(ne=x.__fv_parents__)==null?void 0:ne.size:0,T=typeof x.parent=="number"?Number(x.parent):-1,N=x.__fv_data_grid_group_collapse__||x[p.value],$=x.__fv_visible__===void 0?!0:x.__fv_visible__,B=x.__fv_checked__,j=x.__fv_indeterminate__,P=h&&h[d.value]===x.parent,M=h&&h.parent===x.parent,D=P&&V&&(V.collapse||!V.visible)||M&&V&&!V.visible,H={collapse:N,data:{},dataIndex:I,groupField:w,groupValue:k,layer:O,index:F,parentIndex:T,pre:h,top:v,type:g,raw:x,checked:B,disabled:x.disabled,indeterminate:j,setRef:be=>{H.ref=be},visible:$&&!D,status:We.initial};return h||(x.__fv_data_position__=0),f||(H.height=s,x.__fv_data_height__=H.height,c(H,x)),(re=l.value)!=null&&re.customRowStatus&&(l.value.customRowStatus(H),x.__fv_collapse__=H.collapse,x.__fv_visible__=H.visible),H}function m(g,F,x,h,V,v){const w=_(et.data,V,F,x,h,v);return g.forEach((k,I)=>{w.data[k.field]=u(k,V,F,w,h)}),w}function y(g,F,x,h,V){return Object.assign(g,{index:F,dataIndex:x,top:h,pre:V})}function b(g,F,x,h,V,v){const w=g.__fv_data_index__,k=g[d.value],I=t.getEditingSnapshot(k);return I===null?m(v,g,F,x,h,V):y(I,h,w,V,x)}return{createEmptyRow:_,createNewRowFromDataItem:m,renderDataRow:b}}function il(e,t,o,i){const a=n.ref(e.summary),{idField:r}=t,{createCellByField:l}=o,{createEmptyRow:s}=i,f=n.computed(()=>{const u=a.value;return(u==null?void 0:u.groupFields)||[]}),d=n.computed(()=>{const u=a.value;return u&&u.enable&&u.groupFields&&u.groupFields.length>0});function p(u,_,m,y){if(d.value){const b=u.data[_];let S=b.colSpan;const C=f.value.reduce((g,F)=>(g.set(F,!0),g),new Map);y.reduce((g,F,x)=>{if(C.has(F.field)){const h=l(F.field,Me.readonly,x,m,u);u.data[F.field]=h,S-1>x&&(S=x)}return g},u),b.colSpan=S}}function c(u,_,m,y,b,S){const C=u.__fv_data_grid_group_field__,g=s(et.group,y,u,_,m,b);return g.data[r.value]=l(r.value,Me.readonly,-1,u,g,0),g.data[C]=l(C,Me.readonly,1,u,g,S.length),p(g,C,u,S),g}return{renderGroupRow:c}}function al(e,t,o,i){const{idField:a}=t,{createCellByField:r}=o,{createEmptyRow:l}=i;function s(f,d,p,c,u,_){const m=f.__fv_data_grid_group_field__,y=l(et.summary,c,f,d,p,u);return y.data[a.value]=r(a.value,Me.readonly,-1,f,y),y.data[m]=r(m,Me.readonly,1,f,y,_.length),y}return{renderSummaryRow:s}}function oo(e,t,o){var V;const{idField:i}=o,a=n.ref(e.editable),r=n.ref(e.editOption),l=n.ref(((V=e.rowOption)==null?void 0:V.wrapContent)||!1);n.watch(()=>e.editable,()=>{a.value=e.editable}),n.watch(()=>{var v;return(v=e.editOption)==null?void 0:v.editMode},v=>{r.value.editMode=v});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 f,d,p,c;function u(v){return d&&d.raw[i.value]===v?d:null}function _(v,w,k){v.mode=Me.editing,f=v,d=w,p=w.raw[v.field],c=k}function m(v){v.accept(),v.mode=Me.editable,t.emit("endEditCell",{cell:v,row:d,newValue:d==null?void 0:d.raw[v.field],oldValue:p,column:c})}function y(v){f&&(m(f),d&&(d=null)),document.body.removeEventListener("click",y)}function b(v,w,k,I){a.value&&r.value.editMode==="cell"&&w.mode===Me.editable&&(f&&m(f),_(w,k,I),document.body.removeEventListener("click",y),document.body.addEventListener("click",y))}function S(v){Object.values(v.data).filter(w=>w.mode===Me.editable&&w.field!=="__commands__").forEach(w=>{w.mode=Me.editing}),v.status=We.editing,d=v}function C(v,w){Object.values(v.data).filter(k=>k.mode===Me.editing).forEach(k=>{w?k.accept():k.cancel(),k.mode=Me.editable}),v.status=We.initial,d===v&&(d=null)}function g(v){a.value&&r.value.editMode==="row"&&d!==v&&(d&&C(d,!1),S(v))}function F(v){C(v,!0),v.status=We.initial}function x(v){C(v,!1),v.status=We.initial}function h(v,w,k){const I=w.dataType,O=w.editor||{type:s.get(I)||"input-group"};return!l.value&&O.type==="text"&&(O.type="input-group"),O?n.createVNode(It.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:O,modelValue:v.editingData,"onUpdate:modelValue":T=>v.editingData=T},null):v.data}return{onClickCell:b,onEditingRow:g,acceptEditingRow:F,cancelEditingRow:x,getEditingSnapshot:u,getEditor:h}}function io(e){const t=n.ref(e.idField);function o(i){if(i&&i.length){const a=i[0];Object.keys(a).includes(t.value)||(t.value="__fv_indetify__")}}return{idField:t,reviseIdentifyField:o}}function rl(e,t,o,i,a,r){const{addNewDataItemAtLast:l}=o,{columnContext:s}=i,{onClickCell:f}=a;function d(m,y){const b=s.value.primaryColumns.findIndex(V=>V.field===m.field),S=m.parent,C=S.index,g=s.value.primaryColumns.length-1,F=r.value.length-1,x=b===g,h=C===F;if(b>-1&&!x){const V=s.value.primaryColumns[b+1],v=S.data[V.field];f(y,v)}if(x&&!h){const v=r.value[C+1].data[s.value.primaryColumns[0].field];f(y,v)}if(x&&h){if(e.appendOnEnterAtLastCell){l();const v=r.value[C+1].data[s.value.primaryColumns[0].field];f(y,v)}t.emit("enterUpInLastCell")}}function p(m,y){const b=s.value.primaryColumns.findIndex(F=>F.field===m.field),S=m.parent,C=s.value.primaryColumns.length-1;if(b>0&&b<=C){const F=s.value.primaryColumns[b-1],x=S.data[F.field];f(y,x)}}function c(m,y){const b=m.field,C=m.parent.index,g=r.value.length-1;if(C>-1&&C<g){const h=r.value[C+1].data[b];f(y,h)}}function u(m,y){const b=m.field,C=m.parent.index,g=r.value.length-1;if(C>0&&C<=g){const h=r.value[C-1].data[b];f(y,h)}}function _(m,y){const{key:b,shiftKey:S}=m;if(b==="Enter"&&!S){d(y,m);return}if(S&&b==="Enter"){p(y,m);return}if(b==="ArrowDown"){c(y,m);return}b==="ArrowUp"&&u(y,m)}return{navigateOnKeyUp:_}}function ao(e,t,o,i){const{idField:a}=i,{currentSelectedDataId:r,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:f,selectedValues:d,toggleSelectItem:p,enableSelectRow:c}=o,u=n.ref(0),_=n.ref(-1);function m(h){return c.value&&(s.value?d.value.includes(h.raw[a.value]):h.raw[a.value]===r.value)}function y(h){var v;const V={"fv-grid-row":h.type===et.data,"fv-grid-group-row":h.type===et.group,"fv-grid-summary-row":h.type===et.summary,"fv-grid-row-hover":h.index===_.value,"fv-grid-row-selected":m(h),"fv-grid-row-odd":h.dataIndex%2>0,"fv-grid-row-even":h.dataIndex%2===0,"fv-grid-disabled":h.disabled};if((v=e.rowOption)!=null&&v.customRowStyle){const w=e.rowOption.customRowStyle(h.raw)||{};return Object.assign({},V,w)}return V}function b(h){var v;const V={"fv-grid-cell":!0};if((v=e.rowOption)!=null&&v.customCellStyle){const w=e.rowOption.customCellStyle(h)||{};return Object.assign({},V,w)}return V}function S(h){u.value+=1,setTimeout(()=>{u.value===1&&t.emit("ClickRow",h.index,h.raw),u.value=0},250),u.value>1&&(t.emit("doubleClickRow",h.index,h.raw),console.log(`on double click row: ${h.index}`),u.value=0)}function C(h,V){if(V.disabled)return;s.value&&h.shiftKey||l.value?p(V):f(V),S(V),h.stopPropagation()}function g(h,V){}function F(h,V){}function x(h){var v;const V={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":h.index===_.value,"fv-grid-sidebar-row-selected":m(h),"fv-grid-sidebar-row-odd":h.dataIndex%2>0,"fv-grid-sidebar-row-even":h.dataIndex%2===0};if((v=e.rowOption)!=null&&v.customRowStyle){const w=e.rowOption.customRowStyle(h.raw)||{};return Object.assign({},V,w)}return V}return{gridCellClass:b,gridRowClass:y,onClickRow:C,onMouseoverRow:g,sidebarRowClass:x,onMouseoutRow:F}}function ro(e,t,o,i,a){const{idField:r}=o,l=n.ref(""),s=n.computed(()=>e.selection.enableSelectRow),f=n.ref(e.selection.multiSelect??!1),d=n.ref(e.selection.multiSelectMode),p=n.ref(e.selection.showCheckbox),c=n.ref(e.selection.showSelectAll),u=n.ref(e.selectionValues);n.watch(()=>e.selection.showSelectAll,(M,D)=>{M!==D&&(c.value=M)});function _(){return t.getSelectionItems(u.value)}function m(){const M=i.value.reduce((H,ne)=>(H.set(ne.raw[r.value],ne),H),new Map);return u.value.map(H=>M.get(H)).filter(H=>!!H)}const y=n.computed(()=>s.value&&f.value),b=n.computed(()=>!!e.hierarchy),S=n.computed(()=>{const M=p.value&&d.value==="DependOnCheck";return y.value&&M}),C=n.computed(()=>y.value&&!p.value),g=n.computed(()=>y.value&&p.value&&d.value==="OnCheckAndClick");n.computed(()=>g.value);function F(){const M=t.getSelectionItems(u.value);a.emit("selectionChange",M)}function x(){i.value.forEach(D=>{D.checked=!1,D.indeterminate=!1,D.raw.__fv_checked__=!1,D.raw.__fv_indeterminate__=!1}),m().forEach(D=>{D.checked=!0,D.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{x()}),n.watch(()=>e.selectionValues,M=>{u.value=M,x()},{immediate:!0}),n.watch(()=>e.selection,M=>{f.value=!!M.multiSelect,d.value=M.multiSelectMode||"DependOnCheck",p.value=!!M.showCheckbox});const h=n.computed(()=>!f.value);function V(M){return M.raw[r.value]||""}function v(M){return u.value.findIndex(H=>H===V(M))}function w(){m().forEach(H=>{H.checked=!1}),t.getSelectionItems(u.value).forEach(H=>{H.__fv_checked__=!1}),u.value=[],l.value=""}function k(M){const D=M.raw;D.__fv_checked__=!0,D.__fv_indeterminate__=!1;const H=new Set(u.value);H.add(D[r.value]),u.value=Array.from(H.values()),M.checked=!0,M.indeterminate=!1,l.value=M.raw[r.value]}function I(M){const D=M.raw;D.__fv_checked__=!1,D.__fv_indeterminate__=!1,u.value=u.value.filter(H=>H!==D[r.value]),M.checked=!1,M.indeterminate=!1,l.value=""}function O(M){const D=M.raw;D.__fv_checked__=!1,D.__fv_indeterminate__=!0,u.value=u.value.filter(H=>H!==D[r.value]),M.checked=!1,M.indeterminate=!0}function T(M){h.value&&w(),M.checked?I(M):k(M),F()}function N(M){M.raw[r.value]!==l.value&&(w(),k(M),F())}function $(M){const D=i.value.find(H=>H.raw[r.value]===M);D&&N(D)}function B(){i.value.forEach(M=>k(M)),l.value="",F()}function j(){u.value.splice(0,u.value.length),l.value="",i.value.forEach(M=>{const D=M.raw;D.__fv_checked__=!1,D.__fv_indeterminate__=!1,M.checked=!1,M.indeterminate=!1}),F()}function P(){return i.value.find(M=>M.raw[r.value]===l.value)}return{clearSelection:w,currentSelectedDataId:l,enableMultiSelect:f,enableSelectRow:s,findIndexInSelectedItems:v,getSelectedItems:_,getSelectionRow:P,indeterminate:O,isSelectingHirarchyItem:b,multiSelectMode:d,multiSelectOnClickRow:g,multiSelectOnClickRowWithShift:C,multiSelectOnlyOnCheck:S,select:k,selectAll:B,selectedValues:u,selectItem:N,selectItemById:$,showCheckBox:p,showSelectAll:c,toggleSelectItem:T,unSelect:I,unSelectAll:j}}function lo(e,t){var b,S;const o=String(Date.now()),i=50,{showCheckBox:a,showSelectAll:r}=t,l=n.ref(((b=e.rowNumber)==null?void 0:b.enable)??!1),s=n.computed(()=>e.hierarchy&&a.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:a.value),f=n.ref(l.value?((S=e.rowNumber)==null?void 0:S.width)??32:0),d=n.ref(s.value?i:0),p=n.computed(()=>{var C;return l.value?((C=e.rowNumber)==null?void 0:C.heading)??"序号":""}),c=n.computed(()=>(s.value&&!e.hierarchy?Number(d.value):0)+(l.value?Number(f.value):0));n.watch(()=>e.rowNumber,C=>{C&&C.enable!==void 0&&(l.value=C.enable),C&&C.width!==void 0&&(f.value=C.width)});function u(C){return{top:`${C.top}px`,width:`${c.value}px`,height:`${C.height||""}px`}}const _=n.computed(()=>({width:`${c.value}px`}));function m(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}function y(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:u,sidebarCornerCellStyle:_,sidebarTitle:p,sidebarWidth:c,rowKey:y,cellKey:m}}const ll={ascend:(e,t)=>e===t?0:e===!1?-1:1,decend:(e,t)=>e===t?0:e===!0?-1:1},sl={ascend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?-1:1},decend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?1:-1}},cl={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1},dl={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1};function so(e){const t=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",ll],["datetime-sorter",sl],["numeric-sorter",cl],["text-sorter",dl]]);function i(l){const s=(l==null?void 0:l.dataType)||"string",f=t.get(s)||"text-sorter";return o.get(f)||(l==null?void 0:l.sorter)}function a(l){return i(l.column)}function r(l,s){const f=a(l),d=(l.status&Pe.sortable)===Pe.sortable&&(l.status&Pe.sorted)===Pe.sorted,p=(l.status&Pe.ascending)===Pe.ascending,c=(l.status&Pe.descending)===Pe.descending;if(d&&f){const u=p?f.ascend:c?f.decend:void 0;u?s.addSorter(l.field,{field:l.field,compare:u}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:i,updateSorter:r}}function ul(e){function t(i){return{}}function o(i,a){const r=e.value.primaryColumnsMap.get(i.field)||e.value.leftColumnsMap.get(i.field)||e.value.rightColumnsMap.get(i.field)||{valign:"middle",align:"center"},{valign:l,align:s}=r;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:t,cellContentClass:o}}function tt(e){return typeof e>"u"}function co(e){var c,u,_,m,y,b,S,C;const t=n.ref((c=e.pagination)==null?void 0:c.enable),o=n.ref(((u=e.pagination)==null?void 0:u.index)||1),i=n.ref((_=e.pagination)==null?void 0:_.size),a=n.ref((m=e.pagination)==null?void 0:m.sizeLimits),r=n.ref((y=e.pagination)==null?void 0:y.mode),l=n.ref((b=e.pagination)==null?void 0:b.showIndex),s=n.ref((S=e.pagination)==null?void 0:S.showLimits),f=n.ref(((C=e.pagination)==null?void 0:C.total)||0),d=n.computed(()=>r.value==="server"?f.value||0:f.value||e.data.length||0);return n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.sizeLimits},(g,F)=>{a.value=g},{immediate:!0,deep:!0}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.showIndex},(g,F)=>{g!==F&&(l.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.showLimits},(g,F)=>{g!==F&&(s.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.total},(g,F)=>{g!==F&&(f.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.enable},(g,F)=>{g!==F&&(t.value=g)}),{currentPage:o,pageSize:i,pageList:a,total:d,shouldRenderPagination:t,showPageIndex:l,showPageList:s,mode:r,updatePagination:g=>{if(!g)return;const{enable:F,total:x,size:h,index:V,sizeLimits:v,showIndex:w,showLimits:k}=g;tt(F)||(t.value=F),tt(V)||(o.value=V),tt(h)||(i.value=h),tt(v)||(a.value=v),tt(w)||(l.value=w),tt(k)||(s.value=k),tt(x)||(f.value=x)}}}function fl(e){const t="parent",o="layer",i="hasChildren",a=(r,l=1,s=[],f=null)=>(r=r||[],r.reduce((d,p)=>(p.id=p.id||p.data[e.idField],p.data[t]=f,p.data[o]=l,p.data[i]=!1,d.push(p.data),p.children&&p.children.length&&(p.data[i]=!0,a(p.children,l+1,s,p.id)),d),s),s);return{flatTreeData:a}}function uo(e,t,o,i,a,r,l,s,f,d,p,c,u,_,m,y){const{calculateCellPositionInRow:b}=r,{columnContext:S,hasLeftFixedColumn:C,hasRightFixedColumn:g}=l,{gridDataStyle:F,leftFixedGridDataStyle:x,rightFixedGridDataStyle:h}=_,{renderDataRow:V}=Ma(e,t,S,y,s,f,d,p,c,u),v=[V];function w(N,$){const B=b(N);return y.value.filter(j=>j.visible!==!1).map(j=>v[j.type](j,B,$))}function k(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:x.value},[w(S.value.leftColumns.filter(N=>N.visible),"left")])])}function I(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:F.value},[w(S.value.primaryColumns.filter(N=>N.visible),"primary")])])}function O(){return n.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:h.value},[w(S.value.rightColumns.filter(N=>N.visible),"right")])])}function T(){const N=[];return C.value&&N.push(k()),N.push(I()),g.value&&N.push(O()),N}return{renderDataArea:T}}const lt=n.defineComponent({name:"FTreeGrid",props:Et,emits:["selectionChange"],setup(e,t){var Ve;const a=n.ref(),r=n.ref(),l=n.ref(),s=n.ref(),f=n.ref(),d=n.ref([]),p=n.ref(!1),c=n.ref(((Ve=e.rowOption)==null?void 0:Ve.wrapContent)||!1),{showLoading:u,renderLoading:_}=R.useLoading(e,a),m=R.useIdentify(e),y=R.useGroupData(e,m),b=R.useFilter(),S=R.useHierarchy(e),C=R.usePagination(e),g=R.useDataView(e,new Map,S,m,C),F=R.useSelection(e,g,m,d,t),x=R.useSelectHierarchyItem(e,d,m,F,t),h=n.computed(()=>e.disable),V=n.computed(()=>Math.min(g.dataView.value.length,100)),{containerStyleObject:v}=R.useDataViewContainerStyle(e),w=R.useCommandColumn(e),k=n.ref(e.columns),{applyCommands:I}=w;I(k);const O=R.useColumn(e),T=R.useSort(e),{applyColumnSorter:N,columnContext:$,updateColumnRenderContext:B}=O;N(g,T);const j=R.useGroupColumn(e,$),P=R.useEdit(e,t,m),M=R.useVisualDataBound(),D=R.useVisualDataCell(e,P,M),H=R.useVisualDataRow(e,P,S,m,M,D),ne=R.useVisualData(e,k,g,V,0,H),{getVisualData:re}=ne,be=R.useCellPosition(e,$),$e=R.useSidebar(e,F),{sidebarWidth:_e}=$e;d.value=re(0,V.value+0-1);const ve=R.useVirtualScroll(e,g,d,$,ne,V,0,_e),{onWheel:Se,dataGridWidth:ke,viewPortHeight:ie,viewPortWidth:fe}=ve,G=R.useFitColumn(e,$,r,fe,j),{calculateColumnsSize:q}=G,le=R.useFilterHistory(),Q=R.useColumnFilter(r,f,g,le,ve),me=R.useRow(e,t,F,m),ge=R.useDragColumn(e,t,O,g,j,y,ve),ce=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),xe=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":c.value})),{renderDataArea:L}=uo(e,t,l,s,f,be,O,g,P,S,me,F,x,ve,ne,d),{renderGridHeader:se,renderGridColumnResizeOverlay:ue}=R.getColumnHeader(e,r,s,f,O,g,ge,Q,b,le,G,j,F,$e,T,ve,fe,d),{renderDataGridSidebar:W}=R.getSidebar(e,me,F,$e,ve),{renderDisableMask:pe}=R.getDisableMask(),{renderHorizontalScrollbar:Be}=R.getHorizontalScrollbar(e,r,ve),{renderVerticalScrollbar:X}=R.getVerticalScrollbar(e,r,ve);function te(){var oe,Ne;ie.value=((oe=l.value)==null?void 0:oe.clientHeight)||0,ke.value=((Ne=r.value)==null?void 0:Ne.clientWidth)||0,q()}n.onMounted(()=>{r.value&&(St.useResizeObserver(r.value,te),q(),n.nextTick(()=>{r.value&&(ke.value=r.value.clientWidth),l.value&&(fe.value=l.value.clientWidth,ie.value=l.value.clientHeight)})),u.value&&_()}),n.onUnmounted(()=>{}),n.watch(fe,()=>{r.value&&q()});function de(){const oe=F.getSelectionRow();return oe?oe.dataIndex-1:-1}function Fe(){const oe=de();g.insertNewDataItem(oe),d.value=re(0,V.value+0-1)}function Te(){const oe=de();g.insertNewChildDataItem(oe),d.value=re(0,V.value+0-1)}function je(){const oe=de(),Ne=x.getNextSelectableHierarchyItemId(oe);g.removeHierarchyDataItem(oe),d.value=re(0,V.value+0-1),Ne&&F.selectItemById(Ne)}function ze(oe){P.onEditingRow(oe)}function qe(oe){P.acceptEditingRow(oe)}function ot(oe){P.cancelEditingRow(oe)}function it(oe){oe&&(k.value=oe,I(k),B(k.value),N(g,T),q())}function at(oe){oe&&(g.load(oe),d.value=re(0,V.value+0-1))}function Je(oe){F.selectItemById(oe)}function A(){return F.getSelectedItems()}const ee=n.computed(()=>!d.value||!d.value.length),{renderEmpty:ae}=R.getEmpty(t);return t.expose({addNewDataItem:Fe,addNewChildDataItem:Te,removeDataItem:je,editDataItem:ze,acceptDataItem:qe,cancelDataItem:ot,updateColumns:it,updateDataSource:at,selectItemById:Je,getSelectedItems:A}),()=>n.createVNode("div",{ref:a,class:ce.value,style:v.value,onWheel:Se},[se(),ee.value&&ae(),n.createVNode("div",{ref:r,class:xe.value,onMouseover:()=>{},onMouseleave:()=>{}},[W(d),L(),Be(),X()]),ue(),h.value&&pe()])}}),pl={$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"]},ml=new Map([["appearance",Ge]]);function gl(e,t,o){return t}const fo={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}};Ie(fo,pl,ml,gl);const hl=n.defineComponent({name:"FCheckBox",props:fo,emits:["change","changeValue","update:modelValue","update:checked"],setup(e,t){const o=n.inject(Xe.CHECKBOX_CONTEXT,null),{buttonClass:i,disabled:a,name:r,shouldRenderButton:l,shouldRenderNative:s,shouldRenderTag:f,tagClass:d,checked:p,onClickCheckBox:c}=Xe.useCheck(e,t,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);n.ref();const u=n.ref(e.id),_=n.ref(e.customClass),m=n.ref(e.modelValue),y=n.ref(e.indeterminate);return n.computed(()=>{const b={"custom-control":!0,"custom-checkbox":!0};return _.value&&_.value.split(" ").reduce((S,C)=>(S[C]=!0,S),b),b}),n.watch(()=>e.modelValue,b=>{m.value=b}),n.watch(()=>e.indeterminate,b=>{y.value=b}),n.onMounted(()=>{}),()=>{var b,S,C,g,F,x;return n.createVNode(n.Fragment,null,[l.value&&n.createVNode("div",{class:i.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:c},[(S=(b=t.slots).default)==null?void 0:S.call(b)]),f.value&&n.createVNode("div",{class:d.value,onClick:c},[n.createVNode("div",{class:"title"},[(g=(C=t.slots).default)==null?void 0:g.call(C)]),n.createVNode("div",{class:"tip"},null),n.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),s.value&&n.createVNode("div",{class:"custom-control custom-checkbox",onClick:c},[n.createVNode("input",{type:"checkbox",class:"custom-control-input",name:r.value,id:u,value:e.value,checked:p.value,disabled:a.value},null),n.createVNode("div",{class:"custom-control-label"},[(x=(F=t.slots).default)==null?void 0:x.call(F)])])])}}}),yl={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}},vl={id:{type:String}},bl=n.defineComponent({name:"FDesignerPlaceholder",props:vl,emits:[],setup(e){const t=n.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=n.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()=>n.createVNode("div",{class:t.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[n.createTextVNode("拖拽组件到这里")])}});function Cl(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Kt=n.defineComponent({name:"FDesignerItem",props:yl,emits:["selectionChange"],setup(e,t){const o=n.ref(`${e.modelValue.id}-component`),i=n.ref(e.canMove),a=n.ref(e.canDelete),r=n.ref(!1),l=n.ref(e.modelValue),s=n.ref(e.componentId||""),f=n.ref(""),d=n.ref(""),p=n.ref(e.customClass),c=n.ref(),u=n.inject("canvas-dragula"),_=n.ref(),m=n.inject("design-item-context"),y={designerItemElementRef:c,componentInstance:_,schema:l.value,parent:m,setupContext:t};n.provide("design-item-context",y);const b=n.inject("useFormSchema"),S=n.computed(()=>{const N=e.modelValue.appearance&&e.modelValue.appearance.class||"";let $={"farris-component":!0,"flex-fill":l.value.id=="root-component","position-relative":i.value&&a.value,"farris-nested":r.value,"can-move":i.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return $[`farris-component-${l.value.type}`]=!0,$=Xe.getCustomClass($,N),$=Xe.getCustomClass($,d.value),$=Xe.getCustomClass($,p.value),$}),C=n.computed(()=>{const N={},$=e.modelValue.appearance&&e.modelValue.appearance.style||"";return $&&$.split(";").reduce((B,j)=>{const[P,M]=j.split(":");return B[P]=M,B},N),f.value&&f.value.split(";").reduce((B,j)=>{const[P,M]=j.split(":");return P&&(B[P]=M),B},N),N});function g(N,$){var P,M,D;if(N&&(N.preventDefault(),N.stopPropagation()),_.value.triggerBelongedComponentToDeleteWhenDeleted){const H=_.value.getBelongedComponentInstance(_);if(H&&H.parent){const ne=n.ref(H==null?void 0:H.parent),re=ne.value.contents.findIndex(be=>be.id===H.schema.id);(M=(P=ne.value)==null?void 0:P.contents)==null||M.splice(re,1),(D=ne.value)==null||D.updateDragAndDropRules(),Ft.value++}return}let B=m,j=H=>H.id===$.id;if($.type==="component"&&(B=m==null?void 0:m.parent,j=H=>H.component===$.id),B&&B.schema.contents){const H=B.schema.contents.findIndex(j);B.schema.contents.splice(H,1),B.componentInstance.value.updateDragAndDropRules(),Ft.value++,t.emit("selectionChange")}}function F(N){return a.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:$=>{g($,N)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function x(){return i.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[n.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(N=>n.createVNode("div",{role:"button",class:`btn component-settings-button ${N.class||""}`,title:N.title,ref:N.id},[n.createVNode("i",{class:N.icon},null)]))}function V(N){return n.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[n.createVNode("div",null,[F(N),x(),h()])])}function v(N,$,B,j){t.emit("selectionChange",N,$,B,j)}function w(N){let $;const B=N.type,j=jr[B],P=Pr[B],M=P?P(N):{};M.customClass=e.ignore?M.customClass:"",M.componentId=s.value;const D=N.contents&&N.contents.length===0;return N.contents&&!!N.contents.length&&j?n.createVNode(j,n.mergeProps({ref:_},M),Cl($=N.contents.map(ne=>n.createVNode(Kt,{key:ne.id,modelValue:ne,"onUpdate:modelValue":re=>ne=re,componentId:s.value,onSelectionChange:v},null)))?$:{default:()=>[$]}):j?D?n.createVNode(j,n.mergeProps({ref:_},M),{default:()=>[n.createVNode(bl,null,null)]}):n.createVNode(j,n.mergeProps({ref:_},M),null):n.createVNode("div",null,null)}function k(N){if(N.type==="component-ref"){let B=b==null?void 0:b.getFormSchema().module.components.find(j=>j.id===N.component);if(B)return n.createVNode(Kt,{key:B.id,modelValue:B,"onUpdate:modelValue":j=>B=j,componentId:B.id,onSelectionChange:v},null)}}n.watch(()=>e.modelValue,N=>{l.value=N,o.value=`${N.id}-component`});function I(N){const $=N.target;fa($)}function O(){var N,$;($=(N=l.value)==null?void 0:N.contents)!=null&&$.length&&c.value&&c.value.addEventListener("scroll",I)}n.onMounted(()=>{if(c.value&&_.value&&_.value.schema){const N=c.value.querySelector(`[data-dragref='${_.value.schema.id}-container']`);u&&N&&u.attachComponents(N,l.value),r.value=_.value.canNested!==void 0?_.value.canNested:r.value,a.value=_.value.canDelete!==void 0?_.value.canDelete:a.value,i.value=_.value.canMove!==void 0?_.value.canMove:i.value,f.value=_.value.styles||"",d.value=_.value.designerClass||"",c.value&&(c.value.componentInstance=_,c.value.designItemContext=y)}O(),Ft.value++}),n.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",I)});function T(N){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(B=>B.classList.remove("dgComponentFocused")),N&&(N.preventDefault(),N.stopPropagation());const $=c.value;if($){const B=document.getElementsByClassName("dgComponentSelected");if(!(B&&B.length===1&&B[0]===c.value)&&(Array.from(B).forEach(P=>P.classList.remove("dgComponentSelected")),$.classList.add("dgComponentFocused"),t.emit("selectionChange",l.value.type,l.value,s.value,_.value),_.value.getDraggableDesignItemElement)){const P=_.value.getDraggableDesignItemElement(y);P&&P.value&&P.value.classList.add("dgComponentSelected")}}I(N)}return()=>l.value.type==="component-ref"?k(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:c,class:S.value,style:C.value,onClick:T},[V(l.value),w(l.value)])}});function po(e,t,o,i,a,r,l,s,f,d,p,c,u,_,m,y,b,S,C,g="data-grid-column"){const{showSelectAll:F,selectAll:x,unSelectAll:h,selectedValues:V}=_,{showRowNumer:v,showSidebarCheckBox:w,sidebarTitle:k,sidebarCornerCellStyle:I}=m,{columnContext:O,hasLeftFixedColumn:T,hasRightFixedColumn:N}=r,{gridHeaderColumnsStyle:$,leftFixedGridHeaderColumnsStyle:B,rightFixedGridHeaderColumnsStyle:j}=b,P=n.computed(()=>F.value||w.value||v.value),M=O.value.defaultColumnWidth,D=32,H=new Map([[0,0]]);function ne(Q,me){const ge=H.get(me)||0,ce={height:`${Q.depth*D}px`,left:`${Q.left}px`,top:`${(Q.layer-1)*D}px`,width:`${Q.actualWidth}px`,padding:0};return O.value.headerDepth>1&&(ce["line-height"]=`${Q.depth*D}px`),H.set(me+1,ge+(Q.actualWidth||M)),ce}const re=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":O.value.headerDepth>1})),be=n.computed(()=>({height:`${O.value.headerDepth*D}px`}));function $e(Q,me,ge,ce){var xe;(xe=e==null?void 0:e.setupContext)==null||xe.emit("selectionChange",Q,me,ge,ce)}function _e(Q,me,ge){let ce=Q.column;return n.createVNode("div",{class:"fv-grid-header-cell",style:ne(Q,ge)},[n.createVNode(Kt,{modelValue:ce,"onUpdate:modelValue":xe=>ce=xe,customClass:"w-100 d-flex align-items-center justify-content-center",canAdd:!1,canDelete:!1,canMove:!1,key:ce==null?void 0:ce.id,type:g,componentId:t.componentId,onSelectionChange:$e},null)])}function ve(Q){return Q.map((me,ge)=>{const ce=[];if(ce.push(_e(me,Q,ge)),me.children&&me.children.length){const xe=ve(me.children);ce.push(...xe)}return ce})}function Se(){return n.createVNode("div",{class:"fv-grid-header-left-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:B.value},[ve(O.value.leftHeaderColumns)])])}function ke(){return n.createVNode("div",{class:"fv-grid-header-right-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:j.value},[ve(O.value.rightHeaderColumns)])])}const ie=n.ref(C.value.length===V.value.length);function fe(Q){ie.value?x():h()}const G=n.computed(()=>V.value.length>0&&C.value.length!==V.value.length);function q(){return n.createVNode("div",{class:"fv-grid-header-corner d-flex",style:I.value},[F.value&&n.createVNode(hl,{id:"checkbox_for_select_all",indeterminate:G.value,modelValue:ie.value,"onUpdate:modelValue":Q=>ie.value=Q,onChange:fe,style:"margin-left:8px"},null),v.value&&n.createVNode("div",{style:"line-height:18px"},[k.value])])}function le(){return n.createVNode("div",{class:re.value,style:be.value},[P.value&&q(),T.value&&Se(),n.createVNode("div",{class:"fv-grid-header-primary"},[n.createVNode("div",{class:"fv-grid-header-columns",style:$.value},[ve(O.value.primaryHeaderColumns)])]),N.value&&ke()])}return{renderGridHeader:le}}function mo(e,t){var d;const o=n.ref((d=e.columnOption)==null?void 0:d.groups);function i(p,c,u,_,m){const y={actualWidth:0,children:[],depth:1,field:p.field,layer:1,left:0,parent:u,resizable:!1,title:p.title||"",status:R.HeaderCellStatus.none,popoverRef:n.ref(),showPopover:!1,column:null,filterValue:null,sortType:"none"},b=_||y;if(p.group){let S=1;p.group.reduce((C,g)=>{if(typeof g=="string"){const F=c.get(g);F&&(m.fieldToRootMap.set(g,b),C.actualWidth+=F.actualWidth,C.children.push(F))}else{const F=i(g,c,C,b,m);S=Math.max(S,F.depth),C.actualWidth+=F.actualWidth,C.children.push(F)}return C},y),y.depth+=S}return t.value.headerDepth=Math.max(t.value.headerDepth,y.depth),y}function a(p){const c={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((u,_)=>{const m=i(_,p,null,null,c);return u.groupedCells.set(_.field,m),u},c),c}function r(p){if(!p||p.length===0)return 0;const c=p[0];return c.children&&c.children.length>0&&(c.left=r(c.children)),c.left}function l(p,c){const u=t.value.headerDepth;p.forEach(_=>{_.layer=c?c.layer+1:1;const m=_.children&&_.children.length===0;_.depth=m?u-(_.layer-1):1,_.left=m?_.left:r(_.children),_.children&&l(_.children,_)})}function s(p,c){const u=new Map;return p.forEach(_=>{const m=c.fieldToRootMap.get(_.field),y=m!=null;y&&!u.has(m.field)&&u.set(m.field,m),y||u.set(_.field,_)}),l(Array.from(u.values())),u}function f(p){let c=new Map,u=0;if(p.reduce((_,m)=>{let y=R.HeaderCellStatus.none;y=m.sortable?y|R.HeaderCellStatus.sortable:y,y=m.filterable?y|R.HeaderCellStatus.filterable:y,y=m.sort&&m.sort!=="none"?y|R.HeaderCellStatus.sorted|(m.sort==="asc"?R.HeaderCellStatus.ascending:R.HeaderCellStatus.descending):y;let b=m.binding&&m.binding.field?m.binding.field:m.field;return _.set(b,{actualWidth:m.actualWidth||0,children:[],depth:1,layer:1,left:u,field:b,parent:null,resizable:m.resizable||!1,title:m.title,status:y,popoverRef:n.ref(),showPopover:!1,column:m,filterValue:null,sortType:m.sort||"none",showSetting:m.showSetting}),u+=m.actualWidth||0,_},c),o.value){const _=a(c);c=s(c,_)}return c}return{getGridHeaderCells:f}}class wl extends _t{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){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:Z["tree-grid"].name}]}}}}}getAppearanceProperties(t){var o,i,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:t,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(r,l){switch(r&&r.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"fields":t.fields=r.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=t.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=t.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=t.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"selectionChange",name:"行切换事件"}];var i=this;const a=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),r={};r[i.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const f=l.propertyValue;delete t[i.viewModelId],f&&(f.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,f.events,f)),t.remoteSort=!!t.columnSorted}}}}function Sl(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(u){return u&&u.sourceType==="control"?u.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function f(){return!0}function d(u){}function p(){}function c(u){return new wl(u,t).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:f,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:c}}const xl=n.defineComponent({name:"FTreeGridDesign",props:xn,emits:[],setup(e,t){var Fe;const o=n.ref(),i=0,a=100,r=n.ref(),l=n.ref(),s=n.ref(),f=n.ref(),d=n.ref([]),p=n.ref(!1),c=n.ref(((Fe=e.rowOption)==null?void 0:Fe.wrapContent)||!1),u=n.inject("designer-host-service"),_=n.inject("design-item-context"),m=Sl(_,u),y=rt(o,_,m);y.value.designerClass="f-utils-fill-flex-column";const b=io(e),S=qt(e,b),C=zt(),g=Qn(e),F=co(e),x=Yn(e,new Map,g,b,F),h=ro(e,x,b,d,t),V=Qr(e,d,b,h,t),v=n.computed(()=>Math.min(x.dataView.value.length,a)),{containerStyleObject:w}=Nn(e),k=In(e),I=n.ref(e.columns),{applyCommands:O}=k;O(I);const T=kn(e),N=so(),{applyColumnSorter:$,columnContext:B,updateColumnRenderContext:j}=T;$(x,N);const P=mo(e,B),M=oo(e,t,b),D=Ht(),H=to(e,M,D),ne=no(e,M,g,b,D,H),re=eo(e,I,x,v,i,ne),{getVisualData:be}=re,$e=At(e,B),_e=lo(e,h),{sidebarWidth:ve}=_e;d.value=be(0,v.value+i-1);const Se=Zn(e,x,d,B,re,v,i,ve),{onWheel:ke,dataGridWidth:ie,viewPortHeight:fe,viewPortWidth:G}=Se,q=$n(e,B,r,G,P),{calculateColumnsSize:le}=q,Q=Jn(),me=Tn(r,f,x,Q,Se),ge=ao(e,t,h,b),ce=On(e,t,T,x,P,S,Se),xe=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),L=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":c.value})),{renderDataArea:se}=uo(e,t,l,s,f,$e,T,x,M,g,ge,h,V,Se,re,d),{renderGridHeader:ue}=po(_,e,r,s,f,T,x,ce,me,C,Q,q,P,h,_e,N,Se,G,d,"tree-grid-column"),{renderDataGridSidebar:W}=Fn(e,ge,h,_e,Se),{renderHorizontalScrollbar:pe}=_n(e,r,Se),{renderVerticalScrollbar:Be}=Vn(e,r,Se);function X(){var Te,je;fe.value=((Te=l.value)==null?void 0:Te.clientHeight)||0,ie.value=((je=r.value)==null?void 0:je.clientWidth)||0,le()}n.onMounted(()=>{o.value.componentInstance=y,r.value&&(St.useResizeObserver(r.value,X),le(),n.nextTick(()=>{r.value&&(ie.value=r.value.clientWidth),l.value&&(G.value=l.value.clientWidth,fe.value=l.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(G,()=>{r.value&&le()});const te=n.computed(()=>!d.value||!d.value.length),{renderEmpty:de}=Ra(t);return t.expose(y.value),()=>n.createVNode("div",{ref:o,dragref:`${_.schema.id}-container`,class:xe.value,style:w.value,onWheel:ke},[ue(),te.value&&de(),n.createVNode("div",{ref:r,class:L.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[W(d),se(),pe(),Be()])])}}),go=new Map([["appearance",Ge],["column","columnOption"]]),ho=new Map([]),_l="root-viewmodel";class Fl{constructor(t,o){z(this,"formSchemaUtils");z(this,"controlCreatorUtils");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),a=this.createViewModeNode(t),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(a),r.module.components.push(i),this.wrapContainerSectionForComponent(o,t)}wrapContainerSectionForComponent(t,o){var r,l;const i=[Z["content-container"].type,Z["response-layout-item"].type,Z["splitter-pane"].type],a=(l=(r=o==null?void 0:o.parentComponentInstance)==null?void 0:r.schema)==null?void 0:l.type;if(a&&i.includes(a)){const s=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance},this.designerHostService);if(s&&s.contents&&s.contents.length){const f=s.contents[0];return f.contents=[t],s}}return t}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getDataGridComponentClass()},contents:i}),o}createViewModeNode(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:_l,fields:this.assembleViewModelFields(t),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(t){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:t.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:t.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=s}const a=this.resolver.getSchemaByType("data-grid"),r=[];Object.assign(a,{id:t.componentId+"-dataGrid",appearance:{class:"f-component-grid f-utils-fill"},fields:r,fieldEditable:t.editable,dataSource:t.dataSource||""}),i.contents=[a];const{selectedFields:l}=t;return l==null||l.forEach(s=>{if(s.$type===En.ComplexField)return;const f=Re.cloneDeep(s),d=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",f,"",t.editable);d&&r.push(d)}),[i]}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(a=>{let r="blur";const l=a.type.name;(l===ht.Enum||l===ht.Boolean)&&(r="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function yo(e,t,o,i){const a=o.parentComponentInstance;if(a){const r=Math.random().toString(36).slice(2,6),l={componentId:`data-grid-${r}`,componentName:`表格-${r}`,componentType:"data-grid",parentContainerId:a.schema.id,parentComponentInstance:a,editable:!0,bindTo:"",dataSource:""};return new Fl(e,i).createComponent(l)}else return t}function vo(e,t,o){return t}const Vl={$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"]},Xt={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}},Nl=Object.assign({},Xt,{componentId:{type:String,default:""}}),bo=Ie(Xt,Vl,go,yo),Co=Xi(),kl=Yi();function wo(e,t,o,i,a,r,l,s,f,d,p,c,u,_,m){const{calculateCellPositionInRow:y,cellKey:b,cellPosition:S,rowKey:C,rowPosition:g,rowSpanCellPosition:F,groupCellPosition:x,summaryCellPosition:h}=l,{cellContentClass:V,cellContentPosition:v}=r,{collpaseGroupIconClass:w}=d,{gridCellClass:k,gridRowClass:I,onClickRow:O,onMouseoverRow:T,onMouseoutRow:N}=c,{onClickCell:$}=f,{toggleGroupRow:B}=u,{columnContext:j,hasLeftFixedColumn:P,hasRightFixedColumn:M}=s,{navigateOnKeyUp:D}=p,{gridDataStyle:H,gridMergedDataStyle:ne,leftFixedGridDataStyle:re,leftFixedGridMergedDataStyle:be,rightFixedGridDataStyle:$e,rightFixedGridMergedDataStyle:_e}=_;function ve(L,se){se.collapse=!se.collapse,m.value=B(se.collapse?"collapse":"expand",se,m.value)}function Se(L,se){const ue=[];if(L.groupField&&se[L.groupField]){for(let pe=0;pe<=L.layer;pe++)ue.push(n.createVNode("div",{class:"fv-grid-group-row-icon",onClick:Be=>ve(Be,L)},[n.createVNode("span",{class:w(L)},null)]));const W=L.data[L.groupField];ue.push(n.createVNode("div",{ref:W.setRef,key:b(L,L.layer+1),class:"fv-grid-cell",style:x(W,se,L.layer)},[W.data])),Object.values(L.data).filter(pe=>pe.field!==L.groupField&&pe.colSpan!==0).forEach(pe=>{ue.push(n.createVNode("div",{ref:pe.setRef,key:b(L,pe.index),class:"fv-grid-cell",style:S(pe,se)},[pe.data]))})}return ue}function ke(L,se,ue){return L.layer>-1&&n.createVNode("div",{ref:L.setRef,key:C(L),class:I(L),style:g(L),onClick:W=>O(W,L),onMouseover:W=>T(W,L)},[Se(L,se)])}function ie(L,se){const ue=[];if(L.groupField&&se[L.groupField]){const W=L.data[L.groupField];ue.push(n.createVNode("div",{ref:W.setRef,key:b(L,L.layer+1),class:"fv-grid-cell",style:h(W,se,L.layer)},[W.data]))}return ue}function fe(L,se,ue){return L.layer>-1&&n.createVNode("div",{ref:L.setRef,key:C(L),class:I(L),style:g(L),onClick:W=>O(W,L),onMouseover:W=>T(W,L)},[ie(L,se)])}function G(L,se,ue){return n.createVNode("div",{ref:L.setRef,key:C(L),class:I(L),style:g(L),onClick:W=>O(W,L),onMouseover:W=>T(W,L),onMouseout:W=>N(W,L)},[Object.values(L.data).filter(W=>se[W.field]&&W.rowSpan===1).map(W=>{const pe=ue==null?void 0:ue.find(Be=>Be.field===W.field);return n.createVNode("div",{ref:W.setRef,key:b(L,W.index),class:k(W),style:S(W,se),onClick:Be=>$(Be,W,L,pe),onKeyup:Be=>D(Be,W)},[n.createVNode("div",{class:V(W,pe),style:v(W)},[n.createVNode("div",{class:{"text-truncate":pe==null?void 0:pe.showEllipsis,"w-100":pe==null?void 0:pe.showEllipsis,"text-center":!0}},[W.data!=null&&t.slots.cellTemplate?t.slots.cellTemplate({cell:W,row:L}):W.mode===Me.editing?W.getEditor(W):W.formatter?W.formatter(W,L):W.data!=null?W.data.toString():W.data])])])})])}const q=[G,ke,fe];function le(L,se){const ue=y(L);return m.value.map(W=>q[W.type](W,ue,L))}function Q(L){const se=y(L);return m.value.map(ue=>Object.values(ue.data).filter(W=>se[W.field]&&W.rowSpan>1).map(W=>n.createVNode("div",{key:b(ue,W.index),class:"fv-grid-cell fv-grid-merged-cell",style:F(ue,W,se)},[W.data])))}function me(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:re.value},[le(j.value.leftColumns.filter(L=>L.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:be.value},[Q(j.value.leftColumns.filter(L=>L.visible))])])}function ge(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:H.value},[le(j.value.primaryColumns.filter(L=>L.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ne.value},[Q(j.value.primaryColumns.filter(L=>L.visible))])])}function ce(){return n.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:$e.value},[le(j.value.rightColumns.filter(L=>L.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:_e.value},[Q(j.value.rightColumns.filter(L=>L.visible))])])}function xe(){const L=[];return P.value&&L.push(me()),L.push(ge()),M.value&&L.push(ce()),L}return{renderDataArea:xe}}const Ye=n.defineComponent({name:"FDataGrid",props:Xt,emits:["ClickRow","doubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged","endEditCell"],setup(e,t){var Ho;const a=n.ref(e.columns),r=R.useIdentify(e),l=n.ref(),s=n.ref(),f=n.ref(),d=n.ref(),p=n.ref(),c=n.ref([]),u=n.ref(!1),_=n.ref(((Ho=e.rowOption)==null?void 0:Ho.wrapContent)||!1),m=R.useGroupData(e,r),y=R.useFilter(),b=R.useHierarchy(e),{showLoading:S,renderLoading:C}=R.useLoading(e,l),g=R.usePagination(e),{shouldRenderPagination:F}=g,x=R.useDataView(e,new Map,b,r,g),h=R.useSelection(e,x,r,c,t),V=n.computed(()=>e.disable),v=n.computed(()=>F.value?x.dataView.value.length:Math.min(x.totalItems.value,100));n.computed(()=>e.loadingConfig.message);const{containerStyleObject:w}=R.useDataViewContainerStyle(e),k=R.useCommandColumn(e),{applyCommands:I}=k;I(a);const O=R.useColumn(e),T=R.useSort(e),{applyColumnSorter:N,columnContext:$,updateColumnRenderContext:B}=O;N(x,T);const j=R.useGroupColumn(e,$),P=R.useEdit(e,t,r),M=R.useVisualDataBound(),D=R.useVisualDataCell(e,P,M),H=R.useVisualDataRow(e,P,b,r,M,D),ne=R.useVisualGroupRow(e,r,D,H),re=R.useVisualSummaryRow(e,r,D,H),be=R.useVisualData(e,a,x,v,0,H,ne,re),{getVisualData:$e}=be,_e=R.useCellContentStyle($),ve=R.useCellPosition(e,$),Se=R.useSidebar(e,h),{sidebarWidth:ke}=Se;c.value=$e(0,v.value+0-1);const ie=R.useVirtualScroll(e,x,c,$,be,v,0,ke),{onWheel:fe,dataGridWidth:G,viewPortHeight:q,viewPortWidth:le,resetScroll:Q}=ie,me=R.useFitColumn(e,$,s,le,j),{calculateColumnsSize:ge}=me,ce=R.useFilterHistory(),xe=R.useColumnFilter(s,p,x,ce,ie),L=R.useRow(e,t,h,r),se=R.useDragColumn(e,t,O,x,j,m,ie),ue=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":e.showStripe})),W=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":u.value,"fv-grid-wrap-content":_.value})),{renderGridHeader:pe,renderGridColumnResizeOverlay:Be}=R.getColumnHeader(e,s,d,p,O,x,se,xe,y,ce,me,j,h,Se,T,ie,le,c),{renderDataGridPagination:X}=R.getPagination(e,t,x,ie,g),{renderDataGridSidebar:te}=R.getSidebar(e,L,h,Se,ie),{renderDisableMask:de}=R.getDisableMask(),{renderDataGridSummery:Fe}=R.getSummary(e,x,O),{renderHorizontalScrollbar:Te}=R.getHorizontalScrollbar(e,s,ie),{renderVerticalScrollbar:je}=R.getVerticalScrollbar(e,s,ie),{renderFilterPanel:ze}=R.getFilterPanel(e,O,x,y,ie),{renderGroupPanel:qe}=R.getGroupPanel(e,x,se,m,ie);function ot(){var we,kt;q.value=((we=f.value)==null?void 0:we.clientHeight)||0,G.value=((kt=s.value)==null?void 0:kt.clientWidth)||0,ge()}n.onMounted(()=>{s.value&&(St.useResizeObserver(s.value,ot),ge(),n.nextTick(()=>{s.value&&(G.value=s.value.clientWidth),f.value&&(le.value=f.value.clientWidth,q.value=f.value.clientHeight)})),S.value&&C()}),n.onUnmounted(()=>{}),n.watch(le,()=>{});function it(){x.insertNewDataItem(),Q()}function at(){x.insertNewDataItem(c.value.length),Q()}function Je(we){P.onEditingRow(we)}function A(we){x.removeDataItem(we),Q()}function ee(we){x.removeDataItemById(we),Q()}function ae(we){P.acceptEditingRow(we)}function Ve(we){P.cancelEditingRow(we)}function oe(we){we&&(a.value=we,I(a),B(a.value),N(x,T),ge())}function Ne(we){we&&(x.load(we),c.value=$e(0,v.value+0-1))}function Ee(we){g.updatePagination(we)}n.watch([x.startIndex,x.endIndex],([we,kt],[ec,tc])=>{var Go,Wo;we!==ec&&Ne((Go=x.originalData)==null?void 0:Go.value),kt!==tc&&Ne((Wo=x.originalData)==null?void 0:Wo.value)}),n.watch(()=>e.data,we=>{e.changePolicy==="default"&&Ne(we)},{deep:!0});function he(we){h.selectItemById(we)}const De={addNewDataItem:it,addNewDataItemAtLast:at,removeDataItem:A,removeDataItemById:ee,editDataItem:Je,acceptDataItem:ae,cancelDataItem:Ve,selectItemById:he,updateColumns:oe,updateDataSource:Ne,updatePagination:Ee};t.expose(De);const Le=R.useNavigation(e,t,De,O,P,c),{renderDataArea:Ce}=wo(e,t,f,d,p,_e,ve,O,P,m,Le,L,be,ie,c),Qe=n.computed(()=>!c.value||!c.value.length),{renderEmpty:ut}=R.getEmpty(t);return()=>n.createVNode("div",{ref:l,class:ue.value,style:w.value,onWheel:fe},[ze(),qe(),pe(),Qe.value&&ut(),n.createVNode("div",{ref:s,class:W.value,onMouseover:()=>{u.value=!0},onMouseleave:()=>{u.value=!1}},[te(c),Ce(),Te(),je()]),Fe(),F.value&&X(),Be(),V.value&&de()])}});class Tl extends _t{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){var r,l,s;const o=(s=(l=(r=this.formSchemaUtils.getFormSchema())==null?void 0:r.module)==null?void 0:l.entity[0])==null?void 0:s.entities[0],i=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:Z["data-grid"].name}]}},dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,readonly:t.columns&&t.columns.length>0,editable:!1}}},setPropertyRelates(f,d){switch(f&&f.propertyID){case"dataSource":{const p=a.formSchemaUtils.getViewModelById(a.viewModelId);if(p){const c=i.find(u=>u.label===f.propertyValue);p.bindTo=c.bindTo}a.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(t,o,i,a="",r=[]){const l=a?`${a}/${t.label}`:"/";return r.push({id:t.id,name:t.name,label:t.label,layer:o,parent:i&&i.id,bindTo:l.replace("//","/")}),t.type.entities&&t.type.entities.length&&t.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,t,l,r)),r}getAppearanceProperties(t){var o,i,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:t,getLatestGridData:r=>t},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(r,l){switch(r&&r.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"columns":t.columns=r.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=t.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=t.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=t.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"clickRow",name:"行点击事件"},{label:"selectionChange",name:"行切换事件"},{label:"pageIndexChanged",name:"切换页码事件"},{label:"pageSizeChanged",name:"分页条数变化事件"}];var i=this;const a=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),r={};r[i.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const f=l.propertyValue;delete t[i.viewModelId],f&&(f.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,f.events,f)),t.remoteSort=!!t.columnSorted}}}}function Il(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(u){return u&&u.sourceType==="control"?u.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function f(){return!0}function d(u){}function p(){}function c(u){return new Tl(u,t).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:f,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:c}}const Yt=n.defineComponent({name:"FDataGridDesign",props:Nl,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,t){var Le;const o=n.ref(),i=n.inject("designer-host-service"),a=n.inject("design-item-context"),r=Il(a,i),l=rt(o,a,r);l.value.styles="display:flex;flex:1;",n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);const s=n.ref(e.columns),f=20,d=io(e),p=0,c=n.ref(),u=n.ref(),_=n.ref(),m=n.ref(),y=n.ref(e.showStripe),b=n.ref([]),S=n.ref(!1),C=n.ref(((Le=e.rowOption)==null?void 0:Le.wrapContent)||!1),g=qt(e,d),F=zt(),x=Qn(e),h=co(e),V=Yn(e,new Map,x,d,h),v=ro(e,V,d,b,t),w=n.computed(()=>e.disable),k=n.computed(()=>V.totalItems.value<f?V.totalItems.value:f),{containerStyleObject:I}=Nn(e),O=In(e),{applyCommands:T}=O;T(s);const N=kn(e),$=so(),{applyColumnSorter:B,columnContext:j,updateColumnRenderContext:P}=N;B(V,$);const M=mo(e,j),D=oo(e,d),H=Ht(),ne=to(e,D,H),re=no(e,D,x,d,H,ne),be=il(e,d,ne,re),$e=al(e,d,ne,re),_e=eo(e,s,V,k,p,re,be,$e),{getVisualData:ve}=_e,Se=ul(j),ke=At(e,j),ie=lo(e,v),{sidebarWidth:fe}=ie;b.value=ve(0,k.value+p-1);const G=Zn(e,V,b,j,_e,k,p,fe),{onWheel:q,dataGridWidth:le,viewPortHeight:Q,viewPortWidth:me,resetScroll:ge}=G,ce=$n(e,j,c,me,M),{calculateColumnsSize:xe}=ce,L=Jn(),se=Tn(c,m,V,L,G),ue=ao(e,t,v,d),W=On(e,t,N,V,M,g,G),pe=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":y.value})),Be=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":S.value,"fv-grid-wrap-content":C.value})),{renderGridHeader:X}=po(a,e,c,_,m,N,V,W,se,F,L,ce,M,v,ie,$,G,me,b);ja(e,t,V,G,h);const{renderDataGridSidebar:te}=Fn(e,ue,v,ie,G),{renderDisableMask:de}=ka(),{renderDataGridSummery:Fe}=Pa(e,V,N),{renderHorizontalScrollbar:Te}=_n(e,c,G),{renderVerticalScrollbar:je}=Vn(e,c,G),{renderFilterPanel:ze}=Ta(e,N,V,F,G),{renderGroupPanel:qe}=Ia(e,V,W,g,G);function ot(){var Ce,Qe;Q.value=((Ce=u.value)==null?void 0:Ce.clientHeight)||0,le.value=((Qe=c.value)==null?void 0:Qe.clientWidth)||0,xe()}n.onMounted(()=>{c.value&&(St.useResizeObserver(c.value,ot),xe(),n.nextTick(()=>{c.value&&(le.value=c.value.clientWidth),u.value&&(me.value=u.value.clientWidth,Q.value=u.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(me,()=>{c.value&&xe()}),n.watch(()=>e.columns,Ce=>{oe(Ce)});function it(){V.insertNewDataItem(),ge()}function at(){V.insertNewDataItem(b.value.length),ge()}function Je(Ce){D.onEditingRow(Ce)}function A(Ce){V.removeDataItem(Ce),ge()}function ee(Ce){V.removeDataItemById(Ce),ge()}function ae(Ce){D.acceptEditingRow(Ce)}function Ve(Ce){D.cancelEditingRow(Ce)}function oe(Ce){Ce&&(s.value=Ce,T(s),P(s.value),B(V,$),xe())}function Ne(Ce){Ce&&(V.load(Ce),b.value=ve(0,k.value+p-1))}const he=rl(e,t,{addNewDataItem:it,addNewDataItemAtLast:at,removeDataItem:A,removeDataItemById:ee,editDataItem:Je,acceptDataItem:ae,cancelDataItem:Ve,updateColumns:oe,updateDataSource:Ne},N,D,b),{renderDataArea:De}=wo(e,t,u,_,m,Se,ke,N,D,g,he,ue,_e,G,b);return()=>n.createVNode("div",{ref:o,class:pe.value,style:I.value,onWheel:q},[ze(),qe(),X(),n.createVNode("div",{ref:c,class:Be.value,onMouseover:()=>{S.value=!0},onMouseleave:()=>{S.value=!1}},[te(b),De(),Te(),je()]),Fe(),w.value&&de()])}}),Ol={$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"]},So={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},$l=Ie(So,Ol,go,yo),Bl=new Map([["appearance",Ge]]);function Ml(e,t,o){return t}const jl={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:[]}}}}}},Pl={$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"]},xo={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:[]}};Ie(xo,Pl,Bl,Ml,jl);const Dl=new Map([["appearance",Ge]]);function Rl(e,t,o){return t}const El={$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"]},Ll={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:[]}}}}}},_o={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}};Ie(_o,El,Dl,Rl,Ll);function Al(e,t){function o(r){const l=[];let s=r.nextNode();for(;s;)l.push(s),s=r.nextNode();return l}function i(r,l){const s=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return o(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:u})=>{const _=[];let m=0;for(;m<u.length;){const y=u.indexOf(l,m);if(y===-1)break;_.push(y),m=y+l.length}return _.map(y=>{const b=new Range;return b.setStart(c,y),b.setEnd(c,y+l.length),b})}).flat()}function a(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!t))return;const l=i(t.value,r.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:a}}function Fo(e,t,o,i,a,r,l,s,f,d){const p=n.ref(e.size),c=n.ref(e.textField),u=n.ref(e.titleField),_=n.ref(e.disableField),m=n.computed(()=>{var v,w;return((v=e.selection)==null?void 0:v.multiSelect)&&((w=e.selection)==null?void 0:w.showCheckbox)}),{onMouseenterItem:y,onMouseoverItem:b,onMouseoutItem:S}=r,{getKey:C,listViewItemClass:g,onCheckItem:F,onClickItem:x}=l,h=n.computed(()=>({margin:p.value==="small"?"0.25rem 0":"10px 0"}));function V(v,w,k){return v.checked=s.findIndexInSelectedItems(v)>-1,n.createVNode("li",{class:g(v,w),id:C(v,w),key:C(v,w),onClick:I=>x(I,v,w),onMouseenter:I=>y(I,v,w),onMouseover:I=>b(I,v,w),onMouseout:I=>S(I,v,w)},[m.value&&n.createVNode("div",{class:"f-list-select",onClick:I=>I.stopPropagation()},[n.createVNode(ft.FCheckBox,{id:"list-"+C(v,w),customClass:"listview-checkbox",disabled:v[_.value],checked:v.checked,"onUpdate:checked":I=>v.checked=I,onChange:I=>{F(v,w,!I.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:h.value,title:v.raw[u.value]||v.raw[c.value]},[v.raw[c.value]])])])}return{renderItem:V}}function Hl(e,t,o,i,a,r,l,s,f,d){const p=n.ref(e.multiSelect),c=n.ref(e.disableField),{onMouseenterItem:u,onMouseoverItem:_,onMouseoutItem:m}=r,{getKey:y,listViewItemClass:b,onCheckItem:S,onClickItem:C}=l;function g(x,h,V){return t.slots.content?n.createVNode(n.Fragment,null,[t.slots.content&&t.slots.content({item:x.raw,index:h,selectedItem:V})]):n.createVNode("div",{style:"margin: 10px 0;"},[x.raw.name])}function F(x,h,V){return n.createVNode("li",{class:b(x,h),id:y(x,h),key:y(x,h),onClick:v=>C(v,x,h),onMouseenter:v=>u(v,x,h),onMouseover:v=>_(v,x,h),onMouseout:v=>m(v,x,h)},[p.value&&n.createVNode("div",{class:"f-list-select",onClick:v=>v.stopPropagation()},[n.createVNode(ft.FCheckBox,{id:"list-"+y(x,h),customClass:"listview-checkbox",disabled:x[c.value]||!x.checked,checked:x.checked,"onUpdate:checked":v=>x.checked=v,onChange:v=>S(x,h,!v.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[g(x,h,V)])])}return{renderItem:F}}function Gl(e,t,o,i,a,r,l,s,f,d){const p=n.ref(e.multiSelect),c=n.ref(e.disableField),{onMouseenterItem:u,onMouseoverItem:_,onMouseoutItem:m}=r,{getKey:y,listViewItemClass:b,onCheckItem:S,onClickItem:C}=l,{dragstart:g,dragenter:F,dragover:x,dragend:h}=i,{removeItem:V}=f,v=n.computed(()=>({margin:p.value?"10px 0":"10px 0px 10px 14px"}));function w(T){return n.createVNode("div",{style:v.value},[T.raw.name])}function k(){return t.slots.itemContent?t.slots.itemContent:w}const I=k();function O(T,N,$){return n.createVNode("li",{class:b(T,N),id:y(T,N),key:y(T,N),onClick:B=>C(B,T,N),onMouseenter:B=>u(B,T,N),onMouseover:B=>_(B,T,N),onMouseout:B=>m(B,T,N),draggable:"true",onDragstart:B=>g(B,T,N),onDragenter:B=>F(B,N),onDragend:B=>h(B,T),onDragover:B=>x(B,N)},[p.value&&n.createVNode("div",{class:"f-list-select",onClick:B=>B.stopPropagation()},[n.createVNode(ft.FCheckBox,{id:"list-"+y(T,N),customClass:"listview-checkbox",disabled:T[c.value]||!T.checked,checked:T.checked,"onUpdate:checked":B=>T.checked=B,onChange:B=>S(T,N,!B.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[I(T)]),n.createVNode("div",{class:"f-list-remove",onClick:B=>V(N)},[n.createVNode("div",{class:"f-list-remove-icon"},[n.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),n.createVNode("div",{class:"f-list-handle"},[n.createVNode("div",null,[n.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:O}}function Wl(e,t,o,i,a,r,l,s,f,d){var y;const p=n.ref(((y=e.group)==null?void 0:y.groupFields)||[]),{collpaseGroupIconClass:c}=a,{toggleGroupRow:u}=d;function _(b,S){S.collapse=!S.collapse,o.value=u(S.collapse?"collapse":"expand",S,o.value)}function m(b,S,C){return b.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:g=>_(g,b)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:c(b)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[b.raw[p.value[b.layer]]])])}return{renderItem:m}}function zl(){const e=n.ref(-1),t=n.ref(""),o=n.ref(-1),i=n.ref(!1);function a(d,p,c){o.value=c}function r(d,p,c){i.value||(o.value=c)}function l(d,p,c){o.value=-1}function s(){i.value=!0}function f(){i.value=!1}return{activeIndex:e,focusedItemId:t,hoverIndex:o,onMouseenterItem:a,onMouseoverItem:r,onMouseoutItem:l,resumeHover:f,suspendHover:s}}function ql(e,t,o,i){const a=n.ref(e.idField),{dataView:r}=o,l=n.ref(-1),s=n.ref(!1),{activeIndex:f,focusedItemId:d,hoverIndex:p,resumeHover:c,suspendHover:u}=i;function _(S,C,g){S.stopPropagation(),u(),C&&setTimeout(()=>{l.value=g,s.value=!0,C.moving=!0})}function m(S,C){if(S.preventDefault(),l.value!==C){const g=r.value[l.value],F=r.value;F.splice(l.value,1),F.splice(C,0,g),l.value=C}}function y(S,C){S.preventDefault(),S.dataTransfer&&(S.dataTransfer.dropEffect="move")}function b(S,C){C&&(C.moving=!1),r.value.forEach((g,F)=>{g.__fv_index__=F}),s.value=!1,c(),p.value=C.raw.__fv_index__,f.value=C.raw.__fv_index__,d.value=C.raw[a.value],t.emit("change",r.value),t.emit("activeChange",C)}return{dragstart:_,dragenter:m,dragover:y,dragend:b,isDragging:s}}function Ul(e,t,o){const{dataView:i}=o;function a(r){if(r>-1&&r<i.value.length){const l=i.value.splice(r,1);t.emit("removeItem",l[0])}}return{removeItem:a}}function Kl(e,t,o,i,a,r){const l=n.ref(e.idField),s=n.ref(e.disableField),f=n.ref(e.draggable),d=n.ref(e.itemClass),p=n.ref(e.selection.multiSelect??!1),c=n.ref(e.selection.multiSelectMode),{isDragging:u}=i,{activeIndex:_,focusedItemId:m,hoverIndex:y}=a,{clearSelection:b,getSelectedItems:S,toggleSelectItem:C}=r,g=n.ref(S());function F(I,O){const T={"f-listview-item":!0,"f-list-view-group-item":!0,"f-list-view-draggable-item":f.value,"f-un-click":!I.checked,"f-un-select":!!I.raw[s.value],"f-listview-active":g.value.findIndex($=>$[l.value]===I.raw[l.value])>-1,"f-listview-item-active":g.value.findIndex($=>$[l.value]===I.raw[l.value])>-1,"f-listview-hover":!u.value&&O===y.value,moving:!!I.moving};return d.value.split(" ").reduce(($,B)=>($[B]=!0,$),T),T}function x(I,O){return I.raw[l.value]||""}const h=n.computed(()=>!p.value);function V(I,O,T){I.checked=T,!I.raw[s.value]&&(h.value&&(m.value=I.raw[l.value]),C(I))}const v=n.computed(()=>p.value&&c.value==="OnCheckClearByClick"),w=n.computed(()=>!p.value||p.value&&(c.value==="OnCheckAndClick"||c.value==="OnClick"));function k(I,O,T){if(O.raw[s.value]){I.preventDefault(),I.stopPropagation();return}m.value=O.raw[l.value],_.value=T,v.value&&b(o.value),w.value&&(C(O),g.value=S()),t.emit("clickItem",{data:g.value,index:T}),t.emit("activeChange",g.value)}return{getKey:x,listViewItemClass:F,onCheckItem:V,onClickItem:k}}function Xl(e,t,o,i,a,r,l){const s=n.ref(e.view),f=n.ref(e.view==="CardView"),d=n.ref({}),p=n.ref("暂无数据"),c=zl(),u=ql(e,t,i,c),_=Ul(e,t,i),m=Kl(e,t,o,u,c,r),y=n.computed(()=>({"f-list-view-group":!0,"d-flex":f.value,"flex-wrap":f.value})),b=n.computed(()=>!!o.value&&o.value.length>0),S=n.computed(()=>o.value.length===0),C=n.computed(()=>S.value&&!t.slots.empty);function g(){return s.value==="SingleView"?Fo:s.value==="DraggableView"?Gl:(s.value==="ContentView"||s.value==="CardView")&&t.slots.content?Hl:Fo}const F=g(),{renderItem:x}=F(e,t,o,u,a,c,m,r,_,l),{renderItem:h}=Wl(e,t,o,u,a,c,m,r,_,l),V=[x,h];function v(){return o.value.filter(I=>I.visible!==!1).map((I,O)=>V[I.type](I,O,d))}function w(){return n.createVNode("div",{class:"f-list-view-emptydata"},[n.createVNode("p",{class:"f-empty-title"},[p.value])])}function k(){return n.createVNode("ul",{class:y.value,style:"list-style: none;"},[b.value&&v(),C.value&&w(),t.slots.empty&&t.slots.empty()])}return{renderListArea:k}}function Yl(e,t,o){function i(){return t.slots.header&&n.createVNode("div",{class:"f-list-view-header"},[t.slots.header()])}return{renderHeader:i}}function Vo(e,t,o){const i=n.ref(e.headerClass),a=n.ref(e.placeholder),r=n.ref(""),l=n.computed(()=>!r.value),s=n.computed(()=>!!r.value);function f(u){r.value=""}n.watch(r,u=>{e.enableHighlightSearch&&o.search(u),t.emit("afterSearch",u)});const d=n.computed(()=>{const u={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((m,y)=>(m[y]=!0,m),u),u});function p(u){}function c(){return n.createVNode("div",{class:"f-list-view-header",onClick:n.withModifiers(()=>p,["prevent","stop"])},[n.createVNode("div",{class:d.value},[n.createVNode("div",{class:"farris-input-wrap"},[n.createVNode("div",{class:"f-cmp-inputgroup"},[n.createVNode("div",{class:"input-group f-state-editable"},[n.withDirectives(n.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":u=>r.value=u,name:"input-group-value",type:"text",placeholder:a.value,autocomplete:"off"},null),[[n.vModelText,r.value]]),n.createVNode("div",{class:"input-group-append"},[s.value&&n.createVNode("span",{class:"input-group-text input-group-clear",onClick:u=>f()},[n.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&n.createVNode("span",{class:"input-group-text"},[n.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}const No=n.defineComponent({name:"FListView",props:_o,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,t){const o=n.ref(),i=n.ref(!0),a=n.ref(!1),r=n.ref([]),l=0,s=n.ref(e.columns),f=R.useIdentify(e),d=R.useHierarchy(e),p=R.useGroupData(e,f),c=R.usePagination(e),u=R.useDataView(e,new Map,d,f,c),_=R.useSelection(e,u,f,r,t),m=Al(e,o),y=n.computed(()=>u.dataView.value.length),b=R.useEdit(e,t,f),S=R.useVisualDataBound(),C=R.useVisualDataCell(e,{},S),g=R.useVisualDataRow(e,b,d,f,S,C),F=R.useVisualGroupRow(e,f,C,g),x=R.useVisualSummaryRow(e,f,C,g),h=R.useVisualData(e,s,u,y,l,g,F,x),{getVisualData:V}=h;r.value=V(0,y.value+l-1);const v=n.computed(()=>{const j={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(j[`${e.size}-item`]=!0),j}),w=n.computed(()=>!!t.slots.footer||i.value);function k(){return e.header==="SearchBar"?Vo:e.header==="ContentHeader"?Yl:Vo}const I=k(),{renderHeader:O}=I(e,t,m),{renderListArea:T}=Xl(e,t,r,u,p,_,h);function N(j){m.search(j)}function $(j){j&&(u.load(j),r.value=V(0,y.value+l-1))}t.expose({search:N,updateDataSource:$});function B(j){e.multiSelect&&(j.preventDefault(),j.stopPropagation())}return()=>n.createVNode("div",{class:v.value,onClick:B},[O(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{a.value=!0},onMouseleave:()=>{a.value=!1}},[T()]),w.value&&n.createVNode("div",{class:"f-list-view-footer"},[t.slots.footer&&t.slots.footer()])])}}),Jl=n.defineComponent({name:"FTransfer",props:xo,emits:["change","activeChange"],setup(e,t){const o=n.ref(e.identifyField),i=n.ref("已选:"),a=n.ref("项数据"),r=n.ref(e.displayType),l=n.ref(!1),s=n.ref(e.dataSource),f=n.ref(e.selections||[]),d=n.computed(()=>f.value.map(w=>w[o.value])),p=new Map,c=n.ref();function u(){const w=new Map,k=e.selectionValues||[];k.length&&k.reduce((O,T)=>(O.set(T,!0),O),w);const I=e.selections||[];I.length&&(w.clear(),I.reduce((O,T)=>(O.set(T[o.value],!0),O),w)),f.value.length||(f.value=s.value.filter(O=>w.has(O[o.value])).map(O=>Object.assign({},O))),s.value.forEach(O=>{const T=O[o.value],N=w.has(T);O.checked=N,N&&p.set(T,O)})}u();const _=n.computed(()=>r.value==="List"),m=n.computed(()=>r.value==="Tree");function y(w){f.value=w.map(k=>Object.assign({},k)),t.emit("change",f.value)}function b(){return n.createVNode(No,{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:y},{default:()=>[n.createTextVNode(" ")]})}function S(){return n.createVNode(n.Fragment,null,null)}function C(){return n.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[n.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[_.value&&b(),m.value&&S()])])])}function g(w){const k=w[o.value];if(k!==null||k!==void 0){f.value=f.value.filter(O=>O[o.value]!==k);const I=p.get(k);I&&(I.checked=!1,p.delete(k)),t.emit("change",f.value)}}n.watch(f,w=>{c.value.updateDataSource(w)});function F(w){const k=new Map;f.value.reduce((I,O)=>(I.set(O[o.value],O),I),k),f.value=w.map(I=>k.get(I[o.value])),t.emit("change",f.value)}function x(w){t.emit("activeChange",w)}function h(){return n.createVNode(No,{ref:c,style:"flex:1",data:f.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:F,onRemoveItem:g,onActiveChange:x},null)}function V(){return n.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[n.createVNode("div",{class:"selection-pane-title"},[n.createVNode("span",{class:"selection-title"},[i.value]),n.createVNode("span",{class:"selection-count"},[f.value&&f.value.length]),n.createVNode("span",{class:"selection-item-title"},[a.value])]),n.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[h()])])])}const v=n.computed(()=>({transfer:!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:v.value,style:"height:480px"},[C(),V()])}}),Ql=n.defineComponent({name:"FGridFieldEditor",props:So,emits:["change"],setup(e,t){const o=n.ref(e.viewModelId),i=n.inject("designViewModelUtils"),a=n.inject("useFormSchema"),r=n.inject("controlCreatorUtils"),l=n.ref(e.modelValue);let s=e.gridData.columns;const f=n.ref([]),d=n.ref([]);let p=[];n.onMounted(()=>{c()});function c(){d.value=i.getAllFields2TreeByVMId(o.value),p=_(d.value)}function u(){if(f.value=[],!s||s.length===0)return[];s.forEach(C=>{if(C.binding&&C.binding.field){const g=p.find(F=>F.data.id===C.binding.field);g?f.value.push(Object.assign({},g.data)):f.value.push({id:C.binding.field,name:C.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}})}function _(C,g=[]){return C&&C.forEach(F=>{g.push(F),F.children&&_(F.children,g)}),g}function m(){const C=i.getDgViewModel(o.value),g=[],F=[];f.value.forEach(h=>{delete h.inValidTip,delete h.isInValidBinding;let V=s==null?void 0:s.find(v=>{if(v.binding&&v.binding.field)return v.binding.field===h.id});if(V)g.push(V);else{const v=d.value.find(k=>k.id==h.id),w=r.setGridFieldProperty(e.gridType,v.data,null,!0);C.addField(h),g.push(w)}F.push(h.id)});const x=C.fields.filter(h=>!F.includes(h.id));if(x&&x.length>0){const h=x.map(V=>V.id);C.removeField(h),a.expressions&&a.expressions.length&&h.length&&(a.expressions=a.expressions.filter(V=>!h.includes(V.fieldId)))}l.value=`共 ${g.length} 项`,t.emit("change",g)}const y={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{m()},rejectCallback:()=>{}};function b(C){f.value=C?[...C]:[]}function S(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),c()),s=e.gridData.columns,u(),Promise.resolve(!0)}return()=>n.createVNode(Ze,{"button-behavior":"Modal","modal-options":y,modelValue:l.value,"onUpdate:modelValue":C=>l.value=C,editable:!1,beforeOpen:S},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(Jl,{selections:f.value,"data-source":d.value,class:"mx-2",onChange:C=>b(C)},null)])]})}}),Zl={$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}}},es={$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"}}},Jt={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:""}},ts=Ie(Jt,Zl,ho,vo),ns=Ie(Jt,es,ho,vo);class os extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){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 is extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",type:"array"}})}}class as extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}class ko extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},textField:{description:"",title:"数据源显示字段",type:"string"},idField:{description:"",title:"数据源值字段",type:"string"}})}}class rs extends Ae{constructor(t,o){super(t,o)}}class ls extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{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"}})}}class ss extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class cs extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{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 ds extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{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 us extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{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 fs extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{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 ps extends _t{constructor(t,o){super(t,o)}getPropertyConfig(t,o){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getFieldEditorProperties(t,o),this.propertyConfig}getBasicPropConfig(t){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"}}}}getAppearanceProperties(t){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(t,o){o.fieldEditable&&t.editor&&this.getFieldEditorProp(t)}getFieldEditorProp(t,o="gridFieldEditor",i=!1){const a=this.formMetadataConverter.getRealEditorType(t.editor.type);let r;switch(a){case"avatar":r=new os(this.componentId,this.designerHostService);break;case"check-group":r=new is(this.componentId,this.designerHostService);break;case"check-box":r=new as(this.componentId,this.designerHostService);break;case"combo-list":r=new ko(this.componentId,this.designerHostService);break;case"date-picker":r=new ls(this.componentId,this.designerHostService);break;case"lookup":r=new Oo(this.componentId,this.designerHostService);break;case"number-range":r=new ss(this.componentId,this.designerHostService);break;case"number-spinner":r=new cs(this.componentId,this.designerHostService);break;case"radio-group":r=new ds(this.componentId,this.designerHostService);break;case"switch":r=new us(this.componentId,this.designerHostService);break;case"textarea":r=new rs(this.componentId,this.designerHostService);break;case"time-picker":r=new fs(this.componentId,this.designerHostService);break;default:r=new Dr(this.componentId,this.designerHostService)}this.setDesignViewModelField(t);var l=this;this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:t.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:gt.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(d,p){if(d)switch(d&&d.propertyID){case"type":{l.changeFieldEditorType(t,d.propertyValue);break}}}};const s=["id","type","class","style","binding","label","responseLayout"],f=r.getPropertyConfig(t).categories;Object.keys(f).map(d=>{const p=f[d];let c={};if(Object.keys(p.properties).map(u=>{s.findIndex(_=>_==u)==-1&&p.properties[u]!==!1&&(c[u]=p.properties[u])}),Object.keys(c).length!=0){const u=p==null?void 0:p.title,_="gridFieldEditor",m="编辑器",y=p==null?void 0:p.description,b=(p==null?void 0:p.$converter)||"";l.propertyConfig.categories[o+"_"+d]={title:u,tabId:_,tabName:m,description:y,$converter:b,propertyData:t,properties:c}}})}changeFieldEditorType(t,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 a=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),r=this.formSchemaUtils.selectNode(a,p=>p.type===Z["data-grid"].type||p.type===Z["tree-grid"].type);if(!r)return;const l=i.fields.find(p=>p.id==this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),f=r.hasOwnProperty("columns")?r.columns:r.fields,d=f.findIndex(p=>p.id===t.id);d>-1&&f[d].editor&&(f[d].editor=Object.assign(s.editor,{required:f[d].editor.required}))}}function ms(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(u){return!1}function l(){return!1}function s(){return!1}function f(){return!0}function d(u){}function p(){}function c(u){var m;return new ps(u,t).getPropertyConfig(o,(m=e==null?void 0:e.parent)==null?void 0:m.schema)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:f,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:c}}const To=n.defineComponent({name:"FDataGridColumnDesign",props:Jt,emits:[],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),a=n.inject("design-item-context"),r=ms(a,i),l=rt(o,a,r);n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);function s(f){var d;(d=a==null?void 0:a.setupContext)==null||d.emit("selectionChange",l.value.schema,a.schema,e.componentId,l.value)}return()=>n.createVNode("span",{class:"fv-column-title",ref:o,onClick:f=>s()},[e.title])}});Ye.install=e=>{e.component(Ye.name,Ye),e.component(Yt.name,Yt)},Ye.register=(e,t,o,i)=>{e["data-grid"]=Ye,t["data-grid"]=bo,e["grid-field-editor"]=Ql,t["grid-field-editor"]=$l,i["data-grid"]={bindingResolver:Co,selectionItemResolver:kl}},Ye.registerDesigner=(e,t,o)=>{e["data-grid"]=Yt,t["data-grid"]=bo,t["data-grid-column"]=ts,e["data-grid-column"]=To,t["tree-grid-column"]=ns,e["tree-grid-column"]=To},lt.register=(e,t,o,i)=>{e["tree-grid"]=lt,t["tree-grid"]=Fa,i["tree-grid"]={bindingResolver:Co,selectionItemResolver:Va}},lt.registerDesigner=(e,t,o)=>{e["tree-grid"]=xl,t["tree-grid"]=Na},Gn(lt);function gs(e,t,o){return t}const hs=new Map([["appearance",Ge]]),ys={$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"]},vs={...Sr,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"}};Ie(vs,ys,hs,gs);const st={convertFrom:(e,t)=>t==="multiSelect"?!!e.editor[t]:t==="separator"?e.editor[t]||",":e.editor[t],convertTo:(e,t,o)=>{e.editor[t]=o}},bs={convertFrom:(e,t)=>e[t]==null?!0:e[t],convertTo:(e,t,o)=>{e[t]=o}};function Cs(e){let t="form_group_"+Date.now();return e&&(t=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+t}const ws={convertFrom:(e,t)=>{var o;return(o=e.editor[t])==null?void 0:o.displayName},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0],{name:a,id:r,metadataContent:l}=i;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=a,e.editor.helpId=r;const{displayType:s,idField:f,textField:d}=l;e.editor.displayType=s,e.editor.dataSource.idField=f,e.editor.textField=d,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=Cs(e.id))}}},Ss={convertFrom:(e,t)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},xs={convertFrom:(e,t)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.textField=i==null?void 0:i.bindingPath}}},_s={convertFrom:(e,t)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,t,o)=>{e.editor.displayType=o}},Io=Symbol("schema_repository_token");class Oo extends Ae{getPropertyConfig(t,o){const i=this.getBasicProperties(t,o),a=this.getAppearanceConfig(),r=this.getBehaviorConfig(t),l=this.getLookupConfig(t.editor);return{type:"object",categories:{basic:i,appearance:a,behavior:r,lookup:l}}}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:st},readonly:{description:"",title:"只读",type:"boolean",$converter:st},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:st},visible:{description:"",title:"可见",type:"boolean",$converter:bs},placeHolder:{visible:!1,description:"",title:"提示文本",type:"string"},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}getLookupConfig(t){return{description:"Basic Infomation",title:"编辑器",properties:{dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:t,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:Io,onSubmitModal:o=>{if(o){const i=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(i.relativePath,o[0].data).then(a=>JSON.parse(a==null?void 0:a.metadata.content))}}},$converter:ws},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:_s,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:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Rt},$converter:Ss},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:xs,editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Rt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:st,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,fromData:{editable:!1,editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`,idField:"id",textField:"name",valueField:"bindingPath",repositoryToken:Rt},toData:{idField:"id",textField:"name",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:st,title:"启用多选",type:"boolean"},separator:{description:"多选分隔符",$converter:st,title:"多选分隔符",type:"string"}}}}}function Fs(e,t){const{canAccepts:o,checkCanDeleteComponent:i,checkCanMoveComponent:a,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:d}=bn(e);function p(c,u){const _=e.schema;return new Oo(c,t).getPropertyConfig(_,u)}return{canAccepts:o,checkCanDeleteComponent:i,checkCanMoveComponent:a,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:d,getPropsConfig:p}}const Vs=n.defineComponent({name:"FLookupDesign",props:mt,emits:[],setup(e,t){const o=n.ref(),i=n.inject("design-item-context"),a=n.inject("designer-host-service"),r=Fs(i,a),l=rt(o,i,r);return n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value),()=>n.createVNode("div",{class:"f-lookup-design",ref:o},[n.createVNode(hn,{ref:o,readonly:!0,editable:!1,placeholder:e.placeholder},null)])}});Ze.register=(e,t,o,i)=>{e["button-edit"]=Ze,t["button-edit"]=un},Ze.registerDesigner=(e,t,o)=>{e["button-edit"]=hn,t["button-edit"]=un},Xe.withInstall(Ze);const $o=new Map([["appearance",Ge]]);function Bo(e,t,o){return t}const Ns={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout.schema.json",title:"layout",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for layout component",type:"string"},type:{description:"The type string of layout component",type:"string",default:"layout"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},collapsable:{description:"",type:"boolean",default:!1},resizable:{description:"",type:"boolean",default:!0},visible:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},ks={title:"layout",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"类型",title:"类型",type:"string",readonly:!0}}},behavior:{description:"Basic Infomation",title:"行为",properties:{collapsable:{description:"",title:"可收折",type:"boolean"},resizable:{description:"",title:"可调整尺寸",type:"boolean"}}}}},Qt={customStyle:{type:String,defaut:""},customClass:{type:String,defaut:""}},Mo=Ie(Qt,Ns,$o,Bo,ks);function jo(e){const t=n.ref(-1),o=n.ref(-1),i=n.ref(0),a=n.ref(0),r=n.ref(!1),l=n.ref(!1),s=n.computed(()=>({display:r.value?"block":"none",left:`${i.value}px`,cursor:"e-resize"})),f=n.computed(()=>({display:l.value?"block":"none",top:`${a.value}px`,cursor:"n-resize"})),d=n.computed(()=>({display:l.value||r.value?"block":"none"}));function p(b,S,C,g){const F=e.value;if(F){const{left:x,right:h,width:V}=F.getBoundingClientRect();let v=b.clientX-x;g==="right"&&(v=h-b.clientX),v>S&&(v=S),v<C&&(v=C),g==="right"&&(v=V-v),i.value=v}}function c(b,S,C,g){const F=e.value;if(F){const{top:x,bottom:h,height:V}=F.getBoundingClientRect();let v=b.clientY-x;g==="bottom"&&(v=h-b.clientY),v>S&&(v=S),v<C&&(v=C),g==="bottom"&&(v=V-v),a.value=v}}function u(){const b=e.value;if(b){const{width:S,height:C}=b.getBoundingClientRect();return{width:S,height:C}}return null}function _(){const b=e.value;return b?Array.from(b.querySelectorAll("[data-position]")).reduce((S,C)=>{const g=C.getAttribute("data-position");return S=Object.assign(S,{[g]:C}),S},{}):null}function m(b,S){const C=u(),g=_();if(C&&g){const F=g==null?void 0:g.right,x=g==null?void 0:g.left;if(b==="left"&&x)return F?C.width-F.clientWidth-S:C.width-S;if(b==="right"&&F)return x?C.width-x.clientWidth-S:C.width-S}}function y(b,S){const C=u(),g=_();if(C&&g){const F=g==null?void 0:g.bottom,x=g==null?void 0:g.top;if(b==="top"&&x)return F?C.height-F.clientHeight-S:C.height-S;if(b==="bottom"&&F)return x?C.height-x.clientHeight-S:C.height-S}}return{horizontalResizeHandleStyle:s,verticalResizeHandleStyle:f,resizeOverlayStyle:d,showHorizontalResizeHandle:r,showVerticalResizeHandle:l,horizontalResizeBarPosition:t,verticalResizeBarPosition:o,verticalResizeHandleOffset:a,horizontalResizeHandleOffset:i,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:c,getPanelMaxHeight:y,getPanelMaxWidth:m}}const nt=n.defineComponent({name:"FLayout",props:Qt,emits:[],setup(e,t){const o=n.ref(),i=jo(o),{horizontalResizeHandleStyle:a,verticalResizeHandleStyle:r,resizeOverlayStyle:l}=i;n.provide("layout",{useResizeHandleComposition:i});const s=n.computed(()=>Cr({"f-layout":!0},e==null?void 0:e.customClass)),f=n.computed(()=>wr({},e==null?void 0:e.customStyle));return()=>n.createVNode("div",{class:s.value,style:f.value,ref:o},[t.slots.default&&t.slots.default(),n.createVNode("div",{class:"f-layout-resize-overlay",style:l.value},null),n.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:a.value},null),n.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:r.value},null)])}}),Ts={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout-pane.schema.json",title:"layout-pane",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a layout pane",type:"string"},type:{description:"The type string of layout paney",type:"string",default:"layout-pane"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},collapsable:{description:"",type:"boolean",default:!1},contents:{description:"",type:"array",default:[]},height:{description:"",type:"number"},position:{description:"",type:"string",default:"left",enum:["left","center","right","top","bottom"]},resizeable:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"},visible:{description:"",type:"number",default:!0}}},Is={title:"layout-pane",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"enum"},width:{description:"",type:"number",title:"宽度"},height:{description:"",type:"number",title:"高度"}}},appearance:{title:"样式",description:"Appearance",properties:{class:{title:"class",type:"string",description:""},style:{title:"style",type:"string",description:""}}},behavior:{description:"",title:"行为",properties:{collapsable:{description:"",type:"boolean",title:"允许收折"},position:{description:"",type:"enum",title:"位置",editor:{type:"combo-list",data:[{id:"left",name:"左侧"},{id:"center",name:"居中"},{id:"right",name:"右侧"},{id:"top",name:"顶部"},{id:"bottom",name:"底部"}]}},resizeable:{description:"",type:"boolean",title:"允许调整尺寸"},visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"}}}}},Zt={customClass:{type:String,defaut:""},customStyle:{type:String,defaut:""},width:{type:Number,default:-1},height:{type:Number,default:-1},position:{type:String,default:"left"},visible:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:100},minHeight:{type:Number,default:100}},Po=Ie(Zt,Ts,$o,Bo,Is);function Do(e,t,o,i,a){const{horizontalResizeBarPosition:r,horizontalResizeHandleOffset:l,showHorizontalResizeHandle:s,showVerticalResizeHandle:f,verticalResizeBarPosition:d,verticalResizeHandleOffset:p,draggingHorizontalResizeHandle:c,draggingVerticalResizeHandle:u,getPanelMaxHeight:_,getPanelMaxWidth:m}=a;let y="",b,S,C;function g(h){if((y==="left"||y==="right")&&S){const{left:V}=S.getBoundingClientRect(),{width:v}=b.getBoundingClientRect(),w=h.clientX-V;let k=y==="left"?(v||0)+(w-r.value):(v||0)-(w-r.value);k=o.value>0?Math.max(o.value,k):k;const I=m(y,o.value);I!=null&&(k=I>k?k:I),e.value=k}if((y==="top"||y==="bottom")&&S){const{top:V}=S.getBoundingClientRect(),{height:v}=b.getBoundingClientRect(),w=h.clientY-V;let k=y==="top"?(v||0)+(w-d.value):(v||0)-(w-d.value);k=i.value>0?Math.max(i.value,k):k;const I=_(y,i.value);I!=null&&(k=I>k?k:I),t.value=k}l.value=0,p.value=0,r.value=-1,d.value=-1,s.value=!1,f.value=!1,document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",g),document.body.style.userSelect="",y="",b=null,S=null}function F(h,V,v){if(y=V,b=v,s.value=!0,S=h.composedPath().find(k=>(k.className||"").split(" ")[0]==="f-layout"),S){const{left:k}=S.getBoundingClientRect(),I=h.clientX-k;l.value=I,r.value=I;const O=m(y,o.value)||0;C=T=>c(T,O,o.value,y),document.addEventListener("mousemove",C),document.addEventListener("mouseup",g),document.body.style.userSelect="none"}}function x(h,V,v){if(y=V,b=v,f.value=!0,S=h.composedPath().find(k=>(k.className||"").split(" ")[0]==="f-layout"),S){const{top:k}=S.getBoundingClientRect();p.value=h.clientY-k,d.value=h.clientY-k;const I=_(y,i.value)||0;C=O=>u(O,I,i.value,y),document.addEventListener("mousemove",C),document.addEventListener("mouseup",g),document.body.style.userSelect="none"}}return{onClickHorizontalResizeBar:F,onClickVerticalResizeBar:x}}const yt=n.defineComponent({name:"FLayoutPane",props:Zt,emits:[],setup(e,t){const o=n.ref(e.minHeight<=0?100:e.minHeight),i=n.ref(e.minWidth<=0?100:e.minWidth),a=n.ref(e.width<=0?100:e.width),r=n.ref(e.height<=100?100:e.height),l=n.ref(Math.max(o.value,r.value)),s=n.ref(Math.max(i.value,a.value)),f=n.ref(),d=n.ref(e.position),p=n.ref(e.resizable);n.watch(()=>e.resizable,x=>{p.value=x});const c=n.inject("layout"),{useResizeHandleComposition:u}=c,_=Do(s,l,i,o,u),{onClickHorizontalResizeBar:m,onClickVerticalResizeBar:y}=_,b=n.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":d.value==="left","f-layout-resize-bar-n":d.value==="bottom","f-layout-resize-bar-s":d.value==="top","f-layout-resize-bar-w":d.value==="right"})),S=n.computed(()=>d.value!=="center"&&p.value);function C(x,h){(h==="left"||h==="right")&&m(x,h,f.value),(h==="top"||h==="bottom")&&y(x,h,f.value)}const g=n.computed(()=>{const x={"f-layout-pane":!0,"f-page-content-nav":d.value==="left"||d.value==="right","f-page-content-main":d.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((h,V)=>(h[V]=!0,h),x),x}),F=n.computed(()=>{const x={};return(s.value&&d.value==="left"||d.value==="right")&&(x.width=`${s.value}px`),(l.value&&d.value==="bottom"||d.value==="top")&&(x.height=`${l.value}px`),e.visible||(x.display="none"),x});return()=>n.createVNode("div",{ref:f,class:g.value,style:F.value,"data-position":d.value},[t.slots.default&&t.slots.default(),S.value&&n.createVNode("span",{class:b.value,onMousedown:x=>C(x,d.value)},null)])}});function Os(e,t){function o(){return!1}return{canAccepts:o}}const $s=n.defineComponent({name:"FLayoutDesign",props:Qt,emits:[],setup(e,t){var p;const o=n.ref(),i=n.inject("design-item-context"),a=Os(i.schema,(p=i.parent)==null?void 0:p.schema),r=rt(o,i,a);r.value.canNested=!1;const l=jo(o),{horizontalResizeHandleStyle:s,verticalResizeHandleStyle:f,resizeOverlayStyle:d}=l;return n.provide("layout",{useResizeHandleComposition:l}),n.onMounted(()=>{o.value.componentInstance=r}),t.expose(r.value),()=>n.createVNode("div",{class:"f-layout f-page-content",ref:o},[t.slots.default&&t.slots.default(),n.createVNode("div",{class:"f-layout-resize-overlay",style:d.value},null),n.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:s.value},null),n.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:f.value},null)])}});function Bs(e,t){function o(r){return!!cr().basalDragulaRuleForContainer(r)}function i(r,l,s){return s}function a(){const r=["f-layout-pane"];return(e.position==="left"||e.position==="right")&&r.push("f-page-content-nav"),e.position==="center"&&r.push("f-page-content-main"),r.join(" ")}return{canAccepts:o,getDesignerClass:a,onAcceptNewChildElement:i}}const Ms=n.defineComponent({name:"FLayoutPaneDesign",props:Zt,emits:[],setup(e,t){var x;const o=n.ref(),i=n.ref(),a=n.inject("design-item-context"),r=Bs(a.schema,(x=a.parent)==null?void 0:x.schema),l=rt(i,a,r);l.value.canNested=!1,l.value.canMove=!1,l.value.canDelete=!1,n.onMounted(()=>{i.value.componentInstance=l}),t.expose(l.value);const s=n.ref(Math.max(e.minHeight,e.height)),f=n.ref(Math.max(e.minWidth,e.width)),d=n.ref(e.minHeight),p=n.ref(e.minWidth),c=n.ref(e.position),u=n.inject("layout"),{useResizeHandleComposition:_}=u,m=Do(f,s,p,d,_),{onClickHorizontalResizeBar:y,onClickVerticalResizeBar:b}=m,S=n.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":c.value==="left","f-layout-resize-bar-n":c.value==="bottom","f-layout-resize-bar-s":c.value==="top","f-layout-resize-bar-w":c.value==="right"}));function C(h,V){(V==="left"||V==="right")&&y(h,V,o.value),(V==="top"||V==="bottom")&&b(h,V,o.value)}const g=n.computed(()=>{const h={"f-layout-pane":!0,"f-page-content-nav":c.value==="left"||c.value==="right","f-page-content-main":c.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((V,v)=>(V[v]=!0,V),h),h}),F=n.computed(()=>{const h={flex:"1"};return(f.value&&c.value==="left"||c.value==="right")&&(h.width=`${f.value}px`),(s.value&&c.value==="bottom"||c.value==="top")&&(h.height=`${s.value}px`),h});return()=>n.createVNode("div",{ref:o,class:g.value,style:F.value},[n.createVNode("div",{ref:i,class:"drag-container","data-dragref":`${a.schema.id}-container`},[t.slots.default&&t.slots.default()]),n.createVNode("span",{class:S.value,onMousedown:h=>C(h,c.value)},null)])}});nt.install=e=>{e.component(nt.name,nt),e.component(yt.name,yt)},nt.register=(e,t,o,i)=>{e.layout=nt,t.layout=Mo,e["layout-pane"]=yt,t["layout-pane"]=Po},nt.registerDesigner=(e,t,o)=>{e.layout=$s,t.layout=Mo,e["layout-pane"]=Ms,t["layout-pane"]=Po};function vt(e){function t(d){const p={enable:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server"},c=Object.assign({},p,d||e.pagination);return e.pagination?c:p}function o(){return{enableSelectRow:!0,multiSelect:e.multiSelect,showCheckbox:e.multiSelect,multiSelectMode:"DependOnCheck"}}function i(){return{fitColumns:e.fitColumns,fitMode:"percentage",resizeColumn:!0}}function a(){return typeof e.displayType=="string"&&e.displayType in Ue?!1:e.displayType.toLowerCase().indexOf("nav")===0}function r(){return e.displayType.toLowerCase()===Ue.Tree.toLowerCase()||e.displayType.toLowerCase()===Ue.ListTree.toLowerCase()}function l(){return e.displayType.toLowerCase()===Ue.TreeList.toLowerCase()}function s(){const d=e.displayType.toLowerCase();return d===Ue.ListList.toLowerCase()||d===Ue.ListTree.toLowerCase()}function f(){return e.navigation?{width:e.navigation.width||320,minWidth:e.navigation.minWidth||200}:null}return{checkPaination:t,checkMultiSelect:o,checkColumnOptions:i,isDoubleList:a,getNavigationSize:f,isTreeList:r,navIsTreeList:l,navIsList:s}}const He=n.reactive({}),ye=n.reactive({}),Oe=n.reactive({}),ct=n.reactive({}),Ke=n.reactive({}),bt=n.ref([]);function Ro(e){var i;const t=n.ref(e.searchFields||[]),o=n.ref(((i=e.navigation)==null?void 0:i.searchFields)||[]);return n.watch(()=>ye==null?void 0:ye.searchFields,a=>{t.value=a}),n.watch(()=>Oe==null?void 0:Oe.searchFields,a=>{o.value=a}),{searchFieldItems:t,navSearchFieldItems:o}}const en=n.ref();function Ct(e,t){const o=n.inject("FLoadingService",null),i=n.inject(yn,null),{searchFieldItems:a}=Ro(e),r=n.ref(e.uri);function l(m,y,b=!1){if(!y.trim())return[];const S=Array.from(new Set(y.trim().split(" ").filter(F=>F.trim())));if(!m||!S.length)return[];const C=(m||[]).map((F,x)=>{const h=S.map((V,v)=>({filterField:F.value,value:V,lbracket:"",rbracket:"",relation:xt.And,compare:Pt.Like}));return h.length&&(h.length>1&&(h[0].lbracket="(",h[h.length-1].rbracket=")"),h[h.length-1].relation=xt.Or),h}).filter(F=>F.length);let g=[];return C&&C.length&&(g=Re.flatten(C),g.length>1&&(g[0].lbracket+="(",g[g.length-1].rbracket+=")"),g[g.length-1].relation=0),g}function s(m,y){const b={};b.category=y;let S=null,C=null;if(m!=null&&m.search){const{field:g,value:F,isNavigation:x,type:h}=m.search,V=h||"like";if(F&&(b.searchValue=F.trim()),b.searchField=g?g.trim():"*",b.searchType=V,x&&(b.category="navsearch"),!e.enableMultiFieldSearch&&b.searchField==="*"){const v=l(a.value,F,x);v&&v.length&&(x?S=v:C=v),F===""&&b.category==="search"&&!C&&!S&&(b.category="all")}}return{searchParam:b,navSearchConditions:S,searchConditions:C}}function f(m){var F,x;const y={},b=(m==null?void 0:m.action)||"all",{searchParam:S,navSearchConditions:C,searchConditions:g}=s(m,b);return g&&(y.searchConditions=g),C&&(y.navSearchConditions=C),y.searchValue=JSON.stringify(S),y.pageIndex=((F=He.default)==null?void 0:F.index)||1,y.pageSize=((x=He.default)==null?void 0:x.size)||20,y.treeToList=e.treeToList,y.navTreeToList=e.navTreeToList,y.loadTreeDataType=e.loadTreeDataType,m!=null&&m.relationFilter&&(y.relationFilter=[...m.relationFilter]),m.selectedInfo&&(y.selectedInfo=m.selectedInfo),y.customData=n.toRaw(en.value),y}function d(m){return m==null?void 0:m.map(y=>(y.resizable=!0,y))}function p(m,y){return m.map(b=>{const S=y==null?void 0:y.find(C=>C.field.toLowerCase()===b.value.toLowerCase());return S&&(b.label=S.title),b})}function c(m){m.columns&&(m.columns=d(m.columns),m.searchFields&&(m.searchFields=p(m.searchFields,m.columns))),m.navigation&&m.navigation.columns&&(m.navigation.columns=d(m.navigation.columns),m.navigation.searchFields&&(m.navigation.searchFields=p(m.navigation.searchFields,m.navigation.columns)))}function u(m){return r.value&&i?i.getData(r.value,m).then(y=>(c(y),y)):new Promise((y,b)=>{y({columns:[...e.columns],items:[...e.data],searchFields:[...e.searchFields],navigation:{...e.navigation}})})}function _(m,y){const b=f(m);o==null||o.show(),u(b).then(S=>{o==null||o.clearAll(),y(S)})}return{getData:u,loadData:_}}function Eo(e){n.watch(()=>e.pagination,o=>{He.default=o}),n.watch(()=>{var o;return(o=e.navigation)==null?void 0:o.pagination},o=>{He.navigation=o});function t(o,i=!1){o&&(i?He.navigation={...He.navigation,...o}:He.default={...He.default,...o})}return{updatePageInfo:t}}function js(e,t,o){const{checkPaination:i,checkMultiSelect:a,checkColumnOptions:r}=vt(e),{updatePageInfo:l}=Eo(e),s=i(),f=a(),d=r(),p=n.ref(),c=n.ref([]),u=n.ref([]),{navSelectedItems:_,getNavigationIdField:m,getRelationFilter:y}=o;l(s);const b=n.ref(He.default),{loadData:S}=Ct(e);n.watch(()=>He.default,w=>{b.value=w});function C(w){var k;(k=p.value)==null||k.updateDataSource(w||[])}function g(w){var k;(k=p.value)==null||k.updateColumns(w)}n.watch(()=>_.value,w=>{if(e.uri){const I=y(w);l({index:1}),S({relationFilter:I,action:"list"},O=>{C(O.items)});return}const k=w.map(I=>I[m()]);t.emit("navSelectionsChanged",{items:w,ids:k})}),n.watch([()=>ye==null?void 0:ye.columns,()=>ye==null?void 0:ye.items,()=>ye==null?void 0:ye.pageInfo,()=>ye==null?void 0:ye.total],([w,k,I,O])=>{const T={total:O};if(I){const{pageIndex:N,pageSize:$,enablePager:B,pageList:j}=I;Object.assign(T,{index:N,size:$,enable:B,sizeLimits:j})}l(T),w&&g(w),C(k)}),n.watch(()=>e.idValue,w=>{c.value=w.split(e.separator)}),n.watch(()=>u.value,w=>{bt.value=w});function F(w){u.value=w}function x(){S({search:Ke.default,action:"list"},w=>{C(w.items)})}n.watch(()=>Ke.default,w=>{if(e.uri){l({index:1}),x();return}t.emit("search",w)});function h(w){var I;const k={index:w,isNavigation:!1};if(l(k),w!==((I=b.value)==null?void 0:I.index)){if(e.uri){x();return}t.emit("pageIndexChanged",k)}}function V(w){const k={size:w,index:1,isNavigation:!1};if(l(k),e.uri){x();return}t.emit("pageSizeChanged",k)}function v(){return n.createVNode(Ye,{ref:p,pagination:b.value,summary:{enable:!1},columnOption:d,idField:e.idField,rowNumber:{enable:!1},showBorder:!0,fit:!0,selection:f,selectionValues:c.value,onSelectionChange:F,onPageIndexChanged:h,onPageSizeChanged:V},null)}return{datagridRef:p,selectedItems:u,selectionValues:c,renderDataGrid:v}}function Ps(e,t){const{checkMultiSelect:o,checkColumnOptions:i}=vt(e),a=o(),r=i(),l=n.ref(),s=n.ref([]),f=n.ref([]),{loadData:d}=Ct(e);function p(y){var b;(b=l.value)==null||b.updateDataSource(y||[])}function c(y){var b;(b=l.value)==null||b.updateColumns(y)}n.watch([()=>ye==null?void 0:ye.columns,()=>ye==null?void 0:ye.items,()=>ye==null?void 0:ye.pageInfo,()=>ye==null?void 0:ye.total],([y,b,S,C])=>{y&&c(y),p(b)}),n.watch(()=>f.value,y=>{bt.value=y});function u(y){f.value=y}function _(){d({search:Ke.default,action:"list"},y=>{p(y.items)})}n.watch(()=>Ke.default,y=>{if(e.uri){_();return}t.emit("search",y)});function m(){return n.createVNode(lt,{ref:l,fit:!0,data:e.data,idField:e.idField,columns:e.columns,rowNumber:{enable:!1},columnOption:r,selection:a,showBorder:!0,displayField:"code",onSelectionChange:u},null)}return{treegridRef:l,selectedTreeNodes:f,selectionTreeValues:s,renderTreeGrid:m}}const Ds=new Map([["appearance",Ge]]),Rs={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",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:""},valueField:{description:"",type:"string",default:"id"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},data:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},required:{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:""}},required:["id","type"],ignore:["id","appearance","binding"]};function Es(e,t,o){return t}const tn={id:{type:String},data:{type:Array,default:[]},disabled:{default:!1,type:Boolean},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-arrow-60-down"></span>'},editable:{default:!1,type:Boolean},enableClear:{default:!0,type:Boolean},enableSearch:{type:Boolean,default:!1},enableTitle:{default:!0,type:Boolean},fitEditor:{default:!1,type:Boolean},forcePlaceholder:{default:!1,type:Boolean},hidePanelOnClear:{default:!0,type:Boolean},idField:{default:"id",type:String},mapFields:{type:Object},maxHeight:{default:350,type:Number},maxLength:{type:Number},multiSelect:{type:Boolean,default:!1},modelValue:{},placeholder:{type:String},placement:{type:String,default:"auto"},readonly:{default:!1,type:Boolean},remote:{default:null,type:Object},remoteSearch:{default:!1,type:Boolean},separator:{default:",",type:String},tabIndex:{type:Number,default:-1},textField:{default:"name",type:String},titleField:{default:"name",type:String},valueField:{default:"id",type:String},viewType:{default:"tag",type:String},change:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},autoHeight:{type:Boolean,default:!0},beforeOpen:{type:Function,default:null},searchOption:{type:Object,default:!1},enableHighlightSearch:{type:Boolean,default:!0}},Lo=Ie(tn,Rs,Ds,Es),Ls={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{type:Boolean,default:!1},selectedValues:{type:String,default:""},separator:{type:String,default:","},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},width:{type:Number},maxHeight:{type:Number},valueField:{type:String,default:"id"},onSelectionChange:{type:Function,default:()=>{}},searchOption:{type:Object,default:!1},enableHighlightSearch:{type:Boolean,default:!0},showCheckbox:{type:Boolean,default:!1}},As=n.defineComponent({name:"FComboListContainer",props:Ls,emits:["selectionChange"],setup(e,t){const o=n.ref(),i=n.ref(e.dataSource),a=n.ref([]),r=n.ref(e.separator),l=n.ref(e.width),s=n.ref(e.maxHeight),f=n.ref(String(e.selectedValues).split(r.value)),d=n.computed(()=>e.multiSelect),p=n.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:d.value,showSelectAll:!1,showSelection:!0}));n.watch(e.dataSource,()=>{i.value=e.dataSource});const c=n.computed(()=>e.enableSearch?"SearchBar":"ContentHeader"),u=n.computed(()=>{const y={};return l.value!==void 0&&(y.width=`${l.value}px`),s.value!==void 0&&s.value>0&&(y.maxHeight=`${s.value}px`),y});function _(y){a.value=y.map(b=>Object.assign({},b)),f.value=y.map(b=>b[e.idField]),t.emit("selectionChange",a.value)}function m(y){if(e.enableHighlightSearch)return;let b=[];typeof e.searchOption=="function"?b=i.value.filter(S=>e.searchOption(y,S)):b=i.value.filter(S=>S[e.valueField].indexOf(y)>-1||S[e.textField].indexOf(y)>-1),o.value.updateDataSource(b)}return n.watch([()=>e.selectedValues],([y])=>{f.value=y.split(r.value)}),()=>n.createVNode("div",{class:"f-combo-list-container pl-1",style:u.value},[n.createVNode(sn,{ref:o,size:"small",itemClass:"f-combo-list-item",header:c.value,headerClass:"f-combo-list-search-box",data:i.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,selection:p.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:f.value,onSelectionChange:_,onAfterSearch:m},null)])}});function Hs(e){const t=n.ref(""),o=n.ref(e.modelValue),i=n.ref(e.data||[]),a=n.ref(e.editable);function r(c){const u=String(c).split(e.separator),_=u.map(b=>[b,!0]),m=new Map(_);return i.value.filter(b=>m.has(String(b[e.valueField]))).sort((b,S)=>{const C=u.indexOf(b[e.valueField]),g=u.indexOf(S[e.valueField]);return C-g})}function l(c){const u=r(c).map(_=>_[e.textField]).join(e.separator);t.value=a.value?u||c:u}function s(c){const u=c.split(e.separator).map(m=>[m,!0]),_=new Map(u);return i.value.filter(m=>_.has(m[e.textField]))}function f(c){const u={};return u[e.idField]=c,u[e.textField]=c,[u]}function d(c){let u=s(c);const _=u&&u.length>0;return a.value&&!_&&(u=f(c)),u}function p(){const{url:c,method:u="GET",headers:_={},body:m=null}=e.remote,y=u.toLowerCase()=="get"?{method:u,headers:_}:{method:u,headers:_,body:m};let b=!1;fetch(c,y).then(S=>{var g,F;if(S.status===200)return b=!!((F=(g=S.headers)==null?void 0:g.get("content-type"))!=null&&F.includes("application/json")),b?S.text():S.json();throw new Error(S.statusText)}).then(S=>{i.value=b?JSON.parse(S):S}).catch(S=>{console.error(S)})}return e.remote&&p(),n.watch(()=>e.data,()=>{i.value=e.data}),n.watch([i],([c])=>{if(e.modelValue){const u=c.find(_=>_[e.valueField]===e.modelValue);u&&(t.value=u[e.textField])}}),n.watch(()=>e.modelValue,c=>{o.value=c,l(c)}),l(e.modelValue),{dataSource:i,displayText:t,editable:a,modelValue:o,getItemsByDisplayText:s,getItemsByValue:r,getSelectedItemsByDisplayText:d}}const wt=n.defineComponent({name:"FComboList",props:tn,emits:["clear","update:modelValue","change","input"],setup(e,t){const o=n.ref(),i=n.ref(e.disabled),a=n.ref(e.enableClear),r=n.ref(e.enableSearch),l=n.ref(e.readonly),{dataSource:s,displayText:f,editable:d,modelValue:p,getSelectedItemsByDisplayText:c}=Hs(e),u=n.computed(()=>e.multiSelect),_=n.computed(()=>o.value?o.value.elementRef.getBoundingClientRect().width:0);function m(){!u.value&&o.value&&o.value.hidePopup()}function y(x){f.value=x.map(h=>h[e.textField]).join(e.separator),x.length===1?p.value=x[0][e.valueField]:p.value=x.map(h=>h[e.valueField]).join(e.separator),t.emit("update:modelValue",p.value),t.emit("change",x,p.value),m()}function b(){l.value||o.value.togglePopup()}function S(x){p.value="",t.emit("update:modelValue",""),t.emit("clear")}function C(x){const h=c(x);y(h)}function g(){return f.value}function F(x){t.emit("input",x)}return t.expose({getDisplayText:g}),n.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([x,h,V,v,w])=>{i.value=x,d.value=h,a.value=V,r.value=v,l.value=w}),()=>n.createVNode(ln,{ref:o,id:e.id,disable:i.value,readonly:l.value,forcePlaceholder:e.forcePlaceholder,editable:d.value,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:a.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:f.value,"onUpdate:modelValue":x=>f.value=x,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:S,onClick:b,onChange:C,onInput:F,beforeOpen:e.beforeOpen},{default:()=>[n.createVNode(As,{idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:s.value,selectedValues:p.value,multiSelect:e.multiSelect,enableSearch:r.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?_.value:void 0,onSelectionChange:y},null)]})}});function Gs(e,t){const{canAccepts:o,checkCanDeleteComponent:i,checkCanMoveComponent:a,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:d}=bn(e),p=e.schema;function c(u,_){return new ko(u,t).getPropertyConfig(p,_)}return{canAccepts:o,checkCanDeleteComponent:i,checkCanMoveComponent:a,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:f,triggerBelongedComponentToDeleteWhenDeleted:d,getPropsConfig:c}}const Ws=n.defineComponent({name:"FComboListDesign",props:tn,emits:["clear","update:modelValue","change"],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),a=n.inject("design-item-context"),r=Gs(a,i),l=nn.useDesignerComponent(o,a,r);return n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value),()=>n.createVNode(Hi,{ref:o,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,enableClear:!0},null)}});wt.register=(e,t,o,i)=>{e["combo-list"]=wt,t["combo-list"]=Lo},wt.registerDesigner=(e,t,o)=>{e["combo-list"]=Ws,t["combo-list"]=Lo},Gn(wt);const zs={fields:{type:Array,default:()=>[]},showAllColumns:{type:Boolean,default:!0}},qs=n.defineComponent({name:"FLookupSearchBar",props:zs,emits:["search"],setup(e,t){const o=n.ref(e.fields||[]),i=n.ref(""),a=n.ref(ct.value),r=n.computed(()=>({field:i.value,value:a.value}));function l(){if(!o.value.length)return;let p="";e.showAllColumns&&(p="*"),p=o.value[0].value;const c=o.value.find(u=>!!u.isDefault);c&&(p=c.value),i.value=p}n.watch(()=>e.fields,p=>{o.value=p,l()});function s(){t.emit("search",r.value)}function f(){a.value="",s()}function d(p){p.key==="Enter"&&s()}return n.onMounted(()=>{l()}),()=>n.createVNode("div",{class:"fv-lookup-search-bar d-flex flex-row"},[n.createVNode("div",{style:"width: 160px;"},[n.createVNode(wt,{data:o.value,textField:"label",valueField:"value",idField:"value",modelValue:i.value,"onUpdate:modelValue":p=>i.value=p,enableClear:!1},null)]),n.createVNode("div",{class:"f-utils-fill ml-2"},[n.createVNode(Ze,{buttonContent:'<i class="f-icon f-icon-search"></i>',modelValue:a.value,"onUpdate:modelValue":p=>a.value=p,onClickButton:s,enableClear:!0,onClear:f,onKeyup:d},null)])])}});function Ao(e,t){const{searchFieldItems:o,navSearchFieldItems:i}=Ro(e),a=n.ref([]),r=n.ref([]);function l(d,p=!1){e.showAllSearchColumns,p?r.value=d:a.value=d}l(o.value),l(i.value,!0),n.watch(()=>o.value,d=>{l(d)}),n.watch(()=>i.value,d=>{l(d,!0)});function s(d){const p={...d};if(t){Ke.navigation=p;return}Ke.default=p}function f(){const d=t?r.value||[]:a.value||[];if(e.enableSearchBar&&d.length>0)return n.createVNode("div",{class:"p-2"},[n.createVNode(qs,{fields:d,showAllColumns:e.showSearchAllColumns,onSearch:s},null)])}return{renderSearchBar:f}}function Us(e,t){const{renderSearchBar:o}=Ao(e,!0),{checkPaination:i,navIsList:a,navIsTreeList:r}=vt(e),{updatePageInfo:l}=Eo(e),{loadData:s}=Ct(e),f=n.ref([]),d=e.navigation;if(a()){const I=i(d.pagination);l(I,!0)}const p={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1},c={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},u=n.ref(),_=n.ref();function m(I){var O;(O=_.value)==null||O.updateDataSource(I)}function y(I){var O;(O=_.value)==null||O.updateColumns(I)}n.watch([()=>Oe==null?void 0:Oe.columns,()=>Oe==null?void 0:Oe.items,()=>Oe==null?void 0:Oe.pageInfo,()=>Oe==null?void 0:Oe.total],([I,O,T,N])=>{I&&y(I),m(O);const $={total:N};if(T){const{pageIndex:B,pageSize:j,enablePager:P,pageList:M}=T;Object.assign($,{index:B,size:j,enable:P,sizeLimits:M})}l($,!0)});function b(I){f.value=I}function S(I){f.value=I}function C(){s({search:Ke.navigation,action:"navsearch"},I=>{m(I.items)})}n.watch(()=>Ke.navigation,I=>{if(e.uri){l({index:1}),C();return}t.emit("search",I)});function g(I){const O={index:I,isNavigation:!0};if(l(O),e.uri){C();return}t.emit("pageIndexChanged",O)}function F(I){const O={size:I,index:1,isNavigation:!0};if(l(O),e.uri){C();return}t.emit("pageSizeChanged",O)}function x(){return n.createVNode(lt,{ref:u,fit:!0,data:d.data,idField:d.idField,columns:d.columns,rowNumber:{enable:!1},columnOption:c,selection:p,showBorder:!0,onSelectionChange:b},null)}function h(){return n.createVNode(Ye,{ref:_,pagination:He.navigation,summary:{enable:!1},columnOption:c,idField:d.idField,rowNumber:{enable:!1},showBorder:!0,fit:!0,columns:d.columns,data:d.data,selection:p,onSelectionChange:S,onPageIndexChanged:g,onPageSizeChanged:F},null)}function V(){if(r())return x();if(a())return h()}function v(){return n.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[o(),n.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[V()])])}function w(){return d.idField}function k(I){return Oe.relations&&Oe.relations.length?Oe.relations.map(T=>{const{groupField:N,helpField:$}=T,B={fieldName:$,fieldValue:""},j=I.map(P=>N.split(".").reduce((M,D)=>M[D],P));return B.fieldValue=j.join(","),B}):""}return{renderNavigation:v,selectedItems:f,getNavigationIdField:w,getRelationFilter:k}}function Ks(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Xs=n.defineComponent({name:"LookupContainer",props:mt,emits:["update:modelValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","changeDialogOptions","clearSearch"],setup(e,t){const{renderSearchBar:o}=Ao(e,!1),{isDoubleList:i,getNavigationSize:a,isTreeList:r}=vt(e),{renderNavigation:l,selectedItems:s,getNavigationIdField:f,getRelationFilter:d}=Us(e,t),{renderTreeGrid:p}=Ps(e,t),{renderDataGrid:c}=js(e,t,{navSelectedItems:s,getNavigationIdField:f,getRelationFilter:d}),{loadData:u}=Ct(e);function _(){return r()?p():c()}const m=a();function y(){const b={};if(e.enableToSelect){let S=e.idValue||[];Array.isArray(S)||(S=(""+S).split(e.separator)),b.selectedInfo={selectedIds:S,selected:!0},ct.value!=null&&(b.search={field:"*",value:ct.value,type:"like"})}u(b,S=>{S.navigation&&(Object.keys(S.navigation).forEach(C=>{var g;Oe[C]=(g=S.navigation)==null?void 0:g[C]}),delete S.navigation),Object.keys(S).forEach(C=>{ye[C]=S[C]}),t.emit("changeDialogOptions",{title:S.title})})}return n.onMounted(()=>{y()}),()=>{let b;return n.createVNode("div",{class:"h-100 d-flex flex-column mx-2"},[n.createVNode(nt,null,{default:()=>[n.createVNode(yt,{position:"left",width:m==null?void 0:m.width,minWidth:m==null?void 0:m.minWidth,visible:i()},Ks(b=l())?b:{default:()=>[b]}),n.createVNode(yt,{position:"center"},{default:()=>[n.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[o(),n.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[_()])])]})]})])}}});function Ys(e,t,o,{dictPicked:i,modelValue:a}){var v,w,k,I,O;const r=n.inject(Xn,null),l=n.ref(e.dialog),s=n.ref(),f=n.ref("accept"),d=n.ref(),{isDoubleList:p}=vt(e);async function c(){const T=o.value.map($=>$[e.textField]).join(e.separator),N=o.value.map($=>$[e.idField]).join(e.separator);return a.value=T,t.emit("update:modelValue",T),t.emit("update:idValue",N),t.emit("update:dataMapping",{items:o.value,mappingFields:e.mappingFields}),await i({items:o.value}),!0}function u(){return f.value="cancel",!0}const _=T=>{Object.keys(T).forEach(N=>{delete T[N]})},m=T=>{T.forEach(N=>{_(N)})};function y(){m([ye,Oe,He,Ke,ct]),d.value=null}async function b(){let T=!0,N="";if(o.value.length===0)return r==null||r.warning({message:"请选择数据!",position:"top-center"}),!1;if(e.beforeSelectData&&typeof e.beforeSelectData=="function"){const $=await e.beforeSelectData({items:o.value});typeof $=="boolean"&&(T=$),typeof $=="object"&&(T=$.canSelect,N=$.message||"")}return T?(c(),f.value="accept",!0):(N&&(r==null||r.warning({message:N,position:"top-center"})),!1)}async function S(T){let N=!0;if(e.dictPicking&&typeof e.dictPicking=="function"){const $=await e.dictPicking({context:{customData:d}});typeof $=="boolean"&&!$&&(N=!1),typeof $=="object"&&($.showDialog?$.data&&(d.value=$.data):(N=!1,$.message&&(r==null||r.error({message:$.message,position:"top-center"}))))}return N}function C(){var P,M,D,H,ne;const T=((P=l.value)==null?void 0:P.height)||620,N=((M=l.value)==null?void 0:M.width)||590,$=((D=l.value)==null?void 0:D.minWidth)||300,B=((H=l.value)==null?void 0:H.minHeight)||200,j={height:T,width:N,minWidth:$,minHeight:B};return p()&&(j.width=((ne=l.value)==null?void 0:ne.width)||960),j}const{width:g,height:F,minHeight:x,minWidth:h}=C();return{modalOptions:{title:(v=l.value)==null?void 0:v.title,fitContent:!1,height:F,width:g,minWidth:h,minHeight:x,showMaxButton:((w=l.value)==null?void 0:w.showMaxButton)==null?!0:(k=l.value)==null?void 0:k.showMaxButton,showCloseButton:((I=l.value)==null?void 0:I.showCloseButton)==null?!0:(O=l.value)==null?void 0:O.showCloseButton,reiszeable:!0,draggable:!0,closedCallback:(T,N)=>{const $={type:f.value,button:T==null?void 0:T.target};(N==="esc"||N==="icon")&&($.type="esc"),$.type==="accept"&&($.items=o.value),($.type==="cancel"||$.type==="esc")&&(a.value=e.modelValue),y(),t.emit("dialogClosed",$)},buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:T=>u()},{name:"accept",text:"确定",class:"btn btn-primary",handle:T=>b()}],resizeHandle:T=>{s.value=T}},beforeOpenDialog:S,dialogSize:s,customData:d,updateModelValue:c}}function Js(e){const{mapFields:t,separator:o}=e,i={mapFields:t,separator:o};return{dictPicked:async r=>{e.dictPicked&&typeof e.dictPicked=="function"&&await e.dictPicked(r,i)}}}function Qs(e,t,o){const i=n.computed(()=>e.textChangeType==="blur"||e.textChangeType==="any"),a=n.computed(()=>e.textChangeType==="enter"||e.textChangeType==="any"),{loadData:r}=Ct(e),l=n.ref(e.modelValue);function s(u){const _=l.value!==u;return _?ct.value=u:ct.value="",_}async function f(u){const _={search:{field:"*",value:u,type:"equal"}},{beforeOpenDialog:m,updateModelValue:y,selectedItems:b,openDialog:S}=o;if(m){if(await m(_)===!1)return;r(_,g=>{if(g.items&&g.items.length===1&&(!g.items[0].children||!g.items[0].children.length)){b.value=g.items||[],y();return}S()})}}function d(u,_){var y;const m=(y=u.target)==null?void 0:y.value;s(m)&&(e.uri?f(m):t.emit("textChanged",{value:m,type:_?"blur":"enter"}))}function p(u){i.value&&d(u,!0)}function c(u){u.key==="Enter"&&a.value&&d(u,!1)}return{changeOnBlur:i,changeOnEnter:a,onInputBlur:p,onEnterKeyDown:c}}const Nt=n.defineComponent({name:"FLookup",props:mt,emits:["update:modelValue","update:idValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","resize","dialogClosed","textChanged","clear","update:dataMapping"],setup(e,t){const o='<i class="f-icon f-icon-lookup"></i>',i=n.ref(),a=n.ref(e.modelValue);en.value=n.ref(e.customData);function r(){i.value&&!i.value.getModal()&&i.value.openDialog()}const{dictPicked:l}=Js(e),{modalOptions:s,beforeOpenDialog:f,dialogSize:d,customData:p,updateModelValue:c}=Ys(e,t,bt,{dictPicked:l,modelValue:a}),{onInputBlur:u,onEnterKeyDown:_}=Qs(e,t,{beforeOpenDialog:f,updateModelValue:c,selectedItems:bt,openDialog:r}),m=n.reactive(s),y=n.inject(fn,null);n.watch(()=>p.value,h=>{en.value=h}),n.watch(()=>e.modelValue,h=>{a.value=h}),n.onMounted(()=>{}),n.watch(()=>d.value,h=>{t.emit("resize",h)});async function b(){bt.value=[],t.emit("update:modelValue",""),t.emit("update:idValue",""),t.emit("clear")}function S(h){t.emit("search",h)}function C(h){t.emit("navSelectionsChanged",h)}function g(h){t.emit("pageIndexChanged",h)}function F(h){t.emit("pageSizeChanged",h)}async function x(h){const V=y==null?void 0:y.getCurrentModal();V&&V.updateModalOptions(h)}return t.expose({openDialog:r}),()=>n.createVNode(Ze,{ref:i,id:e.id,modelValue:a.value,"onUpdate:modelValue":h=>a.value=h,disable:e.disable,readonly:e.readonly,editable:e.editable,inputType:"text",enableClear:e.enableClear,buttonContent:o,buttonBehavior:"Modal",modalOptions:m,onClear:b,beforeOpen:f,onBlur:u,onKeydown:_},{default:()=>[n.createVNode(Xs,n.mergeProps(e,{onSearch:S,onNavSelectionsChanged:C,onPageIndexChanged:g,onPageSizeChanged:F,onChangeDialogOptions:x}),null)]})}}),Zs={install(e){e.component(Nt.name,Nt)},register(e,t,o,i){e.lookup=Nt,t.lookup=Dt},registerDesigner(e,t,o){e.lookup=Vs,t.lookup=Dt}};E.Compare=Pt,E.ExpressValueType=vn,E.FLookup=Nt,E.F_LOOKUP_HTTP_SERVICE_TOKEN=yn,E.FilterRelation=xt,E.LoadTreeDataType=jt,E.LookupDisplayType=Ue,E.LookupSchemaRepositoryToken=Io,E.default=Zs,E.lookupProps=mt,E.propsResolver=Dt,Object.defineProperties(E,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(H,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("@vueuse/core"),require("../data-view/index.umd.js"),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("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../designer-canvas/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","@vueuse/core","../data-view/index.umd.js","../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","../common/index.umd.js"],t):(H=typeof globalThis<"u"?globalThis:H||self,t(H.lookup={},H.Vue,H.LodashES,H.dynamicResolver,H.designerCanvas,H.FTags,H.FPopover,H.VueUseCore,H.dataView,null,H.FTransfer$1,H.FTabs,H.FOrder,null,H.FCheckBox$1,H.FFilterBar,H.FPagination,H.FDynamicForm,H.FComboList$1,H.BigNumber,H.FNumberSpinner,H.FAccordion,H.FAvatar,H.FButtonEdit$1,H.FButtonGroup,H.FCalendar,H.FCapsule,H.FComboTree,H.FComponent,H.FColorPicker,H.FContentContainer,H.FDatePicker,H.FDataGrid$1,H.FDropdown,H.FEventsEditor,H.FFieldSelector,H.FImageCropper,H.FInputGroup$1,H.FLayout$1,H.FListNav,H.FListView$1,H.FLookup$1,H.FMappingEditor,H.FNav,H.FNumberRange,H.FPageHeader,H.FPageFooter,H.FProgress,H.FQuerySolution,H.FRadioGroup,H.FRate,H.FResponseToolbar,H.FResponseLayout,H.FResponseLayoutEditorSetting,H.FSearchBox,H.FSection,H.FSmokeDetector,H.FSplitter,H.FStep,H.FSwitch,H.FText,H.FTimePicker,H.FTreeview,H.FUploader,H.FVerifyDetail,H.FWeather,H.FVideo,H.FTextArea,H.FSchemaSelector,H.FTreeGrid$1,null,H.common))})(this,function(H,t,$e,pn,Nt,mn,aa,kt,z,eu,ia,ra,la,tu,vt,hn,gn,jt,Dt,nu,bt,sa,ca,yn,ua,da,fa,pa,ma,ha,ga,ya,va,ba,Ca,wa,Sa,xa,Va,Fa,vn,Na,ka,_a,Ia,Ta,Ma,Oa,Ba,$a,Pa,ja,Da,Ea,Ra,La,Ha,Aa,za,Ga,Wa,qa,Ua,Ka,Xa,Ya,Ja,Qa,Za,ei,ou,Re){"use strict";var Qc=Object.defineProperty;var Zc=(H,t,$e)=>t in H?Qc(H,t,{enumerable:!0,configurable:!0,writable:!0,value:$e}):H[t]=$e;var L=(H,t,$e)=>Zc(H,typeof t!="symbol"?t+"":t,$e);const bn={},Cn={};function Et(e){const{properties:n,title:o,ignore:a}=e,i=a&&Array.isArray(a),r=Object.keys(n).reduce((l,s)=>((!i||!a.find(u=>u==s))&&(l[s]=n[s].type==="object"&&n[s].properties?Et(n[s]):$e.cloneDeep(n[s].default)),l),{});return o&&(!i||!a.find(l=>l=="id"))&&(r.id=`${o}-${Date.now()}`),r}function wn(e,n={},o){const a=bn[e];if(a){let i=Et(a);const r=Cn[e];return i=r?r({getSchemaByType:wn},i,n,o):i,i}return null}function ti(e,n){const o=Et(n);return Object.keys(e).reduce((a,i)=>(a[i]&&$e.isPlainObject(a[i])&&$e.isPlainObject(e[i])?Object.assign(a[i],e[i]):a[i]=e[i],a),o),o}function ni(e,n){return Object.keys(e).filter(a=>e[a]!=null).reduce((a,i)=>{if(n.has(i)){const r=n.get(i);if(typeof r=="string")a[r]=e[i];else{const l=r(i,e[i],e);Object.assign(a,l)}}else a[i]=e[i];return a},{})}function oi(e,n,o=new Map){const a=ti(e,n);return ni(a,o)}function ai(e={}){function n(d,p,c,f){if(typeof c=="number")return f[d].length===c;if(typeof c=="object"){const w=Object.keys(c)[0],v=c[w];if(w==="not")return Number(f[d].length)!==Number(v);if(w==="moreThan")return Number(f[d].length)>=Number(v);if(w==="lessThan")return Number(f[d].length)<=Number(v)}return!1}function o(d,p,c,f){return f[d]&&f[d].propertyValue&&String(f[d].propertyValue.value)===String(c)}const a=new Map([["length",n],["getProperty",o]]);Object.keys(e).reduce((d,p)=>(d.set(p,e[p]),d),a);function i(d,p){const c=d;return typeof p=="number"?[{target:c,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:c,operator:"getProperty",param:d,value:!!p}]:typeof p=="object"?Object.keys(p).map(f=>{if(f==="length")return{target:c,operator:"length",param:null,value:p[f]};const w=f,v=p[f];return{target:c,operator:"getProperty",param:w,value:v}}):[]}function r(d){return Object.keys(d).reduce((c,f)=>{const w=i(f,d[f]);return c.push(...w),c},[])}function l(d,p){if(a.has(d.operator)){const c=a.get(d.operator);return c&&c(d.target,d.param,d.value,p)||!1}return!1}function s(d,p){return r(d).reduce((w,v)=>w&&l(v,p),!0)}function u(d,p){const c=Object.keys(d),f=c.includes("allOf"),w=c.includes("anyOf"),v=f||w,h=(v?d[v?f?"allOf":"anyOf":"allOf"]:[d]).map(y=>s(y,p));return f?!h.includes(!1):h.includes(!0)}return{parseValueSchema:u}}const Y={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"}},ii={},ri={};ai();function Be(e,n,o=new Map,a=(l,s,u)=>s,i={},r=l=>l){return bn[n.title]=n,Cn[n.title]=a,ii[n.title]=i,ri[n.title]=r,(l={})=>{const s=oi(l,n,o),u=Object.keys(e).reduce((d,p)=>(d[p]=e[p].default,d),{});return Object.assign(u,s)}}function We(e,n){return{customClass:n.class,customStyle:n.style}}function li(){function e(n,o){const{id:a}=n||{},{dataSource:i}=n||{};return i===void 0?{}:{data:o.getValue(a),"onUpdate:data":(...r)=>{}}}return{resolve:e}}function si(){function e(n,o){const{dataSource:a}=n||{};return a===void 0?{}:{}}return{resolve:e}}function ci(){function e(n,o){return n.selectItemById(o)}return{selectItemById:e}}function ui(){function e(n,o){return n.selectItemById(o)}return{selectItemById:e}}const di=new Map([["appearance",pn.resolveAppearance]]);function fi(e,n,o){return n}const pi={$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"]},mi={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:"右对齐"}]}}}}}},Rt={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"}},Sn=Be(Rt,pi,di,fi,mi),hi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},gi=t.defineComponent({name:"FOverlay",props:hi,emits:["click"],setup(e,n){const o=t.ref(e.popupContentPosition),a=t.ref(e.host),i=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(s){n.emit("click"),s.preventDefault(),s.stopPropagation()}t.computed(()=>{const s=a.value;if(s){const u=s.getBoundingClientRect(),{left:d,top:p,height:c}=u;return{left:d,top:p+c}}return o.value});const l=t.computed(()=>({}));return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var s,u;return[t.createVNode("div",{class:"overlay-container",onClick:d=>r(d),style:i.value},[t.createVNode("div",{style:l.value},[(u=(s=n.slots).default)==null?void 0:u.call(s)])])]}})}});function yi(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function vi(e){const n=document.createElement("div");n.style.display="contents";let o;const a=e.onClickCallback||(()=>{}),i=()=>{a(),o&&o.unmount()};return o=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const r=yi(e);return()=>t.createVNode(gi,{"popup-content-position":e.popupPosition,host:e.host,onClick:i,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(n),o.mount(n),o}class bi{static show(n){return vi(n)}}const Ci={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 Pe{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const a=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const i=parseInt(a[4],10),r=parseInt(a[5],10);return{x:i,y:r}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new Pe(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new Pe(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let a=0;a<n.changedTouches.length;a++)if(n.changedTouches[a].target===o)return new Pe(n.changedTouches[a].clientX,n.changedTouches[a].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 Pe(0,0);if(window){const a=window.getComputedStyle(n);if(a){const i=parseInt(a.getPropertyValue("left"),10),r=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(i)?0:i,o.y=isNaN(r)?0:r}return o}return null}static copy(n){return new Pe(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 ot{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new ot(0,0);if(window){const a=window.getComputedStyle(n);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(n){return new ot(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function wi(e,n){const o=t.ref(),a=t.ref(),i=t.ref(),r=t.ref(),l=t.ref(),s=t.ref(),u=t.ref(),d=t.ref(),p=t.ref(),c=t.ref(),f=t.ref(),w=t.ref(),v=t.ref(e.draggable),b=t.ref(!1);function g(){const O=a.value||document.body,P=window.getComputedStyle(O);if(!P||!o.value)return;const E=Pe.getTransformInfo(o.value),j={};u.value&&(j.deltaL=o.value.offsetLeft-u.value.x,j.deltaT=o.value.offsetTop-u.value.y);const R=P.getPropertyValue("position");j.width=O.clientWidth,j.height=O.clientHeight,j.pr=parseInt(P.getPropertyValue("padding-right"),10),j.pb=parseInt(P.getPropertyValue("padding-bottom"),10),j.position=P.getPropertyValue("position"),R==="static"&&(O.style.position="relative"),j.translateX=E.x,j.translateY=E.y,c.value=j}function h(O){if(o.value){r.value=ot.getCurrent(o.value),l.value=Pe.getCurrent(o.value),s.value=r.value?ot.copy(r.value):null,u.value=l.value?Pe.copy(l.value):null,g();const P=O.target.getAttribute("type")||"";d.value={n:!!P.match(/n/),s:!!P.match(/s/),w:!!P.match(/w/),e:!!P.match(/e/)}}}function m(){var O,P,E,j;if(o.value){const R=o.value;d.value&&((d.value.n||d.value.s)&&((O=s.value)!=null&&O.height)&&(R.style.height=s.value.height+"px"),(d.value.w||d.value.e)&&((P=s.value)!=null&&P.width)&&(R.style.width=s.value.width+"px"),u.value&&((E=u.value)!=null&&E.x&&(R.style.left=u.value.x+"px"),(j=u.value)!=null&&j.y&&(R.style.top=u.value.y+"px")))}}function y(){const O=e.minHeight?e.minHeight:1,P=e.minWidth?e.minWidth:1;s.value&&u.value&&d.value&&r.value&&(s.value.height<O&&(s.value.height=O,d.value.n&&l.value&&(u.value.y=l.value.y+(r.value.height-O))),s.value.width<P&&(s.value.width=P,d.value.w&&l.value&&(u.value.x=l.value.x+(r.value.width-P))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,l.value&&d.value.n&&(u.value.y=l.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,d.value.w&&l.value&&(u.value.x=l.value.x+(r.value.width-e.maxWidth))))}function V(){if(a.value){const O=c.value;if(u.value&&s.value&&d.value&&r.value){const P=O.width-O.pr-O.deltaL-O.translateX-u.value.x,E=O.height-O.pb-O.deltaT-O.translateY-u.value.y;d.value.n&&u.value.y+O.translateY<0&&l.value&&(u.value.y=-O.translateY,s.value.height=r.value.height+l.value.y+O.translateY),d.value.w&&u.value.x+O.translateX<0&&l.value&&(u.value.x=-O.translateX,s.value.width=r.value.width+l.value.x+O.translateX),s.value.width>P&&(s.value.width=P),s.value.height>E&&(s.value.height=E)}}}function C(O){if(!i.value||!r.value||!l.value||!d.value)return;O.subtract(i.value);const P=O.x,E=O.y;d.value.n?(u.value.y=l.value.y+E,s.value.height=r.value.height-E):d.value.s&&(s.value.height=r.value.height+E),d.value.e?s.value.width=r.value.width+P:d.value.w&&(s.value.width=r.value.width-P,u.value.x=l.value.x+P),V(),y(),m()}function F(O){if(!p.value)return;const P=Pe.fromEvent(O);P&&C(P)}function k(){if(o.value){const{width:O,height:P,x:E,y:j}=o.value.getBoundingClientRect(),R=Pe.getTransformInfo(o.value);return{size:{width:O,height:P},position:{x:E-R.x,y:j-R.y}}}return null}function x(O){if(o.value){const P=k();f.value=P}i.value=void 0,r.value=null,l.value=null,s.value=null,u.value=null,d.value=null,p.value=null,document.removeEventListener("mousemove",F),document.removeEventListener("mouseup",x)}function S(){document.addEventListener("mousemove",F),document.addEventListener("mouseup",x)}function _(O){O instanceof MouseEvent&&O.button===2||v.value&&(O.stopPropagation(),O.preventDefault(),i.value=Pe.fromEvent(O),p.value=O.target,h(O),S())}function M(O){return o.value=O,t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:P=>_(P)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:P=>_(P)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:P=>_(P)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:P=>_(P)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:P=>_(P)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:P=>_(P)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:P=>_(P)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:P=>_(P)},null)])}function T(O=!0){const P=a.value||document.body,E=ot.getCurrent(P),j=o.value;O&&(w.value=k(),w.value.transform=j.style.transform),E&&j&&(s.value=E,j.style.height=s.value.height-14+"px",j.style.width=s.value.width-14+"px",j.style.left="7px",j.style.top="7px",j.style.transform="",f.value={size:s.value,position:{x:0,y:0}},v.value=!1,b.value=!0)}function I(){var O,P;if(w.value){const E={width:w.value.size.width||0,height:w.value.size.height||0},j={x:(window.innerWidth-E.width)/2,y:(window.innerHeight-E.height)/2};(O=s.value)==null||O.set(E),(P=u.value)==null||P.set(j);const R=o.value;R.style.height=E.height+"px",R.style.width=E.width+"px",R.style.left=`${j.x}px`,R.style.top=`${j.y}px`,R.style.transform="",f.value={size:E,position:j},v.value=e.draggable,b.value=!1}}function N(){if(o.value){const O=ot.getCurrent(o.value);if(O){const{width:P,height:E}=O;o.value.style.left=`${(window.innerWidth-P)/2}px`,o.value.style.top=`${(window.innerHeight-E)/2}px`,o.value.style.transform=""}}}function B(){const O=()=>{b.value?T(!1):N()};return window.addEventListener("resize",O),()=>{window.removeEventListener("resize",O)}}const $=B();return{renderResizeBar:M,boundingElement:a,resizedEventParam:f,maximize:T,restore:I,allowDrag:v,isMaximized:b,unWindowResizeHandle:$}}function Si(e,n,o){const a=t.ref(),i=t.ref(e.draggable),r=t.ref(e.lockAxis),l=t.ref(),s=t.ref(),u=t.ref(!1),d=t.ref(new Pe(0,0)),p=t.ref(new Pe(0,0)),c=t.ref(new Pe(0,0)),f=t.ref(new Pe(0,0));t.watch(()=>o.value,k=>{l.value.style.cursor=k?"move":"default"});function w(k,x){if(x.tagName==="BUTTON")return!1;if(x===k)return!0;for(const S in x.children)if(x.children.hasOwnProperty(S)&&w(k,x.children[S]))return!0;return!1}function v(){var _,M;let k=c.value.x+p.value.x,x=c.value.y+p.value.y;r.value==="x"?(k=((_=d.value)==null?void 0:_.x)||0,c.value.x=0):r.value==="y"&&(x=((M=d.value)==null?void 0:M.y)||0,c.value.y=0);const S=`translate3d(${Math.round(k)}px, ${Math.round(x)}px, 0px)`;a.value&&(a.value.style.transform=S),f.value.x=k,f.value.y=x}function b(){if(!s.value||!a.value)return null;const k=s.value.getBoundingClientRect(),x=a.value.getBoundingClientRect(),S={top:k.top<x.top,right:k.right>x.right,bottom:k.bottom>x.bottom,left:k.left<x.left};return S.top||(c.value.y-=x.top-k.top),S.bottom||(c.value.y-=x.bottom-k.bottom),S.right||(c.value.x-=x.right-k.right),S.left||(c.value.x-=x.left-k.left),v(),S}function g(k){k&&(d.value&&k.subtract(d.value),c.value.set(k),v(),b())}function h(k){u.value&&i.value&&(k.stopPropagation(),k.preventDefault(),g(Pe.fromEvent(k,l.value)))}function m(){var k;u.value&&(u.value=!1,p.value.add(c.value),c.value.reset(),(k=a.value)==null||k.classList.remove("ng-dragging"),document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",m))}function y(){!u.value&&l.value&&(u.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",h),document.addEventListener("mouseup",m))}function V(){if(a.value){const k=Pe.getTransformInfo(a.value);p.value.set(k);return}p.value.reset()}function C(k){if(!o.value||k instanceof MouseEvent&&k.button===2)return;const x=k.target||k.srcElement;l.value!==void 0&&x&&!w(x,l.value)||i.value!==!1&&(document.body.click(),k.stopPropagation(),k.preventDefault(),d.value=Pe.fromEvent(k,a.value),V(),y())}function F(k,x,S){if(i.value&&x){if(k)l.value=k;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const _=x.querySelector(e.dragHandle);_&&(l.value=_)}}a.value=x,s.value=S,l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",C)}}return{registerDraggle:F,resetTranslate:V}}function xn(e,n){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&n({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function xi(e,n){const o=t.ref(e.enableEsc);let a=null;return o.value?(a=xn("Escape",i=>{n.emit("esc",{event:i.event,type:"esc"})}),{remove:a}):null}function Vi(e,n){const o=t.ref(e.enableEnter);let a=null;return o.value?(a=xn("Enter",i=>{n.emit("enter",{event:i.event,type:"enter"})}),{remove:a}):null}const Vn=t.defineComponent({name:"FModal",props:Ci,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(e,n){const o=t.ref(e.width||300),a=t.ref(e.height||200),i=t.ref(e.modelValue),r=t.ref(""),l=t.ref(e.class),s=t.ref(e.fitContent),u=t.ref(e.showHeader),d=t.ref(""),p=t.ref(e.showCloseButton),c=t.ref(e.showMaxButton),f=t.ref(!1),w=t.ref(""),v=t.ref(""),b=t.ref(""),g=t.ref(e.showButtons),h=t.ref(e.title),m=t.ref(e.reiszeable),y=t.ref(e.containment||null),V=t.ref();function C(D,X){i.value=!1,n.emit("update:modelValue",!1),X!=null&&n.emit(X?"accept":"cancel"),n.emit("closed",D)}const F=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:D=>{C(D,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:D=>{C(D,!0)}}],k=t.ref(e.buttons&&e.buttons.length?e.buttons:F),x=t.computed(()=>!!d.value),S=t.computed(()=>!!g.value&&!!k.value),_=t.ref(),M=t.ref(),T=t.ref(!1),{renderResizeBar:I,maximize:N,restore:B,boundingElement:$,resizedEventParam:O,allowDrag:P,unWindowResizeHandle:E}=wi(e),{registerDraggle:j}=Si(e,n,P);t.watch(()=>e.title,(D,X)=>{D!==X&&(h.value=D)}),t.watch(()=>e.modelValue,(D,X)=>{D!==X&&(i.value=D)}),t.watch(()=>e.showHeader,(D,X)=>{D!==X&&(u.value=D)}),t.watch(()=>e.showButtons,(D,X)=>{D!==X&&(g.value=D)}),t.watch(()=>O.value,(D,X)=>{const re=D||{},q=X||{};JSON.stringify(re)!==JSON.stringify(q)&&n.emit("resize",{newSize:D,oldSize:X})});function R(){const D=document.querySelectorAll(".farris-modal").length;(!D||D-1<=0)&&document.body.classList.remove("modal-open"),V.value&&V.value.classList.remove("show")}const W=t.computed(()=>(i.value?document.body.classList.add("modal-open"):R(),i.value)),te=t.computed(()=>{const D={modal:!0,"farris-modal":!0,fade:!0};return D["f-modal-fitContent"]=!!s.value,D.show=!!W.value,D}),pe=t.computed(()=>{var re;const D={"modal-dialog":!0},X=(re=l.value)==null?void 0:re.split(" ");return X==null||X.reduce((q,Ve)=>(q[Ve]=!0,q),D),D}),Ne=t.computed(()=>({position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${a.value}px`})),me=t.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),Se=t.computed(()=>{const D={display:u.value?"":"none"};return D["pointer-events"]=P.value?"auto":"none",D}),xe=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:T.value})),ge=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":w.value==="iframe"}));function de(){return{}}const ye=t.computed(()=>{const D={textAlgin:b.value},X=de();return Object.assign(D,X)});function G(D){if(D.stopPropagation(),T.value){T.value=!1,B();return}N(),T.value=!0}async function U(D,X){D.handle&&await D.handle(X,D)&&n.emit("closed",X)}function ce(D){D.width&&(o.value=D.width),D.height&&(a.value=D.height),D.buttons&&(k.value=D.buttons),D.title&&(h.value=D.title)}let ae=null,ne=null;t.onMounted(()=>{M.value&&!y.value&&(y.value=M.value.parentElement,$.value=y.value,j(_.value,M.value,$.value)),W.value&&document.body.classList.add("modal-open"),ae=xi(e,n),ne=Vi(e,n)}),t.onUnmounted(()=>{R(),E&&E(),ae&&ae.remove(),ne&&ne.remove()}),n.expose({modalElementRef:M,updateModalOptions:ce,close:C,maxDialog:G});function ve(){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)]),c.value&&t.createVNode("li",{onClick:G,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:xe.value},null)]),p.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:D=>C(D,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function ue(){return t.createVNode("div",{class:"modal-footer",style:ye.value},[k.value&&k.value.map(D=>t.createVNode("button",{name:D.name,type:"button",class:D.class+(D.iconClass?" btn-icontext":""),onClick:X=>{U(D,X)}},[!!D.iconClass&&t.createVNode("i",{class:D.iconClass},null),D.text]))])}function be(){return t.createVNode("div",{ref:_,class:"modal-header",style:Se.value},[t.createVNode("div",{class:"modal-title"},[x.value&&t.createVNode("span",{class:d.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[h.value])]),t.createVNode("div",{class:"actions"},[ve()])])}function je(D){D.stopPropagation()}return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>[W.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>{var D,X;return[t.createVNode("div",{class:te.value,style:"display: block",ref:V,onClick:je},[t.createVNode("div",{id:r.value,class:pe.value,style:Ne.value,ref:M},[t.createVNode("div",{class:me.value},[u.value&&be(),t.createVNode("div",{class:ge.value},[(X=(D=n.slots).default)==null?void 0:X.call(D),w.value==="iframe"&&t.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:v.value},null)]),S.value&&ue()]),!s.value&&m.value&&M.value&&I(M.value)])])]}})]})}});function Fn(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";const o=t.createApp({setup(a,i){t.onUnmounted(()=>{document.body.removeChild(n)});const r=t.ref(),l=t.ref(e.class||""),s=t.ref(!!e.showButtons),u=t.ref(!!e.showHeader),d=t.ref(e.showCloseButton==null?!0:e.showCloseButton),p=t.ref(!0),c=t.ref(e.title||""),f=e.acceptCallback||(()=>{}),w=e.rejectCallback||(()=>{}),v=e.closedCallback||(m=>{}),b=e.resizeHandle||(m=>{}),g=Fn(e),h=m=>{p.value=!1,o.unmount(),v(m)};return t.onMounted(()=>{}),i.expose({modalRef:r}),()=>t.createVNode(Vn,{ref:r,class:l.value,modelValue:p.value,"onUpdate:modelValue":m=>p.value=m,title:c.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":u.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:h,onResize:b},{default:()=>[g&&g(o)]})}});return document.body.appendChild(n),o.mount(n),o}class Ni{constructor(n){L(this,"appContext",null);L(this,"modalRef",t.ref());L(this,"activeModalIndex",t.ref(0));L(this,"modalRefs",{});L(this,"isUseEscCloseModal",t.ref(!1));L(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 Fi(o)}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const a=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),i=t.ref(!0),r=a.value.acceptCallback||(()=>{}),l=a.value.rejectCallback||(()=>{}),s=a.value.closedCallback||((h,m)=>{}),u=a.value.resizeHandle||(h=>{});let d;const p=Fn(a.value),c=h=>{var y;i.value=!1;const m=(y=h==null?void 0:h.target)==null?void 0:y.classList.contains("modal_close");s(h,this.isUseEscCloseModal.value?"esc":m?"icon":"button")},f=h=>{c(h),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 m=Object.keys(this.modalRefs);m.length>0?this.activeModalIndex.value=Math.max(...m):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},w=h=>{var m;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((m=this.activeModalInstance.value)==null||m.close(h==null?void 0:h.event))},v=()=>t.createVNode(Vn,t.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":h=>i.value=h},a.value,{onAccept:r,onCancel:l,onClosed:f,onResize:u,onEsc:w}),{default:()=>[p&&p()]});return d=(h=>{const m=t.h(v,h);return m.appContext=this.appContext,t.render(m,o),m})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:h=>{a.value={...a.value,...h},d&&t.render(t.cloneVNode(d,{...a}),o)},destroy:f,modalRef:this.activeModalInstance}}}const Nn=Symbol("FModalService");function kn(e,n){function o(){const a=e.beforeOpen||e.beforeClickButton||null;let i=Promise.resolve(!0);if(a){const r=a(n.value);if(typeof r>"u")return i;typeof r=="boolean"?i=Promise.resolve(r):i=r}return i}return{judgeCanOpen:o}}function _n(e,n,o,a,i){const r=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:u}=kn(e,i),d=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),p=t.inject(Nn,null),c=t.ref();async function f(b){if(await u()&&d.value){const g=!!n.slots.default;if(r.value==="Modal"){const h=e.modalOptions,m=p==null?void 0:p.open({...h,render:()=>n.slots.default&&n.slots.default()});c.value=m==null?void 0:m.modalRef}r.value==="Overlay"&&bi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),g&&r.value==="Popup"&&a.togglePopup(!0),g&&l.value&&a.hidePopup(),n.emit("clickButton",{origin:b,value:e.modelValue})}}function w(b){n.emit("mouseEnterIcon",b)}function v(b){n.emit("mouseLeaveIcon",b)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:w,onMouseLeaveButton:v,modalRef:c}}function In(e,n,o,a){const i=t.ref(),r=t.ref(!1),{judgeCanOpen:l}=kn(e,a);function s(){const c=i.value;c&&c.show(o.value)}async function u(c=!1){if(!!n.slots.default){if(!c&&!r.value&&!await l())return;r.value=!r.value,await t.nextTick(),s()}}async function d(c=!1){if(!!n.slots.default){if(!c&&!await l())return;r.value=!0,await t.nextTick(),s()}}function p(){r.value=!1}return{hidePopup:p,popup:d,shouldPopupContent:r,togglePopup:u,popoverRef:i}}function ki(e,n,o){const{buttonGroupClass:a}=o,i=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:a.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:i},null):null]),buttonHandleElement:i}}const Lt=t.defineComponent({name:"FButtonEdit",props:Rt,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=Nt.useDesignerComponent(o,a),r=t.ref(e.customClass),l=t.ref(e.modelValue),s=In(e,n,o,l),u=_n(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=i}),n.expose(i.value);const c=t.computed(()=>{const w={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return r.value&&r.value.split(" ").reduce((v,b)=>(v[b]=!0,v),w),w}),{renderButtonGroup:f}=ki(e,n,u);return()=>t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:c.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()])])}});function dt(e,n,o){var V;function a(){o!=null&&o.resolveComponentContext&&o.resolveComponentContext()}a();const i=o&&o.getStyles&&o.getStyles()||"",r=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 u(){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 c(C){if(!C||!C.value)return null;if(C.value.schema&&C.value.schema.type==="component")return C.value;const F=t.ref(C==null?void 0:C.value.parent),k=c(F);return k||null}function f(C=n){const{componentInstance:F,designerItemElementRef:k}=C;return!F||!F.value?null:F.value.canMove?k:f(C.parent)}function w(C){return!!o&&o.canAccepts(C)}function v(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function b(){}function g(C,F){F&&o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(F)}function h(C,F){const{componentType:k}=C;let x=wn(k,C,F);o&&o.onResolveNewComponentSchema&&(x=o.onResolveNewComponentSchema(C,x));const S=k.toLowerCase().replace("-","_");return x&&!x.id&&x.type===k&&(x.id=`${S}_${Math.random().toString().slice(2,6)}`),x}function m(C){}function y(...C){if(o&&o.getPropsConfig)return o.getPropsConfig(...C)}return l.value={canMove:s(),canSelectParent:u(),canDelete:d(),canNested:!p(),contents:n==null?void 0:n.schema.contents,elementRef:e,parent:(V=n==null?void 0:n.parent)==null?void 0:V.componentInstance,schema:n==null?void 0:n.schema,styles:i,designerClass:r,canAccepts:w,getBelongedComponentInstance:c,getDraggableDesignItemElement:f,getDraggingDisplayText:v,getPropConfig:y,getDragScopeElement:b,onAcceptMovedChildElement:g,onChildElementMovedOut:m,addNewChildComponentSchema:h,updateDragAndDropRules:a,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1)},l}function Tn(e){return typeof e=="string"&&e.startsWith("{")&&e.endsWith("}")?(e=e.replace(/'/g,'"'),{mappingFields:JSON.parse(e)}):{mappingFields:e}}const _i=new Map([["appearance",We],["mappingFields",(e,n,o)=>{if(n)return Tn(n);const{mappingFields:a}=o;return Tn(a)}],["uri",(e,n,o)=>{var a;return n?{uri:n}:{uri:(a=o==null?void 0:o.dataSource)==null?void 0:a.uri}}]]),Ii={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/lookup.schema.json",title:"lookup",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"lookup"},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:"帮助"},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},required:{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},textField:{description:"帮助显示文本字段",type:"string",default:""},mappingFields:{description:"帮助字段映射",type:"object",default:{}},uri:{type:"string",default:""}},required:["id","type"],ignore:["id","appearance","binding"]};function Ti(e,n,o){return n}var Ye=(e=>(e.List="LIST",e.Tree="TREELIST",e.ListList="NAVLIST",e.TreeList="NAVTREELIST",e.ListTree="NAVLISTTREE",e))(Ye||{}),Ht=(e=>(e.default="default",e.all="all",e.async="async",e))(Ht||{});const _t="__lookup_active_tab__",Mi="__lookup_user_data_id__";var Le=(e=>(e.dataList="datalist",e.favorite="favorite",e))(Le||{});const At=Symbol("f_lookup-http-service_token");var zt=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.Greater=2]="Greater",e[e.GreaterOrEqual=3]="GreaterOrEqual",e[e.Less=4]="Less",e[e.LessOrEqual=5]="LessOrEqual",e[e.Like=6]="Like",e[e.LikeStartWith=7]="LikeStartWith",e[e.LikeEndWith=8]="LikeEndWith",e[e.NotLike=9]="NotLike",e[e.NotLikeStartWith=10]="NotLikeStartWith",e[e.NotLikeEndWith=11]="NotLikeEndWith",e[e.Is=12]="Is",e[e.IsNot=13]="IsNot",e[e.In=14]="In",e[e.NotIn=15]="NotIn",e))(zt||{}),It=(e=>(e[e.Empty=0]="Empty",e[e.And=1]="And",e[e.Or=2]="Or",e))(It||{}),Mn=(e=>(e[e.Value=0]="Value",e[e.Expression=1]="Expression",e.FrontExpress="frontExpress",e))(Mn||{});const Ct={id:{type:String,require:!0},uri:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!1},mappingFields:{type:Object,default:null},fitColumns:{type:Boolean,default:!0},columns:{type:Array,default:[]},idField:{type:String,default:"id"},textField:{type:String,defalut:"name"},data:{type:Array,default:[]},displayType:{type:String,default:Ye.List},dialog:{type:Object,default:{title:"请选择"}},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},pagination:{type:Object,default:{enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1}},enableClear:{type:Boolean,default:!0},inputType:{type:String,default:"text"},idValue:{type:String,default:""},dictPicking:{type:Function,default:null},dictPicked:{type:Function,default:null},beforeSelectData:{type:Function,default:null},enableSearchBar:{type:Boolean,default:!0},searchFields:{type:Array,default:[]},showAllSearchColumns:{type:Boolean,default:!0},navigation:{type:Object,default:null},textChangeType:{type:String,default:"any"},enableMultiFieldSearch:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},navTreeToList:{type:Boolean,default:!1},loadTreeDataType:{type:String,default:Ht.all},enableToSelect:{type:Boolean,default:!0},customData:{type:Object,default:null},modelValue:{type:String,default:""},enableUserData:{type:Boolean,default:!1},onReady:{type:Function,default:null},context:{type:Object,default:{}}},Gt=Be(Ct,Ii,_i,Ti);function On(e,n){e.schema;const o=t.ref(!0),a=t.ref(!0);function i(c){return!1}function r(){return!1}function l(){return!1}function s(){return!0}function u(c){}function d(){}function p(c){return null}return{canAccepts:i,checkCanDeleteComponent:r,checkCanMoveComponent:l,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:u,resolveComponentContext:d,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:p}}class Tt{constructor(n,o){L(this,"componentId");L(this,"viewModelId");L(this,"eventsEditorUtils");L(this,"formSchemaUtils");L(this,"formMetadataConverter");L(this,"designViewModelUtils");L(this,"designViewModelField");L(this,"controlCreatorUtils");L(this,"designerHostService");L(this,"schemaService",null);L(this,"metadataService",null);L(this,"propertyConfig",{type:"object",categories:{}});var a;this.componentId=n,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((a=this.formSchemaUtils)==null?void 0:a.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 a=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=a.fields.find(i=>i.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:Y[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 a=o&&o.parent&&o.parent.schema;if(!a)return;const i=a.contents.findIndex(l=>l.id===n),r=$e.cloneDeep(a.contents[i]);a.contents.splice(i,1),a.contents.splice(i,0,r)}}const ht=class ht{static getEditorTypesByMDataType(n){const o=ht.fieldControlTypeMapping[n];return o||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(let o in ht.fieldControlTypeMapping)ht.fieldControlTypeMapping[o].forEach(a=>{n.find(i=>i.key===a.key&&i.value===a.value)||n.push({key:a.key,value:a.value})});return n}};L(ht,"fieldControlTypeMapping",{String:[{key:Y["input-group"].type,value:Y["input-group"].name},{key:Y.lookup.type,value:Y.lookup.name},{key:Y["date-picker"].type,value:Y["date-picker"].name},{key:Y["check-box"].type,value:Y["check-box"].name},{key:Y["check-group"].type,value:Y["check-group"].name},{key:Y["radio-group"].type,value:Y["radio-group"].name},{key:Y["combo-list"].type,value:Y["combo-list"].name},{key:Y.textarea.type,value:Y.textarea.name}],Text:[{key:Y.textarea.type,value:Y.textarea.name},{key:Y.lookup.type,value:Y.lookup.name}],Decimal:[{key:Y["number-spinner"].type,value:Y["number-spinner"].name}],Integer:[{key:Y["number-spinner"].type,value:Y["number-spinner"].name}],Number:[{key:Y["number-spinner"].type,value:Y["number-spinner"].name}],BigNumber:[{key:Y["number-spinner"].type,value:Y["number-spinner"].name}],Date:[{key:Y["date-picker"].type,value:Y["date-picker"].name}],DateTime:[{key:Y["date-picker"].type,value:Y["date-picker"].name}],Boolean:[{key:Y.switch.type,value:Y.switch.name},{key:Y["check-box"].type,value:Y["check-box"].name}],Enum:[{key:Y["combo-list"].type,value:Y["combo-list"].name},{key:Y["radio-group"].type,value:Y["radio-group"].name}],Object:[{key:Y.lookup.type,value:Y.lookup.name},{key:Y["combo-list"].type,value:Y["combo-list"].name},{key:Y["radio-group"].type,value:Y["radio-group"].name}]});let wt=ht;const Mt=t.ref(0);function Oi(e,n){const o=n.getBoundingClientRect(),a=e.getBoundingClientRect(),i=a.top>=o.top,r=a.top<=o.bottom;return i&&r}function Bi(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 a=n.querySelector(".component-btn-group");if(a){if(!Oi(n,e)){a.style.display="none";return}a.style.display="";const r=a.getBoundingClientRect(),l=a.querySelector("div");if(l){const s=l.getBoundingClientRect();l.style.top=r.top+"px",l.style.left=r.left-s.width+"px"}}}class $i{constructor(){L(this,"label","");L(this,"id","");L(this,"columnInSM",12);L(this,"columnInMD",6);L(this,"columnInLG",3);L(this,"columnInEL",2);L(this,"displayWidthInSM",1);L(this,"displayWidthInMD",1);L(this,"displayWidthInLG",1);L(this,"displayWidthInEL",1);L(this,"displayColumnCountAtBreakPoint","md");L(this,"tagRow",0);L(this,"showTopBorder",0);L(this,"group",1);L(this,"isSupportedClass",!0);L(this,"fieldSetId","")}}function Pi(e){let n,o;const a=new Map;let i=[];function r(p,c){const w=p.split(" ").filter(m=>m.startsWith("col-"));if(w.length===0){c.isSupportedClass=!1;return}let v=w.find(m=>/^col-([1-9]|10|11|12)$/.test(m)),b=w.find(m=>/^col-md-([1-9]|10|11|12)$/.test(m)),g=w.find(m=>/^col-xl-([1-9]|10|11|12)$/.test(m)),h=w.find(m=>/^col-el-([1-9]|10|11|12)$/.test(m));v=v||"col-12",c.columnInSM=parseInt(v.replace("col-",""),10),c.displayWidthInSM=c.columnInSM/12,c.displayWidthInSM!==1&&(c.isSupportedClass=!1),b=b||"col-md-"+c.columnInSM,c.columnInMD=parseInt(b.replace("col-md-",""),10),c.displayWidthInMD=c.columnInMD/6,[1,2].includes(c.displayWidthInMD)||(c.isSupportedClass=!1),g=g||"col-xl-"+c.columnInMD,c.columnInLG=parseInt(g.replace("col-xl-",""),10),c.displayWidthInLG=c.columnInLG/3,[1,2,3,4].includes(c.displayWidthInLG)||(c.isSupportedClass=!1),h=h||"col-el-"+c.columnInLG,c.columnInEL=parseInt(h.replace("col-el-",""),10),c.displayWidthInEL=c.columnInEL/2,[1,2,3,4,5,6].includes(c.displayWidthInEL)||(c.isSupportedClass=!1)}function l(p,c,f,w=!1){let v=!1;p.contents.forEach(b=>{if(b.type==="fieldset"){f+=1,l(b,c,f,!0),v=!0;return}v&&(f+=1,v=!1);const g=b.appearance&&b.appearance.class,h=new $i;g?r(g,h):h.isSupportedClass=!1,h.label=b.label||b.id,h.id=b.id,h.group=f,w&&(h.fieldSetId=p.id),o===b.id&&(n=f),a.set(b.id,b),c.push(h)})}function s(p){const c=e.getComponentById(p);if(!c||!c.componentType||!c.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const f=e.selectNode(c,w=>w.type===Nt.DgControl["response-form"].type);return!f||!f.contents||f.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:f}}function u(p,c){c=c||p.id;const{result:f,message:w,formNode:v}=s(c);if(!f)return{result:f,message:w};o=p.id,i=[],a.clear();const b=v.contents[0].type===Nt.DgControl.fieldset.type?0:1;l(v,i,b);const g=i.find(m=>!m.isSupportedClass);return{defaultState:{defaultGroupNumber:n||1,model:g?"customize":"standard"},importData:i}}function d(p,c){c=c;const{result:f,formNode:w}=s(c);if(!f)return"";const v=[];return p.forEach(b=>{var m;const g=a.get(b.id),h=g.appearance&&g.appearance.class;if(h){const V=h.split(" ").filter(_=>!_.startsWith("col-")),C="col-"+b.columnInSM,F="col-md-"+b.columnInMD,k="col-xl-"+b.columnInLG,x="col-el-"+b.columnInEL,S=[C,F,k,x].concat(V);g.appearance.class=S.join(" ")}if(b.fieldSetId){const y=w.contents.find(C=>C.id===b.fieldSetId),V=v.find(C=>C.id===b.fieldSetId);V?(m=V.contents)==null||m.push(g):(v.push(y),y.contents=[g])}else v.push(g)}),w.contents=v,w.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:u,changeFormControlsByResponseLayoutConfig:d,getResonseFormLayoutConfig:l}}class ze extends Tt{constructor(o,a){super(o,a);L(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=Pi(this.formSchemaUtils)}getPropertyConfig(o,a){return this.propertyConfig.categories.basic=this.getBasicProperties(o,a),this.propertyConfig.categories.appearance=this.getAppearanceProperties(o,a),this.propertyConfig.categories.editor=this.getEditorProperties(o),this.propertyConfig}getBasicProperties(o,a){var s;var i=this;this.setDesignViewModelField(o);const r=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:i.designViewModelField?wt.getEditorTypesByMDataType((s=i.designViewModelField.type)==null?void 0:s.name):wt.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:r},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:l}}},setPropertyRelates(u,d){if(u)switch(u&&u.propertyID){case"type":{i.changeControlType(o,u,a);break}case"label":{u.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,a){var i=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:i.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,i.componentId)}}},setPropertyRelates(r,l){if(r)switch(r&&r.propertyID){case"responseLayout":i.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(r.propertyValue,i.componentId||o.id),i.updateUnifiedLayoutAfterResponseLayoutChanged(i.componentId),i.updateElementByParentContainer(o.id,a),delete o.responseLayout;break;case"class":i.updateUnifiedLayoutAfterControlChanged(r.propertyValue,o.id,this.componentId),i.updateElementByParentContainer(o.id,a);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,a,i){var p,c,f,w;const r=a.propertyValue,l=i&&i.parent&&i.parent.schema;if(!l)return;const s=l.contents.findIndex(v=>v.id===o.id),u=l.contents[s];let d;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),d=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)),d||(d=this.controlCreatorUtils.createFormGroupWithoutField(r)),Object.assign(d,{id:u.id,appearance:u.appearance,size:u.size,label:u.label,binding:u.binding,visible:u.visible}),Object.assign(d.editor,{isTextArea:d.isTextArea&&u.isTextArea,placeholder:(p=u.editor)==null?void 0:p.placeholder,holdPlace:(c=u.editor)==null?void 0:c.holdPlace,readonly:(f=u.editor)==null?void 0:f.readonly,require:(w=u.editor)==null?void 0:w.require}),l.contents.splice(s,1),l.contents.splice(s,0,d),i.schema=Object.assign(u,d),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(v=>v.classList.remove("dgComponentSelected")),Mt.value++}getComponentConfig(o,a={},i={}){const r=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},a),l=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},i);return{...r,properties:{...l}}}updateUnifiedLayoutAfterControlChanged(o,a,i){const r=o.split(" ");let l=r.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),s=r.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),u=r.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),d=r.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));l=l||"col-12",s=s||"col-md-"+l.replace("col-",""),u=u||"col-xl-"+s.replace("col-md-",""),d=d||"col-el-"+u.replace("col-xl-","");const p={id:a,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(u.replace("col-xl-",""),10),columnInEL:parseInt(d.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(i,p)}updateUnifiedLayoutAfterResponseLayoutChanged(o,a){const{formNode:i}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!i||!i.unifiedLayout)return;const r=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(i,r,1),a){const v=r.find(b=>b.id===a.id);Object.assign(v||{},a)}const l=r.map(v=>v.columnInSM),s=r.map(v=>v.columnInMD),u=r.map(v=>v.columnInLG),d=r.map(v=>v.columnInEL),p=this.checkIsUniqueColumn(l)?l[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null,f=this.checkIsUniqueColumn(u)?u[0]:null,w=this.checkIsUniqueColumn(d)?d[0]:null;Object.assign(i.unifiedLayout,{uniqueColClassInSM:p,uniqueColClassInMD:c,uniqueColClassInLG:f,uniqueColClassInEL:w})}checkIsUniqueColumn(o){const a=new Set(o);return Array.from(a).length===1}}function ji(e,n,o,a,i,r){const l=t.ref(!1),s=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:u}=r;function d(w){l.value=w}t.watch(i,()=>{d(!!i.value)});function p(w){const v=!e.readonly&&!e.disable&&e.editable,b=!e.editable;w.stopPropagation(),(v||b)&&(u("",!1),d(!l.value),n.emit("clear"))}function c(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:c,onMouseLeaveTextBox:f}}function Di(e,n,o,a,i){const r=t.computed(()=>e.popupOnInput),l=t.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=i,u=t.computed(()=>e.enableTitle?o.value:""),d=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=t.computed(()=>e.readonly||!e.editable),c=t.ref(!1),f=t.computed(()=>!e.disable&&c.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})),v=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 b(S,_=!0){o.value!==S&&(o.value=S,_&&(n.emit("change",S),n.emit("update:modelValue",S)))}function g(S){s.value=!1,b(S,!0)}t.watch(()=>e.modelValue,S=>{o.value=S});function h(S){c.value=!1,n.emit("blur",S),S.stopPropagation()}function m(S){n.emit("click",S)}function y(S){e.disable||(c.value=!0,p.value||(n.emit("focus",S),l.value&&!s.value&&i.popup()))}function V(S){n.emit("input",S.target.value);const _=S.target.value;a.value=_,o.value!==_&&b(_,e.updateOn==="change"),r.value&&!s.value&&i.popup()}function C(S){S.target.tagName!=="INPUT"&&S.preventDefault(),S.stopPropagation()}function F(S){n.emit("keydown",S)}function k(S){S.key==="Enter"&&(r.value||l.value)&&i.hidePopup(),n.emit("keyup",S)}function x(S){const _=S.target.value;S.stopPropagation(),b(_)}return{hasFocusedTextBox:f,isTextBoxReadonly:p,textBoxClass:w,textBoxPlaceholder:d,textBoxTitle:u,inputGroupClass:v,changeTextBoxValue:b,commitValue:g,onBlurTextBox:h,onClickTextBox:m,onFocusTextBox:y,onInput:V,onKeyDownTextBox:F,onKeyUpTextBox:k,onMouseDownTextBox:C,onTextBoxValueChange:x}}function Ei(e,n,o){const a=t.ref(),{isTextBoxReadonly:i,textBoxClass:r,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:u,onClickTextBox:d,onFocusTextBox:p,onInput:c,onKeyDownTextBox:f,onKeyUpTextBox:w,onMouseDownTextBox:v,onTextBoxValueChange:b}=o;return t.onMounted(()=>{var g,h;e.selectOnCreated&&((g=a.value)==null||g.select()),e.focusOnCreated&&((h=a.value)==null||h.focus())}),()=>t.createVNode("input",{ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:r.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:i.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:n.value,onBlur:u,onChange:b,onClick:d,onFocus:p,onInput:c,onKeydown:f,onKeyup:w,onMousedown:v},null)}function Ri(e,n,o){const a=t.ref(e.separator),{changeTextBoxValue:i}=o,r=t.computed(()=>n.value?n.value.split(a.value).map(s=>({name:s,selectable:!0})):[]);function l(s){i(s.map(u=>u.name).join(a.value),!0)}return()=>t.createVNode(mn,{id:`${e.id}-tag-editor`,class:"form-control",data:r.value,showClose:!0,showInput:!0,onChange:l},null)}function Li(e,n,o,a){const{buttonGroupClass:i,onClickButton:r,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:u,showClearButton:d,onClearValue:p}=a,c=t.ref();return{renderButtonGroup:()=>t.createVNode("div",{id:`${e.id}-button-group`,class:i.value},[u.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:r,onMouseenter:l,onMouseleave:s},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:c,onClick:r,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:c}}function Hi(e,n,o){const a=t.ref(e.popupMinWidth),{hidePopup:i,popoverRef:r}=o;return()=>t.createVNode(aa,{id:`${e.id}-popover`,ref:r,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,offsetX:e.popupOffsetX,onHidden:i},{default:()=>{var l,s;return[(s=(l=n.slots).default)==null?void 0:s.call(l)]}})}const at=t.defineComponent({name:"FButtonEdit",props:Rt,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,n){const o=t.ref(),a=t.ref(e.customClass),i=t.ref(e.modelValue),r=In(e,n,o,i),{shouldPopupContent:l,hidePopup:s,togglePopup:u}=r,d=_n(e,n,o,r,i),p=t.ref(""),c=Di(e,n,i,p,r),{hasFocusedTextBox:f,commitValue:w,inputGroupClass:v}=c,b=ji(e,n,i,f,p,c),{onMouseEnterTextBox:g,onMouseLeaveTextBox:h}=b,m=t.computed(()=>{const S={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((_,M)=>(_[M]=!0,_),S),S});function y(){return e.multiSelect&&e.inputType==="tag"?Ri(e,i,c):Ei(e,i,c)}let V=y();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{V=y()});const{renderButtonGroup:C,buttonHandleElement:F}=Li(e,n,d,b),k=Hi(e,n,r),x={commitValue:w,elementRef:o,hidePopup:s,shouldPopupContent:l,togglePopup:u,openDialog:()=>{F.value&&e.buttonBehavior==="Modal"&&F.value.click()},getModal:()=>{var S;return e.buttonBehavior==="Modal"?(S=d.modalRef.value)==null?void 0:S.value:null}};return t.onMounted(()=>{o.value.componentInstance=x,window.onresize=()=>{document.body.click()}}),n.expose(x),()=>t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:m.value,id:e.id}),[t.createVNode("div",{id:`${e.id}-input-group`,class:v.value,onMouseenter:g,onMouseleave:h},[V(),C()])]),l.value&&k()])}}),Ai={$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:{}},zi=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Wt=Symbol("Field_Selector Component Repository Service Token");Be({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:zi},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}},Ai);function Gi(e,n,o){return!n||!n.length?{columns:[]}:(n.forEach(a=>{a.title=a.caption?a.caption:a.title,a.field=a.binding?a.binding.path:a.field}),{columns:n})}const Bn=new Map([["appearance",We],["column","columnOption"],["fields",Gi]]);function Wi(e,n,o){var c;const a=o.parentComponentInstance,i=a.schema.type,r=String(((c=a.schema.appearance)==null?void 0:c.class)||"").split(" "),l=i==="section"||i==="tab-page",s=r.includes("f-page-content-nav"),u=r.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+=u?"f-struct-data-grid f-struct-wrapper":"",d.appearance={class:p},d.contents=[n],d}function qi(e,n,o){const a=o.parentComponentInstance,i=String(a.schema.appearance.class||"").split(" "),r=i.includes("f-page-content-nav"),l=i.includes("f-page-main"),s=e.getSchemaByType("section");s.id=`${n.id}-section`;let u="";return u+=r?"f-section-in-nav ":"",u+=l?"f-section-in-managelist ":"",u+="f-section-grid",s.appearance={class:u},s.contents=[n],s}function Ui(e,n,o){const a=e.getSchemaByType("content-container");return a.id=`${n.id}-layout`,a.appearance={class:"f-grid-is-sub f-utils-flex-column"},a.contents=[n],a}function $n(e,n,o){const i=o.parentComponentInstance.schema.type,r=i==="section"||i==="tab-page";n.appearance={class:"f-component-grid"};const s=(r?Ui:qi)(e,n,o);return Wi(e,s,o)}const Pn={$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"]},qt={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}},Ki=Be(qt,Pn,Bn,$n),Xi=ui(),Yi=si(),jn=Object.assign({},qt,{componentId:{type:String,default:""}}),Ji=Be(jn,Pn,Bn,$n);var De=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(De||{}),Ue=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(Ue||{}),it=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(it||{}),Me=(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))(Me||{}),Ut=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(Ut||{});function Qi(){function e(){return t.createVNode("div",{class:"fv-grid-disable"},null)}return{renderDisableMask:e}}function Zi(e,n,o,a,i){const{columnContext:r}=n,{conditions:l,clearCondition:s,removeCondition:u}=a,d=t.ref([]);function p(){const v=[];Array.from(l.value).forEach((b,g)=>{const h={id:b.id,code:b.fieldCode,labelCode:b.fieldCode,name:b.fieldName,editor:{type:b.value.editorType}};v.push(h)}),d.value=v}t.watch(l,()=>p());function c(v){u(`field_filter_${v}`);const b=r.value.primaryHeaderColumns.find(g=>g.field===v);if(b){b.filterValue=null;let g=b.status;g=(g&Me.filtered)===Me.filtered?g^Me.filtered:g,b.status=g}o.refresh(),i.reCalculateVisualDataRows()}function f(){s(),r.value.primaryHeaderColumns.forEach(v=>{v.filterValue=null;let b=v.status;b=(b&Me.filtered)===Me.filtered?b^Me.filtered:b,v.status=b}),o.refresh(),i.reCalculateVisualDataRows()}function w(){return t.createVNode("div",{class:"fv-grid-filter-panel"},[t.createVNode(hn.FFilterBar,{data:l.value,fields:d.value,mode:"display-only","show-reset":!0,onRemove:c,onReset:f},null)])}return{renderFilterPanel:w}}function er(e,n,o,a,i){const{dropOnGroupPanel:r,groupColumnItems:l}=o,{groupFields:s,shouldGroupingData:u,showGroupPanel:d}=a,p=t.ref();function c(v){s.value=v.map(b=>b.value),n.updateDataView(),i.reCalculateVisualDataRows()}function f(v){v.preventDefault()}function w(){return u.value&&d.value&&t.createVNode("div",{class:"fv-grid-group-panel",onDrop:r,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:c},null)])}return{renderGroupPanel:w}}function Kt(e,n){var w;const o=String(Date.now()),a=((w=e.rowOption)==null?void 0:w.height)||28,i=t.ref(n.value.primaryColumnsWidth);function r(v){const b={};return v.reduce((g,h,m)=>{const y=m<v.length-1?v[m+1]:null;return m===0&&(g[h.field]={left:0}),h.actualWidth!==void 0&&(g[h.field].width=h.actualWidth),y&&(g[y.field]={left:g[h.field].left+(h.actualWidth||0)}),g},b),b}function l(v,b,g){const h=a*(g+1),y=b[v.field].left-h+(b[v.field].width||0),V=v.parent.height?`${v.parent.height}px`:"";return{left:`${h}px`,width:`${y}px`,height:`${V}`}}function s(v,b,g){return{right:"0px",height:`${v.parent.height?`${v.parent.height}px`:""}`}}function u(v,b){const g=v.parent.height?`${v.parent.height}px`:"";return{left:`${b[v.field].left}px`,height:`${g}`,width:isNaN(Number(b[v.field].width))?"100%":`${b[v.field].width}px`}}function d(v,b,g){const m=(b.spanned||[]).reduce((V,C)=>V+(C.parent.height||0),0)+(v.height||0);return{top:`${v.top}px`,left:`${g[b.field].left}px`,width:`${g[b.field].width}px`,height:`${m}px`,padding:`calc(${m/2}px - 1rem) 0`}}function p(v,b){return`${o}_${v.type}_r_${v.index}_c_${b}_${v.refreshKey||""}`}function c(v){return`${o}_${v.type}_r_${v.index}_${v.refreshKey||""}`}function f(v){const b=v.height?`${v.height}px`:"";return{top:`${v.top}px`,width:isNaN(i.value)?"100%":`${i.value}px`,height:`${b}`}}return t.watch(n,()=>{i.value=n.value.primaryColumnsWidth}),{calculateCellPositionInRow:r,cellKey:p,cellPosition:u,groupCellPosition:l,rowKey:c,rowPosition:f,rowSpanCellPosition:d,summaryCellPosition:s}}function tr(e,n,o){const{hasChildrenField:a}=o,i=t.ref("#9399a0"),r=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 c=new Array(n.value.length).fill(0);if(e.showLines){const f=l();n.value.forEach((w,v)=>{const b=f.includes(v),g=w.raw[a.value];c[v]=`repeating-linear-gradient(90deg, ${i.value} 0 1px, transparent 0px 2px) ${g?"-10px":"0px"} ${r.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${i.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${b?"50%":"100%"} no-repeat`}),c[0]=""}return c[p]}function u(p,c,f){return f[p].parents.set(p,!0).forEach(v=>{f[v].childsLength=f[v].childWithLines.filter(b=>c[b].visible).length}),c}function d(p){const w=p.raw.__fv_parent_index__===void 0||p.raw.__fv_parent_index__===-1?0:8,v=0,b=p.raw[a.value],g=p.visible?{left:`${p.layer*10+p.layer*w+v}px`,background:s(p.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return b||(g.paddingLeft="2rem"),g}return{hierarchyCellContentStyle:d,handleCollapsedPaddingBottom:u}}function nr(e,n,o){const a=t.ref(e.iconField);function i(r,l){if(a.value)return r.raw[e.iconField];let s="";return r.raw[o.value]!==!0?s=n.value.leafnodes:s=r.collapse?n.value.fold:n.value.unfold,s}return{treeNodeIconsClass:i}}function Xt(){function e(o,a){const i=o.pre;if(i){const r=o.visible?(i.__fv_data_position__||0)+(i.__fv_data_height__||0):i.__fv_data_position__;o.top=r,a.__fv_data_position__=r}else o.top=0,a.__fv_data_position__=0}function n(o,a,i){if(o){const r=a.parent;a.cellHeight!==o.offsetHeight&&(a.cellHeight=o.offsetHeight),a.cellHeight&&a.cellHeight>(r.height||0)&&(r.height=a.cellHeight,i.__fv_data_height__=r.height),e(r,i)}}return{updateRowPosition:e,updateVisualInfomation:n}}function or(e,n,o,a,i,r){const{dataView:l,fold:s,hasRealChildren:u,unFold:d}=a,{collapseField:p,hasChildrenField:c}=i,{updateRowPosition:f}=Xt();function w(g,h){const m=h[g].layer;let y=g+1;for(;y<h.length&&h[y].layer>m;)y++;return y-1}function v(g,h){o.value[g].collapse=!o.value[g].collapse,o.value[g].raw[p.value]=o.value[g].collapse,o.value[g].raw[c.value]=u(o.value[g].raw);const m=o.value[g].collapse;let y=!1,V=g;for(;V<o.value.length;){const F=o.value[V];if((typeof F.raw.__fv_parent_index__=="number"?Number(F.raw.__fv_parent_index__):-1)>h)F.visible=!m,F.raw.__fv_visible__=F.visible,F.collapse&&(V=w(V,o.value)),y=!0;else if(y){V++;break}V++}let C=g;for(;C<o.value.length;){const F=o.value[C];f(F,F.raw),C++}}function b(g){if(g.raw[c.value]){const m=typeof g.raw.__fv_parent_index__=="number"?Number(g.raw.__fv_parent_index__):-1;v(Number(g.raw.__fv_index__),m)}n.emit("expandNode",{row:g})}return{toggleTreeNode:b}}function ar(e,n,o,a,i,r,l,s,u,d,p){const{onClickCell:c}=r,{gridRowClass:f,onClickRow:w,onMouseoverRow:v,onMouseoutRow:b}=s,{clearSelection:g,enableMultiSelect:h,select:m,unSelect:y,isSelectingHirarchyItem:V,multiSelectOnClickRow:C,multiSelectOnlyOnCheck:F,selectItem:k,toggleSelectItem:x}=u;t.ref(e.cellHeight);const S=t.ref(e.treeNodeIconsData||{}),{hasChildrenField:_,shouldShowCheckBox:M,shouldShowIcon:T}=l,{toggleTreeNode:I}=or(e,n,a,i,l),{toggleSelectHierarchyItem:N}=d,{cellKey:B,cellPosition:$,rowKey:O,rowPosition:P}=Kt(e,o),{hierarchyCellContentStyle:E}=tr(e,a,l),{treeNodeIconsClass:j}=nr(e,S,_);function R(G,U){const ce=G.raw[_.value];return{"fv-tree-node-toggle":ce&&G.collapse,"fv-tree-node-toggle-minus":ce&&!G.collapse}}function W(G,U){G.stopPropagation(),I(U)}function te(G,U){return t.createVNode("div",{class:R(G),onClick:ce=>W(ce,G)},null)}function pe(G,U){return T.value&&t.createVNode("div",{id:"treeNodeIcons",class:j(G,U)},null)}function Ne(G){h.value?(G.checked?m(G):y(G),N(G)):k(G)}function me(G,U){return M.value&&t.createVNode(vt.FCheckBox,{id:"checkbox_for_"+B(G,U.index),indeterminate:G.indeterminate,checked:G.checked,"onUpdate:checked":ce=>G.checked=ce,onChange:()=>Ne(G)},null)}function Se(G,U){return t.createVNode("span",{title:U.data},[U.mode===De.editing?U.getEditor(U):U.formatter?U.formatter(U,G):U.data!=null?U.data.toString():U.data])}function xe(G,U,ce){return t.createVNode("div",{ref:U.setRef,key:B(G,U.index),class:"fv-grid-hierarchy-cell",style:$(U,ce)},[t.createVNode("div",{style:E(G)},[te(G),pe(G,U),me(G,U),Se(G,U)])])}function ge(G,U,ce,ae){return t.createVNode("div",{ref:U.setRef,key:B(G,U.index),class:"fv-grid-cell",style:$(U,ce),onClick:ne=>c(ne,U,G,ae)},[U.mode===De.editing?U.getEditor(U):U.formatter?U.formatter(U,G):U.data!=null?U.data.toString():U.data])}function de(G,U){return U==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===G.field||U==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===G.field}function ye(G,U,ce="primary",ae){return t.createVNode("div",{ref:G.setRef,key:O(G),class:f(G),style:P(G),onMouseover:ne=>v(ne,G),onMouseout:ne=>b(ne,G),onClick:ne=>w(ne,G)},[Object.values(G.data).filter(ne=>U[ne.field]&&ne.rowSpan===1).map((ne,ve)=>{const ue=ae==null?void 0:ae.find(be=>be.field===ne.field);return de(ne,ce)?xe(G,ne,U):ge(G,ne,U,ue)})])}return{renderDataRow:ye}}function Dn(e,n,o){const{horizontalScrollThumbStyle:a,onMouseDownScrollThumb:i,shouldShowHorizontalScrollbar:r}=o;function l(){return r.value&&t.createVNode("div",{class:"fv-grid-horizontal-scroll"},[t.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:a.value,onMousedown:s=>i(s,n,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function ir(e,n,o,a,i){const{currentPage:r,pageSize:l,pageList:s,total:u,showPageIndex:d,showPageList:p,mode:c}=i;function f(g){const{pageIndex:h,pageSize:m}=g;o.navigatePageTo(h),a.resetScroll(),n.emit("pageIndexChanged",{pageIndex:h,pageSize:m})}function w(g){const{pageIndex:h,pageSize:m}=g;o.changePageSizeTo(m),a.resetScroll(),n.emit("pageSizeChanged",{pageIndex:h,pageSize:m})}function v(g){const{pageIndex:h,pageSize:m}=g;o.navigatePageTo(h),a.resetScroll(),n.emit("changed",{pageIndex:h,pageSize:m})}t.onMounted(()=>{});function b(){return t.createVNode("div",{class:"fv-datagrid-pagination"},[t.createVNode(gn,{mode:"default",currentPage:r.value,"onUpdate:currentPage":g=>r.value=g,pageSize:l.value,"onUpdate:pageSize":g=>l.value=g,showPageList:p.value,showPageNumbers:d.value,totalItems:u.value,pageList:s.value,onPageIndexChanged:f,onPageSizeChanged:w,onChange:v},null)])}return{renderDataGridPagination:b}}function En(e,n,o,a,i){const{isSelectingHirarchyItem:r,multiSelectOnClickRow:l,multiSelectOnlyOnCheck:s,selectItem:u,toggleSelectItem:d}=o,{onMouseoverRow:p,sidebarRowClass:c}=n,{showRowNumer:f,showSidebarCheckBox:w,sidebarCellPosition:v,rowKey:b,cellKey:g}=a,{gridSideStyle:h}=i;function m(x){x.stopPropagation()}function y(x){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:g(x),title:g(x),type:"checkbox",indeterminate:x.indeterminate,"onUpdate:modelValue":S=>x.checked=S,class:"custom-control-input"},null),[[t.vModelCheckbox,x.checked]]),t.createVNode("label",{class:"custom-control-label",for:g(x),onClick:m},null)])])}function V(x){return t.createVNode("div",{class:"fv-grid-sidebar-row-number justify-content-center",style:"padding:0",onMouseover:S=>p(S,x)},[t.createVNode("div",{title:x.dataIndex,class:{"text-center":!0,"text-truncate":e.rowNumber.showEllipsis,"w-100":e.rowNumber.showEllipsis}},[x.dataIndex])])}function C(x,S,_){r.value?l.value?d(_):u(_):s.value||l.value?d(_):u(_)}function F(x){return(w.value||f.value)&&x.value.map(S=>t.createVNode("div",{key:b(S),class:c(S),style:v(S),onClick:_=>C(_,x,S)},[w.value&&!e.hierarchy&&y(S),f.value&&V(S)]))}function k(x){return t.createVNode("div",{class:"fv-grid-content-side"},[t.createVNode("div",{class:"fv-grid-side",style:h.value},[F(x)])])}return{renderDataGridSidebar:k}}function rr(e,n,o){const{columnContext:a}=o,i=t.ref(e.summary),r=t.computed(()=>{const s=i.value;return s&&s.enable&&s.groupFields&&s.groupFields.length>0});function l(){return r.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"},[a.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 Rn(e,n,o){const{verticalScrollThumbStyle:a,onMouseDownScrollThumb:i,shouldShowVirticalScrollbar:r}=o;function l(){return r.value&&t.createVNode("div",{class:"fv-grid-vertical-scroll"},[t.createVNode("div",{class:"fv-grid-vertical-scroll-thumb",style:a.value,onMousedown:s=>i(s,n,"vertical")},null)])}return{renderVerticalScrollbar:l}}function lr(){function e(a,i){switch(a.command){case"edit":case"remove":return i.status===Ue.initial;case"accept":case"cancel":return i.status===Ue.editing;default:return!a.hidden}}function n(a,i,r){switch(a.onClick(i,r.dataIndex,r),a.command){case"edit":r.status,Ue.editing;break;case"accept":case"cancel":r.status,Ue.initial;break}}function o(a,i){return t.createVNode("div",null,[a.commands&&a.commands.map(r=>e(r,i)&&t.createVNode(t.resolveComponent("f-button"),{class:"ml-2",type:r.type,size:r.size||"small",onClick:l=>n(r,l,i)},{default:()=>[t.createTextVNode(" "),r.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 Ln(e){const n=t.ref(e.minHeight),o=t.ref(e.minWidth),a=t.ref(e.height),i=t.ref(e.width),r=t.computed(()=>a.value<=0?0:Math.max(a.value,n.value)),l=t.computed(()=>i.value<=0?0:Math.max(i.value,o.value));return t.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([u,d,p,c])=>{n.value=Number(p),o.value=Number(c),a.value=Number(u),i.value=Number(d)}),{containerStyleObject:t.computed(()=>({height:r.value>0?`${r.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":""}))}}function Hn(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:[]},a=t.ref(o);function i(){a.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 r=t.ref(e.summary),l=t.computed(()=>{const y=r.value;return(y==null?void 0:y.groupFields)||[]});function s(){a.value.rightColumns.forEach(C=>{C.showSetting=!1}),a.value.primaryColumns.forEach(C=>{C.showSetting=!1});const y=a.value.rightColumns.filter(C=>C.visible),V=a.value.primaryColumns.filter(C=>C.visible);y.length>0?y[y.length-1].showSetting=!0:V.length>0&&(V[V.length-1].showSetting=!0)}function u(y){i();const V=new Map;return l.value&&l.value.reduce((C,F)=>(C.set(F,!0),C),V),y.reduce((C,F)=>(F.visible=F.visible!==!1,F.fixed==="left"?(a.value.leftColumns.push(F),a.value.leftColumnsMap.set(F.field,F),a.value.leftColumnsWidth+=F.actualWidth):F.fixed==="right"?(a.value.rightColumns.push(F),a.value.rightColumnsMap.set(F.field,F),a.value.rightColumnsWidth+=F.actualWidth):(a.value.primaryColumns.push(F),a.value.primaryColumnsMap.set(F.field,F),a.value.primaryColumnsWidth+=F.actualWidth),V.has(F.field)&&a.value.summaryColumns.push(F),C),a),s(),a}u(e.columns);const d=t.computed(()=>a.value.leftColumns.length>0),p=t.computed(()=>a.value.rightColumns.length>0);function c(y,V){return V.sortable&&V.sort&&V.sort!=="none"&&y.push(V),y}function f(y,V){return y.sortOrder=y.sortOrder||0,V.sortOrder=V.sortOrder||0,y.sortOrder===V.sortOrder?0:y.sortOrder<V.sortOrder?-1:1}function w(y,V){return y.sortOrder=y.sortOrder||0,V.sortOrder=V.sortOrder||0,y.sortOrder===V.sortOrder?0:y.sortOrder<V.sortOrder?1:-1}function v(y,V){return V.filterable&&y.push(V),y}function b(){const y=[];return a.value.leftColumns.reduce(v,y),a.value.primaryColumns.reduce(v,y),a.value.rightColumns.reduce(v,y),y}function g(){const y=[];a.value.leftColumns.reduce(c,y),a.value.primaryColumns.reduce(c,y),a.value.rightColumns.reduce(c,y);const V=Math.max(...y.map(C=>C.sortOrder||0));return y.sort(w).map(C=>{const F=C.sortOrder||V+1;return C.sortOrder=F,C}).sort(f).map((C,F)=>{const k=F+1;return C.sortOrder=k,C})}function h(y,V,C){const F=y.map(k=>{const x=C.getSorterByColumn(k),S=k.sort==="asc",_=k.sort==="desc",M=S?x.ascend:_?x.decend:void 0;return{field:k.field,compare:M}});V.setSorters(F)}function m(y,V){const C=g();h(C,y,V)}return{applyColumnSorter:m,collectionFilterableColumns:b,applySortableColumns:h,collectionSortableColumns:g,columnContext:a,hasLeftFixedColumn:d,hasRightFixedColumn:p,updateColumnRenderContext:u,updateColumnSettingIcon:s}}const cr=[{name:"是",value:!0},{name:"否",value:!1}];function ur(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 dr=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 a=new Date(new Date(e.filterValue).toLocaleDateString()).valueOf();return new Date(new Date(o[e.field]).toLocaleDateString()).valueOf()===a},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:dr.value,selectable:!0,"tag-style":"capsule"},null)])}function pr(e){e.filter=e.filter||function(o){const a=Number.parseFloat(e.filterValue),i=Number.parseFloat(o[e.field]);return isNaN(a)?isNaN(i):a===i};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,a,i,r){e.filterHistory=e.filterHistory||i.getFilterHistory(e),e.filter=e.filter||function(f){return(f[e.field]||"").startsWith(e.filterValue)};function l(f,w){i.removeFilterHistory(e,f.name),e.filterHistory=i.getFilterHistory(e)}function s(f){e.filterValue=f.name}function u(f){e.filterHistory=f}const d=a.rawView.value.reduce((f,w,v)=>(f.push(w[e.field]),f),[]),c=[...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":r.offsetX,"recommended-data":c},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:u},null)])}function hr(e,n,o,a,i,r){e.filter=e.filter||function(w){return String(e.filterValue).split(",").includes(String(w[e.field]))};const l=",",s=a.rawView.value.reduce((w,v,b)=>(w.push(v[e.field]),w),[]),d=[...new Set(s)].map((w,v)=>({id:v,name:w}));function p(w){return(w==null?void 0:w.split(l))||[]}function c(w){return w.map(b=>b.name).join(l)}function f(w){e.filterValue=c(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 An(e,n,o,a,i){const r=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",ur],["date-filter",fr],["enum-filter",hr],["list-filter",gr],["numeric-filter",pr],["text-filter",mr]]);function s(u){var f,w;const d=((f=u.column)==null?void 0:f.dataType)||"string",p=((w=u.column)==null?void 0:w.filter)||r.get(d)||"text-editor",c=l.get(p);if(c)return c(u,e,n,o,a,i)}return{getFilterEditor:s}}function zn(e){const o=t.ref(e.commandOption.enable||!1),a=t.ref(e.commandOption.commands||[]);function i(r){if(o.value&&!(r.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:a.value,visible:!0};r.value.push(s)}}return{applyCommands:i}}function Gn(e,n,o,a,i,r,l){const{columnContext:s}=o,{getGridHeaderCells:u}=i,{groupFields:d}=r,p=t.ref(-1),c=t.ref(!1),f=t.computed(()=>d.value&&d.value.map(m=>{var y;return{name:((y=s.value.primaryColumnsMap.get(m))==null?void 0:y.title)||m,value:m}}));function w(m,y,V){var C,F,k;if(m.stopPropagation(),y){const x=`${(C=y.column)==null?void 0:C.title}:${(F=y.column)==null?void 0:F.field}`;(k=m.dataTransfer)==null||k.setData("Text",x),setTimeout(()=>{p.value=V,c.value=!0})}}function v(m,y){if(m.preventDefault(),p.value!==y){const{primaryColumns:V}=s.value,C=V[p.value],F=V;F.splice(p.value,1),F.splice(y,0,C),s.value.primaryHeaderColumns=Array.from(u(F).values()),p.value=y}}function b(m,y){m.preventDefault(),m.dataTransfer&&(m.dataTransfer.dropEffect="move")}function g(m,y){c.value=!1,a.updateDataView(),l.reCalculateVisualDataRows()}function h(m){var V;m.preventDefault(),m.stopPropagation();const y=(V=m.dataTransfer)==null?void 0:V.getData("Text");if(y){const C=y.split(":");C[0];const F=C[1];r.groupFields.value.push(F)}a.updateDataView(),l.reCalculateVisualDataRows()}return{dragstart:w,dragenter:v,dragover:b,dragend:g,dropOnGroupPanel:h,isDragging:c,groupColumnItems:f}}function Wn(e,n,o,a,i){const{getGridHeaderCells:r}=i,l=120,s=50,u=t.computed(()=>{var x;return((x=e.rowNumber)==null?void 0:x.enable)||!1}),d=t.computed(()=>{var x,S;return((x=e.selection)==null?void 0:x.multiSelect)||((S=e.selection)==null?void 0:S.showCheckbox)||!1}),p=t.computed(()=>{var x;return 0+(u.value?((x=e.rowNumber)==null?void 0:x.width)||32:0)+(d.value?s:0)}),c=t.computed(()=>{var x;return(x=e.columnOption)==null?void 0:x.fitColumns}),f=t.computed(()=>{var x;return c.value&&((x=e.columnOption)==null?void 0:x.fitMode)||"average"});function w(x,S,_){const M=parseInt(x.width,10)/100;return _*M}function v(x,S,_){return typeof x.width=="string"?w(x,S,_):x.width||l}function b(x,S){const _=[],M=[];let T=0;x.value.primaryColumns.filter(B=>B.visible).forEach(B=>{typeof B.width=="string"?M.push(B):(B.width=B.width||l,T+=B.width,_.push(B))});const I=S*(_.length/x.value.primaryColumns.filter(B=>B.visible).length);_.forEach(B=>{const $=I*(B.width/T);B.actualWidth=$,x.value.primaryColumnsWidth+=B.actualWidth});const N=S-I;M.forEach(B=>{const $=w(B,x.value,N);B.actualWidth=$,x.value.primaryColumnsWidth+=B.actualWidth})}function g(x,S){const _=S/(x.value.primaryColumns.filter(M=>M.visible).length||1);x.value.primaryColumns.filter(M=>M.visible).forEach(M=>{M.actualWidth=_,x.value.primaryColumnsWidth+=M.actualWidth})}function h(x,S){const _=[],M=[],T=new WeakMap;let I=0,N=0;if(x.value.primaryColumns.filter($=>$.visible).forEach($=>{if(typeof $.width=="string"){const O=w($,x.value,S);T.set($,O),I+=O,M.push($)}else $.width=$.width||l,N+=$.width,_.push($)}),S-I>N){const $=S-I;M.forEach(O=>{O.actualWidth=T.get(O)||l,x.value.primaryColumnsWidth+=O.actualWidth}),_.forEach(O=>{O.actualWidth=$*(O.width/N),x.value.primaryColumnsWidth+=O.actualWidth})}else b(x,S)}function m(x,S){x.value.primaryColumns.filter(_=>_.visible).forEach(_=>{_.actualWidth=v(_,x.value,S),x.value.primaryColumnsWidth+=_.actualWidth})}const y={average:g,expand:h,none:m,percentage:b};function V(x){x.value.leftHeaderColumns=Array.from(r(x.value.leftColumns.filter(S=>S.visible)).values()),x.value.primaryHeaderColumns=Array.from(r(x.value.primaryColumns.filter(S=>S.visible)).values()),x.value.rightHeaderColumns=Array.from(r(x.value.rightColumns.filter(S=>S.visible)).values())}function C(x){x.value.leftColumnsWidth=0,x.value.primaryColumnsWidth=0,x.value.rightColumnsWidth=0,x.value.leftColumns.filter(S=>S.visible).forEach(S=>{x.value.leftColumnsWidth+=S.actualWidth||0}),x.value.primaryColumns.filter(S=>S.visible).forEach(S=>{x.value.primaryColumnsWidth+=S.actualWidth||0}),x.value.rightColumns.filter(S=>S.visible).forEach(S=>{x.value.rightColumnsWidth+=S.actualWidth||0}),x.value=Object.assign({},x.value)}function F(x,S,_){var O;let M=0;const T=x.value.primaryColumns,I=x.value.rightColumns;x.value.rightColumns.filter(P=>P.visible).forEach(P=>{P.actualWidth=v(P,x.value,S),M+=P.actualWidth});const N=_-M,B=y[f.value];if(B&&B(x,N),x.value.primaryColumnsWidth+M<=_)return x.value.primaryColumns=[...T,...I],x.value.primaryColumnsWidth+=M,x.value.rightColumns=[],x.value.rightColumnsWidth=0,!0;const $=new Map;return $.set("primary",[]),$.set("right",[]),x.value.primaryColumns.reduce((P,E)=>{var j,R;return E.fixed==="right"?(j=P.get("right"))==null||j.push(E):(R=P.get("primary"))==null||R.push(E),P},$),(O=$.get("right"))!=null&&O.length&&(x.value.primaryColumns=[...$.get("primary")||[]],x.value.rightColumns=[...$.get("right")||[]]),x.value.primaryColumnsWidth=0,x.value.rightColumnsWidth=0,!1}function k(){if(o.value){n.value.leftColumnsWidth=0,n.value.primaryColumnsWidth=0,n.value.rightColumnsWidth=0;const x=o.value.clientWidth-p.value;n.value.leftColumns.filter(_=>_.visible).forEach(_=>{_.actualWidth=v(_,n.value,x),n.value.leftColumnsWidth+=_.actualWidth});const S=x-n.value.leftColumnsWidth;if(F(n,x,S))a.value=S;else{n.value.rightColumns.filter(T=>T.visible).forEach(T=>{T.actualWidth=v(T,n.value,x),n.value.rightColumnsWidth+=T.actualWidth});const _=x-n.value.leftColumnsWidth-n.value.rightColumnsWidth,M=y[f.value];M&&M(n,_),a.value=_}V(n),n.value=Object.assign({},n.value)}}return t.watch(()=>{var x;return(x=e.columnOption)==null?void 0:x.fitColumns},(x,S)=>{x!==S&&x&&k()}),t.watch(f,(x,S)=>{x!==S&&c.value&&k()}),{calculateColumnHeaders:V,calculateColumnsSize:k,calculateColumnsWidth:C}}function qn(e,n){var d;const o=t.ref((d=e.columnOption)==null?void 0:d.groups);function a(p,c,f,w,v){const b={actualWidth:0,children:[],depth:1,field:p.field,layer:1,left:0,parent:f,resizable:!1,title:p.title||"",status:Me.none,popoverRef:t.ref(),showPopover:!1,column:null,filterValue:null,sortType:"none"},g=w||b;if(p.group){let h=1;p.group.reduce((m,y)=>{if(typeof y=="string"){const V=c.get(y);V&&(v.fieldToRootMap.set(y,g),m.actualWidth+=V.actualWidth,m.children.push(V))}else{const V=a(y,c,m,g,v);h=Math.max(h,V.depth),m.actualWidth+=V.actualWidth,m.children.push(V)}return m},b),b.depth+=h}return n.value.headerDepth=Math.max(n.value.headerDepth,b.depth),b}function i(p){const c={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((f,w)=>{const v=a(w,p,null,null,c);return f.groupedCells.set(w.field,v),f},c),c}function r(p){if(!p||p.length===0)return 0;const c=p[0];return c.children&&c.children.length>0&&(c.left=r(c.children)),c.left}function l(p,c){const f=n.value.headerDepth;p.forEach(w=>{w.layer=c?c.layer+1:1;const v=w.children&&w.children.length===0;w.depth=v?f-(w.layer-1):1,w.left=v?w.left:r(w.children),w.children&&l(w.children,w)})}function s(p,c){const f=new Map;return p.forEach(w=>{const v=c.fieldToRootMap.get(w.field),b=v!=null;b&&!f.has(v.field)&&f.set(v.field,v),b||f.set(w.field,w)}),l(Array.from(f.values())),f}function u(p){let c=new Map,f=0;if(p.reduce((w,v)=>{let b=Me.none;b=v.sortable?b|Me.sortable:b,b=v.filterable?b|Me.filterable:b,b=v.sort&&v.sort!=="none"?b|Me.sorted|(v.sort==="asc"?Me.ascending:Me.descending):b;const g=v.binding&&v.binding.field?v.binding.field:v.field;return w.set(g,{actualWidth:v.actualWidth||0,children:[],depth:1,layer:1,left:f,field:g,parent:null,resizable:v.resizable||!1,title:v.title,status:b,popoverRef:t.ref(),showPopover:!1,column:v,filterValue:null,sortType:v.sort||"none",showSetting:v.showSetting}),f+=v.actualWidth||0,w},c),o.value){const w=i(c);c=s(c,w)}return c}return{getGridHeaderCells:u}}const Un={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class yr{constructor(n={value:[]}){L(this,"editorType","check-box");L(this,"value");L(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:""}){L(this,"editorType","combo-lookup");L(this,"textValue");L(this,"value");L(this,"valueField");L(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 a=o.shift();return n[a]?this.getPropValue(n[a],o):null}return n[o[0]]}getTextValue(n){const o=n.split("."),a=this.value.split(",").map(i=>this.getPropValue(i,$e.cloneDeep(o)));return a&&a.length?a.join(","):""}getValue(){const n=this.valueField.split("."),o=this.value.split(",").map(a=>this.getPropValue(a,$e.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:""}){L(this,"editorType","date-picker");L(this,"value");L(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 Kn{constructor(n={begin:"",end:""}){L(this,"editorType","date-range");L(this,"begin","");L(this,"end","");L(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:""}){L(this,"editorType","datetime-picker");L(this,"value");L(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:""}){L(this,"editorType","combo-list");L(this,"value");L(this,"valueType","enum");L(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}){L(this,"editorType","input-group");L(this,"value");L(this,"valueType","text");L(this,"displayText");L(this,"valueField");L(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 a=o.shift();return n[a]?this.getPropValue(n[a],o):""}return n[o[0]]}getTextValue(n){const o=n.split("."),a=this.value.map(i=>this.getPropValue(i,$e.cloneDeep(o)));return a&&a.length?a.join(","):""}getValue(){const n=this.valueField.split(".")||[],o=this.value.map(a=>this.getPropValue(a,$e.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}){L(this,"editorType","lookup");L(this,"textValue");L(this,"value");L(this,"valueField");L(this,"valueType","text");L(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 a=o.shift();return n[a]?this.getPropValue(n[a],o):null}return n[o[0]]}getTextValue(n){const o=n.split("."),a=this.value.map(i=>this.getPropValue(i,o));return a&&a.length?a.join(","):""}getValue(){const n=this.valueField.split("."),o=this.value.map(a=>this.getPropValue(a,n));return o&&o.length?o.join(","):""}setValue(n){throw new Error("Method not implemented.")}isEmpty(){return!this.value.length}}class Vr{constructor(n={value:""}){L(this,"editorType","month-picker");L(this,"value");L(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 Fr{constructor(n={begin:"",end:""}){L(this,"editorType","month-range");L(this,"begin");L(this,"end");L(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}){L(this,"editorType","number-range");L(this,"begin");L(this,"end");L(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:""}){L(this,"editorType","number-spinner");L(this,"value");L(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 _r{constructor(n={value:null}){L(this,"editorType","radio-group");L(this,"value");L(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 Xn{constructor(n={value:""}){L(this,"editorType","text");L(this,"value");L(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 Yn(){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 Kn(o);case"datetime-picker":return new Cr(o);case"datetime-range":return new Kn(o);case"lookup":return new xr(o);case"month-picker":return new Vr(o);case"month-range":return new Fr(o);case"number-range":return new Nr(o);case"number-spinner":return new kr(o);case"radio-group":return new _r(o);default:return new Xn(o)}}return{createConditionValue:e}}function Jn(e,n){const o=t.ref(e.fields),a=t.ref([]),i=new Map,{createConditionValue:r}=Yn();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 u(p=!0){o.value.reduce((c,f)=>(p||(f.editor=l(f)),c.set(f.labelCode,f),c),i)}function d(p){return p.forEach(c=>{if(c&&typeof c.valueConfig=="object"){const f=i.get(c.fieldCode);c.value=r(f.editor.type,c.valueConfig.content)}}),p}return{convertToSingleControl:s,fields:o,fieldMap:i,fieldConditions:a,loadFieldConfigs:u,initialConditionValue:d}}function Ir(e,n,o){const a=t.ref(null),i=t.ref(o),r=t.ref(0),l=t.computed(()=>d(r.value));function s(){i.value&&(a.value=new ResizeObserver(u(p=>{const c=p[0];r.value=c.contentRect.width})),a.value.observe(i.value))}function u(p,c){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])=>{i.value=p,s()}),{conditionClass:l,resizeObserver:a}}const Qn=t.defineComponent({name:"FConditionFields",props:Un,emits:["valueChange","blur","focus","click","input"],setup(e,n){const o=t.ref(),a=t.ref(e.key),i=t.ref(e.isControlInline),r=t.ref(e.conditions),l=Jn(e),{initialConditionValue:s,fieldMap:u,loadFieldConfigs:d}=l,p=Ir(e,n,o),{conditionClass:c,resizeObserver:f}=p;d(!0),s(r.value),t.onBeforeUnmount(()=>{var h;(h=f.value)==null||h.unobserve(o.value)}),t.watch(()=>e.conditions,()=>{r.value=e.conditions});const w=t.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":i.value})),v=t.computed(()=>c.value);function b(h,m){n.emit("valueChange",h,m)}function g(){return r.value.map(h=>{var m;return t.createVNode(jt.FDynamicFormGroup,{customClass:v.value,label:h.fieldName,editor:(m=u.get(h.fieldCode))==null?void 0:m.editor,modelValue:h.value.value,"onUpdate:modelValue":y=>h.value.value=y,onChange:y=>{b(y,h)}},null)})}return()=>t.createVNode("div",{class:w.value,key:a.value,ref:o},[g()])}}),Yt=new Map([["appearance",We]]),Tr=new Map([]);var Zn=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(Zn||{}),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 Mr="root-viewmodel";class Or{constructor(n,o){L(this,"formSchemaUtils");L(this,"controlCreatorUtils");L(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),a=this.createComponentNode(n),i=this.createViewModeNode(n),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(i),r.module.components.push(a),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"),a=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:a}),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 a=this.resolver.getSchemaByType("response-form"),i=[];Object.assign(a,{id:n.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:i}),o.contents=[a];const{selectedFields:r}=n;return r==null||r.forEach(s=>{const u=$e.cloneDeep(s),d=this.resolveControlClassByFormColumns(n),p=this.controlCreatorUtils.setFormFieldProperty(u,"",d);p&&i.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";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:Mr,fields:this.assembleViewModelFields(n),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}assembleViewModelFields(n){const o=[],{selectedFields:a}=n;return a==null||a.forEach(i=>{let r="blur";const l=i.type.name;(l===St.Enum||l===St.Boolean)&&(r="change"),o.push({type:"Form",id:i.id,fieldName:i.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function Br(e,n,o,a){var r;const i=o.parentComponentInstance;if(i){const l=(r=i.schema)==null?void 0:r.type,u={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:"标题",componentType:"form",formColumns:l==="splitter-pane"?1:4,parentContainerId:i.schema.id,bindTo:"/"};return new Or(e,a).createComponent(u)}else return n}function $r(e,n,o){return n}Be({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"]},Yt,Br);const eo={$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"]},to={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"}};Be(to,eo,Yt,void 0);function Pr(){function e(n,o){var l;if(!n)return!1;const a=((l=n.targetContainer)==null?void 0:l.componentInstance)&&n.targetContainer.componentInstance.value;if(!a)return!1;const i=a.schema.type,r=o==null?void 0:o.formSchemaUtils.getComponentById(a.belongedComponentId);return!((n.controlCategory==="input"||n.controlType==="form-group")&&![Y["response-layout-item"].type,Y["response-form"].type].includes(i)||(n.controlType===Y.tabs.type||n.controlType===Y.section.type)&&((r==null?void 0:r.componentType)!=="frame"||![Y["content-container"].type,Y["splitter-pane"].type,Y["response-layout-item"].type].includes(i)))}return{basalDragulaRuleForContainer:e}}const jr={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},Dr=t.defineComponent({name:"FDynamicFormLabel",props:jr,emits:[],setup(e,n){const o=t.ref(e.title||e.text),a=t.ref(e.required),i=t.ref(e.text);return t.watch(()=>e.text,()=>{i.value=e.text}),t.watch(()=>e.required,(r,l)=>{r!==l&&(a.value=r)}),()=>i.value&&t.createVNode("label",{class:"col-form-label",title:o.value},[a.value&&t.createVNode("span",{class:"farris-label-info text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"farris-label-text"},[i.value])])}}),Er=new Map([["appearance",We]]);function Rr(e,n,o){return n}const Lr={$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"]},no={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"}};Be(no,Lr,Er,Rr);function Hr(e,n,o,a){const i=t.ref(e.disabled),r=t.ref(!1),l=t.ref("text"),s=t.ref(e.showBorder),u=t.ref(e.textAlign),d=t.ref(e.updateOn),p=t.computed(()=>e.editable||!e.readonly),c=t.computed(()=>e.editable&&!e.disabled&&!e.readonly),f=t.computed(()=>!e.disabled&&r.value),w=t.computed(()=>o.value===""||o.value===null||o.value===void 0),v=t.computed(()=>(e.disabled||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),b=t.computed(()=>e.readonly||!e.editable),g=t.computed(()=>e.enableTitle?o.value:""),h=t.computed(()=>({"form-control":!0,"f-utils-fill":!0,"text-left":u.value==="left","text-center":u.value==="center","text-right":u.value==="right"})),m=t.computed(()=>{const I={"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":i.value,"f-state-editable":c.value,"f-state-readonly":b.value,"f-state-focus":f.value};return(e.customClass||"").split(" ").reduce((B,$)=>(B[$]=!0,B),I),I}),y=t.computed(()=>s.value?"":"border-width : 0 ");function V(I,N=!0){o.value=I,a.value!==I&&(a.value=I),N&&n.emit("change",I),n.emit("update:modelValue",I),n.emit("update:value",I)}t.watch(()=>e.modelValue,(I,N)=>{I!==N&&(o.value=I,a.value=I)}),t.watch(()=>e.disabled,(I,N)=>{I!==N&&(i.value=I)});function C(I){return r.value=!1,n.emit("blur",I),I.stopPropagation(),!1}function F(I){n.emit("click",I)}function k(I){e.disabled||(s.value&&(r.value=!0),p.value&&n.emit("focus",I))}function x(I){n.emit("input",I.target.value);const N=I.target.value;a.value=N,d.value==="change"&&(n.emit("update:modelValue",N),n.emit("update:value",N))}function S(I){n.emit("keydown",I)}function _(I){n.emit("keyup",I)}function M(I){I.target.tagName!=="INPUT"&&I.preventDefault(),I.stopPropagation()}function T(I){if(d.value==="blur"){const N=I.target.value;I.stopPropagation(),V(N)}}return{changeTextBoxValue:V,disabled:i,displayText:a,editable:c,hasFocused:f,inputGroupClass:m,inputType:l,isEmpty:w,modelValue:o,readonly:b,onBlur:C,onClick:F,onFocus:k,onInput:x,onKeydown:S,onKeyup:_,onMousedown:M,onTextBoxValueChange:T,placeholder:v,textBoxClass:h,textBoxTitle:g,inputGroupStyle:y}}function Ar(e,n,o){const a=t.ref(!1),i=t.computed(()=>e.enableClear&&!e.readonly&&!e.disabled),{changeTextBoxValue:r,displayText:l,hasFocused:s,isEmpty:u}=o;function d(b){a.value=b}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})),c=t.computed(()=>({width:"24px",display:a.value?"flex":"none"}));function f(b){b.stopPropagation(),i.value&&(r("",!0),d(!a.value),n.emit("clear"))}function w(b){i.value&&!u.value&&d(!0)}function v(b){i.value&&d(!1)}return{clearButtonClass:p,clearButtonStyle:c,hasShownClearButton:a,onClearValue:f,onMouseEnter:w,onMouseLeave:v,shouldShowClearButton:i}}const zr=["moz","ms","webkit"];function Gr(){let e=0;return n=>{const o=new Date().getTime(),a=Math.max(0,16-(o-e)),i=setTimeout(()=>{n(o+a)},a);return e=o+a,i}}function Wr(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=zr.filter(n=>`${n}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:Gr()}Wr();function qr(e,n){return((n==null?void 0:n.split(" "))||[]).reduce((a,i)=>(i&&(a[i]=!0),a),e),e}function Ur(e,n){return((n==null?void 0:n.split(";"))||[]).reduce((a,i)=>{if(i){const r=i.split(":");a[r[0]]=r[1]}return a},e),e}const oo=e=>{const n=e;return n.install=function(o){o.component(n.name,e)},e},Kr={checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}};function Xr(e,n){const o=t.ref(e.groupText),a=t.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),i=t.computed(()=>e.enableClear||!!e.groupText);return{appendedButtonClass:t.computed(()=>({"input-group-append":!0,"append-force-show":a.value})),appendedContent:o,shouldShowAppendedButton:i}}function Yr(e,n,o,a){const{appendedContent:i}=a,r=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>',u='<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,i.value=f||w?u:i.value)});function p(){return d.value=!d.value,o.value=d.value?"text":"password",i.value=d.value?s:u,!1}function c(){o.value=l.value?"password":"text",i.value=l.value?r.value?u:"":i.value}return c(),{isPassword:l,onClickAppendedButton:p}}function Jr(e,n,o){const a=t.ref(),{onBlurTextBox:i,onFocusTextBox:r,onInput:l,onKeyDown:s,textBoxValue:u}=o,d=t.computed(()=>e.disabled||e.readonly||!e.editable?"":e.placeholder),p=t.computed(()=>({"form-control":!0,"f-utils-fill":!0})),c=t.computed(()=>({"text-align":e.textAlign}));function f(b){b.stopPropagation()}function w(){e.selectOnCreated,e.focusOnCreated}async function v(b){r(b),await t.nextTick,w()}return t.onMounted(async()=>{await t.nextTick,w()}),()=>t.createVNode("input",{ref:a,class:p.value,style:c.value,type:"text",value:u.value,disabled:e.disabled,readonly:e.readonly||!e.editable,placeholder:d.value,onBlur:i,onChange:f,onFocus:v,onInput:l,onKeydown:s},null)}function Qr(e,n,o){const{canDownward:a,canUpward:i,onClickDownButton:r,onClickUpButton:l}=o,s=t.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),u=t.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),d=t.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0})),p=t.computed(()=>({cursor:a()?"pointer":"not-allowed","margin-left":0}));return()=>t.createVNode("div",{class:s.value},[t.createVNode("button",{title:"upButton",class:u.value,style:d.value,onClick:l,disabled:!i()},[t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),t.createVNode("button",{title:"downButton",class:u.value,style:p.value,onClick:r,disabled:!a()},[t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function Zr(e,n){const o=bt.useNumber(e,n),a=bt.useFormat(e,n,o),i=bt.useSpinner(e,n,a,o),r=bt.useTextBox(e,n,a,o,i),l=Qr(e,n,i),{displayValue:s,modelValue:u,getRealValue:d}=o,p=Jr(e,n,r),{format:c}=a,{isFocus:f}=r,w=t.computed(()=>!e.disabled&&!e.readonly);return t.onMounted(()=>{const v=d(e.modelValue);s.value=c(v)}),t.watch(()=>[e.value],([v])=>{const b=d(v);u.value=b,s.value=c(b)}),t.watch(()=>[e.modelValue],([v])=>{v!==u.value&&(u.value=v,!f.value&&(s.value=c(d(v))))}),t.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{s.value=c(u.value)}),()=>t.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[p(),w.value&&l()])}function el(e,n,o,a){const i=t.ref(),r=t.ref(e.autocomplete),l=t.ref(e.enableTitle),{isPassword:s}=o,u=t.ref(e.minLength),d=t.ref(e.maxLength),p=t.ref(e.tabIndex),{disabled:c,displayText:f,inputType:w,onBlur:v,onFocus:b,onInput:g,onClick:h,onKeydown:m,onKeyup:y,onMousedown:V,onTextBoxValueChange:C,readonly:F,placeholder:k,textBoxClass:x,textBoxTitle:S}=a;return t.onMounted(()=>{e.selectOnCreated,e.focusOnCreated}),()=>t.createVNode("input",{ref:i,name:"input-group-value",autocomplete:r.value,class:x.value,disabled:c==null?void 0:c.value,maxlength:d.value,minlength:u.value,placeholder:k.value,readonly:F==null?void 0:F.value,tabindex:p.value,title:l.value&&!s.value?S.value:"",type:w.value,value:f==null?void 0:f.value,onBlur:v,onClick:h,onChange:C,onFocus:b,onInput:g,onKeydown:m,onKeyup:y,onMousedown:V},null)}function tl(e,n){const o=t.computed(()=>e.useExtendInfo&&!!e.extendInfo),a=t.reactive({content:e.extendInfo});function i(){n.emit("updateExtendInfo")}return()=>o.value&&t.withDirectives(t.createVNode("span",{class:"input-group-before-tips",onMouseenter:i},[t.createVNode("i",{class:"f-icon f-icon-info-circle"},null),t.createVNode("b",{class:"tips-arrow"},null)]),[[t.resolveDirective("tooltip"),a]])}function nl(e,n,o,a,i){const{appendedButtonClass:r,appendedContent:l}=o,s=t.computed(()=>e.showButtonWhenDisabled&&(!e.editable||!e.readonly)&&!e.disabled),u=t.computed(()=>l.value&&!n.slots.groupTextTemplate),d=t.computed(()=>!!n.slots.groupTextTemplate),{clearButtonClass:p,clearButtonStyle:c,onClearValue:f,shouldShowClearButton:w}=a;function v(){return t.createVNode("span",{id:"clearIcon",class:p.value,style:c.value,onClick:k=>f(k)},[t.createVNode("i",{class:"f-icon modal_close"},null)])}function b(k){n.emit("iconMouseEnter",k)}function g(k){n.emit("iconMouseLeave",k)}function h(k){s.value&&n.emit("clickHandle",{originalEvent:k}),k.stopPropagation()}const m=e.type==="password"?i.onClickAppendedButton:h;function y(){return t.createVNode("span",{class:"input-group-text",onMouseenter:k=>b(k),onMouseleave:k=>g(k),innerHTML:l.value,onClick:k=>m(k)},null)}function V(){return n.slots.groupTextTemplate&&n.slots.groupTextTemplate()}function C(){return u.value?y:d.value?V:""}const F=C();return()=>t.createVNode("div",{class:r.value},[w.value&&v(),F&&F()])}const ol=t.defineComponent({name:"FInputGroup",props:no,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),a=t.ref(e.modelValue),i=Hr(e,n,o,a),{inputGroupClass:r,inputType:l,inputGroupStyle:s}=i,u=Xr(e),{shouldShowAppendedButton:d}=u,p=Ar(e,n,i),{onMouseEnter:c,onMouseLeave:f}=p,w=Yr(e,n,l,u),v=Zr(e,n),b=el(e,n,w,i),g=nl(e,n,u,p,w),h=tl(e,n),m=t.computed(()=>e.type==="number");t.watch(()=>[e.value],([V])=>{o.value=V,a.value=V}),t.watch(()=>[e.modelValue],([V])=>{o.value=V,a.value=V}),t.onMounted(()=>{e.value&&(o.value=e.value,a.value=e.value)});const y=()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:e.id,class:r.value,style:s.value,onMouseenter:c,onMouseleave:f},[m.value?v():t.createVNode(t.Fragment,null,[h(),b(),d.value&&g()])])]);return()=>y()}}),J={},Q={},Z={},ee={};let ao=!1;function al(){ao||(ao=!0,ca.register(J,Q,Z,ee),sa.register(J,Q,Z,ee),yn.register(J,Q,Z,ee),ua.register(J,Q,Z,ee),da.register(J,Q,Z,ee),fa.register(J,Q,Z,ee),vt.register(J,Q,Z,ee),Dt.register(J,Q,Z,ee),pa.register(J,Q,Z,ee),ma.register(J,Q,Z,ee),ga.register(J,Q,Z,ee),ha.register(J,Q,Z,ee),ya.register(J,Q,Z,ee),va.register(J,Q,Z,ee),ba.register(J,Q,Z,ee),jt.register(J,Q,Z,ee),Ca.register(J,Q,Z,ee),hn.register(J,Q,Z,ee),wa.register(J,Q,Z,ee),Sa.register(J,Q,Z,ee),xa.register(J,Q,Z,ee),Va.register(J,Q,Z,ee),vn.register(J,Q,Z,ee),Fa.register(J,Q,Z,ee),Na.register(J,Q,Z,ee),ka.register(J,Q,Z,ee),_a.register(J,Q,Z,ee),Ia.register(J,Q,Z,ee),bt.register(J,Q,Z,ee),la.register(J,Q,Z,ee),Ta.register(J,Q,Z,ee),Ma.register(J,Q,Z,ee),gn.register(J,Q,Z,ee),Oa.register(J,Q,Z,ee),Ba.register(J,Q,Z,ee),$a.register(J,Q,Z,ee),Pa.register(J,Q,Z,ee),Da.register(J,Q,Z,ee),Ea.register(J,Q,Z,ee),ja.register(J,Q,Z,ee),Za.register(J,Q,Z),Ra.register(J,Q,Z,ee),La.register(J,Q,Z,ee),Ha.register(J,Q,Z,ee),Aa.register(J,Q,Z,ee),za.register(J,Q,Z,ee),Ga.register(J,Q,Z,ee),ra.register(J,Q,Z,ee),mn.register(J,Q,Z,ee),Wa.register(J,Q,Z,ee),qa.register(J,Q,Z,ee),ia.register(J,Q,Z,ee),Ua.register(J,Q,Z,ee),Xa.register(J,Q,Z,ee),Ka.register(J,Q,Z,ee),Ya.register(J,Q,Z,ee),Ja.register(J,Q,Z,ee),Qa.register(J,Q,Z,ee),ei.register(J,Q,Z,ee))}function il(){al();function e(i,r){const l=Q[i];return l?l(r):{}}function n(i){return J[i]||ol}function o(i){switch(i){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 a(i){switch(i){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:e,resolveEditorType:n,getChangeFunctionName:o,getClearFunctionName:a}}const rl=t.defineComponent({name:"FDynamicFormGroup",props:to,emits:["change","update:modelValue"],setup(e,n){const o=t.ref(e.id),a=t.ref(e.customClass),i=t.ref(e.editor),r=t.ref(e.label),l=t.ref(e.modelValue),s=t.ref(e.readonly),u=t.ref(e.required),d=t.ref(e.showLabel),p=t.ref(e.visible);t.ref(e.type);const c=t.ref(),{resolveEditorProps:f,resolveEditorType:w,getChangeFunctionName:v,getClearFunctionName:b}=il(),g=t.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":s.value}));function h(V,C){l.value=C!==void 0?C:V,n.emit("update:modelValue",l.value),n.emit("change",l.value)}function m(){n.emit("update:modelValue","")}const y=t.computed(()=>{const V=i.value.type||"input-group",C=w(V),F=f(V,i.value),k=v(V),x=b(i.value.type);return F[k]=h,F[x]=m,(F.id==null||F.id==="")&&(F.id=o.value),()=>t.createVNode(C,t.mergeProps({ref:c},F,{modelValue:l.value,"onUpdate:modelValue":S=>l.value=S}),null)});return t.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([V,C,F,k,x,S,_,M,T])=>{o.value=V,a.value=C,i.value=F,r.value=k,l.value=x,s.value=S,u.value=_,d.value=M,p.value=T}),n.expose({editorRef:c}),()=>p.value&&t.createVNode("div",{id:`${o.value}-input-group`,class:a.value},[t.createVNode("div",{class:"farris-group-wrap"},[t.createVNode("div",{class:g.value},[d.value&&t.createVNode(Dr,{id:`${o.value}-lable`,required:u.value,text:r.value,title:r.value},null),t.createVNode("div",{class:"farris-input-wrap"},[y.value()])])])])}}),ll={},sl={};class cl extends ze{constructor(n,o){super(n,o)}}Be({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}},eo,Yt,void 0);const ul={$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"]},dl={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};pn.createPropsResolver(dl,ul,Tr,$r);const fl={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 Jt(){return new DOMException("The request is not allowed","NotAllowedError")}async function pl(e){if(!navigator.clipboard)throw Jt();return navigator.clipboard.writeText(e)}async function ml(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(),a=window.document.createRange();o==null||o.removeAllRanges(),a.selectNode(n),o==null||o.addRange(a);let i=!1;try{i=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(n)}if(!i)throw Jt()}async function hl(e){try{await pl(e)}catch(n){try{await ml(e)}catch(o){throw o||n||Jt()}}}function gl(){async function e(n){await hl(n)}return{onCopy:e}}function yl(e,n,o,a){const i=t.ref(14),r=t.ref(140),l=t.ref(""),s=t.ref(a.value.length),u=t.computed(()=>a.value),d=t.computed(()=>({"font-size":`${i.value}px`,height:"100%"}));function p(c){if(c.currentTarget){const f=c.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:r.value,onInput:c=>p(c)},[u.value]),t.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+r.value])])}function vl(e,n,o,a){const i=yl(e,n,o,a),r=new Map([["text-area",i]]);function l(s){return r.get(s)||null}return{getEditorRender:l}}function bl(){const e=t.ref(!1),n=t.ref("复制成功");return{feedbackStyle:t.computed(()=>{const a={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 a.opacity=e.value?"0.8":"0",a.display=e.value?"":"none",a}),feedbackMessage:n,toShowFeedback:e}}function Cl(e,n){const o=n.getEditorRender(e.promptEditorType);return()=>o&&o()}function wl(e){const n=t.ref(3),o=t.ref(480),a=t.computed(()=>!!e.value&&!!e.value.date),i=t.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),r=t.computed(()=>!!e.value&&!!e.value.detail),l=t.computed(()=>{const g=`${o.value}px`;return{overflow:"hidden","text-overflow":"ellipsis",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":n.value,"max-height":g}}),s=t.computed(()=>e.value&&e.value.detail||""),u=t.computed(()=>!0),d=t.ref(!1),p=t.ref("展开"),c=t.ref("收起"),f=t.computed(()=>{const g={display:"block",color:"#2A87FF"};return g["text-align"]=d.value?"":"right",g});function w(g,h){d.value=!d.value,n.value=d.value?20:3}function v(g){return w()}function b(g){return w()}return()=>t.createVNode("div",{class:"toast-msg-detail"},[a.value&&t.createVNode("div",null,[i.value]),r.value&&t.createVNode("div",{id:"exception_error_msg",ref:"exceptionMessageRef",style:l.value},[t.createTextVNode("详细信息 : "),t.createVNode("span",{innerHTML:s.value},null)]),u.value&&t.createVNode("span",{style:f.value},[d.value&&t.createVNode("span",{onClick:v,style:"cursor: pointer;"},[c.value]),!d.value&&t.createVNode("span",{onClick:b,style:"cursor: pointer;"},[p.value])])])}function Sl(e){return()=>t.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function xl(e,n,o,a){const i=t.ref(e.exceptionInfo),r=t.computed(()=>{const f={"f-icon":!0},w=`f-icon-${n.value}`;return f[w]=!0,f}),l=t.computed(()=>o.value||i.value&&i.value.message),s=t.computed(()=>a.value),u=t.computed(()=>!!a.value),d=t.computed(()=>!!i.value);function p(){return d.value?wl(i):u.value?Sl(s):()=>null}const c=p();return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:r.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[t.createVNode("p",{class:"toast-msg-title",innerHTML:l.value},null),c()])])}function Vl(e,n,o){const{onCopy:a}=n,{toShowFeedback:i}=o,r=t.ref("复制成功"),l=t.ref("复制详细信息"),s=t.ref(e.exceptionInfo||{date:"",message:"",detail:""}),u=t.computed(()=>s.value&&s.value.detail||"");function d(p){a(u.value).catch(c=>{r.value="复制失败"}).finally(()=>{i.value=!0,setTimeout(()=>{i.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 Fl(e,n,o,a){const i=t.ref(e.type),r=t.ref([]),l=t.ref(e.exceptionInfo),s=t.ref(e.okButtonText),u=t.ref(e.cancelButtonText),d=t.ref(!0),p=t.ref(!0),c=t.computed(()=>!!(r.value&&r.value.length)),f=t.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),w=t.computed(()=>!(r.value&&r.value.length)&&(s.value||u.value)),v=t.computed(()=>p.value&&s.value),b=t.computed(()=>d.value&&u.value),g=Vl(e,o,a);function h(y){i.value==="question"&&n.emit("reject"),n.emit("close")}function m(y){i.value==="question"&&n.emit("accept"),n.emit("close")}return()=>t.createVNode("div",{class:"modal-footer"},[f.value&&g(),w.value&&b.value&&t.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:h},[u.value]),w.value&&v.value&&t.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:m},[s.value]),c.value&&r.value.length&&r.value.map(y=>t.createVNode("button",{type:"button",onClick:y.handle,class:y.class},[y.iconClass&&t.createVNode("span",{class:y.iconClass},null),y.text]))])}const Ot=t.defineComponent({name:"FMessageBox",props:fl,emits:["accept","reject","close"],setup(e,n){const o=t.ref(e.type),a=t.ref(e.title),i=t.ref(e.detail),r=t.computed(()=>{const g={"modal-tips":!0,"d-flex":!0,"flex-row":!0},h=`messager-type-${o.value}`;return g[h]=!0,g}),l=t.computed(()=>{const g={};return o.value==="prompt"?g.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(g.padding="0.5rem 1.5rem 1rem 1.5rem"),g}),s=gl(),u=vl(e,o,a,i),d=bl(),{feedbackStyle:p,feedbackMessage:c}=d;function f(){return t.createVNode("div",{style:p.value},[c.value])}function w(){switch(o.value){case"prompt":return Cl(e,u);default:return xl(e,o,a,i)}}const v=w(),b=Fl(e,n,s,d);return()=>t.createVNode("div",{class:"farris-messager"},[t.createVNode("section",{class:r.value,style:l.value},[v()]),b(),f()])}});class Ze{static show(n){let o=new Ni;const a=t.reactive({...n}),i=!1,r=a.type==="error"||a.type==="prompt",l=a.type==="error"?"错误提示":a.type==="prompt"&&a.title||"",s=a.acceptCallback||(()=>{}),u=a.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:i,showHeader:r,width:a.width||400,fitContent:!0,showMaxButton:!1,render:()=>t.createVNode(Ot,t.mergeProps(a,{onAccept:s,onReject:u,onClose:p}),null)})}static info(n,o){const a=t.reactive({type:"info",title:n,detail:o,okButtonText:"知道了",cancelButtonText:""});Ze.show(a)}static warning(n,o){const a=t.reactive({type:"warning",title:n,detail:o,okButtonText:"知道了",cancelButtonText:""});Ze.show(a)}static success(n,o){const a=t.reactive({type:"success",title:n,detail:o,okButtonText:"关闭",cancelButtonText:""});Ze.show(a)}static error(n,o,a){const i=t.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:a,message:n,detail:o}});Ze.show(i)}static prompt(n,o){const a=t.reactive({type:"prompt",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消"});Ze.show(a)}static question(n,o,a,i){const r=t.reactive({type:"question",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:a,rejectCallback:i});Ze.show(r)}}Ot.install=e=>{e.component(Ot.name,Ot),e.provide("FMessageBoxService",Ze)};var io=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(io||{}),ro=(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))(ro||{});const Nl=[{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:"结束是"}],kl={"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 _l(e,n,o){const{fieldMap:a}=o;function i(r){const l=a.get(r.fieldCode);if(!l)return[];const s=l.editor.type,u=new Set(kl[s]);return Nl.filter(p=>u.has(p.value))}return{getCompareOperators:i}}function lo(){const e=t.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),n=new Map,o=new Map;let a=0;function i(){return{id:"",fieldCode:"",fieldName:"",compareType:ro.Equal,valueType:io.Value,value:new Xn,relation:0,conditionId:Date.now()}}function r(S,_){return{relation:S,items:[],children:[],path:[],groupId:++a,level:_}}function l(){const S=Object.assign({},e.value);o.forEach((_,M)=>{_.groupId===S.groupId&&o.set(M,S)}),n.forEach((_,M)=>{_.groupId===S.groupId&&n.set(M,S)}),e.value=S}function s(S){const _=new Map;let M=0;return S.forEach((T,I)=>{var N,B;if(M+=((N=T.lBracket)==null?void 0:N.length)||0,_.set(I,M),M-=((B=T.rBracket)==null?void 0:B.length)||0,M<0)throw new Error("The right bracket is out of range.")}),_}function u(S,_,M,T,I){for(let N=0;N<_;N++){const B=S+(N+1),$=r(I,B);M.children.push($),o.set($.groupId,M),M=M.children[M.children.length-1],T.push(M)}return M}function d(S,_,M,T,I){for(let O=_;O<=0;O++)T.pop();const N=T[T.length-1];if(!N)throw new Error("The group path is out of range");const B=S+_,$=r(I,B);return N.children.push($),o.set($.groupId,N),M=N.children[N.children.length-1],T.push(M),M}function p(S,_,M,T){M.pop();const I=M[M.length-1],N=r(T,S);return I.children.push(N),o.set(N.groupId,I),_=I.children[I.children.length-1],M.push(_),_}function c(S,_,M,T,I,N){let B=S[S.length-1];if(!B)throw new Error("The group path is out of range");const $=_.get(T)||0,O=_.get(M)||0;if(M<0||M===T)return S[S.length-1];const P=$-O,E=I&&I.relation!==void 0?I.relation:1;return B=P>0?u(O,P,B,S,E):B,B=P<0?d(O,P,B,S,E):B,B=P===0&&O>0&&$>0&&I&&N&&!!I.rBracket&&!!N.lBracket?p(O,B,S,E):B,B}function f(S){const M={relation:S.length&&S[0].relation!==void 0?S[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},T=[M],I=s(S);return S.forEach((N,B)=>{const $=B-1,O=S[$],P=c(T,I,$,B,O,N);P.items.push(N),n.set(N.conditionId,P)}),e.value=M,M}function w(){const S=i();n.set(S.conditionId,e.value),e.value.items.push(S)}function v(S){if(!S)return;const _=n.get(S.conditionId);if(_){const M=_.items.findIndex(I=>I.conditionId===S.conditionId)+1,T=i();n.set(T.conditionId,_),_.items.splice(M,0,T),l()}}function b(S){const _=n.get(S.conditionId);_&&(_.items=_.items.filter(M=>M.conditionId!==S.conditionId),n.delete(S.conditionId),x(),l())}function g(S,_,M,T){S.reduce((I,N)=>{const B=N.conditionId!==void 0,$=N.groupId!==void 0;if(B){const O=N;M.push(O),I.items.set(O.conditionId,O)}if($){const O=N;T.push(O),I.groups.set(O.groupId,O)}return I},_)}function h(S,_,M,T,I){S&&(S.items=_.length?S.items.filter(N=>!M.has(N.conditionId)):S.items,S.children=T.length?S.children.filter(N=>!I.has(N.groupId)):S.children)}function m(S,_,M){_.forEach(T=>{S.items.push(T),n.set(T.conditionId,S)}),M.forEach(T=>{S.children.push(T),o.set(T.groupId,S)})}function y(S){const _=S[0],M=_.conditionId!==void 0?n.get(_.conditionId):o.get(_.groupId),T={items:new Map,groups:new Map},I=[],N=[];if(M){g(S,T,I,N),h(M,I,T.items,N,T.groups);const B=r(M.relation,M.level+1);m(B,I,N),M.children.push(B),o.set(B.groupId,M),l()}}function V(S){const _=[...S.items],M=[...S.children],T=o.get(S.groupId);T&&(T.children=T.children.filter(I=>I.groupId!==S.groupId),o.delete(S.groupId),_.forEach(I=>{T.items.push(I),n.set(I.conditionId,T)}),M.forEach(I=>{T.children.push(I),o.set(I.groupId,T)}),l())}function C(S){S.relation=S.relation===1?2:1,l()}let F;function k(S){const{relation:_}=S;return(S.children&&S.children.length?S.children.map((T,I,N)=>{const B=F(T);return B[0].lBracket=(B[0].lBracket||"")+"(",B[B.length-1].rBracket=(B[B.length-1].rBracket||"")+")",B[B.length-1].relation=I<N.length-1?_:0,B}):[]).flat()}F=(S=e.value)=>{const{relation:_}=S,M=S.items.map((I,N,B)=>(I.lBracket=N===0?"(":"",I.rBracket=N===B.length-1?")":"",I.relation=N<B.length-1?_||1:0,I)),T=k(S);return[...M,...T]};function x(S){const _=S||e.value;if(_.children.length&&_.children.forEach(M=>{x(M)}),_.level===0&&!_.items.length&&_.children.length===1){const M=_.children[0];e.value.relation=M.relation,V(M)}else _.items.length===0&&_.children.length<=1&&V(_)}return{addCondition:w,changeGroupRelation:C,conditionGroupMap:n,getConditions:F,group:y,groupParentMap:o,insertConditionTo:v,loadConditionGroup:f,refresh:l,removeCondition:b,rootGroup:e,unGroup:V}}function Il(e,n,o){const a=t.ref(new Set),i=t.ref(new Set),{conditionGroupMap:r,groupParentMap:l}=o;let s,u;function d(h){let m=s.level<=h.level?s:h,y=s.level>h.level?s:h;const V=[];for(;y&&m&&y!==m;)y.level>m.level?(V.push(y),y=l.get(y.groupId)):y.level===m.level&&(m=l.get(m.groupId),m&&V.unshift(m));return V}function p(h){i.value.add(h.groupId),h.items.forEach(m=>a.value.add(m.conditionId)),h.children.forEach(m=>p(m))}function c(h){const{conditionId:m}=h;a.value.add(m),s=a.value.size===0?r.get(m):s;const y=r.get(h.conditionId);d(y).forEach(C=>p(C))}const f=t.computed(()=>a.value.size===0&&i.value.size===1),w=function(h){i.value.delete(h.groupId),h.items.forEach(y=>u(y)),h.children.forEach(y=>!f.value&&w(y));const m=l.get(h.groupId);m&&i.value.has(m.groupId)&&w(m)};u=function(h){const{conditionId:m}=h;if(a.value.has(m)&&a.value.delete(m),i.value.size>0){const y=r.get(m);y&&i.value.has(y.groupId)&&w(y)}};function v(h){const{conditionId:m}=h;a.value.size===0&&(s=r.get(m)),a.value.has(m)?u(h):c(h)}function b(){const h=[];return s&&(s.items.filter(m=>a.value.has(m.conditionId)).forEach(m=>h.push(m)),s.children.filter(m=>i.value.has(m.groupId)).forEach(m=>h.push(m))),h}function g(){a.value.clear(),i.value.clear()}return{clear:g,getSelectedGroupItem:b,selectedItems:a,toggleSelect:v}}const Qt=t.defineComponent({name:"FConditionList",props:Un,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,n){const o=t.ref(e.key),a=t.ref(e.conditions),i=Jn(e),{convertToSingleControl:r,fields:l,fieldMap:s,loadFieldConfigs:u}=i,d=lo(),{addCondition:p,changeGroupRelation:c,getConditions:f,group:w,insertConditionTo:v,loadConditionGroup:b,refresh:g,removeCondition:h,rootGroup:m,unGroup:y}=d,{createConditionValue:V}=Yn(),C=Il(e,n,d),{selectedItems:F,toggleSelect:k}=C,{getCompareOperators:x}=_l(e,n,i);u(!1),l.value=r(l.value),b(a.value);function S(P){var j;const E=((j=s.get(P.fieldCode))==null?void 0:j.editor)||{type:"text"};P.value=V(E.type,void 0),n.emit("labelCodeChange",P)}function _(P,E){n.emit("compareTypeChange",E)}function M(){}n.expose({getConditions:f});function T(P,E){n.emit("valueChange",P,E)}function I(P){return P.items.map(E=>{var j;return t.createVNode("div",{class:"condition-list-item",key:E.conditionId},[t.createVNode("div",{class:"condition-list-item-type mr-3"},[t.createVNode(Dt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:E.fieldCode,"onUpdate:modelValue":R=>E.fieldCode=R,onChange:R=>S(E)},null)]),t.createVNode("div",{class:"condition-list-item-compare mr-3"},[t.createVNode(Dt,{"value-field":"value","text-field":"name","id-field":"id",data:x(E),modelValue:E.compareType,"onUpdate:modelValue":R=>E.compareType=R,onChange:R=>_(R,E)},null)]),t.createVNode("div",{class:"condition-list-item-control mr-3"},[t.createVNode(rl,{editor:(j=s.get(E.fieldCode))==null?void 0:j.editor,showLabel:!1,modelValue:E.value.value,"onUpdate:modelValue":R=>E.value.value=R,onChange:R=>{T(R,E)}},null)]),t.createVNode("div",{class:"condition-list-item-extend"},[t.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>v(E)},null),t.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>h(E)},null)]),t.createVNode("div",{class:"custom-control custom-checkbox"},[t.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:F.value.has(E.conditionId)},null),t.createVNode("label",{class:"custom-control-label",onClick:()=>k(E)},null)])])})}function N(P){return t.createVNode("div",{class:"condition-list-relation"},[t.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>y(P)},null),t.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>c(P)},[P.relation===1?"与":"或"])])}function B(P){return t.createVNode("div",{class:"condition-list-content"},[t.createVNode("div",{class:"condition-list-content-group"},[I(P),P.children&&P.children.map(E=>B(E))]),N(P)])}function $(){w(C.getSelectedGroupItem()),C.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:M},[t.createTextVNode("重置")])])}return()=>t.createVNode("div",{class:"condition-list",key:o.value},[t.createVNode("div",{class:"condition-list-body"},[B(m.value)]),O()])}});Qt.install=e=>{e.component(Qn.name,Qn).component(Qt.name,Qt)};const Tl=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth"],Ml={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},Ol={equal:(e,n,o)=>e&&e[n]===o,notEqual:(e,n,o)=>e&&e[n]!==o},Bl={equal:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()===a}return!1},notEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()!==a}return!1},greaterThan:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>a}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()>=a}return!1},lessThan:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<a}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const a=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[n]).toLocaleDateString()).valueOf()<=a}return!1}},$l={equal:(e,n,o)=>e?String(o).split(",").includes(String(e[n])):!1,notEqual:(e,n,o)=>e?String(o).split(",").findIndex(i=>i===String(e[n]))===-1:!1},Pl={equal:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):a===i}return!1},notEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?!0:a!==i}return!1},greaterThan:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i>a}return!1},greaterThanOrEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i>=a}return!1},lessThan:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i<a}return!1},lessThanOrEqual:(e,n,o)=>{if(e){const a=Number.parseFloat(String(o)),i=Number.parseFloat(String(e[n]));return isNaN(a)?isNaN(i):i<=a}return!1}};function Zt(){const e=t.ref([]),n=new Map,{loadConditionGroup:o}=lo(),a=new Map([["boolean",Ol],["datetime",Bl],["enum",$l],["number",Pl],["text",Ml]]);function i(c){n.delete(c),e.value=Array.from(n.values())}function r(){n.clear(),e.value=[]}function l(c){const{valueType:f}=c.value,w=c.compareType||"0",v=Tl[Number(w)];return a.get(f)[v]}function s(c){const f=c.relation===2?0:1,w=c.items.map(b=>{const g=l(b);return m=>g(m,b.fieldCode,b.value.getValue())}),v=c.children&&c.children.length?c.children.map(b=>s(b)):[];return{relation:f,filterFunctions:w,children:v}}function u(){const c=o(e.value);return s(c)}function d(c,f){const w=f.filterFunctions.map(b=>b(c)),v=f.children.map(b=>d(c,b));return f.relation===1?w.every(b=>b)&&v.every(b=>b):w.includes(!0)||v.includes(!0)}function p(c){const f=u();return d(c,f)}return{apply:p,clearCondition:r,conditions:e,removeCondition:i}}function en(e,n){var h;const{idField:o}=n,a=t.ref(e.summary),i=t.ref(e.group),r=t.ref(((h=e.group)==null?void 0:h.groupFields)||[]),l=t.computed(()=>{var m;return(m=e.group)==null?void 0:m.enable}),s=t.computed(()=>{var m;return(m=e.group)==null?void 0:m.showGroupPanel}),u=t.computed(()=>{const m=a.value;return(m==null?void 0:m.groupFields)||[]}),d=t.computed(()=>{const m=i.value;return m&&m.showSummary}),p=new Map;let c=[];function f(m,y,V,C,F){const k=C[V];k&&(y.reduce((x,S,_)=>{var I;const M=S[k];let T=x.get(M);if(!T){const N=u.value.reduce((B,$)=>(B.set($,0),B),new Map);T={field:k,title:((I=F.get(k))==null?void 0:I.title)||k,value:M,layer:V,details:[],groupSummaries:N},x.set(M,T)}return u.value&&u.value.forEach(N=>{if(T){const B=T.groupSummaries.get(N)||0;T.groupSummaries.set(N,B+S[N])}}),T.details.push(S),x},m),V<C.length-1&&m.forEach((x,S)=>{x.nestGroup=new Map,f(x.nestGroup,x.details,V+1,C,F),x.details=[]}))}function w(m,y){return e.group&&e.group.formatter?e.group.formatter(m.value,{...m,total:y}):`${m.title}:${m.value} (${y})`}function v(m){const y=[];return m.forEach(V=>{const C={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:V.field,__fv_data_grid_group_layer__:V.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:V.value};let F=0;if(y.push(C),V.nestGroup){const k=v(V.nestGroup);y.push(...k),F+=k.length}if(V.details&&V.details.length&&(y.push(...V.details),F+=V.details.length),d.value){const k={__fv_data_grid_group_field__:V.field,__fv_data_grid_group_layer__:V.layer,__fv_data_grid_group_summary__:!0};k[o.value]=`summary_of_${V.field}_${V.value}`,k[V.field]=Array.from(V.groupSummaries.entries()).reduce((x,[S,_])=>`${x} ${S} total:${_} `,""),y.push(k)}V.groupSummaries&&V.groupSummaries.size&&V.groupSummaries.forEach((k,x)=>{C[x]=k}),C[o.value]=`group_of_${V.field}_${V.value}`,C[V.field]=w(V,F)}),y.forEach((V,C)=>{V.__fv_data_index__=C}),y}function b(m,y,V){return!m||m.length===0||!y.length?y:(m.join(","),p.clear(),c=[],f(p,y,0,m,V),c=v(p),c)}function g(m){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":m.collapse}}return{collpaseGroupIconClass:g,generateGroupData:b,groupFields:r,shouldGroupingData:l,showGroupPanel:s}}function jl(e,n,o,a){const i=t.ref(!!e.hierarchy),{idField:r}=a,{collapseField:l,hasChildrenField:s,parentIdField:u}=o,d=new Map;function p(T,I){const N=new Map;return T.reduce((B,$)=>{const O=$[u.value]!==void 0?$[u.value]:"";if(O&&I.has(O)){const E=I.get(O);$.__fv_parent_index__=E.__fv_index__,E.__fv_hasChildren__=!0}const P=B.has(O)?B.get(O):[];return P.push($),B.set(O,P),B},N),N}function c(T){const I=new Map;return T.reduce((N,B)=>{const $=B[r.value];return N.set($,B),N},I),I}function f(T){T.forEach(I=>{const N=I[r.value];I.__fv_children_index__.map($=>T[$]).forEach($=>{$.__fv_parents__=new Map([...I.__fv_parents__.entries(),[N,!0]])})})}function w(T){T.forEach(I=>{const N=new Set(I.__fv_children_index__);I.__fv_children_index__=[...N].sort((B,$)=>B-$)})}function v(T,I){T.forEach(N=>{const B=N.__fv_parents__;Array.from(B.keys()).map($=>I.get($)).forEach($=>{$.__fv_children_index__.push(N.__fv_index__)})}),w(T)}function b(T){T.forEach(I=>{I.__fv_child_with_lines__=[],I.__fv_child_length__=I.__fv_descendant_index__.length,I.__fv_descendant_index__.map(N=>T[N]).reduce((N,B)=>(N.__fv_child_length__+=B.__fv_children_index__.length,N.__fv_child_with_lines__.push(...B.__fv_children_index__,B.__fv_index__),N),I)})}function g(T,I){return{id:T,index:I,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function h(T,I){Array.from(I.keys()).forEach(N=>{I.get(N).reduce(($,O)=>{const P=O[r.value],E=T.get(O[r.value]),j=T.get(N);return j&&(j.children.set(P,E),j.children.set(P,E),E.parentId=N,E.parentIndex=j.index,E.parents.set(N,j)),$},T)})}function m(T){T.children.forEach(N=>{N.parents=new Map([...T.parents.entries(),[T.id,T]]),m(N)})}function y(T,I){T.filter(N=>N[u.value]===void 0||N[u.value]==="").forEach(N=>{const B=N[r.value],$=I.get(B);m($)})}function V(T){Array.from(T.values()).forEach(I=>{Array.from(I.parents.values()).forEach(N=>{N.descendant.set(I.id,I)})})}function C(T){d.clear(),T.forEach((B,$)=>{const O=B[r.value];d.set(O,g(O,$))});const I=c(T),N=p(T,I);return h(d,N),y(T,d),V(d),d}function F(T){const I=T[r.value],N=d.get(I);return N&&N.children.size>0}function k(T){return T[s.value]&&!F(T)}function x(T){C(n.value);const I=c(T),N=p(T,I);return T.forEach((B,$)=>{var j;const O=B[r.value],P=N.has(O)?(j=N.get(O))==null?void 0:j.map(R=>R.__fv_index__):[],E=g(O,$);B.__fv_graph_node__=E,B.__fv_children_index__=P,B.__fv_descendant_index__=[...P],B.__fv_parents__=new Map,k(B)&&(B[l.value]=!0)}),f(T),v(T,I),e.showLines&&b(T),T}function S(T,I,N){const $=N.value[T][r.value],O=d.get($);if(O){const P=d.get(O.parentId);let E=N.value.length-1;if(P){const j=Array.from(P.children.keys()).indexOf(O.id);if(j===P.children.size-1){const W=Array.from(P.descendant.values())[P.descendant.size-1];E=N.value.findIndex(pe=>pe[r.value]===W.id)+1}else{const W=Array.from(P.children.values())[j+1];E=N.value.findIndex(pe=>pe[r.value]===W.id)}I[s.value]=!1,I[u.value]=P.id,N.value.splice(E,0,I)}}}function _(T,I,N){const B=N.value[T],$=B[r.value];if(d.get($)){const E=N.value.findIndex(j=>j[r.value]===$)+1;B[s.value]=!0,B[l.value]=!1,I[s.value]=!1,I[u.value]=$,N.value.splice(E,0,I)}}function M(T,I){const N=T[r.value],B=d.get(N),$=Array.from(B.descendant.keys());$.unshift(N);const O=d.get(B.parentId);if(O&&(O.children.delete(N),O.children.size===0)){const E=I.find(j=>j[r.value]===B.parentId);E[s.value]=!1,E[l.value]=!1}return I.filter(E=>$.indexOf(E.id)===-1)}return{generateHierarchyData:x,hasRealChildren:F,insertSibling:S,insertChild:_,shouldStratifyData:i,trimmedOriginalData:M}}const Dl={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}},El={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},tn=t.defineComponent({name:"Toast",props:El,emits:["close","click"],setup:(e,n)=>{const o=t.ref(e.animate),a="fadeOut",i=t.computed(()=>e.options),r=t.ref(!1),l=t.computed(()=>{const h={animated:r.value,toast:!0};return h[e.animate]=!1,h[a]=r.value,h[i.value.type]=!0,i.value.theme&&(h[i.value.theme]=!0),h}),s=t.computed(()=>{const y=`f-icon-${i.value&&i.value.type?i.value.type.replace("toasty-type-",""):"default"}`,V={"f-icon":!0};return V[y]=!0,V}),u=t.computed(()=>i.value.title||i.value.message),d=t.computed(()=>i.value.title&&i.value.message),p=t.computed(()=>!i.value.title&&i.value.message),c=t.computed(()=>e.showCloseButton),f=t.computed(()=>!!i.value.buttons||!!n.slots.default);function w(h){h.stopPropagation(),h.preventDefault(),r.value=!1,setTimeout(()=>{n.emit("close",i.value)},200)}function v(h,m){}function b(h){return`f-preten-link ${h.customClass?h.customClass:""}`}t.watch(o,()=>{o.value});const g=()=>{var h;return t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"after-toast-msg text-right"},[!n.slots.default&&((h=i.value.buttons)==null?void 0:h.map(m=>t.createVNode("span",{class:b(m),onClick:y=>void 0},[m.text]))),n.slots.default&&n.slots.default()])])};return()=>t.createVNode("div",{class:l.value},[c.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)]),u.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:i.value.title},null),t.createVNode("p",{class:"toast-msg",innerHTML:i.value.message},null),f.value&&g()]),p.value&&(i.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:i.value.message},null),t.createVNode("div",{class:"after-toast-title text-right ml-auto"},[g()])]):t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:i.value.message},null))])])])}}),Bt=t.defineComponent({name:"Notify",props:Dl,emits:["close","empty"],setup(e,n){const o=t.computed(()=>({"farris-notify":!0})),a={left:12,right:12,top:20,bottom:12},i=t.ref(),r=t.ref(e.options),l=t.ref(e.showCloseButton),s=t.computed(()=>e.position||"bottom-right"),u=t.computed(()=>e.timeout!=null?e.timeout:3e3),d=t.computed(()=>{const f=e.bottom?e.bottom:a.bottom,w=e.top?e.top:a.top,v={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:a.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:a.right}px`:"",top:s.value.indexOf("top")>-1?`${w}px`:"",bottom:s.value.indexOf("bottom")>-1?`${f}px`:""};return s.value.indexOf("center")>-1&&(v.left="50%",v.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(v.top="50%",v.transform="translate(-50%, -50%)")),v});function p(f){n.emit("close")}u.value&&setTimeout(()=>{p()},u.value),n.expose({closeToast:p,container:i,notifyPosition:s});function c(f,w){p()}return()=>t.createVNode("div",{class:o.value,style:d.value,ref:i},[t.createVNode(tn,{options:r.value,showCloseButton:l.value,animate:e.animate,onClose:f=>c(f,r.value)},null)])}});class so{constructor(){L(this,"notifyRefs",[]);L(this,"globalConfig",t.reactive({}))}createNotifyInstance(n){const o=this,i=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...n}),r=document.createElement("div");r.style.display="contents";const l=t.createApp({setup(){const s=t.ref();function u(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(i,s),l.unmount()},220)}if(i.position.indexOf("top")>-1){const d=o.getNotifyInstances(i.position),p=d[d.length-1];if(p){const c=p.value.container.getBoundingClientRect();i.top=c.bottom}}return t.onUnmounted(()=>{document.body.removeChild(r)}),t.onMounted(()=>{o.updateNotifyPositionForCreate(i,s)}),()=>t.createVNode(t.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[t.createVNode(Bt,t.mergeProps({ref:s},i,{onClose:u}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(r),l.mount(r),l}getNotifyInstances(n){return this.notifyRefs.filter(o=>o.value.notifyPosition===n)}updateNotifyPositionForCreate(n,o){if(this.notifyRefs&&this.notifyRefs.length){const a=window.innerHeight;n.position.indexOf("bottom")>-1&&this.getNotifyInstances(n.position).forEach(i=>{const r=i.value.container.getBoundingClientRect();i.value.container.style.bottom=r.height+a-r.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(n,o){const a=this.notifyRefs.indexOf(o);if(n.position.indexOf("top")>-1){const i=this.getNotifyInstances(n.position),r=i.indexOf(o);i.slice(r+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}a>-1&&this.notifyRefs.splice(a,1)}show(n){return this.createNotifyInstance(n)}buildNotifyProps(n,o){let a="",i="",r,l,s;typeof o=="string"?a=o:o&&(a=o.message||"",i=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,r=o.timeout!=null?o.timeout:null);const d={options:{type:n,message:a,title:i}};return l!=null&&(d.position=l),s!=null&&(d.showCloseButton=s),r!=null&&(d.timeout=r),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 nn=Symbol("NOTIFY_SERVICE_TOKEN");Bt.install=e=>{e.component(Bt.name,Bt),e.component(tn.name,tn);const n=new so;e.provide(nn,n),e.provide("FNotifyService",n)};function co(e,n,o,a,i){var tt;const{pageSize:r,total:l,shouldRenderPagination:s,currentPage:u,mode:d}=i,p=new Map,c=new Map,f=new Map,w=new Map,v=new Map,b=t.ref([]),g=t.ref([]),h=Zt(),m=en(e,a),{generateGroupData:y,groupFields:V,shouldGroupingData:C}=m,F=t.ref(e.data),k=jl(e,F,o,a),{generateHierarchyData:x,hasRealChildren:S,insertSibling:_,insertChild:M,shouldStratifyData:T,trimmedOriginalData:I}=k,{idField:N,reviseIdentifyField:B}=a,$=t.ref(e.newDataItem),O=t.ref(e.data),P=t.ref(e.data),{flatTreeData:E}=es(e);if(e.data&&((tt=e.data[0])!=null&&tt.children)){const A=xe(e.data);F.value=A,O.value=A,P.value=A}const j=t.ref(e.summary),R=t.computed(()=>{const A=j.value;return(A==null?void 0:A.groupFields)||[]});let W=new Map;const te=t.computed(()=>{var A;return((A=O.value)==null?void 0:A.length)||0}),pe=t.ref(e.pagination),Ne=new so,me=t.computed(()=>e.hierarchy?0:s.value?d.value==="server"?0:(u.value-1)*r.value:0),Se=t.computed(()=>s.value?d.value==="server"?Math.min(r.value,te.value):Math.min(me.value+r.value,l.value,te.value):te.value);function xe(A){return E(A)}function ge(){var le,Ee;O.value=F.value,C.value&&(O.value=y(V.value,F.value,n)),W=R.value.reduce((qe,Fe)=>(qe.set(Fe,0),qe),W);const A=me.value,oe=Se.value;let se=0;const Ie=[];if((le=O.value)!=null&&le.length){B(O.value);const qe=N.value!==e.idField;for(let Fe=A;Fe<oe;Fe++){const Te=O.value[Fe];Te.__fv_data_grid_group_row__?(se=0,Te.__fv_data_index__=""):Te.__fv_data_grid_group_summary__?Te.__fv_data_index__="":(Te.__fv_disabled__=Te[((Ee=e.rowOption)==null?void 0:Ee.disabledField)||"disabled"],se++,s.value?Te.__fv_data_index__=se+(u.value-1)*r.value:Te.__fv_data_index__=se),Te.__fv_index__=Fe,qe&&(Te[N.value]=Fe),R.value.forEach(Ae=>{const we=W.get(Ae)||0;W.set(Ae,we+Te[Ae])}),Ie.push(Te)}}return T.value&&x(Ie),P.value=[...Ie],Ie}const de=t.ref(ge());function ye(A,oe,se=!1){const le=(se?ge():[...P.value]).filter(Fe=>h.apply(Fe)),Ee=A&&A.length?le.filter(Fe=>A.reduce((Te,Ae)=>Te&&Ae.filter(Fe),!0)):le,qe=oe&&oe.length?Ee.sort((Fe,Te)=>{const Ae=[...oe],we=Ae.shift();let nt=we.compare(Fe[we.field],Te[we.field]);for(;nt===0&&Ae.length!==0;){const gt=Ae.shift();gt&&(nt=gt.compare(Fe[gt.field],Te[gt.field]))}return nt}):Ee;return de.value=qe.map((Fe,Te)=>{if(Fe.__fv_data_grid_group_row__){const Ae=`group_of_${Fe.__fv_data_grid_group_field__}_${Fe.__fv_data_grid_group_value__}`;Fe.__fv_data_grid_group_collapse__=!!p.get(Ae)}return Fe.__fv_index__=Te,Fe}),de.value}function G(A){return v.clear(),g.value=A,g.value.reduce((oe,se)=>(oe.set(se.field,se),oe),v),ye([],g.value)}function U(A,oe){return v.set(A,oe),g.value=Array.from(v.values()),ye([],g.value)}function ce(A){return v.delete(A),g.value=Array.from(v.values()),ye([],g.value)}function ae(A,oe){return c.set(A,oe),b.value=Array.from(c.values()),ye([],Array.from(v.values()))}function ne(A){return c.delete(A),b.value=Array.from(c.values()),ye([],Array.from(v.values()),!0)}function ve(){return c.clear(),b.value=[],ye([],Array.from(v.values()),!0)}function ue(A,oe){const se=`group_of_${A}_${oe}`;p.set(se,!0);const Ie=le=>le[A]!==oe;return f.set(`collapse_${A}_${oe}`,{field:A,fieldName:A,fieldType:"string",filterValue:oe,filter:Ie}),ye(Array.from(f.values()),Array.from(v.values()))}function be(A,oe){const se=`group_of_${A}_${oe}`;return p.set(se,!1),f.delete(`collapse_${A}_${oe}`),ye(Array.from(f.values()),Array.from(v.values()),!0)}function je(A){const oe=A.raw[N.value],se=Ie=>!Ie.__fv_parents__.has(oe);w.set(`fold_${oe}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(oe),filter:se}),ye(Array.from(w.values()),Array.from(v.values())),x(de.value)}function D(A){const oe=A[N.value];w.delete(`fold_${oe}`)}function X(A){D(A.raw),ye(Array.from(w.values()),Array.from(v.values()),!0),x(de.value)}function re(){const A=ge();de.value=A,e.hierarchy&&(ye(Array.from(w.values()),Array.from(v.values())),x(de.value))}function q(A){var oe;if(A&&((oe=A[0])!=null&&oe.children)){const se=xe(A);F.value=se,O.value=se,P.value=se}else F.value=A,O.value=A,P.value=A;re()}function Ve(A,oe,se){return(A&&A.length?de.value.filter((le,Ee)=>A.reduce((qe,Fe)=>qe&&Fe.filter(le),!0)):de.value).slice(oe,se)}function K(A){(A-1)*r.value<=te.value&&re()}function ie(A){F.value.push($e.cloneDeep(A)),de.value=ge()}function he(A=0){if(!(A>-1))return!1;const se=$.value();e.hierarchy?_(A,se,F):F.value.splice(A,0,se),re()}function _e(A=0){if(!(A>-1&&e.hierarchy))return!1;const se=$.value(),Ie=F.value[A];D(Ie),M(A,se,F),re()}function Oe(A){const oe=A?A-1:0;F.value.splice(oe,1),re()}function He(A){const oe=F.value.findIndex(se=>se[N.value]===A);oe!==-1&&(F.value.splice(oe,1),re())}function Ke(A){const oe=A>-1?F.value[A]:null;if(!(oe&&oe.deletable!==!1))return!1;F.value=I(oe,F.value),re()}function Xe(){const A=f.size>0?Array.from(f.values()):[];return ye(A,Array.from(v.values()))}function st(A){pe.value&&(pe.value.size=A,re())}function ct(A,oe){const se=F.value[Number(A)-1];se.editable!==!1?(se.name=oe,re()):Ne.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function ut(A){return A.map(se=>{const Ie=P.value.findIndex(le=>le[N.value]===se);return Ie>-1?P.value[Ie]:null}).filter(se=>se!=null)}return{addFilter:ae,addNewDataItem:ie,addSorter:U,changePageSizeTo:st,collapse:ue,dataView:de,editDataItem:ct,expand:be,filters:b,fold:je,getRange:Ve,getSelectionItems:ut,hasRealChildren:S,load:q,navigatePageTo:K,summaries:W,totalItems:te,insertNewDataItem:he,insertNewChildDataItem:_e,removeAllFilter:ve,removeDataItem:Oe,removeDataItemById:He,removeFilter:ne,removeHierarchyDataItem:Ke,removeSorter:ce,rawView:P,refresh:Xe,setSorters:G,sorters:g,updateDataView:re,unFold:X,startIndex:me,endIndex:Se,originalData:F}}function uo(){function n(l){return l.field}function o(l){const s=n(l),u=localStorage.getItem(s);return u?JSON.parse(u):[]}function a(l,s){const u=n(l);localStorage.setItem(u,JSON.stringify(s))}function i(l,s){if(!s)return;const u=o(l),p=[u.find(c=>c.name===s)||{id:Date.now(),name:s,selectable:!0},...u.filter(c=>c.name!==s)];p.length>5&&(p.length=5),a(l,p)}function r(l,s){const d=[...o(l).filter(c=>c.name!==s)],p=n(l);localStorage.setItem(p,JSON.stringify(d))}return{getFilterHistory:o,removeFilterHistory:r,setFilterHistory:a,updateFilterHistory:i}}function fo(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__"}),a=t.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.parentIdField)||"parent"}),i=t.computed(()=>e.hierarchy&&e.selection.showCheckbox),r=t.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:n,hasChildrenField:o,parentIdField:a,shouldShowCheckBox:i,shouldShowIcon:r}}function Rl(e,n,o,a){var b,g,h,m,y,V;const{idField:i}=o,r=t.ref(((g=(b=e.hierarchy)==null?void 0:b.cascadeOption)==null?void 0:g.autoCheckChildren)||!1),l=t.ref(((m=(h=e.hierarchy)==null?void 0:h.cascadeOption)==null?void 0:m.autoCheckParent)||!1),s=t.ref(((V=(y=e.hierarchy)==null?void 0:y.cascadeOption)==null?void 0:V.selectionRange)||"All");t.watch(()=>{var C;return(C=e.hierarchy)==null?void 0:C.cascadeOption},C=>{r.value=C?!!C.autoCheckChildren:!1,l.value=C?!!C.autoCheckParent:!1,s.value=C?C.selectionRange:"All"});function u(C,F){for(let k=0;k<F.length;k++)if(!C.includes(F[k]))return!1;return!0}function d(C,F){return C.filter(x=>F.indexOf(x)===-1)}const p=t.computed(()=>s.value==="OnlyParent"),c=t.computed(()=>s.value==="OnlyChildren");function f(C,F){let k=C;const x=n.value[F],S=x[i.value],_=Array.from(x.raw.__fv_descendant_index__).map($=>n.value[$]),M=_.map($=>$.raw[i.value]),T=u(C,M),I=u(C,[S]);return I&&T&&p.value&&(k=d(C,M),_.forEach($=>{$.disabled=!0})),I&&T&&c.value&&(k=d(C,[S]),_.forEach($=>{$.disabled=!0})),k}function w(C,F){let k=C;const x=F[i.value],S=Array.from(F.__fv_children_index__).map(B=>n.value[B]),_=S.map(B=>B.raw[i.value]),M=u(C,_),T=u(C,[F[i.value]]);return T&&M&&p.value&&(k=d(C,_),S.forEach(B=>{B.disabled=!0})),T&&M&&c.value&&(k=d(C,[x]),S.forEach(B=>{B.disabled=!0})),k}function v(C,F){let k=C.map(M=>M[i.value]);return F.__fv_parent_index__>0&&(k=f(k,F.__fv_parent_index__)),F.__fv_children_index__.length>0&&(k=w(k,F)),C.filter(M=>k.includes(M[i.value]))}return{autoCheckChildren:r,autoCheckParent:l,interactAfterCheckHierarchyItem:v}}function Ll(e,n,o,a,i){const{select:r,unSelect:l,indeterminate:s,getSelectedItems:u,selectedValues:d,currentSelectedDataId:p}=a,{autoCheckChildren:c,autoCheckParent:f,interactAfterCheckHierarchyItem:w}=Rl(e,n,o),{idField:v}=o;function b(){return n.value.filter(x=>!!x.checked).map(x=>x.raw.__fv_index__)}function g(x,S){return x.filter(M=>S.indexOf(M)===-1)}function h(x){const S=b();x.raw.__fv_children_index__.some(M=>S.includes(M))&&!!x.checked!==!0&&s(x)}function m(x){let S=x.raw.__fv_parent_index__;for(;S!==void 0;){const _=b(),M=n.value[S],T=g(M.raw.__fv_children_index__,_);T.length===M.raw.__fv_children_index__.length&&T.length!==0?l(M):T.length===0?f.value&&r(M):T.length<M.raw.__fv_children_index__.length&&M.checked!==!0&&s(M),S=M.raw.__fv_parent_index__}}function y(x){const S=!!x.checked;c.value&&x.raw.__fv_children_index__.map(M=>n.value[M]).forEach(M=>{S?r(M):l(M)})}function V(x){y(x),m(x);const S=x.raw;let _=u();_=w(_,S),h(x),i.emit("selectionChange",_)}function C(x,S){let _=-1;if(x.raw.__fv_parent_index__>-1){const N=n.value[x.raw.__fv_parent_index__].raw.__fv_descendant_index__,B=N.length>1,$=N.findIndex(P=>P===S),O=$===N.length-1;_=B?O?N[$-1]:N[$+1]:-1}return _>-1?n.value[_]:null}function F(x){return x.raw.__fv_parent_index__>-1?n.value[x.raw.__fv_parent_index__]:null}function k(x){const S=n.value[x];if(!S)return null;const _=C(S,x),T=_!==null?_:F(S);return T?T.raw[v.value]:null}return{getNextSelectableHierarchyItemId:k,toggleSelectHierarchyItem:V}}function po(e,n,o,a,i,r,l,s){var Ve;const{dataView:u}=n,{getVisualData:d,maxVisibleRowIndex:p,minVisibleRowIndex:c}=i,f=t.ref(a.value.primaryColumnsWidth),w=t.ref(a.value.leftColumnsWidth),v=t.ref(a.value.rightColumnsWidth),b=((Ve=e.rowOption)==null?void 0:Ve.height)||28,g=t.ref(0),h=t.ref(0);let m=0,y=r.value-1;const V=t.ref(0),C=t.ref(0),F=t.ref(0);function k(){if(u.value.length<=0)return 0;const K=p.value<u.value.length?u.value[p.value]:u.value[u.value.length-1];return(K.__fv_data_position__||0)+(K.__fv_data_height__||0)+Math.max(u.value.length-1-p.value,0)*b}const x=t.computed(()=>{const K=k();return u.value.length>r.value+l?Math.floor((r.value+l)/u.value.length*C.value):Math.floor(C.value/Math.max(K,C.value)*C.value)}),S=t.computed(()=>Math.floor(F.value/Math.max(f.value,F.value)*V.value)),_=0,M=0,T=t.computed(()=>V.value-(w.value+f.value+v.value+s.value));function I(K){const ie=u.value.find(he=>he.__fv_data_position__>K);return ie?ie.__fv_index__-1:0}function N(K){var Ke,Xe;if(!u.value.length){o.value=[];return}const ie=(Ke=e.pagination)!=null&&Ke.enable?0:Math.max(m-l,0),he=u.value[u.value.length-1].__fv_index__,_e=(Xe=e.pagination)!=null&&Xe.enable?u.value.length-1:Math.min(y+l-1,he),Oe=u.value[ie-1],He=d(ie,_e,Oe,K);He.length&&(o.value=[...He])}const B=t.computed(()=>k()>C.value),$=t.computed(()=>Math.floor(f.value)>F.value);function O(K){let ie=g.value+K;ie>_&&(ie=_);const he=ie>_,_e=k(),Oe=B.value;Oe&&ie<C.value-_e&&(ie=C.value-_e),(!Oe||he)&&(ie=_),g.value!==ie&&(g.value=ie,m=I(Math.abs(g.value)),y=m+r.value,(m<c.value||y>p.value-l/2)&&N())}function P(K){if(!$.value){h.value=0;return}let ie=h.value+K;ie>M&&(ie=M),ie<T.value&&(ie=T.value),h.value!==ie&&(h.value=ie)}function E(){Math.abs(h.value)+F.value>f.value&&(h.value=Math.min(F.value-f.value,0))}function j(){g.value=0,m=0,y=r.value-1,N()}t.watch(F,()=>{P(0)}),t.watch(a,()=>{f.value=a.value.primaryColumnsWidth,w.value=a.value.leftColumnsWidth,v.value=a.value.rightColumnsWidth});function R(K){let{deltaX:ie}=K.deltaX,he=-1*K.deltaY;return typeof ie>"u"&&(ie=-1*K.wheelDeltaX/6),typeof he>"u"&&(he=K.wheelDeltaY/6),K.deltaMode&&K.deltaMode===1&&(ie*=10,he*=10),K.shiftKey?{deltaY:-he,deltaX:-ie}:{deltaX:ie,deltaY:he}}function W(K){if(e.disabled)return;K.preventDefault(),K.stopPropagation();const{deltaX:ie,deltaY:he}=R(K);O(he),P(ie)}const te=t.computed(()=>({height:`${u.value.length*b}px`,width:`${w.value}px`,transform:`translateY(${g.value}px)`})),pe=t.computed(()=>({transform:`translateY(${g.value}px)`})),Ne=t.computed(()=>({height:`${u.value.length*b}px`,width:`${f.value}px`,transform:`translate(${h.value}px, ${g.value}px)`})),me=t.computed(()=>({transform:`translate(${h.value}px, ${g.value}px)`})),Se=t.computed(()=>({height:`${u.value.length*b}px`,width:`${v.value}px`,transform:`translateY(${g.value}px)`})),xe=t.computed(()=>({transform:`translateY(${g.value}px)`})),ge=t.computed(()=>({height:`${u.value.length*b}px`,width:`${s.value}px`,transform:`translateY(${g.value}px)`})),de=t.computed(()=>({width:`${w.value}px`})),ye=t.computed(()=>({transform:`translateX(${h.value}px)`})),G=t.computed(()=>({width:`${v.value}px`})),U=t.computed(()=>{const K=k();return g.value/(C.value-K)*(C.value-x.value)}),ce=t.computed(()=>({height:`${x.value}px`,top:`${U.value}px`})),ae=t.computed(()=>h.value/T.value*(V.value-S.value)),ne=t.computed(()=>({width:`${S.value}px`,left:`${ae.value}px`})),ve=t.ref(!1),ue=t.ref(-1),be=t.ref(-1),je=t.ref();function D(K){if(ve.value&&be.value!==-1){const ie=be.value-K.pageX,he=V.value-S.value;if(Math.abs(ie)<=he){const _e=ie/(F.value-S.value)*(f.value-F.value);P(_e),be.value=K.pageX}}}function X(K){if(ve.value&&ue.value!==-1){const ie=ue.value-K.pageY,he=k(),_e=he-x.value;if(Math.abs(ie)<=_e){const Oe=ie/(C.value-x.value)*(he-C.value);O(Oe),ue.value=K.pageY}}}function re(K){ve.value=!1,ue.value=-1,be.value=-1,document.removeEventListener("mouseup",re),document.removeEventListener("mousemove",D),document.removeEventListener("mousemove",X),document.body.style.userSelect="",je.value&&(je.value.style.opacity=null)}function q(K,ie,he){var He;ve.value=!0;const _e=(He=K.target)==null?void 0:He.parentElement;_e&&(_e.style.opacity="1",je.value=_e);const Oe=he==="horizontal"?D:X;he==="vertical"&&(ue.value=K.pageY),he==="horizontal"&&(be.value=K.pageX),ie.value&&(ie.value,document.addEventListener("mousemove",Oe),document.addEventListener("mouseup",re),document.body.style.userSelect="none")}return{onMouseDownScrollThumb:q,onWheel:W,dataGridWidth:V,gridDataStyle:Ne,gridHeaderColumnsStyle:ye,gridMergedDataStyle:me,gridSideStyle:ge,fitHorizontalScroll:E,viewPortWidth:F,viewPortHeight:C,horizontalScrollThumbStyle:ne,leftFixedGridDataStyle:te,leftFixedGridHeaderColumnsStyle:de,leftFixedGridMergedDataStyle:pe,reCalculateVisualDataRows:N,resetScroll:j,rightFixedGridDataStyle:Se,rightFixedGridHeaderColumnsStyle:G,rightFixedGridMergedDataStyle:xe,shouldShowHorizontalScrollbar:$,shouldShowVirticalScrollbar:B,verticalScrollThumbStyle:ce,offsetX:h,offsetY:g}}function mo(e,n,o,a,i,r,l,s){const u=t.ref(a.value-1+i),d=t.ref(0),{renderDataRow:p}=r,c=l?l.renderGroupRow:p,f=s?s.renderSummaryRow:p;function w(g){let h=p;return g.__fv_data_grid_group_row__&&(h=c),g.__fv_data_grid_group_summary__&&(h=f),h}function v(g,h,m,y){const{dataView:V}=o,C=[];if(V.value.length>0){const F=y?Date.now().toString():"";for(let k=g,x=0;k<=h;k++,x++){const S=V.value[k],_=V.value[k-1]||m,M=C[x-1],T=_?(_.__fv_data_position__||0)+(_.__fv_data_height__||0):0,N=w(S)(S,_,M,k,T,n.value,C);N.refreshKey=F,C.push(N)}}return d.value=C.length>0?C[0].index:0,u.value=C.length>0?C[C.length-1].index:0,C}function b(g,h,m){const y=h.groupField||"",{groupValue:V}=h;o[g](y,V);const{dataView:C}=o,F=m[0].index,k=Math.min(F+a.value+i+1,C.value.length-1);return v(F,k)}return{getVisualData:v,maxVisibleRowIndex:u,minVisibleRowIndex:d,toggleGroupRow:b}}function Hl(){function e(n,o){var r,l;const a=o.raw[n.field],i=(r=n.editor)==null?void 0:r.enumData.find(s=>{var u;return s[(u=n.editor)==null?void 0:u.idField]===a});return i==null?void 0:i[((l=n.editor)==null?void 0:l.textField)||"name"]}return{renderEnumColumn:e}}function Al(){function e(a,i){return a?t.createVNode("span",{innerHTML:i.formatter.trueText},null):t.createVNode("span",{innerHTML:i.formatter.falseText},null)}function n(a,i){var r,l;return a?(r=i.formatter)==null?void 0:r.trueText:(l=i.formatter)==null?void 0:l.falseText}function o(a,i){const{formatter:r}=a,l=i.raw[a.field];if(r.type===Ut.TEXT)return n(l,a);if(r.type===Ut.IMAGE)return e(l,a)}return{renderBooleanColumn:o}}function zl(){const{formatTo:e}=Re.useDateFormat();function n(a,i){return e(a,i.formatter.dateFormat)}function o(a,i){const r=i.raw[a.field];return n(r,a)}return{renderDateColumn:o}}function Gl(){const{formatTo:e}=Re.useNumberFormat();function n(a,i){const{formatter:r}=i,l={precision:r.precision,prefix:r.prefix||"",suffix:r.suffix||"",decimalSeparator:r.decimal||".",groupSeparator:r.thousand||""};return e(a,l)}function o(a,i){const r=i.raw[a.field];return n(r,a)}return{renderNumberColumn:o}}function Wl(){const{renderBooleanColumn:e}=Al(),{renderEnumColumn:n}=Hl(),{renderNumberColumn:o}=Gl(),{renderDateColumn:a}=zl();function i(s){return s}function r(s,u){const{formatter:d}=u;return d.customFormat?new Function(`return ${d.customFormat}`)():s}function l(s,u,d){const p=d.data[u.field],{formatter:c}=u;return c.type==="none"?p:c.type==="custom"?r(p,u):c.type==="enum"?n(u,d):c.type==="number"?o(u,d):c.type==="boolean"?e(u,d):c.type==="date"?a(u,d):p}return{renderFormatColumn:l}}function ho(e,n,o){var g;const a=t.ref(e.mergeCell),r=((g=t.ref(e.rowOption).value)==null?void 0:g.wrapContent)||!1,{updateVisualInfomation:l}=o,{renderCommandColumn:s}=lr(),{renderFormatColumn:u}=Wl();function d(h,m,y,V,C,F=1){const k={colSpan:F,rowSpan:1,index:y,field:h,data:Re.resolveField(V,h),editingData:Re.resolveField(V,h),parent:C,mode:m,align:"left",valign:"start",showEllipsis:!0,getEditor:x=>x.data,setRef:x=>l(x,k,V),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return k}function p(h,m,y){return h.getEditor=V=>n.getEditor(V,m,V.parent),h.setRef=V=>r&&l(V,h,y),h.update=V=>{V!==void 0&&(h.editingData=V)},h.accept=()=>{Re.setFieldValue(h.editingData,y,m.field),h.data=Re.resolveField(y,m.field)},h.cancel=()=>{h.editingData=h.data},h.updateData=V=>{Re.setFieldValue(Re.resolveField(V,m.field),y,m.field),h.data=Re.resolveField(y,m.field)},h}function c(h,m){m.dataType==="commands"?h.formatter=(y,V)=>s(m,V):m.formatter&&(h.formatter=(y,V)=>typeof m.formatter=="function"?m.formatter(y,V):u(m.dataType,m,V))}function f(h,m,y){const V=m&&m.data[y];if(V&&V.data===h.data){const F=V&&V.spannedBy||V;F.rowSpan++,F.spanned=F.spanned||[],F.spanned.push(h),h.colSpan=0,h.rowSpan=0,h.spannedBy=F}}function w(h,m,y){a.value&&f(h,m,y.field)}function v(h,m){m.showEllipsis!==void 0&&(h.showEllipsis=m.showEllipsis),h.align=m.align,h.valign=m.valign}function b(h,m,y,V,C){const F=h.readonly?De.readonly:De.editable,k=d(h.field,F,m,y,V);return v(k,h),p(k,h,y),c(k,h),w(k,C,h),k}return{createCellByColumn:b,createCellByField:d}}function go(e,n,o,a,i,r){var h,m;const l=t.ref(e.rowOption),s=((h=l.value)==null?void 0:h.height)||28,u=((m=l.value)==null?void 0:m.wrapContent)||!1,{idField:d}=a,{collapseField:p}=o,{updateRowPosition:c}=i,{createCellByColumn:f}=r;function w(y,V,C,F,k,x,S){var pe,Ne,me;const{__fv_data_grid_group_field__:_,__fv_data_grid_group_value__:M,__fv_data_index__:T}=C,I=C.__fv_data_grid_group_layer__||C.__fv_parents__?(pe=C.__fv_parents__)==null?void 0:pe.size:0,N=typeof C.parent=="number"?Number(C.parent):-1,B=C.__fv_data_grid_group_collapse__||C[p.value],$=C.__fv_visible__===void 0?!0:C.__fv_visible__,O=C.__fv_checked__,P=C.__fv_indeterminate__,E=C.__fv_disabled__||C[((Ne=e.rowOption)==null?void 0:Ne.disabledField)||"disabled"],j=S==null?void 0:S.find(Se=>Se.raw[d.value]===C.parent),R=j&&j.collapse;F&&(F.parent,C.parent);const W=R||j&&!j.visible,te={collapse:B,data:{},dataIndex:T,groupField:_,groupValue:M,layer:I,index:V,parentIndex:N,pre:F,top:x,type:y,raw:C,checked:O,disabled:E,indeterminate:P,setRef:Se=>{te.ref=Se},visible:$&&!W,status:Ue.initial};return F||(C.__fv_data_position__=0),u||(te.height=s,C.__fv_data_height__=te.height,c(te,C)),(me=l.value)!=null&&me.customRowStatus&&(l.value.customRowStatus(te),C.__fv_collapse__=te.collapse,C.__fv_visible__=te.visible,C.__fv_disabled__=te.disabled),te}function v(y,V,C,F,k,x,S){const _=w(it.data,k,V,C,F,x,S);return y.forEach((M,T)=>{_.data[M.field]=f(M,k,V,_,F)}),_}function b(y,V,C,F,k){return Object.assign(y,{index:V,dataIndex:C,top:F,pre:k})}function g(y,V,C,F,k,x,S){const _=y.__fv_data_index__,M=y[d.value],T=n.getEditingSnapshot(M);return T===null?v(x,y,V,C,F,k,S):b(T,F,_,k,C)}return{createEmptyRow:w,createNewRowFromDataItem:v,renderDataRow:g}}function ql(e,n,o,a){const i=t.ref(e.summary),{idField:r}=n,{createCellByField:l}=o,{createEmptyRow:s}=a,u=t.computed(()=>{const f=i.value;return(f==null?void 0:f.groupFields)||[]}),d=t.computed(()=>{const f=i.value;return f&&f.enable&&f.groupFields&&f.groupFields.length>0});function p(f,w,v,b){if(d.value){const g=f.data[w];let h=g.colSpan;const m=u.value.reduce((y,V)=>(y.set(V,!0),y),new Map);b.reduce((y,V,C)=>{if(m.has(V.field)){const F=l(V.field,De.readonly,C,v,f);f.data[V.field]=F,h-1>C&&(h=C)}return y},f),g.colSpan=h}}function c(f,w,v,b,g,h,m){const y=f.__fv_data_grid_group_field__,V=s(it.group,b,f,w,v,g);return V.data[r.value]=l(r.value,De.readonly,-1,f,V,0),V.data[y]=l(y,De.readonly,1,f,V,h.length),p(V,y,f,h),V}return{renderGroupRow:c}}function Ul(e,n,o,a){const{idField:i}=n,{createCellByField:r}=o,{createEmptyRow:l}=a;function s(u,d,p,c,f,w,v){const b=u.__fv_data_grid_group_field__,g=l(it.summary,c,u,d,p,f);return g.data[i.value]=r(i.value,De.readonly,-1,u,g),g.data[b]=r(b,De.readonly,1,u,g,w.length),g}return{renderSummaryRow:s}}function yo(e,n,o){var x;const{idField:a}=o,i=t.ref(e.editable),r=t.ref(e.editOption),l=t.ref(((x=e.rowOption)==null?void 0:x.wrapContent)||!1);t.watch(()=>e.editable,()=>{i.value=e.editable}),t.watch(()=>{var S;return(S=e.editOption)==null?void 0:S.editMode},S=>{r.value.editMode=S});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 u,d,p,c;function f(S){return d&&d.raw[a.value]===S?d:null}const w=t.reactive({});function v(S,_,M={}){S.mode=De.editing,u=S,d=_,p=_.raw[S.field],c=M}function b(S){S.accept(),S.mode=De.editable,u=null,n.emit("endEditCell",{cell:S,row:d,newValue:d==null?void 0:d.raw[S.field],oldValue:p,column:c,editor:w})}function g(S){document.body.classList.contains("lookup-modal-open")||(u&&(b(u),d&&(d=null)),document.body.removeEventListener("click",g))}function h(S,_,M,T={}){i.value&&r.value.editMode==="cell"&&_.mode===De.editable&&(u&&b(u),v(_,M,T),document.body.removeEventListener("click",g),document.body.addEventListener("click",g))}function m(S){Object.values(S.data).filter(_=>_.mode===De.editable&&_.field!=="__commands__").forEach(_=>{_.mode=De.editing}),S.status=Ue.editing,d=S}function y(S,_){Object.values(S.data).filter(M=>M.mode===De.editing).forEach(M=>{_?M.accept():M.cancel(),M.mode=De.editable}),S.status=Ue.initial,d===S&&(d=null)}function V(S){i.value&&r.value.editMode==="row"&&d!==S&&(d&&y(d,!1),m(S))}function C(S){y(S,!0),S.status=Ue.initial}function F(S){y(S,!1),S.status=Ue.initial}function k(S,_,M){const T=_.dataType,I=_.editor||{type:s.get(T)||"input-group"};return!l.value&&I.type==="text"&&(I.type="input-group"),I?(I.context={rowData:M.raw,column:_,cell:S,editor:w},t.createVNode(jt.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:I,modelValue:S.editingData,"onUpdate:modelValue":N=>S.editingData=N,id:_.id},null)):S.data}return{onClickCell:h,onEditingRow:V,acceptEditingRow:C,cancelEditingRow:F,getEditingSnapshot:f,getEditor:k}}function vo(e){const n=t.ref(e.idField);function o(a){if(a&&a.length){const i=a[0];Object.keys(i).includes(n.value)||(n.value="__fv_indetify__")}}return{idField:n,reviseIdentifyField:o}}function Kl(e,n,o,a,i,r){const{addNewDataItemAtLast:l}=o,{columnContext:s}=a,{onClickCell:u}=i;function d(v,b){const g=s.value.primaryColumns.findIndex(k=>k.field===v.field),h=v.parent,m=h.index,y=s.value.primaryColumns.length-1,V=r.value.length-1,C=g===y,F=m===V;if(g>-1&&!C){const k=s.value.primaryColumns[g+1],x=h.data[k.field];u(b,x,h,k)}if(C&&!F){const x=r.value[m+1].data[s.value.primaryColumns[0].field];u(b,x,h,s.value.primaryColumns[0])}if(C&&F){if(e.appendOnEnterAtLastCell){l();const k=r.value[m+1],x=k.data[s.value.primaryColumns[0].field];u(b,x,k,s.value.primaryColumns[0])}n.emit("enterUpInLastCell")}}function p(v,b){const g=s.value.primaryColumns.findIndex(V=>V.field===v.field),h=v.parent,m=s.value.primaryColumns.length-1;if(g>0&&g<=m){const V=s.value.primaryColumns[g-1],C=h.data[V.field];u(b,C,h,V)}}function c(v,b){const g=v.field,m=v.parent.index,y=r.value.length-1;if(m>-1&&m<y){const C=r.value[m+1],F=C.data[g];u(b,F,C)}}function f(v,b){const g=v.field,m=v.parent.index,y=r.value.length-1;if(m>0&&m<=y){const C=r.value[m-1],F=C.data[g];u(b,F,C)}}function w(v,b){const{key:g,shiftKey:h}=v;if(g==="Enter"&&!h){d(b,v);return}if(h&&g==="Enter"){p(b,v);return}if(g==="ArrowDown"){c(b,v);return}g==="ArrowUp"&&f(b,v)}return{navigateOnKeyUp:w}}function bo(e,n,o,a){const{idField:i}=a,{currentSelectedDataId:r,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:u,selectedValues:d,toggleSelectItem:p,enableSelectRow:c}=o,f=t.ref(0),w=t.ref(-1);function v(F){return c.value&&(s.value?d.value.includes(F.raw[i.value]):F.raw[i.value]===r.value)}function b(F){var x;const k={"fv-grid-row":F.type===it.data,"fv-grid-group-row":F.type===it.group,"fv-grid-summary-row":F.type===it.summary,"fv-grid-row-hover":F.index===w.value,"fv-grid-row-selected":v(F),"fv-grid-row-odd":F.dataIndex%2>0,"fv-grid-row-even":F.dataIndex%2===0,"fv-grid-disabled":F.disabled};if((x=e.rowOption)!=null&&x.customRowStyle){const S=e.rowOption.customRowStyle(F.raw)||{};return Object.assign({},k,S)}return k}function g(F){var x;const k={"fv-grid-cell":!0};if((x=e.rowOption)!=null&&x.customCellStyle){const S=e.rowOption.customCellStyle(F)||{};return Object.assign({},k,S)}return k}function h(F){f.value+=1,setTimeout(()=>{f.value===1&&n.emit("ClickRow",F.index,F.raw),f.value=0},250),f.value>1&&(n.emit("doubleClickRow",F.index,F.raw),console.log(`on double click row: ${F.index}`),f.value=0)}function m(F,k){if(k.disabled)return;s.value&&F.shiftKey||l.value?p(k):u(k),h(k),F.stopPropagation()}function y(F,k){}function V(F,k){}function C(F){var x;const k={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":F.index===w.value,"fv-grid-sidebar-row-selected":v(F),"fv-grid-sidebar-row-odd":F.dataIndex%2>0,"fv-grid-sidebar-row-even":F.dataIndex%2===0};if((x=e.rowOption)!=null&&x.customRowStyle){const S=e.rowOption.customRowStyle(F.raw)||{};return Object.assign({},k,S)}return k}return{gridCellClass:g,gridRowClass:b,onClickRow:m,onMouseoverRow:y,sidebarRowClass:C,onMouseoutRow:V}}function Co(e,n,o,a,i){const{idField:r}=o,l=t.ref(""),s=t.computed(()=>e.selection.enableSelectRow),u=t.ref(e.selection.multiSelect??!1),d=t.ref(e.selection.multiSelectMode),p=t.ref(e.selection.showCheckbox),c=t.ref(e.selection.showSelectAll),f=t.ref(e.selectionValues);t.watch(()=>e.selection.showSelectAll,(j,R)=>{j!==R&&(c.value=j)});function w(){return n.getSelectionItems(f.value)}function v(){const j=a.value.reduce((W,te)=>(W.set(te.raw[r.value],te),W),new Map);return f.value.map(W=>j.get(W)).filter(W=>!!W)}const b=t.computed(()=>s.value&&u.value),g=t.computed(()=>!!e.hierarchy),h=t.computed(()=>{const j=p.value&&d.value==="DependOnCheck";return b.value&&j}),m=t.computed(()=>b.value&&!p.value),y=t.computed(()=>b.value&&p.value&&d.value==="OnCheckAndClick");t.computed(()=>y.value);function V(){const j=n.getSelectionItems(f.value);i.emit("selectionChange",j)}function C(){a.value.forEach(R=>{R.checked=!1,R.indeterminate=!1,R.raw.__fv_checked__=!1,R.raw.__fv_indeterminate__=!1}),v().forEach(R=>{R.checked=!0,R.raw.__fv_checked__=!0})}t.watch(()=>a.value,()=>{C()}),t.watch(()=>e.selectionValues,j=>{f.value=j,C()},{immediate:!0}),t.watch(()=>e.selection,j=>{u.value=!!j.multiSelect,d.value=j.multiSelectMode||"DependOnCheck",p.value=!!j.showCheckbox});const F=t.computed(()=>!u.value);function k(j){return j.raw[r.value]||""}function x(j){return f.value.findIndex(W=>W===k(j))}function S(){v().forEach(W=>{W.checked=!1}),n.getSelectionItems(f.value).forEach(W=>{W.__fv_checked__=!1}),f.value=[],l.value=""}function _(j){const R=j.raw;R.__fv_checked__=!0,R.__fv_indeterminate__=!1;const W=new Set(f.value);W.add(R[r.value]),f.value=Array.from(W.values()),j.checked=!0,j.indeterminate=!1,l.value=j.raw[r.value]}function M(j){const R=j.raw;R.__fv_checked__=!1,R.__fv_indeterminate__=!1,f.value=f.value.filter(W=>W!==R[r.value]),j.checked=!1,j.indeterminate=!1,l.value=""}function T(j){const R=j.raw;R.__fv_checked__=!1,R.__fv_indeterminate__=!0,f.value=f.value.filter(W=>W!==R[r.value]),j.checked=!1,j.indeterminate=!0}function I(j){F.value&&S(),j.checked?M(j):_(j),V()}function N(j){j.raw[r.value]!==l.value&&(S(),_(j),V())}function B(j){const R=a.value.find(W=>W.raw[r.value]===j);R&&N(R)}function $(j){const R=a.value.filter(W=>j.includes(W.raw[r.value]));R&&R.length&&(S(),R.forEach(W=>{_(W)}),V())}function O(){a.value.forEach(j=>_(j)),l.value="",V()}function P(){f.value.splice(0,f.value.length),l.value="",a.value.forEach(j=>{const R=j.raw;R.__fv_checked__=!1,R.__fv_indeterminate__=!1,j.checked=!1,j.indeterminate=!1}),V()}function E(){return a.value.find(j=>j.raw[r.value]===l.value)}return{clearSelection:S,currentSelectedDataId:l,enableMultiSelect:u,enableSelectRow:s,findIndexInSelectedItems:x,getSelectedItems:w,getSelectionRow:E,indeterminate:T,isSelectingHirarchyItem:g,multiSelectMode:d,multiSelectOnClickRow:y,multiSelectOnClickRowWithShift:m,multiSelectOnlyOnCheck:h,select:_,selectAll:O,selectedValues:f,selectItem:N,selectItemById:B,selectItemByIds:$,showCheckBox:p,showSelectAll:c,toggleSelectItem:I,unSelect:M,unSelectAll:P}}function wo(e,n){var g,h;const o=String(Date.now()),a=50,{showCheckBox:i,showSelectAll:r}=n,l=t.ref(((g=e.rowNumber)==null?void 0:g.enable)??!1),s=t.computed(()=>e.hierarchy&&i.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:i.value),u=t.ref(l.value?((h=e.rowNumber)==null?void 0:h.width)??32:0),d=t.ref(s.value?a:0),p=t.computed(()=>{var m;return l.value?((m=e.rowNumber)==null?void 0:m.heading)??"序号":""}),c=t.computed(()=>(s.value&&!e.hierarchy?Number(d.value):0)+(l.value?Number(u.value):0));t.watch(()=>e.rowNumber,m=>{m&&m.enable!==void 0&&(l.value=m.enable),m&&m.width!==void 0&&(u.value=m.width)});function f(m){return{top:`${m.top}px`,width:`${c.value}px`,height:`${m.height||""}px`}}const w=t.computed(()=>({width:`${c.value}px`}));function v(m){return`${o}_${m.type}_r_${m.index}_${m.refreshKey||""}`}function b(m){return`${o}_${m.type}_r_${m.index}_${m.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:f,sidebarCornerCellStyle:w,sidebarTitle:p,sidebarWidth:c,rowKey:b,cellKey:v}}const Xl={ascend:(e,n)=>e===n?0:e===!1?-1:1,decend:(e,n)=>e===n?0:e===!0?-1:1},Yl={ascend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),a=new Date(new Date(n).toLocaleDateString()).valueOf();return o===a?0:o<a?-1:1},decend:(e,n)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),a=new Date(new Date(n).toLocaleDateString()).valueOf();return o===a?0:o<a?1:-1}},Jl={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1},Ql={ascend:(e,n)=>e===n?0:e<n?-1:1,decend:(e,n)=>e===n?0:e<n?1:-1};function So(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",Xl],["datetime-sorter",Yl],["numeric-sorter",Jl],["text-sorter",Ql]]);function a(l){const s=(l==null?void 0:l.dataType)||"string",u=n.get(s)||"text-sorter";return o.get(u)||(l==null?void 0:l.sorter)}function i(l){return a(l.column)}function r(l,s){const u=i(l),d=(l.status&Me.sortable)===Me.sortable&&(l.status&Me.sorted)===Me.sorted,p=(l.status&Me.ascending)===Me.ascending,c=(l.status&Me.descending)===Me.descending;if(d&&u){const f=p?u.ascend:c?u.decend:void 0;f?s.addSorter(l.field,{field:l.field,compare:f}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:a,updateSorter:r}}function Zl(e){function n(i){return{}}function o(i){const{valign:r,align:l}=i;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":r!=="middle"&&r!=="bottom","align-items-center":r==="middle","align-items-end":r==="bottom"}}function a(i){const{align:r,showEllipsis:l}=i;return{"w-100":!0,"text-left":r!=="center"&&r!=="right","text-center":r==="center","text-right":r==="right","text-truncate":l}}return{cellContentPosition:n,cellContentClass:o,cellContentClassWithEllipsis:a}}function et(e){return typeof e>"u"}function xo(e){var c,f,w,v,b,g,h,m;const n=t.ref((c=e.pagination)==null?void 0:c.enable),o=t.ref(((f=e.pagination)==null?void 0:f.index)||1),a=t.ref((w=e.pagination)==null?void 0:w.size),i=t.ref((v=e.pagination)==null?void 0:v.sizeLimits),r=t.ref((b=e.pagination)==null?void 0:b.mode),l=t.ref((g=e.pagination)==null?void 0:g.showIndex),s=t.ref((h=e.pagination)==null?void 0:h.showLimits),u=t.ref(((m=e.pagination)==null?void 0:m.total)||0),d=t.computed(()=>u.value||e.data.length||0);return t.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.sizeLimits},(y,V)=>{i.value=y},{immediate:!0,deep:!0}),t.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.showIndex},(y,V)=>{y!==V&&(l.value=y)}),t.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.showLimits},(y,V)=>{y!==V&&(s.value=y)}),t.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.total},(y,V)=>{y!==V&&(u.value=y)}),t.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.enable},(y,V)=>{y!==V&&(n.value=y)}),{currentPage:o,pageSize:a,pageList:i,pageTotal:u,total:d,shouldRenderPagination:n,showPageIndex:l,showPageList:s,mode:r,updatePagination:y=>{if(!y)return;const{enable:V,total:C,size:F,index:k,sizeLimits:x,showIndex:S,showLimits:_,mode:M}=y;et(V)||(n.value=V),et(k)||(o.value=k),et(F)||(a.value=F),et(x)||(i.value=x),et(S)||(l.value=S),et(_)||(s.value=_),et(C)||(u.value=C),et(M)||(r.value=M)}}}function es(e){const n="parent",o="layer",a="hasChildren",i=(r,l=1,s=[],u=null)=>(r=r||[],r.reduce((d,p)=>(p.id=p.id||p.data[e.idField],p[n]=u,p[o]=l,p[a]=!1,p={...p,...p.data},s.push(p),p.children&&p.children.length&&(p[a]=!0,i(p.children,l+1,s,p.id)),d),s),s);return{flatTreeData:i}}function Vo(e,n,o,a,i,r,l,s,u,d,p,c,f,w,v,b){const{calculateCellPositionInRow:g}=r,{columnContext:h,hasLeftFixedColumn:m,hasRightFixedColumn:y}=l,{gridDataStyle:V,leftFixedGridDataStyle:C,rightFixedGridDataStyle:F}=w,{renderDataRow:k}=ar(e,n,h,b,s,u,d,p,c,f),x=[k];function S(N,B){const $=g(N);return b.value.filter(O=>O.visible!==!1).map(O=>x[O.type](O,$,B,N))}function _(){return t.createVNode("div",{ref:a,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:C.value},[S(h.value.leftColumns.filter(N=>N.visible),"left")])])}function M(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:V.value},[S(h.value.primaryColumns.filter(N=>N.visible),"primary")])])}function T(){return t.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:F.value},[S(h.value.rightColumns.filter(N=>N.visible),"right")])])}function I(){const N=[];return m.value&&N.push(_()),N.push(M()),y.value&&N.push(T()),N}return{renderDataArea:I}}const rt=t.defineComponent({name:"FTreeGrid",props:qt,emits:["selectionChange","clickRow","expandNode"],setup(e,n){var Ie;const i=t.ref(),r=t.ref(),l=t.ref(),s=t.ref(),u=t.ref(),d=t.ref([]),p=t.ref(!1),c=t.ref(((Ie=e.rowOption)==null?void 0:Ie.wrapContent)||!1),{showLoading:f,renderLoading:w}=z.useLoading(e,i),v=z.useIdentify(e),b=z.useGroupData(e,v),g=z.useFilter(),h=z.useHierarchy(e),m=z.usePagination(e),y=z.useDataView(e,new Map,h,v,m),V=z.useSelection(e,y,v,d,n),C=z.useSelectHierarchyItem(e,d,v,V,n),F=t.computed(()=>Math.min(y.dataView.value.length,100)),{containerStyleObject:k}=z.useDataViewContainerStyle(e),x=z.useCommandColumn(e),S=t.ref(e.columns),{applyCommands:_}=x;_(S);const M=z.useColumn(e),T=z.useSort(e),{applyColumnSorter:I,columnContext:N,updateColumnRenderContext:B}=M;I(y,T);const $=z.useGroupColumn(e,N),O=z.useEdit(e,n,v),P=z.useVisualDataBound(),E=z.useVisualDataCell(e,O,P),j=z.useVisualDataRow(e,O,h,v,P,E),R=z.useVisualData(e,S,y,F,0,j),{getVisualData:W}=R,te=z.useCellPosition(e,N),pe=z.useSidebar(e,V),{sidebarWidth:Ne}=pe;d.value=W(0,F.value+0-1);const me=z.useVirtualScroll(e,y,d,N,R,F,0,Ne),{onWheel:Se,dataGridWidth:xe,viewPortHeight:ge,viewPortWidth:de,resetScroll:ye}=me,G=z.useFitColumn(e,N,r,de,$),{calculateColumnsSize:U}=G,ce=z.useFilterHistory(),ae=z.useColumnFilter(r,u,y,ce,me),ne=z.useRow(e,n,V,v),ve=z.useDragColumn(e,n,M,y,$,b,me),ue=t.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),be=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":c.value})),{renderDataArea:je}=Vo(e,n,l,s,u,te,M,y,O,h,ne,V,C,me,R,d),{renderGridHeader:D,renderGridColumnResizeOverlay:X}=z.getColumnHeader(e,r,s,u,M,y,ve,ae,g,ce,G,$,V,pe,T,me,de,d),{renderDataGridSidebar:re}=z.getSidebar(e,ne,V,pe,me),{renderDisableMask:q}=z.getDisableMask(),{renderHorizontalScrollbar:Ve}=z.getHorizontalScrollbar(e,r,me),{renderVerticalScrollbar:K}=z.getVerticalScrollbar(e,r,me);function ie(){var le,Ee;ge.value=((le=l.value)==null?void 0:le.clientHeight)||0,xe.value=((Ee=r.value)==null?void 0:Ee.clientWidth)||0,U()}t.onMounted(()=>{r.value&&(kt.useResizeObserver(r.value,ie),U(),t.nextTick(()=>{r.value&&(xe.value=r.value.clientWidth),l.value&&(de.value=l.value.clientWidth,ge.value=l.value.clientHeight)})),f.value&&w()}),t.onUnmounted(()=>{}),t.watch(de,()=>{r.value&&U()});function he(){const le=V.getSelectionRow();return le?le.dataIndex-1:-1}function _e(){const le=he();y.insertNewDataItem(le),d.value=W(0,F.value+0-1)}function Oe(){const le=he();y.insertNewChildDataItem(le),d.value=W(0,F.value+0-1)}function He(){const le=he(),Ee=C.getNextSelectableHierarchyItemId(le);y.removeHierarchyDataItem(le),d.value=W(0,F.value+0-1),Ee&&V.selectItemById(Ee)}function Ke(le){O.onEditingRow(le)}function Xe(le){O.acceptEditingRow(le)}function st(le){O.cancelEditingRow(le)}function ct(le){le&&(S.value=le,_(S),B(S.value),I(y,T),U())}function ut(le){le&&(ye(),y.load(le),d.value=W(0,F.value+0-1))}function tt(le){V.selectItemById(le)}function A(){return V.getSelectedItems()}const oe=t.computed(()=>!d.value||!d.value.length),{renderEmpty:se}=z.getEmpty(n);return n.expose({addNewDataItem:_e,addNewChildDataItem:Oe,removeDataItem:He,editDataItem:Ke,acceptDataItem:Xe,cancelDataItem:st,updateColumns:ct,updateDataSource:ut,selectItemById:tt,getSelectedItems:A}),()=>t.createVNode("div",{ref:i,class:ue.value,style:k.value,onWheel:Se},[D(),oe.value&&se(),t.createVNode("div",{ref:r,class:be.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[re(d),je(),Ve(),K()]),X(),e.disabled&&q()])}}),ts={$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"]},ns=new Map([["appearance",We]]);function os(e,n,o){return n}const Fo={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}};Be(Fo,ts,ns,os);const as=t.defineComponent({name:"FCheckBox",props:Fo,emits:["change","changeValue","update:modelValue","update:checked"],setup(e,n){const o=t.inject(Re.CHECKBOX_CONTEXT,null),{buttonClass:a,disabled:i,name:r,shouldRenderButton:l,shouldRenderNative:s,shouldRenderTag:u,tagClass:d,checked:p,onClickCheckBox:c}=Re.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),v=t.ref(e.modelValue),b=t.ref(e.indeterminate);return t.computed(()=>{const g={"custom-control":!0,"custom-checkbox":!0};return w.value&&w.value.split(" ").reduce((h,m)=>(h[m]=!0,h),g),g}),t.watch(()=>e.modelValue,g=>{v.value=g}),t.watch(()=>e.indeterminate,g=>{b.value=g}),t.onMounted(()=>{}),()=>{var g,h,m,y,V,C;return t.createVNode(t.Fragment,null,[l.value&&t.createVNode("div",{class:a.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:c},[(h=(g=n.slots).default)==null?void 0:h.call(g)]),u.value&&t.createVNode("div",{class:d.value,onClick:c},[t.createVNode("div",{class:"title"},[(y=(m=n.slots).default)==null?void 0:y.call(m)]),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:c},[t.createVNode("input",{type:"checkbox",class:"custom-control-input",name:r.value,id:f,value:e.value,checked:p.value,indeterminate:b.value,disabled:i.value},null),t.createVNode("div",{class:"custom-control-label"},[(C=(V=n.slots).default)==null?void 0:C.call(V)])])])}}}),is={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}},rs={id:{type:String}},ls=t.defineComponent({name:"FDesignerPlaceholder",props:rs,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 ss(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const on=t.defineComponent({name:"FDesignerItem",props:is,emits:["selectionChange"],setup(e,n){const o=t.ref(`${e.modelValue.id}-component`),a=t.ref(e.canMove),i=t.ref(e.canDelete),r=t.ref(!1),l=t.ref(e.modelValue),s=t.ref(e.componentId||""),u=t.ref(""),d=t.ref(""),p=t.ref(e.customClass),c=t.ref(),f=t.inject("canvas-dragula"),w=t.ref(),v=t.inject("design-item-context"),b={designerItemElementRef:c,componentInstance:w,schema:l.value,parent:v,setupContext:n};t.provide("design-item-context",b);const g=t.inject("useFormSchema"),h=t.computed(()=>{const N=e.modelValue.appearance&&e.modelValue.appearance.class||"";let B={"farris-component":!0,"flex-fill":l.value.id=="root-component","position-relative":a.value&&i.value,"farris-nested":r.value,"can-move":a.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return B[`farris-component-${l.value.type}`]=!0,B=Re.getCustomClass(B,N),B=Re.getCustomClass(B,d.value),B=Re.getCustomClass(B,p.value),B}),m=t.computed(()=>{const N={},B=e.modelValue.appearance&&e.modelValue.appearance.style||"";return B&&B.split(";").reduce(($,O)=>{const[P,E]=O.split(":");return $[P]=E,$},N),u.value&&u.value.split(";").reduce(($,O)=>{const[P,E]=O.split(":");return P&&($[P]=E),$},N),N});function y(N,B){var P,E,j;if(N&&(N.preventDefault(),N.stopPropagation()),w.value.triggerBelongedComponentToDeleteWhenDeleted){const R=w.value.getBelongedComponentInstance(w);if(R&&R.parent){const W=t.ref(R==null?void 0:R.parent),te=W.value.contents.findIndex(pe=>pe.id===R.schema.id);(E=(P=W.value)==null?void 0:P.contents)==null||E.splice(te,1),(j=W.value)==null||j.updateDragAndDropRules(),Mt.value++}return}let $=v,O=R=>R.id===B.id;if(B.type==="component"&&($=v==null?void 0:v.parent,O=R=>R.component===B.id),$&&$.schema.contents){const R=$.schema.contents.findIndex(O);$.schema.contents.splice(R,1),$.componentInstance.value.updateDragAndDropRules(),Mt.value++,n.emit("selectionChange")}}function V(N){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:B=>{y(B,N)}},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function C(){return a.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 F(){return e.customButtons&&!!e.customButtons.length&&e.customButtons.map(N=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${N.class||""}`,title:N.title,ref:N.id},[t.createVNode("i",{class:N.icon},null)]))}function k(N){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[V(N),C(),F()])])}function x(N,B,$,O){n.emit("selectionChange",N,B,$,O)}function S(N){let B;const $=N.type,O=ll[$],P=sl[$],E=P?P(N):{};E.customClass=e.ignore?E.customClass:"",E.componentId=s.value;const j=N.contents&&N.contents.length===0;return N.contents&&!!N.contents.length&&O?t.createVNode(O,t.mergeProps({ref:w},E),ss(B=N.contents.map(W=>t.createVNode(on,{key:W.id,modelValue:W,"onUpdate:modelValue":te=>W=te,componentId:s.value,onSelectionChange:x},null)))?B:{default:()=>[B]}):O?j?t.createVNode(O,t.mergeProps({ref:w},E),{default:()=>[t.createVNode(ls,null,null)]}):t.createVNode(O,t.mergeProps({ref:w},E),null):t.createVNode("div",null,null)}function _(N){if(N.type==="component-ref"){let $=g==null?void 0:g.getFormSchema().module.components.find(O=>O.id===N.component);if($)return t.createVNode(on,{key:$.id,modelValue:$,"onUpdate:modelValue":O=>$=O,componentId:$.id,onSelectionChange:x},null)}}t.watch(()=>e.modelValue,N=>{l.value=N,o.value=`${N.id}-component`});function M(N){const B=N==null?void 0:N.target;Bi(B)}function T(){var N,B;(B=(N=l.value)==null?void 0:N.contents)!=null&&B.length&&c.value&&c.value.addEventListener("scroll",M)}t.onMounted(()=>{if(c.value&&w.value&&w.value.schema){const N=c.value.querySelector(`[data-dragref='${w.value.schema.id}-container']`);f&&N&&f.attachComponents(N,l.value),r.value=w.value.canNested!==void 0?w.value.canNested:r.value,i.value=w.value.canDelete!==void 0?w.value.canDelete:i.value,a.value=w.value.canMove!==void 0?w.value.canMove:a.value,u.value=w.value.styles||"",d.value=w.value.designerClass||"",c.value&&(c.value.componentInstance=w,c.value.designItemContext=b),w.value.belongedComponentId=s.value}T(),Mt.value++}),t.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",M)});function I(N){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(O=>O.classList.remove("dgComponentFocused")),N&&(N.preventDefault(),N.stopPropagation());let B=b.designerItemElementRef;const $=c.value;if($){const O=document.getElementsByClassName("dgComponentSelected");O&&O.length===1&&O[0]===c.value||(Array.from(O).forEach(E=>E.classList.remove("dgComponentSelected")),$.classList.add("dgComponentFocused"),n.emit("selectionChange",l.value.type,l.value,s.value,w.value),w.value.getDraggableDesignItemElement&&(B=w.value.getDraggableDesignItemElement(b),B&&B.value&&B.value.classList.add("dgComponentSelected")))}M({target:B==null?void 0:B.value})}return()=>l.value.type==="component-ref"?_(l.value):t.createVNode("div",{id:`${l.value.id}-design-item`,ref:c,class:h.value,style:m.value,onClick:I},[k(l.value),S(l.value)])}});function No(e,n,o,a,i,r,l,s,u,d,p,c,f,w,v,b,g,h,m,y="data-grid-column"){const{showSelectAll:V,selectAll:C,unSelectAll:F,selectedValues:k}=w,{showRowNumer:x,showSidebarCheckBox:S,sidebarTitle:_,sidebarCornerCellStyle:M}=v,{columnContext:T,hasLeftFixedColumn:I,hasRightFixedColumn:N}=r,{gridHeaderColumnsStyle:B,leftFixedGridHeaderColumnsStyle:$,rightFixedGridHeaderColumnsStyle:O}=g,P=t.computed(()=>V.value||S.value||x.value),E=T.value.defaultColumnWidth,j=32,R=new Map([[0,0]]);function W(ae,ne){const ve=R.get(ne)||0,ue={height:`${ae.depth*j}px`,left:`${ae.left}px`,top:`${(ae.layer-1)*j}px`,width:`${ae.actualWidth}px`,padding:0};return T.value.headerDepth>1&&(ue["line-height"]=`${ae.depth*j}px`),R.set(ne+1,ve+(ae.actualWidth||E)),ue}const te=t.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":T.value.headerDepth>1})),pe=t.computed(()=>({height:`${T.value.headerDepth*j}px`}));function Ne(ae,ne,ve,ue){var be;(be=e==null?void 0:e.setupContext)==null||be.emit("selectionChange",ae,ne,ve,ue)}function me(ae,ne,ve){let ue=ae.column;return t.createVNode("div",{class:"fv-grid-header-cell",style:W(ae,ve)},[t.createVNode(on,{modelValue:ue,"onUpdate:modelValue":be=>ue=be,customClass:"w-100 d-flex align-items-center justify-content-center",canAdd:!1,canDelete:!1,canMove:!1,key:ue==null?void 0:ue.id,type:y,componentId:n.componentId,onSelectionChange:Ne},null)])}function Se(ae){return ae.map((ne,ve)=>{const ue=[];if(ue.push(me(ne,ae,ve)),ne.children&&ne.children.length){const be=Se(ne.children);ue.push(...be)}return ue})}function xe(){return t.createVNode("div",{class:"fv-grid-header-left-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:$.value},[Se(T.value.leftHeaderColumns)])])}function ge(){return t.createVNode("div",{class:"fv-grid-header-right-fixed"},[t.createVNode("div",{class:"fv-grid-header-columns",style:O.value},[Se(T.value.rightHeaderColumns)])])}const de=t.ref(m.value.length===k.value.length);function ye(ae){de.value?C():F()}const G=t.computed(()=>k.value.length>0&&m.value.length!==k.value.length);function U(){return t.createVNode("div",{class:"fv-grid-header-corner d-flex",style:M.value},[V.value&&t.createVNode(as,{id:"checkbox_for_select_all",indeterminate:G.value,modelValue:de.value,"onUpdate:modelValue":ae=>de.value=ae,onChange:ye,style:"margin-left:8px"},null),x.value&&t.createVNode("div",{style:"line-height:18px"},[_.value])])}function ce(){return t.createVNode("div",{class:te.value,style:pe.value},[P.value&&U(),I.value&&xe(),t.createVNode("div",{class:"fv-grid-header-primary"},[t.createVNode("div",{class:"fv-grid-header-columns",style:B.value},[Se(T.value.primaryHeaderColumns)])]),N.value&&ge()])}return{renderGridHeader:ce}}class cs extends Tt{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:Y["tree-grid"].name}]}}}}}getAppearanceProperties(n){var o,a,i;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(r,l){switch(r&&r.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"fields":n.fields=r.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:((a=n.pagination)==null?void 0:a.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((i=n.pagination)==null?void 0:i.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"onSelectionChange",name:"行切换事件"}];var a=this;const i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),r={};r[a.viewModelId]={type:"events-editor",editor:{initialData:i}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const u=l.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u)),n.remoteSort=!!n.columnSorted}}}}function us(e,n){const o=e.schema,a=t.ref(!0),i=t.ref(!0);function r(f){return f&&f.sourceType==="control"?f.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function u(){return!0}function d(f){}function p(){}function c(f){return new cs(f,n).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:a,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:c}}const ds=t.defineComponent({name:"FTreeGridDesign",props:jn,emits:[],setup(e,n){var _e;const o=t.ref(),a=0,i=100,r=t.ref(),l=t.ref(),s=t.ref(),u=t.ref(),d=t.ref([]),p=t.ref(!1),c=t.ref(((_e=e.rowOption)==null?void 0:_e.wrapContent)||!1),f=t.inject("designer-host-service"),w=t.inject("design-item-context"),v=us(w,f),b=dt(o,w,v);b.value.designerClass="f-utils-fill-flex-column";const g=vo(e),h=en(e,g),m=Zt(),y=fo(e),V=xo(e),C=co(e,new Map,y,g,V),F=Co(e,C,g,d,n),k=Ll(e,d,g,F,n),x=t.computed(()=>Math.min(C.dataView.value.length,i)),{containerStyleObject:S}=Ln(e),_=zn(e),M=t.ref(e.columns),{applyCommands:T}=_;T(M);const I=Hn(e),N=So(),{applyColumnSorter:B,columnContext:$,updateColumnRenderContext:O}=I;B(C,N);const P=qn(e,$),E=yo(e,n,g),j=Xt(),R=ho(e,E,j),W=go(e,E,y,g,j,R),te=mo(e,M,C,x,a,W),{getVisualData:pe}=te,Ne=Kt(e,$),me=wo(e,F),{sidebarWidth:Se}=me;d.value=pe(0,x.value+a-1);const xe=po(e,C,d,$,te,x,a,Se),{onWheel:ge,dataGridWidth:de,viewPortHeight:ye,viewPortWidth:G}=xe,U=Wn(e,$,r,G,P),{calculateColumnsSize:ce}=U,ae=uo(),ne=An(r,u,C,ae,xe),ve=bo(e,n,F,g),ue=Gn(e,n,I,C,P,h,xe),be=t.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),je=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":c.value})),{renderDataArea:D}=Vo(e,n,l,s,u,Ne,I,C,E,y,ve,F,k,xe,te,d),{renderGridHeader:X}=No(w,e,r,s,u,I,C,ue,ne,m,ae,U,P,F,me,N,xe,G,d,"tree-grid-column"),{renderDataGridSidebar:re}=En(e,ve,F,me,xe),{renderHorizontalScrollbar:q}=Dn(e,r,xe),{renderVerticalScrollbar:Ve}=Rn(e,r,xe);function K(){var Oe,He;ye.value=((Oe=l.value)==null?void 0:Oe.clientHeight)||0,de.value=((He=r.value)==null?void 0:He.clientWidth)||0,ce()}t.onMounted(()=>{o.value.componentInstance=b,r.value&&(kt.useResizeObserver(r.value,K),ce(),t.nextTick(()=>{r.value&&(de.value=r.value.clientWidth),l.value&&(G.value=l.value.clientWidth,ye.value=l.value.clientHeight)}))}),t.onUnmounted(()=>{}),t.watch(G,()=>{r.value&&ce()});const ie=t.computed(()=>!d.value||!d.value.length),{renderEmpty:he}=sr(n);return n.expose(b.value),()=>t.createVNode("div",{ref:o,dragref:`${w.schema.id}-container`,class:be.value,style:S.value,onWheel:ge},[X(),ie.value&&he(),t.createVNode("div",{ref:r,class:je.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[re(d),D(),q(),Ve()])])}});rt.register=(e,n,o,a)=>{e["tree-grid"]=rt,n["tree-grid"]=Ki,a["tree-grid"]={bindingResolver:Yi,selectionItemResolver:Xi}},rt.registerDesigner=(e,n,o)=>{e["tree-grid"]=ds,n["tree-grid"]=Ji},oo(rt);function fs(e,n,o){return n}const ps=new Map([["appearance",We]]),ms={$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"]},hs={...Kr,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"}};Be(hs,ms,ps,fs);const ft={convertFrom:(e,n)=>n==="multiSelect"?!!e.editor[n]:n==="separator"?e.editor[n]||",":e.editor[n],convertTo:(e,n,o)=>{e.editor[n]=o}},gs={convertFrom:(e,n)=>e[n]==null?!0:e[n],convertTo:(e,n,o)=>{e[n]=o}};function ys(e){let n="form_group_"+Date.now();return e&&(n=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+n}const vs={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 a=o[0],{name:i,id:r,metadataContent:l}=a;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=i,e.editor.helpId=r;const{displayType:s,idField:u,textField:d}=l;e.editor.displayType=s,e.editor.dataSource.idField=u,e.editor.textField=d,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=ys(e.id))}}},bs={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 a=o[0];e.editor.dataSource.idField=a==null?void 0:a.bindingPath}}},Cs={convertFrom:(e,n)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0];e.editor.textField=a==null?void 0:a.bindingPath}}},ws={convertFrom:(e,n)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,n,o)=>{e.editor.displayType=o}},ko=Symbol("schema_repository_token");class _o extends ze{getPropertyConfig(n,o){const a=this.getBasicProperties(n,o),i=this.getAppearanceConfig(),r=this.getBehaviorConfig(n),l=this.getLookupConfig(n.editor);return{type:"object",categories:{basic:a,appearance:i,behavior:r,lookup:l}}}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ft},readonly:{description:"",title:"只读",type:"boolean",$converter:ft},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:ft},visible:{description:"",title:"可见",type:"boolean",$converter:gs},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,a)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:ko,onSubmitModal:o=>{if(o){const a=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(a.relativePath,o[0].data).then(i=>JSON.parse(i==null?void 0:i.metadata.content))}}},$converter:vs},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:ws,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:Wt},$converter:bs},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Cs,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:Wt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ft,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(o,a)=>`${a.raw[o.field]} [${a.raw.bindingPath}]`,idField:"id",textField:"bindingPath",valueField:"bindingPath",repositoryToken:Wt},toData:{idField:"id",textField:"bindingPath",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(o,a)=>`${a.raw[o.field]} [${a.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:ft,title:"启用多选",type:"boolean"},separator:{description:"多选分隔符",$converter:ft,title:"多选分隔符",type:"string"}}}}}function Ss(e,n){const{canAccepts:o,checkCanDeleteComponent:a,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:u,triggerBelongedComponentToDeleteWhenDeleted:d}=On(e);function p(c,f){const w=e.schema;return new _o(c,n).getPropertyConfig(w,f)}return{canAccepts:o,checkCanDeleteComponent:a,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:u,triggerBelongedComponentToDeleteWhenDeleted:d,getPropsConfig:p}}const xs=t.defineComponent({name:"FLookupDesign",props:Ct,emits:[],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=t.inject("designer-host-service"),r=Ss(a,i),l=dt(o,a,r);return t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value),()=>t.createVNode("div",{class:"f-lookup-design",ref:o},[t.createVNode(Lt,{ref:o,readonly:!0,editable:!1,placeholder:e.placeholder},null)])}});at.register=(e,n,o,a)=>{e["button-edit"]=at,n["button-edit"]=Sn},at.registerDesigner=(e,n,o)=>{e["button-edit"]=Lt,n["button-edit"]=Sn},Re.withInstall(at);const Io=new Map([["appearance",We]]);function To(e,n,o){return n}const Vs={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout.schema.json",title:"layout",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for layout component",type:"string"},type:{description:"The type string of layout component",type:"string",default:"layout"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},collapsable:{description:"",type:"boolean",default:!1},resizable:{description:"",type:"boolean",default:!0},visible:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Fs={title:"layout",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"类型",title:"类型",type:"string",readonly:!0}}},behavior:{description:"Basic Infomation",title:"行为",properties:{collapsable:{description:"",title:"可收折",type:"boolean"},resizable:{description:"",title:"可调整尺寸",type:"boolean"}}}}},an={customStyle:{type:String,defaut:""},customClass:{type:String,defaut:""}},Mo=Be(an,Vs,Io,To,Fs);function Oo(e){const n=t.ref(-1),o=t.ref(-1),a=t.ref(0),i=t.ref(0),r=t.ref(!1),l=t.ref(!1),s=t.computed(()=>({display:r.value?"block":"none",left:`${a.value}px`,cursor:"e-resize"})),u=t.computed(()=>({display:l.value?"block":"none",top:`${i.value}px`,cursor:"n-resize"})),d=t.computed(()=>({display:l.value||r.value?"block":"none"}));function p(g,h,m,y){const V=e.value;if(V){const{left:C,right:F,width:k}=V.getBoundingClientRect();let x=g.clientX-C;y==="right"&&(x=F-g.clientX),x>h&&(x=h),x<m&&(x=m),y==="right"&&(x=k-x),a.value=x}}function c(g,h,m,y){const V=e.value;if(V){const{top:C,bottom:F,height:k}=V.getBoundingClientRect();let x=g.clientY-C;y==="bottom"&&(x=F-g.clientY),x>h&&(x=h),x<m&&(x=m),y==="bottom"&&(x=k-x),i.value=x}}function f(){const g=e.value;if(g){const{width:h,height:m}=g.getBoundingClientRect();return{width:h,height:m}}return null}function w(){const g=e.value;return g?Array.from(g.querySelectorAll("[data-position]")).reduce((h,m)=>{const y=m.getAttribute("data-position");return h=Object.assign(h,{[y]:m}),h},{}):null}function v(g,h){const m=f(),y=w();if(m&&y){const V=y==null?void 0:y.right,C=y==null?void 0:y.left;if(g==="left"&&C)return V?m.width-V.clientWidth-h:m.width-h;if(g==="right"&&V)return C?m.width-C.clientWidth-h:m.width-h}}function b(g,h){const m=f(),y=w();if(m&&y){const V=y==null?void 0:y.bottom,C=y==null?void 0:y.top;if(g==="top"&&C)return V?m.height-V.clientHeight-h:m.height-h;if(g==="bottom"&&V)return C?m.height-C.clientHeight-h:m.height-h}}return{horizontalResizeHandleStyle:s,verticalResizeHandleStyle:u,resizeOverlayStyle:d,showHorizontalResizeHandle:r,showVerticalResizeHandle:l,horizontalResizeBarPosition:n,verticalResizeBarPosition:o,verticalResizeHandleOffset:i,horizontalResizeHandleOffset:a,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:c,getPanelMaxHeight:b,getPanelMaxWidth:v}}const lt=t.defineComponent({name:"FLayout",props:an,emits:[],setup(e,n){const o=t.ref(),a=Oo(o),{horizontalResizeHandleStyle:i,verticalResizeHandleStyle:r,resizeOverlayStyle:l}=a;t.provide("layout",{useResizeHandleComposition:a});const s=t.computed(()=>qr({"f-layout":!0},e==null?void 0:e.customClass)),u=t.computed(()=>Ur({},e==null?void 0:e.customStyle));return()=>t.createVNode("div",{class:s.value,style:u.value,ref:o},[n.slots.default&&n.slots.default(),t.createVNode("div",{class:"f-layout-resize-overlay",style:l.value},null),t.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:i.value},null),t.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:r.value},null)])}}),Ns={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout-pane.schema.json",title:"layout-pane",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a layout pane",type:"string"},type:{description:"The type string of layout paney",type:"string",default:"layout-pane"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},collapsable:{description:"",type:"boolean",default:!1},contents:{description:"",type:"array",default:[]},height:{description:"",type:"number"},position:{description:"",type:"string",default:"left",enum:["left","center","right","top","bottom"]},resizeable:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"},visible:{description:"",type:"number",default:!0}}},ks={title:"layout-pane",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"enum"},width:{description:"",type:"number",title:"宽度"},height:{description:"",type:"number",title:"高度"}}},appearance:{title:"样式",description:"Appearance",properties:{class:{title:"class",type:"string",description:""},style:{title:"style",type:"string",description:""}}},behavior:{description:"",title:"行为",properties:{collapsable:{description:"",type:"boolean",title:"允许收折"},position:{description:"",type:"enum",title:"位置",editor:{type:"combo-list",data:[{id:"left",name:"左侧"},{id:"center",name:"居中"},{id:"right",name:"右侧"},{id:"top",name:"顶部"},{id:"bottom",name:"底部"}]}},resizeable:{description:"",type:"boolean",title:"允许调整尺寸"},visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"}}}}},rn={customClass:{type:String,defaut:""},customStyle:{type:String,defaut:""},width:{type:Number,default:-1},height:{type:Number,default:-1},position:{type:String,default:"left"},visible:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:100},minHeight:{type:Number,default:100}},Bo=Be(rn,Ns,Io,To,ks);function $o(e,n,o,a,i){const{horizontalResizeBarPosition:r,horizontalResizeHandleOffset:l,showHorizontalResizeHandle:s,showVerticalResizeHandle:u,verticalResizeBarPosition:d,verticalResizeHandleOffset:p,draggingHorizontalResizeHandle:c,draggingVerticalResizeHandle:f,getPanelMaxHeight:w,getPanelMaxWidth:v}=i;let b="",g,h,m;function y(F){if((b==="left"||b==="right")&&h){const{left:k}=h.getBoundingClientRect(),{width:x}=g.getBoundingClientRect(),S=F.clientX-k;let _=b==="left"?(x||0)+(S-r.value):(x||0)-(S-r.value);_=o.value>0?Math.max(o.value,_):_;const M=v(b,o.value);M!=null&&(_=M>_?_:M),e.value=_}if((b==="top"||b==="bottom")&&h){const{top:k}=h.getBoundingClientRect(),{height:x}=g.getBoundingClientRect(),S=F.clientY-k;let _=b==="top"?(x||0)+(S-d.value):(x||0)-(S-d.value);_=a.value>0?Math.max(a.value,_):_;const M=w(b,a.value);M!=null&&(_=M>_?_:M),n.value=_}l.value=0,p.value=0,r.value=-1,d.value=-1,s.value=!1,u.value=!1,document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",y),document.body.style.userSelect="",b="",g=null,h=null}function V(F,k,x){if(b=k,g=x,s.value=!0,h=F.composedPath().find(_=>(_.className||"").split(" ")[0]==="f-layout"),h){const{left:_}=h.getBoundingClientRect(),M=F.clientX-_;l.value=M,r.value=M;const T=v(b,o.value)||0;m=I=>c(I,T,o.value,b),document.addEventListener("mousemove",m),document.addEventListener("mouseup",y),document.body.style.userSelect="none"}}function C(F,k,x){if(b=k,g=x,u.value=!0,h=F.composedPath().find(_=>(_.className||"").split(" ")[0]==="f-layout"),h){const{top:_}=h.getBoundingClientRect();p.value=F.clientY-_,d.value=F.clientY-_;const M=w(b,a.value)||0;m=T=>f(T,M,a.value,b),document.addEventListener("mousemove",m),document.addEventListener("mouseup",y),document.body.style.userSelect="none"}}return{onClickHorizontalResizeBar:V,onClickVerticalResizeBar:C}}const xt=t.defineComponent({name:"FLayoutPane",props:rn,emits:[],setup(e,n){const o=t.ref(e.minHeight<=0?100:e.minHeight),a=t.ref(e.minWidth<=0?100:e.minWidth),i=t.ref(e.width<=0?100:e.width),r=t.ref(e.height<=100?100:e.height),l=t.ref(Math.max(o.value,r.value)),s=t.ref(Math.max(a.value,i.value)),u=t.ref(),d=t.ref(e.position),p=t.ref(e.resizable);t.watch(()=>e.resizable,C=>{p.value=C});const c=t.inject("layout"),{useResizeHandleComposition:f}=c,w=$o(s,l,a,o,f),{onClickHorizontalResizeBar:v,onClickVerticalResizeBar:b}=w,g=t.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":d.value==="left","f-layout-resize-bar-n":d.value==="bottom","f-layout-resize-bar-s":d.value==="top","f-layout-resize-bar-w":d.value==="right"})),h=t.computed(()=>d.value!=="center"&&p.value);function m(C,F){(F==="left"||F==="right")&&v(C,F,u.value),(F==="top"||F==="bottom")&&b(C,F,u.value)}const y=t.computed(()=>{const C={"f-layout-pane":!0,"f-page-content-nav":d.value==="left"||d.value==="right","f-page-content-main":d.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((F,k)=>(F[k]=!0,F),C),C}),V=t.computed(()=>{const C={};return(s.value&&d.value==="left"||d.value==="right")&&(C.width=`${s.value}px`),(l.value&&d.value==="bottom"||d.value==="top")&&(C.height=`${l.value}px`),e.visible||(C.display="none"),C});return()=>t.createVNode("div",{ref:u,class:y.value,style:V.value,"data-position":d.value},[n.slots.default&&n.slots.default(),h.value&&t.createVNode("span",{class:g.value,onMousedown:C=>m(C,d.value)},null)])}});function _s(e,n){function o(){return!1}return{canAccepts:o}}const Is=t.defineComponent({name:"FLayoutDesign",props:an,emits:[],setup(e,n){var p;const o=t.ref(),a=t.inject("design-item-context"),i=_s(a.schema,(p=a.parent)==null?void 0:p.schema),r=dt(o,a,i);r.value.canNested=!1;const l=Oo(o),{horizontalResizeHandleStyle:s,verticalResizeHandleStyle:u,resizeOverlayStyle:d}=l;return t.provide("layout",{useResizeHandleComposition:l}),t.onMounted(()=>{o.value.componentInstance=r}),n.expose(r.value),()=>t.createVNode("div",{class:"f-layout f-page-content",ref:o},[n.slots.default&&n.slots.default(),t.createVNode("div",{class:"f-layout-resize-overlay",style:d.value},null),t.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:s.value},null),t.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:u.value},null)])}});function Ts(e,n){const o=e.schema;function a(r){return!!Pr().basalDragulaRuleForContainer(r)}function i(){const r=["f-layout-pane"];return(o.position==="left"||o.position==="right")&&r.push("f-page-content-nav"),o.position==="center"&&r.push("f-page-content-main"),r.join(" ")}return{canAccepts:a,getDesignerClass:i}}const Ms=t.defineComponent({name:"FLayoutPaneDesign",props:rn,emits:[],setup(e,n){const o=t.ref(),a=t.ref();t.inject("designer-host-service");const i=t.inject("design-item-context"),r=Ts(i),l=dt(a,i,r);l.value.canNested=!1,l.value.canMove=!1,l.value.canDelete=!1,t.onMounted(()=>{a.value.componentInstance=l}),n.expose(l.value);const s=t.ref(Math.max(e.minHeight,e.height)),u=t.ref(Math.max(e.minWidth,e.width)),d=t.ref(e.minHeight),p=t.ref(e.minWidth),c=t.ref(e.position),f=t.inject("layout"),{useResizeHandleComposition:w}=f,v=$o(u,s,p,d,w),{onClickHorizontalResizeBar:b,onClickVerticalResizeBar:g}=v,h=t.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":c.value==="left","f-layout-resize-bar-n":c.value==="bottom","f-layout-resize-bar-s":c.value==="top","f-layout-resize-bar-w":c.value==="right"}));function m(C,F){(F==="left"||F==="right")&&b(C,F,o.value),(F==="top"||F==="bottom")&&g(C,F,o.value)}const y=t.computed(()=>{const C={"f-layout-pane":!0,"f-page-content-nav":c.value==="left"||c.value==="right","f-page-content-main":c.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((F,k)=>(F[k]=!0,F),C),C}),V=t.computed(()=>{const C={flex:"1"};return(u.value&&c.value==="left"||c.value==="right")&&(C.width=`${u.value}px`),(s.value&&c.value==="bottom"||c.value==="top")&&(C.height=`${s.value}px`),C});return()=>t.createVNode("div",{ref:o,class:y.value,style:V.value},[t.createVNode("div",{ref:a,class:"drag-container","data-dragref":`${i.schema.id}-container`},[n.slots.default&&n.slots.default()]),t.createVNode("span",{class:h.value,onMousedown:C=>m(C,c.value)},null)])}});lt.install=e=>{e.component(lt.name,lt),e.component(xt.name,xt)},lt.register=(e,n,o,a)=>{e.layout=lt,n.layout=Mo,e["layout-pane"]=xt,n["layout-pane"]=Bo},lt.registerDesigner=(e,n,o)=>{e.layout=Is,n.layout=Mo,e["layout-pane"]=Ms,n["layout-pane"]=Bo};const Po=new Map([["appearance",We],["column","columnOption"]]),jo=new Map([]),Os="root-viewmodel";class Bs{constructor(n,o){L(this,"formSchemaUtils");L(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),a=this.createComponentNode(n),i=this.createViewModeNode(n),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(i),r.module.components.push(a),this.wrapContainerSectionForComponent(o,n)}wrapContainerSectionForComponent(n,o){var r,l;const a=[Y["content-container"].type,Y["response-layout-item"].type,Y["splitter-pane"].type],i=(l=(r=o==null?void 0:o.parentComponentInstance)==null?void 0:r.schema)==null?void 0:l.type;if(i&&a.includes(i)){const s=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance},this.designerHostService);if(s&&s.contents&&s.contents.length){const u=s.contents[0];return u.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"),a=this.createDateGridComponentContents(n);return Object.assign(o,{id:`${n.componentId}-component`,viewModel:`${n.componentId}-component-viewmodel`,componentType:n.componentType,appearance:{class:this.getDataGridComponentClass()},contents:a}),o}createViewModeNode(n){return{id:`${n.componentId}-component-viewmodel`,code:`${n.componentId}-component-viewmodel`,name:n.componentName,bindTo:n.bindTo,parent:Os,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 a;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}),a=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"}}),a=s}const i=this.resolver.getSchemaByType("data-grid"),r=[];Object.assign(i,{id:n.componentId+"-dataGrid",appearance:{class:"f-component-grid f-utils-fill"},fields:r,fieldEditable:n.editable,dataSource:n.dataSource||"",pagination:{enable:!n.editable}}),a.contents=[i];const{selectedFields:l}=n;return l==null||l.forEach(s=>{if(s.$type===Zn.ComplexField)return;const u=$e.cloneDeep(s),d=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",u,"",n.editable);d&&r.push(d)}),[a]}assembleViewModelFields(n){const o=[],{selectedFields:a}=n;return a==null||a.forEach(i=>{let r="blur";const l=i.type.name;(l===St.Enum||l===St.Boolean)&&(r="change"),o.push({type:"Form",id:i.id,fieldName:i.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function Do(e,n,o,a){const i=o.parentComponentInstance;if(i){const r=Math.random().toString(36).slice(2,6),l={componentId:`data-grid-${r}`,componentName:`表格-${r}`,componentType:"data-grid",parentContainerId:i.schema.id,parentComponentInstance:i,editable:!0,bindTo:"",dataSource:""};return new Bs(e,a).createComponent(l)}else return n}function Eo(e,n,o){return n}const $s={$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"]},ln={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}},Ps=Object.assign({},ln,{componentId:{type:String,default:""}}),Ro=Be(ln,$s,Po,Do),js=li(),Ds=ci();function Lo(e,n,o,a,i,r,l,s,u,d,p,c,f,w,v){const{calculateCellPositionInRow:b,cellKey:g,cellPosition:h,rowKey:m,rowPosition:y,rowSpanCellPosition:V,groupCellPosition:C,summaryCellPosition:F}=l,{cellContentClass:k,cellContentPosition:x,cellContentClassWithEllipsis:S}=r,{collpaseGroupIconClass:_}=d,{gridCellClass:M,gridRowClass:T,onClickRow:I,onMouseoverRow:N,onMouseoutRow:B}=c,{onClickCell:$}=u,{toggleGroupRow:O}=f,{columnContext:P,hasLeftFixedColumn:E,hasRightFixedColumn:j}=s,{navigateOnKeyUp:R}=p,{gridDataStyle:W,gridMergedDataStyle:te,leftFixedGridDataStyle:pe,leftFixedGridMergedDataStyle:Ne,rightFixedGridDataStyle:me,rightFixedGridMergedDataStyle:Se}=w;function xe(D,X){X.collapse=!X.collapse,v.value=O(X.collapse?"collapse":"expand",X,v.value)}function ge(D,X){const re=[];if(D.groupField&&X[D.groupField]){for(let Ve=0;Ve<=D.layer;Ve++)re.push(t.createVNode("div",{class:"fv-grid-group-row-icon",onClick:K=>xe(K,D)},[t.createVNode("span",{class:_(D)},null)]));const q=D.data[D.groupField];re.push(t.createVNode("div",{ref:q.setRef,key:g(D,D.layer+1),class:"fv-grid-cell",style:C(q,X,D.layer)},[q.data])),Object.values(D.data).filter(Ve=>Ve.field!==D.groupField&&Ve.colSpan!==0).forEach(Ve=>{re.push(t.createVNode("div",{ref:Ve.setRef,key:g(D,Ve.index),class:"fv-grid-cell",style:h(Ve,X)},[Ve.data]))})}return re}function de(D,X,re){return D.layer>-1&&t.createVNode("div",{ref:D.setRef,key:m(D),class:T(D),style:y(D),onClick:q=>I(q,D),onMouseover:q=>N(q,D)},[ge(D,X)])}function ye(D,X){const re=[];if(D.groupField&&X[D.groupField]){const q=D.data[D.groupField];re.push(t.createVNode("div",{ref:q.setRef,key:g(D,D.layer+1),class:"fv-grid-cell",style:F(q,X,D.layer)},[q.data]))}return re}function G(D,X,re){return D.layer>-1&&t.createVNode("div",{ref:D.setRef,key:m(D),class:T(D),style:y(D),onClick:q=>I(q,D),onMouseover:q=>N(q,D)},[ye(D,X)])}function U(D,X,re){return t.createVNode("div",{ref:D.setRef,key:m(D),class:T(D),style:y(D),onClick:q=>I(q,D),onMouseover:q=>N(q,D),onMouseout:q=>B(q,D)},[Object.values(D.data).filter(q=>X[q.field]&&q.rowSpan===1).map(q=>{const Ve=re==null?void 0:re.find(K=>K.field===q.field);return t.createVNode("div",{ref:q.setRef,key:g(D,q.index),class:M(q),style:h(q,X),onClick:K=>$(K,q,D,Ve),onKeyup:K=>R(K,q)},[t.createVNode("div",{class:k(q,Ve),style:x(q)},[t.createVNode("div",{class:S(q)},[q.data!=null&&n.slots.cellTemplate?n.slots.cellTemplate({cell:q,row:D}):q.mode===De.editing?q.getEditor(q):q.formatter?q.formatter(q,D):q.data!=null?q.data.toString():q.data])])])})])}const ce=[U,de,G];function ae(D,X){const re=b(D);return v.value.map(q=>ce[q.type](q,re,D))}function ne(D){const X=b(D);return v.value.map(re=>Object.values(re.data).filter(q=>X[q.field]&&q.rowSpan>1).map(q=>t.createVNode("div",{key:g(re,q.index),class:"fv-grid-cell fv-grid-merged-cell",style:V(re,q,X)},[q.data])))}function ve(){return t.createVNode("div",{ref:a,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:pe.value},[ae(P.value.leftColumns.filter(D=>D.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:Ne.value},[ne(P.value.leftColumns.filter(D=>D.visible))])])}function ue(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:W.value},[ae(P.value.primaryColumns.filter(D=>D.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:te.value},[ne(P.value.primaryColumns.filter(D=>D.visible))])])}function be(){return t.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:me.value},[ae(P.value.rightColumns.filter(D=>D.visible))]),t.createVNode("div",{class:"fv-grid-merge-date",style:Se.value},[ne(P.value.rightColumns.filter(D=>D.visible))])])}function je(){const D=[];return E.value&&D.push(ve()),D.push(ue()),j.value&&D.push(be()),D}return{renderDataArea:je}}const Je=t.defineComponent({name:"FDataGrid",props:ln,emits:["changed","clickRow","doubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(e,n){var ta;const i=t.ref(e.columns),r=z.useIdentify(e),l=t.ref(),s=t.ref(),u=t.ref(),d=t.ref(),p=t.ref(),c=t.ref([]),f=t.ref(!1),w=t.ref(((ta=e.rowOption)==null?void 0:ta.wrapContent)||!1),v=z.useGroupData(e,r),b=z.useFilter(),g=z.useHierarchy(e),{showLoading:h,renderLoading:m}=z.useLoading(e,l),y=z.usePagination(e),{shouldRenderPagination:V}=y,C=z.useDataView(e,new Map,g,r,y),F=z.useSelection(e,C,r,c,n),k=t.computed(()=>Math.min(C.dataView.value.length,100));t.computed(()=>e.loadingConfig.message);const{containerStyleObject:x}=z.useDataViewContainerStyle(e),S=z.useCommandColumn(e),{applyCommands:_}=S;_(i);const M=z.useColumn(e),T=z.useSort(e),{applyColumnSorter:I,columnContext:N,updateColumnRenderContext:B}=M;I(C,T);const $=z.useGroupColumn(e,N),O=z.useEdit(e,n,r),P=z.useVisualDataBound(),E=z.useVisualDataCell(e,O,P),j=z.useVisualDataRow(e,O,g,r,P,E),R=z.useVisualGroupRow(e,r,E,j),W=z.useVisualSummaryRow(e,r,E,j),te=z.useVisualData(e,i,C,k,0,j,R,W),{getVisualData:pe}=te,Ne=z.useCellContentStyle(N),me=z.useCellPosition(e,N),Se=z.useSidebar(e,F),{sidebarWidth:xe}=Se;c.value=pe(0,k.value+0-1);const ge=z.useVirtualScroll(e,C,c,N,te,k,0,xe),{onWheel:de,dataGridWidth:ye,viewPortHeight:G,viewPortWidth:U,resetScroll:ce}=ge,ae=z.useFitColumn(e,N,s,U,$),{calculateColumnsSize:ne}=ae,ve=z.useFilterHistory(),ue=z.useColumnFilter(s,p,C,ve,ge),be=z.useRow(e,n,F,r),je=z.useDragColumn(e,n,M,C,$,v,ge),D=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}=z.getColumnHeader(e,s,d,p,M,C,je,ue,b,ve,ae,$,F,Se,T,ge,U,c),{renderDataGridPagination:Ve}=z.getPagination(e,n,C,ge,y),{renderDataGridSidebar:K}=z.getSidebar(e,be,F,Se,ge),{renderDisableMask:ie}=z.getDisableMask(),{renderDataGridSummery:he}=z.getSummary(e,C,M),{renderHorizontalScrollbar:_e}=z.getHorizontalScrollbar(e,s,ge),{renderVerticalScrollbar:Oe}=z.getVerticalScrollbar(e,s,ge),{renderFilterPanel:He}=z.getFilterPanel(e,M,C,b,ge),{renderGroupPanel:Ke}=z.getGroupPanel(e,C,je,v,ge);function Xe(){var Ce,yt;G.value=((Ce=u.value)==null?void 0:Ce.clientHeight)||0,ye.value=((yt=s.value)==null?void 0:yt.clientWidth)||0,ne()}t.onMounted(()=>{s.value&&(kt.useResizeObserver(s.value,Xe),ne(),t.nextTick(()=>{s.value&&(ye.value=s.value.clientWidth),u.value&&(U.value=u.value.clientWidth,G.value=u.value.clientHeight)})),h.value&&m()}),t.onUnmounted(()=>{}),t.watch(U,()=>{});function st(){C.insertNewDataItem(),ce()}function ct(){C.insertNewDataItem(c.value.length),ce()}function ut(Ce){O.onEditingRow(Ce)}function tt(Ce){C.removeDataItem(Ce),ce()}function A(Ce){C.removeDataItemById(Ce),ce()}function oe(Ce){O.acceptEditingRow(Ce)}function se(Ce){O.cancelEditingRow(Ce)}function Ie(Ce){Ce&&(i.value=Ce,_(i),B(i.value),I(C,T),ne())}function le(Ce){Ce&&(ce(),C.load(Ce),c.value=pe(0,k.value+0-1))}function Ee(Ce){y.updatePagination(Ce)}t.watch([C.startIndex,C.endIndex],([Ce,yt],[Yc,Jc])=>{var na,oa;Ce!==Yc&&le((na=C.originalData)==null?void 0:na.value),yt!==Jc&&le((oa=C.originalData)==null?void 0:oa.value)}),t.watch(()=>e.data,Ce=>{e.changePolicy==="default"&&le(Ce)},{deep:!0});function qe(Ce){F.selectItemById(Ce)}function Fe(Ce){F.selectItemByIds(Ce)}function Te(){return c.value}function Ae(Ce){return c.value.filter(yt=>Ce.includes(yt.raw[e.idField]))}const we={addNewDataItem:st,addNewDataItemAtLast:ct,removeDataItem:tt,removeDataItemById:A,editDataItem:ut,acceptDataItem:oe,cancelDataItem:se,selectItemById:qe,selectItemByIds:Fe,updateColumns:Ie,updateDataSource:le,updatePagination:Ee,getVisibleData:Te,getVisibleDataByIds:Ae};n.expose(we);const nt=z.useNavigation(e,n,we,M,O,c),{renderDataArea:gt}=Lo(e,n,u,d,p,Ne,me,M,O,v,nt,be,te,ge,c),Kc=t.computed(()=>!c.value||!c.value.length),{renderEmpty:Xc}=z.getEmpty(n);return()=>t.createVNode("div",{ref:l,class:D.value,style:x.value,onWheel:de},[He(),Ke(),re(),Kc.value&&Xc(),t.createVNode("div",{ref:s,class:X.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[K(c),gt(),_e(),Oe()]),he(),V.value&&Ve(),q(),e.disabled&&ie()])}});class Es extends Tt{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getEventPropConfig(n),this.propertyConfig}getBasicPropConfig(n){var r,l,s;const o=(s=(l=(r=this.formSchemaUtils.getFormSchema())==null?void 0:r.module)==null?void 0:l.entity[0])==null?void 0:s.entities[0],a=this.assembleSchemaEntityToTree(o,0),i=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:Y["data-grid"].name}]}},dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:a,readonly:n.columns&&n.columns.length>0,editable:!1}}},setPropertyRelates(u,d){switch(u&&u.propertyID){case"dataSource":{const p=i.formSchemaUtils.getViewModelById(i.viewModelId);if(p){const c=a.find(f=>f.label===u.propertyValue);p.bindTo=c.bindTo}i.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(n,o,a,i="",r=[]){const l=i?`${i}/${n.label}`:"/";return r.push({id:n.id,name:n.name,label:n.label,layer:o,parent:a&&a.id,bindTo:l.replace("//","/")}),n.type.entities&&n.type.entities.length&&n.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,n,l,r)),r}getAppearanceProperties(n){var o,a,i;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:r=>n},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(r,l){switch(r&&r.propertyID){case"useBlankWhenDataIsEmpty":n.emptyDataHeight=n.useBlankWhenDataIsEmpty?36:240;break;case"columns":n.columns=r.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:((a=n.pagination)==null?void 0:a.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((i=n.pagination)==null?void 0:i.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(n){const o=[{label:"onClickRow",name:"行点击事件"},{label:"onSelectionChange",name:"行切换事件"},{label:"onPageIndexChanged",name:"切换页码事件"},{label:"onPageSizeChanged",name:"分页条数变化事件"}];var a=this;const i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),r={};r[a.viewModelId]={type:"events-editor",editor:{initialData:i}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const u=l.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u)),n.remoteSort=!!n.columnSorted}}}}function Rs(e,n){const o=e.schema,a=t.ref(!0),i=t.ref(!0);function r(f){return f&&f.sourceType==="control"?f.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function u(){return!0}function d(f){}function p(){}function c(f){return new Es(f,n).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:a,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:c}}const sn=t.defineComponent({name:"FDataGridDesign",props:Ps,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,n){var Ae;const o=t.ref(),a=t.inject("designer-host-service"),i=t.inject("design-item-context"),r=Rs(i,a),l=dt(o,i,r);l.value.styles="display:flex;flex:1;",t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value);const s=t.ref(e.columns),u=20,d=vo(e),p=0,c=t.ref(),f=t.ref(),w=t.ref(),v=t.ref(),b=t.ref(e.showStripe),g=t.ref([]),h=t.ref(!1),m=t.ref(((Ae=e.rowOption)==null?void 0:Ae.wrapContent)||!1),y=en(e,d),V=Zt(),C=fo(e),F=xo(e),k=co(e,new Map,C,d,F),x=Co(e,k,d,g,n),S=t.computed(()=>e.disable),_=t.computed(()=>k.totalItems.value<u?k.totalItems.value:u),{containerStyleObject:M}=Ln(e),T=zn(e),{applyCommands:I}=T;I(s);const N=Hn(e),B=So(),{applyColumnSorter:$,columnContext:O,updateColumnRenderContext:P}=N;$(k,B);const E=qn(e,O),j=yo(e,n,d),R=Xt(),W=ho(e,j,R),te=go(e,j,C,d,R,W),pe=ql(e,d,W,te),Ne=Ul(e,d,W,te),me=mo(e,s,k,_,p,te,pe,Ne),{getVisualData:Se}=me,xe=Zl(),ge=Kt(e,O),de=wo(e,x),{sidebarWidth:ye}=de;g.value=Se(0,_.value+p-1);const G=po(e,k,g,O,me,_,p,ye),{onWheel:U,dataGridWidth:ce,viewPortHeight:ae,viewPortWidth:ne,resetScroll:ve}=G,ue=Wn(e,O,c,ne,E),{calculateColumnsSize:be}=ue,je=uo(),D=An(c,v,k,je,G),X=bo(e,n,x,d),re=Gn(e,n,N,k,E,y,G),q=t.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":b.value})),Ve=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":h.value,"fv-grid-wrap-content":m.value})),{renderGridHeader:K}=No(i,e,c,w,v,N,k,re,D,V,je,ue,E,x,de,B,G,ne,g);ir(e,n,k,G,F);const{renderDataGridSidebar:ie}=En(e,X,x,de,G),{renderDisableMask:he}=Qi(),{renderDataGridSummery:_e}=rr(e,k,N),{renderHorizontalScrollbar:Oe}=Dn(e,c,G),{renderVerticalScrollbar:He}=Rn(e,c,G),{renderFilterPanel:Ke}=Zi(e,N,k,V,G),{renderGroupPanel:Xe}=er(e,k,re,y,G);function st(){var we,nt;ae.value=((we=f.value)==null?void 0:we.clientHeight)||0,ce.value=((nt=c.value)==null?void 0:nt.clientWidth)||0,be()}t.onMounted(()=>{c.value&&(kt.useResizeObserver(c.value,st),be(),t.nextTick(()=>{c.value&&(ce.value=c.value.clientWidth),f.value&&(ne.value=f.value.clientWidth,ae.value=f.value.clientHeight)}))}),t.onUnmounted(()=>{}),t.watch(ne,()=>{c.value&&be()}),t.watch(()=>e.columns,we=>{le(we)});function ct(){k.insertNewDataItem(),ve()}function ut(){k.insertNewDataItem(g.value.length),ve()}function tt(we){j.onEditingRow(we)}function A(we){k.removeDataItem(we),ve()}function oe(we){k.removeDataItemById(we),ve()}function se(we){j.acceptEditingRow(we)}function Ie(we){j.cancelEditingRow(we)}function le(we){we&&(s.value=we,I(s),P(s.value),$(k,B),be())}function Ee(we){we&&(k.load(we),g.value=Se(0,_.value+p-1))}const Fe=Kl(e,n,{addNewDataItem:ct,addNewDataItemAtLast:ut,removeDataItem:A,removeDataItemById:oe,editDataItem:tt,acceptDataItem:se,cancelDataItem:Ie,updateColumns:le,updateDataSource:Ee},N,j,g),{renderDataArea:Te}=Lo(e,n,f,w,v,xe,ge,N,j,y,Fe,X,me,G,g);return()=>t.createVNode("div",{ref:o,class:q.value,style:M.value,onWheel:U},[Ke(),Xe(),K(),t.createVNode("div",{ref:c,class:Ve.value,onMouseover:()=>{h.value=!0},onMouseleave:()=>{h.value=!1}},[ie(g),Te(),Oe(),He()]),_e(),S.value&&he()])}}),Ls={$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"]},Ho={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},Hs=Be(Ho,Ls,Po,Do),As=new Map([["appearance",We]]);function zs(e,n,o){return n}const Gs={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:[]}}}}}},Ws={$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"]},Ao={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:[]}};Be(Ao,Ws,As,zs,Gs);const qs=new Map([["appearance",We]]);function Us(e,n,o){return n}const Ks={$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"]},Xs={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:[]}}}}}},zo={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}};Be(zo,Ks,qs,Us,Xs);function Ys(e,n){function o(r){const l=[];let s=r.nextNode();for(;s;)l.push(s),s=r.nextNode();return l}function a(r,l){const s=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return o(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:f})=>{const w=[];let v=0;for(;v<f.length;){const b=f.indexOf(l,v);if(b===-1)break;w.push(b),v=b+l.length}return w.map(b=>{const g=new Range;return g.setStart(c,b),g.setEnd(c,b+l.length),g})}).flat()}function i(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!n))return;const l=a(n.value,r.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:i}}function Go(e,n,o,a,i,r,l,s,u,d){const p=t.ref(e.size),c=t.ref(e.textField),f=t.ref(e.titleField),w=t.ref(e.disableField),v=t.computed(()=>{var x,S;return((x=e.selection)==null?void 0:x.multiSelect)&&((S=e.selection)==null?void 0:S.showCheckbox)}),{onMouseenterItem:b,onMouseoverItem:g,onMouseoutItem:h}=r,{getKey:m,listViewItemClass:y,onCheckItem:V,onClickItem:C}=l,F=t.computed(()=>({margin:p.value==="small"?"0.25rem 0":"10px 0"}));function k(x,S,_){return x.checked=s.findIndexInSelectedItems(x)>-1,t.createVNode("li",{class:y(x,S),id:m(x,S),key:m(x,S),onClick:M=>C(M,x,S),onMouseenter:M=>b(M,x,S),onMouseover:M=>g(M,x,S),onMouseout:M=>h(M,x,S)},[v.value&&t.createVNode("div",{class:"f-list-select",onClick:M=>M.stopPropagation()},[t.createVNode(vt.FCheckBox,{id:"list-"+m(x,S),customClass:"listview-checkbox",disabled:x[w.value],checked:x.checked,"onUpdate:checked":M=>x.checked=M,onChange:M=>{V(x,S,!M.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{style:F.value,title:x.raw[f.value]||x.raw[c.value]},[x.raw[c.value]])])])}return{renderItem:k}}function Js(e,n,o,a,i,r,l,s,u,d){const p=t.ref(e.multiSelect),c=t.ref(e.disableField),{onMouseenterItem:f,onMouseoverItem:w,onMouseoutItem:v}=r,{getKey:b,listViewItemClass:g,onCheckItem:h,onClickItem:m}=l;function y(C,F,k){return n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:C.raw,index:F,selectedItem:k})]):t.createVNode("div",{style:"margin: 10px 0;"},[C.raw.name])}function V(C,F,k){return t.createVNode("li",{class:g(C,F),id:b(C,F),key:b(C,F),onClick:x=>m(x,C,F),onMouseenter:x=>f(x,C,F),onMouseover:x=>w(x,C,F),onMouseout:x=>v(x,C,F)},[p.value&&t.createVNode("div",{class:"f-list-select",onClick:x=>x.stopPropagation()},[t.createVNode(vt.FCheckBox,{id:"list-"+b(C,F),customClass:"listview-checkbox",disabled:C[c.value]||!C.checked,checked:C.checked,"onUpdate:checked":x=>C.checked=x,onChange:x=>h(C,F,!x.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[y(C,F,k)])])}return{renderItem:V}}function Qs(e,n,o,a,i,r,l,s,u,d){const p=t.ref(e.multiSelect),c=t.ref(e.disableField),{onMouseenterItem:f,onMouseoverItem:w,onMouseoutItem:v}=r,{getKey:b,listViewItemClass:g,onCheckItem:h,onClickItem:m}=l,{dragstart:y,dragenter:V,dragover:C,dragend:F}=a,{removeItem:k}=u,x=t.computed(()=>({margin:p.value?"10px 0":"10px 0px 10px 14px"}));function S(I){return t.createVNode("div",{style:x.value},[I.raw.name])}function _(){return n.slots.itemContent?n.slots.itemContent:S}const M=_();function T(I,N,B){return t.createVNode("li",{class:g(I,N),id:b(I,N),key:b(I,N),onClick:$=>m($,I,N),onMouseenter:$=>f($,I,N),onMouseover:$=>w($,I,N),onMouseout:$=>v($,I,N),draggable:"true",onDragstart:$=>y($,I,N),onDragenter:$=>V($,N),onDragend:$=>F($,I),onDragover:$=>C($,N)},[p.value&&t.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[t.createVNode(vt.FCheckBox,{id:"list-"+b(I,N),customClass:"listview-checkbox",disabled:I[c.value]||!I.checked,checked:I.checked,"onUpdate:checked":$=>I.checked=$,onChange:$=>h(I,N,!$.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[M(I)]),t.createVNode("div",{class:"f-list-remove",onClick:$=>k(N)},[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 Zs(e,n,o,a,i,r,l,s,u,d){var b;const p=t.ref(((b=e.group)==null?void 0:b.groupFields)||[]),{collpaseGroupIconClass:c}=i,{toggleGroupRow:f}=d;function w(g,h){h.collapse=!h.collapse,o.value=f(h.collapse?"collapse":"expand",h,o.value)}function v(g,h,m){return g.layer>-1&&t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:y=>w(y,g)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:c(g)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[g.raw[p.value[g.layer]]])])}return{renderItem:v}}function ec(){const e=t.ref(-1),n=t.ref(""),o=t.ref(-1),a=t.ref(!1);function i(d,p,c){o.value=c}function r(d,p,c){a.value||(o.value=c)}function l(d,p,c){o.value=-1}function s(){a.value=!0}function u(){a.value=!1}return{activeIndex:e,focusedItemId:n,hoverIndex:o,onMouseenterItem:i,onMouseoverItem:r,onMouseoutItem:l,resumeHover:u,suspendHover:s}}function tc(e,n,o,a){const i=t.ref(e.idField),{dataView:r}=o,l=t.ref(-1),s=t.ref(!1),{activeIndex:u,focusedItemId:d,hoverIndex:p,resumeHover:c,suspendHover:f}=a;function w(h,m,y){h.stopPropagation(),f(),m&&setTimeout(()=>{l.value=y,s.value=!0,m.moving=!0})}function v(h,m){if(h.preventDefault(),l.value!==m){const y=r.value[l.value],V=r.value;V.splice(l.value,1),V.splice(m,0,y),l.value=m}}function b(h,m){h.preventDefault(),h.dataTransfer&&(h.dataTransfer.dropEffect="move")}function g(h,m){m&&(m.moving=!1),r.value.forEach((y,V)=>{y.__fv_index__=V}),s.value=!1,c(),p.value=m.raw.__fv_index__,u.value=m.raw.__fv_index__,d.value=m.raw[i.value],n.emit("change",r.value),n.emit("activeChange",m)}return{dragstart:w,dragenter:v,dragover:b,dragend:g,isDragging:s}}function nc(e,n,o){const{dataView:a}=o;function i(r){if(r>-1&&r<a.value.length){const l=a.value.splice(r,1);n.emit("removeItem",l[0])}}return{removeItem:i}}function oc(e,n,o,a,i,r){const l=t.ref(e.idField),s=t.ref(e.disableField),u=t.ref(e.draggable),d=t.ref(e.itemClass),p=t.ref(e.selection.multiSelect??!1),c=t.ref(e.selection.multiSelectMode),{isDragging:f}=a,{activeIndex:w,focusedItemId:v,hoverIndex:b}=i,{clearSelection:g,getSelectedItems:h,toggleSelectItem:m}=r,y=t.ref(h());function V(M,T){const I={"f-listview-item":!0,"f-list-view-group-item":!0,"f-list-view-draggable-item":u.value,"f-un-click":!M.checked,"f-un-select":!!M.raw[s.value],"f-listview-active":y.value.findIndex(B=>B[l.value]===M.raw[l.value])>-1,"f-listview-item-active":y.value.findIndex(B=>B[l.value]===M.raw[l.value])>-1,"f-listview-hover":!f.value&&T===b.value,"f-listview-item-hover":!f.value&&T===b.value,moving:!!M.moving};return d.value.split(" ").reduce((B,$)=>(B[$]=!0,B),I),I}function C(M,T){return M.raw[l.value]||""}const F=t.computed(()=>!p.value);function k(M,T,I){M.checked=I,!M.raw[s.value]&&(F.value&&(v.value=M.raw[l.value]),m(M))}const x=t.computed(()=>p.value&&c.value==="OnCheckClearByClick"),S=t.computed(()=>!p.value||p.value&&(c.value==="OnCheckAndClick"||c.value==="OnClick"));function _(M,T,I){if(T.raw[s.value]){M.preventDefault(),M.stopPropagation();return}v.value=T.raw[l.value],w.value=I,x.value&&g(o.value),S.value&&(m(T),y.value=h()),n.emit("clickItem",{data:y.value,index:I}),n.emit("activeChange",y.value)}return{getKey:C,listViewItemClass:V,onCheckItem:k,onClickItem:_}}function ac(e,n,o,a,i,r,l){const s=t.ref(e.view),u=t.ref(e.view==="CardView"),d=t.ref({}),p=t.ref("暂无数据"),c=ec(),f=tc(e,n,a,c),w=nc(e,n,a),v=oc(e,n,o,f,c,r),b=t.computed(()=>({"f-list-view-group":!0,"d-flex":u.value,"flex-wrap":u.value})),g=t.computed(()=>!!o.value&&o.value.length>0),h=t.computed(()=>o.value.length===0);t.computed(()=>h.value&&!n.slots.empty);function m(){return s.value==="SingleView"?Go:s.value==="DraggableView"?Qs:(s.value==="ContentView"||s.value==="CardView")&&n.slots.content?Js:Go}const y=m(),{renderItem:V}=y(e,n,o,f,i,c,v,r,w,l),{renderItem:C}=Zs(e,n,o,f,i,c,v,r,w,l),F=[V,C];function k(){return o.value.filter(_=>_.visible!==!1).map((_,M)=>F[_.type](_,M,d))}function x(){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 S(){return t.createVNode("ul",{class:b.value,style:"list-style: none;"},[g.value&&k(),h.value&&x()])}return{renderListArea:S}}function ic(e,n,o){function a(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:a}}function Wo(e,n,o){const a=t.ref(e.headerClass),i=t.ref(e.placeholder),r=t.ref(""),l=t.computed(()=>!r.value),s=t.computed(()=>!!r.value);function u(f){r.value=""}t.watch(r,f=>{e.enableHighlightSearch&&o.search(f),n.emit("afterSearch",f)});const d=t.computed(()=>{const f={"form-group":!0,"farris-form-group":!0};return a.value&&a.value.split(" ").reduce((v,b)=>(v[b]=!0,v),f),f});function p(f){}function c(){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=>r.value=f,name:"input-group-value",type:"text",placeholder:i.value,autocomplete:"off"},null),[[t.vModelText,r.value]]),t.createVNode("div",{class:"input-group-append"},[s.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:f=>u()},[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:c}}const qo=t.defineComponent({name:"FListView",props:zo,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,n){const o=t.ref(),a=t.ref(!0),i=t.ref(!1),r=t.ref([]),l=0,s=t.ref(e.columns),u=z.useIdentify(e),d=z.useHierarchy(e),p=z.useGroupData(e,u),c=z.usePagination(e),f=z.useDataView(e,new Map,d,u,c),w=z.useSelection(e,f,u,r,n),v=Ys(e,o),b=t.computed(()=>f.dataView.value.length),g=z.useEdit(e,n,u),h=z.useVisualDataBound(),m=z.useVisualDataCell(e,{},h),y=z.useVisualDataRow(e,g,d,u,h,m),V=z.useVisualGroupRow(e,u,m,y),C=z.useVisualSummaryRow(e,u,m,y),F=z.useVisualData(e,s,f,b,l,y,V,C),{getVisualData:k}=F;r.value=k(0,b.value+l-1);const x=t.computed(()=>{const O={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(O[`${e.size}-item`]=!0),O}),S=t.computed(()=>!!n.slots.footer||a.value);function _(){return e.header==="SearchBar"?Wo:e.header==="ContentHeader"?ic:Wo}const M=_(),{renderHeader:T}=M(e,n,v),{renderListArea:I}=ac(e,n,r,f,p,w,F);function N(O){v.search(O)}function B(O){O&&(f.load(O),r.value=k(0,b.value+l-1))}n.expose({search:N,updateDataSource:B});function $(O){e.multiSelect&&(O.preventDefault(),O.stopPropagation())}return()=>t.createVNode("div",{class:x.value,onClick:$},[T(),t.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{i.value=!0},onMouseleave:()=>{i.value=!1}},[I()]),S.value&&t.createVNode("div",{class:"f-list-view-footer"},[n.slots.footer&&n.slots.footer()])])}}),rc=t.defineComponent({name:"FTransfer",props:Ao,emits:["change","activeChange"],setup(e,n){const o=t.ref(e.identifyField),a=t.ref("已选:"),i=t.ref("项数据"),r=t.ref(e.displayType),l=t.ref(!1),s=t.ref(e.dataSource),u=t.ref(e.selections||[]),d=t.computed(()=>u.value.map(S=>S[o.value])),p=new Map,c=t.ref();function f(){const S=new Map,_=e.selectionValues||[];_.length&&_.reduce((T,I)=>(T.set(I,!0),T),S);const M=e.selections||[];M.length&&(S.clear(),M.reduce((T,I)=>(T.set(I[o.value],!0),T),S)),u.value.length||(u.value=s.value.filter(T=>S.has(T[o.value])).map(T=>Object.assign({},T))),s.value.forEach(T=>{const I=T[o.value],N=S.has(I);T.checked=N,N&&p.set(I,T)})}f();const w=t.computed(()=>r.value==="List"),v=t.computed(()=>r.value==="Tree");function b(S){u.value=S.map(_=>Object.assign({},_)),n.emit("change",u.value)}function g(){return t.createVNode(qo,{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:b},{default:()=>[t.createTextVNode(" ")]})}function h(){return t.createVNode(t.Fragment,null,null)}function m(){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&&g(),v.value&&h()])])])}function y(S){const _=S[o.value];if(_!==null||_!==void 0){u.value=u.value.filter(T=>T[o.value]!==_);const M=p.get(_);M&&(M.checked=!1,p.delete(_)),n.emit("change",u.value)}}t.watch(u,S=>{c.value.updateDataSource(S)});function V(S){const _=new Map;u.value.reduce((M,T)=>(M.set(T[o.value],T),M),_),u.value=S.map(M=>_.get(M[o.value])),n.emit("change",u.value)}function C(S){n.emit("activeChange",S)}function F(){return t.createVNode(qo,{ref:c,style:"flex:1",data:u.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:V,onRemoveItem:y,onActiveChange:C},null)}function k(){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"},[a.value]),t.createVNode("span",{class:"selection-count"},[u.value&&u.value.length]),t.createVNode("span",{class:"selection-item-title"},[i.value])]),t.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[F()])])])}const x=t.computed(()=>({transfer:!0,row:!0,"f-utils-fill":l.value}));return()=>t.createVNode("div",{class:x.value,style:"height:480px"},[m(),k()])}}),lc=t.defineComponent({name:"FGridFieldEditor",props:Ho,emits:["change"],setup(e,n){const o=t.ref(e.viewModelId),a=t.inject("designViewModelUtils"),i=t.inject("useFormSchema"),r=t.inject("controlCreatorUtils"),l=t.ref(e.modelValue);let s=e.gridData.columns;const u=t.ref([]),d=t.ref([]);let p=[];t.onMounted(()=>{c()});function c(){d.value=a.getAllFields2TreeByVMId(o.value),p=w(d.value)}function f(){if(u.value=[],!s||s.length===0)return[];s.forEach(m=>{if(m.binding&&m.binding.field){const y=p.find(V=>V.data.id===m.binding.field);y?u.value.push(Object.assign({},y.data)):u.value.push({id:m.binding.field,name:m.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}})}function w(m,y=[]){return m&&m.forEach(V=>{y.push(V),V.children&&w(V.children,y)}),y}function v(){const m=a.getDgViewModel(o.value),y=[],V=[];u.value.forEach(F=>{delete F.inValidTip,delete F.isInValidBinding;let k=s==null?void 0:s.find(x=>{if(x.binding&&x.binding.field)return x.binding.field===F.id});if(k)y.push(k);else{const x=d.value.find(_=>_.id==F.id),S=r.setGridFieldProperty(e.gridType,x.data,null,!0);m.addField(F),y.push(S)}V.push(F.id)});const C=m.fields.filter(F=>!V.includes(F.id));if(C&&C.length>0){const F=C.map(k=>k.id);m.removeField(F),i.expressions&&i.expressions.length&&F.length&&(i.expressions=i.expressions.filter(k=>!F.includes(k.fieldId)))}l.value=`共 ${y.length} 项`,n.emit("change",y)}const b={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{v()},rejectCallback:()=>{}};function g(m){u.value=m?[...m]:[]}function h(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),c()),s=e.gridData.columns,f(),Promise.resolve(!0)}return()=>t.createVNode(at,{"button-behavior":"Modal","modal-options":b,modelValue:l.value,"onUpdate:modelValue":m=>l.value=m,editable:!1,beforeOpen:h},{default:()=>[t.createVNode("div",{class:"f-utils-absolute-all"},[t.createVNode(rc,{selections:u.value,"data-source":d.value,class:"mx-2",onChange:m=>g(m)},null)])]})}}),sc={$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}}},cc={$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"}}},cn={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:""}},uc=Be(cn,sc,jo,Eo),dc=Be(cn,cc,jo,Eo);class fc extends ze{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 pc extends ze{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 mc extends ze{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 Uo extends ze{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 hc extends ze{constructor(n,o){super(n,o)}}class gc extends ze{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"}})}}class yc extends ze{constructor(n,o){super(n,o)}getEditorProperties(n){return this.getComponentConfig(n,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class vc extends ze{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 bc extends ze{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 Cc extends ze{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 wc extends ze{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 Sc extends Tt{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",a=!1){const i=this.formMetadataConverter.getRealEditorType(n.editor.type);let r;switch(i){case"avatar":r=new fc(this.componentId,this.designerHostService);break;case"check-group":r=new pc(this.componentId,this.designerHostService);break;case"check-box":r=new mc(this.componentId,this.designerHostService);break;case"combo-list":r=new Uo(this.componentId,this.designerHostService);break;case"date-picker":r=new gc(this.componentId,this.designerHostService);break;case"lookup":r=new _o(this.componentId,this.designerHostService);break;case"number-range":r=new yc(this.componentId,this.designerHostService);break;case"number-spinner":r=new vc(this.componentId,this.designerHostService);break;case"radio-group":r=new bc(this.componentId,this.designerHostService);break;case"switch":r=new Cc(this.componentId,this.designerHostService);break;case"textarea":r=new hc(this.componentId,this.designerHostService);break;case"time-picker":r=new wc(this.componentId,this.designerHostService);break;default:r=new cl(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:wt.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"],u=r.getPropertyConfig(n).categories;Object.keys(u).map(d=>{const p=u[d];let c={};if(Object.keys(p.properties).map(f=>{s.findIndex(w=>w==f)==-1&&p.properties[f]!==!1&&(c[f]=p.properties[f])}),Object.keys(c).length!=0){const f=p==null?void 0:p.title,w="gridFieldEditor",v="编辑器",b=p==null?void 0:p.description,g=(p==null?void 0:p.$converter)||"";l.propertyConfig.categories[o+"_"+d]={title:f,tabId:w,tabName:v,description:b,$converter:g,propertyData:n,properties:c}}})}changeFieldEditorType(n,o){const a=this.designViewModelUtils.getDgViewModel(this.viewModelId);a.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const i=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),r=this.formSchemaUtils.selectNode(i,p=>p.type===Y["data-grid"].type||p.type===Y["tree-grid"].type);if(!r)return;const l=a.fields.find(p=>p.id==this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),u=r.hasOwnProperty("columns")?r.columns:r.fields,d=u.findIndex(p=>p.id===n.id);d>-1&&u[d].editor&&(u[d].editor=Object.assign(s.editor,{required:u[d].editor.required}))}}function xc(e,n){const o=e.schema,a=t.ref(!0),i=t.ref(!0);function r(f){return!1}function l(){return!1}function s(){return!1}function u(){return!0}function d(f){}function p(){}function c(f){var v;return new Sc(f,n).getPropertyConfig(o,(v=e==null?void 0:e.parent)==null?void 0:v.schema)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:u,onAcceptMovedChildElement:d,resolveComponentContext:p,triggerBelongedComponentToMoveWhenMoved:a,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:c}}const Ko=t.defineComponent({name:"FDataGridColumnDesign",props:cn,emits:[],setup(e,n){const o=t.ref(),a=t.inject("designer-host-service"),i=t.inject("design-item-context"),r=xc(i,a),l=dt(o,i,r);t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value);function s(u){var d;(d=i==null?void 0:i.setupContext)==null||d.emit("selectionChange",l.value.schema,i.schema,e.componentId,l.value)}return()=>t.createVNode("span",{class:"fv-column-title",ref:o,onClick:u=>s()},[e.title])}});Je.install=e=>{e.component(Je.name,Je),e.component(sn.name,sn)},Je.register=(e,n,o,a)=>{e["data-grid"]=Je,n["data-grid"]=Ro,e["grid-field-editor"]=lc,n["grid-field-editor"]=Hs,a["data-grid"]={bindingResolver:js,selectionItemResolver:Ds}},Je.registerDesigner=(e,n,o)=>{e["data-grid"]=sn,n["data-grid"]=Ro,n["data-grid-column"]=uc,e["data-grid-column"]=Ko,n["tree-grid-column"]=dc,e["tree-grid-column"]=Ko};function pt(e){function n(d){return Object.assign({},{enable:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server"},d)}function o(){return{enableSelectRow:!0,multiSelect:e.multiSelect,showCheckbox:e.multiSelect,multiSelectMode:"DependOnCheck"}}function a(){return{fitColumns:e.fitColumns,fitMode:"percentage",resizeColumn:!0}}function i(){return typeof e.displayType=="string"&&e.displayType in Ye?!1:e.displayType.toLowerCase().indexOf("nav")===0}function r(){return e.displayType.toLowerCase()===Ye.Tree.toLowerCase()||e.displayType.toLowerCase()===Ye.ListTree.toLowerCase()}function l(){return e.displayType.toLowerCase()===Ye.TreeList.toLowerCase()}function s(){const d=e.displayType.toLowerCase();return d===Ye.ListList.toLowerCase()||d===Ye.ListTree.toLowerCase()}function u(){return e.navigation?{width:e.navigation.width||320,minWidth:e.navigation.minWidth||200}:{width:300,minWidth:200}}return{checkPaination:n,checkMultiSelect:o,checkColumnOptions:a,isDoubleList:i,getNavigationSize:u,isTreeList:r,navIsTreeList:l,navIsList:s}}const Ge=t.reactive({}),fe=t.reactive({}),ke=t.reactive({}),mt=t.reactive({}),Qe=t.reactive({}),Vt=t.ref([]);function Xo(e){var a;const n=t.ref(e.searchFields||[]),o=t.ref(((a=e.navigation)==null?void 0:a.searchFields)||[]);return t.watch(()=>fe==null?void 0:fe.searchFields,i=>{n.value=i}),t.watch(()=>ke==null?void 0:ke.searchFields,i=>{o.value=i}),{searchFieldItems:n,navSearchFieldItems:o}}const un=t.ref(),$t="F_LOOKUP_HTTP_COMPOSITION_TOKEN";function Yo(e,n){const o=t.inject("FLoadingService"),a=t.inject(At),{searchFieldItems:i}=Xo(e),r=t.ref(e.uri),l=t.ref(e.idValue);function s(g,h,m=!1){if(!h.trim())return[];const y=Array.from(new Set(h.trim().split(" ").filter(F=>F.trim())));if(!g||!y.length)return[];const V=(g||[]).map((F,k)=>{const x=y.map((S,_)=>({filterField:F.value,value:S,lbracket:"",rbracket:"",relation:It.And,compare:zt.Like}));return x.length&&(x.length>1&&(x[0].lbracket="(",x[x.length-1].rbracket=")"),x[x.length-1].relation=It.Or),x}).filter(F=>F.length);let C=[];return V&&V.length&&(C=$e.flatten(V),C.length>1&&(C[0].lbracket+="(",C[C.length-1].rbracket+=")"),C[C.length-1].relation=0),C}function u(g,h){const m={};m.category=h;let y=null,V=null;if(g!=null&&g.search){const{field:C,value:F,isNavigation:k,type:x}=g.search,S=x||"like";if(F&&(m.searchValue=F.trim()),m.searchField=C?C.trim():"*",m.searchType=S,k&&(m.category="navsearch"),!e.enableMultiFieldSearch&&m.searchField==="*"){const _=s(i.value,F,k);_&&_.length&&(k?y=_:V=_),F===""&&m.category==="search"&&!V&&!y&&(m.category="all")}}return{searchParam:m,navSearchConditions:y,searchConditions:V}}function d(g){var m,y;if(g==="fav")return{pageIndex:1,pageSize:500};let h="default";return g==="navsearch"&&(h="navigation"),{pageIndex:((m=Ge[h])==null?void 0:m.index)||1,pageSize:((y=Ge[h])==null?void 0:y.size)||20}}function p(g){const h={},m=(g==null?void 0:g.action)||"all",{searchParam:y,navSearchConditions:V,searchConditions:C}=u(g,m);C&&(h.searchConditions=C),V&&(h.navSearchConditions=V),h.searchValue=JSON.stringify(y);const{pageIndex:F,pageSize:k}=d(m);return h.pageIndex=F,h.pageSize=k,h.treeToList=e.treeToList,h.navTreeToList=e.navTreeToList,h.loadTreeDataType=e.loadTreeDataType,g!=null&&g.relationFilter&&(h.relationFilter=[...g.relationFilter]),g.selectedInfo&&(h.selectedInfo=g.selectedInfo),h.customData=t.toRaw(un.value),h}function c(g){return g==null?void 0:g.map(h=>(h.resizable=!0,h))}function f(g,h){return g.map(m=>{const y=h==null?void 0:h.find(V=>V.field.toLowerCase()===m.value.toLowerCase());return y&&(m.label=y.title),m})}function w(g){g.columns&&(g.columns=c(g.columns),g.searchFields&&(g.searchFields=f(g.searchFields,g.columns))),g.navigation&&g.navigation.columns&&(g.navigation.columns=c(g.navigation.columns),g.navigation.searchFields&&(g.navigation.searchFields=f(g.navigation.searchFields,g.navigation.columns)))}function v(g){return r.value&&a?a.getData(r.value,g).then(h=>(w(h),h)):new Promise((h,m)=>{h({columns:[...e.columns],items:[...e.data],searchFields:[...e.searchFields],navigation:{...e.navigation}})})}function b(g,h){const m=p(g);o==null||o.show(),v(m).then(y=>{o==null||o.clearAll(),h(y)})}return{idValues:l,getData:v,loadData:b}}function Jo(e){t.watch(()=>e.pagination,o=>{Ge.default=o}),t.watch(()=>{var o;return(o=e.navigation)==null?void 0:o.pagination},o=>{Ge.navigation=o});function n(o,a=!1){o&&(a?Ge.navigation={...Ge.navigation,...o}:Ge.default={...Ge.default,...o})}return{updatePageInfo:n}}const dn="F_LOOKUP_USER_DATA_SERVICE";function Vc(e,n){const o=t.inject("FLoadingService",null),a=t.inject(At,null),i=t.reactive({key:"",data:{}}),r=t.ref(e.id);function l(){return Re.encrypt(r.value)}i.key=l();function s(){return e.enableFavorite&&a?a.getSettings(i.key).then(f=>(f&&f.textValue?i.data=JSON.parse(f.textValue):i.data={},e.enableUserData||(i.data.tabIndex=Le.dataList),f)):Promise.resolve()}function u({width:f,height:w}){var v;i.data.size=((v=i.data)==null?void 0:v.size)||{},i.data.size={width:f,height:w}}function d(){if(e.enableFavorite&&a){const{key:f,data:w}=i,v={configkey1:f,configkey2:"",configkey3:"",textvalue:JSON.stringify(w)};return a==null?void 0:a.updateSettings(f,v)}return Promise.resolve()}function p(f){const w={category:"fav",favoriteIds:f.favoriteIds};return{searchValue:JSON.stringify(w),pageIndex:1,pageSize:500}}function c(){var w;const f=p({favoriteIds:(w=i.data)==null?void 0:w.favorites});return o==null||o.show(),a?a.getData(e.uri,f).then(v=>(o==null||o.clearAll(),i.favoriteItems=v&&v.items||[],v)):Promise.resolve()}return{userDataState:i,setDialogSize:u,saveUserData:d,getFavoriteData:c,getUserData:s}}function Qo(e){const n=t.inject(nn),o=t.inject(dn),{userDataState:a}=o,i=t.ref();a.data=a.data||{};const r="_favorite_",l=t.ref(!1);function s({id:f,data:w},v="add"){var g,h;if(f==null&&f==="")return;const b=f;a.data.favorites=((g=a.data)==null?void 0:g.favorites)||[],a.favoriteItems=a.favoriteItems||[],v==="add"?(l.value=!1,a.data.favorites=Array.from(new Set([...((h=a.data)==null?void 0:h.favorites)||[],b])),a.favoriteItems=[...a.favoriteItems,w]):(l.value=!0,a.data.favorites=a.data.favorites.filter(m=>m!==b),a.favoriteItems=a.favoriteItems.filter(m=>m[e.idField]!==b)),o==null||o.saveUserData().then(m=>{const y=v==="add"?"已添加到收藏":"已从收藏中移除";n==null||n.success({message:y,position:"top-center"})})}function u(f){return f?f.raw[e.idField]:""}const d=t.computed(()=>f=>{var v,b;const w=u(f);return(b=(v=a.data)==null?void 0:v.favorites)==null?void 0:b.includes(w)});function p(f,w,v){f.stopPropagation();const b=u(w);s({id:b,data:w.raw},d.value(w)?"remove":"add")}const c={field:r,title:"",width:"50px",fixed:"right",align:"center",formatter:(f,w)=>t.createVNode("button",{type:"button",onClick:v=>{p(v,w)},class:["btn btn-link f-icon mx-2 f-icon-star-outline",{"f-icon-star":d.value(w)}],style:"color: #ffbd8c;",title:d.value(w)?"取消收藏":"收藏"},null)};return t.watch(()=>fe==null?void 0:fe.columns,f=>{i.value=$e.cloneDeep([...f||[]])}),{favorite:c,columns:i,removeFavoriteItem:l}}function Fc(e,n,o){const a=t.inject($t),{checkPaination:i,checkMultiSelect:r,checkColumnOptions:l}=pt(e),{updatePageInfo:s}=Jo(e),u=i(e.pagination),d=r(),p=l(),c=t.ref(),f=t.ref([]),w=t.ref([]),{navSelectedItems:v,getNavigationIdField:b,getRelationFilter:g}=o;s(u);const h=t.ref(Ge.default),{loadData:m,idValues:y}=a,{favorite:V}=Qo(e);t.watch(()=>Ge.default,I=>{h.value=I});function C(I,N,B){var O;const $={total:N};if(B){const{pageIndex:P,pageSize:E,enablePager:j,pageList:R}=B;Object.assign($,{index:P,size:E,enable:j,sizeLimits:R})}s($),(O=c.value)==null||O.updateDataSource(I||[])}function F(I){var N;e.enableFavorite&&I.push(V),(N=c.value)==null||N.updateColumns(I)}const k=t.computed(()=>v.value&&v.value.length?{relationFilter:g(v.value)}:null);t.watch([()=>fe==null?void 0:fe.columns,()=>fe==null?void 0:fe.items,()=>fe==null?void 0:fe.pageInfo,()=>fe==null?void 0:fe.total,()=>fe==null?void 0:fe.selectedData],([I,N,B,$,O])=>{var P;I&&F(I),C(N,$||0,B),O&&O.length&&(w.value=O,(P=c.value)==null||P.selectItemById(y.value))}),t.watch(()=>e.idValue,I=>{f.value=I.split(e.separator)}),t.watch(()=>w.value,I=>{Vt.value=I});function x(I){w.value=I}function S(){const I={search:Qe.default,action:"list"};k.value&&Object.assign(I,k.value),m(I,N=>{C(N.items,N.total||0,N.pageInfo)})}t.watch(()=>v.value,I=>{if(e.uri){s({index:1}),S();return}const N=I.map(B=>B[b()]);n.emit("navSelectionsChanged",{items:I,ids:N})}),t.watch(()=>Qe.default,I=>{if(e.uri){s({index:1}),S();return}n.emit("search",I)});function _(I){var B;const N={index:I,isNavigation:!1};if(s(N),I!==((B=h.value)==null?void 0:B.index)){if(e.uri){S();return}n.emit("pageIndexChanged",N)}}function M(I){const N={size:I,index:1,isNavigation:!1};if(s(N),e.uri){S();return}n.emit("pageSizeChanged",N)}function T(){return t.createVNode(Je,{ref:c,pagination:h.value,summary:{enable:!1},columnOption:p,idField:e.idField,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:d,selectionValues:f.value,onSelectionChange:x,onPageIndexChanged:_,onPageSizeChanged:M},null)}return{datagridRef:c,selectedItems:w,selectionValues:f,renderDataGrid:T}}function Nc(e,n){const{checkMultiSelect:o,checkColumnOptions:a}=pt(e),i=o(),r=a(),l=t.ref(),s=t.ref([]),u=t.ref([]),{loadData:d}=Yo(e);function p(b){var g;(g=l.value)==null||g.updateDataSource(b||[])}function c(b){var g;(g=l.value)==null||g.updateColumns(b)}t.watch([()=>fe==null?void 0:fe.columns,()=>fe==null?void 0:fe.items,()=>fe==null?void 0:fe.pageInfo,()=>fe==null?void 0:fe.total],([b,g,h,m])=>{b&&c(b),p(g)}),t.watch(()=>u.value,b=>{Vt.value=b});function f(b){u.value=b}function w(){d({search:Qe.default,action:"list"},b=>{p(b.items)})}t.watch(()=>Qe.default,b=>{if(e.uri){w();return}n.emit("search",b)});function v(){return t.createVNode(rt,{ref:l,fit:!0,data:e.data,idField:e.idField,columns:e.columns,rowNumber:{enable:!1},columnOption:r,selection:i,showBorder:!0,virtualized:!0,displayField:"code",onSelectionChange:f},null)}return{treegridRef:l,selectedTreeNodes:u,selectionTreeValues:s,renderTreeGrid:v}}const kc=new Map([["appearance",We]]),_c={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",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:""},valueField:{description:"",type:"string",default:"id"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},data:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},required:{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:""}},required:["id","type"],ignore:["id","appearance","binding"]};function Ic(e,n,o){return n}const fn={id:{type:String},data:{type:Array,default:[]},disabled:{default:!1,type:Boolean},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-arrow-60-down"></span>'},editable:{default:!1,type:Boolean},enableClear:{default:!0,type:Boolean},enableSearch:{type:Boolean,default:!1},enableTitle:{default:!0,type:Boolean},fitEditor:{default:!1,type:Boolean},forcePlaceholder:{default:!1,type:Boolean},hidePanelOnClear:{default:!0,type:Boolean},idField:{default:"id",type:String},mapFields:{type:Object},maxHeight:{default:350,type:Number},maxLength:{type:Number},multiSelect:{type:Boolean,default:!1},modelValue:{},placeholder:{type:String},placement:{type:String,default:"auto"},readonly:{default:!1,type:Boolean},remote:{default:null,type:Object},remoteSearch:{default:!1,type:Boolean},separator:{default:",",type:String},tabIndex:{type:Number,default:-1},textField:{default:"name",type:String},titleField:{default:"name",type:String},valueField:{default:"id",type:String},viewType:{default:"tag",type:String},change:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},autoHeight:{type:Boolean,default:!0},beforeOpen:{type:Function,default:null},searchOption:{type:Object,default:!1},enableHighlightSearch:{type:Boolean,default:!0}},Zo=Be(fn,_c,kc,Ic),Tc={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{type:Boolean,default:!1},selectedValues:{type:String,default:""},separator:{type:String,default:","},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},width:{type:Number},maxHeight:{type:Number},valueField:{type:String,default:"id"},onSelectionChange:{type:Function,default:()=>{}},searchOption:{type:Object,default:!1},enableHighlightSearch:{type:Boolean,default:!0}},Mc=t.defineComponent({name:"FComboListContainer",props:Tc,emits:["selectionChange"],setup(e,n){const o=t.ref(),a=t.ref(e.dataSource),i=t.ref([]),r=t.ref(e.separator),l=t.ref(e.width),s=t.ref(e.maxHeight),u=t.ref(String(e.selectedValues).split(r.value)),d=t.computed(()=>e.multiSelect),p=t.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:d.value,showSelectAll:!1,showSelection:!0}));t.watch(e.dataSource,()=>{a.value=e.dataSource});const c=t.computed(()=>e.enableSearch?"SearchBar":"ContentHeader"),f=t.computed(()=>{const b={};return l.value!==void 0&&(b.width=`${l.value}px`),s.value!==void 0&&s.value>0&&(b.maxHeight=`${s.value}px`),b});function w(b){i.value=b.map(g=>Object.assign({},g)),u.value=b.map(g=>g[e.idField]),n.emit("selectionChange",i.value)}function v(b){if(e.enableHighlightSearch)return;let g=[];typeof e.searchOption=="function"?g=a.value.filter(h=>e.searchOption(b,h)):g=a.value.filter(h=>h[e.valueField].indexOf(b)>-1||h[e.textField].indexOf(b)>-1),o.value.updateDataSource(g)}return t.watch([()=>e.selectedValues],([b])=>{u.value=b.split(r.value)}),()=>t.createVNode("div",{class:"f-combo-list-container pl-1",style:f.value},[t.createVNode(vn,{ref:o,size:"small",itemClass:"f-combo-list-item",header:c.value,headerClass:"f-combo-list-search-box",data:a.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,selection:p.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:u.value,onSelectionChange:w,onAfterSearch:v},null)])}});function Oc(e){const n=t.ref(""),o=t.ref(e.modelValue),a=t.ref(e.data||[]),i=t.ref(e.editable);function r(c){const f=String(c).split(e.separator),w=f.map(g=>[g,!0]),v=new Map(w);return a.value.filter(g=>v.has(String(g[e.valueField]))).sort((g,h)=>{const m=f.indexOf(g[e.valueField]),y=f.indexOf(h[e.valueField]);return m-y})}function l(c){const f=r(c).map(w=>w[e.textField]).join(e.separator);n.value=i.value?f||c:f}function s(c){const f=c.split(e.separator).map(v=>[v,!0]),w=new Map(f);return a.value.filter(v=>w.has(v[e.textField]))}function u(c){const f={};return f[e.idField]=c,f[e.textField]=c,[f]}function d(c){let f=s(c);const w=f&&f.length>0;return i.value&&!w&&(f=u(c)),f}function p(){const{url:c,method:f="GET",headers:w={},body:v=null}=e.remote,b=f.toLowerCase()=="get"?{method:f,headers:w}:{method:f,headers:w,body:v};let g=!1;fetch(c,b).then(h=>{var y,V;if(h.status===200)return g=!!((V=(y=h.headers)==null?void 0:y.get("content-type"))!=null&&V.includes("application/json")),g?h.text():h.json();throw new Error(h.statusText)}).then(h=>{a.value=g?JSON.parse(h):h}).catch(h=>{console.error(h)})}return e.remote&&p(),t.watch(()=>e.data,()=>{a.value=e.data}),t.watch([a],([c])=>{if(e.modelValue!=null){const f=c.find(w=>w[e.valueField]===e.modelValue);f&&(n.value=f[e.textField])}}),t.watch(()=>e.modelValue,c=>{o.value=c,l(c)}),l(e.modelValue),{dataSource:a,displayText:n,editable:i,modelValue:o,getItemsByDisplayText:s,getItemsByValue:r,getSelectedItemsByDisplayText:d}}const Ft=t.defineComponent({name:"FComboList",props:fn,emits:["clear","update:modelValue","change","input"],setup(e,n){const o=t.ref(),a=t.ref(e.disabled),i=t.ref(e.enableClear),r=t.ref(e.enableSearch),l=t.ref(e.readonly),{dataSource:s,displayText:u,editable:d,modelValue:p,getSelectedItemsByDisplayText:c}=Oc(e),f=t.computed(()=>e.multiSelect),w=t.computed(()=>o.value?o.value.elementRef.getBoundingClientRect().width:0);function v(){!f.value&&o.value&&o.value.hidePopup()}function b(C){u.value=C.map(F=>F[e.textField]).join(e.separator),C.length===1?p.value=C[0][e.valueField]:p.value=C.map(F=>F[e.valueField]).join(e.separator),n.emit("update:modelValue",p.value),n.emit("change",C,p.value),v()}function g(){l.value||o.value.togglePopup()}function h(C){p.value="",n.emit("update:modelValue",""),n.emit("clear")}function m(C){const F=c(C);b(F)}function y(){return u.value}function V(C){n.emit("input",C)}return n.expose({getDisplayText:y}),t.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([C,F,k,x,S])=>{a.value=C,d.value=F,i.value=k,r.value=x,l.value=S}),()=>t.createVNode(yn,{ref:o,id:e.id,disable:a.value,readonly:l.value,forcePlaceholder:e.forcePlaceholder,editable:d.value,buttonContent:e.dropDownIcon,placeholder:e.placeholder,enableClear:i.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:u.value,"onUpdate:modelValue":C=>u.value=C,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:h,onClick:g,onChange:m,onInput:V,beforeOpen:e.beforeOpen},{default:()=>[t.createVNode(Mc,{idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:s.value,selectedValues:p.value,multiSelect:e.multiSelect,enableSearch:r.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?w.value:void 0,onSelectionChange:b},null)]})}});function Bc(e,n){const{canAccepts:o,checkCanDeleteComponent:a,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:u,triggerBelongedComponentToDeleteWhenDeleted:d}=On(e),p=e.schema;function c(f,w){return new Uo(f,n).getPropertyConfig(p,w)}return{canAccepts:o,checkCanDeleteComponent:a,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:r,onAcceptMovedChildElement:l,resolveComponentContext:s,triggerBelongedComponentToMoveWhenMoved:u,triggerBelongedComponentToDeleteWhenDeleted:d,getPropsConfig:c}}const $c=t.defineComponent({name:"FComboListDesign",props:fn,emits:["clear","update:modelValue","change"],setup(e,n){const o=t.ref(),a=t.inject("designer-host-service"),i=t.inject("design-item-context"),r=Bc(i,a),l=Nt.useDesignerComponent(o,i,r);return t.onMounted(()=>{o.value.componentInstance=l}),n.expose(l.value),()=>t.createVNode(Lt,{ref:o,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,enableClear:!0},null)}});Ft.register=(e,n,o,a)=>{e["combo-list"]=Ft,n["combo-list"]=Zo},Ft.registerDesigner=(e,n,o)=>{e["combo-list"]=$c,n["combo-list"]=Zo},oo(Ft);const Pc={fields:{type:Array,default:()=>[]},showAllColumns:{type:Boolean,default:!0}},jc=t.defineComponent({name:"FLookupSearchBar",props:Pc,emits:["search"],setup(e,n){const o=t.ref(e.fields||[]),a=t.ref(""),i=t.ref(mt.value),r=t.computed(()=>({field:a.value,value:i.value}));function l(){if(!o.value.length)return;let p="";e.showAllColumns&&(p="*"),p=o.value[0].value;const c=o.value.find(f=>!!f.isDefault);c&&(p=c.value),a.value=p}t.watch(()=>e.fields,p=>{o.value=p,l()});function s(){n.emit("search",r.value)}function u(){i.value="",s()}function d(p){p.key==="Enter"&&s()}return t.onMounted(()=>{l()}),()=>t.createVNode("div",{class:"fv-lookup-search-bar d-flex flex-row"},[t.createVNode("div",{style:"width: 160px;"},[t.createVNode(Ft,{data:o.value,textField:"label",valueField:"value",idField:"value",modelValue:a.value,"onUpdate:modelValue":p=>a.value=p,enableClear:!1},null)]),t.createVNode("div",{class:"f-utils-fill ml-2"},[t.createVNode(at,{buttonContent:'<i class="f-icon f-icon-search"></i>',modelValue:i.value,"onUpdate:modelValue":p=>i.value=p,onClickButton:s,enableClear:!0,onClear:u,onKeyup:d},null)])])}});function ea(e,n){const{searchFieldItems:o,navSearchFieldItems:a}=Xo(e),i=t.ref([]),r=t.ref([]);function l(p,c=!1){let f=p;e.showAllSearchColumns&&(f=[{label:"所有列",value:"*"}].concat(p)),c?r.value=f:i.value=f}l(o.value),l(a.value,!0),t.watch(()=>o.value,p=>{l(p)}),t.watch(()=>a.value,p=>{l(p,!0)});function s(p){const c={...p};if(n){Qe.navigation=c;return}Qe.default=c}const u=t.computed(()=>n?r.value||[]:i.value||[]);function d(){if(e.enableSearchBar&&u.value.length>0)return t.createVNode("div",{class:"p-2"},[t.createVNode(jc,{fields:u.value,showAllColumns:e.showSearchAllColumns,onSearch:s},null)])}return{renderSearchBar:d}}function Dc(e,n){var I;const o=t.inject($t),{renderSearchBar:a}=ea(e,!0),{checkPaination:i,navIsList:r,navIsTreeList:l}=pt(e),{updatePageInfo:s}=Jo(e),{loadData:u}=o,d=t.ref([]);if(r()){const N=i((I=e.navigation)==null?void 0:I.pagination);s(N,!0)}const p=t.ref(Ge.navigation);t.watch(()=>Ge.navigation,N=>{p.value=N});const c={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1},f={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},w=t.ref(),v=t.ref(),b=t.ref("id");function g(N,B,$){var O,P;if(N=N||[],r()){const E={total:B};if($){const{pageIndex:j,pageSize:R,enablePager:W,pageList:te}=$;Object.assign(E,{index:j,size:R,enable:W,sizeLimits:te})}s(E,!0),(O=v.value)==null||O.updateDataSource(N)}else l()&&((P=w.value)==null||P.updateDataSource(N))}function h(N){var B,$;r()?(B=v.value)==null||B.updateColumns(N):l()&&(($=w.value)==null||$.updateColumns(N))}t.watch([()=>ke==null?void 0:ke.columns,()=>ke==null?void 0:ke.items,()=>ke==null?void 0:ke.pageInfo,()=>ke==null?void 0:ke.total],([N,B,$,O])=>{N&&h(N),g(B,O||0,$)}),t.watch(()=>ke==null?void 0:ke.idField,N=>{b.value=N||"id"});function m(N){d.value=N}function y(N){d.value=N}function V(){u({search:Qe.navigation,action:"navsearch"},N=>{g(N.items,N.total||0,N.pageInfo)})}t.watch(()=>Qe.navigation,N=>{if(e.uri){s({index:1},!0),V();return}n.emit("search",N)});function C(N){const B={index:N};if(s(B,!0),e.uri){V();return}n.emit("pageIndexChanged",B)}function F(N){const B={size:N,index:1};if(s(B,!0),e.uri){V();return}n.emit("pageSizeChanged",B)}function k(){return t.createVNode(rt,{ref:w,fit:!0,idField:b.value,rowNumber:{enable:!1},columnOption:f,selection:c,virtualized:!0,showBorder:!0,onSelectionChange:m},null)}function x(){return t.createVNode(Je,{ref:v,pagination:p.value,summary:{enable:!1},columnOption:f,idField:b.value,rowNumber:{enable:!1},showBorder:!0,fit:!0,virtualized:!0,selection:c,onSelectionChange:y,onPageIndexChanged:C,onPageSizeChanged:F},null)}function S(){if(l())return k();if(r())return x()}function _(){return t.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[a(),t.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[S()])])}function M(){return b.value}function T(N){return ke.relations&&ke.relations.length?ke.relations.map($=>{const{groupField:O,helpField:P}=$,E={fieldName:P,fieldValue:""},j=N.map(R=>O.split(".").reduce((W,te)=>W[te],R));return E.fieldValue=j.join(","),E}):""}return{renderNavigation:_,selectedItems:d,getNavigationIdField:M,getRelationFilter:T}}function Ec(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const Rc=t.defineComponent({name:"LookupContainer",props:Ct,emits:["update:modelValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","changeDialogOptions","clearSearch"],setup(e,n){const o=t.inject(_t,t.ref(Le.dataList)),a=t.inject($t),{renderSearchBar:i}=ea(e,!1),{isDoubleList:r,getNavigationSize:l,isTreeList:s}=pt(e),{renderNavigation:u,selectedItems:d,getNavigationIdField:p,getRelationFilter:c}=Dc(e,n);function f(){if(s()){const{renderTreeGrid:m}=Nc(e,n);return m}const{renderDataGrid:h}=Fc(e,n,{navSelectedItems:d,getNavigationIdField:p,getRelationFilter:c});return h}const w=f(),v=l();function b(){try{if(e.context&&e.context.rowData){const{rowData:h}=e.context;if(e.mappingFields&&h){const m=e.mappingFields[e.idField];if(m!==void 0)return h[m]}return""}return a==null?void 0:a.idValues.value}catch(h){return console.error("Error in getIdValues:",h),""}}function g(){const h={};if(e.enableToSelect){let m=b()||[];Array.isArray(m)||(m=(""+m).split(e.separator)),h.selectedInfo={selectedIds:m,selected:!0},mt.value!=null&&(h.search={field:"*",value:mt.value,type:"like"})}a==null||a.loadData(h,m=>{m.navigation&&(Object.keys(m.navigation).forEach(y=>{var V;ke[y]=(V=m.navigation)==null?void 0:V[y]}),delete m.navigation),Object.keys(m).forEach(y=>{fe[y]=m[y]}),n.emit("changeDialogOptions",{title:m.title})})}return t.watch(()=>o.value,(h,m)=>{console.log(h,m)}),t.onMounted(()=>{g(),document.body.classList.add("lookup-modal-open")}),t.onUnmounted(()=>{document.body.classList.remove("lookup-modal-open")}),()=>{let h;return t.createVNode(lt,null,{default:()=>[t.createVNode(xt,{position:"left",width:v==null?void 0:v.width,minWidth:v==null?void 0:v.minWidth,visible:r()},Ec(h=u())?h:{default:()=>[h]}),t.createVNode(xt,{position:"center"},{default:()=>[t.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[i(),t.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[w()])])]})]})}}}),Lc={multiSelect:{type:Boolean,default:!1},idField:{type:String},displayType:{type:String,default:"list"}},Hc=t.defineComponent({name:"FLookupFavorite",props:Lc,setup(e,n){const{userDataState:o,getFavoriteData:a}=t.inject(dn),i=t.inject(_t,t.ref(Le.dataList)),{columns:r,favorite:l,removeFavoriteItem:s}=Qo(e),{isTreeList:u}=pt(e),d=t.ref(),p=t.ref();t.watch(()=>r.value,y=>{(u()?p:d).value.updateColumns(y)});function c(){return o.data&&o.data.favorites&&o.data.favorites.length}function f(y,V){const C=u()?p:d;V&&V.length&&(V=V.map(F=>(F.resizable=!0,F)),C.value.updateColumns([...V,l])),y&&C.value.updateDataSource(y||[])}function w(){a().then(y=>{y?f(y.items||[],y.columns):f([],null)})}t.watch(()=>i.value,(y,V)=>{y===Le.favorite&&(c()?w():f([],null))}),t.watch(()=>s.value,(y,V)=>{i.value===Le.favorite&&y&&(u()?w():f(o.favoriteItems||[],null),s.value=!1)});const v={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},b={enableSelectRow:!0,multiSelect:e.multiSelect,showCheckbox:e.multiSelect,multiSelectMode:"DependOnCheck"};function g(){}t.onMounted(()=>{});function h(){return t.createVNode(rt,{ref:p,fit:!0,idField:e.idField,rowNumber:{enable:!1},columnOption:v,selection:b,showBorder:!0,virtualized:!0,onSelectionChange:g},null)}function m(){return t.createVNode(Je,{ref:d,pagination:{enable:!1},summary:{enable:!1},columnOption:v,idField:e.idField,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:b,onSelectionChange:g},null)}return()=>u()?h():m()}}),Ac={title:{type:String},height:{type:Number,default:50},draggable:{type:Boolean,default:!0},enableFavorite:{type:Boolean,default:!1},useHttpComposition:{type:Object,default:{}},userDataService:{type:Object,default:{}}},zc=t.defineComponent({name:"FLookupModalContainer",props:Ac,emits:["closeModal","maximize"],setup(e,n){const o=t.ref(Le.dataList);t.provide(_t,o),t.provide($t,e.useHttpComposition),t.provide(dn,e.userDataService);const{userDataState:a,getUserData:i}=e.userDataService;function r(p){n.emit("maximize",p)}function l(){n.emit("closeModal")}function s(p){o.value=p,a.data.tabIndex=p}const u=t.computed(()=>({transform:`translate3d(${o.value===Le.favorite?84:0}px, 0px, 0px)`})),d=t.computed(()=>p=>({display:o.value===p?"block":"none!important"}));return t.onMounted(()=>{i().then(p=>{var c;a.data.favorites&&a.data.favorites.length&&(o.value=((c=a.data)==null?void 0:c.tabIndex)||Le.dataList)})}),()=>t.createVNode("div",{class:"d-flex flex-column h-100 lookup-modal"},[t.createVNode("div",{class:"d-flex justify-content-between align-items-center px-3 lookup-modal-header"},[t.createVNode("div",{class:"lookup-modal-header-title",title:e.title},[e.title]),e.enableFavorite&&t.createVNode("div",{class:"d-flex justify-content-center w-100"},[t.createVNode("div",{class:"lookup-modal-header-tabs-container d-flex",onMousedown:p=>p.stopPropagation()},[t.createVNode("div",{class:"active-tab",style:u.value},null),t.createVNode("div",{class:["tab-item","d-flex",{active:o.value===Le.dataList}],onClick:()=>s(Le.dataList)},[t.createTextVNode("数据列表")]),t.createVNode("div",{class:["tab-item","d-flex",{active:o.value===Le.favorite}],onClick:()=>s(Le.favorite)},[t.createTextVNode("收藏夹")])])]),t.createVNode("div",{class:"d-flex flex-row h-100 justify-content-between align-items-center lookup-modal-header-buttons",onMousedown:p=>p.stopPropagation()},[t.createVNode("span",{class:"f-icon modal_maximize",onClick:r,style:"cursor: pointer"},null),t.createVNode("span",{class:"f-icon modal_close",onClick:l,style:"cursor: pointer"},null)])]),t.createVNode("div",{class:"f-utils-fill"},[t.createVNode("div",{class:"h-100 d-flex flex-column mx-2 f-utils-fill",style:d.value(Le.dataList)},[n.slots.default&&n.slots.default()]),t.createVNode("div",{class:"h-100 d-flex flex-column mx-2 f-utils-fill",style:d.value(Le.favorite)},[n.slots.fav&&n.slots.fav()])])])}});function Gc(e,n,o,{dictPicked:a,modelValue:i,buttonEditInstance:r,userDataService:l}){var M,T,I,N,B;const s=t.inject(nn,null),u=t.inject("FLoadingService"),d=t.ref(e.dialog),p=t.ref(),c=t.ref("accept"),f=t.ref(),{isDoubleList:w}=pt(e);async function v(){const $=o.value.map(E=>E[e.textField]).join(e.separator),O=o.value.map(E=>E[e.idField]).join(e.separator);i.value=$,n.emit("update:modelValue",$),n.emit("update:idValue",O);const P={items:o.value,mappingFields:e.mappingFields};if(n.emit("update:dataMapping",P),e.context){const{editor:E}=e.context;E&&Object.assign(E,P)}return await a({items:o.value}),!0}function b(){return c.value="cancel",!0}const g=$=>{Object.keys($).forEach(O=>{delete $[O]})},h=$=>{$.forEach(O=>{g(O)})};function m(){u==null||u.clearAll(),h([fe,ke,Ge,Qe,mt]),f.value=null}async function y(){let $=!0,O="";if(o.value.length===0)return s==null||s.warning({message:"请选择数据!",position:"top-center"}),!1;if(e.beforeSelectData&&typeof e.beforeSelectData=="function"){const P=await e.beforeSelectData({items:o.value});typeof P=="boolean"&&($=P),typeof P=="object"&&($=P.canSelect,O=P.message||"")}return $?(v(),c.value="accept",!0):(O&&(s==null||s.warning({message:O,position:"top-center"})),!1)}async function V($){let O=!0;if(e.dictPicking&&typeof e.dictPicking=="function"){const P=await e.dictPicking({context:{customData:f}});typeof P=="boolean"&&!P&&(O=!1),typeof P=="object"&&(P.showDialog?P.data&&(f.value=P.data):(O=!1,P.message&&(s==null||s.error({message:P.message,position:"top-center"}))))}return O}function C(){var R,W,te,pe,Ne;const $=((R=d.value)==null?void 0:R.height)||620,O=((W=d.value)==null?void 0:W.width)||590,P=((te=d.value)==null?void 0:te.minWidth)||300,E=((pe=d.value)==null?void 0:pe.minHeight)||200,j={height:$,width:O,minWidth:P,minHeight:E};return w()&&(j.width=((Ne=d.value)==null?void 0:Ne.width)||960),j}const{width:F,height:k,minHeight:x,minWidth:S}=C();return{modalOptions:{title:(M=d.value)==null?void 0:M.title,fitContent:!1,showHeader:!1,dragHandle:".lookup-modal-header",height:k,width:F,minWidth:S,minHeight:x,showMaxButton:((T=d.value)==null?void 0:T.showMaxButton)==null?!0:(I=d.value)==null?void 0:I.showMaxButton,showCloseButton:((N=d.value)==null?void 0:N.showCloseButton)==null?!0:(B=d.value)==null?void 0:B.showCloseButton,reiszeable:!0,draggable:!0,closedCallback:($,O)=>{const P={type:c.value,button:$==null?void 0:$.target};if((O==="esc"||O==="icon")&&(P.type="esc"),P.type==="accept"&&(P.items=o.value),(P.type==="cancel"||P.type==="esc")&&(i.value=e.modelValue),l&&e.enableUserData){l.saveUserData().then(()=>{m(),n.emit("dialogClosed",P)});return}m(),n.emit("dialogClosed",P)},buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:$=>b()},{name:"accept",text:"确定",class:"btn btn-primary",handle:$=>y()}],resizeHandle:$=>{p.value=$;const{width:O,height:P}=$.newSize.size;l.setDialogSize({width:Math.round(O),height:Math.round(P)})},enableEnter:!0,onEnter:$=>{$.event.preventDefault(),!$.event.target.closest(".fv-lookup-search-bar")&&y().then(P=>{var E;if(P){const j=(E=r.value)==null?void 0:E.getModal();j&&j.close($.event,"enter")}})}},beforeOpenDialog:V,dialogSize:p,customData:f,updateModelValue:v}}function Wc(e){const{mapFields:n,separator:o}=e,a={mapFields:n,separator:o};return{dictPicked:async r=>{e.dictPicked&&typeof e.dictPicked=="function"&&await e.dictPicked(r,a)}}}function qc(e,n,o){const a=t.computed(()=>e.textChangeType==="blur"||e.textChangeType==="any"),i=t.computed(()=>e.textChangeType==="enter"||e.textChangeType==="any"),{beforeOpenDialog:r,updateModelValue:l,selectedItems:s,openDialog:u,modelValue:d,useHttpComposition:p}=o;function c(g){if($e.isEmpty(g))return!1;const h=e.modelValue!==g;return h?mt.value=g:mt.value="",h}async function f(g){const h={search:{field:"*",value:g,type:"equal"}};if(r){if(await r(h)===!1)return;p.loadData(h,y=>{if(y.items&&y.items.length===1&&(!y.items[0].children||!y.items[0].children.length)){s.value=y.items||[],l();return}u()})}}function w(g,h){var y;let m=(y=g.target)==null?void 0:y.value;m!==""&&(m=m.trim()),c(m)&&(e.uri?f(m):n.emit("textChanged",{value:m,type:h?"blur":"enter"}))}function v(g){a.value&&w(g,!0)}function b(g){g.key==="Enter"&&i.value&&w(g,!1)}return{changeOnBlur:a,changeOnEnter:i,onInputBlur:v,onEnterKeyDown:b}}const Pt=t.defineComponent({name:"FLookup",props:Ct,emits:["update:modelValue","update:idValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","resize","dialogClosed","textChanged","clear","update:dataMapping"],setup(e,n){const o='<i class="f-icon f-icon-lookup"></i>',a=t.ref(),i=t.ref(e.modelValue),r=t.ref();un.value=t.ref(e.customData);const l=Yo(e),s=Vc(e);function u(){a.value&&!a.value.getModal()&&a.value.openDialog()}const{dictPicked:d}=Wc(e),{modalOptions:p,beforeOpenDialog:c,dialogSize:f,customData:w,updateModelValue:v}=Gc(e,n,Vt,{dictPicked:d,modelValue:i,buttonEditInstance:a,userDataService:s}),{onInputBlur:b,onEnterKeyDown:g}=qc(e,n,{beforeOpenDialog:c,updateModelValue:v,selectedItems:Vt,openDialog:u,modelValue:i,useHttpComposition:l}),h=t.reactive(p),m=t.inject(Nn,null);t.watch(()=>w.value,T=>{un.value=T}),t.watch(()=>e.modelValue,T=>{i.value=T});function y(T){l.idValues.value=T,n.emit("update:idValue",T)}t.onMounted(()=>{}),t.watch(()=>f.value,T=>{n.emit("resize",T)});async function V(){Vt.value=[],n.emit("update:modelValue",""),n.emit("update:idValue","");const T={items:null,mappingFields:e.mappingFields};if(n.emit("clear",T),e.context){const{editor:I}=e.context;I&&Object.assign(I,T)}}function C(T){n.emit("search",T)}function F(T){n.emit("navSelectionsChanged",T)}function k(T){n.emit("pageIndexChanged",T)}function x(T){n.emit("pageSizeChanged",T)}async function S(T){const I=m==null?void 0:m.getCurrentModal();I&&I.updateModalOptions(T),T.title&&(r.value=T.title)}function _(){const T=m==null?void 0:m.getCurrentModal();T&&T.close()}function M(T){const I=m==null?void 0:m.getCurrentModal();I&&I.maxDialog(T)}return n.expose({openDialog:u,updateIdValue:y,mappingFields:e.mappingFields,idField:e.idField}),()=>t.createVNode(at,{ref:a,id:e.id,modelValue:i.value,"onUpdate:modelValue":T=>i.value=T,disable:e.disable,readonly:e.readonly,editable:e.editable,inputType:"text",enableClear:e.enableClear,buttonContent:o,buttonBehavior:"Modal",modalOptions:h,onClear:V,beforeOpen:c,onBlur:b,onKeydown:g},{default:()=>[t.createVNode(zc,{title:r.value||"请选择",enableFavorite:e.enableFavorite,onCloseModal:_,onMaximize:T=>M(T),useHttpComposition:l,userDataService:s},{default:()=>t.createVNode(Rc,t.mergeProps(e,{onSearch:C,onNavSelectionsChanged:F,onPageIndexChanged:k,onPageSizeChanged:x,onChangeDialogOptions:S}),null),fav:()=>t.createVNode(Hc,{idField:e.idField,displayType:e.displayType},null)})]})}}),Uc={install(e){e.component(Pt.name,Pt)},register(e,n,o,a){e.lookup=Pt,n.lookup=Gt},registerDesigner(e,n,o){e.lookup=xs,n.lookup=Gt}};H.Compare=zt,H.ExpressValueType=Mn,H.FLookup=Pt,H.F_LOOKUP_HTTP_SERVICE_TOKEN=At,H.FilterRelation=It,H.LOOKUP_ACTIVE_TAB=_t,H.LOOKUP_USER_DATA_ID=Mi,H.LoadTreeDataType=Ht,H.LookupDisplayType=Ye,H.LookupSchemaRepositoryToken=ko,H.LookupTabs=Le,H.default=Uc,H.lookupProps=Ct,H.propsResolver=Gt,Object.defineProperties(H,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});