@farris/ui-vue 1.7.1 → 1.7.2-beta.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 (420) hide show
  1. package/components/accordion/index.esm.js +312 -61
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +1482 -56
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/binding-selector/index.esm.js +752 -8
  6. package/components/binding-selector/index.umd.cjs +1 -1
  7. package/components/button-group/index.esm.js +266 -110
  8. package/components/button-group/index.umd.cjs +1 -1
  9. package/components/calendar/index.esm.js +129 -128
  10. package/components/calendar/index.umd.cjs +2 -2
  11. package/components/code-editor/index.esm.js +237 -169
  12. package/components/code-editor/index.umd.cjs +3 -3
  13. package/components/collection-property-editor/index.esm.js +134 -133
  14. package/components/collection-property-editor/index.umd.cjs +2 -2
  15. package/components/color-picker/index.esm.js +812 -502
  16. package/components/color-picker/index.umd.cjs +1 -1
  17. package/components/combo-list/index.esm.js +323 -291
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +355 -174
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/comment/index.esm.js +134 -133
  22. package/components/comment/index.umd.cjs +2 -2
  23. package/components/common/index.esm.js +1 -1
  24. package/components/common/index.umd.cjs +1 -1
  25. package/components/component/index.esm.js +3830 -2796
  26. package/components/component/index.umd.cjs +8 -1
  27. package/components/condition/index.esm.js +2482 -492
  28. package/components/condition/index.umd.cjs +8 -1
  29. package/components/data-grid/index.esm.js +431 -406
  30. package/components/data-grid/index.umd.cjs +1 -1
  31. package/components/data-view/index.esm.js +3306 -3165
  32. package/components/data-view/index.umd.cjs +1 -1
  33. package/components/date-picker/index.esm.js +1 -1
  34. package/components/date-picker/index.umd.cjs +1 -1
  35. package/components/designer-canvas/index.esm.js +3094 -2731
  36. package/components/designer-canvas/index.umd.cjs +1 -1
  37. package/components/drawer/index.esm.js +397 -387
  38. package/components/drawer/index.umd.cjs +2 -2
  39. package/components/dropdown/index.esm.js +373 -124
  40. package/components/dropdown/index.umd.cjs +2 -2
  41. package/components/dynamic-form/index.esm.js +592 -1894
  42. package/components/dynamic-form/index.umd.cjs +1 -1
  43. package/components/dynamic-resolver/index.esm.js +250 -248
  44. package/components/dynamic-resolver/index.umd.cjs +2 -2
  45. package/components/dynamic-view/index.esm.js +287 -284
  46. package/components/dynamic-view/index.umd.cjs +1 -1
  47. package/components/event-parameter/index.esm.js +1 -1
  48. package/components/event-parameter/index.umd.cjs +1 -1
  49. package/components/events-editor/index.esm.js +1890 -1473
  50. package/components/events-editor/index.umd.cjs +3 -3
  51. package/components/expression-editor/index.css +1 -1
  52. package/components/expression-editor/index.esm.js +7371 -2
  53. package/components/expression-editor/index.umd.cjs +427 -1
  54. package/components/fieldset/index.esm.js +1 -1
  55. package/components/fieldset/index.umd.cjs +1 -1
  56. package/components/filter-bar/index.esm.js +4 -5
  57. package/components/filter-bar/index.umd.cjs +2 -2
  58. package/components/filter-condition-editor/index.css +1 -1
  59. package/components/filter-condition-editor/index.esm.js +9044 -425
  60. package/components/filter-condition-editor/index.umd.cjs +427 -1
  61. package/components/html-template/index.esm.js +33 -36
  62. package/components/html-template/index.umd.cjs +1 -1
  63. package/components/image/index.esm.js +2 -2
  64. package/components/image/index.umd.cjs +1 -1
  65. package/components/image-cropper/index.esm.js +615 -361
  66. package/components/image-cropper/index.umd.cjs +1 -1
  67. package/components/json-editor/index.esm.js +325 -247
  68. package/components/json-editor/index.umd.cjs +1 -1
  69. package/components/language-textbox/index.esm.js +269 -269
  70. package/components/language-textbox/index.umd.cjs +2 -2
  71. package/components/layout/index.esm.js +549 -163
  72. package/components/layout/index.umd.cjs +1 -1
  73. package/components/list-nav/index.esm.js +837 -39
  74. package/components/list-nav/index.umd.cjs +1 -1
  75. package/components/list-view/index.esm.js +404 -622
  76. package/components/list-view/index.umd.cjs +6 -6
  77. package/components/lookup/index.esm.js +3624 -3625
  78. package/components/lookup/index.umd.cjs +1 -1
  79. package/components/mapping-editor/index.esm.js +1487 -1462
  80. package/components/mapping-editor/index.umd.cjs +1 -1
  81. package/components/menu-lookup/index.esm.js +577 -536
  82. package/components/menu-lookup/index.umd.cjs +6 -6
  83. package/components/nav/index.esm.js +311 -31
  84. package/components/nav/index.umd.cjs +1 -1
  85. package/components/number-range/index.esm.js +1634 -189
  86. package/components/number-range/index.umd.cjs +1 -1
  87. package/components/number-spinner/index.esm.js +82 -82
  88. package/components/number-spinner/index.umd.cjs +1 -1
  89. package/components/order/index.esm.js +1200 -859
  90. package/components/order/index.umd.cjs +6 -6
  91. package/components/page-footer/index.esm.js +331 -48
  92. package/components/page-footer/index.umd.cjs +1 -1
  93. package/components/page-header/index.esm.js +110 -116
  94. package/components/page-header/index.umd.cjs +1 -1
  95. package/components/pagination/index.esm.js +509 -232
  96. package/components/pagination/index.umd.cjs +1 -1
  97. package/components/progress/index.esm.js +353 -148
  98. package/components/progress/index.umd.cjs +3 -3
  99. package/components/property-editor/index.esm.js +157 -153
  100. package/components/property-editor/index.umd.cjs +1 -1
  101. package/components/property-panel/index.esm.js +1825 -871
  102. package/components/property-panel/index.umd.cjs +12 -5
  103. package/components/query-solution/index.css +1 -1
  104. package/components/query-solution/index.esm.js +6075 -3862
  105. package/components/query-solution/index.umd.cjs +13 -6
  106. package/components/response-layout/index.esm.js +1 -1
  107. package/components/response-layout/index.umd.cjs +1 -1
  108. package/components/schema-selector/index.esm.js +2603 -2376
  109. package/components/schema-selector/index.umd.cjs +5 -5
  110. package/components/search-box/index.esm.js +244 -72
  111. package/components/search-box/index.umd.cjs +1 -1
  112. package/components/section/index.esm.js +134 -133
  113. package/components/section/index.umd.cjs +2 -2
  114. package/components/smoke-detector/index.esm.js +179 -8
  115. package/components/smoke-detector/index.umd.cjs +1 -1
  116. package/components/sort-condition-editor/index.css +1 -0
  117. package/components/sort-condition-editor/index.esm.js +9488 -4
  118. package/components/sort-condition-editor/index.umd.cjs +427 -1
  119. package/components/splitter/index.esm.js +1172 -142
  120. package/components/splitter/index.umd.cjs +1 -1
  121. package/components/step/index.esm.js +47 -48
  122. package/components/step/index.umd.cjs +1 -1
  123. package/components/tabs/index.esm.js +490 -419
  124. package/components/tabs/index.umd.cjs +1 -1
  125. package/components/text/index.esm.js +217 -73
  126. package/components/text/index.umd.cjs +1 -1
  127. package/components/textarea/index.esm.js +29 -27
  128. package/components/textarea/index.umd.cjs +2 -2
  129. package/components/transfer/index.esm.js +762 -544
  130. package/components/transfer/index.umd.cjs +5 -5
  131. package/components/tree-grid/index.esm.js +287 -283
  132. package/components/tree-grid/index.umd.cjs +1 -1
  133. package/components/tree-view/index.esm.js +326 -157
  134. package/components/tree-view/index.umd.cjs +1 -1
  135. package/components/uploader/index.esm.js +1125 -634
  136. package/components/uploader/index.umd.cjs +2 -2
  137. package/components/verify-detail/index.esm.js +359 -106
  138. package/components/verify-detail/index.umd.cjs +1 -1
  139. package/components/video/index.esm.js +222 -89
  140. package/components/video/index.umd.cjs +1 -1
  141. package/components/weather/index.esm.js +290 -199
  142. package/components/weather/index.umd.cjs +1 -1
  143. package/designer/data-grid/index.esm.js +5798 -4905
  144. package/designer/data-grid/index.umd.cjs +16 -9
  145. package/designer/drawer/index.esm.js +576 -567
  146. package/designer/drawer/index.umd.cjs +2 -2
  147. package/designer/dynamic-form/index.esm.js +1418 -1154
  148. package/designer/dynamic-form/index.umd.cjs +8 -1
  149. package/designer/farris-designer.all.esm.js +11332 -10754
  150. package/designer/farris-designer.all.umd.cjs +17 -17
  151. package/designer/list-view/index.esm.js +647 -647
  152. package/designer/list-view/index.umd.cjs +6 -6
  153. package/designer/modal/index.esm.js +29 -137
  154. package/designer/modal/index.umd.cjs +1 -1
  155. package/designer/radio-group/index.esm.js +2 -3
  156. package/designer/radio-group/index.umd.cjs +1 -1
  157. package/designer/response-toolbar/index.esm.js +1 -1
  158. package/designer/response-toolbar/index.umd.cjs +1 -1
  159. package/designer/section/index.esm.js +1 -6
  160. package/designer/section/index.umd.cjs +1 -1
  161. package/designer/tabs/index.esm.js +2848 -2556
  162. package/designer/tabs/index.umd.cjs +2 -2
  163. package/designer/time-picker/index.esm.js +2 -2
  164. package/designer/time-picker/index.umd.cjs +1 -1
  165. package/designer/tree-grid/index.esm.js +826 -465
  166. package/designer/tree-grid/index.umd.cjs +1 -1
  167. package/farris.all.esm.js +75302 -73138
  168. package/farris.all.umd.cjs +94 -94
  169. package/index.css +1 -1
  170. package/package.json +1 -1
  171. package/types/accordion/src/accordion.props.d.ts +1 -0
  172. package/types/accordion/src/components/accordion-item.props.d.ts +1 -0
  173. package/types/avatar/src/avatar.props.d.ts +1 -0
  174. package/types/binding-selector/index.d.ts +54 -0
  175. package/types/binding-selector/src/binding-selector.props.d.ts +1 -0
  176. package/types/button-group/index.d.ts +0 -15
  177. package/types/button-group/src/button-group.props.d.ts +1 -0
  178. package/types/code-editor/index.d.ts +1 -0
  179. package/types/code-editor/src/code-textbox.component.d.ts +6 -6
  180. package/types/code-editor/src/code-textbox.props.d.ts +2 -0
  181. package/types/color-picker/index.d.ts +15 -0
  182. package/types/color-picker/src/color-picker.props.d.ts +1 -0
  183. package/types/combo-list/src/composition/use-data-source.d.ts +2 -1
  184. package/types/combo-tree/src/combo-tree.props.d.ts +1 -0
  185. package/types/component/index.d.ts +2 -0
  186. package/types/component/src/component.props.d.ts +8 -0
  187. package/types/components.d.ts +7 -0
  188. package/types/condition/index.d.ts +55 -0
  189. package/types/data-grid/index.d.ts +5 -2
  190. package/types/data-grid/src/data-grid.component.d.ts +2 -1
  191. package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
  192. package/types/data-view/composition/appearance/use-cell-position.d.ts +1 -1
  193. package/types/data-view/composition/types.d.ts +5 -1
  194. package/types/data-view/composition/visualization/use-virtual-scroll.d.ts +2 -2
  195. package/types/data-view/composition/visualization/use-visual-data-bound.d.ts +3 -2
  196. package/types/data-view/composition/visualization/use-visual-data-row.d.ts +2 -1
  197. package/types/designer-toolbox/index.d.ts +3 -0
  198. package/types/designer-toolbox/src/toolbox.component.d.ts +14 -0
  199. package/types/designer-toolbox/src/toolbox.props.d.ts +29 -0
  200. package/types/designer-toolbox/src/types.d.ts +21 -0
  201. package/types/designer.d.ts +13 -0
  202. package/types/dropdown/index.d.ts +6 -27
  203. package/types/dropdown/src/dropdown.item.component.d.ts +1 -1
  204. package/types/dropdown/src/dropdown.props.d.ts +1 -0
  205. package/types/dynamic-form/designer.d.ts +1 -3
  206. package/types/dynamic-form/index.d.ts +3 -9
  207. package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.component.d.ts +3 -3
  208. package/types/dynamic-resolver/index.d.ts +0 -3
  209. package/types/dynamic-resolver/src/resolver/property-config/property-config-resolver-design.d.ts +1 -1
  210. package/types/dynamic-resolver/src/resolver/property-config/property-config-resolver.d.ts +1 -1
  211. package/types/dynamic-resolver/src/resolver/property-config/use-property-config-resolver.d.ts +2 -2
  212. package/types/dynamic-resolver/src/resolver/schema/schema-resolver-design.d.ts +1 -1
  213. package/types/dynamic-resolver/src/resolver/schema/schema-resolver.d.ts +1 -1
  214. package/types/dynamic-view/src/components/maps.d.ts +104 -92
  215. package/types/{binding-selector/designer.d.ts → expression-editor/index.d.ts} +6 -6
  216. package/types/filter-condition-editor/index.d.ts +9 -0
  217. package/types/filter-condition-editor/src/components/filter-condition-grid.component.d.ts +12 -12
  218. package/types/filter-condition-editor/src/components/sort-editor-grid.component.d.ts +12 -12
  219. package/types/filter-condition-editor/src/filter-condition-editor.props.d.ts +1 -0
  220. package/types/flow-canvas/index.d.ts +3 -0
  221. package/types/flow-canvas/src/components/flow-node-item.component.d.ts +8 -0
  222. package/types/flow-canvas/src/components/flow-node-item.props.d.ts +3 -0
  223. package/types/flow-canvas/src/composition/types.d.ts +42 -0
  224. package/types/flow-canvas/src/composition/use-bezier-curve.d.ts +2 -0
  225. package/types/flow-canvas/src/composition/use-connections.d.ts +2 -0
  226. package/types/flow-canvas/src/composition/use-curve.d.ts +4 -0
  227. package/types/flow-canvas/src/composition/use-drawing-bezier.d.ts +2 -0
  228. package/types/flow-canvas/src/composition/use-drawing.d.ts +4 -0
  229. package/types/flow-canvas/src/flow-canvas.component.d.ts +8 -0
  230. package/types/flow-canvas/src/flow-canvas.props.d.ts +3 -0
  231. package/types/image-cropper/src/image-cropper.props.d.ts +1 -0
  232. package/types/index.d.ts +1 -0
  233. package/types/json-editor/src/json-editor.props.d.ts +1 -0
  234. package/types/layout/index.d.ts +0 -1
  235. package/types/layout/src/components/layout-pane.props.d.ts +1 -0
  236. package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +2 -0
  237. package/types/layout/src/designer/layout-pane.design.component.d.ts +8 -0
  238. package/types/layout/src/designer/layout-use-designer-rules.d.ts +2 -0
  239. package/types/layout/src/designer/layout.design.component.d.ts +8 -0
  240. package/types/layout/src/layout.props.d.ts +1 -0
  241. package/types/layout/src/schema/schema-mapper.d.ts +2 -0
  242. package/types/layout/src/schema/schema-resolver.d.ts +2 -0
  243. package/types/list-nav/index.d.ts +5 -24
  244. package/types/list-nav/src/designer/use-designer-rules.d.ts +2 -0
  245. package/types/list-nav/src/list-nav.props.d.ts +1 -0
  246. package/types/list-nav/src/property-config/list-nav.property-config.d.ts +8 -0
  247. package/types/list-nav/src/schema/schema-mapper.d.ts +2 -0
  248. package/types/list-nav/src/schema/schema-resolver.d.ts +2 -0
  249. package/types/list-view/index.d.ts +0 -1
  250. package/types/list-view/src/composition/use-draggable.d.ts +1 -1
  251. package/types/lookup/index.d.ts +1 -1
  252. package/types/lookup/src/components/favorite/lookup-favorite.component.d.ts +1 -1
  253. package/types/lookup/src/components/popup-container.component.d.ts +6 -6
  254. package/types/menu-lookup/src/menu-lookup.props.d.ts +1 -0
  255. package/types/modal/designer.d.ts +0 -2
  256. package/types/nav/index.d.ts +20 -24
  257. package/types/nav/src/nav.props.d.ts +1 -0
  258. package/types/number-range/src/number-range.props.d.ts +1 -0
  259. package/types/order/index.d.ts +5 -36
  260. package/types/order/src/designer/order.design.component.d.ts +1 -1
  261. package/types/order/src/order.props.d.ts +1 -0
  262. package/types/page-footer/index.d.ts +2 -0
  263. package/types/page-footer/src/page-footer.props.d.ts +1 -0
  264. package/types/pagination/index.d.ts +0 -15
  265. package/types/pagination/src/pagination.props.d.ts +1 -0
  266. package/types/progress/src/progress.props.d.ts +1 -0
  267. package/types/query-solution/index.d.ts +2 -1
  268. package/types/radio-group/designer.d.ts +1 -2
  269. package/types/search-box/index.d.ts +17 -1
  270. package/types/search-box/src/search-box.props.d.ts +1 -0
  271. package/types/section/designer.d.ts +0 -1
  272. package/types/smoke-detector/index.d.ts +2 -0
  273. package/types/smoke-detector/src/smoke-detector.props.d.ts +1 -0
  274. package/types/sort-condition-editor/index.d.ts +7 -2
  275. package/types/sort-condition-editor/src/sort-condition-editor.props.d.ts +1 -0
  276. package/types/splitter/index.d.ts +0 -1
  277. package/types/splitter/src/components/splitter-pane.props.d.ts +1 -0
  278. package/types/splitter/src/splitter.props.d.ts +1 -0
  279. package/types/tabs/designer.d.ts +0 -1
  280. package/types/tabs/index.d.ts +1 -0
  281. package/types/text/index.d.ts +20 -24
  282. package/types/text/src/text.props.d.ts +1 -0
  283. package/types/transfer/src/transfer.props.d.ts +1 -0
  284. package/types/tree-grid/src/components/data/data-area.component.d.ts +2 -2
  285. package/types/tree-grid/src/tree-grid.props.d.ts +1 -0
  286. package/types/tree-view/src/components/data/tree-area.component.d.ts +1 -1
  287. package/types/tree-view/src/tree-view.props.d.ts +2 -0
  288. package/types/uploader/src/uploader.props.d.ts +1 -0
  289. package/types/verify-detail/index.d.ts +5 -58
  290. package/types/verify-detail/src/designer/verify-detail.design.component.d.ts +8 -8
  291. package/types/verify-detail/src/verify-detail.props.d.ts +1 -0
  292. package/types/video/index.d.ts +20 -24
  293. package/types/video/src/video.props.d.ts +1 -0
  294. package/components/dynamic-form/index.css +0 -1
  295. package/designer/accordion/index.esm.js +0 -257
  296. package/designer/accordion/index.umd.cjs +0 -1
  297. package/designer/avatar/index.esm.js +0 -1460
  298. package/designer/avatar/index.umd.cjs +0 -1
  299. package/designer/binding-selector/index.esm.js +0 -792
  300. package/designer/binding-selector/index.umd.cjs +0 -1
  301. package/designer/button-group/index.esm.js +0 -282
  302. package/designer/button-group/index.umd.cjs +0 -1
  303. package/designer/code-editor/index.esm.js +0 -75
  304. package/designer/code-editor/index.umd.cjs +0 -1
  305. package/designer/color-picker/index.esm.js +0 -1096
  306. package/designer/color-picker/index.umd.cjs +0 -1
  307. package/designer/combo-list/index.esm.js +0 -1095
  308. package/designer/combo-list/index.umd.cjs +0 -1
  309. package/designer/combo-tree/index.esm.js +0 -186
  310. package/designer/combo-tree/index.umd.cjs +0 -1
  311. package/designer/component/index.css +0 -1
  312. package/designer/component/index.esm.js +0 -5002
  313. package/designer/component/index.umd.cjs +0 -1
  314. package/designer/condition/index.esm.js +0 -1899
  315. package/designer/condition/index.umd.cjs +0 -1
  316. package/designer/dropdown/index.esm.js +0 -261
  317. package/designer/dropdown/index.umd.cjs +0 -1
  318. package/designer/expression-editor/index.css +0 -1
  319. package/designer/expression-editor/index.esm.js +0 -7006
  320. package/designer/expression-editor/index.umd.cjs +0 -427
  321. package/designer/filter-condition-editor/index.css +0 -1
  322. package/designer/filter-condition-editor/index.esm.js +0 -4795
  323. package/designer/filter-condition-editor/index.umd.cjs +0 -1
  324. package/designer/html-template/index.esm.js +0 -718
  325. package/designer/html-template/index.umd.cjs +0 -1
  326. package/designer/image-cropper/index.esm.js +0 -765
  327. package/designer/image-cropper/index.umd.cjs +0 -1
  328. package/designer/json-editor/index.esm.js +0 -83
  329. package/designer/json-editor/index.umd.cjs +0 -1
  330. package/designer/language-textbox/index.esm.js +0 -783
  331. package/designer/language-textbox/index.umd.cjs +0 -8
  332. package/designer/layout/index.esm.js +0 -430
  333. package/designer/layout/index.umd.cjs +0 -1
  334. package/designer/list-nav/index.esm.js +0 -802
  335. package/designer/list-nav/index.umd.cjs +0 -1
  336. package/designer/lookup/index.esm.js +0 -2083
  337. package/designer/lookup/index.umd.cjs +0 -1
  338. package/designer/menu-lookup/index.esm.js +0 -46
  339. package/designer/menu-lookup/index.umd.cjs +0 -1
  340. package/designer/nav/index.esm.js +0 -284
  341. package/designer/nav/index.umd.cjs +0 -1
  342. package/designer/number-range/index.esm.js +0 -1616
  343. package/designer/number-range/index.umd.cjs +0 -1
  344. package/designer/order/index.css +0 -1
  345. package/designer/order/index.esm.js +0 -2196
  346. package/designer/order/index.umd.cjs +0 -18
  347. package/designer/page-footer/index.esm.js +0 -290
  348. package/designer/page-footer/index.umd.cjs +0 -1
  349. package/designer/page-header/index.esm.js +0 -1003
  350. package/designer/page-header/index.umd.cjs +0 -1
  351. package/designer/pagination/index.esm.js +0 -591
  352. package/designer/pagination/index.umd.cjs +0 -1
  353. package/designer/progress/index.esm.js +0 -213
  354. package/designer/progress/index.umd.cjs +0 -1
  355. package/designer/search-box/index.esm.js +0 -245
  356. package/designer/search-box/index.umd.cjs +0 -1
  357. package/designer/smoke-detector/index.css +0 -1
  358. package/designer/smoke-detector/index.esm.js +0 -178
  359. package/designer/smoke-detector/index.umd.cjs +0 -1
  360. package/designer/sort-condition-editor/index.esm.js +0 -138
  361. package/designer/sort-condition-editor/index.umd.cjs +0 -1
  362. package/designer/splitter/index.esm.js +0 -1120
  363. package/designer/splitter/index.umd.cjs +0 -1
  364. package/designer/step/index.esm.js +0 -226
  365. package/designer/step/index.umd.cjs +0 -1
  366. package/designer/text/index.esm.js +0 -147
  367. package/designer/text/index.umd.cjs +0 -1
  368. package/designer/transfer/index.esm.js +0 -254
  369. package/designer/transfer/index.umd.cjs +0 -1
  370. package/designer/tree-view/index.esm.js +0 -313
  371. package/designer/tree-view/index.umd.cjs +0 -1
  372. package/designer/uploader/index.esm.js +0 -1190
  373. package/designer/uploader/index.umd.cjs +0 -2
  374. package/designer/verify-detail/index.esm.js +0 -258
  375. package/designer/verify-detail/index.umd.cjs +0 -1
  376. package/designer/video/index.esm.js +0 -136
  377. package/designer/video/index.umd.cjs +0 -1
  378. package/designer/weather/index.css +0 -1
  379. package/designer/weather/index.esm.js +0 -6244
  380. package/designer/weather/index.umd.cjs +0 -14
  381. package/types/accordion/designer.d.ts +0 -44
  382. package/types/avatar/designer.d.ts +0 -29
  383. package/types/button-group/designer.d.ts +0 -29
  384. package/types/code-editor/designer.d.ts +0 -5
  385. package/types/color-picker/designer.d.ts +0 -29
  386. package/types/combo-list/designer.d.ts +0 -29
  387. package/types/combo-list/src/designer/combo-list.design.props.d.ts +0 -6
  388. package/types/combo-tree/designer.d.ts +0 -5
  389. package/types/component/designer.d.ts +0 -35
  390. package/types/condition/designer.d.ts +0 -56
  391. package/types/dropdown/designer.d.ts +0 -6
  392. package/types/dynamic-form/src/composition/use-input-type-resolver.d.ts +0 -11
  393. package/types/expression-editor/designer.d.ts +0 -9
  394. package/types/filter-condition-editor/designer.d.ts +0 -10
  395. package/types/html-template/designer.d.ts +0 -31
  396. package/types/html-template/src/designer/html-template.design.props.d.ts +0 -9
  397. package/types/image-cropper/designer.d.ts +0 -4
  398. package/types/json-editor/designer.d.ts +0 -5
  399. package/types/menu-lookup/designer.d.ts +0 -5
  400. package/types/nav/designer.d.ts +0 -6
  401. package/types/number-range/designer.d.ts +0 -29
  402. package/types/order/designer.d.ts +0 -6
  403. package/types/page-footer/designer.d.ts +0 -6
  404. package/types/page-header/src/designer/page-header.design.props.d.ts +0 -20
  405. package/types/pagination/designer.d.ts +0 -29
  406. package/types/progress/designer.d.ts +0 -29
  407. package/types/search-box/designer.d.ts +0 -52
  408. package/types/smoke-detector/designer.d.ts +0 -6
  409. package/types/sort-condition-editor/designer.d.ts +0 -9
  410. package/types/splitter/designer.d.ts +0 -32
  411. package/types/step/designer.d.ts +0 -6
  412. package/types/text/designer.d.ts +0 -6
  413. package/types/transfer/designer.d.ts +0 -35
  414. package/types/tree-view/designer.d.ts +0 -29
  415. package/types/uploader/designer.d.ts +0 -141
  416. package/types/verify-detail/designer.d.ts +0 -6
  417. package/types/video/designer.d.ts +0 -6
  418. /package/{designer → components}/condition/index.css +0 -0
  419. /package/{designer → components}/uploader/index.css +0 -0
  420. /package/types/{dynamic-form/src/component/form-control/form-control.component.d.ts → list-nav/src/designer/list-nav.design.component.d.ts} +0 -0
@@ -1,7 +1,7 @@
1
- (function(re,X){typeof exports=="object"&&typeof module<"u"?X(exports,require("../../components/common/index.umd.js"),require("../../components/data-grid/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("vue"),require("@vueuse/core"),require("../../components/checkbox/index.umd.js"),require("../../components/popover/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/list-view/index.umd.js"),require("../../components/date-picker/index.umd.js"),require("../../components/number-spinner/index.umd.js"),require("../../components/search-box/index.umd.js"),require("../../components/notify/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/tags/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../dynamic-form/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/data-grid/index.umd.js","../../components/dynamic-resolver/index.umd.js","vue","@vueuse/core","../../components/checkbox/index.umd.js","../../components/popover/index.umd.js","../../components/locale/index.umd.js","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/pagination/index.umd.js","../../components/data-view/index.umd.js","../../components/button/index.umd.js","../../components/button-group/index.umd.js","../../components/list-view/index.umd.js","../../components/date-picker/index.umd.js","../../components/number-spinner/index.umd.js","../../components/search-box/index.umd.js","../../components/notify/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/designer-canvas/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/tags/index.umd.js","../../components/tree-view/index.umd.js","../../components/field-selector/index.umd.js","../dynamic-form/index.umd.js"],X):(re=typeof globalThis<"u"?globalThis:re||self,X(re["data-grid"]={},re.common,re.FDataGrid,re.dynamicResolver,re.Vue,re.VueUseCore,re.checkbox,re.FPopover,re.locale,null,re.LodashES,null,null,null,re.dataView,re.FButton,re.FButtonGroup,null,null,null,null,re.notify,re.condition,re.dynamicForm,re.designerCanvas,re.designer$1,re.propertyPanel,re.FTags,re.FTreeView,re.fieldSelector))})(this,function(re,X,Je,Ge,l,mn,Ct,pn,Ae,nl,ze,il,ol,ll,ke,Bt,hn,rl,al,sl,dl,wt,de,gn,j,je,Le,yn,vn,ut){"use strict";var el=Object.defineProperty;var tl=(re,X,Je)=>X in re?el(re,X,{enumerable:!0,configurable:!0,writable:!0,value:Je}):re[X]=Je;var ie=(re,X,Je)=>tl(re,typeof X!="symbol"?X+"":X,Je);const bn={customClass:{type:String,default:""},appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:n=>!0},beforeEndEditCell:{type:Function,default:()=>!0},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[],halign:"center"}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},enableCommands:{type:Boolean,default:!1},enableFilter:{type:Boolean,default:!1},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},mergeCell:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:36,showEllipsis:!0,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1,keepSelectingOnClick:!0}},selectionValues:{type:Array,default:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1},emptyTemplate:{type:Object},beforeUpdate:{type:Function}},Cn=X.excludeProperties(Object.assign({},bn,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function wn(n,e,t,i,o){const{getGridHeaderCells:r}=o,a=120,s=50,c=l.computed(()=>{var h;return((h=n.rowNumber)==null?void 0:h.enable)||!1}),m=l.computed(()=>{var h,b;return((h=n.selection)==null?void 0:h.multiSelect)||((b=n.selection)==null?void 0:b.showCheckbox)||!1}),u=l.computed(()=>{var h;return 0+(c.value?((h=n.rowNumber)==null?void 0:h.width)||32:0)+(m.value?s:0)}),d=l.computed(()=>{var h;return(h=n.columnOption)==null?void 0:h.fitColumns}),f=l.computed(()=>{var h;return d.value&&((h=n.columnOption)==null?void 0:h.fitMode)||"none"});function g(h,b,M){const B=parseInt(h.width,10)/100;return M*B}function p(h,b,M){return typeof h.width=="string"?g(h,b,M):h.width||a}function y(h,b){const M=[],B=[];let P=0;h.value.primaryColumns.forEach(I=>{typeof I.width=="string"?B.push(I):(I.width=I.width||a,P+=I.width,M.push(I))});const E=b*(M.length/h.value.primaryColumns.length);M.forEach(I=>{const _=E*(I.width/P);I.actualWidth=_,h.value.primaryColumnsWidth+=I.actualWidth});const N=b-E;B.forEach(I=>{const _=g(I,h.value,N);I.actualWidth=_,h.value.primaryColumnsWidth+=I.actualWidth})}function T(h,b){const M=[],B=[],P=new WeakMap;let E=0,N=0;if(h.value.primaryColumns.forEach(_=>{if(typeof _.width=="string"){const x=g(_,h.value,b);P.set(_,x),E+=x,B.push(_)}else _.width=_.width||a,N+=_.width,M.push(_)}),b-E>N){const _=b-E;B.forEach(x=>{x.actualWidth=P.get(x)||a,h.value.primaryColumnsWidth+=x.actualWidth}),M.forEach(x=>{x.actualWidth=_*(x.width/N),h.value.primaryColumnsWidth+=x.actualWidth})}else y(h,b)}function S(h,b){h.value.primaryColumns.forEach(M=>{M.actualWidth=p(M,h.value,b),h.value.primaryColumnsWidth+=M.actualWidth})}const C={expand:T,none:S,percentage:y};function F(h){h.value.leftHeaderColumns=Array.from(r(h.value.leftColumns).values()),h.value.primaryHeaderColumns=Array.from(r(h.value.primaryColumns).values()),h.value.rightHeaderColumns=Array.from(r(h.value.rightColumns).values())}function V(h){h.value.leftColumnsWidth=0,h.value.primaryColumnsWidth=0,h.value.rightColumnsWidth=0,h.value.leftColumns.forEach(b=>{h.value.leftColumnsWidth+=b.actualWidth||0}),h.value.primaryColumns.forEach(b=>{h.value.primaryColumnsWidth+=b.actualWidth||0}),h.value.rightColumns.forEach(b=>{h.value.rightColumnsWidth+=b.actualWidth||0}),h.value=Object.assign({},h.value)}function v(h,b,M){var x;let B=0;const P=h.value.primaryColumns,E=h.value.rightColumns;h.value.rightColumns.forEach(G=>{G.actualWidth=p(G,h.value,b),B+=G.actualWidth});const N=M-B,I=C[f.value];if(I&&I(h,N),h.value.primaryColumnsWidth+B<=M)return h.value.primaryColumns=[...P,...E],h.value.primaryColumnsWidth+=B,h.value.rightColumns=[],h.value.rightColumnsWidth=0,!0;const _=new Map;return _.set("primary",[]),_.set("right",[]),h.value.primaryColumns.reduce((G,k)=>{var $,Y;return k.fixed==="right"?($=G.get("right"))==null||$.push(k):(Y=G.get("primary"))==null||Y.push(k),G},_),(x=_.get("right"))!=null&&x.length&&(h.value.primaryColumns=[..._.get("primary")||[]],h.value.rightColumns=[..._.get("right")||[]]),h.value.primaryColumnsWidth=0,h.value.rightColumnsWidth=0,!1}function w(){if(t.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const h=t.value.clientWidth-u.value;e.value.leftColumns.forEach(M=>{M.actualWidth=p(M,e.value,h),e.value.leftColumnsWidth+=M.actualWidth});const b=h-e.value.leftColumnsWidth;if(v(e,h,b))i.value=b;else{e.value.rightColumns.forEach(P=>{P.actualWidth=p(P,e.value,h),e.value.rightColumnsWidth+=P.actualWidth});const M=h-e.value.leftColumnsWidth-e.value.rightColumnsWidth,B=C[f.value];B&&B(e,M),i.value=M}F(e),e.value=Object.assign({},e.value)}}return l.watch(()=>{var h;return(h=n.columnOption)==null?void 0:h.fitColumns},(h,b)=>{h!==b&&h&&w()}),l.watch(f,(h,b)=>{h!==b&&d.value&&w()}),{calculateColumnHeaders:F,calculateColumnsSize:w,calculateColumnsWidth:V}}const Sn="";function Mn(n){const t={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},i=l.ref(t);function o(){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=l.ref(n.summary),a=l.computed(()=>{const v=r.value;return(v==null?void 0:v.groupFields)||[]});function s(){i.value.rightColumns.forEach(h=>{h.showSetting=!1}),i.value.primaryColumns.forEach(h=>{h.showSetting=!1});const v=i.value.rightColumns,w=i.value.primaryColumns;v.length>0?v[v.length-1].showSetting=!0:w.length>0&&(w[w.length-1].showSetting=!0)}function c(v){o();const w=new Map;return a.value&&a.value.reduce((h,b)=>(h.set(b,!0),h),w),v.reduce((h,b)=>(b.filter=b.filter||Sn,b.fixed==="left"?(i.value.leftColumns.push(b),i.value.leftColumnsMap.set(b.field,b),i.value.leftColumnsWidth+=b.actualWidth):b.fixed==="right"?(i.value.rightColumns.push(b),i.value.rightColumnsMap.set(b.field,b),i.value.rightColumnsWidth+=b.actualWidth):(i.value.primaryColumns.push(b),i.value.primaryColumnsMap.set(b.field,b),i.value.primaryColumnsWidth+=b.actualWidth),w.has(b.field)&&i.value.summaryColumns.push(b),h),i),s(),i}c(n.columns);const m=l.computed(()=>i.value.leftColumns.length>0),u=l.computed(()=>i.value.rightColumns.length>0);function d(v,w){return w.sortable&&w.sort&&w.sort!=="none"&&v.push(w),v}function f(v,w){return v.sortOrder=v.sortOrder||0,w.sortOrder=w.sortOrder||0,v.sortOrder===w.sortOrder?0:v.sortOrder<w.sortOrder?-1:1}function g(v,w){return v.sortOrder=v.sortOrder||0,w.sortOrder=w.sortOrder||0,v.sortOrder===w.sortOrder?0:v.sortOrder<w.sortOrder?1:-1}function p(v,w){return w.filterable&&v.push(w),v}function y(){const v=[];return i.value.leftColumns.reduce(p,v),i.value.primaryColumns.reduce(p,v),i.value.rightColumns.reduce(p,v),v}function T(){const v=[];i.value.leftColumns.reduce(d,v),i.value.primaryColumns.reduce(d,v),i.value.rightColumns.reduce(d,v);const w=Math.max(...v.map(h=>h.sortOrder||0));return v.sort(g).map(h=>{const b=h.sortOrder||w+1;return h.sortOrder=b,h}).sort(f).map((h,b)=>{const M=b+1;return h.sortOrder=M,h})}function S(v,w,h){const b=v.map(M=>{const B=h.getSorterByColumn(M),P=M.sort==="asc",E=M.sort==="desc",N=P?B.ascend:E?B.decend:void 0;return{field:M.field,compare:N}});w.setSorters(b)}function C(v,w){const h=T();S(h,v,w)}function F(v){}function V(v){}return{applyColumnSorter:C,collectionFilterableColumns:y,applySortableColumns:S,collectionSortableColumns:T,columnContext:i,hasLeftFixedColumn:m,hasRightFixedColumn:u,updateColumnRenderContext:c,updateColumnSettingIcon:s,sortFromServer:F,createSortConditions:V}}function Fn(n,e,t,i,o,r,a,s){const c=l.ref(i.value-1+o),m=l.ref(0),{renderDataRow:u}=r,d=a?a.renderGroupRow:u,f=s?s.renderSummaryRow:u;function g(T){let S=u;return T.__fv_data_grid_group_row__&&(S=d),T.__fv_data_grid_group_summary__&&(S=f),S}function p(T,S,C,F){const{dataView:V}=t,v=[];if(V.value.length>0){const w=F?Date.now().toString():"";let h=T,b=0;const M=S-T+1;for(;v.length<M&&h<V.value.length;){const B=V.value[h],P=V.value[h-1]||C,E=v[b-1],N=P?(P.__fv_data_position__||0)+(P.__fv_data_height__||0):0,_=g(B)(B,P,E,h,N,e.value,v);_.refreshKey=w,v.push(_),b++,h++}}return m.value=v.length>0?v[0].index:0,c.value=v.length>0?v[v.length-1].index:0,v}function y(T,S,C){const F=S.groupField||"",{groupValue:V,raw:v}=S;t[T](F,V,v.groupParents||[]);const{dataView:w}=t,h=C[0].index,b=Math.min(h+i.value+o+1,w.value.length-1);return p(h,b)}return{getVisualData:p,maxVisibleRowIndex:c,minVisibleRowIndex:m,toggleGroupRow:y}}var Ne=(n=>(n[n.readonly=0]="readonly",n[n.editable=1]="editable",n[n.editing=2]="editing",n))(Ne||{}),Ue=(n=>(n[n.initial=0]="initial",n[n.editing=1]="editing",n))(Ue||{}),et=(n=>(n[n.data=0]="data",n[n.group=1]="group",n[n.summary=2]="summary",n))(et||{}),Oe=(n=>(n[n.none=0]="none",n[n.filterable=1]="filterable",n[n.sortable=2]="sortable",n[n.filtered=4]="filtered",n[n.sorted=8]="sorted",n[n.ascending=16]="ascending",n[n.descending=32]="descending",n))(Oe||{}),De=(n=>(n.DATE="date",n.DATE_TIME="datetime",n.NUMBER="number",n.ENUM="enum",n.IMAGE="image",n.BOOLEAN="boolean",n.BOOLEAN2="boolean2",n.TIMEAGO="timeago",n.NONE="none",n.CUSTOM="custom",n.MULTI_LINGUAL="multilingual",n))(De||{});const Tn="__setting__",Ot="__command__",_n=150,xn="right",Rt="commands";function Vn(n,e,t){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:o,shouldShowHorizontalScrollbar:r}=t;function a(){return r.value&&l.createVNode("div",{class:"fv-grid-horizontal-scroll"},[l.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:s=>o(s,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function In(n){function e(s,c){switch(s.command){case"edit":case"remove":return c.status===Ue.initial;case"accept":case"cancel":return c.status===Ue.editing;default:return!s.hidden}}function t(s,c,m,u){var d,f,g,p,y;switch((d=s.onClick)==null||d.call(s,c,m.dataIndex,m),s.command){case"edit":m.status,Ue.editing,(g=(f=n.commandOption)==null?void 0:f.onClickEditCommand)==null||g.call(f,u,m,s,c);break;case"accept":case"cancel":m.status,Ue.initial;break;case"remove":(y=(p=n.commandOption)==null?void 0:p.onClickDeleteCommand)==null||y.call(p,u,m,s,c);break}}function i(s){return s==="编辑"?Ae.LocaleService.getLocaleValue("datagrid.commandColumn.edit"):s==="确定"?Ae.LocaleService.getLocaleValue("datagrid.commandColumn.accept"):s==="取消"?Ae.LocaleService.getLocaleValue("datagrid.commandColumn.cancel"):s==="删除"?Ae.LocaleService.getLocaleValue("datagrid.commandColumn.remove"):s}function o(s,c){const{column:m}=s;return m.commands&&m.commands.map((u,d)=>d?e(u,c)&&l.createVNode(Bt,{class:"ml-1",type:u.type,size:u.size||"small",onClick:f=>t(u,f,c,s),style:{"margin-bottom":"3px"}},{default:()=>[l.createTextVNode(" "),i(u.text),l.createTextVNode(" ")]}):e(u,c)&&l.createVNode(Bt,{type:u.type,size:u.size||"small",onClick:f=>t(u,f,c,s),style:{"margin-bottom":"3px"}},{default:()=>[l.createTextVNode(" "),i(u.text),l.createTextVNode(" ")]}))}function r(s,c,m,u){var d,f,g;(d=c.onClick)==null||d.call(c,s,m.dataIndex,m),(g=(f=n.commandOption)==null?void 0:f.onHandleAction)==null||g.call(f,u,m,c,s)}function a(s,c){var d,f,g;const{column:m}=s;return((d=m==null?void 0:m.commands)==null?void 0:d.find(p=>p.command))?o(s,c):l.createVNode(hn,{data:m.commands,count:typeof((f=n.commandOption)==null?void 0:f.count)!="number"?2:(g=n.commandOption)==null?void 0:g.count,size:"small",placement:"auto",onClick:p=>{r(p.payload,p.button,c,s)}},null)}return{renderCommandColumn:a}}function kn(n){const e=l.ref(n.minHeight),t=l.ref(n.minWidth),i=l.ref(n.height),o=l.ref(n.width),r=l.computed(()=>i.value<=0?0:Math.max(i.value,e.value)),a=l.computed(()=>o.value<=0?0:Math.max(o.value,t.value));return l.watch([()=>n.height,()=>n.width,()=>n.minHeight,()=>n.minWidth],([c,m,u,d])=>{e.value=Number(u),t.value=Number(d),i.value=Number(c),o.value=Number(m)}),{containerStyleObject:l.computed(()=>({height:r.value>0?`${r.value}px`:n.fit?"100%":"",width:a.value>0?`${a.value}px`:n.fit?"100%":"",flex:"1 1 0"}))}}function En(n){var r,a;const e=l.ref(((r=n.commandOption)==null?void 0:r.enable)||!1),t=l.ref(((a=n.commandOption)==null?void 0:a.commands)||[]),i=l.computed(()=>Ae.LocaleService.getLocaleValue("datagrid.commandColumn.title"));function o(s){var c;if(e.value&&!(s.value.findIndex(u=>u.dataType===Rt)>-1)){const u={field:Ot,title:i.value,width:_n,fixed:xn,dataType:Rt,commands:t.value,resizable:!1,halign:((c=n.commandOption)==null?void 0:c.halign)||"left",visible:!0,formatter:n.commandOption.formatter&&typeof n.commandOption.formatter?(d,f)=>n.commandOption.formatter(d,f):null};n.commandOption.formatter&&typeof n.commandOption.formatter!="function"&&(u.formatter=(d,f)=>n.commandOption.formatter(d,f)),s.value.push(u)}}return{applyCommands:o}}function Pn(n,e){var m;const t=l.ref((m=n.columnOption)==null?void 0:m.groups);function i(u,d,f,g,p){const y={actualWidth:0,children:[],depth:1,field:u.field,layer:1,left:0,parent:f,resizable:!0,title:u.title||"",status:Oe.none,popoverRef:l.ref(),showPopover:!1,column:null,sortType:"none"},T=g||y;if(u.group){let S=1;u.group.reduce((C,F)=>{if(typeof F=="string"){const V=d.get(F);V&&(p.fieldToRootMap.set(F,T),C.actualWidth+=V.actualWidth,C.children.push(V))}else{const V=i(F,d,C,T,p);S=Math.max(S,V.depth),C.actualWidth+=V.actualWidth,C.children.push(V)}return C},y),y.depth+=S}return e.value.headerDepth=Math.max(e.value.headerDepth,y.depth),y}function o(u){const d={groupedCells:new Map,fieldToRootMap:new Map};return t.value&&t.value.reduce((f,g)=>{const p=i(g,u,null,null,d);return f.groupedCells.set(g.field,p),f},d),d}function r(u){if(!u||u.length===0)return 0;const d=u[0];return d.children&&d.children.length>0&&(d.left=r(d.children)),d.left}function a(u,d){const f=e.value.headerDepth;u.forEach(g=>{g.layer=d?d.layer+1:1;const p=g.children&&g.children.length===0;g.depth=p?f-(g.layer-1):1,g.left=p?g.left:r(g.children),g.children&&a(g.children,g)})}function s(u,d){const f=new Map;return u.forEach(g=>{const p=d.fieldToRootMap.get(g.field),y=p!=null;y&&!f.has(p.field)&&f.set(p.field,p),y||f.set(g.field,g)}),a(Array.from(f.values())),f}function c(u){let d=new Map,f=0;if(u.reduce((g,p)=>{let y=Oe.none;y=p.sortable?y|Oe.sortable:y,y=p.filterable?y|Oe.filterable:y,y=p.sort&&p.sort!=="none"?y|Oe.sorted|(p.sort==="asc"?Oe.ascending:Oe.descending):y;const T=p.field;return g.set(T,{actualWidth:p.actualWidth||0,children:[],depth:1,layer:1,left:f,field:T,parent:null,resizable:p.resizable===void 0?!0:p.resizable,title:p.title,status:y,popoverRef:l.ref(),showPopover:!1,column:p,filterValue:null,sortType:p.sort||"none",showSetting:p.showSetting,draggable:p.draggable}),f+=p.actualWidth||0,g},d),t.value){const g=o(d);d=s(d,g)}return d}return{getGridHeaderCells:c}}function Nn(n,e){var v;const{sum:t,toFixed:i}=X.useNumberFormat(),{uuid:o}=X.useGuid(),{idField:r}=e,a=l.ref(n.summary),s=l.ref(n.group),c=l.ref(((v=n.group)==null?void 0:v.groupFields)||[]),m=l.computed(()=>{var w;return(w=n.group)==null?void 0:w.enable}),u=l.computed(()=>{var w;return(w=n.group)==null?void 0:w.showGroupPanel}),d=l.computed(()=>{const w=a.value;return(w==null?void 0:w.groupFields)||[]}),f=l.computed(()=>{const w=s.value;return w&&w.showSummary}),g=l.ref(0),p=new Map;let y=[];function T(w,h,b,M,B){const P=M[b];P&&(h.reduce((E,N,I)=>{var G;const _=N[P];let x=E.get(_);if(!x){const k=d.value.reduce(($,Y)=>($.set(Y,0),$),new Map);x={field:P,title:((G=B.get(P))==null?void 0:G.title)||P,value:_,layer:b,details:[],groupSummaries:k},E.set(_,x)}return d.value&&d.value.forEach(k=>{if(x){const $=x.groupSummaries.get(k)||0;x.groupSummaries.set(k,t([$,X.resolveField(N,k)]))}}),d.value&&d.value.forEach(k=>{if(x){const $=x.groupSummaries.get(k)||0;x.groupSummaries.set(k,i($,2))}}),x.details.push(N),E},w),b<M.length-1&&w.forEach((E,N)=>{E.nestGroup=new Map,T(E.nestGroup,E.details,b+1,M,B),E.details=[]}))}function S(w,h){return n.group&&n.group.formatter?n.group.formatter(w.value,{...w,total:h}):`${w.title}:${w.value} (${h})`}function C(w,h){const b=[];return w.forEach(M=>{const B={[r.value]:`group_of_${h?h[r.value]+"_":""}${M.field}_${M.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:M.field,__fv_data_grid_group_layer__:M.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:M.value,groupParents:[]};h&&(B.groupParents=[...h.groupParents,h]);let P=0;if(b.push(B),M.nestGroup){const E=C(M.nestGroup,B);b.push(...E),P+=E.length}if(M.details&&M.details.length&&(b.push(...M.details),P+=M.details.length),f.value){const E={__fv_data_grid_group_field__:M.field,__fv_data_grid_group_layer__:M.layer,__fv_data_grid_group_summary__:!0};E[r.value]=`summary_of_${M.field}_${M.value}`,E[M.field]=Array.from(M.groupSummaries.entries()).reduce((N,[I,_])=>`${N} ${I} total:${_} `,""),b.push(E)}M.groupSummaries&&M.groupSummaries.size&&M.groupSummaries.forEach((E,N)=>{B[N]=E}),B[M.field]=S(M,P),B.value=M.value}),b.forEach((M,B)=>{M.__fv_data_index__=B}),b}function F(w,h,b){return!w||w.length===0||!h.length?h:(w.join(","),p.clear(),y=[],h=h.filter(M=>!M.__fv_data_grid_group_row__),T(p,h,0,w,b),y=C(p),y)}function V(w){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":w.collapse}}return{collpaseGroupIconClass:V,generateGroupData:F,groupFields:c,shouldGroupingData:m,showGroupPanel:u,groupRowSize:g}}function Ht(n){const e="parent",t="layer",i="hasChildren",o=(a,s=1,c=[],m=null)=>(a=a||[],a.reduce((u,d)=>(d.id=d.id||d.data[n.idField],d[e]=m,d[t]=s,d[i]=d[i]===void 0?!1:d[i],d.data&&Object.keys(d.data).forEach(f=>{Object.keys(d).includes(f)||(d[f]=d.data[f])}),c.push(d),d.children&&d.children.length&&(d[i]=!0,o(d.children,s+1,c,d.id)),u),c),c);return{flatTreeData:o,isNestedTree:a=>a.some(s=>Array.isArray(s.children))}}function Bn(n,e,t,i){const o=l.ref(0),r=l.ref(!!n.hierarchy),{idField:a}=i,{collapseField:s,hasChildrenField:c,parentIdField:m}=t,u=new Map,d=new Map,f=new Map,{flatTreeData:g,isNestedTree:p}=Ht(n);function y(O,R){d.clear(),O.reduce((W,U)=>{const ee=U[m.value]!==void 0?U[m.value]:"";if(ee&&R.has(ee)){const ce=R.get(ee),fe=isNaN(Number(ce.__fv_layer__))?1:Number(ce.__fv_layer__);U.__fv_layer__=fe+1,U.__fv_parent_index__=ce.__fv_index__,ce.__fv_hasChildren__=!0}else U.__fv_layer__=1;const se=W.has(ee)?W.get(ee):[];return se.push(U),W.set(ee,se),W},d)}function T(O){f.clear(),O.reduce((R,W)=>{const U=W[a.value];return R.set(U,W),R},f)}function S(O){O.forEach(R=>{const W=R[a.value];R.__fv_children_index__.map(ee=>O[ee]).forEach(ee=>{ee.__fv_parents__=new Map([...R.__fv_parents__.entries(),[W,!0]])})})}function C(O){O.forEach(R=>{const W=new Set(R.__fv_children_index__);R.__fv_children_index__=[...W].sort((U,ee)=>U-ee)})}function F(O){O.forEach(R=>{const W=R.__fv_parents__;Array.from(W.keys()).map(U=>f.get(U)).forEach(U=>{U.__fv_children_index__.push(R.__fv_index__)})}),C(O)}function V(O){O.forEach(R=>{R.__fv_child_with_lines__=[],R.__fv_child_length__=R.__fv_descendant_index__.length,R.__fv_descendant_index__.map(W=>O[W]).reduce((W,U)=>(W.__fv_child_length__+=U.__fv_children_index__.length,W.__fv_child_with_lines__.push(...U.__fv_children_index__,U.__fv_index__),W),R)})}function v(O,R){return{id:O,index:R,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function w(O,R,W){Array.from(R.keys()).forEach(U=>{R.get(U).reduce((se,ce)=>{const fe=ce[a.value],pe=O.get(ce[a.value]),me=O.get(U),Pe=W.get(U);return me&&Pe&&(me.children.set(fe,pe),me.children.set(fe,pe),pe.parentId=U,pe.parentIndex=me.index,pe.parents.set(U,me)),se},O)})}function h(O){O.children.forEach(W=>{W.parents=new Map([...O.parents.entries(),[O.id,O]]),h(W)})}function b(O,R){O.filter(W=>W[m.value]===void 0||W[m.value]==="").forEach(W=>{const U=W[a.value],ee=R.get(U);h(ee)})}function M(O){Array.from(O.values()).forEach(R=>{Array.from(R.parents.values()).forEach(W=>{W.descendant.set(R.id,R)})})}function B(O){u.clear(),O.forEach((R,W)=>{const U=R[a.value];u.set(U,v(U,W))}),T(O),y(O,f),w(u,d,f),b(O,u),M(u)}function P(O){const R=O[a.value],W=u.get(R);return W&&W.children.size>0}function E(O){return O[c.value]&&!P(O)}function N(O){const R=O[a.value],W=u.get(R);return W&&W.visibleInHierarchy}function I(){o.value=Date.now()}function _(O,R){R.forEach(W=>{const U=u.get(W[a.value]),ee=u.get(O),se=f.get(O);ee&&se&&(U.visibleInHierarchy=!se[s.value]&&ee.visibleInHierarchy)}),I()}function x(O){if(d.has(O)){const W=d.get(O);_(O,W),W.map(U=>U[a.value]).forEach(U=>x(U))}}function G(O){const R=O[a.value];x(R)}function k(O,R,W=0){O.forEach(U=>{const ee=E(U),se=U.__fv_layer__<=W,ce=R==="ToCollapse"?U.__fv_layer__<=W:!(U.__fv_layer__<=W),fe=se?ce:U[s.value];U[s.value]=ee||fe});for(const[U,ee]of d.entries())_(U,ee);return O}function $(O,R){k(O,"ToCollapse",R)}function Y(O,R){k(O,"ToExpand",R)}function Q(O){O.forEach((R,W)=>{var ce;const U=R[a.value],ee=d.has(U)?(ce=d.get(U))==null?void 0:ce.map(fe=>fe.__fv_index__):[],se=v(U,W);R.__fv_graph_node__=se,R.__fv_children_index__=ee,R.__fv_descendant_index__=[...ee],R.__fv_parents__=new Map,E(R)&&(R[s.value]=!0)})}function oe(O){var U,ee;B(e.value),Q(O),S(O),F(O),n.showLines&&V(O);const W=((U=n.hierarchy)==null?void 0:U.collapseTo)!==void 0?Number((ee=n.hierarchy)==null?void 0:ee.collapseTo):0;return k(O,"ToCollapse",W),O}function Ve(O,R,W){const ee=W.value[O][a.value],se=u.get(ee);if(se){const ce=u.get(se.parentId);let fe=W.value.length-1;if(ce){const pe=Array.from(ce.children.keys()).indexOf(se.id);if(pe===ce.children.size-1){const Pe=Array.from(ce.descendant.values())[ce.descendant.size-1];fe=W.value.findIndex(Ce=>Ce[a.value]===Pe.id)+1}else{const Pe=Array.from(ce.children.values())[pe+1];fe=W.value.findIndex(Ce=>Ce[a.value]===Pe.id)}R[c.value]=!1,R[m.value]=ce.id,W.value.splice(fe,0,R)}}}function Se(O,R,W){const U=W.value[O],ee=U[a.value];if(u.get(ee)){const fe=W.value.findIndex(pe=>pe[a.value]===ee)+1;U[c.value]=!0,U[s.value]=!1,R[c.value]=!1,R[m.value]=ee,W.value.splice(fe,0,R)}}function xe(O,R,W){const ee=W.value[O][a.value];if(u.get(ee)){const fe=W.value.findIndex(me=>me[a.value]===ee)+1;let pe=R;p(R)&&(pe=g(R)),pe.forEach(me=>{me[m.value]=ee}),W.value.splice(fe,0,...pe)}}function H(O,R){const W=O[a.value],U=u.get(W),ee=Array.from(U.descendant.keys());ee.unshift(W);const se=u.get(U.parentId);if(se&&(se.children.delete(W),se.children.size===0)){const fe=R.find(pe=>pe[a.value]===U.parentId);fe[c.value]=!1,fe[s.value]=!1}return R.filter(fe=>ee.indexOf(fe.id)===-1)}return{checkVisibleInHierarchy:o,collapseTo:$,expandTo:Y,generateHierarchyData:oe,hasRealChildren:P,insertSibling:Ve,insertChild:Se,insertChildren:xe,isVisibleInTree:N,shouldStratifyData:r,toggleChildrenVisibiltyByCollapseStatus:G,trimmedOriginalData:H}}function On(n,e,t,i,o){const{toNumber:r,sum:a,toFixed:s}=X.useNumberFormat(),c=new Map,m=new Map,u=new Map,d=new Map,f=new Map,g=l.ref([]),p=l.ref([]),y=Nn(n,o),{generateGroupData:T,groupFields:S,shouldGroupingData:C}=y,F=l.ref(n.data||[]),V=Bn(n,F,i,o),{collapseTo:v,expandTo:w,generateHierarchyData:h,hasRealChildren:b,insertSibling:M,insertChild:B,insertChildren:P,isVisibleInTree:E,shouldStratifyData:N,toggleChildrenVisibiltyByCollapseStatus:I,trimmedOriginalData:_,checkVisibleInHierarchy:x}=V,{idField:G,reviseIdentifyField:k}=o,$=l.ref(n.newDataItem),Y=l.ref(n.data||[]),Q=l.ref(n.data),{flatTreeData:oe,isNestedTree:Ve}=Ht(n);if(n.hierarchy&&Ve(n.data)){const L=oe(n.data);F.value=L,Y.value=L,Q.value=L}const Se=l.ref(n.summary),xe=l.computed(()=>{const L=Se.value;return(L==null?void 0:L.groupFields)||[]});let H=new Map;const O=l.ref(Y.value.length),R=l.ref(n.pagination);function W(){return R.value&&R.value.enable&&R.value.size>0?R.value.size:Y.value.length}const U=l.ref(1),ee=l.computed(()=>R.value&&R.value.enable&&R.value.mode!=="server"),se=l.computed(()=>R.value&&R.value.enable&&R.value.mode==="server"),ce=new wt.FNotifyService;function fe(L,Z){const te=Math.ceil(L.length/Z);let ae=0;const Fe=[],Be=[],Ye=[];for(;ae<te;){const He=L.slice(ae*Z,(ae+1)*Z),Xe=T(S.value,He,e);Be[ae]=Xe.filter(ge=>ge.__fv_data_grid_group_row__).length,Fe.push(...Xe),ae++}return Be.reduce((He,Xe,ge)=>(He=He+Xe,Ye.push(He),He),0),{groupData:Fe,groupRowSizeList:Be,accumulateGroupRowSize:Ye}}function pe(){var Xe;Y.value=F.value,ee.value&&(O.value=Y.value.length),C.value&&!ee.value&&(Y.value=T(S.value,F.value,e)),H=xe.value.reduce((ge,Te)=>(ge.set(Te,0),ge),H);const L=0,Z=W(),te=(U.value-1)*Z;let Fe=te>Y.value.length-1||se.value?L:te,Be=se.value?Y.value.length:Math.min(Fe+Z,Y.value.length);if(C.value&&ee.value){const{accumulateGroupRowSize:ge,groupData:Te,groupRowSizeList:Ie}=fe(F.value,Z);Y.value=Te;const $e=Ie[U.value-1];Fe+=U.value-2<0?0:ge[U.value-2],Be=Fe+Z+$e}let Ye=0;const He=[];if(Y.value.length){k(Y.value);const ge=G.value!==n.idField;for(let Te=Fe;Te<Be;Te++){const Ie=Y.value[Te];Ie.__fv_data_grid_group_row__?(Ye=0,Ie.__fv_data_index__=""):Ie.__fv_data_grid_group_summary__?Ie.__fv_data_index__="":(Ye++,Ie.__fv_data_index__=Ye+(U.value-1)*Z),Ie.__fv_index__=Te,Ie.__fv_visible_index__=Te,n.rowOption&&n.rowOption.disabledField&&(Ie.__fv_disabled__=Ie[(Xe=n.rowOption)==null?void 0:Xe.disabledField]),ge&&(Ie[G.value]=Te),xe.value.forEach($e=>{const Pt=H.get($e)||0;H.set($e,a([Pt,X.resolveField(Ie,$e)||0]))}),He.push(Ie)}}return N.value&&h(He),xe.value.forEach(ge=>{const Te=H.get(ge)||0;H.set(ge,s(Te,2))}),Q.value=[...He],He}const me=l.ref(pe()),Pe=l.computed(()=>(x.value,me.value.filter(L=>N.value?L.__fv_visible__!==!1&&E(L):L.__fv_visible__!==!1)));function We(){Pe.value.forEach((Z,te)=>(Z.__fv_visible_index__=te,Z))}function Ce(L,Z,te=!1){var Xe;const ae=te?pe():[...Q.value];let Fe=ae;((Xe=n.filter)==null?void 0:Xe.mode)!=="server"&&(Fe=ae.filter(ge=>t.apply(ge)));const Be=L&&L.length?Fe.filter(ge=>L.reduce((Te,Ie)=>Te&&Ie.filter(ge),!0)):Fe,Ye=Z&&Z.length?Be.sort((ge,Te)=>{const Ie=[...Z],$e=Ie.shift(),Pt=X.resolveField(ge,$e.field)===void 0||X.resolveField(ge,$e.field)===null?"":X.resolveField(ge,$e.field),Jo=X.resolveField(Te,$e.field)===void 0||X.resolveField(Te,$e.field)===null?"":X.resolveField(Te,$e.field);let Nt=$e.compare(Pt,Jo);for(;Nt===0&&Ie.length!==0;){const Ke=Ie.shift();if(Ke){const Qo=X.resolveField(ge,Ke.field)===void 0||X.resolveField(ge,Ke.field)===null?"":X.resolveField(ge,Ke.field),Ko=X.resolveField(Te,Ke.field)===void 0||X.resolveField(Te,Ke.field)===null?"":X.resolveField(Te,Ke.field);Nt=Ke.compare(Qo,Ko)}}return Nt}):Be,He=W();return me.value=Ye.map((ge,Te)=>{if(ge.__fv_data_grid_group_row__){const Ie=`group_of_${ge.__fv_data_grid_group_field__}_${ge.__fv_data_grid_group_value__}`;ge.__fv_data_grid_group_collapse__=!!c.get(Ie)}return ge.__fv_index__=Te,ge.__fv_visible_index__=Te,ge.__fv_data_index__=Te+1+(U.value-1)*He,ge}),me.value}function A(L){return f.clear(),p.value=L,p.value.reduce((Z,te)=>(Z.set(te.field,te),Z),f),Ce([],p.value)}function J(L,Z){return f.set(L,Z),p.value=Array.from(f.values()),Ce([],p.value)}function D(L){return f.delete(L),p.value=Array.from(f.values()),Ce([],p.value)}function ye(L,Z){return m.set(L,Z),g.value=Array.from(m.values()),Ce([],Array.from(f.values()))}function be(L){return m.delete(L),g.value=Array.from(m.values()),Ce([],Array.from(f.values()),!0)}function Re(){return m.clear(),g.value=[],Ce([],Array.from(f.values()),!0)}function Ze(L,Z,te){const ae=`group_of_${L}_${Z}`;c.set(ae,!0);const Fe=Be=>Be[L]!==Z;return u.set(`collapse_${L}_${Z}`,{field:L,fieldName:L,fieldType:"string",filterValue:Z,filter:Fe}),Ce(Array.from(u.values()),Array.from(f.values()))}function at(L){v(me.value,L)}function st(L){w(me.value,L)}function z(L,Z,te){const ae=`group_of_${L}_${Z}`;return c.set(ae,!1),u.delete(`collapse_${L}_${Z}`),Ce(Array.from(u.values()),Array.from(f.values()),!0)}function le(L){const Z=L.raw[G.value],te=ae=>!ae.__fv_parents__.has(Z);d.set(`fold_${Z}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(Z),filter:te}),Ce(Array.from(d.values()),Array.from(f.values())),h(me.value)}function he(L){const Z=L[G.value];d.delete(`fold_${Z}`)}function Me(L){he(L.raw),Ce(Array.from(d.values()),Array.from(f.values()),!0),h(me.value)}function _e(){const L=pe();me.value=L,Ce(Array.from(d.values()),Array.from(f.values())),n.hierarchy&&h(me.value)}function Tt(L){const te=n.hierarchy&&Ve(L)?oe(L):L;F.value=te,_e()}function _t(L,Z,te){return(L&&L.length?me.value.filter((Fe,Be)=>L.reduce((Ye,He)=>Ye&&He.filter(Fe),!0)):me.value).slice(Z,te)}function xt(L){const Z=W(),te=Math.ceil(O.value/Z);0<=L&&L<=te&&(U.value=L,_e())}function yt(L){F.value.push(ze.cloneDeep(L)),me.value=pe()}function vt(L=0){if(!(L>-1))return!1;const te=$.value();n.hierarchy?M(L,te,F):F.value.splice(L,0,te),_e()}function Vt(L=0){if(!(L>-1&&n.hierarchy))return!1;const te=$.value(),ae=F.value[L];he(ae),B(L,te,F),_e()}function dt(L,Z=0){if(!(Z>-1&&n.hierarchy))return!1;const ae=F.value[Z];he(ae),P(Z,L,F),_e()}function It(L){const Z=L?L-1:0;F.value.splice(Z,1),_e()}function bt(L){const Z=F.value.findIndex(te=>te[G.value]===L);Z!==-1&&(F.value.splice(Z,1),_e())}function kt(L){const Z=L>-1?F.value[L]:null;if(!(Z&&Z.deletable!==!1))return!1;F.value=_(Z,F.value),_e()}function Et(){const L=u.size>0?Array.from(u.values()):[];return Ce(L,Array.from(f.values()))}function ct(L){R.value.size=L}function q(L){R.value&&(ct(L),_e())}function K(L,Z){const te=F.value[Number(L)-1];te.editable!==!1?(te.name=Z,_e()):ce.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function ne(L){return L.map(te=>{const ae=Q.value.findIndex(Fe=>""+Fe[G.value]==""+te);return ae>-1?Q.value[ae]:null}).filter(te=>te!=null)}function ue(){const L=n.summary.groupFields;H=L.reduce((Z,te)=>(Z.set(te,0),Z),H);for(const Z of Y.value)L.forEach(te=>{const ae=H.get(te)||0;H.set(te,a([ae,X.resolveField(Z,te)||0]))});L.forEach(Z=>{const te=H.get(Z)||0;H.set(Z,s(te,2))})}function we(L){const Z=n.summary.groupFields;H=Z.reduce((te,ae)=>(te.set(ae,0),te),H);for(const te of L)Z.forEach(ae=>{const Fe=H.get(ae)||0;H.set(ae,a([Fe,X.resolveField(te.raw,ae)||0]))});Z.forEach(te=>{const ae=H.get(te)||0;H.set(te,s(ae,2))})}return{addFilter:ye,addNewDataItem:yt,addSorter:J,updatePageSize:ct,changePageSizeTo:q,collapse:Ze,collapseTo:at,dataView:me,editDataItem:K,expand:z,expandTo:st,filters:g,fold:le,getRange:_t,getSelectionItems:ne,hasRealChildren:b,insertNewChildDataItem:Vt,insertNewChildDataItems:dt,insertNewDataItem:vt,isVisibleInTree:E,load:Tt,navigatePageTo:xt,pageIndex:U,rawView:Q,refresh:Et,removeAllFilter:Re,removeDataItem:It,removeDataItemById:bt,removeFilter:be,removeHierarchyDataItem:kt,removeSorter:D,reOrderVisibleIndex:We,setSorters:A,sorters:p,summaries:H,updateSummary:ue,toggleChildrenVisibiltyByCollapseStatus:I,totalItems:O,unFold:Me,updateDataView:_e,visibleDataItems:Pe,shouldGroupingData:C,pagination:R,updateVisibleDataSummary:we}}const Rn=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Hn={equal:(n,e,t)=>n&&n[e]===t,notEqual:(n,e,t)=>n&&n[e]!==t,contain:(n,e,t)=>n?(n[e]||"").indexOf(t)>-1:!1,startWidth:(n,e,t)=>n?(n[e]||"").startsWith(t):!1,endWidth:(n,e,t)=>n?(n[e]||"").endsWith(t):!1},An={equal:(n,e,t)=>n&&n[e]===t,in:(n,e,t)=>{if(n){const i=n[e];return t.indexOf(i)>-1}return!1},notEqual:(n,e,t)=>n&&n[e]!==t},Ln={equal:(n,e,t)=>{if(n){const i=new Date(t).getTime();return new Date(n[e]).getTime()===i}return!1},notEqual:(n,e,t)=>{if(n){const i=new Date(t).getTime();return new Date(n[e]).getTime()!==i}return!1},greaterThan:(n,e,t)=>{if(n){const i=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(n,e,t)=>{if(n){const i=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(n,e,t)=>{if(n){const i=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(n,e,t)=>{if(n){const i=new Date(new Date(t).toLocaleDateString()).valueOf();return new Date(new Date(n[e]).toLocaleDateString()).valueOf()<=i}return!1}},$n={equal:(n,e,t)=>n?String(t).split(",").includes(String(n[e])):!1,in:(n,e,t)=>{if(n){const i=n[e];return t.indexOf(i)>-1}return!1},notEqual:(n,e,t)=>n?String(t).split(",").findIndex(o=>o===String(n[e]))===-1:!1},jn={equal:(n,e,t)=>{if(n){const i=Number.parseFloat(String(t)),o=Number.parseFloat(String(n[e]));return isNaN(i)?isNaN(o):i===o}return!1},notEqual:(n,e,t)=>{if(n){const i=Number.parseFloat(String(t)),o=Number.parseFloat(String(n[e]));return isNaN(i)?!0:i!==o}return!1},greaterThan:(n,e,t)=>{if(n){const i=Number.parseFloat(String(t)),o=Number.parseFloat(String(n[e]));return isNaN(i)?isNaN(o):o>i}return!1},greaterThanOrEqual:(n,e,t)=>{if(n){const i=Number.parseFloat(String(t)),o=Number.parseFloat(String(n[e]));return isNaN(i)?isNaN(o):o>=i}return!1},lessThan:(n,e,t)=>{if(n){const i=Number.parseFloat(String(t)),o=Number.parseFloat(String(n[e]));return isNaN(i)?isNaN(o):o<i}return!1},lessThanOrEqual:(n,e,t)=>{if(n){const i=Number.parseFloat(String(t)),o=Number.parseFloat(String(n[e]));return isNaN(i)?isNaN(o):o<=i}return!1}},Wn=new Map([["boolean",An],["datetime",Ln],["enum",$n],["number",jn],["text",Hn]]);function zn(n,e){const t=l.ref([]),i=new Map,{loadConditionGroup:o}=de.useCondition();function r(V,v){switch(V){case"check-box":return new de.CheckBoxValue({value:v});case"combo-list":return new de.ComboListValue({value:v});case"combo-lookup":return new de.ComboLookupValue({value:v});case"input-group":return new de.TextValue({value:v});case"date-picker":return new de.DatePickerValue({value:v});case"date-range":return new de.DateRangeValue({value:v});case"datetime-picker":return new de.DateTimePickerValue({value:v});case"datetime-range":return new de.DateRangeValue({value:v});case"lookup":return new de.TextValue({value:v});case"month-picker":return new de.MonthPickerValue({value:v});case"month-range":return new de.MonthRangeValue({value:v});case"number-range":return new de.NumberRangeValue({value:v});case"number-spinner":return new de.NumberSpinnerValue({value:v});case"radio-group":return new de.RadioGroupValue({value:v});default:return new de.TextValue({value:v})}}const a=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),s=new Map([["boolean",de.CompareType.Equal],["date",de.CompareType.Equal],["datetime",de.CompareType.Equal],["number",de.CompareType.Equal],["string",de.CompareType.Equal],["text",de.CompareType.Equal],["enum",de.CompareType.In],["reference",de.CompareType.Equal]]);function c(){t.value.forEach((v,w)=>{w===t.value.length-1?v.relation=0:v.relation=1});const V=[];return t.value.forEach(v=>{const{valueType:w}=v.value,h=v.value.value;if(w==="boolean"){const b=[];h.length===1&&b.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value[0],relation:t.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:de.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null}),h.length>1&&b.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value[0],relation:2,expresstype:de.ValueType.Value,lbracket:v.lBracket?v.lBracket+"(":"(",rbracket:v.rBracket||null},{filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value[1],relation:t.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:de.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket?v.rBracket+")":")"}),V.push(...b)}else V.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:de.CompareType.Like,value:v.value.value,relation:t.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:de.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null})}),V}function m(V){var w;const v=V.dataType||"string";return((w=V.editor)==null?void 0:w.type)||a.get(v)||"text"}function u(V){var I,_,x,G,k;const v=`field_filter_${V.field}`,w=Date.now(),h=V.field,b=((I=V.column)==null?void 0:I.title)||"",M=((_=V.column)==null?void 0:_.dataType)||"string",B=s.get(M)||de.CompareType.Equal,P=((G=(x=V.column)==null?void 0:x.editor)==null?void 0:G.type)||a.get(M)||"text",E=r(P,(k=V.column)==null?void 0:k.filter),N=P==="lookup"||P==="combo-lookup"?de.ValueType.SmartHelp:P==="combo-list"?de.ValueType.Enum:de.ValueType.Value;i.set(v,{id:v,fieldCode:h,fieldName:b,compareType:B,valueType:N,value:E,conditionId:w,relation:1}),t.value=Array.from(i.values())}function d(V){const v=`field_filter_${V.field}`;i.delete(v),t.value=Array.from(i.values())}function f(V){i.delete(V),t.value=Array.from(i.values())}function g(){i.clear(),t.value=[]}function p(V){const{valueType:v}=V.value,w=V.compareType||"0",h=Rn[Number(w)];return Wn.get(v)[h]}function y(V){const v=V.relation===2?0:1,w=V.items.map(b=>{const M=p(b);return P=>M(P,b.fieldCode,b.value.getValue())}),h=V.children&&V.children.length?V.children.map(b=>y(b)):[];return{relation:v,filterFunctions:w,children:h}}function T(){const V=o(t.value);return y(V)}function S(V,v){const w=v.filterFunctions.map(b=>b(V)),h=v.children.map(b=>S(V,b));return v.relation===1?w.every(b=>b)&&h.every(b=>b):w.includes(!0)||h.includes(!0)}function C(V){const v=T();return S(V,v)}function F(V){e.emit("filterChanged",V)}return{addColumnFilter:u,apply:C,clearCondition:g,conditions:t,getFilterEditorType:m,removeColumnFilter:d,removeCondition:f,filterFromServer:F,createFilterConditions:c}}function Gn(n){l.ref(n.selection.showCheckbox||!1);const e=l.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),t=l.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),i=l.computed(()=>{var a;return((a=n.hierarchy)==null?void 0:a.parentIdField)||"parent"}),o=l.computed(()=>n.hierarchy&&n.selection.showCheckbox),r=l.computed(()=>(n.treeNodeIconsData.fold||n.iconField)&&n.showTreeNodeIcons);return{collapseField:e,hasChildrenField:t,parentIdField:i,shouldShowCheckBox:o,shouldShowIcon:r}}function Un(n,e,t,i,o,r,a,s,c){var ct;const{dataView:m,visibleDataItems:u}=e,{getVisualData:d,maxVisibleRowIndex:f,minVisibleRowIndex:g}=o,p=l.computed(()=>i.value.primaryColumnsWidth),y=l.computed(()=>i.value.leftColumnsWidth),T=l.computed(()=>i.value.rightColumnsWidth),S=((ct=n.rowOption)==null?void 0:ct.height)||28,C=l.ref(0),F=l.ref(0);let V=0,v=r.value-1;const w=l.ref(0),h=l.ref(0),b=l.ref(0),M=l.ref(n.virtualized),B=24,P=1.5;let E=null,N=null,I=null;function _(){const q=u.value;if(q.length<=0)return 0;const K=f.value<q.length?q[f.value]:q[q.length-1];return K.__fv_data_position__>q.length*S?q.length*S:(K.__fv_data_position__||0)+(K.__fv_data_height__||0)+Math.max(q.length-1-f.value,0)*S}const x=l.computed(()=>{const q=_();let K=h.value/Math.max(q,h.value),ne=Math.floor(K*h.value);for(;h.value>0&&ne<B;)K*=P,ne=Math.floor(K*h.value);return ne}),G=l.computed(()=>Math.floor(b.value/Math.max(p.value,b.value)*w.value)),k=0,$=0,Y=l.computed(()=>w.value-(y.value+p.value+T.value+s.value));function Q(q){const ne=Math.floor(q/S)+1,ue=u.value;return ue.length>ne?ue[ne].__fv_visible_index__-1:0}function oe(q,K,ne){let ue=q,we=K;const L=K-q+1;if(L<a+r.value+a){const Z=a+r.value+a-L,te=K+Z<=ne,ae=0+Z<=q;if(te)we+=Z,v=we;else if(ae)ue-=Z,V=ue;else{const Fe=ne-K,Be=Z-Fe;we=Math.min(K+Fe,ne),ue=Math.max(q-Be,0)}}return{actualStart:ue,actualEnd:we}}function Ve(q){var Fe,Be;const K=u.value;if(!K.length){t.value=[];return}const ne=(Fe=n.pagination)!=null&&Fe.enable?0:Math.max(V-a,0),ue=K[K.length-1].__fv_visible_index__,we=(Be=n.pagination)!=null&&Be.enable?K.length-1:Math.min(v+a,ue),{actualStart:L,actualEnd:Z}=oe(ne,we,ue),te=K[L-1],ae=d(L,Z,te,q);ae.length&&(t.value=[...ae])}const Se=l.computed(()=>_()>h.value),xe=l.computed(()=>Math.floor(p.value)>b.value);function H(q,K){let ne=q;const ue=ne>k,we=Se.value;we&&ne<h.value-K&&(ne=h.value-K),(!we||ue)&&(ne=k),C.value!==ne&&(C.value=ne)}function O(){M.value&&(V=Q(Math.abs(C.value)),v=V+r.value-1,(V<g.value||v>f.value-a/2)&&Ve())}function R(q){let K=C.value+q;K>k&&(K=k);const ne=_();H(K,ne),O()}function W(q){if(!xe.value){F.value=0;return}let K=F.value+q;K>$&&(K=$),K<Y.value&&(K=Y.value),F.value!==K&&(F.value=K)}function U(){Math.abs(F.value)+b.value>p.value&&(F.value=Math.min(b.value-p.value,0))}function ee(){C.value=0,V=0,v=r.value-1,Ve()}function se(){const q=_();H(C.value,q)}l.watch([b,p],()=>{W(0)}),l.watch(h,(q,K)=>{q!==K&&q>=m.value.length*S&&R(0)});function ce(q){let{deltaX:K}=q,ne=-1*q.deltaY;return typeof K>"u"&&(K=-1*q.wheelDeltaX/6),typeof ne>"u"&&(ne=q.wheelDeltaY/6),q.deltaMode&&q.deltaMode===1&&(K*=10,ne*=10),q.shiftKey?{deltaY:-ne,deltaX:-K}:{deltaX:K,deltaY:ne}}function fe(q){if(n.disabled||!Se.value||q.target.tagName==="TEXTAREA")return;q.preventDefault(),q.stopPropagation();const{deltaX:K,deltaY:ne}=ce(q);R(ne),W(K)}const pe=l.computed(()=>({height:`${m.value.length*S}px`,width:`${y.value}px`,transform:`translateY(${C.value}px)`})),me=l.computed(()=>({transform:`translateY(${C.value}px)`})),Pe=l.computed(()=>({height:`${(n.autoHeight?u.value:m.value).length*S}px`,width:`${p.value}px`,transform:`translate(${F.value}px, ${C.value}px)`})),We=l.computed(()=>({transform:`translate(${F.value}px, ${C.value}px)`})),Ce=l.computed(()=>({height:`${m.value.length*S}px`,width:`${T.value}px`,transform:`translateY(${C.value}px)`})),A=l.computed(()=>({transform:`translateY(${C.value}px)`})),J=l.computed(()=>({height:`${m.value.length*S}px`,width:`${s.value}px`,transform:`translateY(${C.value}px)`})),D=l.computed(()=>({width:`${y.value}px`})),ye=l.computed(()=>({transform:`translateX(${F.value}px)`})),be=l.computed(()=>({width:`${T.value}px`})),Re=l.computed(()=>{const q=_();return H(C.value,q),C.value/(h.value-q)*(h.value-x.value)}),Ze=l.computed(()=>({width:"8px",height:`${x.value}px`,top:`${Re.value}px`,backgroundColor:"#cccccc !important"})),at=l.computed(()=>F.value/Y.value*(w.value-G.value)),st=l.computed(()=>({height:"8px",width:`${G.value}px`,left:`${at.value}px`,backgroundColor:"#cccccc !important"})),z=l.ref(!1),le=l.ref(-1),he=l.ref(-1),Me=l.ref();function _e(q){if(q instanceof MouseEvent?q.pageX:q.touches[0].pageX,z.value&&he.value!==-1){const K=he.value-q.pageX,ne=w.value-G.value;if(Math.abs(K)<=ne){const ue=K/(b.value-G.value)*(p.value-b.value);W(ue),he.value=q.pageX}}}function Tt(q){if(z.value&&le.value!==-1){const K=le.value-q.pageY,ne=_(),ue=ne-x.value;if(Math.abs(K)<=ue){const we=K/(h.value-x.value)*(ne-h.value);R(we),le.value=q.pageY}}}function _t(q){const{pageX:K,pageY:ne}=q.touches[0];if(z.value&&he.value!==-1){const ue=he.value-K,we=w.value-G.value;if(Math.abs(ue)<=we){const L=ue/(b.value-G.value)*(p.value-b.value);W(L),he.value=K}}}function xt(q){const{pageX:K,pageY:ne}=q.touches[0];if(z.value&&le.value!==-1){const ue=le.value-ne,we=_(),L=we-x.value;if(Math.abs(ue)<=L){const Z=ue/(h.value-x.value)*(we-h.value);R(Z),le.value=ne}}}function yt(q){z.value=!1,le.value=-1,he.value=-1,document.removeEventListener("mouseup",yt),E&&(document.removeEventListener("mousemove",E),E=null),document.body.style.userSelect="",Me.value&&(Me.value.style.opacity=null)}function vt(q){z.value=!1,le.value=-1,he.value=-1,document.removeEventListener("touchend",vt),N&&(document.removeEventListener("touchmove",N),N=null),I&&(document.removeEventListener("touchmove",I),N=null),document.body.style.userSelect="",Me.value&&(Me.value.style.opacity=null)}function Vt(q,K,ne){var te;z.value=!0;const ue=(te=q.target)==null?void 0:te.parentElement;ue&&(ue.style.opacity="1",Me.value=ue);const we=ne==="horizontal"?_e:ze.throttle(Tt,50);E||(E=we);const{pageX:L}=q,{pageY:Z}=q;ne==="vertical"&&(le.value=q.pageY),ne==="horizontal"&&(he.value=q.pageX),K.value&&(K.value,document.addEventListener("mousemove",E),document.addEventListener("mouseup",yt),document.body.style.userSelect="none")}function dt(q){const{pageX:K,pageY:ne}=q.touches[0],ue=Math.abs(K-he.value),we=Math.abs(ne-le.value);we>ue&&we>5?(I||(I=ze.throttle(xt,50)),document.addEventListener("touchmove",I),document.removeEventListener("touchmove",dt)):ue>we&&ue>5&&(N||(N=_t),document.addEventListener("touchmove",N),document.removeEventListener("touchmove",dt)),he.value=K,le.value=ne}function It(q,K){var L;z.value=!0;const ne=(L=q.target)==null?void 0:L.parentElement;ne&&(ne.style.opacity="1",Me.value=ne);const{pageX:ue,pageY:we}=q.touches[0];he.value=ue,le.value=we,K.value&&(K.value,document.addEventListener("touchmove",dt),document.addEventListener("touchend",vt),document.body.style.userSelect="none")}function bt(q){const K=m.value.length*S-h.value;let ne=q*S;ne>=K&&(ne=K),R(-ne-C.value)}function kt(){bt(m.value.length)}function Et(q){R(q-C.value)}return{dataGridWidth:w,fitHorizontalScroll:U,gridDataStyle:Pe,gridHeaderColumnsStyle:ye,gridMergedDataStyle:We,gridSideStyle:J,horizontalScrollThumbStyle:st,leftFixedGridDataStyle:pe,leftFixedGridHeaderColumnsStyle:D,leftFixedGridMergedDataStyle:me,offsetX:F,offsetY:C,onMouseDownScrollThumb:Vt,onWheel:fe,reCalculateVisualDataRows:Ve,resetScroll:ee,rightFixedGridDataStyle:Ce,rightFixedGridHeaderColumnsStyle:be,rightFixedGridMergedDataStyle:A,shouldShowHorizontalScrollbar:xe,shouldShowVirticalScrollbar:Se,updateVirticalScroll:se,updateVisibleRowsOnLatestVisibleScope:O,verticalScrollThumbStyle:Ze,viewPortWidth:b,viewPortHeight:h,scrollToBottom:kt,scrollToRowByIndex:bt,scrollTo:Et,onTouchstartScrollThumb:It}}function Dn(n){var r;const{isUndefined:e}=X.useCommonUtils(),t=((r=n.rowOption)==null?void 0:r.height)||28;function i(a,s){const c=a.pre;if(c){let m=c.__fv_data_position__,u=c.__fv_data_height__;(e(m)||n.virtualized&&n.hierarchy&&c.__fv_visible_index__*t!==m)&&(m=c.__fv_visible_index__*t),e(u)&&(u=t);const d=a.visible?m+u:c.__fv_data_position__;a.top=d,s.__fv_data_position__=d}else a.top=0,s.__fv_data_position__=0}function o(a,s,c){if(a&&!s.ref){s.ref=a;const m=s.parent;s.cellHeight!==a.offsetHeight&&(s.cellHeight=a.offsetHeight),s.cellHeight&&s.cellHeight>(m.height||0)&&(m.height=s.cellHeight,c.__fv_data_height__=m.height),i(m,c)}!a&&s.ref&&(s.ref=a)}return{updateRowPosition:i,updateVisualInfomation:o}}function qn(){function n(e,t){var a,s;if(!t.data||!t.data.length)return"";const i=Object.prototype.hasOwnProperty.call(t,"valueField")&&t.valueField||"value",o=Object.prototype.hasOwnProperty.call(t,"textField")&&t.textField||"name";if(e!=null&&e.includes(",")){const c=e.split(",");if(!t.data.filter(f=>c.includes(f[i])).length)return"";const u=(a=t.data)==null?void 0:a.reduce((f,g)=>(f[g[i]]=g,f),{});return c.map(f=>{var g;return(g=u[f])==null?void 0:g[o]}).join(",")||e}const r=(s=t.data)==null?void 0:s.find(c=>c[i]===e);return(r==null?void 0:r[o])||e||""}return{renderEnumColumn:n}}function Yn(){function n(e,t){return e?t==null?void 0:t.trueText:t==null?void 0:t.falseText}return{renderText:n}}function Xn(){const{formatTo:n}=X.useDateFormat();function e(i,o){if(i){let r="yyyy-MM-dd";if(typeof o=="string"?r=o:typeof o=="object"&&(r=o.format||"yyyy-MM-dd"),r=r.replace("YYYY","yyyy").replace("-DD","-dd"),typeof o=="object"&&o.dateRange){const a=o.dateRangeDatesDelimiter||"~";let[s,c]=i.split(a);return s=n(s,r),c=n(c,r),s+a+c}return n(i,r)}return i}function t(i,o){const r=o.dateFormat||"yyyy-MM-dd";return n(i,r)}return{renderDateColumn:t,renderDateTimeColumn:e}}function Zn(){const{formatTo:n}=X.useNumberFormat();function e(t,i){const o={precision:i.precision,prefix:i.prefix||"",suffix:i.suffix||"",decimalSeparator:i.decimal||".",groupSeparator:i.thousand||""};return n(t,o)||t}return{renderNumberColumn:e}}function Jn(){function n(e,t){if(e){const i={};return t!=null&&t.width&&(i.width=`${t.width}px`),t!=null&&t.height&&(i.height=`${t.height}px`),l.createVNode("img",{src:e,style:i},null)}return e}return{renderImageColumn:n}}function Qn(){function n(e,t){const i=Ae.LocaleService.getLocale();return(e==null?void 0:e[i||"zh-CHS"])||""}return{renderMultilingualColumn:n}}function Kn(){const{renderText:n}=Yn(),{renderEnumColumn:e}=qn(),{renderNumberColumn:t}=Zn(),{renderDateColumn:i,renderDateTimeColumn:o}=Xn(),{renderImageColumn:r}=Jn(),{renderMultilingualColumn:a}=Qn();function s(u){return typeof u=="boolean"?u.toString():u}function c(u,d,f){return d.customFormat?d.customFormat(u,f.raw):s(u)}function m(u,d,f){const{column:g}=u,p=X.resolveField(d.raw,g.field),y=f.options||f;return f.type===De.NONE?s(p):f.type===De.CUSTOM?c(p,f,d):f.type===De.ENUM?e(p,y):f.type===De.NUMBER?t(p,y):f.type===De.BOOLEAN?n(p,y):f.type===De.DATE?i(p,y):f.type===De.DATE_TIME?o(p,f):f.type===De.IMAGE?r(p,y):f.type===De.MULTI_LINGUAL?a(p,y):s(p)}return{renderFormatColumn:m}}function ei(n,e,t){var S;const{isUndefined:i}=X.useCommonUtils(),o=l.ref(n.mergeCell);(S=l.ref(n.rowOption).value)!=null&&S.wrapContent;const{updateVisualInfomation:a}=t,{renderCommandColumn:s}=In(n),{renderFormatColumn:c}=Kn();function m(C,F,V,v,w,h=1){const b={colSpan:h,rowSpan:1,index:V,field:C,data:X.resolveField(v,C),editingData:X.resolveField(v,C),parent:w,mode:F,align:"left",valign:"start",showEllipsis:!0,getEditor:M=>M.data,setRef:M=>a(M,b,v),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return b}function u(C,F,V){return C.getEditor=v=>e.getEditor(v,F,v.parent),C.setRef=v=>a(v,C,V),C.update=v=>{v!==void 0&&(C.editingData=v)},C.accept=()=>{X.setFieldValue(C.editingData,V,F.field),C.data=X.resolveField(V,F.field)},C.cancel=()=>{C.editingData=C.data},C.updateData=v=>{X.setFieldValue(X.resolveField(v,F.field),V,F.field),C.data=X.resolveField(V,F.field),C.editingData=X.resolveField(V,F.field)},C}function d(C,F){F.dataType==="commands"?C.formatter=(V,v)=>F.formatter?F.formatter(C,v):s(C,v):F.formatter&&(C.formatter=(V,v)=>typeof F.formatter=="function"?F.formatter(V,v):c(C,v,F.formatter))}function f(C,F,V){const v=F&&F.data[V];if(v&&v.data===C.data){const h=v&&v.spannedBy||v;h.rowSpan++,h.spanned=h.spanned||[],h.spanned.push(C),C.colSpan=0,C.rowSpan=0,C.spannedBy=h}}function g(C,F,V){o.value&&f(C,F,V.field)}function p(C,F){F.showEllipsis!==void 0&&(C.showEllipsis=F.showEllipsis),C.showTips=i(F.showTips)?!0:F.showTips,C.column=F,C.align=F.align||"left",C.valign=F.valign||"middle",C.mode=n.editable?Ne.editable:Ne.readonly}function y(C,F,V,v){p(C,F),u(C,F,v),d(C,F),g(C,V,F)}function T(C,F,V,v,w){const h=n.editable?Ne.editable:Ne.readonly,b=m(C.field,h,F,V,v);return y(b,C,w,V),b}return{createCellByColumn:T,createCellByField:m,updateCellByColumn:y}}function ti(n,e,t,i,o,r,a){var F,V;const s=l.ref(n.rowOption),c=((F=s.value)==null?void 0:F.height)||28,m=((V=s.value)==null?void 0:V.wrapContent)||!1,{idField:u}=o,{collapseField:d}=i,{updateRowPosition:f}=r,{createCellByColumn:g}=a,p=(v,w,h,b)=>{X.setFieldValue(X.resolveField(v,b),w,b),h.data[b].data=X.resolveField(w,b),h.data[b].editingData=X.resolveField(w,b)};function y(v,w,h,b,M,B){var Ve,Se,xe;const{__fv_data_grid_group_field__:P,__fv_data_grid_group_value__:E,__fv_data_index__:N}=h,I=h.__fv_data_grid_group_layer__||(h.__fv_parents__?(Ve=h.__fv_parents__)==null?void 0:Ve.size:0)||0,_=typeof h.parent=="number"?Number(h.parent):-1,x=h.__fv_data_grid_group_collapse__||h[d.value],G=h.__fv_visible__===void 0?!0:h.__fv_visible__,k=h.__fv_checked__,$=h.__fv_indeterminate__,Y=h.__fv_disabled__||h[((Se=n.rowOption)==null?void 0:Se.disabledField)||"disabled"],Q=n.hierarchy&&e.isVisibleInTree(h),oe={collapse:x,data:{},dataIndex:N,groupField:P,groupValue:E,layer:I,index:w,parentIndex:_,pre:b,top:B,type:v,raw:h,checked:k,disabled:Y,indeterminate:$,setRef:H=>{oe.ref=H},visible:G&&Q||G&&!n.hierarchy,status:Ue.initial,updateCell:(H,O)=>{p(H,h,oe,O),e.updateSummary()},updateCells:(H,O)=>{O.forEach(R=>{p(H,h,oe,R)})}};return b||(h.__fv_data_position__=0),m||(oe.height=c,h.__fv_data_height__=oe.height,f(oe,h)),(xe=s.value)!=null&&xe.customRowStatus&&(s.value.customRowStatus(oe),h.__fv_disabled__=oe.disabled),oe}function T(v,w,h,b,M,B){const P=y(et.data,M,w,h,b,B);return v.forEach((E,N)=>{P.data[E.field]=g(E,N,w,P,b)}),P}function S(v,w,h,b,M){return Object.assign(v,{index:w,dataIndex:h,top:b,pre:M})}function C(v,w,h,b,M,B){const P=v.__fv_data_index__,E=v[u.value],N=t.getEditingSnapshot(E);return N===null?T(B,v,w,h,b,M):S(N,b,P,M,w)}return{createEmptyRow:y,createNewRowFromDataItem:T,renderDataRow:C}}function ni(n,e,t,i){const o=l.ref(n.summary),{idField:r}=e,{createCellByField:a}=t,{createEmptyRow:s}=i,c=l.computed(()=>{const f=o.value;return(f==null?void 0:f.groupFields)||[]}),m=l.computed(()=>{const f=o.value;return f&&f.enable&&f.groupFields&&f.groupFields.length>0});function u(f,g,p,y){if(m.value){const T=f.data[g];let S=T.colSpan;const C=c.value.reduce((F,V)=>(F.set(V,!0),F),new Map);y.reduce((F,V,v)=>{if(C.has(V.field)){const w=a(V.field,Ne.readonly,v,p,f);f.data[V.field]=w,S-1>v&&(S=v)}return F},f),T.colSpan=S}}function d(f,g,p,y,T,S,C){const F=f.__fv_data_grid_group_field__,V=s(et.group,y,f,g,p,T);return V.data[r.value]=a(r.value,Ne.readonly,-1,f,V,0),V.data[F]=a(F,Ne.readonly,1,f,V,S.length),u(V,F,f,S),V}return{renderGroupRow:d}}function ii(n,e,t,i){const{idField:o}=e,{createCellByField:r}=t,{createEmptyRow:a}=i;function s(c,m,u,d,f,g,p){const y=c.__fv_data_grid_group_field__,T=a(et.summary,d,c,m,u,f);return T.data[o.value]=r(o.value,Ne.readonly,-1,c,T),T.data[y]=r(y,Ne.readonly,1,c,T,g.length),T}return{renderSummaryRow:s}}function oi(n,e,t,i,o){var xe;const{isMobilePhone:r}=ke.useMobile(),a=l.ref(!1),{idField:s}=t,c=l.ref(n.editable),m=l.ref(n.editOption),u=l.ref(((xe=n.rowOption)==null?void 0:xe.wrapContent)||!1),{onClickRow:d,onClickRowExcludeDblclick:f}=i,g=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let p,y,T,S,C;function F(H){return y&&y.raw[s.value]===H?y:null}const V=l.reactive({});function v(H){return(H==null?void 0:H.field)!==Ot&&(H==null?void 0:H.field)!==Tn}function w(H,O,R={}){H.mode=Ne.editing,p=H,y=O,T=X.resolveField(O==null?void 0:O.raw,H.field),S=R;for(const W in V)delete V[W]}function h(H){H.accept(),H.mode=Ne.editable,p=null}function b(H){h(H);const O={};y&&(Object.keys(y).forEach(R=>{O[R]=y==null?void 0:y[R]}),y=null),e.emit("endEditCell",{cell:H,row:O,newValue:X.resolveField(O==null?void 0:O.raw,H.field),oldValue:T,column:S,editor:V})}function M(H){const O=Promise.resolve(!0);return H?O.then(()=>ze.isUndefined(n.beforeEndEditCell)?!0:typeof n.beforeEndEditCell=="function"?n.beforeEndEditCell({cell:H,row:y,newValue:H.editingData,oldValue:T}):()=>!0).then(R=>(R&&(b(H),y&&(y=null)),R)):O}function B(H){if(C&&C!==H.target){C=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const R=H.target;if(!(R!=null&&R.closest(".popover"))){if(H instanceof MouseEvent||H.key!=="Enter"){const W=R.closest(".fv-grid-cell");if(p&&p.ref&&p.ref===W)return}M(p).then(W=>{W&&document.body.removeEventListener("click",B,!0)})}}function P(){window.closeModal||(window.closeModal=()=>{a.value=!1,window.closeModal&&delete window.closeModal})}function E(H,O,R){return Promise.resolve().then(()=>{var U;const W=(U=R.editor)==null?void 0:U.readonly;return!ze.isUndefined(n.beforeEditCell)&&typeof n.beforeEditCell=="function"?n.beforeEditCell({row:H,cell:O,rawData:H.raw,column:R}):!W}).then(W=>{W&&(r()?(a.value=!0,P()):w(O,H,R),document.body.removeEventListener("click",B,!0),document.body.addEventListener("click",B,!0))})}function N(H,O,R,W={}){H.stopPropagation(),f(H,R),v(O.column)&&c.value&&m.value.editMode==="cell"&&O.mode===Ne.editable&&M(p).then(()=>{p||E(R,O,W)})}function I(H,O,R,W={}){r()||H.stopPropagation(),d(H,R),v(O.column)&&c.value&&m.value.editMode==="cell"&&O.mode===Ne.editable&&M(p).then(()=>{p||E(R,O,W)})}function _(H){H.stopPropagation(),C=H.target}function x(H){H.stopPropagation(),C&&(C=null)}function G(H){Object.values(H.data).filter(O=>O.mode===Ne.editable&&v(O.column)).forEach(O=>{O.mode=Ne.editing}),H.status=Ue.editing,y=H}function k(H,O){Object.values(H.data).filter(R=>R.mode===Ne.editing).forEach(R=>{O?R.accept():R.cancel(),R.mode=Ne.editable}),H.status=Ue.initial,y===H&&(y=null)}function $(H){c.value&&m.value.editMode==="row"&&y!==H&&(y&&k(y,!1),G(H))}function Y(H){k(H,!0),H.status=Ue.initial}function Q(H){k(H,!1),H.status=Ue.initial}function oe(H,O,R){const W=O.dataType,U=O.editor||{type:g.get(W)||"input-group"};return!u.value&&U.type==="text"&&(U.type="input-group"),U&&v(H.column)?(U.type==="input-group"&&(U.textAlign=O.align!=="center"&&O.align!=="right"?"left":O.align,U.updateOn="change"),U.type==="number-spinner"&&(U.updateOn="change"),U.type==="textarea"&&(U.lineBreak="alt enter"),U.context={rowData:R.raw,column:O,cell:H,editor:V},U.readonly=!1,l.createVNode(gn.FDynamicFormInput,{focusOnCreated:n.focusOnEditingCell,selectOnCreated:n.selectOnEditingCell,editor:U,modelValue:H.editingData,"onUpdate:modelValue":ee=>H.editingData=ee,id:O.id,onMousedown:ee=>_(ee),onMouseup:ee=>x(ee)},null)):H.data}function Ve(){M(p)}l.watch(()=>n.editable,()=>{c.value=n.editable}),l.watch(()=>{var H;return(H=n.editOption)==null?void 0:H.editMode},H=>{m.value.editMode=H});function Se(){p=null,y=null,S=null,C=null,document.body.removeEventListener("click",B,!0)}return{clear:Se,onClickOutOfCell:B,onClickCell:I,onClickCellByKeyboard:N,onEditingRow:$,acceptEditingRow:Y,cancelEditingRow:Q,getEditingSnapshot:F,getEditor:oe,endEditCell:Ve,onMousedownCell:_,onMouseupCell:x,showRowEditPanel:a,endEditByCell:h}}function li(n){const e=l.ref(n.idField);function t(i){if(i&&i.length){const o=i[0];Object.keys(o).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:t}}function ri(n,e,t,i){const{idField:o}=i,{currentSelectedDataId:r,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:s,selectItem:c,toggleSelectItem:m,updateSelectAllStatus:u,isSingleSelect:d}=t,f=l.ref(0),g=l.ref(-1);function p(E){r.value=E}function y(E){return E.raw[o.value]===r.value}function T(E,N){var x;const I=N??E.dataIndex,_={"fv-grid-row":E.type===et.data,"fv-grid-group-row":E.type===et.group,"fv-grid-summary-row":E.type===et.summary,"fv-grid-row-hover":I===g.value,"fv-grid-row-selected":y(E),"fv-grid-row-odd":I%2>0,"fv-grid-row-even":I%2===0,"fv-grid-disabled":E.disabled};if((x=n.rowOption)!=null&&x.customRowStyle){const G=n.rowOption.customRowStyle(E.raw)||{};return Object.assign({},_,G.class||{})}return _}function S(E,N){var _;const I={"fv-grid-cell":!0};if((_=n.rowOption)!=null&&_.customCellStyle){const x=n.rowOption.customCellStyle(E,N)||{};return Object.assign({},I,x.class||{})}return I}function C(E,N){var _;const I={"fv-grid-hierarchy-cell":!0};if((_=n.rowOption)!=null&&_.customCellStyle){const x=n.rowOption.customCellStyle(E,N)||{};return Object.assign({},I,x.class||{})}return I}function F(E){const N=r.value,I=E.raw[o.value];p(I),N!==I&&e.emit("selectionChange",[E.raw],{id:I,data:E.raw})}function V(E,N){var x,G;if(s.value&&!(N!=null&&N.shiftKey)||d.value){(x=n.selection)!=null&&x.keepSelectingOnClick?c(E):m(E,(G=n.selection)==null?void 0:G.keepSelectingOnClick),u();return}if(s.value&&(N==null?void 0:N.shiftKey)||a.value){m(E),u();return}}function v(E,N){N.disabled||(e.emit("clickRow",N.index,N.raw),F(N),V(N,E))}function w(E){f.value+=1,setTimeout(()=>{f.value===1&&e.emit("clickRow",E.index,E.raw),f.value=0},250),f.value>1&&(e.emit("doubleClickRow",E.index,E.raw),f.value=0)}function h(E,N){N.disabled||(w(N),F(N),V(N,E))}function b(E){E.disabled||w(E)}function M(E,N){}function B(E,N){}function P(E,N){var x;const I=N??E.dataIndex,_={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":I===g.value,"fv-grid-sidebar-row-selected":y(E),"fv-grid-sidebar-row-odd":I%2>0,"fv-grid-sidebar-row-even":I%2===0,"d-flex":!0,"align-items-center":!0};if((x=n.rowOption)!=null&&x.customRowStyle){const G=n.rowOption.customRowStyle(E.raw)||{};return Object.assign({},_,G.class||{})}return _}return{activeRowById:p,clickRowItem:b,selectRow:V,changeRow:F,gridCellClass:S,gridHierarchyCellClass:C,gridRowClass:T,onClickRow:h,onClickRowExcludeDblclick:v,onMouseoverRow:M,sidebarRowClass:P,onMouseoutRow:B}}function ai(n,e,t,i,o){const{idField:r}=t,{dataView:a,getSelectionItems:s}=e,c=l.ref(""),m=l.computed(()=>n.selection.enableSelectRow),u=l.ref(n.selection.multiSelect??!1),d=l.ref(n.selection.multiSelectMode||"DependOnCheck"),f=l.ref(n.selection.showCheckbox),g=l.computed(()=>{var A;return!!((A=n.selection)!=null&&A.showSelectAll)}),p=l.ref(n.selectionValues||[]),y=l.computed(()=>n.selection.showSelection),T=l.computed(()=>{var A;return((A=n.selection)==null?void 0:A.keepSelectingOnPaging)===void 0?!0:n.selection.keepSelectingOnPaging}),S=l.ref(!!p.value.length&&i.value.length===p.value.length),C=l.ref(!!p.value.length&&i.value.length!==p.value.length),F=l.computed(()=>m.value&&u.value),V=l.computed(()=>m.value&&!u.value&&!f.value),v=l.computed(()=>!!n.hierarchy),w=l.computed(()=>{const A=f.value&&d.value==="DependOnCheck";return F.value&&A}),h=l.computed(()=>F.value&&!f.value),b=l.computed(()=>F.value&&f.value&&d.value==="OnCheckAndClick");function M(){if(!T.value){const A=a.value.map(J=>J[r.value]);p.value=p.value.filter(J=>A.includes(J))}}function B(){const A=a.value.every(D=>p.value.includes(D[r.value])),J=a.value.every(D=>!p.value.includes(D[r.value]));A&&(S.value=!0,C.value=!1),J&&(S.value=!1,C.value=!1),!A&&!J&&(S.value=!1,C.value=!0)}function P(){return s(p.value)}function E(){const A=i.value.reduce((D,ye)=>(D.set(ye.raw[r.value],ye),D),new Map);return p.value.map(D=>A.get(D)).filter(D=>!!D)}function N(A){var D;const J=A.raw.__fv_children_index__;if(J&&J.length){const ye=J.map(be=>a.value[be]);(D=p.value)!=null&&D.length&&ye.some(Re=>!p.value.includes(Re[r.value]))&&(A.indeterminate=!0,A.raw.__fv_indeterminate__=!0)}}function I(){const A=s(p.value);o.emit("selectionUpdate",A,p.value)}function _(A){o.emit("unSelectItem",A)}function x(A){o.emit("selectItem",A)}function G(){const A=i.value.filter(D=>D.indeterminate).map(D=>D.raw[r.value]);i.value.forEach(D=>{D.checked=!1,D.indeterminate=!1,D.raw.__fv_checked__=!1,D.raw.__fv_indeterminate__=!1}),E().forEach(D=>{D.checked=!0,D.raw.__fv_checked__=!0}),A.forEach(D=>{const ye=i.value.find(be=>be.raw[r.value]===D);N(ye)})}l.watch(()=>i.value,()=>{G()}),l.watch(()=>n.selectionValues,A=>{p.value=A,G()},{immediate:!0}),l.watch(()=>n.selection,A=>{u.value=!!A.multiSelect,d.value=A.multiSelectMode||"DependOnCheck",f.value=!!A.showCheckbox});const k=l.computed(()=>!u.value);function $(A){return A.raw[r.value]}function Y(A){return p.value.findIndex(D=>D===$(A))}function Q(){E().forEach(D=>{D.checked=!1}),s(p.value).forEach(D=>{D.__fv_checked__=!1}),p.value=[],B()}function oe(A){const J=A;J.__fv_checked__=!0,J.__fv_indeterminate__=!1;const D=new Set(p.value);D.add(J[r.value]),p.value=Array.from(D.values()),M()}function Ve(A){const J=A;J.__fv_checked__=!1,J.__fv_indeterminate__=!1,p.value=p.value.filter(D=>D!==J[r.value]),M()}function Se(A){const J=A.raw;J.__fv_checked__=!0,J.__fv_indeterminate__=!1;const D=new Set(p.value);D.add(J[r.value]),p.value=Array.from(D.values()),M(),A.checked=!0,A.indeterminate=!1,I(),x(A)}function xe(A){const J=A.raw;J.__fv_checked__=!1,J.__fv_indeterminate__=!1,p.value=p.value.filter(D=>D!==J[r.value]),M(),A.checked=!1,A.indeterminate=!1,I(),_(A)}function H(A){A.disabled||Se(A)}function O(A){A.disabled||xe(A)}function R(A){A.__fv_checked__=!1,A.__fv_indeterminate__=!0,p.value=p.value.filter(J=>J!==A[r.value]),M()}function W(A){const J=A.raw;J.__fv_checked__=!1,J.__fv_indeterminate__=!0,p.value=p.value.filter(D=>D!==J[r.value]),M(),A.checked=!1,A.indeterminate=!0}function U(A){k.value&&Q(),A.checked?xe(A):Se(A)}function ee(A,J=!0){const D=A.checked;k.value&&Q(),J?A.checked?O(A):H(A):D?O(A):H(A)}function se(A){Q(),H(A)}function ce(A){const J=i.value.find(D=>D.raw[r.value]===A);if(J)se(J);else{const D=a.value.find(ye=>ye[r.value]===A);D&&oe(D)}}function fe(A){const J=i.value.filter(be=>A.includes(be.raw[r.value])),D=J.map(be=>be.raw[r.value]),ye=a.value.filter(be=>{const Re=be[r.value];return!D.includes(Re)&&A.includes(Re)});J.length||ye.length,J.forEach(be=>{H(be)}),ye.forEach(be=>{oe(be)})}function pe(A){for(const J of A){if(!p.value.includes(J))continue;const D=i.value.find(ye=>ye.raw[r.value]===J);if(D)O(D);else{const ye=a.value.find(be=>be[r.value]===J);ye&&Ve(ye)}}p.value=p.value.filter(J=>!A.includes(J)),M()}function me(){i.value.forEach(A=>{const J=A.raw;J.__fv_checked__=!0,J.__fv_indeterminate__=!1;const D=new Set(p.value);D.add(J[r.value]),p.value=Array.from(D.values()),M(),A.checked=!0,A.indeterminate=!1})}function Pe(){i.value.forEach(A=>{const J=A.raw;J.__fv_checked__=!1,J.__fv_indeterminate__=!1,p.value=p.value.filter(D=>D!==J[r.value]),M(),A.checked=!1,A.indeterminate=!1})}function We(){return i.value.find(A=>A.raw[r.value]===c.value)}function Ce(){c.value=""}return{clearSelection:Q,currentSelectedDataId:c,enableMultiSelect:u,enableSelectRow:m,findIndexInSelectedItems:Y,getSelectedItems:P,getSelectionRow:We,indeterminate:W,indeterminateDataItem:R,isSelectingHirarchyItem:v,multiSelectMode:d,multiSelectOnClickRow:b,multiSelectOnClickRowWithShift:h,multiSelectOnlyOnCheck:w,select:H,selectAll:me,selectedValues:p,selectDataItem:oe,selectItem:se,selectItemById:ce,selectItemByIds:fe,showCheckBox:f,showSelectAll:g,toggleSelectItem:ee,toggleSelectItemWithoutRow:U,unSelect:O,unSelectAll:Pe,unSelectDataItem:Ve,unSelectItemByIds:pe,updateSelectAllStatus:B,selectAllStatus:S,indeterminateStatus:C,isSingleSelect:V,showSelection:y,keepSelectingOnPaging:T,emitSelectionChanged:I,emptyCurrentRowId:Ce}}function si(n,e){var y,T;const t=String(Date.now()),i=50,{showCheckBox:o}=e,r=l.ref(((y=n.rowNumber)==null?void 0:y.enable)??!1),a=l.computed(()=>n.hierarchy&&o.value&&n.selection.enableSelectRow&&n.selection.multiSelect?!1:o.value),s=l.ref(r.value?((T=n.rowNumber)==null?void 0:T.width)??36:0),c=l.ref(a.value?i:0),m=l.computed(()=>{var S,C;return r.value?((S=n.rowNumber)==null?void 0:S.heading)==="序号"?Ae.LocaleService.getLocaleValue("datagrid.lineNumberTitle"):(C=n.rowNumber)==null?void 0:C.heading:""}),u=l.computed(()=>(a.value&&!n.hierarchy?Number(c.value):0)+(r.value?Number(s.value):0));l.watch(()=>n.rowNumber,S=>{S&&S.enable!==void 0&&(r.value=S.enable),S&&S.width!==void 0&&(s.value=S.width)});function d(S){var F;const C={top:`${S.top}px`,width:`${u.value}px`,height:`${S.height||""}px`};if((F=n.rowOption)!=null&&F.customRowStyle){const V=n.rowOption.customRowStyle(S.raw)||{};return Object.assign({},C,V.style||{})}return C}const f=l.computed(()=>({width:`${u.value}px`}));function g(S){return`${t}_${S.type}_r_${S.index}_${S.refreshKey||""}`}function p(S){return`${t}_${S.type}_r_${S.index}_${S.refreshKey||""}`}return{showRowNumer:r,showSidebarCheckBox:a,sidebarCellPosition:d,sidebarCornerCellStyle:f,sidebarTitle:m,sidebarWidth:u,rowKey:p,cellKey:g}}const di={ascend:(n,e)=>n===e?0:n===!1?-1:1,decend:(n,e)=>n===e?0:n===!0?-1:1},ci={ascend:(n,e)=>{const t=new Date(new Date(n).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return t===i?0:t<i?-1:1},decend:(n,e)=>{const t=new Date(new Date(n).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return t===i?0:t<i?1:-1}},ui={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1},fi={ascend:(n,e)=>n===e?0:n<e?-1:1,decend:(n,e)=>n===e?0:n<e?1:-1};function mi(n){const e=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),t=new Map([["boolean-sorter",di],["datetime-sorter",ci],["numeric-sorter",ui],["text-sorter",fi]]);function i(a){const s=(a==null?void 0:a.dataType)||"string",c=e.get(s)||"text-sorter";return t.get(c)||(a==null?void 0:a.sorter)}function o(a){return i(a.column)}function r(a,s){const c=o(a),m=(a.status&Oe.sortable)===Oe.sortable&&(a.status&Oe.sorted)===Oe.sorted,u=(a.status&Oe.ascending)===Oe.ascending,d=(a.status&Oe.descending)===Oe.descending;if(m&&c){const f=u?c.ascend:d?c.decend:void 0;f?s.addSorter(a.field,{field:a.field,compare:f}):s.removeSorter(a.field)}else s.removeSorter(a.field)}return{getSorterByColumn:i,updateSorter:r}}function At(n,e,t,i,o="data-grid-column"){const{columnContext:r,hasLeftFixedColumn:a,hasRightFixedColumn:s}=t,{gridHeaderColumnsStyle:c,leftFixedGridHeaderColumnsStyle:m,rightFixedGridHeaderColumnsStyle:u}=i,d=r.value.defaultColumnWidth,f=32,g=new Map([[0,0]]);function p(B,P){const E=g.get(P)||0,N={height:`${B.depth*f}px`,left:`${B.left}px`,top:`${(B.layer-1)*f}px`,width:`${B.actualWidth}px`,padding:0};return r.value.headerDepth>1&&(N["line-height"]=`${B.depth*f}px`),g.set(P+1,E+(B.actualWidth||d)),N}const y=l.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":r.value.headerDepth>1})),T=l.computed(()=>({height:`${r.value.headerDepth*f}px`})),S=function(B){return e.showSetting&&!!B.showSetting};function C(){return l.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[l.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function F(B,P,E,N){var I;(I=n==null?void 0:n.setupContext)==null||I.emit("selectionChange",B,P,E,N)}function V(B){var E,N;return"w-100 d-flex align-items-center justify-content-"+(((E=B.column)==null?void 0:E.halign)==="center"?"center":((N=B.column)==null?void 0:N.halign)==="right"?"end pr-2":"start pl-2")}function v(B,P,E){var I;const N=l.ref(B.column);return l.createVNode("div",{class:"fv-grid-header-cell",style:p(B,E)},[l.createVNode(j.FDesignerItem,{modelValue:N.value,"onUpdate:modelValue":_=>N.value=_,customClass:V(B),canAdd:!1,canDelete:!1,canMove:!1,key:(I=N.value)==null?void 0:I.id,type:o,componentId:e.componentId,onSelectionChange:F},null),S(B)&&C(),B.resizable&&l.createVNode("span",{class:"fv-column-resize-bar"},null)])}function w(B){return B.map((P,E)=>{const N=[];if(N.push(v(P,B,E)),P.children&&P.children.length){const I=w(P.children);N.push(...I)}return N})}function h(){return l.createVNode("div",{class:"fv-grid-header-left-fixed"},[l.createVNode("div",{class:"fv-grid-header-columns",style:m.value},[w(r.value.leftHeaderColumns)])])}function b(){return l.createVNode("div",{class:"fv-grid-header-right-fixed"},[l.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[w(r.value.rightHeaderColumns)])])}function M(){return l.createVNode("div",{class:y.value,style:T.value},[a.value&&h(),l.createVNode("div",{class:"fv-grid-header-primary"},[l.createVNode("div",{class:"fv-grid-header-columns",style:c.value},[w(r.value.primaryHeaderColumns)])]),s.value&&b()])}return{renderGridHeader:M}}const ft={"data-grid":{name:"表格"},"tab-page":{type:"tab-page"},section:{type:"section"}};class pi extends Le.BaseControlProperty{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=je.useCommandOption(this).getCommandColumnProperties(e),this.propertyConfig.categories.column=je.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=je.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=je.useSummary().getSummaryProperties(e),this.propertyConfig.categories.group=je.useGroup().getGroupProperties(e),this.propertyConfig.categories.sort=je.useSort().getSort(e),this.propertyConfig.categories.filter=je.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,s,c;const t=(c=(s=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:s.entity[0])==null?void 0:c.entities[0],i=this.assembleSchemaEntityToTree(t,0),o=this,r=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...r.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:!0}},setPropertyRelates(m,u){switch(m&&m.propertyID){case"dataSource":{const d=o.formSchemaUtils.getViewModelById(o.viewModelId);if(d){const f=i.find(g=>g.label===m.propertyValue);d.bindTo=f.bindTo}o.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,t,i,o="",r=[]){const a=o?`${o}/${e.label}`:"/";return r.push({id:e.id,name:e.name,label:e.label,layer:t,parent:i&&i.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(s=>this.assembleSchemaEntityToTree(s,t+1,e,a,r)),r}getAppearanceProperties(e){this.propertyConfig.categories.appearance=je.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=je.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=je.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=je.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const t=[...je.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"单元格结束编辑事件"}],i=this,o=i.eventsEditorUtils.formProperties(e,i.viewModelId,t),r=i.createBaseEventProperty(o);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const c=a.propertyValue;delete e[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(e,i.viewModelId,c.events,c)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand,e.command.onHandleAction=e.onHandleAction)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function hi(n,e){const t=n.schema,i=l.ref(!0),o=l.ref(!0);function r(d){return d&&d.sourceType==="control"?d.componentCategory==="input":!1}function a(){return!1}function s(){return!1}function c(){return!0}function m(d){return new pi(d,e).getPropertyConfig(t)}function u(){var d,f,g,p;if(n&&e){const y=(d=n==null?void 0:n.componentInstance)==null?void 0:d.value.belongedComponentId;let T="",S="";const{formSchemaUtils:C}=e;if(y){const V=C.getRootViewModelId(),v=C.getComponentByViewModelId(V),w=C.selectNode(v,h=>h.contents&&h.contents.find(b=>b.component===y));(w==null?void 0:w.type)===((f=ft["tab-page"])==null?void 0:f.type)&&((g=w==null?void 0:w.contents)!=null&&g.length)&&(T=w.title||""),(w==null?void 0:w.type)===((p=ft.section)==null?void 0:p.type)&&(w==null?void 0:w.showHeader)!==!1&&(T=w.mainTitle||""),T=T?`${T} > `:"",S=T?w.id:""}const F=ft["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(n.schema.id,{componentTitle:F,parentPathName:`${T}${F}`,reliedComponentId:S})}}return{canAccepts:r,checkCanDeleteComponent:a,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:m,setComponentBasicInfoMap:u}}const Qe=l.defineComponent({name:"FDataGridDesign",props:Cn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(n,e){var Ce;const t=l.ref(),i=l.inject("designer-host-service"),o=l.inject("design-item-context"),r=hi(o,i),a=j.useDesignerComponent(t,o,r);a.value.styles="display:flex;flex:1;",l.onMounted(()=>{t.value.componentInstance=a}),l.provide("data-grid-context",{dataGridProps:n}),e.expose(a.value);const s=l.ref(n.columns),c=20,m=li(n),u=0,d=l.ref(),f=l.ref(),g=l.ref(n.showStripe),p=l.ref([]),y=l.ref(!1),T=l.ref(((Ce=n.rowOption)==null?void 0:Ce.wrapContent)||!1),S=zn(n,e),C=Gn(n),F=On(n,new Map,S,C,m),V=ai(n,F,m,p,e),v=l.computed(()=>F.totalItems.value<c?F.totalItems.value:c),{containerStyleObject:w}=kn(n),h=En(n),{applyCommands:b}=h;b(s);const M=Mn(n),B=mi(),{applyColumnSorter:P,columnContext:E,updateColumnRenderContext:N}=M;P(F,B);const I=Pn(n,E),_=ri(n,e,V,m),x=oi(n,e,m,_),G=Dn(n),k=ei(n,x,G),$=ti(n,F,x,C,m,G,k),Y=ni(n,m,k,$),Q=ii(n,m,k,$),oe=Fn(n,s,F,v,u,$,Y,Q),{getVisualData:Ve}=oe,Se=si(n,V),{sidebarWidth:xe}=Se;p.value=Ve(0,v.value+u-1);const H=Un(n,F,p,E,oe,v,u,xe),{onWheel:O,dataGridWidth:R,viewPortHeight:W,viewPortWidth:U}=H,ee=wn(n,E,d,U,I),{calculateColumnsSize:se}=ee,ce=l.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":g.value})),fe=l.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":T.value})),{renderGridHeader:pe}=At(o,n,M,H),{renderHorizontalScrollbar:me}=Vn(n,d,H);function Pe(){var A,J;W.value=((A=f.value)==null?void 0:A.clientHeight)||0,R.value=((J=d.value)==null?void 0:J.clientWidth)||0,se()}l.onMounted(()=>{d.value&&(mn.useResizeObserver(d.value,Pe),se(),l.nextTick(()=>{d.value&&(R.value=d.value.clientWidth),f.value&&(U.value=f.value.clientWidth,W.value=f.value.clientHeight)}))});function We(A){A&&(s.value=A,b(s),N(s.value),P(F,B),se())}return l.watch(()=>n.columns,A=>{We(A),j.canvasChanged.value++}),l.watch(U,()=>{d.value&&se()}),()=>l.createVNode("div",{ref:t,class:ce.value,style:w.value,onWheel:O},[pe(),l.createVNode("div",{ref:d,class:fe.value,onMouseover:()=>{y.value=!0},onMouseleave:()=>{y.value=!1}},[me()])])}}),gi={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClosePopup:{type:Function,default:null}},yi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},vi=l.defineComponent({name:"FOverlay",props:yi,emits:["click"],setup(n,e){const t=l.ref(n.popupContentPosition),i=l.ref(n.host),o=l.computed(()=>({backgroundColor:n.backgroundColor||"",pointerEvents:"auto"}));function r(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}l.computed(()=>{const s=i.value;if(s){const c=s.getBoundingClientRect(),{left:m,top:u,height:d}=c;return{left:m,top:u+d}}return t.value});const a=l.computed(()=>({}));return()=>l.createVNode(l.Teleport,{to:"body"},{default:()=>{var s,c;return[l.createVNode("div",{class:"overlay-container",onClick:m=>r(m),style:o.value},[l.createVNode("div",{style:a.value},[(c=(s=e.slots).default)==null?void 0:c.call(s)])])]}})}});function bi(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function Ci(n){const e=document.createElement("div");e.style.display="contents";let t;const i=n.onClickCallback||(()=>{}),o=()=>{i(),t&&t.unmount()};return t=l.createApp({setup(){l.onUnmounted(()=>{document.body.removeChild(e)});const r=bi(n);return()=>l.createVNode(vi,{"popup-content-position":n.popupPosition,host:n.host,onClick:o,backgroundColor:n.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(e),t.mount(e),t}class wi{static show(e){return Ci(e)}}const Si={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60},host:{type:Object,default:"body"},isMessager:{type:Boolean,default:!1}};class Ee{constructor(e,t){this.x=e,this.y=t}static getTransformInfo(e){const i=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const o=parseInt(i[4],10),r=parseInt(i[5],10);return{x:o,y:r}}return{x:0,y:0}}static fromEvent(e,t=null){if(this.isMouseEvent(e))return new Ee(e.clientX,e.clientY);if(t===null||e.changedTouches.length===1)return new Ee(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let i=0;i<e.changedTouches.length;i++)if(e.changedTouches[i].target===t)return new Ee(e.changedTouches[i].clientX,e.changedTouches[i].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const t=new Ee(0,0);if(window){const i=window.getComputedStyle(e);if(i){const o=parseInt(i.getPropertyValue("left"),10),r=parseInt(i.getPropertyValue("top"),10);t.x=isNaN(o)?0:o,t.y=isNaN(r)?0:r}return t}return null}static copy(e){return new Ee(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class tt{constructor(e,t){this.width=e,this.height=t}static getCurrent(e){const t=new tt(0,0);if(window){const i=window.getComputedStyle(e);return i&&(t.width=parseInt(i.getPropertyValue("width"),10),t.height=parseInt(i.getPropertyValue("height"),10)),t}return null}static copy(e){return new tt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Mi(n,e){const t=l.ref(),i=l.ref(),o=l.ref(),r=l.ref(),a=l.ref(),s=l.ref(),c=l.ref(),m=l.ref(),u=l.ref(),d=l.ref(),f=l.ref(),g=l.ref(n.resizeable),p=l.ref(),y=l.ref(n.draggable),T=l.ref(!1);function S(){const k=i.value||document.body,$=window.getComputedStyle(k);if(!$||!t.value)return;const Y=Ee.getTransformInfo(t.value),Q={};c.value&&(Q.deltaL=t.value.offsetLeft-c.value.x,Q.deltaT=t.value.offsetTop-c.value.y);const oe=$.getPropertyValue("position");Q.width=k.clientWidth,Q.height=k.clientHeight,Q.pr=parseInt($.getPropertyValue("padding-right"),10),Q.pb=parseInt($.getPropertyValue("padding-bottom"),10),Q.position=$.getPropertyValue("position"),oe==="static"&&(k.style.position="relative"),Q.translateX=Y.x,Q.translateY=Y.y,d.value=Q}function C(k){if(t.value){r.value=tt.getCurrent(t.value),a.value=Ee.getCurrent(t.value),s.value=r.value?tt.copy(r.value):null,c.value=a.value?Ee.copy(a.value):null,S();const $=k.target.getAttribute("type")||"";m.value={n:!!$.match(/n/),s:!!$.match(/s/),w:!!$.match(/w/),e:!!$.match(/e/)}}}function F(){var k,$,Y,Q;if(t.value){const oe=t.value;m.value&&((m.value.n||m.value.s)&&((k=s.value)!=null&&k.height)&&(oe.style.height=s.value.height+"px"),(m.value.w||m.value.e)&&(($=s.value)!=null&&$.width)&&(oe.style.width=s.value.width+"px"),c.value&&((Y=c.value)!=null&&Y.x&&(oe.style.left=c.value.x+"px"),(Q=c.value)!=null&&Q.y&&(oe.style.top=c.value.y+"px")))}}function V(){const k=n.minHeight?n.minHeight:1,$=n.minWidth?n.minWidth:1;s.value&&c.value&&m.value&&r.value&&(s.value.height<k&&(s.value.height=k,m.value.n&&a.value&&(c.value.y=a.value.y+(r.value.height-k))),s.value.width<$&&(s.value.width=$,m.value.w&&a.value&&(c.value.x=a.value.x+(r.value.width-$))),n.maxHeight&&s.value.height>n.maxHeight&&(s.value.height=n.maxHeight,a.value&&m.value.n&&(c.value.y=a.value.y+(r.value.height-n.maxHeight))),n.maxWidth&&s.value.width>n.maxWidth&&(s.value.width=n.maxWidth,m.value.w&&a.value&&(c.value.x=a.value.x+(r.value.width-n.maxWidth))))}function v(){if(i.value){const k=d.value;if(c.value&&s.value&&m.value&&r.value){const $=k.width-k.pr-k.deltaL-k.translateX-c.value.x,Y=k.height-k.pb-k.deltaT-k.translateY-c.value.y;m.value.n&&c.value.y+k.translateY<0&&a.value&&(c.value.y=-k.translateY,s.value.height=r.value.height+a.value.y+k.translateY),m.value.w&&c.value.x+k.translateX<0&&a.value&&(c.value.x=-k.translateX,s.value.width=r.value.width+a.value.x+k.translateX),s.value.width>$&&(s.value.width=$),s.value.height>Y&&(s.value.height=Y)}}}function w(k){if(!o.value||!r.value||!a.value||!m.value)return;k.subtract(o.value);const $=k.x,Y=k.y;m.value.n?(c.value.y=a.value.y+Y,s.value.height=r.value.height-Y):m.value.s&&(s.value.height=r.value.height+Y),m.value.e?s.value.width=r.value.width+$:m.value.w&&(s.value.width=r.value.width-$,c.value.x=a.value.x+$),v(),V(),F()}function h(k){if(!u.value)return;const $=Ee.fromEvent(k);$&&w($)}function b(){if(t.value){const{width:k,height:$,x:Y,y:Q}=t.value.getBoundingClientRect(),oe=Ee.getTransformInfo(t.value);return{size:{width:k,height:$},position:{x:Y-oe.x,y:Q-oe.y}}}return null}function M(k){if(t.value){const $=b();f.value=$}o.value=void 0,r.value=null,a.value=null,s.value=null,c.value=null,m.value=null,u.value=null,document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",M)}function B(){document.addEventListener("mousemove",h),document.addEventListener("mouseup",M)}function P(k){k instanceof MouseEvent&&k.button===2||y.value&&(document.body.click(),k.stopPropagation(),k.preventDefault(),o.value=Ee.fromEvent(k),u.value=k.target,C(k),B())}function E(k){return t.value=k,g.value&&l.createVNode(l.Fragment,null,[l.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:$=>P($)},null),l.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:$=>P($)},null),l.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:$=>P($)},null),l.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:$=>P($)},null),l.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:$=>P($)},null),l.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:$=>P($)},null),l.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:$=>P($)},null),l.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:$=>P($)},null)])}function N(k=!0){document.body.click();const $=i.value||document.body,Y=tt.getCurrent($),Q=t.value;k&&Q&&(p.value=b(),p.value.transform=Q.style.transform),Y&&Q&&(s.value=Y,s.value.height-=14,s.value.width-=14,Q.style.height=s.value.height+"px",Q.style.width=s.value.width+"px",Q.style.left="7px",Q.style.top="7px",Q.style.transform="",f.value={size:s.value,position:{x:0,y:0}},y.value=!1,T.value=!0)}function I(){var k,$;if(document.body.click(),p.value){const Y={width:p.value.size.width||0,height:p.value.size.height||0},Q={x:(window.innerWidth-Y.width)/2,y:(window.innerHeight-Y.height)/2};(k=s.value)==null||k.set(Y),($=c.value)==null||$.set(Q);const oe=t.value;oe.style.height=Y.height+"px",oe.style.width=Y.width+"px",oe.style.left=`${Q.x}px`,oe.style.top=`${Q.y}px`,oe.style.transform="",f.value={size:Y,position:Q},y.value=n.draggable,T.value=!1}}function _(){if(t.value){const k=tt.getCurrent(t.value);if(k){const{width:$,height:Y}=k;t.value.style.left=`${(window.innerWidth-$)/2}px`,t.value.style.top=`${(window.innerHeight-Y)/2}px`,t.value.style.transform=""}}}function x(){const k=()=>{T.value?N(!1):_(),document.body.click()};return window.addEventListener("resize",k),()=>{window.removeEventListener("resize",k)}}const G=x();return{renderResizeBar:E,boundingElement:i,resizedEventParam:f,maximize:N,restore:I,allowDrag:y,isMaximized:T,unWindowResizeHandle:G,moveToCenter:_}}function Fi(n,e,t){const i=l.ref(),o=l.ref(n.draggable),r=l.ref(n.lockAxis),a=l.ref(),s=l.ref(),c=l.ref(!1),m=l.ref(new Ee(0,0)),u=l.ref(new Ee(0,0)),d=l.ref(new Ee(0,0)),f=l.ref(new Ee(0,0));l.watch(()=>t.value,h=>{a.value.style.cursor=h?"move":"default"});function g(h,b){if(b.tagName==="BUTTON")return!1;if(b===h)return!0;for(const M in b.children)if(Object.prototype.hasOwnProperty.call(b.children,M)&&g(h,b.children[M]))return!0;return!1}function p(){var B,P;let h=d.value.x+u.value.x,b=d.value.y+u.value.y;r.value==="x"?(h=((B=m.value)==null?void 0:B.x)||0,d.value.x=0):r.value==="y"&&(b=((P=m.value)==null?void 0:P.y)||0,d.value.y=0);const M=`translate3d(${Math.round(h)}px, ${Math.round(b)}px, 0px)`;i.value&&(i.value.style.transform=M),f.value.x=h,f.value.y=b}function y(){if(!s.value||!i.value)return null;const h=s.value.getBoundingClientRect(),b=i.value.getBoundingClientRect(),M={top:h.top<b.top,right:h.right>b.right,bottom:h.bottom>b.bottom,left:h.left<b.left};return M.top||(d.value.y-=b.top-h.top),M.bottom||(d.value.y-=b.bottom-h.bottom),M.right||(d.value.x-=b.right-h.right),M.left||(d.value.x-=b.left-h.left),p(),M}function T(h){h&&(m.value&&h.subtract(m.value),d.value.set(h),p(),y())}function S(h){c.value&&o.value&&(h.stopPropagation(),h.preventDefault(),T(Ee.fromEvent(h,a.value)))}function C(){var h;c.value&&(c.value=!1,u.value.add(d.value),d.value.reset(),(h=i.value)==null||h.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",C))}function F(){!c.value&&a.value&&(c.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",S),document.addEventListener("mouseup",C))}function V(){if(i.value){const h=Ee.getTransformInfo(i.value);u.value.set(h);return}u.value.reset()}function v(h){if(!t.value||h instanceof MouseEvent&&h.button===2)return;const b=h.target||h.srcElement;a.value!==void 0&&b&&!g(b,a.value)||o.value!==!1&&(document.body.click(),h.stopPropagation(),h.preventDefault(),m.value=Ee.fromEvent(h,i.value),V(),F())}function w(h,b,M){if(o.value&&b){if(h)a.value=h;else if(n.dragHandle){if(n.dragHandle instanceof HTMLElement)a.value=n.dragHandle;else if(typeof n.dragHandle=="string"){const B=b.querySelector(n.dragHandle);B&&(a.value=B)}}i.value=b,s.value=M,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",v)):o.value=!1}}return{registerDraggle:w,resetTranslate:V}}function Lt(n,e){if(n){const t=i=>{i.key.toLowerCase()===n.toLowerCase()&&e({event:i,key:n})};return document.addEventListener("keydown",t),()=>{document.removeEventListener("keydown",t)}}}function Ti(n,e){const t=l.ref(n.enableEsc);let i=null;return t.value?(i=Lt("Escape",o=>{e.emit("esc",{event:o.event,type:"esc"})}),{remove:i}):null}function _i(n,e){const t=l.ref(n.enableEnter);let i=null;return t.value?(i=Lt("Enter",o=>{e.emit("enter",{event:o.event,type:"enter"})}),{remove:i}):null}const lt=l.defineComponent({name:"FModal",props:Si,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(n,e){const t=l.ref(n.width||300),i=l.ref(n.height||200),o=l.ref(n.modelValue),r=l.ref(""),a=l.ref(n.class),s=l.ref(n.fitContent),c=l.ref(n.showHeader),m=l.ref(""),u=l.ref(n.showCloseButton),d=l.ref(n.showMaxButton),f=l.ref(!1),g=l.ref(n.dialogType),p=l.ref(n.src),y=l.ref(""),T=l.ref(n.showButtons),S=l.ref(n.title),C=l.ref(n.containment||null),F=l.ref();S.value==="错误提示"&&(S.value=Ae.LocaleService.getLocaleValue("messageBox.errorTitle"));const V=l.ref(!1);function v(z,le){const he=le?"accept":"cancel";Promise.resolve().then(()=>{var Me;return(Me=n.beforeClose)==null?void 0:Me.call(n,{closeType:he})}).then(Me=>{Me&&(o.value=!1,e.emit("update:modelValue",!1),le!=null&&e.emit(le?"accept":"cancel"),e.emit("closed",z))})}const w=[{name:"cancel",text:Ae.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:z=>{v(z,!1)}},{name:"accept",text:Ae.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:z=>{v(z,!0)}}],h=l.ref(n.buttons&&n.buttons.length?n.buttons:w),b=l.computed(()=>!!m.value),M=l.computed(()=>!!T.value&&!!h.value),B=l.ref(),P=l.ref(),E=l.ref(!1),{renderResizeBar:N,maximize:I,restore:_,boundingElement:x,resizedEventParam:G,allowDrag:k,unWindowResizeHandle:$,moveToCenter:Y}=Mi(n),{registerDraggle:Q}=Fi(n,e,k);function oe(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function Ve(){const z=document.querySelectorAll(".farris-modal").length;(!z||z-1<=0)&&document.body.classList.remove("modal-open"),F.value&&F.value.classList.remove("show")}l.watch(()=>n.title,(z,le)=>{z!==le&&(S.value=z)}),l.watch(()=>n.modelValue,(z,le)=>{z!==le&&(o.value=z,o.value&&n.draggable&&l.nextTick(()=>{P.value&&!C.value&&(C.value=P.value.parentElement,x.value=C.value,Q(B.value,P.value,x.value),Y())}),z||(C.value&&(C.value=null),Ve())),o.value?V.value=oe():(E.value=!1,k.value=n.draggable)}),l.watch(()=>n.showHeader,(z,le)=>{z!==le&&(c.value=z)}),l.watch(()=>n.showButtons,(z,le)=>{z!==le&&(T.value=z)}),l.watch(()=>G.value,(z,le)=>{const he=z||{},Me=le||{};JSON.stringify(he)!==JSON.stringify(Me)&&e.emit("resize",{newSize:z,oldSize:le,isMaximized:E.value})}),l.watch([()=>n.width,()=>n.height],(z,le)=>{(z[0]!==le[0]||z[1]!==le[1])&&(t.value=z[0]||500,i.value=z[1]||600)}),l.watch(()=>n.class,(z,le)=>{a.value=z});const Se=l.computed(()=>(o.value&&document.body.classList.add("modal-open"),o.value)),xe=l.computed(()=>{var he;const z={modal:!0,"farris-modal":!0,fade:!0};z["f-modal-fitContent"]=!!s.value,z.show=!!Se.value;const le=(he=n.maskClass)==null?void 0:he.split(" ");return le==null||le.reduce((Me,_e)=>(Me[_e]=!0,Me),z),z}),H=l.computed(()=>{var he;const z={"modal-dialog":!0},le=(he=a.value)==null?void 0:he.split(" ");return le==null||le.reduce((Me,_e)=>(Me[_e]=!0,Me),z),z}),O=()=>X.isMobilePhone()&&!n.isMessager,R=l.computed(()=>{const z=document.documentElement.clientWidth,le=document.documentElement.clientHeight,he=Math.min(t.value,z),Me=s.value?"auto":`${Math.min(i.value,le-10)}px`,_e={position:"absolute",top:`${(window.innerHeight-parseInt(Me==="auto"?"0":Me))/2}px`,left:`${(window.innerWidth-he)/2}px`,width:`${he}px`,height:Me};return O()&&(_e.top="0px",_e.left="0px",_e.width=`${window.innerWidth}px`,_e.height=`${window.innerHeight}px`),n.mask||(_e.pointerEvents="auto"),_e}),W=l.ref(X.getMaxZIndex()||1050),U=l.computed(()=>{const z={display:"block",overflow:"hidden"};return n.mask||(z.pointerEvents="none",z.backgroundColor="transparent"),V.value&&(z.backgroundColor="transparent"),z.zIndex=W.value,z}),ee=l.computed(()=>({"modal-content":!0,"modal-content-has-header":c.value,"is-mobile":O()})),se=l.computed(()=>{const z={display:c.value?"":"none"};return z["pointer-events"]=k.value?"auto":"none",z}),ce=l.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:E.value})),fe=l.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe","f-utils-fill":!0}));function pe(){return{height:`${n.footerHeight||60}px`}}const me=l.computed(()=>{const z={textAlgin:y.value},le=pe();return Object.assign(z,le)});function Pe(z){if(z==null||z.stopPropagation(),E.value){E.value=!1,_();return}I(),E.value=!0}async function We(z,le){z.handle&&await z.handle(le,z)&&e.emit("closed",le)}function Ce(z){z.width&&(t.value=z.width),z.height&&(i.value=z.height),z.buttons&&(h.value=z.buttons),z.title&&(S.value=z.title)}let A=null,J=null;l.onBeforeMount(()=>{V.value=oe()}),l.onMounted(()=>{P.value&&!C.value&&(C.value=P.value.parentElement,x.value=C.value,Q(B.value,P.value,x.value)),Se.value&&document.body.classList.add("modal-open"),A=Ti(n,e),J=_i(n,e)}),l.onUnmounted(()=>{$&&$(),A&&A.remove(),J&&J.remove()}),e.expose({modalElementRef:P,updateModalOptions:Ce,close:v,maxDialog:Pe,isMaximized:E});function D(){return l.createVNode("ul",null,[f.value&&l.createVNode("li",{class:"f-btn-icon f-bare"},[l.createVNode("span",{class:"f-icon modal_minimize"},null)]),d.value&&l.createVNode("li",{onClick:Pe,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[l.createVNode("span",{class:ce.value},null)]),u.value&&l.createVNode("li",{class:"f-btn-icon f-bare",onClick:z=>v(z,!1),style:"pointer-events: auto;"},[l.createVNode("span",{class:"f-icon modal_close"},null)])])}function ye(){return l.createVNode("div",{class:"modal-footer",style:me.value},[h.value&&h.value.map(z=>{const le=l.ref(z.disabled);return l.createVNode("button",{name:z.name,type:"button",disabled:le.value,class:z.class+(z.iconClass?" btn-icontext":""),onClick:he=>{We(z,he)}},[!!z.iconClass&&l.createVNode("i",{class:z.iconClass},null),z.text])})])}function be(){return l.createVNode("div",{ref:B,class:"modal-header",style:se.value},[e.slots.headerTemplate?e.slots.headerTemplate():l.createVNode("div",{class:"modal-title"},[b.value&&l.createVNode("span",{class:m.value,style:"margin-right: 8px"},null),l.createVNode("span",{class:"modal-title-label"},[S.value])]),l.createVNode("div",{class:"actions"},[D()])])}function Re(){return e.slots.footerTemplate?e.slots.footerTemplate():M.value&&ye()}function Ze(z){if(z.stopPropagation(),n.allowClickMaskToClose){if(z.target!==F.value)return;v(z,!1)}}function at(){var z,le;return l.createVNode("div",{id:r.value,class:H.value,style:R.value,ref:P},[l.createVNode("div",{class:ee.value},[c.value&&be(),l.createVNode("div",{class:fe.value},[(le=(z=e.slots).default)==null?void 0:le.call(z),g.value==="iframe"&&l.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:p.value},null)]),Re()]),!s.value&&P.value&&!E.value&&N(P.value)])}function st(z){return z||"body"}return l.watchEffect(()=>{Se.value&&(W.value=X.getMaxZIndex()||1050)}),()=>l.createVNode(l.Teleport,{to:st(n.host)},{default:()=>[Se.value&&l.createVNode(l.Transition,{name:"fade",appear:!0},{default:()=>[l.createVNode("div",{ref:F,class:xe.value,style:U.value,onClick:Ze},[at()])]})]})}});function $t(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function xi(n){const e=document.createElement("div");e.style.display="contents";const t=l.createApp({setup(i,o){l.onUnmounted(()=>{document.body.removeChild(e)});const r=l.ref(),a=l.ref(n.class||""),s=l.ref(!!n.showButtons),c=l.ref(!!n.showHeader),m=l.ref(n.showCloseButton==null?!0:n.showCloseButton),u=l.ref(!0),d=l.ref(n.title||""),f=n.acceptCallback||(()=>{}),g=n.rejectCallback||(()=>{}),p=n.closedCallback||(F=>{}),y=n.resizeHandle||(F=>{}),T=n.stopMoveHandle||(F=>{}),S=$t(n),C=F=>{u.value=!1,t.unmount(),p(F)};return l.onMounted(()=>{}),o.expose({modalRef:r}),()=>l.createVNode(lt,{ref:r,class:a.value,modelValue:u.value,"onUpdate:modelValue":F=>u.value=F,title:d.value,width:n.width,height:n.height,buttons:n.buttons,"show-header":c.value,"show-buttons":s.value,"show-close-button":m.value,"show-max-button":!1,onAccept:f,onCancel:g,fitContent:n.fitContent==null?!0:n.fitContent,onClosed:C,onResize:y,onStopMove:T},{default:()=>[S&&S(t)]})}});return document.body.appendChild(e),t.use(Ae.LocaleService.i18n),t.mount(e),t}class Vi{constructor(e){ie(this,"appContext",null);ie(this,"modalRef",l.ref());ie(this,"activeModalIndex",l.ref(0));ie(this,"modalRefs",{});ie(this,"isUseEscCloseModal",l.ref(!1));ie(this,"activeModalInstance",l.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,t){const{width:i,height:o}={width:window.innerWidth,height:window.innerHeight};return i<e&&(e=i-14),o<t&&(t=o-14),{width:e,height:t}}static show(e){const t=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return xi(t)}close(e){var t,i;e?(i=e.value)==null||i.close():(t=this.getCurrentModal())==null||t.close()}open(e){const t=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const i=l.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),o=l.ref(!0),r=i.value.acceptCallback||(()=>{}),a=i.value.rejectCallback||(()=>{}),s=i.value.closedCallback||((v,w)=>{}),c=i.value.resizeHandle||(v=>{}),m=e.stopMoveHandle||(v=>{});let u;const d=$t(i.value),f=v=>{var h;o.value=!1;const w=(h=v==null?void 0:v.target)==null?void 0:h.classList.contains("modal_close");s(v,this.isUseEscCloseModal.value?"esc":w?"icon":"button")},g=v=>{f(v),u&&l.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],l.render(null,t),u=null,this.modalRef.value=null,this.modalRefs){const w=Object.keys(this.modalRefs).map(h=>Number(h));w.length>0?this.activeModalIndex.value=Math.max(...w):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},p=v=>{var w;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((w=this.activeModalInstance.value)==null||w.close(v==null?void 0:v.event))},{width:y,height:T}=i.value,S=this.adaptToWindow(y||500,T||320);Object.assign(i.value,S);const C=()=>l.createVNode(lt,l.mergeProps({ref:this.modalRef,modelValue:o.value,"onUpdate:modelValue":v=>o.value=v},i.value,{isMessager:i.value.class&&i.value.class.indexOf("modal-message")>-1,onAccept:r,onCancel:a,onClosed:g,onResize:c,onEsc:p,onStopMove:m}),{default:()=>[d&&d(this.app)]});return u=(v=>{const w=l.h(C,v);return w.appContext=this.appContext,l.render(w,t),w})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:v=>{i.value={...i.value,...v},u&&l.render(l.cloneVNode(u,{...i}),t)},destroy:g,modalRef:this.activeModalInstance,close:()=>this.close()}}}const jt=Symbol("FModalService");lt.install=n=>{n.component(lt.name,lt);const e=new Vi(n);n.provide(jt,e),n.provide("FModalService",e)};function Wt(n,e){function t(){const i=n.beforeOpen||n.beforeClickButton||null;let o=Promise.resolve(!0);if(i){const r=i(e.value);if(typeof r>"u")return o;typeof r=="boolean"?o=Promise.resolve(r):o=r}return o}return{judgeCanOpen:t}}function Ii(n,e,t,i,o){const r=l.ref(n.buttonBehavior),a=l.ref(n.popupOnInput),s=l.computed(()=>({"input-group-append":!0,"append-force-show":n.showButtonWhenDisabled&&(n.readonly||n.disable)})),{judgeCanOpen:c}=Wt(n,o),m=l.computed(()=>n.showButtonWhenDisabled||(!n.editable||!n.readonly)&&!n.disable),u=l.inject(jt,null),d=l.ref();async function f(y){if(await c()&&m.value){const T=!!e.slots.default;if(r.value==="Modal"){const S=n.modalOptions,C=u==null?void 0:u.open({...S,render:()=>e.slots.default&&e.slots.default()});d.value=C==null?void 0:C.modalRef}r.value==="Overlay"&&wi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),T&&r.value==="Popup"&&i.togglePopup(!0),T&&a.value&&i.hidePopup(),e.emit("clickButton",{origin:y,value:n.modelValue})}}function g(y){e.emit("mouseEnterIcon",y)}function p(y){e.emit("mouseLeaveIcon",y)}return{buttonGroupClass:s,onClickButton:f,onMouseEnterButton:g,onMouseLeaveButton:p,modalRef:d}}function ki(n,e,t,i,o,r){const a=l.ref(!1),s=l.computed(()=>n.enableClear&&!n.readonly&&!n.disable),{changeTextBoxValue:c,hasClearClass:m}=r;function u(p){a.value=p,m.value=p}l.watch(o,()=>{u(!!o.value)});function d(p){const y=!n.readonly&&!n.disable&&n.editable,T=!n.editable;p.stopPropagation(),(y||T)&&(c(""),o.value="",u(!a.value),e.emit("clear"))}function f(p){if(s.value){if(!t.value){u(!1);return}!n.disable&&!n.readonly&&u(!0)}}function g(p){s.value&&u(!1)}return{enableClearButton:s,showClearButton:a,onClearValue:d,onMouseEnterTextBox:f,onMouseLeaveTextBox:g}}function Ei(n,e,t,i,o){const r=l.computed(()=>n.popupOnInput),a=l.computed(()=>n.popupOnFocus),{shouldPopupContent:s,closeAllPopover:c}=o,m=l.ref(!1),u=l.computed(()=>n.enableTitle?t.value:""),d=l.computed(()=>(n.disable||n.readonly)&&!n.forcePlaceholder?"":n.placeholder),f=l.computed(()=>n.readonly||!n.editable),g=l.ref(!1),p=l.computed(()=>!n.disable&&g.value),y=l.computed(()=>({"text-left":n.textAlign==="left","text-center":n.textAlign==="center","text-right":n.textAlign==="right","form-control":!0,"f-utils-fill":!0})),T=l.computed(()=>({"input-group":!0,"f-state-disabled":n.disable,"f-state-editable":n.editable&&!n.disable&&!n.readonly,"f-state-readonly":n.readonly,"f-state-focus":p.value,"input-group--has-clear":n.enableClear&&m.value}));function S(P,E=!0){t.value=P,E&&(e.emit("change",P),e.emit("update:modelValue",P))}function C(P){s.value=!1,S(P,!0)}l.watch(()=>n.modelValue,P=>{t.value=P});function F(P){g.value=!1,e.emit("blur",P),P.stopPropagation()}function V(P){e.emit("click",P),c(),e.slots.default&&!n.disable&&!n.readonly&&n.popupOnClick&&o.togglePopup()}function v(P){!n.disable&&!n.readonly&&(g.value=!0,f.value||(e.emit("focus",P),a.value&&!s.value&&o.popup()))}function w(P){e.emit("input",P);const E=P.target.value;i.value=E,t.value!==E&&S(E,n.updateOn==="change"),r.value&&!s.value&&o.popup()}function h(P){P.target.tagName!=="INPUT"&&P.preventDefault(),P.stopPropagation()}function b(P){e.emit("keydown",P)}function M(P){P.key==="Enter"&&(r.value||a.value)&&o.hidePopup(),e.emit("keyup",P)}function B(P){const E=P.target.value;P.stopPropagation(),S(E)}return{hasFocusedTextBox:p,isTextBoxReadonly:f,textBoxClass:y,textBoxPlaceholder:d,textBoxTitle:u,inputGroupClass:T,hasClearClass:m,changeTextBoxValue:S,commitValue:C,onBlurTextBox:F,onClickTextBox:V,onFocusTextBox:v,onInput:w,onKeyDownTextBox:b,onKeyUpTextBox:M,onMouseDownTextBox:h,onTextBoxValueChange:B}}const nt="FarrisVue_PopoverInstancesKey";function Pi(n,e,t,i){const o=l.ref(),r=l.ref(!1),{judgeCanOpen:a}=Wt(n,i);l.watch(()=>o.value,(g,p)=>{window[nt]=window[nt]||new WeakMap,g?window[nt].set(t.value,g):window[nt].delete(t.value)});function s(){if(window[nt]){const g=window[nt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(p=>{const y=g.get(p);y&&p!==t.value&&!t.value.closest(".popover-fitcontent")&&y.hide()})}}function c(){const g=o.value;g&&g.show(t.value)}async function m(g=!1){if(!!e.slots.default){if(!g&&!r.value&&!await a())return;r.value=!r.value,r.value&&(await l.nextTick(),c())}}async function u(g=!1){if(!!e.slots.default){if(!g&&!await a())return;r.value=!0,await l.nextTick(),c()}}function d(){r.value=!1}function f(){r.value=!0,l.nextTick(()=>{c()})}return{hidePopup:d,showPopup:f,popup:u,shouldPopupContent:r,togglePopup:m,popoverRef:o,closeAllPopover:s}}function Ni(n,e,t){const i=l.ref(),{isTextBoxReadonly:o,textBoxClass:r,textBoxPlaceholder:a,textBoxTitle:s,onBlurTextBox:c,onClickTextBox:m,onFocusTextBox:u,onInput:d,onKeyDownTextBox:f,onKeyUpTextBox:g,onMouseDownTextBox:p,onTextBoxValueChange:y}=t,T=l.ref(n.id),{uuid:S}=X.useGuid(),C=l.computed(()=>({}));l.onMounted(()=>{var h,b;n.selectOnCreated&&((h=i.value)==null||h.select()),n.focusOnCreated&&((b=i.value)==null||b.focus({preventScroll:!0})),T.value||(T.value="button-edit_"+S(8)),T.value=T.value+"-textbox"});const F=l.ref(!1),V=h=>{h.preventDefault(),F.value=!0},v=h=>{h.preventDefault(),F.value=!1,d(h)};function w(h){F.value||d(h)}return()=>l.createVNode("input",{id:n.id?n.id+"-textbox":void 0,ref:i,name:"input-group-value",autocomplete:n.autoComplete?"on":"off",class:r.value,style:C.value,disabled:n.disable,maxlength:n.maxLength,minlength:n.minLength,placeholder:a.value,readonly:o.value,tabindex:n.tabIndex,title:s.value,type:n.inputType,value:e.value,onBlur:c,onChange:y,onClick:m,onFocus:u,onInput:w,onKeydown:f,onKeyup:g,onMousedown:p,onCompositionend:v,onCompositionstart:V},null)}function Bi(n,e,t){const i=l.ref(n.separator),o=l.computed(()=>n.readonly||n.disable),{changeTextBoxValue:r,onFocusTextBox:a,onBlurTextBox:s,onClickTextBox:c,textBoxPlaceholder:m}=t,u=l.computed(()=>e.value?e.value.split(i.value).map(p=>({name:p,selectable:!0})):[]);function d(p){r(p.map(y=>y.name).join(i.value),!0)}l.watch(()=>n.separator,p=>{i.value=p});const f=l.ref(!n.disable&&!n.readonly);l.watch([()=>n.disable,()=>n.readonly],([p,y],[T,S])=>{f.value=!p&&!y});function g(p){c(p)}return()=>l.createVNode(yn,{tabindex:n.tabIndex,onFocus:a,onBlur:s,id:`${n.id}-tag-editor`,class:"form-control",placeholder:m.value,data:u.value,showClose:!o.value,showInput:!0,disable:o.value,onChange:d,onClick:g},null)}function Oi(n,e,t,i){const{buttonGroupClass:o,onClickButton:r,onMouseEnterButton:a,onMouseLeaveButton:s}=t,{enableClearButton:c,showClearButton:m,onClearValue:u}=i,d=l.ref(),f=ze.debounce(p=>{r(p)},n.buttonBehavior==="Modal"?0:200),g=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>l.createVNode("div",{id:n.id?`${n.id}-button-group`:void 0,class:o.value},[c.value&&l.withDirectives(l.createVNode("span",{class:"input-group-text input-group-clear",onClick:u,onMousedown:g},[l.createVNode("i",{class:"f-icon modal_close"},null)]),[[l.vShow,m.value]]),e.slots.buttonContent?l.createVNode("span",{class:"input-group-text input-group-append-button",onClick:f,onMouseenter:a,onMouseleave:s},[e.slots.buttonContent()]):n.buttonContent?l.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:n.buttonContent,ref:d,onClick:p=>f(p),onMouseenter:a,onMouseleave:s},null):null]),buttonHandleElement:d}}function Ri(n,e,t){const i=l.ref(n.popupMinWidth),{hidePopup:o,popoverRef:r}=t,a=()=>{e.emit("shown")};return()=>l.createVNode(pn,{id:`${n.id}-popover`,ref:r,placement:n.placement,host:n.popupHost,"keep-width-with-reference":n.keepWidthWithReference,fitContent:!0,"right-boundary":n.popupRightBoundary,minWidth:i.value,class:n.popupClass,offsetX:n.popupOffsetX,onHidden:o,onShown:a,beforeClose:n.beforeClosePopup,limitContentBySpace:n.limitContentBySpace},{default:()=>{var s,c;return[(c=(s=e.slots).default)==null?void 0:c.call(s)]}})}const Hi=l.defineComponent({name:"FButtonEdit",props:gi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(n,e){const t=l.ref(),i=l.ref(n.customClass),o=l.ref(n.modelValue),r=Pi(n,e,t,o),{shouldPopupContent:a,hidePopup:s,showPopup:c,togglePopup:m}=r,u=Ii(n,e,t,r,o),d=l.ref(""),f=Ei(n,e,o,d,r),{hasFocusedTextBox:g,commitValue:p,inputGroupClass:y}=f,T=ki(n,e,o,g,d,f),{onMouseEnterTextBox:S,onMouseLeaveTextBox:C}=T,F=l.ref(!1),V=l.computed(()=>{const x={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!n.wrapText};return i.value&&i.value.split(" ").reduce((G,k)=>(G[k]=!0,G),x),x}),v=l.computed(()=>({overflow:n.wrapText?"hidden":""})),w=l.computed(()=>({}));function h(){if(!n.multiSelect||n.inputType!=="tag"||!t.value)return 0;let x=0;const G=Array.from(t.value.querySelectorAll(".farris-tag-item"));return G&&G.length&&(x=G.map(k=>k.offsetTop).filter(k=>k>20).length),x}const b=l.ref(h());l.onUpdated(()=>{b.value=h()});function M(){return n.multiSelect&&n.inputType==="tag"?()=>l.createVNode(l.Fragment,null,[Bi(n,o,f)(),!!b.value&&l.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[l.createVNode("span",{class:"multi--more-text"},[l.createTextVNode("+"),b.value])])]):Ni(n,o,f)}let B=M();l.watch([()=>n.multiSelect,()=>n.inputType],()=>{B=M()});const{renderButtonGroup:P,buttonHandleElement:E}=Oi(n,e,u,T),N=Ri(n,e,r),I=l.ref(a.value),_={displayText:d,commitValue:p,elementRef:t,hidePopup:s,showPopup:c,popoverRef:r.popoverRef,shouldPopupContent:a,togglePopup:m,openDialog:()=>{E.value&&n.buttonBehavior==="Modal"&&E.value.click()},getModal:()=>{var x;return n.buttonBehavior==="Modal"?(x=u.modalRef.value)==null?void 0:x.value:null},getTextbox:()=>{var x;return(x=t.value)==null?void 0:x.querySelector("input")},forceClosePopup:()=>{I.value=!1,F.value=!0,a.value=!1}};return l.onMounted(()=>{t.value.componentInstance=_,window.onresize=()=>{document.body.click()}}),l.onBeforeUnmount(()=>{var x;window.onresize=null,(x=window[nt])==null||x.delete(t.value)}),e.expose(_),l.watch(()=>a.value,async(x,G)=>{if(F.value){I.value=x,F.value=!1;return}if(!x&&n.beforeClosePopup&&typeof n.beforeClosePopup=="function"){try{const k=await n.beforeClosePopup();I.value=!k,(!k||n.readonly)&&(a.value=!0)}catch(k){console.error("Error in beforeClosePopup:",k),I.value=G,a.value=G}return}I.value=x}),()=>{var x,G;return l.createVNode(l.Fragment,null,[l.createVNode("div",l.mergeProps(e.attrs,{ref:t,class:V.value,id:n.id?n.id:void 0,style:v.value}),[l.createVNode("div",{id:n.id?`${n.id}-input-group`:void 0,class:y.value,style:w.value,onMouseenter:S,onMouseleave:C},[(G=(x=e.slots).precontent)==null?void 0:G.call(x),B(),P()])]),I.value&&N()])}}}),mt=new Map([["appearance",Ge.resolveAppearance],["column","columnOption"],["command","commandOption"]]),zt=new Map([]),Ai="root-viewmodel";class Li{constructor(e,t){ie(this,"formSchemaUtils");ie(this,"controlCreatorUtils");ie(this,"designViewModelUtils");ie(this,"useFormCommand");ie(this,"formStateMachineUtils");this.resolver=e,this.designerHostService=t,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.useFormCommand=this.designerHostService.useFormCommand,this.formStateMachineUtils=this.designerHostService.formStateMachineUtils}createComponent(e){const t=this.createComponentRefNode(e),i=this.createComponentNode(e),o=this.createViewModeNode(e),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(o),r.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(t,e,o)}wrapContainerSectionForComponent(e,t,i){var c,m,u,d,f,g,p,y,T,S,C;const o=(m=(c=t==null?void 0:t.parentComponentInstance)==null?void 0:c.schema)==null?void 0:m.type,r=(f=(d=(u=t==null?void 0:t.parentComponentInstance)==null?void 0:u.schema)==null?void 0:d.appearance)==null?void 0:f.class,a=(p=(g=this.formSchemaUtils.getFormSchema())==null?void 0:g.module)==null?void 0:p.templateId;if(o===j.DgControl["splitter-pane"].type&&(r!=null&&r.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const s=[j.DgControl["content-container"].type,j.DgControl["response-layout-item"].type,j.DgControl["splitter-pane"].type,j.DgControl.drawer.type];if(o&&s.includes(o)){const F=this.resolver.getSchemaByType("section",{parentComponentInstance:t.parentComponentInstance,mainTitle:t.componentName},this.designerHostService);if(F&&F.contents&&F.contents.length){const V=F.contents[0];return V.contents=[e],this.appendAddDeleteBtnToParentContainer(V,t,i),F}}return this.appendAddDeleteBtnToParentContainer((y=t==null?void 0:t.parentComponentInstance)==null?void 0:y.schema,t,i),o===j.DgControl["tab-page"].type&&(T=t.parentComponentInstance)!=null&&T.parent&&(S=t.parentComponentInstance)!=null&&S.parent.updateToolbarItems&&((C=t.parentComponentInstance)==null||C.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,t,i){const o=e.type,r=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(t.bindTo==="/"||t.componentType!=="data-grid"&&t.componentType!=="form")return;const a=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),s=j.DgControl["tab-page"].type===o?"tab-toolbar-item":"section-toolbar-item",c=this.resolver.getSchemaByType(s),m=[Object.assign({},c,{id:`button-add-${t.componentId}`,type:s,text:"新增",disabled:a.find(u=>u.id==="canAddDetail")?{type:"StateMachine",status:!1,field:"canAddDetail"}:!1,onClick:`root-viewModel.${i.id}.${r}AddItem1`}),Object.assign({},c,{id:`button-remove-${t.componentId}`,type:s,text:"删除",disabled:a.find(u=>u.id==="canRemoveDetail")?{type:"StateMachine",status:!1,field:"canRemoveDetail"}:!1,onClick:`root-viewModel.${i.id}.${r}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,type:j.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar",buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.type||(e.toolbar.type=j.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar"),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(m),this.appendAddAndDeleteCommands(i),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var u;const t=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=X.useGuid().guid(),o=X.useGuid().guid(),r=this.resolveCommandController(),a={id:i,code:`${t}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:r,shortcut:{},extensions:[]},s={id:o,code:`${t}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:r,shortcut:{},extensions:[]};(u=this.designerHostService.designerContext)!=null&&u.appendIdentifyForNewCommand&&(this.designerHostService.designerContext.appendIdentifyForNewCommand(a),this.designerHostService.designerContext.appendIdentifyForNewCommand(s)),e.commands.push(a,s),this.formSchemaUtils.getFormSchema().module.webcmds.find(d=>d.id===r).refedHandlers.push({host:i,handler:"AddItem"},{host:o,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,t=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=e.find(r=>t.includes(r.id));if(i)return i.id;const o="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:o,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),o}createComponentRefNode(e){const t=this.resolver.getSchemaByType("component-ref");return Object.assign(t,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),t}createComponentNode(e){const t=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(e);return Object.assign(t,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getDataGridComponentClass(e)},contents:i}),t}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Ai,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var r,a,s,c;const{templateId:t}=this.formSchemaUtils.getFormSchema().module,i=(r=e.parentComponentInstance)==null?void 0:r.schema,o=(a=i==null?void 0:i.appearance)==null?void 0:a.class;if(t==="double-list-in-tab-template"&&(i==null?void 0:i.type)==="tab-page"){const m=((s=e.parentComponentInstance)==null?void 0:s.parent)&&((c=e.parentComponentInstance)==null?void 0:c.parent.schema);if((m==null?void 0:m.type)==="tabs"&&(m==null?void 0:m.fill)===!0)return"f-struct-wrapper f-utils-fill-flex-column"}return["double-list-template","tree-list-template"].includes(t)&&(o!=null&&o.includes("f-page-content-main"))?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){var f,g,p,y,T;const t=(f=e.parentComponentInstance)==null?void 0:f.schema,i=(p=(g=t==null?void 0:t.schema)==null?void 0:g.appearance)==null?void 0:p.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let r,a=!1;if(o==="double-list-in-tab-template"&&(t==null?void 0:t.type)==="tab-page"){const S=((y=e.parentComponentInstance)==null?void 0:y.parent)&&((T=e.parentComponentInstance)==null?void 0:T.parent.schema);(S==null?void 0:S.type)==="tabs"&&(S==null?void 0:S.fill)===!0&&(a=!0)}if(a){const S=this.resolver.getSchemaByType("section");Object.assign(S,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),r=S}else if((o==="double-list-template"||o==="tree-list-template")&&(i!=null&&i.includes("f-page-content-main"))){const S=this.resolver.getSchemaByType("section");Object.assign(S,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),r=S}else{const S=this.resolver.getSchemaByType("content-container");Object.assign(S,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),r=S}const s=this.resolver.getSchemaByType("data-grid"),c=[],m=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),u=e.editable&&m.length>0&&m.findIndex(S=>S.id==="editable")>-1;Object.assign(s,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:c,fieldEditable:u,dataSource:e.dataSource||"",editable:u?{type:"StateMachine",status:!0,field:"editable"}:!1,pagination:{enable:!e.editable}}),r.contents=[s];const{selectedFields:d}=e;return d==null||d.forEach(S=>{if(S.$type===X.FormSchemaEntityField$Type.ComplexField)return;const C=ze.cloneDeep(S),F=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",C,"",u);F&&c.push(F)}),[r]}assembleViewModelFields(e){const t=[],{selectedFields:i}=e;return i==null||i.forEach(o=>{if(o.$type===X.FormSchemaEntityField$Type.ComplexField)return;let r="blur";const a=o.type.name;(a===X.FormSchemaEntityFieldTypeName.Enum||a===X.FormSchemaEntityFieldTypeName.Boolean)&&(r="change"),t.push({type:"Form",id:o.id,fieldName:o.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),t}}function pt(n,e,t,i){var r,a,s,c,m,u,d;const o=t.parentComponentInstance;if(o&&i){const f=Math.random().toString(36).slice(2,6),g={componentId:`data-grid-${f}`,componentName:((r=t.bindingSourceContext)==null?void 0:r.entityTitle)||((s=(a=t.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:s.name)||`表格-${f}`,componentType:"data-grid",parentContainerId:o.schema.id,parentComponentInstance:o,editable:!0,bindTo:((c=t.bindingSourceContext)==null?void 0:c.bindTo)||"",dataSource:(u=(m=t.bindingSourceContext)==null?void 0:m.bindingEntity)==null?void 0:u.label,selectedFields:(d=t.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new Li(n,i).createComponent(g)}else return e}function Gt(n,e,t){return e}const Ut={$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"]},St={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}};Ge.createPropsResolver(St,Ut,mt,pt);const $i=Ge.getPropsResolverGenerator(St,Ut,mt,pt),ji={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]},virtualized:{type:Boolean,default:!1},rowOption:{type:Object},columns:{type:Array,default:[{field:"name",title:"",dataType:"string",width:"100%"}]},checkBeforeRemoveItem:{type:Function,default:null},selectedItemClass:{Type:[String,Function],default:"draggable-item--text-truncate",validator:n=>typeof n=="string"||typeof n=="function"}},Wi={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:n=>typeof n=="string"||typeof n=="function"},itemStyle:{type:[String,Function],default:"",validator:n=>typeof n=="string"||typeof n=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function zi(n,e){function t(r){const a=[];let s=r.nextNode();for(;s;)a.push(s),s=r.nextNode();return a}function i(r,a){const s=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return t(s).map(d=>({textNode:d,text:(d.textContent||"").toLocaleLowerCase()})).map(({textNode:d,text:f})=>{const g=[];let p=0;for(;p<f.length;){const y=f.indexOf(a,p);if(y===-1)break;g.push(y),p=y+a.length}return g.map(y=>{const T=new Range;return T.setStart(d,y),T.setEnd(d,y+a.length),T})}).flat()}function o(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!e))return;const a=i(e.value,r.toLocaleLowerCase()),s=new Highlight(...a);CSS.highlights.set("search-result",s)}return{search:o}}function Dt(n,e,t,i,o,r,a,s,c,m){const u=l.ref(n.size),d=l.ref(n.textField),f=l.ref(n.titleField),g=l.ref(n.disableField),p=l.computed(()=>{var M,B;return((M=n.selection)==null?void 0:M.multiSelect)&&((B=n.selection)==null?void 0:B.showCheckbox)}),{onMouseenterItem:y,onMouseoverItem:T,onMouseoutItem:S}=r,{getKey:C,listViewItemClass:F,listViewItemStyle:V,onCheckItem:v,onClickItem:w}=a,h=l.computed(()=>{const M={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return n.itemClass?M:{margin:u.value==="small"?"0.25rem 0":"8px 0",...M}});function b(M,B,P){return M.checked=s.findIndexInSelectedItems(M)>-1,l.createVNode("li",{class:F(M,B),id:C(M,B),key:C(M,B),style:V(M,B),onClick:E=>w(M,B,E),onMouseenter:E=>y(E,M,B),onMouseover:E=>T(E,M,B),onMouseout:E=>S(E,M,B)},[p.value&&l.createVNode("div",{class:"f-list-select",onClick:E=>E.stopPropagation()},[l.createVNode(Ct.FCheckbox,{id:"list-"+C(M,B),customClass:"listview-checkbox float-left",disabled:M[g.value],checked:M.checked,"onUpdate:checked":E=>M.checked=E,onChange:E=>{v(M,B,!E.checked)}},null)]),l.createVNode("div",{class:"f-list-content"},[l.createVNode("div",{class:n.itemContentClass,style:h.value,title:M.raw[f.value]||M.raw[d.value]},[M.raw[d.value]])])])}return{renderItem:b}}function Gi(n,e,t,i,o,r,a,s,c,m){const u=l.ref(n.multiSelect),d=l.ref(n.disableField),f=l.ref(n.textField),{onMouseenterItem:g,onMouseoverItem:p,onMouseoutItem:y}=r,{getKey:T,listViewItemClass:S,listViewItemStyle:C,onCheckItem:F,onClickItem:V,updateSelectedItems:v}=a;function w(b,M,B){return n.contentTemplate?l.createVNode(l.Fragment,null,[n.contentTemplate({item:b.raw,index:M,selectedItem:B})]):e.slots.content?l.createVNode(l.Fragment,null,[e.slots.content&&e.slots.content({item:b.raw,index:M,selectedItem:B})]):l.createVNode("div",{style:"margin: 10px 0;"},[b.raw[f.value||"name"]])}function h(b,M,B){return l.createVNode("li",{class:S(b,M),id:T(b,M),key:T(b,M),style:C(b,M),onClick:P=>V(b,M,P),onMouseenter:P=>g(P,b,M),onMouseover:P=>p(P,b,M),onMouseout:P=>y(P,b,M)},[u.value&&l.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[l.createVNode(Ct.FCheckbox,{id:"list-"+T(b,M),customClass:"listview-checkbox",disabled:b[d.value],checked:b.checked,"onUpdate:checked":P=>b.checked=P,onChange:P=>{F(b,M,!P.checked),v()}},null)]),l.createVNode("div",{class:"f-list-content"},[w(b,M,B)])])}return{renderItem:h}}function Ui(n,e,t,i,o,r,a,s,c,m){const u=l.ref(n.multiSelect),d=l.ref(n.disableField),f=l.ref(n.textField),{onMouseenterItem:g,onMouseoverItem:p,onMouseoutItem:y}=r,{getKey:T,listViewItemClass:S,onCheckItem:C,onClickItem:F}=a,{dragstart:V,dragenter:v,dragover:w,dragend:h}=i,{removeItem:b}=c,M=l.computed(()=>({margin:u.value?"10px 0":"10px 0px 10px 14px"}));function B(_,x=""){const G=_.target;G.title=G.scrollWidth>G.clientWidth?x:""}function P(_){return l.createVNode("div",{style:M.value,onMouseenter:x=>B(x,_.raw[f.value||"name"])},[_.raw[f.value||"name"]])}function E(){return e.slots.itemContent?e.slots.itemContent:P}const N=E();function I(_,x,G){return l.createVNode("li",{class:S(_,x),id:T(_,x),key:T(_,x),onClick:k=>F(_,x,k),onMouseenter:k=>g(k,_,x),onMouseover:k=>p(k,_,x),onMouseout:k=>y(k,_,x),draggable:"true",onDragstart:k=>V(k,_,x),onDragenter:k=>v(k,x),onDragend:k=>h(k,_),onDragover:k=>w(k)},[u.value&&l.createVNode("div",{class:"f-list-select",onClick:k=>k.stopPropagation()},[l.createVNode(Ct.FCheckbox,{id:"list-"+T(_,x),customClass:"listview-checkbox",disabled:_[d.value]||!_.checked,checked:_.checked,"onUpdate:checked":k=>_.checked=k,onChange:k=>C(_,x,!k.checked)},null)]),l.createVNode("div",{class:"f-list-content"},[N(_)]),l.createVNode("div",{class:"f-list-remove",onClick:k=>{k.stopPropagation(),b(x)}},[l.createVNode("div",{class:"f-list-remove-icon"},[l.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),l.createVNode("div",{class:"f-list-handle"},[l.createVNode("div",null,[l.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:I}}function Di(n,e,t,i,o,r,a,s,c,m){var T;const u=l.ref(((T=n.group)==null?void 0:T.groupFields)||[]),{collpaseGroupIconClass:d}=o,{toggleGroupRow:f}=m;function g(S,C){C.collapse=!C.collapse,t.value=f(C.collapse?"collapse":"expand",C,t.value)}function p(S,C,F){return e.slots.group?l.createVNode(l.Fragment,null,[e.slots.content&&e.slots.group({item:S.raw,index:C,selectedItem:F})]):l.createVNode("div",{class:"f-navlookup-recentHeader",onClick:V=>g(V,S)},[l.createVNode("div",{class:"fv-grid-group-row-icon"},[l.createVNode("span",{class:d(S)},null)]),l.createVNode("div",{class:"f-navlookup-recommandLabel"},[S.raw[u.value[S.layer]]])])}function y(S,C,F){return S.layer>-1&&p(S,C,F)}return{renderItem:y}}function qi(n,e,t,i){const{dataView:o}=t,{updateSelectedItems:r}=i;function a(s){if(s>-1&&s<o.value.length){if(n!=null&&n.checkBeforeRemoveItem&&!n.checkBeforeRemoveItem(o.value[s]))return;const c=o.value.splice(s,1);r(),e.emit("removeItem",c[0])}}return{removeItem:a}}function Yi(n,e,t,i,o,r,a,s,c,m){const u=l.ref(n.view),d=l.ref(n.view==="CardView"),f=l.ref({}),g=qi(n,e,i,c),p=l.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":n.multiSelect,"d-flex":d.value,"flex-wrap":d.value})),y=l.computed(()=>!!t.value&&t.value.length>0),T=l.computed(()=>t.value.length===0);l.computed(()=>T.value&&!e.slots.empty);function S(){return u.value==="SingleView"?Dt:u.value==="DraggableView"?Ui:(u.value==="ContentView"||u.value==="CardView")&&(n.contentTemplate||e.slots.content)?Gi:Dt}const C=S(),{renderItem:F}=C(n,e,t,m,o,r,c,a,g,s),{renderItem:V}=Di(n,e,t,m,o,r,c,a,g,s),v=[F,V];function w(){return t.value.filter(M=>M.visible!==!1).map((M,B)=>v[M.type](M,B,f))}function h(){return l.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[l.createVNode("p",{class:"f-empty-title"},[n.emptyTemplate?n.emptyTemplate():e.slots.empty?e.slots.empty():Ae.LocaleService.getLocaleValue("listView.emptyMessage")])])}function b(){return l.createVNode("ul",{class:p.value,style:"list-style: none;"},[y.value&&w(),T.value&&h()])}return{renderListArea:b}}function Xi(n,e,t){function i(){return e.slots.header&&l.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:i}}function qt(n,e,t){const i=l.ref(n.headerClass),o=l.ref(n.placeholder),r=l.ref(""),a=l.computed(()=>!r.value),s=l.computed(()=>!!r.value);function c(f){r.value=""}l.watch(r,f=>{n.enableHighlightSearch&&t.search(f),e.emit("afterSearch",f)});const m=l.computed(()=>{const f={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((p,y)=>(p[y]=!0,p),f),f});function u(f){}function d(){return l.createVNode("div",{class:"f-list-view-header",onClick:l.withModifiers(()=>u,["prevent","stop"])},[l.createVNode("div",{class:m.value},[l.createVNode("div",{class:"farris-input-wrap"},[l.createVNode("div",{class:"f-cmp-inputgroup"},[l.createVNode("div",{class:"input-group f-state-editable"},[l.withDirectives(l.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":f=>r.value=f,name:"input-group-value",type:"text",placeholder:o.value,autocomplete:"off"},null),[[l.vModelText,r.value]]),l.createVNode("div",{class:"input-group-append"},[s.value&&l.createVNode("span",{class:"input-group-text input-group-clear",onClick:f=>c()},[l.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&l.createVNode("span",{class:"input-group-text"},[l.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:d}}function Zi(){const n=l.ref(""),e=l.ref(-1),t=l.ref(""),i=l.ref(-1),o=l.ref(!1);function r(d,f,g){i.value=g}function a(d,f,g){o.value||(i.value=g)}function s(d,f,g){i.value=-1}function c(){o.value=!0}function m(){o.value=!1}function u(){e.value=-1,n.value=""}return{activeIndex:e,focusedItemId:t,hoverIndex:i,clearActiveItem:u,onMouseenterItem:r,onMouseoverItem:a,onMouseoutItem:s,resumeHover:m,suspendHover:c}}function Ji(n,e,t,i){const o=l.ref(n.idField),{dataView:r}=t,a=l.ref(-1),s=l.ref(!1),{activeIndex:c,focusedItemId:m,hoverIndex:u,resumeHover:d,suspendHover:f}=i;let g,p=0,y=0;function T(w,h){const b=w-p,M=h-y;g.style.left=parseInt(g.style.left)+b+"px",g.style.top=parseInt(g.style.top)+M+"px",p=w,y=h}function S(w){const{left:h,top:b}=w.getBoundingClientRect(),M=w.cloneNode(!0);return M.className=M.className+" f-listview-drag-moving",M.style.cssText=`
1
+ (function(ae,Z){typeof exports=="object"&&typeof module<"u"?Z(exports,require("../../components/common/index.umd.js"),require("../../components/data-grid/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("vue"),require("@vueuse/core"),require("../../components/checkbox/index.umd.js"),require("../../components/popover/index.umd.js"),require("../../components/locale/index.umd.js"),require("../../components/modal/index.umd.js"),require("lodash-es"),require("../../components/transfer/index.umd.js"),require("../../components/tabs/index.umd.js"),require("../../components/filter-bar/index.umd.js"),require("../../components/pagination/index.umd.js"),require("../../components/data-view/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/button-group/index.umd.js"),require("../../components/list-view/index.umd.js"),require("../../components/date-picker/index.umd.js"),require("../../components/number-spinner/index.umd.js"),require("../../components/search-box/index.umd.js"),require("../../components/notify/index.umd.js"),require("../../components/condition/index.umd.js"),require("../../components/dynamic-form/index.umd.js"),require("../../components/designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/tags/index.umd.js"),require("../../components/tree-view/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/accordion/index.umd.js"),require("../../components/avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../../components/calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../checkbox/index.umd.js"),require("../checkbox-group/index.umd.js"),require("../../components/combo-list/index.umd.js"),require("../../components/combo-tree/index.umd.js"),require("../../components/component/index.umd.js"),require("../../components/color-picker/index.umd.js"),require("../../components/content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../../components/dropdown/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../../components/events-editor/index.umd.js"),require("../../components/binding-selector/index.umd.js"),require("../../components/image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../../components/layout/index.umd.js"),require("../../components/list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../../components/lookup/index.umd.js"),require("../../components/mapping-editor/index.umd.js"),require("../../components/nav/index.umd.js"),require("../../components/number-range/index.umd.js"),require("../number-spinner/index.umd.js"),require("../../components/order/index.umd.js"),require("../../components/page-header/index.umd.js"),require("../../components/page-footer/index.umd.js"),require("../../components/progress/index.umd.js"),require("../../components/query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../../components/response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../../components/smoke-detector/index.umd.js"),require("../../components/splitter/index.umd.js"),require("../../components/step/index.umd.js"),require("../switch/index.umd.js"),require("../tabs/index.umd.js"),require("../tags/index.umd.js"),require("../../components/text/index.umd.js"),require("../time-picker/index.umd.js"),require("../../components/uploader/index.umd.js"),require("../../components/verify-detail/index.umd.js"),require("../../components/video/index.umd.js"),require("../textarea/index.umd.js"),require("../../components/schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../../components/event-parameter/index.umd.js"),require("../../components/filter-condition-editor/index.umd.js"),require("../../components/fieldset/index.umd.js"),require("../../components/sort-condition-editor/index.umd.js"),require("../../components/menu-lookup/index.umd.js"),require("../drawer/index.umd.js"),require("../../components/json-editor/index.umd.js"),require("../../components/property-editor/index.umd.js"),require("../../components/expression-editor/index.umd.js"),require("../../components/code-editor/index.umd.js"),require("../../components/html-template/index.umd.js"),require("../../components/collection-property-editor/index.umd.js"),require("../modal/index.umd.js"),require("../../components/external-container/index.umd.js"),require("../../components/language-textbox/index.umd.js"),require("../../components/image/index.umd.js"),require("../../components/comment/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/data-grid/index.umd.js","../../components/dynamic-resolver/index.umd.js","vue","@vueuse/core","../../components/checkbox/index.umd.js","../../components/popover/index.umd.js","../../components/locale/index.umd.js","../../components/modal/index.umd.js","lodash-es","../../components/transfer/index.umd.js","../../components/tabs/index.umd.js","../../components/filter-bar/index.umd.js","../../components/pagination/index.umd.js","../../components/data-view/index.umd.js","../../components/button/index.umd.js","../../components/button-group/index.umd.js","../../components/list-view/index.umd.js","../../components/date-picker/index.umd.js","../../components/number-spinner/index.umd.js","../../components/search-box/index.umd.js","../../components/notify/index.umd.js","../../components/condition/index.umd.js","../../components/dynamic-form/index.umd.js","../../components/designer-canvas/index.umd.js","../data-view/index.umd.js","../../components/property-panel/index.umd.js","../../components/tags/index.umd.js","../../components/tree-view/index.umd.js","../../components/field-selector/index.umd.js","../../components/accordion/index.umd.js","../../components/avatar/index.umd.js","../button-edit/index.umd.js","../../components/calendar/index.umd.js","../capsule/index.umd.js","../checkbox/index.umd.js","../checkbox-group/index.umd.js","../../components/combo-list/index.umd.js","../../components/combo-tree/index.umd.js","../../components/component/index.umd.js","../../components/color-picker/index.umd.js","../../components/content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../../components/dropdown/index.umd.js","../dynamic-form/index.umd.js","../../components/events-editor/index.umd.js","../../components/binding-selector/index.umd.js","../../components/image-cropper/index.umd.js","../input-group/index.umd.js","../../components/layout/index.umd.js","../../components/list-nav/index.umd.js","../list-view/index.umd.js","../../components/lookup/index.umd.js","../../components/mapping-editor/index.umd.js","../../components/nav/index.umd.js","../../components/number-range/index.umd.js","../number-spinner/index.umd.js","../../components/order/index.umd.js","../../components/page-header/index.umd.js","../../components/page-footer/index.umd.js","../../components/progress/index.umd.js","../../components/query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../../components/response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../../components/smoke-detector/index.umd.js","../../components/splitter/index.umd.js","../../components/step/index.umd.js","../switch/index.umd.js","../tabs/index.umd.js","../tags/index.umd.js","../../components/text/index.umd.js","../time-picker/index.umd.js","../../components/uploader/index.umd.js","../../components/verify-detail/index.umd.js","../../components/video/index.umd.js","../textarea/index.umd.js","../../components/schema-selector/index.umd.js","../tree-grid/index.umd.js","../../components/event-parameter/index.umd.js","../../components/filter-condition-editor/index.umd.js","../../components/fieldset/index.umd.js","../../components/sort-condition-editor/index.umd.js","../../components/menu-lookup/index.umd.js","../drawer/index.umd.js","../../components/json-editor/index.umd.js","../../components/property-editor/index.umd.js","../../components/expression-editor/index.umd.js","../../components/code-editor/index.umd.js","../../components/html-template/index.umd.js","../../components/collection-property-editor/index.umd.js","../modal/index.umd.js","../../components/external-container/index.umd.js","../../components/language-textbox/index.umd.js","../../components/image/index.umd.js","../../components/comment/index.umd.js"],Z):(ae=typeof globalThis<"u"?globalThis:ae||self,Z(ae["data-grid"]={},ae.common,ae.FDataGrid,ae.dynamicResolver,ae.Vue,ae.VueUseCore,ae.checkbox,ae.FPopover,ae.locale,null,ae.LodashES,null,null,null,null,ae.dataView,ae.FButton,ae.FButtonGroup,null,null,null,null,ae.notify,ae.condition,ae.dynamicForm,ae.designerCanvas,ae.designer$1,ae.propertyPanel,ae.FTags,ae.FTreeView,ae.FFieldSelector))})(this,function(ae,Z,Qe,ze,r,pn,bt,hn,Re,Br,je,Or,jr,Rr,Ar,ke,Bt,gn,Hr,Lr,$r,Wr,Ct,fe,yn,z,qe,$e,vn,bn,ut){"use strict";var Pr=Object.defineProperty;var Nr=(ae,Z,Qe)=>Z in ae?Pr(ae,Z,{enumerable:!0,configurable:!0,writable:!0,value:Qe}):ae[Z]=Qe;var ne=(ae,Z,Qe)=>Nr(ae,typeof Z!="symbol"?Z+"":Z,Qe);const Cn={customClass:{type:String,default:""},appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:t=>!0},beforeEndEditCell:{type:Function,default:()=>!0},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[],halign:"center"}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},enableCommands:{type:Boolean,default:!1},enableFilter:{type:Boolean,default:!1},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},mergeCell:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:36,showEllipsis:!0,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1,keepSelectingOnClick:!0}},selectionValues:{type:Array,default:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1},emptyTemplate:{type:Object},beforeUpdate:{type:Function},fieldsResolver:{type:Function,default:(t,e)=>t},displayType:{type:String,default:"List"},fieldsCallback:{type:Function,default:()=>{}}},wn=Z.excludeProperties(Object.assign({},Cn,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function Sn(t,e,n,i,o){const{getGridHeaderCells:l}=o,a=120,d=50,c=r.computed(()=>{var y;return((y=t.rowNumber)==null?void 0:y.enable)||!1}),p=r.computed(()=>{var y,x;return((y=t.selection)==null?void 0:y.multiSelect)||((x=t.selection)==null?void 0:x.showCheckbox)||!1}),f=r.computed(()=>{var y;return 0+(c.value?((y=t.rowNumber)==null?void 0:y.width)||32:0)+(p.value?d:0)}),s=r.computed(()=>{var y;return(y=t.columnOption)==null?void 0:y.fitColumns}),m=r.computed(()=>{var y;return s.value&&((y=t.columnOption)==null?void 0:y.fitMode)||"none"});function g(y,x,S){const I=parseInt(y.width,10)/100;return S*I}function u(y,x,S){return typeof y.width=="string"?g(y,x,S):y.width||a}function h(y,x){const S=[],I=[];let B=0;y.value.primaryColumns.forEach(_=>{typeof _.width=="string"?I.push(_):(_.width=_.width||a,B+=_.width,S.push(_))});const N=x*(S.length/y.value.primaryColumns.length);S.forEach(_=>{const k=N*(_.width/B);_.actualWidth=k,y.value.primaryColumnsWidth+=_.actualWidth});const O=x-N;I.forEach(_=>{const k=g(_,y.value,O);_.actualWidth=k,y.value.primaryColumnsWidth+=_.actualWidth})}function b(y,x){const S=[],I=[],B=new WeakMap;let N=0,O=0;if(y.value.primaryColumns.forEach(k=>{if(typeof k.width=="string"){const V=g(k,y.value,x);B.set(k,V),N+=V,I.push(k)}else k.width=k.width||a,O+=k.width,S.push(k)}),x-N>O){const k=x-N;I.forEach(V=>{V.actualWidth=B.get(V)||a,y.value.primaryColumnsWidth+=V.actualWidth}),S.forEach(V=>{V.actualWidth=k*(V.width/O),y.value.primaryColumnsWidth+=V.actualWidth})}else h(y,x)}function C(y,x){y.value.primaryColumns.forEach(S=>{S.actualWidth=u(S,y.value,x),y.value.primaryColumnsWidth+=S.actualWidth})}const F={expand:b,none:C,percentage:h};function M(y){y.value.leftHeaderColumns=Array.from(l(y.value.leftColumns).values()),y.value.primaryHeaderColumns=Array.from(l(y.value.primaryColumns).values()),y.value.rightHeaderColumns=Array.from(l(y.value.rightColumns).values())}function T(y){y.value.leftColumnsWidth=0,y.value.primaryColumnsWidth=0,y.value.rightColumnsWidth=0,y.value.leftColumns.forEach(x=>{y.value.leftColumnsWidth+=x.actualWidth||0}),y.value.primaryColumns.forEach(x=>{y.value.primaryColumnsWidth+=x.actualWidth||0}),y.value.rightColumns.forEach(x=>{y.value.rightColumnsWidth+=x.actualWidth||0}),y.value=Object.assign({},y.value)}function v(y,x,S){var V;let I=0;const B=y.value.primaryColumns,N=y.value.rightColumns;y.value.rightColumns.forEach(W=>{W.actualWidth=u(W,y.value,x),I+=W.actualWidth});const O=S-I,_=F[m.value];if(_&&_(y,O),y.value.primaryColumnsWidth+I<=S)return y.value.primaryColumns=[...B,...N],y.value.primaryColumnsWidth+=I,y.value.rightColumns=[],y.value.rightColumnsWidth=0,!0;const k=new Map;return k.set("primary",[]),k.set("right",[]),y.value.primaryColumns.reduce((W,P)=>{var H,X;return P.fixed==="right"?(H=W.get("right"))==null||H.push(P):(X=W.get("primary"))==null||X.push(P),W},k),(V=k.get("right"))!=null&&V.length&&(y.value.primaryColumns=[...k.get("primary")||[]],y.value.rightColumns=[...k.get("right")||[]]),y.value.primaryColumnsWidth=0,y.value.rightColumnsWidth=0,!1}function w(){if(n.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const y=n.value.clientWidth-f.value;e.value.leftColumns.forEach(S=>{S.actualWidth=u(S,e.value,y),e.value.leftColumnsWidth+=S.actualWidth});const x=y-e.value.leftColumnsWidth;if(v(e,y,x))i.value=x;else{e.value.rightColumns.forEach(B=>{B.actualWidth=u(B,e.value,y),e.value.rightColumnsWidth+=B.actualWidth});const S=y-e.value.leftColumnsWidth-e.value.rightColumnsWidth,I=F[m.value];I&&I(e,S),i.value=S}M(e),e.value=Object.assign({},e.value)}}return r.watch(()=>{var y;return(y=t.columnOption)==null?void 0:y.fitColumns},(y,x)=>{y!==x&&y&&w()}),r.watch(m,(y,x)=>{y!==x&&s.value&&w()}),{calculateColumnHeaders:M,calculateColumnsSize:w,calculateColumnsWidth:T}}const xn="";function Mn(t){const n={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},i=r.ref(n);function o(){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 l=r.ref(t.summary),a=r.computed(()=>{const v=l.value;return(v==null?void 0:v.groupFields)||[]});function d(){i.value.rightColumns.forEach(y=>{y.showSetting=!1}),i.value.primaryColumns.forEach(y=>{y.showSetting=!1});const v=i.value.rightColumns,w=i.value.primaryColumns;v.length>0?v[v.length-1].showSetting=!0:w.length>0&&(w[w.length-1].showSetting=!0)}function c(v){o();const w=new Map;return a.value&&a.value.reduce((y,x)=>(y.set(x,!0),y),w),v.reduce((y,x)=>(x.filter=x.filter||xn,x.fixed==="left"?(i.value.leftColumns.push(x),i.value.leftColumnsMap.set(x.field,x),i.value.leftColumnsWidth+=x.actualWidth):x.fixed==="right"?(i.value.rightColumns.push(x),i.value.rightColumnsMap.set(x.field,x),i.value.rightColumnsWidth+=x.actualWidth):(i.value.primaryColumns.push(x),i.value.primaryColumnsMap.set(x.field,x),i.value.primaryColumnsWidth+=x.actualWidth),w.has(x.field)&&i.value.summaryColumns.push(x),y),i),d(),i}c(t.columns);const p=r.computed(()=>i.value.leftColumns.length>0),f=r.computed(()=>i.value.rightColumns.length>0);function s(v,w){return w.sortable&&w.sort&&w.sort!=="none"&&v.push(w),v}function m(v,w){return v.sortOrder=v.sortOrder||0,w.sortOrder=w.sortOrder||0,v.sortOrder===w.sortOrder?0:v.sortOrder<w.sortOrder?-1:1}function g(v,w){return v.sortOrder=v.sortOrder||0,w.sortOrder=w.sortOrder||0,v.sortOrder===w.sortOrder?0:v.sortOrder<w.sortOrder?1:-1}function u(v,w){return w.filterable&&v.push(w),v}function h(){const v=[];return i.value.leftColumns.reduce(u,v),i.value.primaryColumns.reduce(u,v),i.value.rightColumns.reduce(u,v),v}function b(){const v=[];i.value.leftColumns.reduce(s,v),i.value.primaryColumns.reduce(s,v),i.value.rightColumns.reduce(s,v);const w=Math.max(...v.map(y=>y.sortOrder||0));return v.sort(g).map(y=>{const x=y.sortOrder||w+1;return y.sortOrder=x,y}).sort(m).map((y,x)=>{const S=x+1;return y.sortOrder=S,y})}function C(v,w,y){const x=v.map(S=>{const I=y.getSorterByColumn(S),B=S.sort==="asc",N=S.sort==="desc",O=B?I.ascend:N?I.decend:void 0;return{field:S.field,compare:O}});w.setSorters(x)}function F(v,w){const y=b();C(y,v,w)}function M(v){}function T(v){}return{applyColumnSorter:F,collectionFilterableColumns:h,applySortableColumns:C,collectionSortableColumns:b,columnContext:i,hasLeftFixedColumn:p,hasRightFixedColumn:f,updateColumnRenderContext:c,updateColumnSettingIcon:d,sortFromServer:M,createSortConditions:T}}function Fn(t,e,n,i,o,l,a,d){const c=r.ref(i.value-1+o),p=r.ref(0),{renderDataRow:f}=l,s=a?a.renderGroupRow:f,m=d?d.renderSummaryRow:f;function g(b){let C=f;return b.__fv_data_grid_group_row__&&(C=s),b.__fv_data_grid_group_summary__&&(C=m),C}function u(b,C,F,M){const{dataView:T}=n,v=[];if(T.value.length>0){const w=M?Date.now().toString():"";let y=b,x=0;const S=C-b+1;for(;v.length<S&&y<T.value.length;){const I=T.value[y],B=T.value[y-1]||F,N=v[x-1],O=B?(B.__fv_data_position__||0)+(B.__fv_data_height__||0):0,k=g(I)(I,B,N,y,O,e.value,v);k.refreshKey=w,v.push(k),x++,y++}}return p.value=v.length>0?v[0].index:0,c.value=v.length>0?v[v.length-1].index:0,v}function h(b,C,F){const M=C.groupField||"",{groupValue:T,raw:v}=C;n[b](M,T,v.groupParents||[]);const{dataView:w}=n,y=F[0].index,x=Math.min(y+i.value+o+1,w.value.length-1);return u(y,x)}return{getVisualData:u,maxVisibleRowIndex:c,minVisibleRowIndex:p,toggleGroupRow:h}}var Pe=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(Pe||{}),De=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(De||{}),nt=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(nt||{}),Be=(t=>(t[t.none=0]="none",t[t.filterable=1]="filterable",t[t.sortable=2]="sortable",t[t.filtered=4]="filtered",t[t.sorted=8]="sorted",t[t.ascending=16]="ascending",t[t.descending=32]="descending",t))(Be||{}),Ye=(t=>(t.DATE="date",t.DATE_TIME="datetime",t.NUMBER="number",t.ENUM="enum",t.IMAGE="image",t.BOOLEAN="boolean",t.BOOLEAN2="boolean2",t.TIMEAGO="timeago",t.NONE="none",t.CUSTOM="custom",t.MULTI_LINGUAL="multilingual",t))(Ye||{});const Tn="__setting__",Ot="__command__",_n=150,kn="right",jt="commands";function Vn(t,e,n){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:o,shouldShowHorizontalScrollbar:l}=n;function a(){return l.value&&r.createVNode("div",{class:"fv-grid-horizontal-scroll"},[r.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:d=>o(d,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function En(t){function e(d,c){switch(d.command){case"edit":case"remove":return c.status===De.initial;case"accept":case"cancel":return c.status===De.editing;default:return!d.hidden}}function n(d,c,p,f){var s,m,g,u,h;switch((s=d.onClick)==null||s.call(d,c,p.dataIndex,p),d.command){case"edit":p.status,De.editing,(g=(m=t.commandOption)==null?void 0:m.onClickEditCommand)==null||g.call(m,f,p,d,c);break;case"accept":case"cancel":p.status,De.initial;break;case"remove":(h=(u=t.commandOption)==null?void 0:u.onClickDeleteCommand)==null||h.call(u,f,p,d,c);break}}function i(d){return d==="编辑"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.edit"):d==="确定"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.accept"):d==="取消"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.cancel"):d==="删除"?Re.LocaleService.getLocaleValue("datagrid.commandColumn.remove"):d}function o(d,c){const{column:p}=d;return p.commands&&p.commands.map((f,s)=>s?e(f,c)&&r.createVNode(Bt,{class:"ml-1",type:f.type,size:f.size||"small",onClick:m=>n(f,m,c,d),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(f.text),r.createTextVNode(" ")]}):e(f,c)&&r.createVNode(Bt,{type:f.type,size:f.size||"small",onClick:m=>n(f,m,c,d),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(f.text),r.createTextVNode(" ")]}))}function l(d,c,p,f){var s,m,g;(s=c.onClick)==null||s.call(c,d,p.dataIndex,p),(g=(m=t.commandOption)==null?void 0:m.onHandleAction)==null||g.call(m,f,p,c,d)}function a(d,c){var s,m,g;const{column:p}=d;return((s=p==null?void 0:p.commands)==null?void 0:s.find(u=>u.command))?o(d,c):r.createVNode(gn,{data:p.commands,count:typeof((m=t.commandOption)==null?void 0:m.count)!="number"?2:(g=t.commandOption)==null?void 0:g.count,size:"small",placement:"auto",onClick:u=>{l(u.payload,u.button,c,d)}},null)}return{renderCommandColumn:a}}function In(t){const e=r.ref(t.minHeight),n=r.ref(t.minWidth),i=r.ref(t.height),o=r.ref(t.width),l=r.computed(()=>i.value<=0?0:Math.max(i.value,e.value)),a=r.computed(()=>o.value<=0?0:Math.max(o.value,n.value));return r.watch([()=>t.height,()=>t.width,()=>t.minHeight,()=>t.minWidth],([c,p,f,s])=>{e.value=Number(f),n.value=Number(s),i.value=Number(c),o.value=Number(p)}),{containerStyleObject:r.computed(()=>({height:l.value>0?`${l.value}px`:t.fit?"100%":"",width:a.value>0?`${a.value}px`:t.fit?"100%":"",flex:"1 1 0"}))}}function Pn(t){var l,a;const e=r.ref(((l=t.commandOption)==null?void 0:l.enable)||!1),n=r.ref(((a=t.commandOption)==null?void 0:a.commands)||[]),i=r.computed(()=>Re.LocaleService.getLocaleValue("datagrid.commandColumn.title"));function o(d){var c;if(e.value&&!(d.value.findIndex(f=>f.dataType===jt)>-1)){const f={field:Ot,title:i.value,width:_n,fixed:kn,dataType:jt,commands:n.value,resizable:!1,halign:((c=t.commandOption)==null?void 0:c.halign)||"left",visible:!0,formatter:t.commandOption.formatter&&typeof t.commandOption.formatter?(s,m)=>t.commandOption.formatter(s,m):null};t.commandOption.formatter&&typeof t.commandOption.formatter!="function"&&(f.formatter=(s,m)=>t.commandOption.formatter(s,m)),d.value.push(f)}}return{applyCommands:o}}function Nn(t,e){var p;const n=r.ref((p=t.columnOption)==null?void 0:p.groups);function i(f,s,m,g,u){const h={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:m,resizable:!0,title:f.title||"",status:Be.none,popoverRef:r.ref(),showPopover:!1,column:null,sortType:"none"},b=g||h;if(f.group){let C=1;f.group.reduce((F,M)=>{if(typeof M=="string"){const T=s.get(M);T&&(u.fieldToRootMap.set(M,b),F.actualWidth+=T.actualWidth,F.children.push(T))}else{const T=i(M,s,F,b,u);C=Math.max(C,T.depth),F.actualWidth+=T.actualWidth,F.children.push(T)}return F},h),h.depth+=C}return e.value.headerDepth=Math.max(e.value.headerDepth,h.depth),h}function o(f){const s={groupedCells:new Map,fieldToRootMap:new Map};return n.value&&n.value.reduce((m,g)=>{const u=i(g,f,null,null,s);return m.groupedCells.set(g.field,u),m},s),s}function l(f){if(!f||f.length===0)return 0;const s=f[0];return s.children&&s.children.length>0&&(s.left=l(s.children)),s.left}function a(f,s){const m=e.value.headerDepth;f.forEach(g=>{g.layer=s?s.layer+1:1;const u=g.children&&g.children.length===0;g.depth=u?m-(g.layer-1):1,g.left=u?g.left:l(g.children),g.children&&a(g.children,g)})}function d(f,s){const m=new Map;return f.forEach(g=>{const u=s.fieldToRootMap.get(g.field),h=u!=null;h&&!m.has(u.field)&&m.set(u.field,u),h||m.set(g.field,g)}),a(Array.from(m.values())),m}function c(f){let s=new Map,m=0;if(f.reduce((g,u)=>{let h=Be.none;h=u.sortable?h|Be.sortable:h,h=u.filterable?h|Be.filterable:h,h=u.sort&&u.sort!=="none"?h|Be.sorted|(u.sort==="asc"?Be.ascending:Be.descending):h;const b=u.field;return g.set(b,{actualWidth:u.actualWidth||0,children:[],depth:1,layer:1,left:m,field:b,parent:null,resizable:u.resizable===void 0?!0:u.resizable,title:u.title,status:h,popoverRef:r.ref(),showPopover:!1,column:u,filterValue:null,sortType:u.sort||"none",showSetting:u.showSetting,draggable:u.draggable}),m+=u.actualWidth||0,g},s),n.value){const g=o(s);s=d(s,g)}return s}return{getGridHeaderCells:c}}function Bn(t,e){var v;const{sum:n,toFixed:i}=Z.useNumberFormat(),{uuid:o}=Z.useGuid(),{idField:l}=e,a=r.ref(t.summary),d=r.ref(t.group),c=r.ref(((v=t.group)==null?void 0:v.groupFields)||[]),p=r.computed(()=>{var w;return(w=t.group)==null?void 0:w.enable}),f=r.computed(()=>{var w;return(w=t.group)==null?void 0:w.showGroupPanel}),s=r.computed(()=>{const w=a.value;return(w==null?void 0:w.groupFields)||[]}),m=r.computed(()=>{const w=d.value;return w&&w.showSummary}),g=r.ref(0),u=new Map;let h=[];function b(w,y,x,S,I){const B=S[x];B&&(y.reduce((N,O,_)=>{var W;const k=O[B];let V=N.get(k);if(!V){const P=s.value.reduce((H,X)=>(H.set(X,0),H),new Map);V={field:B,title:((W=I.get(B))==null?void 0:W.title)||B,value:k,layer:x,details:[],groupSummaries:P},N.set(k,V)}return s.value&&s.value.forEach(P=>{if(V){const H=V.groupSummaries.get(P)||0;V.groupSummaries.set(P,n([H,Z.resolveField(O,P)]))}}),s.value&&s.value.forEach(P=>{if(V){const H=V.groupSummaries.get(P)||0;V.groupSummaries.set(P,i(H,2))}}),V.details.push(O),N},w),x<S.length-1&&w.forEach((N,O)=>{N.nestGroup=new Map,b(N.nestGroup,N.details,x+1,S,I),N.details=[]}))}function C(w,y){return t.group&&t.group.formatter?t.group.formatter(w.value,{...w,total:y}):`${w.title}:${w.value} (${y})`}function F(w,y){const x=[];return w.forEach(S=>{const I={[l.value]:`group_of_${y?y[l.value]+"_":""}${S.field}_${S.value}`,__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:S.field,__fv_data_grid_group_layer__:S.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:S.value,groupParents:[]};y&&(I.groupParents=[...y.groupParents,y]);let B=0;if(x.push(I),S.nestGroup){const N=F(S.nestGroup,I);x.push(...N),B+=N.length}if(S.details&&S.details.length&&(x.push(...S.details),B+=S.details.length),m.value){const N={__fv_data_grid_group_field__:S.field,__fv_data_grid_group_layer__:S.layer,__fv_data_grid_group_summary__:!0};N[l.value]=`summary_of_${S.field}_${S.value}`,N[S.field]=Array.from(S.groupSummaries.entries()).reduce((O,[_,k])=>`${O} ${_} total:${k} `,""),x.push(N)}S.groupSummaries&&S.groupSummaries.size&&S.groupSummaries.forEach((N,O)=>{I[O]=N}),I[S.field]=C(S,B),I.value=S.value}),x.forEach((S,I)=>{S.__fv_data_index__=I}),x}function M(w,y,x){return!w||w.length===0||!y.length?y:(w.join(","),u.clear(),h=[],y=y.filter(S=>!S.__fv_data_grid_group_row__),b(u,y,0,w,x),h=F(u),h)}function T(w){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":w.collapse}}return{collpaseGroupIconClass:T,generateGroupData:M,groupFields:c,shouldGroupingData:p,showGroupPanel:f,groupRowSize:g}}function Rt(t){const e="parent",n="layer",i="hasChildren",o=(a,d=1,c=[],p=null)=>(a=a||[],a.reduce((f,s)=>(s.id=s.id||s.data[t.idField],s[e]=p,s[n]=d,s[i]=s[i]===void 0?!1:s[i],s.data&&Object.keys(s.data).forEach(m=>{Object.keys(s).includes(m)||(s[m]=s.data[m])}),c.push(s),s.children&&s.children.length&&(s[i]=!0,o(s.children,d+1,c,s.id)),f),c),c);return{flatTreeData:o,isNestedTree:a=>a.some(d=>Array.isArray(d.children))}}function On(t,e,n,i){const o=r.ref(0),l=r.ref(!!t.hierarchy),{idField:a}=i,{collapseField:d,hasChildrenField:c,parentIdField:p}=n,f=new Map,s=new Map,m=new Map,{flatTreeData:g,isNestedTree:u}=Rt(t);function h(R,A){s.clear(),R.reduce((q,U)=>{const te=U[p.value]!==void 0?U[p.value]:"";if(te&&A.has(te)){const de=A.get(te),ce=isNaN(Number(de.__fv_layer__))?1:Number(de.__fv_layer__);U.__fv_layer__=ce+1,U.__fv_parent_index__=de.__fv_index__,de.__fv_hasChildren__=!0}else U.__fv_layer__=1;const re=q.has(te)?q.get(te):[];return re.push(U),q.set(te,re),q},s)}function b(R){m.clear(),R.reduce((A,q)=>{const U=q[a.value];return A.set(U,q),A},m)}function C(R){R.forEach(A=>{const q=A[a.value];A.__fv_children_index__.map(te=>R[te]).forEach(te=>{te.__fv_parents__=new Map([...A.__fv_parents__.entries(),[q,!0]])})})}function F(R){R.forEach(A=>{const q=new Set(A.__fv_children_index__);A.__fv_children_index__=[...q].sort((U,te)=>U-te)})}function M(R){R.forEach(A=>{const q=A.__fv_parents__;Array.from(q.keys()).map(U=>m.get(U)).forEach(U=>{U.__fv_children_index__.push(A.__fv_index__)})}),F(R)}function T(R){R.forEach(A=>{A.__fv_child_with_lines__=[],A.__fv_child_length__=A.__fv_descendant_index__.length,A.__fv_descendant_index__.map(q=>R[q]).reduce((q,U)=>(q.__fv_child_length__+=U.__fv_children_index__.length,q.__fv_child_with_lines__.push(...U.__fv_children_index__,U.__fv_index__),q),A)})}function v(R,A){return{id:R,index:A,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function w(R,A,q){Array.from(A.keys()).forEach(U=>{A.get(U).reduce((re,de)=>{const ce=de[a.value],pe=R.get(de[a.value]),me=R.get(U),Ie=q.get(U);return me&&Ie&&(me.children.set(ce,pe),me.children.set(ce,pe),pe.parentId=U,pe.parentIndex=me.index,pe.parents.set(U,me)),re},R)})}function y(R){R.children.forEach(q=>{q.parents=new Map([...R.parents.entries(),[R.id,R]]),y(q)})}function x(R,A){R.filter(q=>q[p.value]===void 0||q[p.value]==="").forEach(q=>{const U=q[a.value],te=A.get(U);y(te)})}function S(R){Array.from(R.values()).forEach(A=>{Array.from(A.parents.values()).forEach(q=>{q.descendant.set(A.id,A)})})}function I(R){f.clear(),R.forEach((A,q)=>{const U=A[a.value];f.set(U,v(U,q))}),b(R),h(R,m),w(f,s,m),x(R,f),S(f)}function B(R){const A=R[a.value],q=f.get(A);return q&&q.children.size>0}function N(R){return R[c.value]&&!B(R)}function O(R){const A=R[a.value],q=f.get(A);return q&&q.visibleInHierarchy}function _(){o.value=Date.now()}function k(R,A){A.forEach(q=>{const U=f.get(q[a.value]),te=f.get(R),re=m.get(R);te&&re&&(U.visibleInHierarchy=!re[d.value]&&te.visibleInHierarchy)}),_()}function V(R){if(s.has(R)){const q=s.get(R);k(R,q),q.map(U=>U[a.value]).forEach(U=>V(U))}}function W(R){const A=R[a.value];V(A)}function P(R,A,q=0){R.forEach(U=>{const te=N(U),re=U.__fv_layer__<=q,de=A==="ToCollapse"?U.__fv_layer__<=q:!(U.__fv_layer__<=q),ce=re?de:U[d.value];U[d.value]=te||ce});for(const[U,te]of s.entries())k(U,te);return R}function H(R,A){P(R,"ToCollapse",A)}function X(R,A){P(R,"ToExpand",A)}function J(R){R.forEach((A,q)=>{var de;const U=A[a.value],te=s.has(U)?(de=s.get(U))==null?void 0:de.map(ce=>ce.__fv_index__):[],re=v(U,q);A.__fv_graph_node__=re,A.__fv_children_index__=te,A.__fv_descendant_index__=[...te],A.__fv_parents__=new Map,N(A)&&(A[d.value]=!0)})}function oe(R){var U,te;I(e.value),J(R),C(R),M(R),t.showLines&&T(R);const q=((U=t.hierarchy)==null?void 0:U.collapseTo)!==void 0?Number((te=t.hierarchy)==null?void 0:te.collapseTo):0;return P(R,"ToCollapse",q),R}function Me(R,A,q){const te=q.value[R][a.value],re=f.get(te);if(re){const de=f.get(re.parentId);let ce=q.value.length-1;if(de){const pe=Array.from(de.children.keys()).indexOf(re.id);if(pe===de.children.size-1){const Ie=Array.from(de.descendant.values())[de.descendant.size-1];ce=q.value.findIndex(ye=>ye[a.value]===Ie.id)+1}else{const Ie=Array.from(de.children.values())[pe+1];ce=q.value.findIndex(ye=>ye[a.value]===Ie.id)}A[c.value]=!1,A[p.value]=de.id,q.value.splice(ce,0,A)}else q.value.splice(ce,0,A)}}function Ce(R,A,q){const U=q.value[R],te=U[a.value];if(f.get(te)){const ce=q.value.findIndex(pe=>pe[a.value]===te)+1;U[c.value]=!0,U[d.value]=!1,A[c.value]=!1,A[p.value]=te,q.value.splice(ce,0,A)}}function ve(R,A,q){const te=q.value[R][a.value];if(f.get(te)){const ce=q.value.findIndex(me=>me[a.value]===te)+1;let pe=A;u(A)&&(pe=g(A)),pe.forEach(me=>{me[p.value]=te}),q.value.splice(ce,0,...pe)}}function L(R,A){const q=R[a.value],U=f.get(q),te=Array.from(U.descendant.keys());te.unshift(q);const re=f.get(U.parentId);if(re&&(re.children.delete(q),re.children.size===0)){const ce=A.find(pe=>pe[a.value]===U.parentId);ce[c.value]=!1,ce[d.value]=!1}return A.filter(ce=>te.indexOf(ce.id)===-1)}return{checkVisibleInHierarchy:o,collapseTo:H,expandTo:X,generateHierarchyData:oe,hasRealChildren:B,insertSibling:Me,insertChild:Ce,insertChildren:ve,isVisibleInTree:O,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:W,trimmedOriginalData:L}}function jn(t,e,n,i,o){const{toNumber:l,sum:a,toFixed:d}=Z.useNumberFormat(),c=new Map,p=new Map,f=new Map,s=new Map,m=new Map,g=r.ref([]),u=r.ref([]),h=Bn(t,o),{generateGroupData:b,groupFields:C,shouldGroupingData:F}=h,M=r.ref(t.data||[]),T=On(t,M,i,o),{collapseTo:v,expandTo:w,generateHierarchyData:y,hasRealChildren:x,insertSibling:S,insertChild:I,insertChildren:B,isVisibleInTree:N,shouldStratifyData:O,toggleChildrenVisibiltyByCollapseStatus:_,trimmedOriginalData:k,checkVisibleInHierarchy:V}=T,{idField:W,reviseIdentifyField:P}=o,H=r.ref(t.newDataItem),X=r.ref(t.data||[]),J=r.ref(t.data),{flatTreeData:oe,isNestedTree:Me}=Rt(t);if(t.hierarchy&&Me(t.data)){const E=oe(t.data);M.value=E,X.value=E,J.value=E}const Ce=r.ref(t.summary),ve=r.computed(()=>{const E=Ce.value;return(E==null?void 0:E.groupFields)||[]});let L=new Map;const R=r.ref(X.value.length),A=r.ref(t.pagination);function q(){return A.value&&A.value.enable&&A.value.size>0?A.value.size:X.value.length}const U=r.ref(1),te=r.computed(()=>A.value&&A.value.enable&&A.value.mode!=="server"),re=r.computed(()=>A.value&&A.value.enable&&A.value.mode==="server"),de=new Ct.FNotifyService;function ce(E,j){const G=Math.ceil(E.length/j);let Q=0;const se=[],be=[],Fe=[];for(;Q<G;){const we=E.slice(Q*j,(Q+1)*j),Ne=b(C.value,we,e);be[Q]=Ne.filter(ue=>ue.__fv_data_grid_group_row__).length,se.push(...Ne),Q++}return be.reduce((we,Ne,ue)=>(we=we+Ne,Fe.push(we),we),0),{groupData:se,groupRowSizeList:be,accumulateGroupRowSize:Fe}}function pe(){var Ne;X.value=M.value,te.value&&(R.value=X.value.length),F.value&&!te.value&&(X.value=b(C.value,M.value,e)),L=ve.value.reduce((ue,Se)=>(ue.set(Se,0),ue),L);const E=0,j=q(),G=(U.value-1)*j;let se=G>X.value.length-1||re.value?E:G,be=re.value?X.value.length:Math.min(se+j,X.value.length);if(F.value&&te.value){const{accumulateGroupRowSize:ue,groupData:Se,groupRowSizeList:Te}=ce(M.value,j);X.value=Se;const We=Te[U.value-1];se+=U.value-2<0?0:ue[U.value-2],be=se+j+We}let Fe=0;const we=[];if(X.value.length){P(X.value);const ue=W.value!==t.idField;for(let Se=se;Se<be;Se++){const Te=X.value[Se];Te.__fv_data_grid_group_row__?(Fe=0,Te.__fv_data_index__=""):Te.__fv_data_grid_group_summary__?Te.__fv_data_index__="":(Fe++,Te.__fv_data_index__=Fe+(U.value-1)*j),Te.__fv_index__=Se,Te.__fv_visible_index__=Se,t.rowOption&&t.rowOption.disabledField&&(Te.__fv_disabled__=Te[(Ne=t.rowOption)==null?void 0:Ne.disabledField]),ue&&(Te[W.value]=Se),ve.value.forEach(We=>{const Pt=L.get(We)||0;L.set(We,a([Pt,Z.resolveField(Te,We)||0]))}),we.push(Te)}}return O.value&&y(we),ve.value.forEach(ue=>{const Se=L.get(ue)||0;L.set(ue,d(Se,2))}),J.value=[...we],we}const me=r.ref(pe()),Ie=r.computed(()=>(V.value,me.value.filter(E=>O.value?E.__fv_visible__!==!1&&N(E):E.__fv_visible__!==!1)));function Ge(){Ie.value.forEach((j,G)=>(j.__fv_visible_index__=G,j))}function ye(E,j,G=!1){var Ne;const Q=G?pe():[...J.value];let se=Q;((Ne=t.filter)==null?void 0:Ne.mode)!=="server"&&(se=Q.filter(ue=>n.apply(ue)));const be=E&&E.length?se.filter(ue=>E.reduce((Se,Te)=>Se&&Te.filter(ue),!0)):se,Fe=j&&j.length?be.sort((ue,Se)=>{const Te=[...j],We=Te.shift(),Pt=Z.resolveField(ue,We.field)===void 0||Z.resolveField(ue,We.field)===null?"":Z.resolveField(ue,We.field),Vr=Z.resolveField(Se,We.field)===void 0||Z.resolveField(Se,We.field)===null?"":Z.resolveField(Se,We.field);let Nt=We.compare(Pt,Vr);for(;Nt===0&&Te.length!==0;){const tt=Te.shift();if(tt){const Er=Z.resolveField(ue,tt.field)===void 0||Z.resolveField(ue,tt.field)===null?"":Z.resolveField(ue,tt.field),Ir=Z.resolveField(Se,tt.field)===void 0||Z.resolveField(Se,tt.field)===null?"":Z.resolveField(Se,tt.field);Nt=tt.compare(Er,Ir)}}return Nt}):be,we=q();return me.value=Fe.map((ue,Se)=>{if(ue.__fv_data_grid_group_row__){const Te=`group_of_${ue.__fv_data_grid_group_field__}_${ue.__fv_data_grid_group_value__}`;ue.__fv_data_grid_group_collapse__=!!c.get(Te)}return ue.__fv_index__=Se,ue.__fv_visible_index__=Se,ue.__fv_data_index__=Se+1+(U.value-1)*we,ue}),me.value}function Ue(E){return m.clear(),u.value=E,u.value.reduce((j,G)=>(j.set(G.field,G),j),m),ye([],u.value)}function Ae(E,j){return m.set(E,j),u.value=Array.from(m.values()),ye([],u.value)}function $(E){return m.delete(E),u.value=Array.from(m.values()),ye([],u.value)}function K(E,j){return p.set(E,j),g.value=Array.from(p.values()),ye([],Array.from(m.values()))}function ee(E){return p.delete(E),g.value=Array.from(p.values()),ye([],Array.from(m.values()),!0)}function ie(){return p.clear(),g.value=[],ye([],Array.from(m.values()),!0)}function he(E,j,G){const Q=`group_of_${E}_${j}`;c.set(Q,!0);const se=be=>be[E]!==j;return f.set(`collapse_${E}_${j}`,{field:E,fieldName:E,fieldType:"string",filterValue:j,filter:se}),ye(Array.from(f.values()),Array.from(m.values()))}function Oe(E){v(me.value,E)}function Ze(E){w(me.value,E)}function D(E,j,G){const Q=`group_of_${E}_${j}`;return c.set(Q,!1),f.delete(`collapse_${E}_${j}`),ye(Array.from(f.values()),Array.from(m.values()),!0)}function le(E){const j=E.raw[W.value],G=Q=>!Q.__fv_parents__.has(j);s.set(`fold_${j}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(j),filter:G}),ye(Array.from(s.values()),Array.from(m.values())),y(me.value)}function _e(E){const j=E[W.value];s.delete(`fold_${j}`)}function Ve(E){_e(E.raw),ye(Array.from(s.values()),Array.from(m.values()),!0),y(me.value)}function xe(){const E=pe();me.value=E,ye(Array.from(s.values()),Array.from(m.values())),t.hierarchy&&y(me.value)}function Je(E){const G=t.hierarchy&&Me(E)?oe(E):E;M.value=G,xe()}function He(E,j,G){return(E&&E.length?me.value.filter((se,be)=>E.reduce((Fe,we)=>Fe&&we.filter(se),!0)):me.value).slice(j,G)}function Le(E){const j=q(),G=Math.ceil(R.value/j);0<=E&&E<=G&&(U.value=E,xe())}function et(E){M.value.push(je.cloneDeep(E)),me.value=pe()}function Mt(E=0){if(!(E>-1))return!1;const G=H.value();return t.hierarchy?S(E,G,M):M.value.splice(E,0,G),xe(),G}function Ft(E=0){if(!(E>-1&&t.hierarchy))return!1;const G=H.value(),Q=M.value[E];_e(Q),I(E,G,M),xe()}function Tt(E,j=0){if(!(j>-1&&t.hierarchy))return!1;const Q=M.value[j];_e(Q),B(j,E,M),xe()}function _t(E){const j=E?E-1:0;M.value.splice(j,1),xe()}function gt(E){const j=M.value.findIndex(G=>G[W.value]===E);j!==-1&&(M.value.splice(j,1),xe())}function yt(E){const j=E>-1?M.value[E]:null;if(!(j&&j.deletable!==!1))return!1;M.value=k(j,M.value),xe()}function kt(){const E=f.size>0?Array.from(f.values()):[];return ye(E,Array.from(m.values()))}function at(E){A.value.size=E}function Vt(E){A.value&&(at(E),xe())}function vt(E,j){const G=M.value[Number(E)-1];G.editable!==!1?(G.name=j,xe()):de.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function Et(E){return E.map(G=>{const Q=J.value.findIndex(se=>""+se[W.value]==""+G);return Q>-1?J.value[Q]:null}).filter(G=>G!=null)}function It(){const E=t.summary.groupFields;L=E.reduce((j,G)=>(j.set(G,0),j),L);for(const j of X.value)E.forEach(G=>{const Q=L.get(G)||0;L.set(G,a([Q,Z.resolveField(j,G)||0]))});E.forEach(j=>{const G=L.get(j)||0;L.set(j,d(G,2))})}function Y(E){const j=t.summary.groupFields;L=j.reduce((G,Q)=>(G.set(Q,0),G),L);for(const G of E)j.forEach(Q=>{const se=L.get(Q)||0;L.set(Q,a([se,Z.resolveField(G.raw,Q)||0]))});j.forEach(G=>{const Q=L.get(G)||0;L.set(G,d(Q,2))})}return{addFilter:K,addNewDataItem:et,addSorter:Ae,updatePageSize:at,changePageSizeTo:Vt,collapse:he,collapseTo:Oe,dataView:me,editDataItem:vt,expand:D,expandTo:Ze,filters:g,fold:le,getRange:He,getSelectionItems:Et,hasRealChildren:x,insertNewChildDataItem:Ft,insertNewChildDataItems:Tt,insertNewDataItem:Mt,isVisibleInTree:N,load:Je,navigatePageTo:Le,pageIndex:U,rawView:J,refresh:kt,removeAllFilter:ie,removeDataItem:_t,removeDataItemById:gt,removeFilter:ee,removeHierarchyDataItem:yt,removeSorter:$,reOrderVisibleIndex:Ge,setSorters:Ue,sorters:u,summaries:L,updateSummary:It,toggleChildrenVisibiltyByCollapseStatus:_,totalItems:R,unFold:Ve,updateDataView:xe,visibleDataItems:Ie,shouldGroupingData:F,pagination:A,updateVisibleDataSummary:Y}}const Rn=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],An={equal:(t,e,n)=>t&&t[e]===n,notEqual:(t,e,n)=>t&&t[e]!==n,contain:(t,e,n)=>t?(t[e]||"").indexOf(n)>-1:!1,startWidth:(t,e,n)=>t?(t[e]||"").startsWith(n):!1,endWidth:(t,e,n)=>t?(t[e]||"").endsWith(n):!1},Hn={equal:(t,e,n)=>t&&t[e]===n,in:(t,e,n)=>{if(t){const i=t[e];return n.indexOf(i)>-1}return!1},notEqual:(t,e,n)=>t&&t[e]!==n},Ln={equal:(t,e,n)=>{if(t){const i=new Date(n).getTime();return new Date(t[e]).getTime()===i}return!1},notEqual:(t,e,n)=>{if(t){const i=new Date(n).getTime();return new Date(t[e]).getTime()!==i}return!1},greaterThan:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const i=new Date(new Date(n).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<=i}return!1}},$n={equal:(t,e,n)=>t?String(n).split(",").includes(String(t[e])):!1,in:(t,e,n)=>{if(t){const i=t[e];return n.indexOf(i)>-1}return!1},notEqual:(t,e,n)=>t?String(n).split(",").findIndex(o=>o===String(t[e]))===-1:!1},Wn={equal:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):i===o}return!1},notEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?!0:i!==o}return!1},greaterThan:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o>i}return!1},greaterThanOrEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o>=i}return!1},lessThan:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o<i}return!1},lessThanOrEqual:(t,e,n)=>{if(t){const i=Number.parseFloat(String(n)),o=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(o):o<=i}return!1}},zn=new Map([["boolean",Hn],["datetime",Ln],["enum",$n],["number",Wn],["text",An]]);function qn(t,e){const n=r.ref([]),i=new Map,{loadConditionGroup:o}=fe.useCondition();function l(T,v){switch(T){case"check-box":return new fe.CheckBoxValue({value:v});case"combo-list":return new fe.ComboListValue({value:v});case"combo-lookup":return new fe.ComboLookupValue({value:v});case"input-group":return new fe.TextValue({value:v});case"date-picker":return new fe.DatePickerValue({value:v});case"date-range":return new fe.DateRangeValue({value:v});case"datetime-picker":return new fe.DateTimePickerValue({value:v});case"datetime-range":return new fe.DateRangeValue({value:v});case"lookup":return new fe.TextValue({value:v});case"month-picker":return new fe.MonthPickerValue({value:v});case"month-range":return new fe.MonthRangeValue({value:v});case"number-range":return new fe.NumberRangeValue({value:v});case"number-spinner":return new fe.NumberSpinnerValue({value:v});case"radio-group":return new fe.RadioGroupValue({value:v});default:return new fe.TextValue({value:v})}}const a=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),d=new Map([["boolean",fe.CompareType.Equal],["date",fe.CompareType.Equal],["datetime",fe.CompareType.Equal],["number",fe.CompareType.Equal],["string",fe.CompareType.Equal],["text",fe.CompareType.Equal],["enum",fe.CompareType.In],["reference",fe.CompareType.Equal]]);function c(){n.value.forEach((v,w)=>{w===n.value.length-1?v.relation=0:v.relation=1});const T=[];return n.value.forEach(v=>{const{valueType:w}=v.value,y=v.value.value;if(w==="boolean"){const x=[];y.length===1&&x.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value[0],relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:fe.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null}),y.length>1&&x.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value[0],relation:2,expresstype:fe.ValueType.Value,lbracket:v.lBracket?v.lBracket+"(":"(",rbracket:v.rBracket||null},{filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value[1],relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:fe.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket?v.rBracket+")":")"}),T.push(...x)}else T.push({filterField:v.fieldCode,compare:v.compareType||v.compareType===0?v.compareType:fe.CompareType.Like,value:v.value.value,relation:n.value.length>1?v.relation||v.relation===0?v.relation:1:0,expresstype:fe.ValueType.Value,lbracket:v.lBracket||null,rbracket:v.rBracket||null})}),T}function p(T){var w;const v=T.dataType||"string";return((w=T.editor)==null?void 0:w.type)||a.get(v)||"text"}function f(T){var _,k,V,W,P;const v=`field_filter_${T.field}`,w=Date.now(),y=T.field,x=((_=T.column)==null?void 0:_.title)||"",S=((k=T.column)==null?void 0:k.dataType)||"string",I=d.get(S)||fe.CompareType.Equal,B=((W=(V=T.column)==null?void 0:V.editor)==null?void 0:W.type)||a.get(S)||"text",N=l(B,(P=T.column)==null?void 0:P.filter),O=B==="lookup"||B==="combo-lookup"?fe.ValueType.SmartHelp:B==="combo-list"?fe.ValueType.Enum:fe.ValueType.Value;i.set(v,{id:v,fieldCode:y,fieldName:x,compareType:I,valueType:O,value:N,conditionId:w,relation:1}),n.value=Array.from(i.values())}function s(T){const v=`field_filter_${T.field}`;i.delete(v),n.value=Array.from(i.values())}function m(T){i.delete(T),n.value=Array.from(i.values())}function g(){i.clear(),n.value=[]}function u(T){const{valueType:v}=T.value,w=T.compareType||"0",y=Rn[Number(w)];return zn.get(v)[y]}function h(T){const v=T.relation===2?0:1,w=T.items.map(x=>{const S=u(x);return B=>S(B,x.fieldCode,x.value.getValue())}),y=T.children&&T.children.length?T.children.map(x=>h(x)):[];return{relation:v,filterFunctions:w,children:y}}function b(){const T=o(n.value);return h(T)}function C(T,v){const w=v.filterFunctions.map(x=>x(T)),y=v.children.map(x=>C(T,x));return v.relation===1?w.every(x=>x)&&y.every(x=>x):w.includes(!0)||y.includes(!0)}function F(T){const v=b();return C(T,v)}function M(T){e.emit("filterChanged",T)}return{addColumnFilter:f,apply:F,clearCondition:g,conditions:n,getFilterEditorType:p,removeColumnFilter:s,removeCondition:m,filterFromServer:M,createFilterConditions:c}}function Gn(t){r.ref(t.selection.showCheckbox||!1);const e=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.collapseField)||"__fv_collapse__"}),n=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.hasChildrenField)||"__fv_hasChildren__"}),i=r.computed(()=>{var a;return((a=t.hierarchy)==null?void 0:a.parentIdField)||"parent"}),o=r.computed(()=>t.hierarchy&&t.selection.showCheckbox),l=r.computed(()=>(t.treeNodeIconsData.fold||t.iconField)&&t.showTreeNodeIcons);return{collapseField:e,hasChildrenField:n,parentIdField:i,shouldShowCheckBox:o,shouldShowIcon:l}}function Un(t,e,n,i,o,l,a,d,c,p,f){const{dataView:s,visibleDataItems:m}=e,{getVisualData:g,maxVisibleRowIndex:u,minVisibleRowIndex:h}=o,b=r.computed(()=>i.value.primaryColumnsWidth),C=r.computed(()=>i.value.leftColumnsWidth),F=r.computed(()=>i.value.rightColumnsWidth),M=r.ref(0),T=r.ref(0);let v=0,w=l.value-1;const y=r.ref(0),x=r.ref(0),S=r.ref(0),I=r.ref(t.virtualized),B=24,N=1.5;let O=null,_=null,k=null;function V(){return m.value.length*c.value}const W=r.ref(new Map);function P(){m.value.forEach((E,j)=>{const G=E.__fv_visible_index__;E.__fv_data_height__&&W.value.set(G,E.__fv_data_height__)})}function H(){var E;const Y=m.value;if(Y.length<=0)return 0;if(P(),(E=t.rowOption)!=null&&E.wrapContent){const j=s.value.length;let G=0;for(let Q=0;Q<j;Q++)if(W.value.has(Q))G+=W.value.get(Q)||c.value;else if(W.value.size>0){const be=Array.from(W.value.values()).reduce((Fe,we)=>Fe+we,0)/W.value.size;G+=be}else G+=c.value;return G}else{const j=u.value<Y.length?Y[u.value]:Y[Y.length-1];return j.__fv_data_position__>V()?V():(j.__fv_data_position__||0)+(j.__fv_data_height__||0)+Math.max(Y.length-1-u.value,0)*c.value}}const X=r.computed(()=>{const Y=H();let E=x.value/Math.max(Y,x.value),j=Math.floor(E*x.value);for(;x.value>0&&j<B;)E*=N,j=Math.floor(E*x.value);return j}),J=r.computed(()=>Math.floor(S.value/Math.max(b.value,S.value)*y.value)),oe=0,Me=0,Ce=r.computed(()=>y.value-(C.value+b.value+F.value+d.value));function ve(Y){var E;if((E=t.rowOption)!=null&&E.wrapContent){let j=0;const G=s.value.length;for(let Q=0;Q<G;Q++){if(W.value.has(Q))j+=W.value.get(Q)||c.value;else if(W.value.size>0){const be=Array.from(W.value.values()).reduce((Fe,we)=>Fe+we,0)/W.value.size;j+=be}else j+=c.value;if(j>Y)return Q}return G>0?G-1:0}else{const G=Math.floor(Y/c.value)+1,Q=m.value;return Q.length>G?Q[G].__fv_visible_index__-1:0}}function L(Y,E,j){let G=Y,Q=E;const se=E-Y+1;if(se<a+l.value+a){const be=a+l.value+a-se,Fe=E+be<=j,we=0+be<=Y;if(Fe)Q+=be,w=Q;else if(we)G-=be,v=G;else{const Ne=j-E,ue=be-Ne;Q=Math.min(E+Ne,j),G=Math.max(Y-ue,0)}}return{actualStart:G,actualEnd:Q}}function R(Y){var Ne,ue;const E=m.value;if(!E.length){n.value=[];return}const j=(Ne=t.pagination)!=null&&Ne.enable?0:Math.max(v-a,0),G=E[E.length-1].__fv_visible_index__,Q=(ue=t.pagination)!=null&&ue.enable?E.length-1:Math.min(w+a,G),{actualStart:se,actualEnd:be}=L(j,Q,G),Fe=E[se-1],we=g(se,be,Fe,Y);we.length&&(n.value=[...we])}const A=r.computed(()=>H()>x.value),q=r.computed(()=>Math.floor(b.value)>S.value);function U(Y,E){let j=Y;const G=j>oe,Q=A.value;Q&&j<x.value-E&&(j=x.value-E),(!Q||G)&&(j=oe),M.value!==j&&(M.value=j)}function te(){I.value&&(v=ve(Math.abs(M.value)),w=v+l.value-1,(v<h.value||w>u.value-a/2)&&R())}function re(Y){let E=M.value+Y;E>oe&&(E=oe);const j=H();U(E,j),te()}function de(Y){if(!q.value){T.value=0;return}let E=T.value+Y;E>Me&&(E=Me),E<Ce.value&&(E=Ce.value),T.value!==E&&(T.value=E)}function ce(){Math.abs(T.value)+S.value>b.value&&(T.value=Math.min(S.value-b.value,0))}function pe(){M.value=0,v=0,w=l.value-1,R()}function me(){const Y=H();U(M.value,Y)}r.watch([S,b],()=>{de(0)}),r.watch(x,(Y,E)=>{Y!==E&&Y>=s.value.length*c.value&&re(0)});function Ie(Y){let{deltaX:E}=Y,j=-1*Y.deltaY;return typeof E>"u"&&(E=-1*Y.wheelDeltaX/6),typeof j>"u"&&(j=Y.wheelDeltaY/6),Y.deltaMode&&Y.deltaMode===1&&(E*=10,j*=10),Y.shiftKey?{deltaY:-j,deltaX:-E}:{deltaX:E,deltaY:j}}function Ge(Y){if(t.disabled||!A.value||Y.target.tagName==="TEXTAREA")return;Y.preventDefault(),Y.stopPropagation();const{deltaX:E,deltaY:j}=Ie(Y);re(j),de(E)}function ye(){var Y;return(Y=t.rowOption)!=null&&Y.wrapContent?H():s.value.length*c.value}const Ue=r.computed(()=>({height:`${ye()}px`,width:`${C.value}px`,transform:`translateY(${M.value}px)`})),Ae=r.computed(()=>({transform:`translateY(${M.value}px)`})),$=r.computed(()=>{const Y=ye();return{height:p.value?"100%":`${Y}px`,width:p.value?"100%":`${b.value}px`,transform:`translate(${T.value}px, ${M.value}px)`}}),K=r.computed(()=>({transform:`translate(${T.value}px, ${M.value}px)`})),ee=r.computed(()=>({height:`${ye()}px`,width:`${F.value}px`,transform:`translateY(${M.value}px)`})),ie=r.computed(()=>({transform:`translateY(${M.value}px)`})),he=r.computed(()=>({height:`${ye()}px`,width:`${d.value}px`,transform:`translateY(${M.value}px)`})),Oe=r.computed(()=>({width:`${C.value}px`})),Ze=r.computed(()=>({transform:`translateX(${T.value}px)`})),D=r.computed(()=>({width:`${F.value}px`})),le=r.computed(()=>{const Y=H();return U(M.value,Y),M.value/(x.value-Y)*(x.value-X.value)}),_e=r.computed(()=>({width:"8px",height:`${X.value}px`,top:`${le.value}px`,backgroundColor:"#cccccc !important"})),Ve=r.computed(()=>T.value/Ce.value*(y.value-J.value)),xe=r.computed(()=>({height:"8px",width:`${J.value}px`,left:`${Ve.value}px`,backgroundColor:"#cccccc !important"})),Je=r.ref(!1),He=r.ref(-1),Le=r.ref(-1),et=r.ref();function Mt(Y){if(Y instanceof MouseEvent?Y.pageX:Y.touches[0].pageX,Je.value&&Le.value!==-1){const E=Le.value-Y.pageX,j=y.value-J.value;if(Math.abs(E)<=j){const G=E/(S.value-J.value)*(b.value-S.value);de(G),Le.value=Y.pageX}}}function Ft(Y){if(Je.value&&He.value!==-1){const E=He.value-Y.pageY,j=H(),G=j-X.value;if(Math.abs(E)<=G){const Q=E/(x.value-X.value)*(j-x.value);re(Q),He.value=Y.pageY}}}function Tt(Y){const{pageX:E,pageY:j}=Y.touches[0];if(Je.value&&Le.value!==-1){const G=Le.value-E,Q=y.value-J.value;if(Math.abs(G)<=Q){const se=G/(S.value-J.value)*(b.value-S.value);de(se),Le.value=E}}}function _t(Y){const{pageX:E,pageY:j}=Y.touches[0];if(Je.value&&He.value!==-1){const G=He.value-j,Q=H(),se=Q-X.value;if(Math.abs(G)<=se){const be=G/(x.value-X.value)*(Q-x.value);re(be),He.value=j}}}function gt(Y){Je.value=!1,He.value=-1,Le.value=-1,document.removeEventListener("mouseup",gt),O&&(document.removeEventListener("mousemove",O),O=null),document.body.style.userSelect="",et.value&&(et.value.style.opacity=null)}function yt(Y){Je.value=!1,He.value=-1,Le.value=-1,document.removeEventListener("touchend",yt),_&&(document.removeEventListener("touchmove",_),_=null),k&&(document.removeEventListener("touchmove",k),_=null),document.body.style.userSelect="",et.value&&(et.value.style.opacity=null)}function kt(Y,E,j){var Fe;Je.value=!0;const G=(Fe=Y.target)==null?void 0:Fe.parentElement;G&&(G.style.opacity="1",et.value=G);const Q=j==="horizontal"?Mt:je.throttle(Ft,50);O||(O=Q);const{pageX:se}=Y,{pageY:be}=Y;j==="vertical"&&(He.value=Y.pageY),j==="horizontal"&&(Le.value=Y.pageX),E.value&&(E.value,document.addEventListener("mousemove",O),document.addEventListener("mouseup",gt),document.body.style.userSelect="none")}function at(Y){const{pageX:E,pageY:j}=Y.touches[0],G=Math.abs(E-Le.value),Q=Math.abs(j-He.value);Q>G&&Q>5?(k||(k=je.throttle(_t,50)),document.addEventListener("touchmove",k),document.removeEventListener("touchmove",at)):G>Q&&G>5&&(_||(_=Tt),document.addEventListener("touchmove",_),document.removeEventListener("touchmove",at)),Le.value=E,He.value=j}function Vt(Y,E){var se;Je.value=!0;const j=(se=Y.target)==null?void 0:se.parentElement;j&&(j.style.opacity="1",et.value=j);const{pageX:G,pageY:Q}=Y.touches[0];Le.value=G,He.value=Q,E.value&&(E.value,document.addEventListener("touchmove",at),document.addEventListener("touchend",yt),document.body.style.userSelect="none")}function vt(Y){var G;let E,j;if((G=t.rowOption)!=null&&G.wrapContent){E=H()-x.value,j=0;for(let se=0;se<Y;se++)if(W.value.has(se))j+=W.value.get(se)||c.value;else if(W.value.size>0){const Fe=Array.from(W.value.values()).reduce((we,Ne)=>we+Ne,0)/W.value.size;j+=Fe}else j+=c.value}else E=s.value.length*c.value-x.value,j=Y*c.value;j>=E&&(j=E),re(-j-M.value)}function Et(){vt(s.value.length)}function It(Y){var E;if((E=t.rowOption)!=null&&E.wrapContent){const G=ye()-x.value,Q=Math.max(Math.min(Y,0),-G);re(Q-M.value)}else re(Y-M.value)}return{dataGridWidth:y,fitHorizontalScroll:ce,gridDataStyle:$,gridHeaderColumnsStyle:Ze,gridMergedDataStyle:K,gridSideStyle:he,horizontalScrollThumbStyle:xe,leftFixedGridDataStyle:Ue,leftFixedGridHeaderColumnsStyle:Oe,leftFixedGridMergedDataStyle:Ae,offsetX:T,offsetY:M,onMouseDownScrollThumb:kt,onWheel:Ge,reCalculateVisualDataRows:R,resetScroll:pe,rightFixedGridDataStyle:ee,rightFixedGridHeaderColumnsStyle:D,rightFixedGridMergedDataStyle:ie,shouldShowHorizontalScrollbar:q,shouldShowVirticalScrollbar:A,updateVirticalScroll:me,updateVisibleRowsOnLatestVisibleScope:te,verticalScrollThumbStyle:_e,viewPortWidth:S,viewPortHeight:x,scrollToBottom:Et,scrollToRowByIndex:vt,scrollTo:It,onTouchstartScrollThumb:Vt}}function Dn(t,e,n){const{visibleDataItems:i}=e,{isUndefined:o}=Z.useCommonUtils();function l(c){var p;if((p=t.rowOption)!=null&&p.wrapContent){const f=i.value;let s=0;for(let m=0;m<=c.__fv_visible_index__;m++){const g=f[m];s+=g.__fv_data_height__}return s}else return n.value*c.__fv_visible_index__}function a(c,p){const f=c.pre;if(f){let s=f.__fv_data_position__,m=f.__fv_data_height__;(o(s)||t.virtualized&&t.hierarchy&&l(f)!==s)&&(s=l(f)),o(m)&&(m=n.value);const g=c.visible?s+m:f.__fv_data_position__;c.top=g,p.__fv_data_position__=g}else c.top=0,p.__fv_data_position__=0}function d(c,p,f){if(c&&!p.ref){p.ref=c;const s=p.parent;p.cellHeight!==c.offsetHeight&&(p.cellHeight=c.offsetHeight),p.cellHeight&&p.cellHeight>(s.height||0)&&(s.height=p.cellHeight,f.__fv_data_height__=s.height),a(s,f)}!c&&p.ref&&(p.ref=c)}return{updateRowPosition:a,updateVisualInfomation:d}}function Yn(){function t(e,n){var a,d;if(!n.data||!n.data.length)return"";const i=Object.prototype.hasOwnProperty.call(n,"valueField")&&n.valueField||"value",o=Object.prototype.hasOwnProperty.call(n,"textField")&&n.textField||"name";if(typeof e=="string"&&(e!=null&&e.includes(","))){const c=e.split(",");if(!n.data.filter(m=>c.includes(m[i])).length)return"";const f=(a=n.data)==null?void 0:a.reduce((m,g)=>(m[g[i]]=g,m),{});return c.map(m=>{var g;return(g=f[m])==null?void 0:g[o]}).join(",")||e}const l=(d=n.data)==null?void 0:d.find(c=>c[i]===e);return(l==null?void 0:l[o])||e||""}return{renderEnumColumn:t}}function Xn(){function t(e,n){return e?n==null?void 0:n.trueText:n==null?void 0:n.falseText}return{renderText:t}}function Zn(){const{formatTo:t}=Z.useDateFormat();function e(i,o){if(i){let l="yyyy-MM-dd";if(typeof o=="string"?l=o:typeof o=="object"&&(l=o.format||"yyyy-MM-dd"),l=l.replace("YYYY","yyyy").replace("-DD","-dd"),typeof o=="object"&&o.dateRange){const a=o.dateRangeDatesDelimiter||"~";let[d,c]=i.split(a);return d=t(d,l),c=t(c,l),d+a+c}return t(i,l)}return i}function n(i,o){const l=o.dateFormat||"yyyy-MM-dd";return t(i,l)}return{renderDateColumn:n,renderDateTimeColumn:e}}function Jn(){const{formatTo:t}=Z.useNumberFormat();function e(n,i){const o={precision:i.precision,prefix:i.prefix||"",suffix:i.suffix||"",decimalSeparator:i.decimal||".",groupSeparator:i.thousand||""};return t(n,o)||n}return{renderNumberColumn:e}}function Qn(){function t(e,n){if(e){const i={};return n!=null&&n.width&&(i.width=`${n.width}px`),n!=null&&n.height&&(i.height=`${n.height}px`),r.createVNode("img",{src:e,style:i},null)}return e}return{renderImageColumn:t}}function Kn(){function t(e,n){const i=Re.LocaleService.getLocale();return(e==null?void 0:e[i||"zh-CHS"])||""}return{renderMultilingualColumn:t}}function ei(){const{renderText:t}=Xn(),{renderEnumColumn:e}=Yn(),{renderNumberColumn:n}=Jn(),{renderDateColumn:i,renderDateTimeColumn:o}=Zn(),{renderImageColumn:l}=Qn(),{renderMultilingualColumn:a}=Kn();function d(f){return typeof f=="boolean"?f.toString():f}function c(f,s,m){return s.customFormat?s.customFormat(f,m.raw):d(f)}function p(f,s,m){const{column:g}=f,u=Z.resolveField(s.raw,g.field),h=m.options||m;return m.type===Ye.NONE?d(u):m.type===Ye.CUSTOM?c(u,m,s):m.type===Ye.ENUM?e(u,h):m.type===Ye.NUMBER?n(u,h):m.type===Ye.BOOLEAN?t(u,h):m.type===Ye.DATE?i(u,h):m.type===Ye.DATE_TIME?o(u,m):m.type===Ye.IMAGE?l(u,h):m.type===Ye.MULTI_LINGUAL?a(u,h):d(u)}return{renderFormatColumn:p}}function ti(t,e,n){const{isUndefined:i}=Z.useCommonUtils(),o=r.ref(t.mergeCell),{updateVisualInfomation:l}=n,{renderCommandColumn:a}=En(t),{renderFormatColumn:d}=ei();function c(b,C,F,M,T,v=1){const w={colSpan:v,rowSpan:1,index:F,field:b,data:Z.resolveField(M,b),editingData:Z.resolveField(M,b),parent:T,mode:C,align:"left",valign:"start",showEllipsis:!0,getEditor:y=>y.data,setRef:y=>l(y,w,M),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return w}function p(b,C,F){return b.getEditor=M=>e.getEditor(M,C,M.parent),b.setRef=M=>l(M,b,F),b.update=M=>{M!==void 0&&(b.editingData=M)},b.accept=()=>{Z.setFieldValue(b.editingData,F,C.field),b.data=Z.resolveField(F,C.field)},b.cancel=()=>{b.editingData=b.data},b.updateData=M=>{Z.setFieldValue(Z.resolveField(M,C.field),F,C.field),b.data=Z.resolveField(F,C.field),b.editingData=Z.resolveField(F,C.field)},b}function f(b,C){C.dataType==="commands"?b.formatter=(F,M)=>C.formatter?C.formatter(b,M):a(b,M):C.formatter&&(b.formatter=(F,M)=>typeof C.formatter=="function"?C.formatter(F,M):d(b,M,C.formatter))}function s(b,C,F){const M=C&&C.data[F];if(M&&M.data===b.data){const v=M&&M.spannedBy||M;v.rowSpan++,v.spanned=v.spanned||[],v.spanned.push(b),b.colSpan=0,b.rowSpan=0,b.spannedBy=v}}function m(b,C,F){o.value&&s(b,C,F.field)}function g(b,C){C.showEllipsis!==void 0&&(b.showEllipsis=C.showEllipsis),b.showTips=i(C.showTips)?!0:C.showTips,b.column=C,b.align=C.align||"left",b.valign=C.valign||"middle",b.mode=t.editable?Pe.editable:Pe.readonly}function u(b,C,F,M){g(b,C),p(b,C,M),f(b,C),m(b,F,C)}function h(b,C,F,M,T){const v=t.editable?Pe.editable:Pe.readonly,w=c(b.field,v,C,F,M);return u(w,b,T,F),w}return{createCellByColumn:h,createCellByField:c,updateCellByColumn:u}}function ni(t,e,n,i,o,l,a,d){var M;const c=r.ref(t.rowOption),p=((M=c.value)==null?void 0:M.wrapContent)||!1,{idField:f}=o,{collapseField:s}=i,{updateRowPosition:m}=l,{createCellByColumn:g}=a,u=(T,v,w,y)=>{Z.setFieldValue(Z.resolveField(T,y),v,y),w.data[y].data=Z.resolveField(v,y),w.data[y].editingData=Z.resolveField(v,y)};function h(T,v,w,y,x,S){var oe,Me,Ce;const{__fv_data_grid_group_field__:I,__fv_data_grid_group_value__:B,__fv_data_index__:N}=w,O=w.__fv_data_grid_group_layer__||(w.__fv_parents__?(oe=w.__fv_parents__)==null?void 0:oe.size:0)||0,_=typeof w.parent=="number"?Number(w.parent):-1,k=w.__fv_data_grid_group_collapse__||w[s.value],V=w.__fv_visible__===void 0?!0:w.__fv_visible__,W=w.__fv_checked__,P=w.__fv_indeterminate__,H=w.__fv_disabled__||w[((Me=t.rowOption)==null?void 0:Me.disabledField)||"disabled"],X=t.hierarchy&&e.isVisibleInTree(w),J={collapse:k,data:{},dataIndex:N,groupField:I,groupValue:B,layer:O,index:v,parentIndex:_,pre:y,top:S,type:T,raw:w,checked:W,disabled:H,indeterminate:P,setRef:ve=>{J.ref=ve},visible:V&&X||V&&!t.hierarchy,status:De.initial,updateCell:(ve,L)=>{u(ve,w,J,L),e.updateSummary()},updateCells:(ve,L)=>{L.forEach(R=>{u(ve,w,J,R)})}};return y||(w.__fv_data_position__=0),p||(J.height=d.value,w.__fv_data_height__=J.height,m(J,w)),(Ce=c.value)!=null&&Ce.customRowStatus&&(c.value.customRowStatus(J),w.__fv_disabled__=J.disabled),J}function b(T,v,w,y,x,S){const I=h(nt.data,x,v,w,y,S);return T.forEach((B,N)=>{I.data[B.field]=g(B,N,v,I,y)}),I}function C(T,v,w,y,x){const S=Object.assign(T,{index:v,dataIndex:w,top:y,pre:x});return p||(S.height=d.value,S.raw.__fv_data_height__=S.height,m(S,S.raw)),S}function F(T,v,w,y,x,S){const I=T.__fv_data_index__,B=T[f.value],N=n.getEditingSnapshot(B);return N===null?b(S,T,v,w,y,x):C(N,y,I,x,v)}return{createEmptyRow:h,createNewRowFromDataItem:b,renderDataRow:F}}function ii(t,e,n,i){const o=r.ref(t.summary),{idField:l}=e,{createCellByField:a}=n,{createEmptyRow:d}=i,c=r.computed(()=>{const m=o.value;return(m==null?void 0:m.groupFields)||[]}),p=r.computed(()=>{const m=o.value;return m&&m.enable&&m.groupFields&&m.groupFields.length>0});function f(m,g,u,h){if(p.value){const b=m.data[g];let C=b.colSpan;const F=c.value.reduce((M,T)=>(M.set(T,!0),M),new Map);h.reduce((M,T,v)=>{if(F.has(T.field)){const w=a(T.field,Pe.readonly,v,u,m);m.data[T.field]=w,C-1>v&&(C=v)}return M},m),b.colSpan=C}}function s(m,g,u,h,b,C,F){const M=m.__fv_data_grid_group_field__,T=d(nt.group,h,m,g,u,b);return T.data[l.value]=a(l.value,Pe.readonly,-1,m,T,0),T.data[M]=a(M,Pe.readonly,1,m,T,C.length),f(T,M,m,C),T}return{renderGroupRow:s}}function oi(t,e,n,i){const{idField:o}=e,{createCellByField:l}=n,{createEmptyRow:a}=i;function d(c,p,f,s,m,g,u){const h=c.__fv_data_grid_group_field__,b=a(nt.summary,s,c,p,f,m);return b.data[o.value]=l(o.value,Pe.readonly,-1,c,b),b.data[h]=l(h,Pe.readonly,1,c,b,g.length),b}return{renderSummaryRow:d}}function ri(t,e,n,i,o){var ve;const{isMobilePhone:l}=ke.useMobile(),a=r.ref(!1),{idField:d}=n,c=r.ref(t.editable),p=r.ref(t.editOption),f=r.ref(((ve=t.rowOption)==null?void 0:ve.wrapContent)||!1),{onClickRow:s,onClickRowExcludeDblclick:m}=i,g=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let u,h,b,C,F;function M(L){return h&&h.raw[d.value]===L?h:null}const T=r.reactive({});function v(L){return(L==null?void 0:L.field)!==Ot&&(L==null?void 0:L.field)!==Tn}function w(L,R,A={}){L.mode=Pe.editing,u=L,h=R,b=Z.resolveField(R==null?void 0:R.raw,L.field),C=A;for(const q in T)delete T[q]}function y(L){L.accept(),L.mode=Pe.editable,u=null}function x(L){y(L);const R={};h&&(Object.keys(h).forEach(A=>{R[A]=h==null?void 0:h[A]}),h=null),e.emit("endEditCell",{cell:L,row:R,newValue:Z.resolveField(R==null?void 0:R.raw,L.field),oldValue:b,column:C,editor:T})}function S(L){const R=Promise.resolve(!0);return L?R.then(()=>je.isUndefined(t.beforeEndEditCell)?!0:typeof t.beforeEndEditCell=="function"?t.beforeEndEditCell({cell:L,row:h,newValue:L.editingData,oldValue:b}):()=>!0).then(A=>(A&&(x(L),h&&(h=null)),A)):R}function I(L){if(F&&F!==L.target){F=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const A=L.target;if(!(A!=null&&A.closest(".popover"))){if(L instanceof MouseEvent||L.key!=="Enter"){const q=A.closest(".fv-grid-cell");if(u&&u.ref&&u.ref===q)return}S(u).then(q=>{q&&document.body.removeEventListener("click",I,!0)})}}function B(){window.closeModal||(window.closeModal=()=>{a.value=!1,window.closeModal&&delete window.closeModal})}function N(L,R,A){return Promise.resolve().then(()=>{var U;const q=(U=A.editor)==null?void 0:U.readonly;return!je.isUndefined(t.beforeEditCell)&&typeof t.beforeEditCell=="function"?t.beforeEditCell({row:L,cell:R,rawData:L.raw,column:A}):!q}).then(q=>{q&&(l()?(a.value=!0,B()):w(R,L,A),document.body.removeEventListener("click",I,!0),document.body.addEventListener("click",I,!0))})}function O(L,R,A,q={}){L.stopPropagation(),m(L,A),v(R.column)&&c.value&&p.value.editMode==="cell"&&R.mode===Pe.editable&&S(u).then(()=>{u||N(A,R,q)})}function _(L,R,A,q={}){l()||L.stopPropagation(),s(L,A),v(R.column)&&c.value&&p.value.editMode==="cell"&&R.mode===Pe.editable&&S(u).then(()=>{u||N(A,R,q)})}function k(L){L.stopPropagation(),F=L.target}function V(L){L.stopPropagation(),F&&(F=null)}function W(L){Object.values(L.data).filter(R=>{var A;return R.mode===Pe.editable&&v(R.column)&&!((A=R.column)!=null&&A.readonly)}).forEach(R=>{R.mode=Pe.editing}),L.status=De.editing,h=L}function P(L,R){Object.values(L.data).filter(A=>A.mode===Pe.editing).forEach(A=>{R?A.accept():A.cancel(),A.mode=Pe.editable}),L.status=De.initial,h===L&&(h=null)}function H(L){c.value&&p.value.editMode==="row"&&h!==L&&(h&&P(h,!1),W(L))}function X(L){P(L,!0),L.status=De.initial}function J(L){P(L,!1),L.status=De.initial}function oe(L,R,A){const q=R.dataType,U=R.editor||{type:g.get(q)||"input-group"};return!f.value&&U.type==="text"&&(U.type="input-group"),U&&v(L.column)?(U.type==="input-group"&&(U.textAlign=R.align!=="center"&&R.align!=="right"?"left":R.align,U.updateOn="change"),U.type==="number-spinner"&&(U.updateOn="change"),U.type==="textarea"&&(U.lineBreak="alt enter"),U.context={rowData:A.raw,column:R,cell:L,editor:T},U.readonly=!1,r.createVNode(yn.FDynamicFormInput,{focusOnCreated:t.focusOnEditingCell,selectOnCreated:t.selectOnEditingCell,editor:U,modelValue:L.editingData,"onUpdate:modelValue":te=>L.editingData=te,id:R.id,onMousedown:te=>k(te),onMouseup:te=>V(te)},null)):L.data}function Me(){S(u)}r.watch(()=>t.editable,()=>{c.value=t.editable}),r.watch(()=>{var L;return(L=t.editOption)==null?void 0:L.editMode},L=>{p.value.editMode=L});function Ce(){u=null,h=null,C=null,F=null,document.body.removeEventListener("click",I,!0)}return{clear:Ce,onClickOutOfCell:I,onClickCell:_,onClickCellByKeyboard:O,onEditingRow:H,acceptEditingRow:X,cancelEditingRow:J,getEditingSnapshot:M,getEditor:oe,endEditCell:Me,onMousedownCell:k,onMouseupCell:V,showRowEditPanel:a,endEditByCell:y}}function li(t){const e=r.ref(t.idField);function n(i){if(i&&i.length){const o=i[0];Object.keys(o).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:n}}function ai(t,e,n,i){const{idField:o}=i,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:d,selectItem:c,toggleSelectItem:p,updateSelectAllStatus:f,isSingleSelect:s}=n,m=r.ref(0),g=r.ref(-1);function u(N){l.value=N}function h(N){return N.raw[o.value]===l.value}function b(N,O){var V;const _=O??N.dataIndex,k={"fv-grid-row":N.type===nt.data,"fv-grid-group-row":N.type===nt.group,"fv-grid-summary-row":N.type===nt.summary,"fv-grid-row-hover":_===g.value,"fv-grid-row-selected":h(N),"fv-grid-row-odd":_%2>0,"fv-grid-row-even":_%2===0,"fv-grid-disabled":N.disabled};if((V=t.rowOption)!=null&&V.customRowStyle){const W=t.rowOption.customRowStyle(N.raw)||{};return Object.assign({},k,W.class||{})}return k}function C(N,O){var k;const _={"fv-grid-cell":!0};if((k=t.rowOption)!=null&&k.customCellStyle){const V=t.rowOption.customCellStyle(N,O)||{};return Object.assign({},_,V.class||{})}return _}function F(N,O){var k;const _={"fv-grid-hierarchy-cell":!0};if((k=t.rowOption)!=null&&k.customCellStyle){const V=t.rowOption.customCellStyle(N,O)||{};return Object.assign({},_,V.class||{})}return _}function M(N){const O=l.value,_=N.raw[o.value];u(_),O!==_&&e.emit("selectionChange",[N.raw],{id:_,data:N.raw})}function T(N,O){var V,W;if(d.value&&!(O!=null&&O.shiftKey)||s.value){(V=t.selection)!=null&&V.keepSelectingOnClick?c(N):p(N,(W=t.selection)==null?void 0:W.keepSelectingOnClick),f();return}if(d.value&&(O==null?void 0:O.shiftKey)||a.value){p(N),f();return}}function v(N,O){O.disabled||(e.emit("clickRow",O.index,O.raw),M(O),T(O,N))}function w(N){m.value+=1,setTimeout(()=>{m.value===1&&e.emit("clickRow",N.index,N.raw),m.value=0},250),m.value>1&&(e.emit("doubleClickRow",N.index,N.raw),m.value=0)}function y(N,O){O.disabled||(w(O),M(O),T(O,N))}function x(N){N.disabled||w(N)}function S(N,O){}function I(N,O){}function B(N,O){var V;const _=O??N.dataIndex,k={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":_===g.value,"fv-grid-sidebar-row-selected":h(N),"fv-grid-sidebar-row-odd":_%2>0,"fv-grid-sidebar-row-even":_%2===0,"d-flex":!0,"align-items-center":!0};if((V=t.rowOption)!=null&&V.customRowStyle){const W=t.rowOption.customRowStyle(N.raw)||{};return Object.assign({},k,W.class||{})}return k}return{activeRowById:u,clickRowItem:x,selectRow:T,changeRow:M,gridCellClass:C,gridHierarchyCellClass:F,gridRowClass:b,onClickRow:y,onClickRowExcludeDblclick:v,onMouseoverRow:S,sidebarRowClass:B,onMouseoutRow:I}}function si(t,e,n,i,o){const{idField:l}=n,{dataView:a,getSelectionItems:d}=e,c=r.ref(""),p=r.computed(()=>t.selection.enableSelectRow),f=r.ref(t.selection.multiSelect??!1),s=r.ref(t.selection.multiSelectMode||"DependOnCheck"),m=r.ref(t.selection.showCheckbox),g=r.computed(()=>{var $;return!!(($=t.selection)!=null&&$.showSelectAll)}),u=r.ref(t.selectionValues||[]),h=r.computed(()=>t.selection.showSelection),b=r.computed(()=>{var $;return(($=t.selection)==null?void 0:$.keepSelectingOnPaging)===void 0?!0:t.selection.keepSelectingOnPaging}),C=r.ref(!!u.value.length&&i.value.length===u.value.length),F=r.ref(!!u.value.length&&i.value.length!==u.value.length),M=r.computed(()=>p.value&&f.value),T=r.computed(()=>p.value&&!f.value&&!m.value),v=r.computed(()=>!!t.hierarchy),w=r.computed(()=>{const $=m.value&&s.value==="DependOnCheck";return M.value&&$}),y=r.computed(()=>M.value&&!m.value),x=r.computed(()=>M.value&&m.value&&s.value==="OnCheckAndClick");function S(){if(!b.value){const $=a.value.map(K=>K[l.value]);u.value=u.value.filter(K=>$.includes(K))}}function I(){const $=a.value.every(ee=>u.value.includes(ee[l.value])),K=a.value.every(ee=>!u.value.includes(ee[l.value]));$&&(C.value=!0,F.value=!1),K&&(C.value=!1,F.value=!1),!$&&!K&&(C.value=!1,F.value=!0)}function B(){return d(u.value)}function N(){const $=i.value.reduce((ee,ie)=>(ee.set(ie.raw[l.value],ie),ee),new Map);return u.value.map(ee=>$.get(ee)).filter(ee=>!!ee)}function O($){var ee;const K=$.raw.__fv_children_index__;if(K&&K.length){const ie=K.map(he=>a.value[he]);(ee=u.value)!=null&&ee.length&&ie.some(Oe=>!u.value.includes(Oe[l.value]))&&($.indeterminate=!0,$.raw.__fv_indeterminate__=!0)}}function _(){const $=d(u.value);o.emit("selectionUpdate",$,u.value)}function k($){o.emit("unSelectItem",$)}function V($){o.emit("selectItem",$)}function W(){const $=i.value.filter(ee=>ee.indeterminate).map(ee=>ee.raw[l.value]);i.value.forEach(ee=>{ee.checked=!1,ee.indeterminate=!1,ee.raw.__fv_checked__=!1,ee.raw.__fv_indeterminate__=!1}),N().forEach(ee=>{ee.checked=!0,ee.raw.__fv_checked__=!0}),$.forEach(ee=>{const ie=i.value.find(he=>he.raw[l.value]===ee);O(ie)})}r.watch(()=>i.value,()=>{W()}),r.watch(()=>t.selectionValues,$=>{u.value=$,W()},{immediate:!0}),r.watch(()=>t.selection,$=>{f.value=!!$.multiSelect,s.value=$.multiSelectMode||"DependOnCheck",m.value=!!$.showCheckbox});const P=r.computed(()=>!f.value);function H($){return $.raw[l.value]}function X($){return u.value.findIndex(ee=>ee===H($))}function J(){N().forEach(ee=>{ee.checked=!1}),d(u.value).forEach(ee=>{ee.__fv_checked__=!1}),u.value=[],I()}function oe($){const K=$;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ee=new Set(u.value);ee.add(K[l.value]),u.value=Array.from(ee.values()),S()}function Me($){const K=$;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,u.value=u.value.filter(ee=>ee!==K[l.value]),S()}function Ce($){const K=$.raw;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ee=new Set(u.value);ee.add(K[l.value]),u.value=Array.from(ee.values()),S(),$.checked=!0,$.indeterminate=!1,_(),V($)}function ve($){const K=$.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,u.value=u.value.filter(ee=>ee!==K[l.value]),S(),$.checked=!1,$.indeterminate=!1,_(),k($)}function L($){$.disabled||Ce($)}function R($){$.disabled||ve($)}function A($){$.__fv_checked__=!1,$.__fv_indeterminate__=!0,u.value=u.value.filter(K=>K!==$[l.value]),S()}function q($){const K=$.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!0,u.value=u.value.filter(ee=>ee!==K[l.value]),S(),$.checked=!1,$.indeterminate=!0}function U($){P.value&&J(),$.checked?ve($):Ce($)}function te($,K=!0){const ee=$.checked;P.value&&J(),K?$.checked?R($):L($):ee?R($):L($)}function re($){J(),L($)}function de($){const K=i.value.find(ee=>ee.raw[l.value]===$);if(K)re(K);else{const ee=a.value.find(ie=>ie[l.value]===$);ee&&oe(ee)}}function ce($){const K=i.value.filter(he=>$.includes(he.raw[l.value])),ee=K.map(he=>he.raw[l.value]),ie=a.value.filter(he=>{const Oe=he[l.value];return!ee.includes(Oe)&&$.includes(Oe)});K.length||ie.length,K.forEach(he=>{L(he)}),ie.forEach(he=>{oe(he)})}function pe($){for(const K of $){if(!u.value.includes(K))continue;const ee=i.value.find(ie=>ie.raw[l.value]===K);if(ee)R(ee);else{const ie=a.value.find(he=>he[l.value]===K);ie&&Me(ie)}}u.value=u.value.filter(K=>!$.includes(K)),S()}function me(){i.value.forEach($=>{const K=$.raw;K.__fv_checked__=!0,K.__fv_indeterminate__=!1;const ee=new Set(u.value);ee.add(K[l.value]),u.value=Array.from(ee.values()),S(),$.checked=!0,$.indeterminate=!1})}function Ie(){i.value.forEach($=>{const K=$.raw;K.__fv_checked__=!1,K.__fv_indeterminate__=!1,u.value=u.value.filter(ee=>ee!==K[l.value]),S(),$.checked=!1,$.indeterminate=!1})}function Ge(){return i.value.find($=>$.raw[l.value]===c.value)}function ye(){c.value=""}function Ue($){if(Array.isArray($)){const K=new Set($);u.value=Array.from(K.values())}}function Ae($){Array.isArray($)&&(u.value=u.value.filter(K=>!$.includes(K)))}return{clearSelection:J,currentSelectedDataId:c,enableMultiSelect:f,enableSelectRow:p,findIndexInSelectedItems:X,getSelectedItems:B,getSelectionRow:Ge,indeterminate:q,indeterminateDataItem:A,isSelectingHirarchyItem:v,multiSelectMode:s,multiSelectOnClickRow:x,multiSelectOnClickRowWithShift:y,multiSelectOnlyOnCheck:w,select:L,selectAll:me,selectedValues:u,selectDataItem:oe,selectItem:re,selectItemById:de,selectItemByIds:ce,showCheckBox:m,showSelectAll:g,toggleSelectItem:te,toggleSelectItemWithoutRow:U,unSelect:R,unSelectAll:Ie,unSelectDataItem:Me,unSelectItemByIds:pe,updateSelectAllStatus:I,selectAllStatus:C,indeterminateStatus:F,isSingleSelect:T,showSelection:h,keepSelectingOnPaging:b,emitSelectionChanged:_,emptyCurrentRowId:ye,updateSelectedValues:Ue,removeSelectedValues:Ae}}function di(t,e){var h,b;const n=String(Date.now()),i=50,{showCheckBox:o}=e,l=r.ref(((h=t.rowNumber)==null?void 0:h.enable)??!1),a=r.computed(()=>{const C=t.hierarchy&&o.value&&t.selection.multiSelect&&t.checkboxPosition==="leading",F=!t.hierarchy&&o.value&&t.selection.multiSelect;return C||F}),d=r.ref(l.value?((b=t.rowNumber)==null?void 0:b.width)??36:0),c=r.ref(a.value?i:0),p=r.computed(()=>{var C,F;return l.value?((C=t.rowNumber)==null?void 0:C.heading)==="序号"?Re.LocaleService.getLocaleValue("datagrid.lineNumberTitle"):(F=t.rowNumber)==null?void 0:F.heading:""}),f=r.computed(()=>(a.value&&!t.hierarchy?Number(c.value):0)+(l.value?Number(d.value):0));r.watch(()=>t.rowNumber,C=>{C&&C.enable!==void 0&&(l.value=C.enable),C&&C.width!==void 0&&(d.value=C.width)});function s(C){var M;const F={top:`${C.top}px`,width:`${f.value}px`,height:`${C.height||""}px`};if((M=t.rowOption)!=null&&M.customRowStyle){const T=t.rowOption.customRowStyle(C.raw)||{};return Object.assign({},F,T.style||{})}return F}const m=r.computed(()=>({width:`${f.value}px`}));function g(C){return`${n}_${C.type}_r_${C.index}_${C.refreshKey||""}`}function u(C){return`${n}_${C.type}_r_${C.index}_${C.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:a,sidebarCellPosition:s,sidebarCornerCellStyle:m,sidebarTitle:p,sidebarWidth:f,rowKey:u,cellKey:g}}const ci={ascend:(t,e)=>t===e?0:t===!1?-1:1,decend:(t,e)=>t===e?0:t===!0?-1:1},ui={ascend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return n===i?0:n<i?-1:1},decend:(t,e)=>{const n=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return n===i?0:n<i?1:-1}},fi={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1},mi={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1};function pi(t){const e=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),n=new Map([["boolean-sorter",ci],["datetime-sorter",ui],["numeric-sorter",fi],["text-sorter",mi]]);function i(a){const d=(a==null?void 0:a.dataType)||"string",c=e.get(d)||"text-sorter";return n.get(c)||(a==null?void 0:a.sorter)}function o(a){return i(a.column)}function l(a,d){const c=o(a),p=(a.status&Be.sortable)===Be.sortable&&(a.status&Be.sorted)===Be.sorted,f=(a.status&Be.ascending)===Be.ascending,s=(a.status&Be.descending)===Be.descending;if(p&&c){const m=f?c.ascend:s?c.decend:void 0;m?d.addSorter(a.field,{field:a.field,compare:m}):d.removeSorter(a.field)}else d.removeSorter(a.field)}return{getSorterByColumn:i,updateSorter:l}}function At(t,e,n,i,o="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:d}=n,{gridHeaderColumnsStyle:c,leftFixedGridHeaderColumnsStyle:p,rightFixedGridHeaderColumnsStyle:f}=i,s=l.value.defaultColumnWidth,m=32,g=new Map([[0,0]]);function u(I,B){const N=g.get(B)||0,O={height:`${I.depth*m}px`,left:`${I.left}px`,top:`${(I.layer-1)*m}px`,width:`${I.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(O["line-height"]=`${I.depth*m}px`),g.set(B+1,N+(I.actualWidth||s)),O}const h=r.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),b=r.computed(()=>({height:`${l.value.headerDepth*m}px`})),C=function(I){return e.showSetting&&!!I.showSetting};function F(){return r.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[r.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function M(I,B,N,O){var _;(_=t==null?void 0:t.setupContext)==null||_.emit("selectionChange",I,B,N,O)}function T(I){var N,O;return"w-100 d-flex align-items-center justify-content-"+(((N=I.column)==null?void 0:N.halign)==="center"?"center":((O=I.column)==null?void 0:O.halign)==="right"?"end pr-2":"start pl-2")}function v(I,B,N){var _;const O=r.ref(I.column);return r.createVNode("div",{class:"fv-grid-header-cell",style:u(I,N)},[r.createVNode(z.FDesignerItem,{modelValue:O.value,"onUpdate:modelValue":k=>O.value=k,customClass:T(I),canAdd:!1,canDelete:!1,canMove:!1,key:(_=O.value)==null?void 0:_.id,type:o,componentId:e.componentId,onSelectionChange:M},null),C(I)&&F(),I.resizable&&r.createVNode("span",{class:"fv-column-resize-bar"},null)])}function w(I){return I.map((B,N)=>{const O=[];if(O.push(v(B,I,N)),B.children&&B.children.length){const _=w(B.children);O.push(..._)}return O})}function y(){return r.createVNode("div",{class:"fv-grid-header-left-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:p.value},[w(l.value.leftHeaderColumns)])])}function x(){return r.createVNode("div",{class:"fv-grid-header-right-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[w(l.value.rightHeaderColumns)])])}function S(){return r.createVNode("div",{class:h.value,style:b.value},[a.value&&y(),r.createVNode("div",{class:"fv-grid-header-primary"},[r.createVNode("div",{class:"fv-grid-header-columns",style:c.value},[w(l.value.primaryHeaderColumns)])]),d.value&&x()])}return{renderGridHeader:S}}const st={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"drawer-toolbar-item":{type:"drawer-toolbar-item",name:"抽屉工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},"drawer-toolbar":{type:"drawer-toolbar",name:"抽屉工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"},image:{type:"image",name:"图像"},"discussion-editor":{type:"discussion-editor",name:"评论编辑区"},"discussion-list":{type:"discussion-list",name:"评论列表"},comment:{type:"comment",name:"评论区"},"rich-text-editor":{type:"rich-text-editor",name:"富文本",icon:"rich-text-box"},calendar:{type:"calendar",name:"日历",icon:"date-picker"}};class hi extends $e.BaseControlProperty{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=qe.useCommandOption(this).getCommandColumnProperties(e),this.propertyConfig.categories.column=qe.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=qe.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=qe.useSummary().getSummaryProperties(e),this.propertyConfig.categories.group=qe.useGroup().getGroupProperties(e),this.propertyConfig.categories.sort=qe.useSort().getSort(e),this.propertyConfig.categories.filter=qe.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,d,c;const n=(c=(d=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:d.entity[0])==null?void 0:c.entities[0],i=this.assembleSchemaEntityToTree(n,0),o=this,l=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...l.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:!0}},setPropertyRelates(p,f){switch(p&&p.propertyID){case"dataSource":{const s=o.formSchemaUtils.getViewModelById(o.viewModelId);if(s){const m=i.find(g=>g.label===p.propertyValue);s.bindTo=m.bindTo}o.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,n,i,o="",l=[]){const a=o?`${o}/${e.label}`:"/";return l.push({id:e.id,name:e.name,label:e.label,layer:n,parent:i&&i.id,bindTo:a.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(d=>this.assembleSchemaEntityToTree(d,n+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=qe.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=qe.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=qe.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=qe.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const n=[...qe.useDataGridEvent().initEvent(e),{label:"onEndEditCell",name:"单元格结束编辑事件"},{label:"beforeEditCell",name:"单元格编辑前事件"}],i=this,o=i.eventsEditorUtils.formProperties(e,i.viewModelId,n),l=i.createBaseEventProperty(o);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,d){const c=a.propertyValue;delete e[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(e,i.viewModelId,c.events,c)),e.remoteSort=!!e.columnSorted,e.command&&(e.command.onClickEditCommand=e.onClickEditCommand,e.command.onClickDeleteCommand=e.onClickDeleteCommand,e.command.onHandleAction=e.onHandleAction)}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function gi(t,e){const n=t.schema,i=r.ref(!0),o=r.ref(!0);function l(s){return s&&s.sourceType==="control"?s.componentCategory==="input":!1}function a(){return!1}function d(){return!1}function c(){return!0}function p(s){return new hi(s,e).getPropertyConfig(n)}function f(){var s,m,g,u;if(t&&e){const h=(s=t==null?void 0:t.componentInstance)==null?void 0:s.value.belongedComponentId;let b="",C="";const{formSchemaUtils:F}=e;if(h){const T=F.getRootViewModelId(),v=F.getComponentByViewModelId(T),w=F.selectNode(v,y=>y.contents&&y.contents.find(x=>x.component===h));(w==null?void 0:w.type)===((m=st["tab-page"])==null?void 0:m.type)&&((g=w==null?void 0:w.contents)!=null&&g.length)&&(b=w.title||""),(w==null?void 0:w.type)===((u=st.section)==null?void 0:u.type)&&(w==null?void 0:w.showHeader)!==!1&&(b=w.mainTitle||""),b=b?`${b} > `:"",C=b?w.id:""}const M=st["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(t.schema.id,{componentTitle:M,parentPathName:`${b}${M}`,reliedComponentId:C})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:d,hideNestedPaddingInDesginerView:c,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:p,setComponentBasicInfoMap:f}}const Ke=r.defineComponent({name:"FDataGridDesign",props:wn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(t,e){var Ae;const n=r.ref(!1),i=r.ref(t.rowOption.rowHeight||28),o=r.ref(),l=r.inject("designer-host-service"),a=r.inject("design-item-context"),d=gi(a,l),c=z.useDesignerComponent(o,a,d);c.value.styles="display:flex;flex:1;",r.onMounted(()=>{o.value.componentInstance=c}),r.provide("data-grid-context",{dataGridProps:t}),e.expose(c.value);const p=r.ref(t.columns),f=20,s=li(t),m=0,g=r.ref(),u=r.ref(),h=r.ref(t.showStripe),b=r.ref([]),C=r.ref(!1),F=r.ref(((Ae=t.rowOption)==null?void 0:Ae.wrapContent)||!1),M=qn(t,e),T=Gn(t),v=jn(t,new Map,M,T,s),w=si(t,v,s,b,e),y=r.computed(()=>v.totalItems.value<f?v.totalItems.value:f),{containerStyleObject:x}=In(t),S=Pn(t),{applyCommands:I}=S;I(p);const B=Mn(t),N=pi(),{applyColumnSorter:O,columnContext:_,updateColumnRenderContext:k}=B;O(v,N);const V=Nn(t,_),W=ai(t,e,w,s),P=ri(t,e,s,W),H=Dn(t,v,i),X=ti(t,P,H),J=ni(t,v,P,T,s,H,X,i),oe=ii(t,s,X,J),Me=oi(t,s,X,J),Ce=Fn(t,p,v,y,m,J,oe,Me),{getVisualData:ve}=Ce,L=di(t,w),{sidebarWidth:R}=L;b.value=ve(0,y.value+m-1);const A=Un(t,v,b,_,Ce,y,m,R,i,n),{onWheel:q,dataGridWidth:U,viewPortHeight:te,viewPortWidth:re}=A,de=Sn(t,_,g,re,V),{calculateColumnsSize:ce}=de,pe=r.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":h.value})),me=r.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":C.value,"fv-grid-wrap-content":F.value})),{renderGridHeader:Ie}=At(a,t,B,A),{renderHorizontalScrollbar:Ge}=Vn(t,g,A);function ye(){var $,K;te.value=(($=u.value)==null?void 0:$.clientHeight)||0,U.value=((K=g.value)==null?void 0:K.clientWidth)||0,ce()}r.onMounted(()=>{g.value&&(pn.useResizeObserver(g.value,ye),ce(),r.nextTick(()=>{g.value&&(U.value=g.value.clientWidth),u.value&&(re.value=u.value.clientWidth,te.value=u.value.clientHeight)}))});function Ue($){$&&(p.value=$,I(p),k(p.value),O(v,N),ce())}return r.watch(()=>t.columns,$=>{Ue($),z.canvasChanged.value++}),r.watch(re,()=>{g.value&&ce()}),()=>r.createVNode("div",{ref:o,class:pe.value,style:x.value,onWheel:q},[Ie(),r.createVNode("div",{ref:g,class:me.value,onMouseover:()=>{C.value=!0},onMouseleave:()=>{C.value=!1}},[Ge()])])}}),yi={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClosePopup:{type:Function,default:null}},vi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},bi=r.defineComponent({name:"FOverlay",props:vi,emits:["click"],setup(t,e){const n=r.ref(t.popupContentPosition),i=r.ref(t.host),o=r.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function l(d){e.emit("click"),d.preventDefault(),d.stopPropagation()}r.computed(()=>{const d=i.value;if(d){const c=d.getBoundingClientRect(),{left:p,top:f,height:s}=c;return{left:p,top:f+s}}return n.value});const a=r.computed(()=>({}));return()=>r.createVNode(r.Teleport,{to:"body"},{default:()=>{var d,c;return[r.createVNode("div",{class:"overlay-container",onClick:p=>l(p),style:o.value},[r.createVNode("div",{style:a.value},[(c=(d=e.slots).default)==null?void 0:c.call(d)])])]}})}});function Ci(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function wi(t){const e=document.createElement("div");e.style.display="contents";let n;const i=t.onClickCallback||(()=>{}),o=()=>{i(),n&&n.unmount()};return n=r.createApp({setup(){r.onUnmounted(()=>{document.body.removeChild(e)});const l=Ci(t);return()=>r.createVNode(bi,{"popup-content-position":t.popupPosition,host:t.host,onClick:o,backgroundColor:t.backgroundColor},{default:()=>[l&&l()]})}}),document.body.appendChild(e),n.mount(e),n}class Si{static show(e){return wi(e)}}const xi={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60},host:{type:Object,default:"body"},isMessager:{type:Boolean,default:!1}};class Ee{constructor(e,n){this.x=e,this.y=n}static getTransformInfo(e){const i=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const o=parseInt(i[4],10),l=parseInt(i[5],10);return{x:o,y:l}}return{x:0,y:0}}static fromEvent(e,n=null){if(this.isMouseEvent(e))return new Ee(e.clientX,e.clientY);if(n===null||e.changedTouches.length===1)return new Ee(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let i=0;i<e.changedTouches.length;i++)if(e.changedTouches[i].target===n)return new Ee(e.changedTouches[i].clientX,e.changedTouches[i].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const n=new Ee(0,0);if(window){const i=window.getComputedStyle(e);if(i){const o=parseInt(i.getPropertyValue("left"),10),l=parseInt(i.getPropertyValue("top"),10);n.x=isNaN(o)?0:o,n.y=isNaN(l)?0:l}return n}return null}static copy(e){return new Ee(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class it{constructor(e,n){this.width=e,this.height=n}static getCurrent(e){const n=new it(0,0);if(window){const i=window.getComputedStyle(e);return i&&(n.width=parseInt(i.getPropertyValue("width"),10),n.height=parseInt(i.getPropertyValue("height"),10)),n}return null}static copy(e){return new it(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Mi(t,e){const n=r.ref(),i=r.ref(),o=r.ref(),l=r.ref(),a=r.ref(),d=r.ref(),c=r.ref(),p=r.ref(),f=r.ref(),s=r.ref(),m=r.ref(),g=r.ref(t.resizeable),u=r.ref(),h=r.ref(t.draggable),b=r.ref(!1);function C(){const P=i.value||document.body,H=window.getComputedStyle(P);if(!H||!n.value)return;const X=Ee.getTransformInfo(n.value),J={};c.value&&(J.deltaL=n.value.offsetLeft-c.value.x,J.deltaT=n.value.offsetTop-c.value.y);const oe=H.getPropertyValue("position");J.width=P.clientWidth,J.height=P.clientHeight,J.pr=parseInt(H.getPropertyValue("padding-right"),10),J.pb=parseInt(H.getPropertyValue("padding-bottom"),10),J.position=H.getPropertyValue("position"),oe==="static"&&(P.style.position="relative"),J.translateX=X.x,J.translateY=X.y,s.value=J}function F(P){if(n.value){l.value=it.getCurrent(n.value),a.value=Ee.getCurrent(n.value),d.value=l.value?it.copy(l.value):null,c.value=a.value?Ee.copy(a.value):null,C();const H=P.target.getAttribute("type")||"";p.value={n:!!H.match(/n/),s:!!H.match(/s/),w:!!H.match(/w/),e:!!H.match(/e/)}}}function M(){var P,H,X,J;if(n.value){const oe=n.value;p.value&&((p.value.n||p.value.s)&&((P=d.value)!=null&&P.height)&&(oe.style.height=d.value.height+"px"),(p.value.w||p.value.e)&&((H=d.value)!=null&&H.width)&&(oe.style.width=d.value.width+"px"),c.value&&((X=c.value)!=null&&X.x&&(oe.style.left=c.value.x+"px"),(J=c.value)!=null&&J.y&&(oe.style.top=c.value.y+"px")))}}function T(){const P=t.minHeight?t.minHeight:1,H=t.minWidth?t.minWidth:1;d.value&&c.value&&p.value&&l.value&&(d.value.height<P&&(d.value.height=P,p.value.n&&a.value&&(c.value.y=a.value.y+(l.value.height-P))),d.value.width<H&&(d.value.width=H,p.value.w&&a.value&&(c.value.x=a.value.x+(l.value.width-H))),t.maxHeight&&d.value.height>t.maxHeight&&(d.value.height=t.maxHeight,a.value&&p.value.n&&(c.value.y=a.value.y+(l.value.height-t.maxHeight))),t.maxWidth&&d.value.width>t.maxWidth&&(d.value.width=t.maxWidth,p.value.w&&a.value&&(c.value.x=a.value.x+(l.value.width-t.maxWidth))))}function v(){if(i.value){const P=s.value;if(c.value&&d.value&&p.value&&l.value){const H=P.width-P.pr-P.deltaL-P.translateX-c.value.x,X=P.height-P.pb-P.deltaT-P.translateY-c.value.y;p.value.n&&c.value.y+P.translateY<0&&a.value&&(c.value.y=-P.translateY,d.value.height=l.value.height+a.value.y+P.translateY),p.value.w&&c.value.x+P.translateX<0&&a.value&&(c.value.x=-P.translateX,d.value.width=l.value.width+a.value.x+P.translateX),d.value.width>H&&(d.value.width=H),d.value.height>X&&(d.value.height=X)}}}function w(P){if(!o.value||!l.value||!a.value||!p.value)return;P.subtract(o.value);const H=P.x,X=P.y;p.value.n?(c.value.y=a.value.y+X,d.value.height=l.value.height-X):p.value.s&&(d.value.height=l.value.height+X),p.value.e?d.value.width=l.value.width+H:p.value.w&&(d.value.width=l.value.width-H,c.value.x=a.value.x+H),v(),T(),M()}function y(P){if(!f.value)return;const H=Ee.fromEvent(P);H&&w(H)}function x(){if(n.value){const{width:P,height:H,x:X,y:J}=n.value.getBoundingClientRect(),oe=Ee.getTransformInfo(n.value);return{size:{width:P,height:H},position:{x:X-oe.x,y:J-oe.y}}}return null}function S(P){if(n.value){const H=x();m.value=H}o.value=void 0,l.value=null,a.value=null,d.value=null,c.value=null,p.value=null,f.value=null,document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",S)}function I(){document.addEventListener("mousemove",y),document.addEventListener("mouseup",S)}function B(P){P instanceof MouseEvent&&P.button===2||h.value&&(document.body.click(),P.stopPropagation(),P.preventDefault(),o.value=Ee.fromEvent(P),f.value=P.target,F(P),I())}function N(P){return n.value=P,g.value&&r.createVNode(r.Fragment,null,[r.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:H=>B(H)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:H=>B(H)},null)])}function O(P=!0){document.body.click();const H=i.value||document.body,X=it.getCurrent(H),J=n.value;P&&J&&(u.value=x(),u.value.transform=J.style.transform),X&&J&&(d.value=X,d.value.height-=14,d.value.width-=14,J.style.height=d.value.height+"px",J.style.width=d.value.width+"px",J.style.left="7px",J.style.top="7px",J.style.transform="",m.value={size:d.value,position:{x:0,y:0}},h.value=!1,b.value=!0)}function _(){var P,H;if(document.body.click(),u.value){const X={width:u.value.size.width||0,height:u.value.size.height||0},J={x:(window.innerWidth-X.width)/2,y:(window.innerHeight-X.height)/2};(P=d.value)==null||P.set(X),(H=c.value)==null||H.set(J);const oe=n.value;oe.style.height=X.height+"px",oe.style.width=X.width+"px",oe.style.left=`${J.x}px`,oe.style.top=`${J.y}px`,oe.style.transform="",m.value={size:X,position:J},h.value=t.draggable,b.value=!1}}function k(){if(n.value){const P=it.getCurrent(n.value);if(P){const{width:H,height:X}=P;n.value.style.left=`${(window.innerWidth-H)/2}px`,n.value.style.top=`${(window.innerHeight-X)/2}px`,n.value.style.transform=""}}}function V(){const P=()=>{b.value?O(!1):k(),document.body.click()};return window.addEventListener("resize",P),()=>{window.removeEventListener("resize",P)}}const W=V();return{renderResizeBar:N,boundingElement:i,resizedEventParam:m,maximize:O,restore:_,allowDrag:h,isMaximized:b,unWindowResizeHandle:W,moveToCenter:k}}function Fi(t,e,n){const i=r.ref(),o=r.ref(t.draggable),l=r.ref(t.lockAxis),a=r.ref(),d=r.ref(),c=r.ref(!1),p=r.ref(new Ee(0,0)),f=r.ref(new Ee(0,0)),s=r.ref(new Ee(0,0)),m=r.ref(new Ee(0,0));r.watch(()=>n.value,y=>{a.value.style.cursor=y?"move":"default"});function g(y,x){if(x.tagName==="BUTTON")return!1;if(x===y)return!0;for(const S in x.children)if(Object.prototype.hasOwnProperty.call(x.children,S)&&g(y,x.children[S]))return!0;return!1}function u(){var I,B;let y=s.value.x+f.value.x,x=s.value.y+f.value.y;l.value==="x"?(y=((I=p.value)==null?void 0:I.x)||0,s.value.x=0):l.value==="y"&&(x=((B=p.value)==null?void 0:B.y)||0,s.value.y=0);const S=`translate3d(${Math.round(y)}px, ${Math.round(x)}px, 0px)`;i.value&&(i.value.style.transform=S),m.value.x=y,m.value.y=x}function h(){if(!d.value||!i.value)return null;const y=d.value.getBoundingClientRect(),x=i.value.getBoundingClientRect(),S={top:y.top<x.top,right:y.right>x.right,bottom:y.bottom>x.bottom,left:y.left<x.left};return S.top||(s.value.y-=x.top-y.top),S.bottom||(s.value.y-=x.bottom-y.bottom),S.right||(s.value.x-=x.right-y.right),S.left||(s.value.x-=x.left-y.left),u(),S}function b(y){y&&(p.value&&y.subtract(p.value),s.value.set(y),u(),h())}function C(y){c.value&&o.value&&(y.stopPropagation(),y.preventDefault(),b(Ee.fromEvent(y,a.value)))}function F(){var y;c.value&&(c.value=!1,f.value.add(s.value),s.value.reset(),(y=i.value)==null||y.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",F))}function M(){!c.value&&a.value&&(c.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",C),document.addEventListener("mouseup",F))}function T(){if(i.value){const y=Ee.getTransformInfo(i.value);f.value.set(y);return}f.value.reset()}function v(y){if(!n.value||y instanceof MouseEvent&&y.button===2)return;const x=y.target||y.srcElement;a.value!==void 0&&x&&!g(x,a.value)||o.value!==!1&&(document.body.click(),y.stopPropagation(),y.preventDefault(),p.value=Ee.fromEvent(y,i.value),T(),M())}function w(y,x,S){if(o.value&&x){if(y)a.value=y;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)a.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const I=x.querySelector(t.dragHandle);I&&(a.value=I)}}i.value=x,d.value=S,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",v)):o.value=!1}}return{registerDraggle:w,resetTranslate:T}}function Ht(t,e){if(t){const n=i=>{i.key.toLowerCase()===t.toLowerCase()&&e({event:i,key:t})};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}}function Ti(t,e){const n=r.ref(t.enableEsc);let i=null;return n.value?(i=Ht("Escape",o=>{e.emit("esc",{event:o.event,type:"esc"})}),{remove:i}):null}function _i(t,e){const n=r.ref(t.enableEnter);let i=null;return n.value?(i=Ht("Enter",o=>{e.emit("enter",{event:o.event,type:"enter"})}),{remove:i}):null}const dt=r.defineComponent({name:"FModal",props:xi,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(t,e){const n=r.ref(t.width||300),i=r.ref(t.height||200),o=r.ref(t.modelValue),l=r.ref(""),a=r.ref(t.class),d=r.ref(t.fitContent),c=r.ref(t.showHeader),p=r.ref(""),f=r.ref(t.showCloseButton),s=r.ref(t.showMaxButton),m=r.ref(!1),g=r.ref(t.dialogType),u=r.ref(t.src),h=r.ref(""),b=r.ref(t.showButtons),C=r.ref(t.title),F=r.ref(t.containment||null),M=r.ref();C.value==="错误提示"&&(C.value=Re.LocaleService.getLocaleValue("messageBox.errorTitle"));const T=r.ref(!1);function v(D,le){const _e=le?"accept":"cancel";Promise.resolve().then(()=>{var Ve;return(Ve=t.beforeClose)==null?void 0:Ve.call(t,{closeType:_e})}).then(Ve=>{Ve&&(o.value=!1,e.emit("update:modelValue",!1),le!=null&&e.emit(le?"accept":"cancel"),e.emit("closed",D))})}const w=[{name:"cancel",text:Re.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:D=>{v(D,!1)}},{name:"accept",text:Re.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:D=>{v(D,!0)}}],y=r.ref(t.buttons&&t.buttons.length?t.buttons:w),x=r.computed(()=>!!p.value),S=r.computed(()=>!!b.value&&!!y.value),I=r.ref(),B=r.ref(),N=r.ref(!1),{renderResizeBar:O,maximize:_,restore:k,boundingElement:V,resizedEventParam:W,allowDrag:P,unWindowResizeHandle:H,moveToCenter:X}=Mi(t),{registerDraggle:J}=Fi(t,e,P);function oe(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function Me(){const D=document.querySelectorAll(".farris-modal").length;(!D||D-1<=0)&&document.body.classList.remove("modal-open"),M.value&&M.value.classList.remove("show")}r.watch(()=>t.title,(D,le)=>{D!==le&&(C.value=D)}),r.watch(()=>t.modelValue,(D,le)=>{D!==le&&(o.value=D,o.value&&t.draggable&&r.nextTick(()=>{B.value&&!F.value&&(F.value=B.value.parentElement,V.value=F.value,J(I.value,B.value,V.value),X())}),D||(F.value&&(F.value=null),Me())),o.value?T.value=oe():(N.value=!1,P.value=t.draggable)}),r.watch(()=>t.showHeader,(D,le)=>{D!==le&&(c.value=D)}),r.watch(()=>t.showButtons,(D,le)=>{D!==le&&(b.value=D)}),r.watch(()=>W.value,(D,le)=>{const _e=D||{},Ve=le||{};JSON.stringify(_e)!==JSON.stringify(Ve)&&e.emit("resize",{newSize:D,oldSize:le,isMaximized:N.value})}),r.watch([()=>t.width,()=>t.height],(D,le)=>{(D[0]!==le[0]||D[1]!==le[1])&&(n.value=D[0]||500,i.value=D[1]||600)}),r.watch(()=>t.class,(D,le)=>{a.value=D});const Ce=r.computed(()=>(o.value&&document.body.classList.add("modal-open"),o.value)),ve=r.computed(()=>{var _e;const D={modal:!0,"farris-modal":!0,fade:!0};D["f-modal-fitContent"]=!!d.value,D.show=!!Ce.value;const le=(_e=t.maskClass)==null?void 0:_e.split(" ");return le==null||le.reduce((Ve,xe)=>(Ve[xe]=!0,Ve),D),D}),L=r.computed(()=>{var _e;const D={"modal-dialog":!0},le=(_e=a.value)==null?void 0:_e.split(" ");return le==null||le.reduce((Ve,xe)=>(Ve[xe]=!0,Ve),D),D}),R=()=>Z.isMobilePhone()&&!t.isMessager,A=r.computed(()=>{const D=document.documentElement.clientWidth,le=document.documentElement.clientHeight,_e=Math.min(n.value,D),Ve=d.value?"auto":`${Math.min(i.value,le-10)}px`,xe={position:"absolute",top:`${(window.innerHeight-parseInt(Ve==="auto"?"0":Ve))/2}px`,left:`${(window.innerWidth-_e)/2}px`,width:`${_e}px`,height:Ve};return R()&&(xe.top="0px",xe.left="0px",xe.width=`${window.innerWidth}px`,xe.height=`${window.innerHeight}px`),t.mask||(xe.pointerEvents="auto"),xe}),q=r.ref(Z.getMaxZIndex()||1050),U=r.computed(()=>{const D={display:"block",overflow:"hidden"};return t.mask||(D.pointerEvents="none",D.backgroundColor="transparent"),T.value&&(D.backgroundColor="transparent"),D.zIndex=q.value,D}),te=r.computed(()=>({"modal-content":!0,"modal-content-has-header":c.value,"is-mobile":R()})),re=r.computed(()=>{const D={display:c.value?"":"none"};return D["pointer-events"]=P.value?"auto":"none",D}),de=r.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:N.value})),ce=r.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe","f-utils-fill":!0}));function pe(){return{height:`${t.footerHeight||60}px`}}const me=r.computed(()=>{const D={textAlgin:h.value},le=pe();return Object.assign(D,le)});function Ie(D){if(D==null||D.stopPropagation(),N.value){N.value=!1,k();return}_(),N.value=!0}async function Ge(D,le){D.handle&&await D.handle(le,D)&&e.emit("closed",le)}function ye(D){D.width&&(n.value=D.width),D.height&&(i.value=D.height),D.buttons&&(y.value=D.buttons),D.title&&(C.value=D.title)}let Ue=null,Ae=null;r.onBeforeMount(()=>{T.value=oe()}),r.onMounted(()=>{B.value&&!F.value&&(F.value=B.value.parentElement,V.value=F.value,J(I.value,B.value,V.value)),Ce.value&&document.body.classList.add("modal-open"),Ue=Ti(t,e),Ae=_i(t,e)}),r.onUnmounted(()=>{H&&H(),Ue&&Ue.remove(),Ae&&Ae.remove()}),e.expose({modalElementRef:B,updateModalOptions:ye,close:v,maxDialog:Ie,isMaximized:N});function $(){return r.createVNode("ul",null,[m.value&&r.createVNode("li",{class:"f-btn-icon f-bare"},[r.createVNode("span",{class:"f-icon modal_minimize"},null)]),s.value&&r.createVNode("li",{onClick:Ie,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[r.createVNode("span",{class:de.value},null)]),f.value&&r.createVNode("li",{class:"f-btn-icon f-bare",onClick:D=>v(D,!1),style:"pointer-events: auto;"},[r.createVNode("span",{class:"f-icon modal_close"},null)])])}function K(){return r.createVNode("div",{class:"modal-footer",style:me.value},[y.value&&y.value.map(D=>{const le=r.ref(D.disabled);return r.createVNode("button",{name:D.name,type:"button",disabled:le.value,class:D.class+(D.iconClass?" btn-icontext":""),onClick:_e=>{Ge(D,_e)}},[!!D.iconClass&&r.createVNode("i",{class:D.iconClass},null),D.text])})])}function ee(){return r.createVNode("div",{ref:I,class:"modal-header",style:re.value},[e.slots.headerTemplate?e.slots.headerTemplate():r.createVNode("div",{class:"modal-title"},[x.value&&r.createVNode("span",{class:p.value,style:"margin-right: 8px"},null),r.createVNode("span",{class:"modal-title-label"},[C.value])]),r.createVNode("div",{class:"actions"},[$()])])}function ie(){return e.slots.footerTemplate?e.slots.footerTemplate():S.value&&K()}function he(D){if(D.stopPropagation(),t.allowClickMaskToClose){if(D.target!==M.value)return;v(D,!1)}}function Oe(){var D,le;return r.createVNode("div",{id:l.value,class:L.value,style:A.value,ref:B},[r.createVNode("div",{class:te.value},[c.value&&ee(),r.createVNode("div",{class:ce.value},[(le=(D=e.slots).default)==null?void 0:le.call(D),g.value==="iframe"&&r.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:u.value},null)]),ie()]),!d.value&&B.value&&!N.value&&O(B.value)])}function Ze(D){return D||"body"}return r.watchEffect(()=>{Ce.value&&(q.value=Z.getMaxZIndex()||1050)}),()=>r.createVNode(r.Teleport,{to:Ze(t.host)},{default:()=>[Ce.value&&r.createVNode(r.Transition,{name:"fade",appear:!0},{default:()=>[r.createVNode("div",{ref:M,class:ve.value,style:U.value,onClick:he},[Oe()])]})]})}});function Lt(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function ki(t){const e=document.createElement("div");e.style.display="contents";const n=r.createApp({setup(i,o){r.onUnmounted(()=>{document.body.removeChild(e)});const l=r.ref(),a=r.ref(t.class||""),d=r.ref(!!t.showButtons),c=r.ref(!!t.showHeader),p=r.ref(t.showCloseButton==null?!0:t.showCloseButton),f=r.ref(!0),s=r.ref(t.title||""),m=t.acceptCallback||(()=>{}),g=t.rejectCallback||(()=>{}),u=t.closedCallback||(M=>{}),h=t.resizeHandle||(M=>{}),b=t.stopMoveHandle||(M=>{}),C=Lt(t),F=M=>{f.value=!1,n.unmount(),u(M)};return r.onMounted(()=>{}),o.expose({modalRef:l}),()=>r.createVNode(dt,{ref:l,class:a.value,modelValue:f.value,"onUpdate:modelValue":M=>f.value=M,title:s.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":c.value,"show-buttons":d.value,"show-close-button":p.value,"show-max-button":!1,onAccept:m,onCancel:g,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:F,onResize:h,onStopMove:b},{default:()=>[C&&C(n)]})}});return document.body.appendChild(e),n.use(Re.LocaleService.i18n),n.mount(e),n}class Vi{constructor(e){ne(this,"appContext",null);ne(this,"modalRef",r.ref());ne(this,"activeModalIndex",r.ref(0));ne(this,"modalRefs",{});ne(this,"isUseEscCloseModal",r.ref(!1));ne(this,"activeModalInstance",r.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,n){const{width:i,height:o}={width:window.innerWidth,height:window.innerHeight};return i<e&&(e=i-14),o<n&&(n=o-14),{width:e,height:n}}static show(e){const n=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return ki(n)}close(e){var n,i;e?(i=e.value)==null||i.close():(n=this.getCurrentModal())==null||n.close()}open(e){const n=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const i=r.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),o=r.ref(!0),l=i.value.acceptCallback||(()=>{}),a=i.value.rejectCallback||(()=>{}),d=i.value.closedCallback||((v,w)=>{}),c=i.value.resizeHandle||(v=>{}),p=e.stopMoveHandle||(v=>{});let f;const s=Lt(i.value),m=v=>{var y;o.value=!1;const w=(y=v==null?void 0:v.target)==null?void 0:y.classList.contains("modal_close");d(v,this.isUseEscCloseModal.value?"esc":w?"icon":"button")},g=v=>{m(v),f&&r.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],r.render(null,n),f=null,this.modalRef.value=null,this.modalRefs){const w=Object.keys(this.modalRefs).map(y=>Number(y));w.length>0?this.activeModalIndex.value=Math.max(...w):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},u=v=>{var w;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((w=this.activeModalInstance.value)==null||w.close(v==null?void 0:v.event))},{width:h,height:b}=i.value,C=this.adaptToWindow(h||500,b||320);Object.assign(i.value,C);const F=()=>r.createVNode(dt,r.mergeProps({ref:this.modalRef,modelValue:o.value,"onUpdate:modelValue":v=>o.value=v},i.value,{isMessager:i.value.class&&i.value.class.indexOf("modal-message")>-1,onAccept:l,onCancel:a,onClosed:g,onResize:c,onEsc:u,onStopMove:p}),{default:()=>[s&&s(this.app)]});return f=(v=>{const w=r.h(F,v);return w.appContext=this.appContext,r.render(w,n),w})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:v=>{i.value={...i.value,...v},f&&r.render(r.cloneVNode(f,{...i}),n)},destroy:g,modalRef:this.activeModalInstance,close:()=>this.close()}}}const $t=Symbol("FModalService");dt.install=t=>{t.component(dt.name,dt);const e=new Vi(t);t.provide($t,e),t.provide("FModalService",e)};function Wt(t,e){function n(){const i=t.beforeOpen||t.beforeClickButton||null;let o=Promise.resolve(!0);if(i){const l=i(e.value);if(typeof l>"u")return o;typeof l=="boolean"?o=Promise.resolve(l):o=l}return o}return{judgeCanOpen:n}}function Ei(t,e,n,i,o){const l=r.ref(t.buttonBehavior),a=r.ref(t.popupOnInput),d=r.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:c}=Wt(t,o),p=r.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),f=r.inject($t,null),s=r.ref();async function m(h){if(await c()&&p.value){const b=!!e.slots.default;if(l.value==="Modal"){const C=t.modalOptions,F=f==null?void 0:f.open({...C,render:()=>e.slots.default&&e.slots.default()});s.value=F==null?void 0:F.modalRef}l.value==="Overlay"&&Si.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),b&&l.value==="Popup"&&i.togglePopup(!0),b&&a.value&&i.hidePopup(),e.emit("clickButton",{origin:h,value:t.modelValue})}}function g(h){e.emit("mouseEnterIcon",h)}function u(h){e.emit("mouseLeaveIcon",h)}return{buttonGroupClass:d,onClickButton:m,onMouseEnterButton:g,onMouseLeaveButton:u,modalRef:s}}function Ii(t,e,n,i,o,l){const a=r.ref(!1),d=r.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:c,hasClearClass:p}=l;function f(u){a.value=u,p.value=u}r.watch(o,()=>{f(!!o.value)});function s(u){const h=!t.readonly&&!t.disable&&t.editable,b=!t.editable;u.stopPropagation(),(h||b)&&(c(""),o.value="",f(!a.value),e.emit("clear"))}function m(u){if(d.value){if(!n.value){f(!1);return}!t.disable&&!t.readonly&&f(!0)}}function g(u){d.value&&f(!1)}return{enableClearButton:d,showClearButton:a,onClearValue:s,onMouseEnterTextBox:m,onMouseLeaveTextBox:g}}function Pi(t,e,n,i,o){const l=r.computed(()=>t.popupOnInput),a=r.computed(()=>t.popupOnFocus),{shouldPopupContent:d,closeAllPopover:c}=o,p=r.ref(!1),f=r.computed(()=>t.enableTitle?n.value:""),s=r.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),m=r.computed(()=>t.readonly||!t.editable),g=r.ref(!1),u=r.computed(()=>!t.disable&&g.value),h=r.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),b=r.computed(()=>({"input-group":!0,"f-state-disabled":t.disable,"f-state-editable":t.editable&&!t.disable&&!t.readonly,"f-state-readonly":t.readonly,"f-state-focus":u.value,"input-group--has-clear":t.enableClear&&p.value}));function C(B,N=!0){n.value=B,N&&(e.emit("change",B),e.emit("update:modelValue",B))}function F(B){d.value=!1,C(B,!0)}r.watch(()=>t.modelValue,B=>{n.value=B});function M(B){g.value=!1,e.emit("blur",B),B.stopPropagation()}function T(B){e.emit("click",B),c(),e.slots.default&&!t.disable&&!t.readonly&&t.popupOnClick&&o.togglePopup()}function v(B){!t.disable&&!t.readonly&&(g.value=!0,m.value||(e.emit("focus",B),a.value&&!d.value&&o.popup()))}function w(B){e.emit("input",B);const N=B.target.value;i.value=N,n.value!==N&&C(N,t.updateOn==="change"),l.value&&!d.value&&o.popup()}function y(B){B.target.tagName!=="INPUT"&&B.preventDefault(),B.stopPropagation()}function x(B){e.emit("keydown",B)}function S(B){B.key==="Enter"&&(l.value||a.value)&&o.hidePopup(),e.emit("keyup",B)}function I(B){const N=B.target.value;B.stopPropagation(),C(N)}return{hasFocusedTextBox:u,isTextBoxReadonly:m,textBoxClass:h,textBoxPlaceholder:s,textBoxTitle:f,inputGroupClass:b,hasClearClass:p,changeTextBoxValue:C,commitValue:F,onBlurTextBox:M,onClickTextBox:T,onFocusTextBox:v,onInput:w,onKeyDownTextBox:x,onKeyUpTextBox:S,onMouseDownTextBox:y,onTextBoxValueChange:I}}const ot="FarrisVue_PopoverInstancesKey";function Ni(t,e,n,i){const o=r.ref(),l=r.ref(!1),{judgeCanOpen:a}=Wt(t,i);r.watch(()=>o.value,(g,u)=>{window[ot]=window[ot]||new WeakMap,g?window[ot].set(n.value,g):window[ot].delete(n.value)});function d(){if(window[ot]){const g=window[ot];document.querySelectorAll(".f-button-edit,.v-popover").forEach(u=>{const h=g.get(u);h&&u!==n.value&&!n.value.closest(".popover-fitcontent")&&h.hide()})}}function c(){const g=o.value;g&&g.show(n.value)}async function p(g=!1){if(!!e.slots.default){if(!g&&!l.value&&!await a())return;l.value=!l.value,l.value&&(await r.nextTick(),c())}}async function f(g=!1){if(!!e.slots.default){if(!g&&!await a())return;l.value=!0,await r.nextTick(),c()}}function s(){l.value=!1}function m(){l.value=!0,r.nextTick(()=>{c()})}return{hidePopup:s,showPopup:m,popup:f,shouldPopupContent:l,togglePopup:p,popoverRef:o,closeAllPopover:d}}function Bi(t,e,n){const i=r.ref(),{isTextBoxReadonly:o,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:d,onBlurTextBox:c,onClickTextBox:p,onFocusTextBox:f,onInput:s,onKeyDownTextBox:m,onKeyUpTextBox:g,onMouseDownTextBox:u,onTextBoxValueChange:h}=n,b=r.ref(t.id),{uuid:C}=Z.useGuid(),F=r.computed(()=>({}));r.onMounted(()=>{var y,x;t.selectOnCreated&&((y=i.value)==null||y.select()),t.focusOnCreated&&((x=i.value)==null||x.focus({preventScroll:!0})),b.value||(b.value="button-edit_"+C(8)),b.value=b.value+"-textbox"});const M=r.ref(!1),T=y=>{y.preventDefault(),M.value=!0},v=y=>{y.preventDefault(),M.value=!1,s(y)};function w(y){M.value||s(y)}return()=>r.createVNode("input",{id:t.id?t.id+"-textbox":void 0,ref:i,name:"input-group-value",autocomplete:t.autoComplete?"on":"off",class:l.value,style:F.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:a.value,readonly:o.value,tabindex:t.tabIndex,title:d.value,type:t.inputType,value:e.value,onBlur:c,onChange:h,onClick:p,onFocus:f,onInput:w,onKeydown:m,onKeyup:g,onMousedown:u,onCompositionend:v,onCompositionstart:T},null)}function Oi(t,e,n){const i=r.ref(t.separator),o=r.computed(()=>t.readonly||t.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:d,onClickTextBox:c,textBoxPlaceholder:p}=n,f=r.computed(()=>e.value?e.value.split(i.value).map(u=>({name:u,selectable:!0})):[]);function s(u){l(u.map(h=>h.name).join(i.value),!0)}r.watch(()=>t.separator,u=>{i.value=u});const m=r.ref(!t.disable&&!t.readonly);r.watch([()=>t.disable,()=>t.readonly],([u,h],[b,C])=>{m.value=!u&&!h});function g(u){c(u)}return()=>r.createVNode(vn,{tabindex:t.tabIndex,onFocus:a,onBlur:d,id:`${t.id}-tag-editor`,class:"form-control",placeholder:p.value,data:f.value,showClose:!o.value,showInput:!0,disable:o.value,onChange:s,onClick:g},null)}function ji(t,e,n,i){const{buttonGroupClass:o,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:d}=n,{enableClearButton:c,showClearButton:p,onClearValue:f}=i,s=r.ref(),m=je.debounce(u=>{l(u)},t.buttonBehavior==="Modal"?0:200),g=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>r.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:o.value},[c.value&&r.withDirectives(r.createVNode("span",{class:"input-group-text input-group-clear",onClick:f,onMousedown:g},[r.createVNode("i",{class:"f-icon modal_close"},null)]),[[r.vShow,p.value]]),e.slots.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",onClick:m,onMouseenter:a,onMouseleave:d},[e.slots.buttonContent()]):t.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:s,onClick:u=>m(u),onMouseenter:a,onMouseleave:d},null):null]),buttonHandleElement:s}}function Ri(t,e,n){const i=r.ref(t.popupMinWidth),{hidePopup:o,popoverRef:l}=n,a=()=>{e.emit("shown")};return()=>r.createVNode(hn,{id:`${t.id}-popover`,ref:l,placement:t.placement,host:t.popupHost,"keep-width-with-reference":t.keepWidthWithReference,fitContent:!0,"right-boundary":t.popupRightBoundary,minWidth:i.value,class:t.popupClass,offsetX:t.popupOffsetX,onHidden:o,onShown:a,beforeClose:t.beforeClosePopup,limitContentBySpace:t.limitContentBySpace},{default:()=>{var d,c;return[(c=(d=e.slots).default)==null?void 0:c.call(d)]}})}const Ai=r.defineComponent({name:"FButtonEdit",props:yi,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(t,e){const n=r.ref(),i=r.ref(t.customClass),o=r.ref(t.modelValue),l=Ni(t,e,n,o),{shouldPopupContent:a,hidePopup:d,showPopup:c,togglePopup:p}=l,f=Ei(t,e,n,l,o),s=r.ref(""),m=Pi(t,e,o,s,l),{hasFocusedTextBox:g,commitValue:u,inputGroupClass:h}=m,b=Ii(t,e,o,g,s,m),{onMouseEnterTextBox:C,onMouseLeaveTextBox:F}=b,M=r.ref(!1),T=r.computed(()=>{const V={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return i.value&&i.value.split(" ").reduce((W,P)=>(W[P]=!0,W),V),V}),v=r.computed(()=>({overflow:t.wrapText?"hidden":""})),w=r.computed(()=>({}));function y(){if(!t.multiSelect||t.inputType!=="tag"||!n.value)return 0;let V=0;const W=Array.from(n.value.querySelectorAll(".farris-tag-item"));return W&&W.length&&(V=W.map(P=>P.offsetTop).filter(P=>P>20).length),V}const x=r.ref(y());r.onUpdated(()=>{x.value=y()});function S(){return t.multiSelect&&t.inputType==="tag"?()=>r.createVNode(r.Fragment,null,[Oi(t,o,m)(),!!x.value&&r.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[r.createVNode("span",{class:"multi--more-text"},[r.createTextVNode("+"),x.value])])]):Bi(t,o,m)}let I=S();r.watch([()=>t.multiSelect,()=>t.inputType],()=>{I=S()});const{renderButtonGroup:B,buttonHandleElement:N}=ji(t,e,f,b),O=Ri(t,e,l),_=r.ref(a.value),k={displayText:s,commitValue:u,elementRef:n,hidePopup:d,showPopup:c,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:p,openDialog:()=>{N.value&&t.buttonBehavior==="Modal"&&N.value.click()},getModal:()=>{var V;return t.buttonBehavior==="Modal"?(V=f.modalRef.value)==null?void 0:V.value:null},getTextbox:()=>{var V;return(V=n.value)==null?void 0:V.querySelector("input")},forceClosePopup:()=>{_.value=!1,M.value=!0,a.value=!1}};return r.onMounted(()=>{n.value.componentInstance=k,window.onresize=()=>{document.body.click()}}),r.onBeforeUnmount(()=>{var V;window.onresize=null,(V=window[ot])==null||V.delete(n.value)}),e.expose(k),r.watch(()=>a.value,async(V,W)=>{if(M.value){_.value=V,M.value=!1;return}if(!V&&t.beforeClosePopup&&typeof t.beforeClosePopup=="function"){try{const P=await t.beforeClosePopup();_.value=!P,(!P||t.readonly)&&(a.value=!0)}catch(P){console.error("Error in beforeClosePopup:",P),_.value=W,a.value=W}return}_.value=V}),()=>{var V,W;return r.createVNode(r.Fragment,null,[r.createVNode("div",r.mergeProps(e.attrs,{ref:n,class:T.value,id:t.id?t.id:void 0,style:v.value}),[r.createVNode("div",{id:t.id?`${t.id}-input-group`:void 0,class:h.value,style:w.value,onMouseenter:C,onMouseleave:F},[(W=(V=e.slots).precontent)==null?void 0:W.call(V),I(),B()])]),_.value&&O()])}}}),ft=new Map([["appearance",ze.resolveAppearance],["column","columnOption"],["command","commandOption"]]),zt=new Map([]),Hi="root-viewmodel";class Li{constructor(e,n){ne(this,"formSchemaUtils");ne(this,"controlCreatorUtils");ne(this,"designViewModelUtils");ne(this,"useFormCommand");ne(this,"formStateMachineUtils");this.resolver=e,this.designerHostService=n,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.useFormCommand=this.designerHostService.useFormCommand,this.formStateMachineUtils=this.designerHostService.formStateMachineUtils}createComponent(e){const n=this.createComponentRefNode(e),i=this.createComponentNode(e),o=this.createViewModeNode(e),l=this.formSchemaUtils.getFormSchema();return l.module.viewmodels.push(o),l.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(n,e,o)}wrapContainerSectionForComponent(e,n,i){var c,p,f,s,m,g,u,h,b,C,F;const o=(p=(c=n==null?void 0:n.parentComponentInstance)==null?void 0:c.schema)==null?void 0:p.type,l=(m=(s=(f=n==null?void 0:n.parentComponentInstance)==null?void 0:f.schema)==null?void 0:s.appearance)==null?void 0:m.class,a=(u=(g=this.formSchemaUtils.getFormSchema())==null?void 0:g.module)==null?void 0:u.templateId;if(o===z.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const d=[z.DgControl["content-container"].type,z.DgControl["response-layout-item"].type,z.DgControl["splitter-pane"].type,z.DgControl.drawer.type];if(o&&d.includes(o)){const M=this.resolver.getSchemaByType("section",{parentComponentInstance:n.parentComponentInstance,mainTitle:n.componentName},this.designerHostService);if(M&&M.contents&&M.contents.length){const T=M.contents[0];return T.contents=[e],this.appendAddDeleteBtnToParentContainer(T,n,i),M}}return this.appendAddDeleteBtnToParentContainer((h=n==null?void 0:n.parentComponentInstance)==null?void 0:h.schema,n,i),o===z.DgControl["tab-page"].type&&(b=n.parentComponentInstance)!=null&&b.parent&&(C=n.parentComponentInstance)!=null&&C.parent.updateToolbarItems&&((F=n.parentComponentInstance)==null||F.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,n,i){const o=e.type,l=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(n.bindTo==="/"||n.componentType!=="data-grid"&&n.componentType!=="form")return;const a=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),d=z.DgControl["tab-page"].type===o?"tab-toolbar-item":"section-toolbar-item",c=this.resolver.getSchemaByType(d),p=[Object.assign({},c,{id:`button-add-${n.componentId}`,type:d,text:"新增",disabled:a.find(f=>f.id==="canAddDetail")?{type:"StateMachine",status:!1,field:"canAddDetail"}:!1,onClick:`root-viewModel.${i.id}.${l}AddItem1`}),Object.assign({},c,{id:`button-remove-${n.componentId}`,type:d,text:"删除",disabled:a.find(f=>f.id==="canRemoveDetail")?{type:"StateMachine",status:!1,field:"canRemoveDetail"}:!1,onClick:`root-viewModel.${i.id}.${l}RemoveItem1`})];e.toolbar||(e.toolbar={id:`${e.id}_toolbar`,type:z.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar",buttons:[]}),e.toolbar.id||(e.toolbar.id=`${e.id}_toolbar`),e.toolbar.type||(e.toolbar.type=z.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar"),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(p),this.appendAddAndDeleteCommands(i),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var f;const n=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=Z.useGuid().guid(),o=Z.useGuid().guid(),l=this.resolveCommandController(),a={id:i,code:`${n}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},d={id:o,code:`${n}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:l,shortcut:{},extensions:[]};(f=this.designerHostService.designerContext)!=null&&f.appendIdentifyForNewCommand&&(this.designerHostService.designerContext.appendIdentifyForNewCommand(a),this.designerHostService.designerContext.appendIdentifyForNewCommand(d)),e.commands.push(a,d),this.formSchemaUtils.getFormSchema().module.webcmds.find(s=>s.id===l).refedHandlers.push({host:i,handler:"AddItem"},{host:o,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,n=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=e.find(l=>n.includes(l.id));if(i)return i.id;const o="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:o,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),o}createComponentRefNode(e){const n=this.resolver.getSchemaByType("component-ref");return Object.assign(n,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),n}createComponentNode(e){const n=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(e);return Object.assign(n,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getDataGridComponentClass(e)},contents:i}),n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Hi,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var l,a,d,c;const{templateId:n}=this.formSchemaUtils.getFormSchema().module,i=(l=e.parentComponentInstance)==null?void 0:l.schema,o=(a=i==null?void 0:i.appearance)==null?void 0:a.class;if(n==="double-list-in-tab-template"&&(i==null?void 0:i.type)==="tab-page"){const p=((d=e.parentComponentInstance)==null?void 0:d.parent)&&((c=e.parentComponentInstance)==null?void 0:c.parent.schema);if((p==null?void 0:p.type)==="tabs"&&(p==null?void 0:p.fill)===!0)return"f-struct-wrapper f-utils-fill-flex-column"}return["double-list-template","tree-list-template"].includes(n)&&(o!=null&&o.includes("f-page-content-main"))?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){var m,g,u,h,b;const n=(m=e.parentComponentInstance)==null?void 0:m.schema,i=(u=(g=n==null?void 0:n.schema)==null?void 0:g.appearance)==null?void 0:u.class,{templateId:o}=this.formSchemaUtils.getFormSchema().module;let l,a=!1;if(o==="double-list-in-tab-template"&&(n==null?void 0:n.type)==="tab-page"){const C=((h=e.parentComponentInstance)==null?void 0:h.parent)&&((b=e.parentComponentInstance)==null?void 0:b.parent.schema);(C==null?void 0:C.type)==="tabs"&&(C==null?void 0:C.fill)===!0&&(a=!0)}if(a){const C=this.resolver.getSchemaByType("section");Object.assign(C,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),l=C}else if((o==="double-list-template"||o==="tree-list-template")&&(i!=null&&i.includes("f-page-content-main"))){const C=this.resolver.getSchemaByType("section");Object.assign(C,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),l=C}else{const C=this.resolver.getSchemaByType("content-container");Object.assign(C,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),l=C}const d=this.resolver.getSchemaByType("data-grid"),c=[],p=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),f=e.editable&&p.length>0&&p.findIndex(C=>C.id==="editable")>-1;Object.assign(d,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:c,fieldEditable:f,dataSource:e.dataSource||"",editable:f?{type:"StateMachine",status:!0,field:"editable"}:!1,pagination:{enable:!e.editable}}),l.contents=[d];const{selectedFields:s}=e;return s==null||s.forEach(C=>{if(C.$type===Z.FormSchemaEntityField$Type.ComplexField)return;const F=je.cloneDeep(C),M=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",F,"",f);M&&c.push(M)}),[l]}assembleViewModelFields(e){const n=[],{selectedFields:i}=e;return i==null||i.forEach(o=>{if(o.$type===Z.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=o.type.name;(a===Z.FormSchemaEntityFieldTypeName.Enum||a===Z.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:o.id,fieldName:o.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),n}}function mt(t,e,n,i){var l,a,d,c,p,f,s;const o=n.parentComponentInstance;if(o&&i){const m=Math.random().toString(36).slice(2,6),g={componentId:`data-grid-${m}`,componentName:((l=n.bindingSourceContext)==null?void 0:l.entityTitle)||((d=(a=n.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:d.name)||`表格-${m}`,componentType:"data-grid",parentContainerId:o.schema.id,parentComponentInstance:o,editable:!0,bindTo:((c=n.bindingSourceContext)==null?void 0:c.bindTo)||"",dataSource:(f=(p=n.bindingSourceContext)==null?void 0:p.bindingEntity)==null?void 0:f.label,selectedFields:(s=n.bindingSourceContext)==null?void 0:s.bindingEntityFields};return new Li(t,i).createComponent(g)}else return e}function qt(t,e,n){return e}const Gt={$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"]},wt={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}};ze.createPropsResolver(wt,Gt,ft,mt);const $i=ze.getPropsResolverGenerator(wt,Gt,ft,mt),Wi=new Map([["appearance",ze.resolveAppearance]]);function zi(t,e,n){return e}const qi={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:[]}}}}}},Gi={$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"]},Ut={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]},virtualized:{type:Boolean,default:!1},rowOption:{type:Object},columns:{type:Array,default:[{field:"name",title:"",dataType:"string",width:"100%"}]},checkBeforeRemoveItem:{type:Function,default:null},selectedItemClass:{Type:[String,Function],default:"draggable-item--text-truncate",validator:t=>typeof t=="string"||typeof t=="function"}};ze.createPropsResolver(Ut,Gi,Wi,zi,qi);const Ui={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:t=>typeof t=="string"||typeof t=="function"},itemStyle:{type:[String,Function],default:"",validator:t=>typeof t=="string"||typeof t=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function Di(t,e){function n(l){const a=[];let d=l.nextNode();for(;d;)a.push(d),d=l.nextNode();return a}function i(l,a){const d=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return n(d).map(s=>({textNode:s,text:(s.textContent||"").toLocaleLowerCase()})).map(({textNode:s,text:m})=>{const g=[];let u=0;for(;u<m.length;){const h=m.indexOf(a,u);if(h===-1)break;g.push(h),u=h+a.length}return g.map(h=>{const b=new Range;return b.setStart(s,h),b.setEnd(s,h+a.length),b})}).flat()}function o(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=i(e.value,l.toLocaleLowerCase()),d=new Highlight(...a);CSS.highlights.set("search-result",d)}return{search:o}}function Dt(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.size),s=r.ref(t.textField),m=r.ref(t.titleField),g=r.ref(t.disableField),u=r.computed(()=>{var S,I;return((S=t.selection)==null?void 0:S.multiSelect)&&((I=t.selection)==null?void 0:I.showCheckbox)}),{onMouseenterItem:h,onMouseoverItem:b,onMouseoutItem:C}=l,{getKey:F,listViewItemClass:M,listViewItemStyle:T,onCheckItem:v,onClickItem:w}=a,y=r.computed(()=>{const S={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return t.itemClass?S:{margin:f.value==="small"?"0.25rem 0":"8px 0",...S}});function x(S,I,B){return S.checked=d.findIndexInSelectedItems(S)>-1,r.createVNode("li",{class:M(S,I),id:F(S,I),key:F(S,I),style:T(S,I),onClick:N=>w(S,I,N),onMouseenter:N=>h(N,S,I),onMouseover:N=>b(N,S,I),onMouseout:N=>C(N,S,I)},[u.value&&r.createVNode("div",{class:"f-list-select",onClick:N=>N.stopPropagation()},[r.createVNode(bt.FCheckbox,{id:"list-"+F(S,I),customClass:"listview-checkbox float-left",disabled:S[g.value],checked:S.checked,"onUpdate:checked":N=>S.checked=N,onChange:N=>{v(S,I,!N.checked)}},null)]),r.createVNode("div",{class:"f-list-content"},[r.createVNode("div",{class:t.itemContentClass,style:y.value,title:S.raw[m.value]||S.raw[s.value]},[S.raw[s.value]])])])}return{renderItem:x}}function Yi(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.multiSelect),s=r.ref(t.disableField),m=r.ref(t.textField),{onMouseenterItem:g,onMouseoverItem:u,onMouseoutItem:h}=l,{getKey:b,listViewItemClass:C,listViewItemStyle:F,onCheckItem:M,onClickItem:T,updateSelectedItems:v}=a;function w(x,S,I){return t.contentTemplate?r.createVNode(r.Fragment,null,[t.contentTemplate({item:x.raw,index:S,selectedItem:I})]):e.slots.content?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.content({item:x.raw,index:S,selectedItem:I})]):r.createVNode("div",{style:"margin: 10px 0;"},[x.raw[m.value||"name"]])}function y(x,S,I){return r.createVNode("li",{class:C(x,S),id:b(x,S),key:b(x,S),style:F(x,S),onClick:B=>T(x,S,B),onMouseenter:B=>g(B,x,S),onMouseover:B=>u(B,x,S),onMouseout:B=>h(B,x,S)},[f.value&&r.createVNode("div",{class:"f-list-select",onClick:B=>B.stopPropagation()},[r.createVNode(bt.FCheckbox,{id:"list-"+b(x,S),customClass:"listview-checkbox",disabled:x[s.value],checked:x.checked,"onUpdate:checked":B=>x.checked=B,onChange:B=>{M(x,S,!B.checked),v()}},null)]),r.createVNode("div",{class:"f-list-content"},[w(x,S,I)])])}return{renderItem:y}}function Xi(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.multiSelect),s=r.ref(t.disableField),m=r.ref(t.textField),{onMouseenterItem:g,onMouseoverItem:u,onMouseoutItem:h}=l,{getKey:b,listViewItemClass:C,onCheckItem:F,onClickItem:M}=a,{dragstart:T,dragenter:v,dragover:w,dragend:y}=i,{removeItem:x}=c,S=r.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function I(k,V=""){const W=k.target;W.title=W.scrollWidth>W.clientWidth?V:""}function B(k){return r.createVNode("div",{style:S.value,onMouseenter:V=>I(V,k.raw[m.value||"name"])},[k.raw[m.value||"name"]])}function N(){return e.slots.itemContent?e.slots.itemContent:B}const O=N();function _(k,V,W){return r.createVNode("li",{class:C(k,V),id:b(k,V),key:b(k,V),onClick:P=>M(k,V,P),onMouseenter:P=>g(P,k,V),onMouseover:P=>u(P,k,V),onMouseout:P=>h(P,k,V),draggable:"true",onDragstart:P=>T(P,k,V),onDragenter:P=>v(P,V),onDragend:P=>y(P,k),onDragover:P=>w(P)},[f.value&&r.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[r.createVNode(bt.FCheckbox,{id:"list-"+b(k,V),customClass:"listview-checkbox",disabled:k[s.value]||!k.checked,checked:k.checked,"onUpdate:checked":P=>k.checked=P,onChange:P=>F(k,V,!P.checked)},null)]),r.createVNode("div",{class:"f-list-content"},[O(k)]),r.createVNode("div",{class:"f-list-remove",onClick:P=>{P.stopPropagation(),x(V)}},[r.createVNode("div",{class:"f-list-remove-icon"},[r.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),r.createVNode("div",{class:"f-list-handle"},[r.createVNode("div",null,[r.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:_}}function Zi(t,e,n,i,o,l,a,d,c,p){var b;const f=r.ref(((b=t.group)==null?void 0:b.groupFields)||[]),{collpaseGroupIconClass:s}=o,{toggleGroupRow:m}=p;function g(C,F){F.collapse=!F.collapse,n.value=m(F.collapse?"collapse":"expand",F,n.value)}function u(C,F,M){return e.slots.group?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.group({item:C.raw,index:F,selectedItem:M})]):r.createVNode("div",{class:"f-navlookup-recentHeader",onClick:T=>g(T,C)},[r.createVNode("div",{class:"fv-grid-group-row-icon"},[r.createVNode("span",{class:s(C)},null)]),r.createVNode("div",{class:"f-navlookup-recommandLabel"},[C.raw[f.value[C.layer]]])])}function h(C,F,M){return C.layer>-1&&u(C,F,M)}return{renderItem:h}}function Ji(t,e,n,i){const{dataView:o}=n,{updateSelectedItems:l}=i;function a(d){if(d>-1&&d<o.value.length){if(t!=null&&t.checkBeforeRemoveItem&&!t.checkBeforeRemoveItem(o.value[d]))return;const c=o.value.splice(d,1);l(),e.emit("removeItem",c[0])}}return{removeItem:a}}function Qi(t,e,n,i,o,l,a,d,c,p){const f=r.ref(t.view),s=r.ref(t.view==="CardView"),m=r.ref({}),g=Ji(t,e,i,c),u=r.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":s.value,"flex-wrap":s.value})),h=r.computed(()=>!!n.value&&n.value.length>0),b=r.computed(()=>n.value.length===0);r.computed(()=>b.value&&!e.slots.empty);function C(){return f.value==="SingleView"?Dt:f.value==="DraggableView"?Xi:(f.value==="ContentView"||f.value==="CardView")&&(t.contentTemplate||e.slots.content)?Yi:Dt}const F=C(),{renderItem:M}=F(t,e,n,p,o,l,c,a,g,d),{renderItem:T}=Zi(t,e,n,p,o,l,c,a,g,d),v=[M,T];function w(){return n.value.filter(S=>S.visible!==!1).map((S,I)=>v[S.type](S,I,m))}function y(){return r.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[r.createVNode("p",{class:"f-empty-title"},[t.emptyTemplate?t.emptyTemplate():e.slots.empty?e.slots.empty():Re.LocaleService.getLocaleValue("listView.emptyMessage")])])}function x(){return r.createVNode("ul",{class:u.value,style:"list-style: none;"},[h.value&&w(),b.value&&y()])}return{renderListArea:x}}function Ki(t,e,n){function i(){return e.slots.header&&r.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:i}}function Yt(t,e,n){const i=r.ref(t.headerClass),o=r.ref(t.placeholder),l=r.ref(""),a=r.computed(()=>!l.value),d=r.computed(()=>!!l.value);function c(m){l.value=""}r.watch(l,m=>{t.enableHighlightSearch&&n.search(m),e.emit("afterSearch",m)});const p=r.computed(()=>{const m={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((u,h)=>(u[h]=!0,u),m),m});function f(m){}function s(){return r.createVNode("div",{class:"f-list-view-header",onClick:r.withModifiers(()=>f,["prevent","stop"])},[r.createVNode("div",{class:p.value},[r.createVNode("div",{class:"farris-input-wrap"},[r.createVNode("div",{class:"f-cmp-inputgroup"},[r.createVNode("div",{class:"input-group f-state-editable"},[r.withDirectives(r.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":m=>l.value=m,name:"input-group-value",type:"text",placeholder:o.value,autocomplete:"off"},null),[[r.vModelText,l.value]]),r.createVNode("div",{class:"input-group-append"},[d.value&&r.createVNode("span",{class:"input-group-text input-group-clear",onClick:m=>c()},[r.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),a.value&&r.createVNode("span",{class:"input-group-text"},[r.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:s}}function eo(){const t=r.ref(""),e=r.ref(-1),n=r.ref(""),i=r.ref(-1),o=r.ref(!1);function l(s,m,g){i.value=g}function a(s,m,g){o.value||(i.value=g)}function d(s,m,g){i.value=-1}function c(){o.value=!0}function p(){o.value=!1}function f(){e.value=-1,t.value=""}return{activeIndex:e,focusedItemId:n,hoverIndex:i,clearActiveItem:f,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:d,resumeHover:p,suspendHover:c}}function to(t,e,n,i){const o=r.ref(t.idField),{dataView:l}=n,a=r.ref(-1),d=r.ref(!1),{activeIndex:c,focusedItemId:p,hoverIndex:f,resumeHover:s,suspendHover:m}=i;let g,u=0,h=0;function b(w,y){const x=w-u,S=y-h;g.style.left=parseInt(g.style.left)+x+"px",g.style.top=parseInt(g.style.top)+S+"px",u=w,h=y}function C(w){const{left:y,top:x}=w.getBoundingClientRect(),S=w.cloneNode(!0);return S.className=S.className+" f-listview-drag-moving",S.style.cssText=`
2
2
  position:absolute;
3
- left:${h}px;
4
- top:${document.documentElement.scrollTop?b+document.documentElement.scrollTop:b}px;
3
+ left:${y}px;
4
+ top:${document.documentElement.scrollTop?x+document.documentElement.scrollTop:x}px;
5
5
  z-index: 999999;
6
6
  pointer-events: none;
7
7
  border-radius: 10px;
@@ -12,12 +12,19 @@
12
12
  text-align: initial;
13
13
  width:${getComputedStyle(w).width};
14
14
  height:${getComputedStyle(w).height};
15
- `,M.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",M.children[0].children[0].style.cssText=`
15
+ `,S.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",S.children[0].children[0].style.cssText=`
16
16
  margin: 10px 0px 10px 14px;
17
17
  overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
18
- `,M.children[1].style.cssText="width: 30px;padding: 0 14px 0 0",M.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(M),M}function C(w,h,b){if(w.stopPropagation(),f(),h){if(g=S(w.target),w.dataTransfer){const M=new Image;M.src="",w.dataTransfer.setDragImage(M,0,0)}p=w.pageX,y=w.pageY,setTimeout(()=>{a.value=b,s.value=!0,h.moving=!0})}}function F(w,h){if(w.preventDefault(),a.value!==h){const b=r.value[a.value],M=r.value;M.splice(a.value,1),M.splice(h,0,b),a.value=h,T(w.pageX,w.pageY)}}function V(w){w.preventDefault(),w.dataTransfer&&(w.dataTransfer.dropEffect="move"),T(w.pageX,w.pageY)}function v(w,h){h&&(h.moving=!1,g&&(document.body.removeChild(g),g=null)),r.value.forEach((b,M)=>{b.__fv_index__=M}),s.value=!1,d(),u.value=h.raw.__fv_index__,c.value=h.raw.__fv_index__,m.value=h.raw[o.value],e.emit("change",r.value),e.emit("activeChange",[h.raw])}return{dragstart:C,dragenter:F,dragover:V,dragend:v,isDragging:s}}function Qi(n,e,t,i,o,r){const a=l.ref(n.idField),s=l.ref(n.disableField),c=l.ref(n.draggable);l.ref(n.itemClass);const m=l.ref(n.selection.multiSelect??!1),u=l.ref(n.selection.multiSelectMode),{isDragging:d}=i,{activeIndex:f,focusedItemId:g,hoverIndex:p}=o,{clearSelection:y,getSelectedItems:T,toggleSelectItem:S,currentSelectedDataId:C}=r,F=l.ref(T()),V=I=>F.value.length===0?!1:F.value.some(_=>{let x="";return _.data?x=_.data[a.value]:x=_[a.value],x===I});function v(){F.value=T()}function w(I,_){return I.raw[a.value]!=null?I.raw[a.value]:""}function h(I,_){const x={"f-list-view-group-item":!0,"f-list-view-draggable-item":c.value,"f-un-click":!I.checked,"f-un-select":!!I.raw[s.value],"f-listview-active":m.value&&V(w(I))||!m.value&&I.raw[a.value]===C.value,"f-listview-hover":!d.value&&_===p.value,moving:!!I.moving};if(typeof n.itemClass=="string")return X.getCustomClass(x,n.itemClass);if(typeof n.itemClass=="function"){const G=n.itemClass(I);return X.getCustomClass(x,G)}return x}function b(I,_){const x={};if(typeof n.itemStyle=="string")return X.getCustomStyle(x,n.itemStyle);if(typeof n.itemStyle=="function"){const G=n.itemStyle(I);return X.getCustomStyle(x,G)}return x}const M=l.computed(()=>!m.value);function B(I,_,x){I.checked=x,!I.raw[s.value]&&(M.value&&(g.value=I.raw[a.value]),S(I))}const P=l.computed(()=>m.value&&u.value==="OnCheckClearByClick"),E=l.computed(()=>!m.value||m.value&&(u.value==="OnCheckAndClick"||u.value==="OnClick"));function N(I,_,x){if(I.raw[s.value]){x==null||x.preventDefault(),x==null||x.stopPropagation();return}C.value=I.raw[a.value],g.value=I.raw[a.value],f.value=_,P.value&&y(),E.value&&(S(I),v()),e.emit("clickItem",{data:F.value,index:_,dataItem:I.raw}),e.emit("activeChange",F.value)}return{getKey:w,selectedItems:F,listViewItemClass:h,listViewItemStyle:b,updateSelectedItems:v,onCheckItem:B,onClickItem:N}}const Yt=l.defineComponent({name:"FListView",props:Wi,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(n,e){const t=l.ref(),i=l.ref(!0),o=l.ref(!1),r=l.ref([]),a=0,s=l.ref(n.columns),c=ke.useFilter(n,e),m=ke.useIdentify(n),u=ke.useHierarchy(n),d=ke.useGroupData(n,m),f=ke.useDataView(n,new Map,c,u,m),g=ke.useSelection(n,f,m,r,e),p=zi(n,t),y=ke.usePagination(n,f),T=l.computed(()=>f.dataView.value.length),S=ke.useRow(n,e,g,m),C=ke.useEdit(n,e,m,S,r),F=ke.useVisualDataBound(n),V=ke.useVisualDataCell(n,{},F),v=ke.useVisualDataRow(n,f,C,u,m,F,V),w=ke.useVisualGroupRow(n,m,V,v),h=ke.useVisualSummaryRow(n,m,V,v),b=ke.useVisualData(n,s,f,T,a,v,w,h),{getVisualData:M}=b;r.value=M(0,T.value+a-1);const B=l.computed(()=>{const D={"f-list-view":!0,"f-list-view-multiple":n.multiSelect};return n.size!=="default"&&(D[`${n.size}-item`]=!0),X.getCustomClass(D,n.customClass)}),P=l.computed(()=>!!e.slots.footer||i.value);function E(){return n.header==="SearchBar"?qt:n.header==="ContentHeader"?Xi:qt}const N=E(),{renderHeader:I}=N(n,e,p),_=Zi(),x=Ji(n,e,f,_),G=Qi(n,e,r,x,_,g),{renderListArea:k}=Yi(n,e,r,f,d,_,g,b,G,x);function $(D){p.search(D)}function Y(D){D&&(f.load(D),r.value=M(0,T.value+a-1))}function Q(){g.clearSelection(),_.clearActiveItem()}function oe(){return G.selectedItems.value}function Ve(){return G.selectedItems.value.map(D=>D[m.idField.value])}function Se(D){g.selectedValues.value=D,G.updateSelectedItems()}function xe(){return g.currentSelectedDataId.value}function H(D){S.activeRowById(D)}function O(D){const ye=m.idField.value,be=r.value.find(Ze=>Ze.raw[ye]===D),Re=r.value.findIndex(Ze=>Ze.raw[ye]===D);be&&Re>-1&&G.onClickItem(be,Re)}function R(D){const ye=m.idField.value,be=r.value.find(Re=>Re.raw[ye]===D);be&&S.changeRow(be)}function W(D){y.updatePagination(D)}function U(D){return r.value.filter(ye=>D.includes(ye.raw[n.idField]))}e.expose({search:$,updateDataSource:Y,clearSelection:Q,getSelections:oe,updateSelectionByIds:Se,getSelectionIds:Ve,activeRowById:H,getCurrentRowId:xe,clickRowItemById:O,updatePagination:W,getVisibleDataByIds:U,selectRowById:R});function ee(D){n.multiSelect&&(D.preventDefault(),D.stopPropagation())}l.watch(()=>n.selectionValues,(D,ye)=>{D!==ye&&Se(D)});const se=ke.useSidebar(n,g),{sidebarWidth:ce,showSidebarCheckBox:fe}=se,pe=ke.useColumn(n,e),{applyColumnSorter:me,columnContext:Pe,updateColumnRenderContext:We}=pe,Ce=ke.useVirtualScroll(n,f,r,Pe,b,T,a,ce,C),{shouldRenderPagination:A}=y,{renderDataGridPagination:J}=ke.getPagination(n,e,f,Ce,y,g);return()=>l.createVNode("div",{class:B.value,onClick:ee},[I(),l.createVNode("div",{ref:t,class:"f-list-view-content",onMouseover:()=>{o.value=!0},onMouseleave:()=>{o.value=!1}},[k()]),P.value&&l.createVNode("div",{class:"f-list-view-footer"},[n.footerTemplate?n.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),Ki=l.defineComponent({name:"FTransfer",props:ji,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(n,e){const t=l.ref(n.identifyField),i=l.ref(n.displayType),o=l.ref(!1),r=l.ref(n.dataSource),a=l.ref(n.textField),s=l.ref(n.selections||[]),c=l.computed(()=>s.value.map(N=>N[t.value])),m=new Map,u=l.ref(),d=l.ref(),f=l.ref();let g;function p(){const N=new Map,I=n.selectionValues||[];I.length&&I.reduce((x,G)=>(x.set(G,!0),x),N);const _=n.selections||[];_.length&&(N.clear(),_.reduce((x,G)=>(x.set(G[t.value],!0),x),N)),s.value.length||(s.value=r.value.filter(x=>N.has(x[t.value])).map(x=>Object.assign({},x))),r.value.forEach(x=>{const G=x[t.value],k=N.has(G);x.checked=k,k&&m.set(G,x)})}p(),l.watch(()=>n.selections,N=>{s.value=N,p()});const y=l.computed(()=>i.value==="List"),T=l.computed(()=>i.value==="Tree");function S(N){const I=ze.cloneDeep(s.value);s.value=N.map(_=>Object.assign({},_)),e.emit("change",s.value,I)}function C(N){e.emit("selectItem",N)}function F(N){e.emit("unSelectItem",N)}function V(){return l.createVNode(Yt,{class:"f-utils-fill",data:r.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:c.value,onSelectionUpdate:S},null)}function v(){return l.createVNode(vn,{ref:f,data:r.value,columns:n.columns,virtualized:n.virtualized,rowOption:n.rowOption,textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:c.value,onSelectionUpdate:S,onSelectItem:C,onUnSelectItem:F},null)}function w(){return l.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[l.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[l.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[y.value&&V(),T.value&&v()])])])}function h(N){const I=N[t.value];if(I!==null||I!==void 0){s.value=s.value.filter(x=>x[t.value]!==I);const _=m.get(I);_&&(_.checked=!1,m.delete(I)),e.emit("change",s.value),e.emit("removeItem",N)}}l.watch(s,N=>{u.value.updateDataSource(ze.cloneDeep(N));const I=g==null?void 0:g[t.value],_=N.find(x=>I===x[t.value]);_?u.value.activeRowById(_[t.value]):(g=null,u.value.activeRowById(""))});function b(N){const I=new Map;s.value.reduce((_,x)=>(_.set(x[t.value],x),_),I),s.value=N.map(_=>I.get(_[t.value])),e.emit("change",s.value)}function M(N){g=N[0],e.emit("activeChange",N)}function B(){var N;return l.createVNode(Yt,{ref:u,columns:n.columns,style:"flex:1",data:s.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:a.value,itemClass:n.selectedItemClass,onChange:b,onRemoveItem:h,onActiveChange:M,checkBeforeRemoveItem:n.checkBeforeRemoveItem},{itemContent:(N=e.slots)!=null&&N.text?I=>{var _;return((_=e.slots)==null?void 0:_.text)&&e.slots.text(I)}:null})}function P(){return l.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[l.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[l.createVNode("div",{class:"selection-pane-title"},[l.createVNode("span",{class:"selection-title"},[Ae.LocaleService.getLocaleValue("transfer.selectedStart")]),l.createVNode("span",{class:"selection-count"},[s.value&&s.value.length]),l.createVNode("span",{class:"selection-item-title"},[Ae.LocaleService.getLocaleValue("transfer.selectedEnd")])]),l.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[B()])])])}const E=l.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":o.value}));return l.onMounted(()=>{d.value&&d.value.parentElement&&getComputedStyle(d.value.parentElement).display==="flex"&&(o.value=!0)}),()=>l.createVNode("div",{ref:d,class:E.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:s.value}):w(),P()])}}),eo=l.defineComponent({name:"FGridFieldEditor",props:St,emits:["change"],setup(n,e){const t=l.ref(n.viewModelId),i=l.inject("designViewModelUtils"),o=l.inject("useFormSchema"),r=l.inject("schemaService"),a=l.inject("controlCreatorUtils"),s=l.inject("designerContext");let c=n.gridData.columns;const{fieldEditable:m}=n.gridData,u=l.ref(`共 ${(c||[]).length} 项`),d=l.ref([]),f=l.ref([]);let g=[];function p(I,_=!0){if(s.checkCanDeleteControl){const x=g.find(G=>{var k;return((k=G.data)==null?void 0:k.id)===I.id});return s.checkCanDeleteControl(x,_)}return!0}const y={customRowStatus:I=>{const _=I.raw;_.type&&_.type.fields&&_.type.fields.length>0&&(I.disabled=!0),p(_,!1)||(I.disabled=!0)}};function T(){if(d.value=[],!c||c.length===0)return[];const I="[绑定字段不存在,待移除]";c.forEach(_=>{if(_.binding&&_.binding.field){const x=g.find(G=>G.data.id===_.binding.field);x?x.data.$type===X.FormSchemaEntityField$Type.ComplexField?d.value.push(Object.assign({isInValidBinding:!0},x.data,{name:x.data.name+I})):d.value.push(Object.assign({},x.data)):d.value.push({id:_.binding.field,name:_.title+I,label:_.field,bindingField:null,isInValidBinding:!0})}}),u.value=`共 ${d.value.length} 项`}function S(I,_=[]){return I&&I.forEach(x=>{if(_.push(x),x.children&&S(x.children,_),s.appendIdentifyForNewControl){const G=c.find(k=>{var $;return(($=k.binding)==null?void 0:$.field)===x.data.id});(!G||G[s.identifyForNewControl])&&s.appendIdentifyForNewControl(x)}}),_}function C(){if(o.designerMode==="PC_RTC"&&r.rtcAddedTreeNodes.value){const I=r.getTableInfoByViewModelId(t.value);if(I!=null&&I.id){const _=r.rtcAddedTreeNodes.value[I.id];_!=null&&_.length&&(f.value=f.value.concat(_))}}}function F(){f.value=i.getAllFields2TreeByVMId(t.value),C(),g=S(f.value)}function V(I,_,x){if(o.getComponents().find(k=>{let $=o.getControlsInCmpWidthBinding(k.viewModel,I);if($=$.filter(Y=>{var oe;if(Y.id===x)return!1;const Q=_.type==="visible"?Y[_.type]:(oe=Y.editor)==null?void 0:oe[_.type];if(Q&&Q.type==="Expression"&&Q.expressionId===_.id)return!0}),$.length)return!0}))return!0}function v(I){I.map(_=>{var G;const x=c.find(k=>{var $;return(($=k.binding)==null?void 0:$.field)===_});if(x&&o.getExpressions().length){const k=o.getExpressions(),$=k.findIndex(Y=>Y.target===_);$>-1&&((G=k[$].rules)==null||G.map(Y=>{var Q;switch(Y.type){case"visible":case"readonly":case"required":{const oe=Y.type==="visible"?x[Y.type]:(Q=x.editor)==null?void 0:Q[Y.type];oe&&oe.type==="Expression"&&oe.expressionId===Y.id&&(V(_,Y,x.id)||(Y.needDelete=!0));break}default:V(_,Y,x.id)||(Y.needDelete=!0)}}),k[$].rules=k[$].rules.filter(Y=>!Y.needDelete))}})}function w(){const I=i.getDgViewModel(t.value),_=[],x=[],G=d.value;G.forEach($=>{const Y=c==null?void 0:c.find(Q=>{if(Q.binding&&Q.binding.field)return Q.binding.field===$.id});if(Y)_.push(Y);else{const Q=a.setGridFieldProperty(n.gridType,$.data,null,m);I.addField($),_.push(Q)}x.push($.id)});const k=I.fields.filter($=>!x.includes($.id));if(k&&k.length>0){const $=k.map(Y=>Y.id);I.removeField($),v($)}G.length!==d.value.length&&(d.value=G),u.value=`共 ${_.length} 项`,e.emit("change",_)}const h={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{w()},rejectCallback:()=>{}};function b(){return n.getLatestGridData?c=n.getLatestGridData().columns:c=n.gridData.columns,F(),T(),Promise.resolve(!0)}function M(I){d.value=[...d.value,I.raw]}function B(I){const _=d.value.findIndex(x=>x.id===I.raw.id);_>-1&&(d.value=[...d.value.slice(0,_),...d.value.slice(_+1)])}function P(I){const _=d.value.findIndex(x=>x.id===I.id);_>-1&&(d.value=[...d.value.slice(0,_),...d.value.slice(_+1)])}function E(I){const _=I[0].__fv_index__,x=d.value.findIndex(k=>k.id===I[0].id),G=d.value.find(k=>k.id===I[0].id);d.value.splice(x,1),d.value.splice(_,0,G)}const N=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(I,_)=>I.data+` [${_.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return l.onMounted(()=>{F()}),()=>l.createVNode(Hi,{"button-behavior":"Modal","modal-options":h,modelValue:u.value,"onUpdate:modelValue":I=>u.value=I,editable:!1,beforeOpen:b},{default:()=>[l.createVNode("div",{class:"f-utils-absolute-all"},[l.createVNode(Ki,{selections:d.value,"data-source":f.value,rowOption:y,class:"mx-2",columns:N,displayType:"Tree",onRemoveItem:P,onSelectItem:M,onUnSelectItem:B,onActiveChange:E,checkBeforeRemoveItem:p},{text:I=>l.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[I.data.name.data,l.createTextVNode(" ["),I.data.bindingField.data,l.createTextVNode("]")])})])]})}}),to={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},enableGroup:{description:"",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string"}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},no={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},formatterType:{description:"启用列格式化",type:"string",default:""},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string",default:"default"}},required:["id","type"]},Mt={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},io=Ge.createPropsResolver(Mt,to,zt,Gt),oo=Ge.createPropsResolver(Mt,no,zt,Gt);function lo(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function i(c,m=""){return{path:m+c.code,field:c.id,fullPath:c.code}}function o(c,m=""){const u=e.getViewModelById(c);return u?u.states.map(d=>i(d,m)):[]}function r(c){const m=e.getRootViewModelId(),u=o(c);if(c===m)return u;const d=o(m,"root-component.");return[...u,...d]}function a(c){return c.binding&&c.binding.path||c.id||""}function s(){return t&&t.getRenderStates()||[]}return{getVariables:r,getControlName:a,getStateMachines:s}}class Xt{constructor(e){ie(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);ie(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});ie(this,"getExpressionConverter",(e,t)=>({convertFrom:(i,o,r,a)=>{const s=r.getExpressionRuleValue(e,t||o);return s&&s.value||""},convertTo:(i,o,r,a,s)=>{var c;if(o==="dataPicking"&&(r!=null&&r.target)){const m=`${r.target}_dataPicking`;((c=r.rules)==null?void 0:c.some(d=>d.id===m&&d.value))?i.dictPickingExpressionId=m:delete i.dictPickingExpressionId}a.updateExpression(r)}}));this.formSchemaService=e}getExpressionRule(e,t){const i=this.formSchemaService.getExpressions();if(!i)return"";const o=i.find(a=>a.target===e);if(!o)return"";const r=o.rules.find(a=>a.type===t);return r||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),i=this.formSchemaService.getViewModelById(t);if(!i||!i.states||i.states.length===0)return[];const o=[];return i.states.filter(r=>r.category==="remote").forEach(r=>{o.push({key:r.code,name:r.name,description:r.name,category:r.category})}),o}createTreeNode(e,t,i="label"){return{id:e.id,name:e.name,bindingPath:e[i],parents:t,type:"field"}}buildEntityFieldsTreeData(e=null,t){const i=[];return e==null||e.forEach(o=>{var s;const r=this.createTreeNode(o,t);let a=[];(s=o.type)!=null&&s.fields&&(a=this.buildEntityFieldsTreeData(o.type.fields,[...t,o.label])),i.push({data:r,children:a,expanded:!0})}),i}buildChildEntityTreeData(e=null,t){const i=[];return e==null||e.forEach(o=>{var c,m;const r=this.createTreeNode(o,t);r.type="entity";const a=this.buildEntityFieldsTreeData((c=o.type)==null?void 0:c.fields,[...t,o.label]),s=this.buildChildEntityTreeData((m=o.type)==null?void 0:m.entities,[...t,o.label]);s!=null&&s.length&&(a==null||a.push(...s)),i.push({data:r,children:a||[],expanded:!0})}),i}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const t=e[0];if(!(t!=null&&t.type))return[];const i=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),o=this.buildChildEntityTreeData(t.type.entities,[t.code]);return o!=null&&o.length&&(i==null||i.push(...o)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"code"),children:i||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,t,i){const o=i==="Field"?e.binding.field:e.id,r=this.getExpressionRule(o,t),a=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(t)&&r?r.message:"",...a};return r.messageType!=null&&(s.messageType=r.messageType),s}buildRule(e,t,i,o){const{expression:r,message:a,messageType:s}=t,c={id:`${e}_${i}`,type:i,value:r};return(i==="validate"||i==="dataPicking"||i==="required")&&(c.message=a),i==="dataPicking"&&(c.messageType=s),i==="validate"&&o&&(c.elementId=o),c}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,i,o){const r=t==="Field"?e.binding.field:e.id,a=this.buildRule(r,i,o,e.type==="form-group"?e.id:"");let c=this.getExpressionData().find(u=>u.targetType===t&&u.target===r);const m=u=>u.value.trim()==="";if(c){const u=c.rules.find(d=>d.id===a.id);if(u)m(a)?c.rules=c.rules.filter(d=>d.id!==a.id):(Object.assign(u,a),o==="validate"&&e.type==="form-group"&&(u.elementId=e.id));else{if(m(a))return null;c.rules=c.rules||[],c.rules.push(a)}}else{if(m(a))return null;c={target:`${r}`,rules:[a],targetType:t}}return c}getExpressionEditorOptions(e,t,i,o){return i.reduce((r,a)=>{var c,m;const s=t==="Field"?(c=e==null?void 0:e.binding)==null?void 0:c.field:e.id;return r[a]={hide:t==="Field"?!!((m=e==null?void 0:e.binding)!=null&&m.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(s),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,t),onSubmitModal:u=>{const d=this.updateExpression(e,t,u,a);if(o){const f=this.buildRule(s,u,a);o(f)}return d}}},r},{})}getExpressionInfo(e,t,i){const o=t==="Field"?e.binding.field:e.id,r=this.getExpressionRule(o,i),a={value:r&&r.value,targetId:o,targetType:t,expressionType:i};return r&&r.message&&(a.message=r.message),a}getExpressionConfig(e,t,i=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,t,i,o)}}}getExpressionOptions(e,t,i){const o=this.getExpressionInfo(e,t,i);return{dialogTitle:`${this.expressionNames[i]}编辑器`,singleExpand:!1,showMessage:i==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,i,t),expressionInfo:o}}}class Zt{constructor(e,t){ie(this,"componentId");ie(this,"viewModelId");ie(this,"eventsEditorUtils");ie(this,"formSchemaUtils");ie(this,"formMetadataConverter");ie(this,"designViewModelUtils");ie(this,"designViewModelField");ie(this,"controlCreatorUtils");ie(this,"designerHostService");ie(this,"designerContext");ie(this,"schemaService",null);ie(this,"metadataService",null);ie(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService,this.designerContext=t.designerContext}getFormDesignerInstance(){var e,t;return(t=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:t.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var i;const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(r=>r.id===t)}e.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:j.DgControl[e.type]&&j.DgControl[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},i){const o={title:"外观",description:"Appearance"},r={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in t)r[a]=Object.assign(r[a]||{},t[a]);return{...o,properties:{...r},setPropertyRelates(a,s){if(a){switch(a&&a.propertyID){case"class":case"style":{j.canvasChanged.value++;break}}i&&i(a,e,s)}}}}getPropertyEditorParams(e,t=[],i="visible",o={},r={},a=""){const{getVariables:s,getControlName:c,getStateMachines:m}=lo(this.designerHostService),u=this.getRealTargetType(e),d=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],f={type:"property-editor",propertyTypes:d};return d.map(g=>{switch(g){case"Const":Object.assign(f,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":f.expressionConfig=this.getExpressionOptions(e,u,a||i);break;case"StateMachine":f.stateMachines=m();break;case"Variable":Object.assign(f,{controlName:c(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),parentComponentId:this.componentId==="root-component"?"":"root-component",onBeforeOpenVariables:p=>{p.value=s(this.viewModelId)}},r),this.designerContext.designerMode==="PC_RTC"&&(f.newVariablePrefix="ext_"+f.newVariablePrefix);break}}),f}getVisibleProperty(e,t=""){var r;let i=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?i=["Const","Expression"]:t==="form-group"&&!((r=e.binding)!=null&&r.field)&&(i=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,i,"visible")}}}getBehaviorConfig(e,t="",i={},o){const r={title:"行为",description:""},a=this.getVisibleProperty(e,t);for(const c in i)a[c]=Object.assign(a[c]||{},i[c]);const s=this;return{...r,properties:{...a},setPropertyRelates(c,m){if(c){switch(c.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(e,c);break}o&&o(c,m)}}}}afterMutilEditorChanged(e,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,e)}updateElementByParentContainer(e,t){const i=t&&t.parent&&t.parent.schema;if(!i)return;const o=i.contents.findIndex(a=>a.id===e),r=ze.cloneDeep(i.contents[o]);i.contents.splice(o,1),i.contents.splice(o,0,r),j.refreshCanvas()}addNewVariableToViewModel(e,t){const i=e.propertyValue;if(!(i&&typeof i=="object")||!(i.type==="Variable"&&i.isNewVariable))return;const a={id:i.field,category:"locale",code:i.fullPath,name:i.fullPath,type:i.newVariableType||"String",isRtcVariable:this.designerContext.designerMode==="PC_RTC"?!0:void 0};delete i.newVariableType,delete i.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById("root-viewmodel").states.push(a)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:r,expressionInfo:a}=t,{targetId:s,targetType:c,expressionType:m,value:u,message:d}=a,f=this.formSchemaUtils.getModule();f.expressions=f.expressions||[];const{expressions:g}=f;let p=g.find(T=>T.target===s);p||(p={target:s,rules:[],targetType:c},g.push(p));const y=p.rules.find(T=>T.type===m);if(y)y.value=u,y.message=d;else{const T={id:r,type:m,value:u,message:d};p.rules.push(T)}delete t.expressionInfo}clearExpression(e,t){const i=e.propertyValue;if(i&&i.type==="Expression")return;const r=e.propertyID,a=this.formSchemaUtils.getExpressions(),s=t.binding?t.binding.field:t.id,c=a.find(m=>m.target===s);!c||!c.rules||(c.rules=c.rules.filter(m=>m.type!==r))}getExpressionOptions(e,t,i){return new Xt(this.formSchemaUtils).getExpressionOptions(e,t,i)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item","drawer-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:i=>{var o;((o=i.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(i)}}},t}}const Jt=[{key:"none",value:"无"},{key:"cellNumber",value:"手机号"},{key:"tel",value:"座机号/传真号"},{key:"telOrCell",value:"手机号/座机号/传真号"},{key:"postCode",value:"邮编"},{key:"email",value:"电子邮箱"},{key:"idCode",value:"身份证号"},{key:"carCode",value:"车牌号"},{key:"subjectCode",value:"10位数字会计科目代码"},{key:"custom",value:"自定义"}];function ro(n){switch(n){case"none":return"";case"cellNumber":return"^1[0-9]{10}$";case"tel":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$";case"telOrCell":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$|^1[0-9]{10}$";case"postCode":return"^[1-9]\\d{5}(?!\\d)$";case"workCode":return"^\\d{8}$";case"email":return"^[A-Za-z\\d]+([-_.][A-Za-z\\d]+)*@([A-Za-z\\d]+[-.])+[A-Za-z]{2,5}$";case"idCode":return"^[1-9]\\d{5}[1-9]\\d{3}((0[1-9])|(1[0-2]))(0[1-9]|([1|2][0-9])|3[0-1])((\\d{4})|\\d{3}X)$";case"carCode":return"^([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][·\\s]?[A-HJ-NP-Z0-9]{4,5}[挂学警港澳]?|粤[Z港澳][·\\s]?[港澳][0-9A-HJ-NP-Z]{4}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?([DF][0-9A-HJ-NP-Z][0-9]{4}|[0-9]{5}[DF])[挂港澳]?|[使领][0-9]{3}[·\\s]?[0-9]{3}|临[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?[0-9A-Z]{4,5}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z]?[·\\s]?警[0-9A-Z]{4}|[军海空][A-Z][·\\s]?[0-9]{4,5}|WJ(?:[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]|\\d{2})[·\\s]?[0-9A-Z]{4,5})$";case"carCodeNew":return"^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF])|([DF][A-HJ-NP-Z0-9][0-9]{4}))$";case"subjectCode":return"^\\d{10}$"}return""}function ao(n){var e;return"请输入正确的"+((e=Jt.find(t=>t.key===n))==null?void 0:e.value)}const so={convertTo:(n,e,t,i)=>{n.editor.formatValidation||(n.editor.formatValidation={type:"none"}),n.editor.formatValidation.type=t,n.editor.formatValidation.expression=ro(t),n.editor.formatValidation.message=ao(t)},convertFrom:(n,e,t)=>n.editor.formatValidation?e==="type"?n.editor.formatValidation[e]||"none":n.editor.formatValidation[e]:"none"},Qt={convertTo:(n,e,t,i)=>{n.editor.formatValidation||(n.editor.formatValidation={type:"none"}),n.editor.formatValidation[e]=t},convertFrom:(n,e,t)=>n.editor.formatValidation?n.editor.formatValidation[e]:n.editor[e]};class co extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getPropertyConfig(e,t){return super.getPropertyConfig(e,t),this.propertyConfig.categories.formatValidation=this.getFormatValidation(e),this.propertyConfig}getEditorProperties(e){var i,o;let t;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const r=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=r==null?void 0:r.schemaField)!=null&&o.type&&(t=r.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:t,needValid:!0}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getGridFieldEdtiorProperties(e){var i,o;let t;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const r=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=r==null?void 0:r.schemaField)!=null&&o.type&&(t=r.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:t}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getFormatValidation(e){var i,o,r,a;const t={title:"输入格式校验",description:"输入校验",hide:!((i=e.binding)!=null&&i.field),properties:{type:{title:"格式类型",type:"enum",description:"格式类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:Jt},refreshPanelAfterChanged:!0,$converter:so,parentPropertyID:"formatValidation"}}};return(o=e.editor.formatValidation)!=null&&o.type&&((r=e.editor.formatValidation)==null?void 0:r.type)!=="none"&&(t.properties.message={title:"输入错误提示",type:"string",description:"输入错误提示",$converter:Qt,parentPropertyID:"formatValidation"}),((a=e.editor.formatValidation)==null?void 0:a.type)==="custom"&&(t.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:Qt,parentPropertyID:"formatValidation"}),t}}const ot=class ot{static getEditorTypesByMDataType(e,t=!1,i=""){if(t)return[{key:j.DgControl["language-textbox"].type,value:j.DgControl["language-textbox"].name}];let o=ot.fieldControlTypeMapping[e];if(i==="data-grid-column"&&(o!=null&&o.length)){const r=[j.DgControl["check-group"].type,j.DgControl["radio-group"].type,j.DgControl.image.type,j.DgControl["rich-text-editor"].type];o=o.filter(a=>!r.includes(a.key))}return o}static getAllInputTypes(){const e=[];for(const t in ot.fieldControlTypeMapping)ot.fieldControlTypeMapping[t].forEach(i=>{e.find(o=>o.key===i.key&&o.value===i.value)||e.push({key:i.key,value:i.value})});return e}static mappingDomPropAndSchemaProp(e,t){var r;const i=(r=e.editor)==null?void 0:r.type,o=[];return(e.type===j.DgControl["data-grid-column"].type||e.type===j.DgControl["tree-grid-column"].type)&&t&&t.categoryId&&t.categoryId.indexOf("gridFieldEditor")<0&&o.push({domField:"title",schemaField:"name"}),o.push({domField:"label",schemaField:"name"}),o.push({domField:"editor.required",schemaField:"require"}),o.push({domField:"editor.readonly",schemaField:"readonly"}),(i===j.DgControl["input-group"].type||i===j.DgControl.textarea.type||i===j.DgControl["number-spinner"].type)&&o.push({domField:"editor.maxLength",schemaField:"type.length"}),i===j.DgControl["number-spinner"].type&&o.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===j.DgControl["data-grid-column"].type||e.type===j.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.precision",schemaField:"type.precision"}),(i===j.DgControl["combo-list"].type||i===j.DgControl["radio-group"].type)&&o.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===j.DgControl["data-grid-column"].type||e.type===j.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.data",schemaField:"type.enumValues"}),i===j.DgControl["date-picker"].type&&(o.push({domField:"editor.displayFormat",schemaField:"editor.format"}),o.push({domField:"editor.fieldType",schemaField:"type.name"})),i===j.DgControl["number-spinner"].type&&(o.push({domField:"editor.max",schemaField:"editor.maxValue"}),o.push({domField:"editor.min",schemaField:"editor.minValue"})),i===j.DgControl.lookup.type&&(o.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),o.push({domField:"editor.valueField",schemaField:"editor.valueField"}),o.push({domField:"editor.textField",schemaField:"editor.textField"}),o.push({domField:"editor.displayType",schemaField:"editor.displayType"}),o.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),o.push({domField:"editor.helpId",schemaField:"editor.helpId"})),o.push({domField:"path",schemaField:"bindingPath"}),o.push({domField:"binding.path",schemaField:"bindingField"}),o.push({domField:"binding.fullPath",schemaField:"path"}),(e.type===j.DgControl["data-grid-column"].type||e.type===j.DgControl["tree-grid-column"].type)&&o.push({domField:"field",schemaField:"bindingPath"}),o}};ie(ot,"fieldControlTypeMapping",{String:[{key:j.DgControl["input-group"].type,value:j.DgControl["input-group"].name},{key:j.DgControl.lookup.type,value:j.DgControl.lookup.name},{key:j.DgControl.image.type,value:j.DgControl.image.name},{key:j.DgControl["date-picker"].type,value:j.DgControl["date-picker"].name},{key:j.DgControl.switch.type,value:j.DgControl.switch.name},{key:j.DgControl["check-box"].type,value:j.DgControl["check-box"].name},{key:j.DgControl["check-group"].type,value:j.DgControl["check-group"].name},{key:j.DgControl["radio-group"].type,value:j.DgControl["radio-group"].name},{key:j.DgControl["combo-list"].type,value:j.DgControl["combo-list"].name},{key:j.DgControl.textarea.type,value:j.DgControl.textarea.name},{key:j.DgControl["time-picker"].type,value:j.DgControl["time-picker"].name}],Text:[{key:j.DgControl.textarea.type,value:j.DgControl.textarea.name},{key:j.DgControl.lookup.type,value:j.DgControl.lookup.name},{key:j.DgControl.image.type,value:j.DgControl.image.name},{key:j.DgControl["rich-text-editor"].type,value:j.DgControl["rich-text-editor"].name}],Decimal:[{key:j.DgControl["number-spinner"].type,value:j.DgControl["number-spinner"].name}],Integer:[{key:j.DgControl["number-spinner"].type,value:j.DgControl["number-spinner"].name}],Number:[{key:j.DgControl["number-spinner"].type,value:j.DgControl["number-spinner"].name},{key:j.DgControl.switch.type,value:j.DgControl.switch.name},{key:j.DgControl["check-box"].type,value:j.DgControl["check-box"].name}],BigNumber:[{key:j.DgControl["number-spinner"].type,value:j.DgControl["number-spinner"].name}],Date:[{key:j.DgControl["date-picker"].type,value:j.DgControl["date-picker"].name}],DateTime:[{key:j.DgControl["date-picker"].type,value:j.DgControl["date-picker"].name}],Boolean:[{key:j.DgControl.switch.type,value:j.DgControl.switch.name},{key:j.DgControl["check-box"].type,value:j.DgControl["check-box"].name}],Enum:[{key:j.DgControl["combo-list"].type,value:j.DgControl["combo-list"].name},{key:j.DgControl["radio-group"].type,value:j.DgControl["radio-group"].name}],Object:[{key:j.DgControl.lookup.type,value:j.DgControl.lookup.name},{key:j.DgControl["combo-list"].type,value:j.DgControl["combo-list"].name},{key:j.DgControl["radio-group"].type,value:j.DgControl["radio-group"].name}]});let rt=ot;var it=(n=>(n.Form="Form",n.Variable="Variable",n))(it||{});class uo{constructor(){ie(this,"label","");ie(this,"id","");ie(this,"columnInSM",12);ie(this,"columnInMD",6);ie(this,"columnInLG",3);ie(this,"columnInEL",2);ie(this,"displayWidthInSM",1);ie(this,"displayWidthInMD",1);ie(this,"displayWidthInLG",1);ie(this,"displayWidthInEL",1);ie(this,"displayColumnCountAtBreakPoint","md");ie(this,"tagRow",0);ie(this,"showTopBorder",0);ie(this,"group",1);ie(this,"isSupportedClass",!0);ie(this,"fieldSetId","")}}function fo(n){let e,t;const i=new Map;let o=[];function r(u,d){const g=u.split(" ").filter(C=>C.startsWith("col-"));if(g.length===0){d.isSupportedClass=!1;return}let p=g.find(C=>/^col-([1-9]|10|11|12)$/.test(C)),y=g.find(C=>/^col-md-([1-9]|10|11|12)$/.test(C)),T=g.find(C=>/^col-xl-([1-9]|10|11|12)$/.test(C)),S=g.find(C=>/^col-el-([1-9]|10|11|12)$/.test(C));p=p||"col-12",d.columnInSM=parseInt(p.replace("col-",""),10),d.displayWidthInSM=d.columnInSM/12,d.displayWidthInSM!==1&&(d.isSupportedClass=!1),y=y||"col-md-"+d.columnInSM,d.columnInMD=parseInt(y.replace("col-md-",""),10),d.displayWidthInMD=d.columnInMD/6,[1,2].includes(d.displayWidthInMD)||(d.isSupportedClass=!1),T=T||"col-xl-"+d.columnInMD,d.columnInLG=parseInt(T.replace("col-xl-",""),10),d.displayWidthInLG=d.columnInLG/3,[1,2,3,4].includes(d.displayWidthInLG)||(d.isSupportedClass=!1),S=S||"col-el-"+d.columnInLG,d.columnInEL=parseInt(S.replace("col-el-",""),10),d.displayWidthInEL=d.columnInEL/2,[1,2,3,4,5,6].includes(d.displayWidthInEL)||(d.isSupportedClass=!1)}function a(u,d,f,g=!1){let p=!1;u.contents.forEach(y=>{if(y.type==="fieldset"){f+=1,a(y,d,f,!0),p=!0;return}p&&(f+=1,p=!1);const T=y.appearance&&y.appearance.class,S=new uo;T?r(T,S):S.isSupportedClass=!1,S.label=y.label||y.id,S.id=y.id,S.group=f,g&&(S.fieldSetId=u.id),t===y.id&&(e=f),i.set(y.id,y),d.push(S)})}function s(u){const d=n.getComponentById(u);if(!d||!d.componentType||!d.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const f=n.selectNode(d,g=>g.type===j.DgControl["response-form"].type);return!f||!f.contents||f.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:f}}function c(u,d){d=d||u.id;const{result:f,message:g,formNode:p}=s(d);if(!f)return{result:f,message:g};t=u.id,o=[],i.clear();const y=p.contents[0].type===j.DgControl.fieldset.type?0:1;a(p,o,y);const T=o.find(C=>!C.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:T?"customize":"standard"},importData:o}}function m(u,d){d=d;const{result:f,formNode:g}=s(d);if(!f)return"";const p=[];return u.forEach(y=>{var C;const T=i.get(y.id),S=T.appearance&&T.appearance.class;if(S){const V=S.split(" ").filter(B=>!B.startsWith("col-")),v="col-"+y.columnInSM,w="col-md-"+y.columnInMD,h="col-xl-"+y.columnInLG,b="col-el-"+y.columnInEL,M=[v,w,h,b].concat(V);T.appearance.class=M.join(" ")}if(y.fieldSetId){const F=g.contents.find(v=>v.id===y.fieldSetId),V=p.find(v=>v.id===y.fieldSetId);V?(C=V.contents)==null||C.push(T):(p.push(F),F.contents=[T])}else p.push(T)}),g.contents=p,g.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:c,changeFormControlsByResponseLayoutConfig:m,getResonseFormLayoutConfig:a}}class ht extends Zt{constructor(t,i){super(t,i);ie(this,"responseLayoutEditorFunction");ie(this,"bindingVarible");ie(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=fo(this.formSchemaUtils)}getCommonPropertyConfig(t,i,o="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(t,i,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t,i),this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"form-group")}getPropertyConfig(t,i){return this.getCommonPropertyConfig(t,i,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig.categories.expressions=this.getExpressionConfig(t,"Field"),this.propertyConfig.categories.eventsEditor=this.getEventPropertyConfig(t),this.propertyConfig}getGridFieldEdtiorPropConfig(t,i){return this.propertyConfig.categories={},this.getCommonPropertyConfig(t,i,"Grid"),this.getGridFieldEdtiorProperties?this.propertyConfig.categories.editor=this.getGridFieldEdtiorProperties(t):this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig.categories.expressons=this.getExpressionConfig(t,"Field"),this.propertyConfig.categories}getBasicProperties(t,i,o="Card"){var m;const r=this;this.setDesignViewModelField(t);const{canChangeControlType:a,editorTypeList:s}=this.getAvailableEditorType(t),c={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:s,readonly:!a}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},showLabelType:{description:"标签显示方式:1、显示:显示标签 2、占位:保留标签空间,但不显示文本 3、不显示:不显示标签",title:"标签显示",type:"enum",editor:{data:[{id:"visible",name:"显示"},{id:"reserve-space",name:"占位"},{id:"none",name:"不显示"}]},defaultValue:((m=t.editor)==null?void 0:m.type)==="image"?"none":"visible"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:t,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0,readonly:this.formSchemaUtils.designerMode==="PC_RTC"&&!t.isRtcControl}},setPropertyRelates(u,d,f){if(u)switch(u&&u.propertyID){case"type":{r.changeControlType(t,u,i);break}case"label":{u.needRefreshControlTree=!0;break}case"binding":{r.changeBindingField(t,u,f);break}}}};return o.toLocaleLowerCase()!=="card"&&delete c.properties.showLabelType,c}checkCanChangeControlType(t,i){if(!t.binding)return!1;if(t.binding.type==="Variable"){if(this.bindingVarible=this.formSchemaUtils.getVariableById(t.binding.field),!this.bindingVarible)return!1}else if(!this.designViewModelField||this.designViewModelField.$type!==X.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(t){var r;const i=this.checkCanChangeControlType(t,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:t.editor.type,value:((r=j.DgControl[t.editor.type])==null?void 0:r.name)||t.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===X.FormSchemaEntityField$Type.SimpleField?o=rt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(o=rt.getEditorTypesByMDataType(this.bindingVarible.type,this.designViewModelField.multiLanguage)),{canChangeControlType:i,editorTypeList:o}}changeBindingField(t,i,o){i.needRefreshEntityTree=!0}getAppearanceProperties(t,i){const o=this;return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},fill:{title:"填充宽度",description:"启用后,控件占满父容器宽度",type:"boolean",parentPropertyID:"appearance"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(t,o.componentId)}}},setPropertyRelates(r,a){if(r)switch(r&&r.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(r.propertyValue,o.componentId||t.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(t.id,i),delete t.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(r.propertyValue,t.id,this.componentId),j.canvasChanged.value++;break;case"style":{j.canvasChanged.value++;break}}}}}getEditorProperties(t){return this.getComponentConfig(t)}changeControlType(t,i,o){const r=i.propertyValue,a=o&&o.parent&&o.parent.schema;if(!a)return;const s=a.contents.findIndex(u=>u.id===t.id);if(s===-1)return;const c=a.contents[s];let m;if(this.designViewModelField){const f=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(p=>p.id===this.designViewModelField.id).fieldSchema||{};f.editor||(f.editor={}),f.editor.$type=r,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,f,!1),m=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)}m||(m=this.controlCreatorUtils.createFormGroupWithoutField(r)),Object.assign(m,{id:c.id,appearance:c.appearance,size:c.size,label:c.label,binding:c.binding}),Object.prototype.hasOwnProperty.call(c,"visible")&&Object.assign(m,{visible:c.visible}),c.editor&&["readonly","required","placeholder"].map(u=>{Object.prototype.hasOwnProperty.call(c.editor,u)&&(m.editor[u]=c.editor[u])}),o!=null&&o.updateContextSchema?o.updateContextSchema(m):(o.schema=Object.assign(c,m),Object.assign(t,m)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(u=>u.classList.remove("dgComponentFocused")),j.canvasChanged.value++,l.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(t,i={},o={},r){var f,g;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},i),s=(f=t.binding)!=null&&f.field?[]:["Const","Variable","StateMachine"],c=this.getPropertyEditorParams(t,s,"readonly"),m=this.getPropertyEditorParams(t,s,"required"),u={readonly:{description:"",title:"只读",editor:c},required:{description:"",title:"必填",type:"boolean",editor:m,visible:!!((g=t.binding)!=null&&g.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const p in o)u[p]=Object.assign(u[p]||{},o[p]);const d=this;return{...a,properties:{...u},setPropertyRelates(p,y){if(p){switch(p.propertyID){case"readonly":case"required":d.afterMutilEditorChanged(t,p);break}r&&r.bind(d)(p,t,y)}}}}updateUnifiedLayoutAfterControlChanged(t,i,o){const r=t.split(" ");let a=r.find(d=>/^col-([1-9]|10|11|12)$/.test(d)),s=r.find(d=>/^col-md-([1-9]|10|11|12)$/.test(d)),c=r.find(d=>/^col-xl-([1-9]|10|11|12)$/.test(d)),m=r.find(d=>/^col-el-([1-9]|10|11|12)$/.test(d));a=a||"col-12",s=s||"col-md-"+a.replace("col-",""),c=c||"col-xl-"+s.replace("col-md-",""),m=m||"col-el-"+c.replace("col-xl-","");const u={id:i,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(c.replace("col-xl-",""),10),columnInEL:parseInt(m.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,u)}updateUnifiedLayoutAfterResponseLayoutChanged(t,i){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(t);if(!o||!o.unifiedLayout)return;const r=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,r,1),i){const p=r.find(y=>y.id===i.id);Object.assign(p||{},i)}const a=r.map(p=>p.columnInSM),s=r.map(p=>p.columnInMD),c=r.map(p=>p.columnInLG),m=r.map(p=>p.columnInEL),u=this.checkIsUniqueColumn(a)?a[0]:null,d=this.checkIsUniqueColumn(s)?s[0]:null,f=this.checkIsUniqueColumn(c)?c[0]:null,g=this.checkIsUniqueColumn(m)?m[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:u,uniqueColClassInMD:d,uniqueColClassInLG:f,uniqueColClassInEL:g})}checkIsUniqueColumn(t){const i=new Set(t);return Array.from(i).length===1}getItemCollectionEditor(t,i,o){return i=i||"value",o=o||"name",{editor:{columns:[{field:i,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:i,nameField:o,requiredFields:[i,o],uniqueFields:[i,o],readonly:this.checkEnumDataReadonly(t)}}}checkEnumDataReadonly(t){return!t.binding||t.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===X.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(t,i){t.binding&&t.binding.type===it.Form&&t.binding.field?(i.find(o=>o.label==="fieldValueChanging"),i.find(o=>o.label==="fieldValueChanged"),this.designViewModelField&&(t.fieldValueChanging=this.designViewModelField.valueChanging,t.fieldValueChanged=this.designViewModelField.valueChanged)):i=i.filter(o=>o.label!=="fieldValueChanging"&&o.label!=="fieldValueChanged")}getControlMethodType(t){if(!t.binding)return t.type;switch(t.binding.type){case it.Form:return t.binding.path||t.type;case it.Variable:return t.binding.fullPath||t.type}return t.type}getEventPropertyConfig(t,i="card",o,r){const a=this;let s=[];if(o&&(s=s.concat(o)),s.length===0)return{title:"事件",hideTitle:!0,properties:{},tabId:"commands",tabName:"交互",hide:!0};this.appendFieldValueChangeEvents(t,s);const c=a.eventsEditorUtils.formProperties(t,a.viewModelId,s);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(c),tabId:"commands",tabName:"交互",setPropertyRelates(d,f){const g=d.propertyValue;delete t[a.viewModelId],g&&(g.setPropertyRelates=this.setPropertyRelates,g.controlInfo={type:a.getControlMethodType(t),name:t.title},a.eventsEditorUtils.saveRelatedParameters(t,a.viewModelId,g.events,g)),r&&r(d,f,g);const p=a.designViewModelUtils.getDgViewModel(a.viewModelId);p&&a.designViewModelField&&p.changeField(a.designViewModelField.id,{valueChanging:t.fieldValueChanging,valueChanged:t.fieldValueChanged})}}}getExpressionConfig(t,i,o=["compute","dependency","validate"],r){return new Xt(this.formSchemaUtils).getExpressionConfig(t,i,o,r)}getBindingDataType(){return this.designViewModelField?this.designViewModelField.type.name==="Number"?"number":this.designViewModelField.type.name==="String"?"string":"boolean":"boolean"}getEditor(){return this.getBindingDataType()==="number"?this.numberEditorOptions:{}}updatePropertyValue(t,i,o){var r;t.editor[i]!==o?t.editor[i]=o:(r=this.getFormDesignerInstance())==null||r.reloadPropertyPanel()}setBooleanValue(t,i,o){let r=o;this.getBindingDataType()==="string"&&(r=(r||"").trim()||(i==="trueValue"?"true":"false"));const s=i==="trueValue"?"falseValue":"trueValue";t.editor[s]===r&&(r=r+1),this.updatePropertyValue(t,i,r)}getBooleanValueConverter(){return{convertFrom:(t,i)=>t.editor[i],convertTo:(t,i,o)=>{this.setBooleanValue(t,i,o)}}}}class mo extends ht{constructor(e,t){super(e,t)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class po extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},(o,r)=>{if(o)switch(o.propertyID){case"dataSourceType":{o.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...o.propertyValue]);break}}})}}class ho extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,i;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,i){var r;super.changeBindingField(e,t);const o=i;if(e.editor&&((r=o==null?void 0:o.type)!=null&&r.name)){let a,s;o.type.name===X.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),o.type.name===X.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}const Kt={convertFrom:(n,e)=>(n.editor.remote||{})[e],convertTo:(n,e,t)=>{n.editor.remote=n.editor.remote||{},n.editor.remote[e]=t}};class go extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getCommonEditorProperties(e){var t,i,o;return{viewType:{visible:!!((t=e.editor)!=null&&t.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((i=e.editor)!=null&&i.multiSelect)&&((o=e.editor)==null?void 0:o.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(e){var r,a;const t=this;let i="";if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const s=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=s==null?void 0:s.schemaField)!=null&&a.type&&(i=s.schemaField.type.$type)}return t.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Kt,description:"",title:"服务端API",type:"string"},body:{visible:!1,$converter:Kt,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!i||i==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(s,c)=>{if(!s||!c.editor)return;const m=this;switch(s.propertyID){case"dataSourceType":{s.propertyValue==="static"?(c.editor.valueField="value",c.editor.textField="name",c.editor.remote=null):s.propertyValue==="dynamic"&&(c.editor.remote={method:"GET"},c.editor.valueField="value",c.editor.textField="name");break}case"data":{!m.checkEnumDataReadonly(c)&&c.formatter&&(c.formatter.data=[...s.propertyValue]);break}case"viewType":s.propertyValue==="tag"&&(c.editor.editable=!1)}})}getGridFieldEdtiorProperties(e,t){var a,s,c,m,u,d;const i=this;let o="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const f=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=f==null?void 0:f.schemaField)!=null&&s.type&&(o=f.schemaField.type.$type)}return i.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!((c=e.editor)!=null&&c.dataSourceType)||((m=e.editor)==null?void 0:m.dataSourceType)==="static",...i.getItemCollectionEditor(e,(u=e.editor)==null?void 0:u.valueField,(d=e.editor)==null?void 0:d.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(f,g)=>{if(!f||!g.editor)return;const p=this;switch(f.propertyID){case"dataSourceType":{f.propertyValue==="static"?(g.editor.valueField="value",g.editor.textField="name",g.editor.remote=null):f.propertyValue==="dynamic"&&(g.editor.remote={method:"GET"},g.editor.valueField="value",g.editor.textField="name");break}case"data":{!p.checkEnumDataReadonly(g)&&g.formatter&&(g.formatter.data=[...f.propertyValue]);break}}})}setEditorPropertyRelates(e,t,i){if(!e||!t.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name",t.editor.remote={});break}case"data":{!o.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,i){var r;super.changeBindingField(e,t);const o=i;e.editor&&((r=o==null?void 0:o.type)==null?void 0:r.$type)===X.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}getEventPropertyConfig(e,t="card",i,o){const r=this;let a=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}];i&&(a=a.concat(i)),this.appendFieldValueChangeEvents(e,a);const s=r.eventsEditorUtils.formProperties(e,r.viewModelId,a);return{title:"事件",hideTitle:!0,properties:r.createBaseEventProperty(s),tabId:"commands",tabName:"交互",setPropertyRelates(u,d){const f=u.propertyValue;delete e[r.viewModelId],f&&(f.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(e,r.viewModelId,f.events,f)),o&&o(u,d,f);const g=r.designViewModelUtils.getDgViewModel(r.viewModelId);g&&r.designViewModelField&&g.changeField(r.designViewModelField.id,{valueChanging:e.fieldValueChanging,valueChanged:e.fieldValueChanged}),e.editor.beforeOpen!==e.beforeOpen&&(e.editor.beforeOpen=e.beforeOpen),e.editor.onChange!==e.onChange&&(e.editor.onChange=e.onChange),e.editor.onClear!==e.onClear&&(e.editor.onClear=e.onClear)}}}}class yo extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{resizable:{description:"",title:"拖拽调整大小",type:"boolean"},autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}getGridFieldEdtiorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}}function vo(){let n="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:n}=window.top.localStorage);const e=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],t=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],i=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],o=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],r=[{id:"yyyy",name:"yyyy"}];return n==="zh-CHS"&&(e.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),t.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),r.push({id:"yyyy年",name:"yyyy年"})),n==="zh-CHT"&&(e.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),t.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),r.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:i,yMdFormats:t,mdFormats:o,yFormats:r}}const bo=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],Co=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"}],wo=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],So=[{id:"yyyy",name:"yyyy"}],{timeFormats:Mo,yMdFormats:Fo,yMFormats:en,mdFormats:To,yFormats:Ft}=vo();class _o extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getDatePickerModes(e){return e==="Date"||e==="DateTime"?[{label:"年月日",value:"day"}]:[{label:"年月日",value:"day"},{label:"年月",value:"month"},{label:"年",value:"year"}]}checkMaxMinDate(e){const{minDate:t,maxDate:i,showTime:o}=(e==null?void 0:e.editor)||{},{parseToDate:r,formatTo:a}=X.useDateFormat();if(i){const s=r(i,"yyyy-MM-dd HH:mm:ss");s&&(e.editor.maxDate=a(s,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}if(t){const s=r(t,"yyyy-MM-dd HH:mm:ss");s&&(e.editor.minDate=a(s,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}}getEditorProperties(e){var s,c,m,u,d,f,g,p,y,T,S,C,F,V,v;const t=this.getDateFormatOptions(e==null?void 0:e.editor),i=this.getValueFormatOptions(e==null?void 0:e.editor),o=(c=(s=this.designViewModelField)==null?void 0:s.type)==null?void 0:c.name,r=this.getDatePickerModes(o),a=this.getExtremeDateFormat(e);return(m=e==null?void 0:e.editor)!=null&&m.selectMode||(e.editor.selectMode="day"),this.checkMaxMinDate(e),this.getComponentConfig(e,{type:"date-picker"},{enableClear:{description:"是否显示清除按钮",title:"启用清除",type:"boolean"},selectMode:{description:"",title:"显示类型",type:"string",refreshPanelAfterChanged:!0,editor:{type:"combo-list",idField:"value",textField:"label",valueField:"value",data:r}},showWeekNumber:{description:"",title:"显示第几周",type:"boolean",visible:((u=e==null?void 0:e.editor)==null?void 0:u.selectMode)==="day"},firstDayOfTheWeek:{description:"",title:"每周起始日",type:"string",editor:{type:"combo-list",idField:"value",valueField:"value",textField:"label",data:[{label:"星期日",value:"Sun"},{label:"星期一",value:"Mon"}]},visible:((d=e==null?void 0:e.editor)==null?void 0:d.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((f=e==null?void 0:e.editor)==null?void 0:f.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((g=e==null?void 0:e.editor)==null?void 0:g.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:t}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:i},visible:((p=e==null?void 0:e.editor)==null?void 0:p.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((y=e==null?void 0:e.editor)==null?void 0:y.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:"1900-01-01 00:00:00",maxDate:((T=e==null?void 0:e.editor)==null?void 0:T.maxDate)||"9999-12-31 23:59:59",showTime:(S=e==null?void 0:e.editor)==null?void 0:S.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((C=e==null?void 0:e.editor)==null?void 0:C.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:((F=e==null?void 0:e.editor)==null?void 0:F.minDate)||"1900-01-01 00:00:00",maxDate:"9999-12-31 23:59:59",showTime:(V=e==null?void 0:e.editor)==null?void 0:V.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((v=e==null?void 0:e.editor)==null?void 0:v.selectMode)==="day"}},this.setEditorPropertyRelates)}getExtremeDateFormat(e){var t,i,o,r;if(((t=e==null?void 0:e.editor)==null?void 0:t.selectMode)==="day")return"yyyy-MM-dd"+((i=e==null?void 0:e.editor)!=null&&i.showTime?" HH:mm:ss":"");if(((o=e==null?void 0:e.editor)==null?void 0:o.selectMode)==="month")return"yyyy-MM";if(((r=e==null?void 0:e.editor)==null?void 0:r.selectMode)==="year")return"yyyy"}getEventPropertyConfig(e){const t=this,i=[{label:"onDatePicked",name:"日期选择后事件"}],o=t.eventsEditorUtils.formProperties(e,t.viewModelId,i);return{title:"事件",hideTitle:!0,properties:t.createBaseEventProperty(o),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,s){const c=a.propertyValue;delete s[t.viewModelId],c&&t.eventsEditorUtils.saveRelatedParameters(s,t.viewModelId,c.events,c);const m=t.designViewModelUtils.getDgViewModel(t.viewModelId);m&&t.designViewModelField&&m.changeField(t.designViewModelField.id,{valueChanging:s.fieldValueChanging,valueChanged:s.fieldValueChanged})}}}setEditorPropertyRelates(e,t,i){if(!(!e||!t.editor))switch(e.propertyID){case"showTime":{const o=t.editor;e.propertyValue?(o.displayFormat="yyyy-MM-dd HH:mm:ss",o.valueFormat="yyyy-MM-dd HH:mm:ss"):(o.displayFormat="yyyy-MM-dd",o.valueFormat="yyyy-MM-dd"),t.formatter&&(t.formatter.dateFormat=o.displayFormat);break}case"displayFormat":{t.formatter&&(t.formatter.dateFormat=e.propertyValue);break}case"selectMode":{e.propertyValue!=="day"?(t.editor.showWeekNumber=!1,t.editor.showTime=!1,t.editor.enableQuickSelect=!1,e.propertyValue==="month"?(t.editor.displayFormat="yyyy-MM",t.editor.valueFormat="yyyy-MM"):(t.editor.displayFormat="yyyy",t.editor.valueFormat="yyyy")):(t.editor.displayFormat="yyyy-MM-dd",t.editor.valueFormat="yyyy-MM-dd");break}}}getDateFormatOptions(e){const t=e.selectMode||"day";let i=[];switch(t){case"day":{const o=[];e.showTime&&o.push(...Mo),o.push(...Fo,...en,...Ft,...To),i=o;break}case"month":{i=[...en,...Ft];break}case"year":{i=[...Ft];break}}return i}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let i=[...bo];return e.showTime&&(i=[...Co]),i}case"month":return wo;case"year":return So;default:return[]}}changeBindingField(e,t,i){var r;super.changeBindingField(e,t);const o=i;e.editor&&((r=o==null?void 0:o.type)!=null&&r.name)&&(e.editor.fieldType=o.type.name,o.type.name===X.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const xo=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Vo="";function gt(n){let e=[10,20,30,50,100];return n&&(typeof n=="string"&&(e=n.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(n)&&(e=n)),e.map(t=>({value:parseInt(t,10)})).sort((t,i)=>t.value-i.value)}const ve={convertFrom:(n,e)=>{const t=n.editor?n.editor:n;return e==="multiSelect"||e==="enableTitle"?!!t[e]:e==="separator"?t[e]||",":e==="onlySelectLeaf"?t[e]==null?!1:t[e]:e==="loadTreeDataType"?t[e]||"default":e==="placeholder"?ze.isNil(t[e])?"请选择":t[e]:e==="openType"?t[e]||"Modal":t[e]},convertTo:(n,e,t)=>{const i=n.editor?n.editor:n;if(i[e]=t,e==="multiSelect"&&!t&&(i.enableCascade=!1),e==="openType"){if(t==="Popup")i.showSelections=!1,i.enableCascade=!1;else if(i.dialog){const{width:o}=i.dialog,{displayType:r}=i;r&&r.toUpperCase().indexOf("NAV")>-1&&(!o||o<520)&&(i.dialog.width=960)}}i.multiSelect&&i.openType==="Popup"&&(i.editable=!1,i.allowFreeInput=!1)}};function Io(n){let e="form_group_"+Date.now();return n&&(e=n.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function ko(n,e){const{enablePager:t,pageSize:i,pageList:o}=e;n.pagination=n.pagination||{},Object.assign(n.pagination,{enable:t,sizeLimits:gt(o).map(r=>r.value),size:i,showLimits:!0,showGoto:!1,mode:"server"})}const tn={convertFrom:(n,e)=>{var i;return(i=(n.editor?n.editor:n).dataSource)==null?void 0:i.displayName},convertTo:(n,e,t)=>{if(t&&t.length>0){const i=n.editor?n.editor:n,o=t[0],{name:r,id:a,metadataContent:s,code:c}=o;i.dataSource||(i.dataSource={}),i.dataSource.displayName=`${r}(${c})`,i.helpId=a;const{displayType:m,idField:u,textField:d}=s;i.displayType=m,i.dataSource.idField=u,i.textField=d,i.dataSource.type="ViewObject",i.enableEqualSearch=!1;const{pageInfo:f}=s.dataSource;ko(i,f);const{treeInfo:g}=m.toUpperCase()==="NAVTREELIST"?s.navigation:s.dataSource;if(g){const{onlySelectLeaf:p,loadDataType:y}=g;i.loadTreeDataType="default",i.onlySelectLeaf=p??!1}if(i.dataSource.uri||(i.dataSource.uri=Io(n.id)),i.dialog){const{width:p}=i.dialog;m&&m.toUpperCase().indexOf("NAV")>-1&&(!p||p<520)&&(i.dialog.width=960)}}}},Eo={convertFrom:(n,e)=>{var t;return(t=n.editor.dataSource)==null?void 0:t.idField},convertTo:(n,e,t)=>{if(t&&t.length>0){const i=t[0];n.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},Po={convertFrom:(n,e)=>{var t;return(t=n.editor)==null?void 0:t.textField},convertTo:(n,e,t)=>{if(t&&t.length>0){const i=t[0];n.editor.textField=i==null?void 0:i.bindingPath}}},No={convertFrom:(n,e)=>n.editor.displayType?n.editor.displayType.toUpperCase():"LIST",convertTo:(n,e,t)=>{n.editor.displayType=t}},qe={convertFrom:(n,e)=>{var r;let t=n.editor?n.editor.dialog:n.dialog;const i=n.editor?n.editor.openType:n.openType;if(t||(t={}),e==="title")return t[e]||Vo;if(!i||i==="Modal"){if(e==="width")return(r=t.displayType)!=null&&r.toUpperCase().startsWith("NAV")?t[e]||960:t[e]||590;if(e==="height")return t[e]||620;if(e==="navigatorWidth")return t[e]||320}else{if(e==="width")return t[e]||460;if(e==="height")return t[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return t[e]==null?!0:t[e]},convertTo:(n,e,t)=>{const i=n.editor?n.editor:n;i.dialog=i.dialog||{},i.dialog[e]=t}},Bo={convertFrom:(n,e)=>{const t=n.editor?n.editor:n;if(t.pagination=t.pagination||{},e==="enable"||e==="showLimits")return t.pagination[e]==null?!1:t.pagination[e];if(e==="sizeLimits"){const i=t.pagination[e];return gt(i)}if(e==="size")return t.pagination[e]||20},convertTo:(n,e,t)=>{var o;const i=n.editor?n.editor.pagination||{}:n;if(i.pagination=i.pagination||{},e==="sizeLimits"){const r=t.map(s=>s.value);i.pagination[e]=r;const a=((o=i.pagination)==null?void 0:o.size)??20;r.includes(a)||(i.pagination.size=r[0]);return}i.pagination[e]=t}},nn=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Oo=Symbol("schema_repository_token");function Ro(n,e){const t=i=>i&&i.length?i.map(o=>`${o.name}[${o.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:e.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(i,o)=>`${i==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Oo},dataSourceConverter:tn,defaultConverter:ve,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ut.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ut.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:n,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:ut.FieldSelectorRepositoryToken,displayFormatter:t},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const i=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),o=e.schemaService.getPrimaryField();return o?i.filter(r=>r.data.bindingPath!==o):i},formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,displayFormatter:t}}}}function Ho(n){var r,a;const e={type:"combo-list",enableClear:!1,editable:!1},t={type:"number-spinner",useThousands:!1},i=()=>n.displayType?n.displayType.toUpperCase():"",o=()=>i().startsWith("NAV")?n.showNavigation===void 0?!0:!!n.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:ve,editor:{...e,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:n.openType!=="Popup",$converter:qe},width:{description:"窗口宽度,单位:px,最小值:300px",title:"宽度",type:"number",editor:{...t,min:o()?520:300,needValid:!0},$converter:qe},height:{description:"窗口高度,单位:px,最小值:200px",title:"高度",type:"number",editor:{...t,min:200,needValid:!0},$converter:qe},showNavigation:{description:"显示导航栏",$converter:ve,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:i().includes("NAV")&&n.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:o()&&n.openType!=="Popup",editor:{...t,min:200,max:(((r=n==null?void 0:n.dialog)==null?void 0:r.width)??960)-200,needValid:!0},$converter:qe},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:n.openType!=="Popup",$converter:qe},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!n.enableUserData&&(((a=n==null?void 0:n.dialog)==null?void 0:a.resizeable)??!0)&&n.openType!=="Popup",$converter:qe},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:n.openType!=="Popup",$converter:qe},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:n.openType!=="Popup",$converter:qe},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:n.openType!=="Popup",$converter:qe}}}function Ao(n,e=!0){var r,a,s,c;const t=!((r=n.pagination)!=null&&r.enable),i=()=>n.displayType?n.displayType.toUpperCase():"",o=(m,u)=>{const d=i()!=="TREELIST"||m.treeToList;return u&&d?m.pagination&&m.pagination[u]:d};return{hide:!o(n)||t,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Bo,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:o(n)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:o(n,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:gt((a=n.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:m,data:u})=>!u||!u.length?(m==null||m.warning({message:"每页显示条数不能为空!"}),!1):new Set(u.map(f=>parseInt(f.value,10))).size===u.length?!0:(m==null||m.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:o(n),editor:{type:"combo-list",enableClear:!1,editable:!1,data:gt((s=n.pagination)==null?void 0:s.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(c=n.pagination)==null?void 0:c.size}}}}}class Lo extends Le.InputBaseProperty{constructor(){super(...arguments);ie(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});ie(this,"numberEditor",{type:"number-spinner",useThousands:!1});ie(this,"readonlyEditor",{...this.comboListEditor,editable:!0});ie(this,"visibleEditor",{...this.comboListEditor,editable:!1});ie(this,"requiredEditor",{...this.comboListEditor,editable:!1});ie(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(t,i){const o=["validate"];return t.type==="form-group"&&o.push("dataPicking"),new Le.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",o)}getPropertyConfig(t,i,o="Card"){var S;const r=(S=t.binding)!=null&&S.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(t,r,"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,r,"visible"),this.requiredEditor=this.getPropertyEditorParams(t,r,"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(t,i,o),s=this.getBehaviorConfig(t),c=this.getAppearanceProperties(t,i),m=this.getLookupConfig(t),u=this.getEventPropConfig(t),d=this.getDialogPropertyConfig(t),f=this.getPageConfig(t.editor),g=this.getTreePropConfig(t.editor),p=this.getSearchConfig(t),y=this.getExpressionConfig(t,"Field"),T={basic:a,appearance:c,behavior:s,lookup:m,treeConfig:g,dialog:d,pager:f,searchConfig:p,expressions:y};return t.type==="form-group"&&(T.eventsEditor=u),{type:"object",categories:T}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null,"Grid").categories}flattenTreeNodes(t){return t.reduce((i,o)=>{var r;return i.push(o),(r=o.children)!=null&&r.length&&i.push(...this.flattenTreeNodes(o.children)),i},[])}isSimpleStringField(){var s;const t=((s=this.designViewModelField)==null?void 0:s.path)||"";if(!t||!t.includes("."))return!0;const i=t.split("."),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(o!=null&&o.length))return!1;const r=o.find(c=>c.data.code===i[0]);if(!r)return!1;const a=[r,...this.flattenTreeNodes(r.children)];return!i.reduce((c,m,u)=>[...c,u?`${c[u-1]}.${m}`:m],[]).some(c=>{var m,u,d;return((d=(u=(m=a.find(f=>f.data.path===c))==null?void 0:m.data)==null?void 0:u.type)==null?void 0:d.$type)==="EntityType"})}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(i,o)=>{this.afterMutilEditorChanged(o,i)}}}changeBindingField(t,i){super.changeBindingField(t,i),t.editor.multiSelect=!1}getDisplayType(t){return t.displayType?t.displayType.toUpperCase():""}mapFieldsDisplayFormatter(t){return t&&t.length?t.map(i=>`${i.name}[${i.bindingPath}]`).join(","):""}getSearchConfig(t){var i;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:ve,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:ve,title:"允许查询所有列",type:"boolean",visible:t.editor.openType!=="Popup"&&t.editor.enableSearchBar==null?!0:!!t.editor.enableSearchBar},enableEqualSearch:{$converter:ve,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:t.editor.openType!=="Popup"&&(((i=t.editor)==null?void 0:i.enableSearchBar)??!0)!==!1&&this.getDisplayType(t.editor)!=="TREELIST"}},hide:t.editor.openType==="Popup"}}getLookupConfig(t){var m;const i=t.editor,o=()=>{const u=this.formSchemaUtils.getFormSchema().module.entity[0].id,d=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:i,formBasicInfo:d,viewModelId:u,dataSourceId:i.helpId}},{dataSourceEditor:r,idFieldEditor:a,textFieldEditor:s,mappingFieldsEditor:c}=Ro(i,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(u,d)=>{if(u)switch(u.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(d,u);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor,visible:!!((m=t.binding)!=null&&m.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:ve},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:ve,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:ve,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(i.multiSelect&&i.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:ve,editor:this.freeInputEditor,visible:!!i.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:ve},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...r,displayFormatter:u=>u&&u.length?u.map(d=>`${d.name}(${d.code})`).join(","):"",validateFunction:async u=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(u,t),onSubmitModal:u=>{if(u){delete i.mappingFields;const d=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(d.relativePath,u[0].data).then(f=>JSON.parse(f==null?void 0:f.metadata.content))}}},$converter:tn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:ve,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:i,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:ut.FieldSelectorRepositoryToken,beforeOpen:async({repository:u,notifyService:d})=>{var S;if(!(i==null?void 0:i.helpId))return d==null||d.warning({message:"请先配置数据源!"}),!1;const g=o(),y=new Le.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let T={};if(u){const C=await u.getData(g),F=await u.getLookupConditions(g);T={fieldList:C,conditionList:F}}return(S=y.variables)!=null&&S.forms&&(y.variables.forms.items=y.variables.forms.items.filter(C=>C.category==="remote")),{...T,...y,isServerSide:!0}},onSubmitModal:async({loadingService:u,repository:d,conditions:f,originalConditions:g,FMessageBoxService:p})=>{if(d)try{const y=o(),T=await d.getLookupConditions(y)||[];return JSON.stringify(T)!==JSON.stringify(g.value)?(u==null||u.clearAll(),p.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{f.value=T,g.value=JSON.parse(JSON.stringify(f.value))},()=>{}),!1):(JSON.stringify(f.value)===JSON.stringify(g.value)||await d.saveFilterCondition(f.value,y,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return p==null||p.error("保存失败",""),!1}finally{u==null||u.clearAll()}}},visible:!!i.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:No,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{...a},$converter:Eo},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Po,editor:s},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ve,editor:{...c}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:ve,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:ve,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:ve,title:"显示已选记录",type:"boolean",visible:!!i.multiSelect&&i.openType!=="Popup"},separator:{description:"多选分隔符",$converter:ve,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!i.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:ve,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:ve,title:"启用收藏夹",type:"boolean",visible:i.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:ve,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:i.openType!=="Popup"}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")&&t.openType!=="Popup"?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){const i=Ho(t.editor);return i.openType.$converter=ve,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:qe,properties:i}}showPagerProperty(t,i){const o=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return i&&o?t.pagination&&t.pagination[i]:o}getPageConfig(t){return Ao(t)}showLoadType(t){const i=this.getDisplayType(t);return(i==="TREELIST"||i==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}isTree(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:ve,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:ve,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(t)},enableFullTree:{description:"启用构造完整树",$converter:ve,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:ve,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(t)},enableCascade:{description:"启用级联选择",$converter:ve,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(t)&&!!t.multiSelect&&t.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:ve,title:"显示级联状态",type:"boolean",visible:!!t.enableCascade&&this.isTree(t)},cascadeValue:{description:"缺省级联选择模式",$converter:ve,title:"缺省级联选择模式",type:"string",visible:!!t.enableCascade&&this.isTree(t),editor:{...this.comboListEditor,data:xo,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:ve,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(t){const i=this;let o=nn;t.editor.openType==="Popup"&&(o=o.filter(s=>s.label!=="beforeSelectData"));const r=i.eventsEditorUtils.formProperties(t,i.viewModelId,o);return{title:"事件",hideTitle:!0,properties:i.createBaseEventProperty(r),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,c){const m=s.propertyValue;delete c[i.viewModelId],m&&i.eventsEditorUtils.saveRelatedParameters(c,i.viewModelId,m.events,m);const u=i.designViewModelUtils.getDgViewModel(i.viewModelId);u&&i.designViewModelField&&u.changeField(i.designViewModelField.id,{valueChanging:c.fieldValueChanging,valueChanged:c.fieldValueChanged})}}}async checkSameBESource(t,i){var o,r,a,s,c;if(t&&((o=i==null?void 0:i.editor)!=null&&o.helpId)&&!i.isRtcControl){if(t.data.id===i.editor.helpId)return!0;const m=await this.metadataService.getPickMetadata("",t.data).then(y=>{var T;if((T=y==null?void 0:y.metadata)!=null&&T.content)return JSON.parse(y.metadata.content)}),u=await this.metadataService.getPickMetadata("",{id:i.editor.helpId}).then(y=>{var T;if((T=y==null?void 0:y.metadata)!=null&&T.content)return JSON.parse(y.metadata.content)}),d=(r=m==null?void 0:m.dataSource)==null?void 0:r.sourceType,f=(a=u.dataSource)==null?void 0:a.sourceType,g=(s=m==null?void 0:m.dataSource)==null?void 0:s.sourceId,p=(c=u==null?void 0:u.dataSource)==null?void 0:c.sourceId;if(d==="BE"&&f==="BE"&&g!==p)return new wt.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class $o extends ht{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class jo extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var r,a,s,c,m,u,d,f;let t,i=!1;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const g=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=g==null?void 0:g.schemaField)!=null&&a.type&&(t=g.schemaField.type.precision,i=g.schemaField.type.name==="BigNumber")}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:t===0,min:0,max:t,needValid:!0},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,needValid:!0,precision:(s=e==null?void 0:e.editor)==null?void 0:s.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(c=e==null?void 0:e.editor)==null?void 0:c.max,precision:(m=e==null?void 0:e.editor)==null?void 0:m.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((u=e==null?void 0:e.editor)==null?void 0:u.min)===void 0||(d=e==null?void 0:e.editor)==null?void 0:d.min,precision:(f=e==null?void 0:e.editor)==null?void 0:f.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},bigNumber:{description:"",title:"支持大数字",type:"boolean",readonly:!0,visible:i},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(g,p,y){if(g)switch(g.propertyID){case"precision":{p.formatter&&(p.formatter.precision=g.propertyValue);break}}})}changeBindingField(e,t,i){var r;super.changeBindingField(e,t);const o=i;e.editor&&((r=o==null?void 0:o.type)==null?void 0:r.name)===X.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=o.type.precision)}}class Wo extends ht{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.getComponentConfig(e,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,t,i){if(!e||!t.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name");break}case"data":{!o.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,i){var r;super.changeBindingField(e,t);const o=i;e.editor&&((r=o==null?void 0:o.type)==null?void 0:r.$type)===X.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}}class zo extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,i;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,i){var r;super.changeBindingField(e,t);const o=i;if(e.editor&&((r=o==null?void 0:o.type)!=null&&r.name)){let a,s;o.type.name===X.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),o.type.name===X.FormSchemaEntityFieldTypeName.Number&&(a=1,s=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&s!==void 0&&(e.editor.falseValue=s)}}}class Go extends ht{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(t,i)=>{t.propertyID==="use12Hours"&&(i.editor.format=i.editor.format||"hh:mm:ss",i.editor.format=t.propertyValue?i.editor.format.replace("HH","hh"):i.editor.format.replace("hh","HH"))})}}class Uo extends Le.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"language-textbox"},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:e.editor.maxLength,needValid:!0}}})}}class Do extends Zt{constructor(t,i){super(t,i);ie(this,"dataGridProps",null);ie(this,"notifyService",new wt.FNotifyService)}getPropertyConfig(t,i){var s,c,m;this.dataGridProps=i,this.getBasicPropConfig(t),this.getAppearanceProperties(t,i);const r={formatterEnumData:{description:"",title:"枚举数据",type:"array",visible:!!(((s=t.formatter)==null?void 0:s.type)==="enum"&&((c=t.editor)==null?void 0:c.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(t,"value","name"),refreshPanelAfterChanged:!0}},a=(u,d)=>{if(u)switch(u.propertyID){case"formatterEnumData":{t.formatter&&(t.formatter.data=[...u.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"gridFieldEditor",r,a),this.getFieldEditorProperties(t,i),this.propertyConfig.categories.templateFormat=this.getColumnTemplate(t),((m=t.formatter)==null?void 0:m.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(t)),this.getEventPropConfig(t),this.propertyConfig}getColumnTemplate(t){const i=t.columnTemplateType&&t.columnTemplateType==="custom"||!t.columnTemplateType&&t.columnTemplate&&!t.onClickLinkCommand,o=this;return{title:"列模板",description:"用于配置自定义列模板以及内置的格式化模板,如超链接、图片",properties:{columnTemplateType:{description:"列模板类型",title:"列模板类型",$converter:"/converter/change-formatter-type.converter",type:"enum",editor:{data:[{id:"default",name:"无"},{id:"hyperlink",name:"超链接"},{id:"custom",name:"自定义"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",visible:!!i,editor:{type:"code-editor",language:"html"}}},setPropertyRelates(r,a,s){var c;if(r){switch(r&&r.propertyID){case"columnTemplateType":{r.propertyValue==="custom"&&a.columnTemplate&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}case"columnTemplate":{r.propertyValue&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}}(c=o.getFormDesignerInstance())==null||c.reloadPropertyPanel()}}}}getItemCollectionEditor(t,i,o){const r=i||"value",a=o||"name";return{editor:{columns:[{field:r,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:r,nameField:a,requiredFields:[r,a],uniqueFields:[r,a],readonly:this.checkEnumDataReadonly(t)}}}checkEnumDataReadonly(t){return!t.binding||t.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===X.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(t){var c,m,u;const i=t.columnTemplateType==="hyperlink"||!t.columnTemplateType&&t.columnTemplate&&t.onClickLinkCommand;let o=[];((c=t.editor)==null?void 0:c.type)==="combo-list"&&o.push({label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}),i&&o.push({label:"onClickLinkCommand",name:"超链接事件"}),((m=t==null?void 0:t.editor)==null?void 0:m.type)==="lookup"&&(o=[...o,...nn],t.editor.openType==="Popup"&&(o=o.filter(d=>d.label!=="beforeSelectData"))),((u=t==null?void 0:t.editor)==null?void 0:u.type)==="date-picker"&&(o=[{label:"onDatePicked",name:"日期选择后事件"}]);const r=this,a=r.eventsEditorUtils.formProperties(t,r.viewModelId,o),s=r.createBaseEventProperty(a);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:s,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(d,f){var p,y,T,S;const g=d.propertyValue;delete t[r.viewModelId],g&&(g.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(t,r.viewModelId,g.events,g)),t.remoteSort=!!t.columnSorted,t.onClickLinkCommand&&!t.onClickLinkCommand.includes("communication:")&&(t.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
19
- @click="(ctx)=>viewModel.current.${t.onClickLinkCommand}({id: rowData.id,context: ctx})">
18
+ `,S.children[1].style.cssText="width: 30px;padding: 0 14px 0 0",S.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(S),S}function F(w,y,x){if(w.stopPropagation(),m(),y){if(g=C(w.target),w.dataTransfer){const S=new Image;S.src="",w.dataTransfer.setDragImage(S,0,0)}u=w.pageX,h=w.pageY,setTimeout(()=>{a.value=x,d.value=!0,y.moving=!0})}}function M(w,y){if(w.preventDefault(),a.value!==y){const x=l.value[a.value],S=l.value;S.splice(a.value,1),S.splice(y,0,x),a.value=y,b(w.pageX,w.pageY)}}function T(w){w.preventDefault(),w.dataTransfer&&(w.dataTransfer.dropEffect="move"),b(w.pageX,w.pageY)}function v(w,y){y&&(y.moving=!1,g&&(document.body.removeChild(g),g=null)),l.value.forEach((x,S)=>{x.__fv_index__=S}),d.value=!1,s(),f.value=y.raw.__fv_index__,c.value=y.raw.__fv_index__,p.value=y.raw[o.value],e.emit("change",l.value),e.emit("activeChange",[y.raw])}return{dragstart:F,dragenter:M,dragover:T,dragend:v,isDragging:d}}function no(t,e,n,i,o,l){const a=r.ref(t.idField),d=r.ref(t.disableField),c=r.ref(t.draggable);r.ref(t.itemClass);const p=r.ref(t.selection.multiSelect??!1),f=r.ref(t.selection.multiSelectMode),{isDragging:s}=i,{activeIndex:m,focusedItemId:g,hoverIndex:u}=o,{clearSelection:h,getSelectedItems:b,toggleSelectItem:C,currentSelectedDataId:F}=l,M=r.ref(b()),T=_=>M.value.length===0?!1:M.value.some(k=>{let V="";return k.data?V=k.data[a.value]:V=k[a.value],V===_});function v(){M.value=b()}function w(_,k){return _.raw[a.value]!=null?_.raw[a.value]:""}function y(_,k){const V={"f-list-view-group-item":!0,"f-list-view-draggable-item":c.value,"f-un-click":!_.checked,"f-un-select":!!_.raw[d.value],"f-listview-active":p.value&&T(w(_))||!p.value&&_.raw[a.value]===F.value,"f-listview-hover":!s.value&&k===u.value,moving:!!_.moving};if(typeof t.itemClass=="string")return Z.getCustomClass(V,t.itemClass);if(typeof t.itemClass=="function"){const W=t.itemClass(_);return Z.getCustomClass(V,W)}return V}function x(_,k){const V={};if(typeof t.itemStyle=="string")return Z.getCustomStyle(V,t.itemStyle);if(typeof t.itemStyle=="function"){const W=t.itemStyle(_);return Z.getCustomStyle(V,W)}return V}const S=r.computed(()=>!p.value);function I(_,k,V){_.checked=V,!_.raw[d.value]&&(S.value&&(g.value=_.raw[a.value]),C(_))}const B=r.computed(()=>p.value&&f.value==="OnCheckClearByClick"),N=r.computed(()=>!p.value||p.value&&(f.value==="OnCheckAndClick"||f.value==="OnClick"));function O(_,k,V){if(_.raw[d.value]){V==null||V.preventDefault(),V==null||V.stopPropagation();return}F.value=_.raw[a.value],g.value=_.raw[a.value],m.value=k,B.value&&h(),N.value&&(C(_),v()),e.emit("clickItem",{data:M.value,index:k,dataItem:_.raw}),e.emit("activeChange",M.value)}return{getKey:w,selectedItems:M,listViewItemClass:y,listViewItemStyle:x,updateSelectedItems:v,onCheckItem:I,onClickItem:O}}const Xt=r.defineComponent({name:"FListView",props:Ui,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(t,e){var ee;const n=r.ref(!1),i=r.ref(),o=r.ref(!0),l=r.ref(((ee=t.rowOption)==null?void 0:ee.rowHeight)||28),a=r.ref(!1),d=r.ref([]),c=0,p=r.ref(t.columns),f=ke.useFilter(t,e),s=ke.useIdentify(t),m=ke.useHierarchy(t),g=ke.useGroupData(t,s),u=ke.useDataView(t,new Map,f,m,s),h=ke.useSelection(t,u,s,d,e),b=Di(t,i),C=ke.usePagination(t,u),F=r.computed(()=>u.dataView.value.length),M=ke.useRow(t,e,h,s),T=ke.useEdit(t,e,s,M,d),v=ke.useVisualDataBound(t,u,l),w=ke.useVisualDataCell(t,{},v),y=ke.useVisualDataRow(t,u,T,m,s,v,w,l),x=ke.useVisualGroupRow(t,s,w,y),S=ke.useVisualSummaryRow(t,s,w,y),I=ke.useVisualData(t,p,u,F,c,y,x,S),{getVisualData:B}=I;d.value=B(0,F.value+c-1);const N=r.computed(()=>{const ie={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&(ie[`${t.size}-item`]=!0),Z.getCustomClass(ie,t.customClass)}),O=r.computed(()=>!!e.slots.footer||o.value);function _(){return t.header==="SearchBar"?Yt:t.header==="ContentHeader"?Ki:Yt}const k=_(),{renderHeader:V}=k(t,e,b),W=eo(),P=to(t,e,u,W),H=no(t,e,d,P,W,h),{renderListArea:X}=Qi(t,e,d,u,g,W,h,I,H,P);function J(ie){b.search(ie)}function oe(ie){ie&&(u.load(ie),d.value=B(0,F.value+c-1))}function Me(){h.clearSelection(),W.clearActiveItem()}function Ce(){return H.selectedItems.value}function ve(){return H.selectedItems.value.map(ie=>ie[s.idField.value])}function L(ie){h.selectedValues.value=ie,H.updateSelectedItems()}function R(){return h.currentSelectedDataId.value}function A(ie){M.activeRowById(ie)}function q(ie){const he=s.idField.value,Oe=d.value.find(D=>D.raw[he]===ie),Ze=d.value.findIndex(D=>D.raw[he]===ie);Oe&&Ze>-1&&H.onClickItem(Oe,Ze)}function U(ie){const he=s.idField.value,Oe=d.value.find(Ze=>Ze.raw[he]===ie);Oe&&M.changeRow(Oe)}function te(ie){C.updatePagination(ie)}function re(ie){return d.value.filter(he=>ie.includes(he.raw[t.idField]))}e.expose({search:J,updateDataSource:oe,clearSelection:Me,getSelections:Ce,updateSelectionByIds:L,getSelectionIds:ve,activeRowById:A,getCurrentRowId:R,clickRowItemById:q,updatePagination:te,getVisibleDataByIds:re,selectRowById:U});function de(ie){t.multiSelect&&(ie.preventDefault(),ie.stopPropagation())}r.watch(()=>t.selectionValues,(ie,he)=>{ie!==he&&L(ie)});const ce=ke.useSidebar(t,h),{sidebarWidth:pe,showSidebarCheckBox:me}=ce,Ie=ke.useColumn(t,e),{applyColumnSorter:Ge,columnContext:ye,updateColumnRenderContext:Ue}=Ie,Ae=ke.useVirtualScroll(t,u,d,ye,I,F,c,pe,l,n,T),{shouldRenderPagination:$}=C,{renderDataGridPagination:K}=ke.getPagination(t,e,u,Ae,C,h);return()=>r.createVNode("div",{class:N.value,onClick:de},[V(),r.createVNode("div",{ref:i,class:"f-list-view-content",onMouseover:()=>{a.value=!0},onMouseleave:()=>{a.value=!1}},[X()]),O.value&&r.createVNode("div",{class:"f-list-view-footer"},[t.footerTemplate?t.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),io=r.defineComponent({name:"FTransfer",props:Ut,emits:["change","activeChange","selectItem","unSelecteItem","removeItem"],setup(t,e){const n=r.ref(t.identifyField),i=r.ref(t.displayType),o=r.ref(!1),l=r.ref(t.dataSource),a=r.ref(t.textField),d=r.ref(t.selections||[]),c=r.computed(()=>d.value.map(O=>O[n.value])),p=new Map,f=r.ref(),s=r.ref(),m=r.ref();let g;function u(){const O=new Map,_=t.selectionValues||[];_.length&&_.reduce((V,W)=>(V.set(W,!0),V),O);const k=t.selections||[];k.length&&(O.clear(),k.reduce((V,W)=>(V.set(W[n.value],!0),V),O)),d.value.length||(d.value=l.value.filter(V=>O.has(V[n.value])).map(V=>Object.assign({},V))),l.value.forEach(V=>{const W=V[n.value],P=O.has(W);V.checked=P,P&&p.set(W,V)})}u(),r.watch(()=>t.selections,O=>{d.value=O,u()});const h=r.computed(()=>i.value==="List"),b=r.computed(()=>i.value==="Tree");function C(O){const _=je.cloneDeep(d.value);d.value=O.map(k=>Object.assign({},k)),e.emit("change",d.value,_)}function F(O){e.emit("selectItem",O)}function M(O){e.emit("unSelectItem",O)}function T(){return r.createVNode(Xt,{class:"f-utils-fill",data:l.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:c.value,onSelectionUpdate:C},null)}function v(){return r.createVNode(bn,{ref:m,data:l.value,columns:t.columns,virtualized:t.virtualized,rowOption:t.rowOption,textField:a.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:c.value,onSelectionUpdate:C,onSelectItem:F,onUnSelectItem:M},null)}function w(){return r.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[r.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[r.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[h.value&&T(),b.value&&v()])])])}function y(O){const _=O[n.value];if(_!==null||_!==void 0){d.value=d.value.filter(V=>V[n.value]!==_);const k=p.get(_);k&&(k.checked=!1,p.delete(_)),e.emit("change",d.value),e.emit("removeItem",O)}}r.watch(d,O=>{f.value.updateDataSource(je.cloneDeep(O));const _=g==null?void 0:g[n.value],k=O.find(V=>_===V[n.value]);k?f.value.activeRowById(k[n.value]):(g=null,f.value.activeRowById(""))});function x(O){const _=new Map;d.value.reduce((k,V)=>(k.set(V[n.value],V),k),_),d.value=O.map(k=>_.get(k[n.value])),e.emit("change",d.value)}function S(O){g=O[0],e.emit("activeChange",O)}function I(){var O;return r.createVNode(Xt,{ref:f,columns:t.columns,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:a.value,itemClass:t.selectedItemClass,onChange:x,onRemoveItem:y,onActiveChange:S,checkBeforeRemoveItem:t.checkBeforeRemoveItem},{itemContent:(O=e.slots)!=null&&O.text?_=>{var k;return((k=e.slots)==null?void 0:k.text)&&e.slots.text(_)}:null})}function B(){return r.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[r.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[r.createVNode("div",{class:"selection-pane-title"},[r.createVNode("span",{class:"selection-title"},[Re.LocaleService.getLocaleValue("transfer.selectedStart")]),r.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),r.createVNode("span",{class:"selection-item-title"},[Re.LocaleService.getLocaleValue("transfer.selectedEnd")])]),r.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[I()])])])}const N=r.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":o.value}));return r.onMounted(()=>{s.value&&s.value.parentElement&&getComputedStyle(s.value.parentElement).display==="flex"&&(o.value=!0)}),()=>r.createVNode("div",{ref:s,class:N.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:d.value}):w(),B()])}}),oo=r.defineComponent({name:"FGridFieldEditor",props:wt,emits:["change"],setup(t,e){const n=r.ref(t.viewModelId),i=r.inject("designViewModelUtils"),o=r.inject("useFormSchema"),l=r.inject("schemaService"),a=r.inject("controlCreatorUtils"),d=r.inject("designerContext");let c=t.gridData.columns;const{fieldEditable:p}=t.gridData,f=r.ref(`共 ${(c||[]).length} 项`),s=r.ref([]),m=r.ref([]);let g=[];function u(_,k=!0){if(d.checkCanDeleteControl){const V=g.find(W=>{var P;return((P=W.data)==null?void 0:P.id)===_.id});return d.checkCanDeleteControl(V,k)}return!0}const h={customRowStatus:_=>{const k=_.raw;k.type&&k.type.fields&&k.type.fields.length>0&&(_.disabled=!0),u(k,!1)||(_.disabled=!0)}};function b(){if(s.value=[],!c||c.length===0)return[];const _="[绑定字段不存在,待移除]";c.forEach(k=>{if(k.binding&&k.binding.field){const V=g.find(W=>W.data.id===k.binding.field);V?V.data.$type===Z.FormSchemaEntityField$Type.ComplexField?s.value.push(Object.assign({isInValidBinding:!0},V.data,{name:V.data.name+_})):s.value.push(Object.assign({},V.data)):s.value.push({id:k.binding.field,name:k.title+_,label:k.field,bindingField:null,isInValidBinding:!0})}}),f.value=`共 ${s.value.length} 项`}function C(_,k=[]){return _&&_.forEach(V=>{if(k.push(V),V.children&&C(V.children,k),d.appendIdentifyForNewControl){const W=c.find(P=>{var H;return((H=P.binding)==null?void 0:H.field)===V.data.id});(!W||W[d.identifyForNewControl])&&d.appendIdentifyForNewControl(V)}}),k}function F(){if(o.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const _=l.getTableInfoByViewModelId(n.value);if(_!=null&&_.id){const k=l.rtcAddedTreeNodes.value[_.id];k!=null&&k.length&&(m.value=m.value.concat(k))}}}function M(){m.value=i.getAllFields2TreeByVMId(n.value),F(),g=C(m.value)}function T(_,k,V){if(o.getComponents().find(P=>{let H=o.getControlsInCmpWidthBinding(P.viewModel,_);if(H=H.filter(X=>{var oe;if(X.id===V)return!1;const J=k.type==="visible"?X[k.type]:(oe=X.editor)==null?void 0:oe[k.type];if(J&&J.type==="Expression"&&J.expressionId===k.id)return!0}),H.length)return!0}))return!0}function v(_){_.map(k=>{var W;const V=c.find(P=>{var H;return((H=P.binding)==null?void 0:H.field)===k});if(V&&o.getExpressions().length){const P=o.getExpressions(),H=P.findIndex(X=>X.target===k);H>-1&&((W=P[H].rules)==null||W.map(X=>{var J;switch(X.type){case"visible":case"readonly":case"required":{const oe=X.type==="visible"?V[X.type]:(J=V.editor)==null?void 0:J[X.type];oe&&oe.type==="Expression"&&oe.expressionId===X.id&&(T(k,X,V.id)||(X.needDelete=!0));break}default:T(k,X,V.id)||(X.needDelete=!0)}}),P[H].rules=P[H].rules.filter(X=>!X.needDelete))}})}function w(){const _=i.getDgViewModel(n.value),k=[],V=[],W=s.value;W.forEach(H=>{const X=c==null?void 0:c.find(J=>{if(J.binding&&J.binding.field)return J.binding.field===H.id});if(X)k.push(X);else{const J=a.setGridFieldProperty(t.gridType,H.data,null,p);_.addField(H),k.push(J)}V.push(H.id)});const P=_.fields.filter(H=>!V.includes(H.id));if(P&&P.length>0){const H=P.map(X=>X.id);_.removeField(H),v(H)}W.length!==s.value.length&&(s.value=W),f.value=`共 ${k.length} 项`,e.emit("change",k)}const y={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{w()},rejectCallback:()=>{}};function x(){return t.getLatestGridData?c=t.getLatestGridData().columns:c=t.gridData.columns,M(),b(),Promise.resolve(!0)}function S(_){s.value=[...s.value,_.raw]}function I(_){const k=s.value.findIndex(V=>V.id===_.raw.id);k>-1&&(s.value=[...s.value.slice(0,k),...s.value.slice(k+1)])}function B(_){const k=s.value.findIndex(V=>V.id===_.id);k>-1&&(s.value=[...s.value.slice(0,k),...s.value.slice(k+1)])}function N(_){const k=_[0].__fv_index__,V=s.value.findIndex(P=>P.id===_[0].id),W=s.value.find(P=>P.id===_[0].id);s.value.splice(V,1),s.value.splice(k,0,W)}const O=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(_,k)=>_.data+` [${k.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return r.onMounted(()=>{M()}),()=>r.createVNode(Ai,{"button-behavior":"Modal","modal-options":y,modelValue:f.value,"onUpdate:modelValue":_=>f.value=_,editable:!1,beforeOpen:x},{default:()=>[r.createVNode("div",{class:"f-utils-absolute-all"},[r.createVNode(io,{selections:s.value,"data-source":m.value,rowOption:h,class:"mx-2",columns:O,displayType:"Tree",onRemoveItem:B,onSelectItem:S,onUnSelectItem:I,onActiveChange:N,checkBeforeRemoveItem:u},{text:_=>r.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[_.data.name.data,r.createTextVNode(" ["),_.data.bindingField.data,r.createTextVNode("]")])})])]})}}),ro={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},enableGroup:{description:"",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string"}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},lo={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"object"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!1},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},formatterType:{description:"启用列格式化",type:"string",default:""},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},draggable:{description:"是否允许拖拽",type:"boolean",default:!1},onClickLinkCommand:{description:"超链接事件",type:"string",default:""},columnTemplateType:{description:"列模板类型",type:"string",default:"default"}},required:["id","type"]},St={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},ao=ze.createPropsResolver(St,ro,zt,qt),so=ze.createPropsResolver(St,lo,zt,qt);function co(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function i(c,p=""){return{path:p+c.code,field:c.id,fullPath:c.code}}function o(c,p=""){const f=e.getViewModelById(c);return f?f.states.map(s=>i(s,p)):[]}function l(c){const p=e.getRootViewModelId(),f=o(c);if(c===p)return f;const s=o(p,"root-component.");return[...f,...s]}function a(c){return c.binding&&c.binding.path||c.id||""}function d(){return n&&n.getRenderStates()||[]}return{getVariables:l,getControlName:a,getStateMachines:d}}class Zt{constructor(e){ne(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);ne(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});ne(this,"getExpressionConverter",(e,n)=>({convertFrom:(i,o,l,a)=>{const d=l.getExpressionRuleValue(e,n||o);return d&&d.value||""},convertTo:(i,o,l,a,d)=>{var c;if(o==="dataPicking"&&(l!=null&&l.target)){const p=`${l.target}_dataPicking`;((c=l.rules)==null?void 0:c.some(s=>s.id===p&&s.value))?i.dictPickingExpressionId=p:delete i.dictPickingExpressionId}a.updateExpression(l)}}));this.formSchemaService=e}getExpressionRule(e,n){const i=this.formSchemaService.getExpressions();if(!i)return"";const o=i.find(a=>a.target===e);if(!o)return"";const l=o.rules.find(a=>a.type===n);return l||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const n=this.formSchemaService.getRootViewModelId(),i=this.formSchemaService.getViewModelById(n);if(!i||!i.states||i.states.length===0)return[];const o=[];return i.states.filter(l=>l.category==="remote").forEach(l=>{o.push({key:l.code,name:l.name,description:l.name,category:l.category})}),o}createTreeNode(e,n,i="label"){return{id:e.id,name:e.name,bindingPath:e[i],parents:n,type:"field"}}buildEntityFieldsTreeData(e=null,n){const i=[];return e==null||e.forEach(o=>{var d;const l=this.createTreeNode(o,n);let a=[];(d=o.type)!=null&&d.fields&&(a=this.buildEntityFieldsTreeData(o.type.fields,[...n,o.label])),i.push({data:l,children:a,expanded:!0})}),i}buildChildEntityTreeData(e=null,n){const i=[];return e==null||e.forEach(o=>{var c,p;const l=this.createTreeNode(o,n);l.type="entity";const a=this.buildEntityFieldsTreeData((c=o.type)==null?void 0:c.fields,[...n,o.label]),d=this.buildChildEntityTreeData((p=o.type)==null?void 0:p.entities,[...n,o.label]);d!=null&&d.length&&(a==null||a.push(...d)),i.push({data:l,children:a||[],expanded:!0})}),i}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const n=e[0];if(!(n!=null&&n.type))return[];const i=this.buildEntityFieldsTreeData(n.type.fields,[n.code]),o=this.buildChildEntityTreeData(n.type.entities,[n.code]);return o!=null&&o.length&&(i==null||i.push(...o)),{entityCode:n.code,fields:[{data:this.createTreeNode(n,[],"code"),children:i||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,n,i){const o=i==="Field"?e.binding.field:e.id,l=this.getExpressionRule(o,n),a=this.getEntitiesAndVariables(),d={message:["validate","required","dataPicking"].includes(n)&&l?l.message:"",...a};return l.messageType!=null&&(d.messageType=l.messageType),d}buildRule(e,n,i,o){const{expression:l,message:a,messageType:d}=n,c={id:`${e}_${i}`,type:i,value:l};return(i==="validate"||i==="dataPicking"||i==="required")&&(c.message=a),i==="dataPicking"&&(c.messageType=d),i==="validate"&&o&&(c.elementId=o),c}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,n,i,o){const l=n==="Field"?e.binding.field:e.id,a=this.buildRule(l,i,o,e.type==="form-group"?e.id:"");let c=this.getExpressionData().find(f=>f.targetType===n&&f.target===l);const p=f=>f.value.trim()==="";if(c){const f=c.rules.find(s=>s.id===a.id);if(f)p(a)?c.rules=c.rules.filter(s=>s.id!==a.id):(Object.assign(f,a),o==="validate"&&e.type==="form-group"&&(f.elementId=e.id));else{if(p(a))return null;c.rules=c.rules||[],c.rules.push(a)}}else{if(p(a))return null;c={target:`${l}`,rules:[a],targetType:n}}return c}getExpressionEditorOptions(e,n,i,o){return i.reduce((l,a)=>{var c,p;const d=n==="Field"?(c=e==null?void 0:e.binding)==null?void 0:c.field:e.id;return l[a]={hide:n==="Field"?!!((p=e==null?void 0:e.binding)!=null&&p.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(d),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,n),onSubmitModal:f=>{const s=this.updateExpression(e,n,f,a);if(o){const m=this.buildRule(d,f,a);o(m)}return s}}},l},{})}getExpressionInfo(e,n,i){const o=n==="Field"?e.binding.field:e.id,l=this.getExpressionRule(o,i),a={value:l&&l.value,targetId:o,targetType:n,expressionType:i};return l&&l.message&&(a.message=l.message),a}getExpressionConfig(e,n,i=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,n,i,o)}}}getExpressionOptions(e,n,i){const o=this.getExpressionInfo(e,n,i);return{dialogTitle:`${this.expressionNames[i]}编辑器`,singleExpand:!1,showMessage:i==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,i,n),expressionInfo:o}}}class Jt{constructor(e,n){ne(this,"componentId");ne(this,"viewModelId");ne(this,"eventsEditorUtils");ne(this,"formSchemaUtils");ne(this,"formMetadataConverter");ne(this,"designViewModelUtils");ne(this,"designViewModelField");ne(this,"controlCreatorUtils");ne(this,"designerHostService");ne(this,"designerContext");ne(this,"schemaService",null);ne(this,"metadataService",null);ne(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=e,this.designerHostService=n,this.eventsEditorUtils=n.eventsEditorUtils,this.formSchemaUtils=n.formSchemaUtils,this.formMetadataConverter=n.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=n.designViewModelUtils,this.controlCreatorUtils=n.controlCreatorUtils,this.metadataService=n.metadataService,this.schemaService=n.schemaService,this.designerContext=n.designerContext}getFormDesignerInstance(){var e,n;return(n=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:n.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var i;const n=e.binding&&e.binding.type==="Form"&&e.binding.field;if(n){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(l=>l.id===n)}e.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:z.DgControl[e.type]&&z.DgControl[e.type].name}]}}}}}getAppearanceConfig(e=null,n={},i){const o={title:"外观",description:"Appearance"},l={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in n)l[a]=Object.assign(l[a]||{},n[a]);return{...o,properties:{...l},setPropertyRelates(a,d){if(a){switch(a&&a.propertyID){case"class":case"style":{z.canvasChanged.value++;break}}i&&i(a,e,d)}}}}getPropertyEditorParams(e,n=[],i="visible",o={},l={},a=""){const{getVariables:d,getControlName:c,getStateMachines:p}=co(this.designerHostService),f=this.getRealTargetType(e),s=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],m={type:"property-editor",propertyTypes:s};return s.map(g=>{switch(g){case"Const":Object.assign(m,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":m.expressionConfig=this.getExpressionOptions(e,f,a||i);break;case"StateMachine":m.stateMachines=p();break;case"Variable":Object.assign(m,{controlName:c(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:d(this.viewModelId),parentComponentId:this.componentId==="root-component"?"":"root-component",onBeforeOpenVariables:u=>{u.value=d(this.viewModelId)}},l),this.designerContext.designerMode==="PC_RTC"&&(m.newVariablePrefix="ext_"+m.newVariablePrefix);break}}),m}getVisibleProperty(e,n=""){var l;let i=["Const","Variable","StateMachine","Expression"];return n==="gridFieldEditor"?i=["Const","Expression"]:n==="form-group"&&!((l=e.binding)!=null&&l.field)&&(i=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,i,"visible")}}}getBehaviorConfig(e,n="",i={},o){const l={title:"行为",description:""},a=this.getVisibleProperty(e,n);for(const c in i)a[c]=Object.assign(a[c]||{},i[c]);const d=this;return{...l,properties:{...a},setPropertyRelates(c,p){if(c){switch(c.propertyID){case"disabled":case"readonly":case"visible":d.afterMutilEditorChanged(e,c);break}o&&o(c,p)}}}}afterMutilEditorChanged(e,n){this.addNewVariableToViewModel(n,this.viewModelId),this.updateExpressionValue(n),this.clearExpression(n,e)}updateElementByParentContainer(e,n){const i=n&&n.parent&&n.parent.schema;if(!i)return;const o=i.contents.findIndex(a=>a.id===e),l=je.cloneDeep(i.contents[o]);i.contents.splice(o,1),i.contents.splice(o,0,l),z.refreshCanvas()}addNewVariableToViewModel(e,n){const i=e.propertyValue;if(!(i&&typeof i=="object")||!(i.type==="Variable"&&i.isNewVariable))return;const a={id:i.field,category:"locale",code:i.fullPath,name:i.fullPath,type:i.newVariableType||"String",isRtcVariable:this.designerContext.designerMode==="PC_RTC"?!0:void 0};delete i.newVariableType,delete i.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById("root-viewmodel").states.push(a)}updateExpressionValue(e){const n=e.propertyValue;if(!((n&&n.type)==="Expression"&&n.expressionInfo))return;const{expressionId:l,expressionInfo:a}=n,{targetId:d,targetType:c,expressionType:p,value:f,message:s}=a,m=this.formSchemaUtils.getModule();m.expressions=m.expressions||[];const{expressions:g}=m;let u=g.find(b=>b.target===d);u||(u={target:d,rules:[],targetType:c},g.push(u));const h=u.rules.find(b=>b.type===p);if(h)h.value=f,h.message=s;else{const b={id:l,type:p,value:f,message:s};u.rules.push(b)}delete n.expressionInfo}clearExpression(e,n){const i=e.propertyValue;if(i&&i.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),d=n.binding?n.binding.field:n.id,c=a.find(p=>p.target===d);!c||!c.rules||(c.rules=c.rules.filter(p=>p.type!==l))}getExpressionOptions(e,n,i){return new Zt(this.formSchemaUtils).getExpressionOptions(e,n,i)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item","drawer-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const n={};return n[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:i=>{var o;((o=i.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(i)}}},n}}const Qt=[{key:"none",value:"无"},{key:"cellNumber",value:"手机号"},{key:"tel",value:"座机号/传真号"},{key:"telOrCell",value:"手机号/座机号/传真号"},{key:"postCode",value:"邮编"},{key:"email",value:"电子邮箱"},{key:"idCode",value:"身份证号"},{key:"carCode",value:"车牌号"},{key:"subjectCode",value:"10位数字会计科目代码"},{key:"custom",value:"自定义"}];function uo(t){switch(t){case"none":return"";case"cellNumber":return"^1[0-9]{10}$";case"tel":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$";case"telOrCell":return"^(0[0-9]{2,3}\\-)?([2-9][0-9]{6,7})+(\\-[0-9]{1,4})?$|^1[0-9]{10}$";case"postCode":return"^[1-9]\\d{5}(?!\\d)$";case"workCode":return"^\\d{8}$";case"email":return"^[A-Za-z\\d]+([-_.][A-Za-z\\d]+)*@([A-Za-z\\d]+[-.])+[A-Za-z]{2,5}$";case"idCode":return"^[1-9]\\d{5}[1-9]\\d{3}((0[1-9])|(1[0-2]))(0[1-9]|([1|2][0-9])|3[0-1])((\\d{4})|\\d{3}X)$";case"carCode":return"^([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][·\\s]?[A-HJ-NP-Z0-9]{4,5}[挂学警港澳]?|粤[Z港澳][·\\s]?[港澳][0-9A-HJ-NP-Z]{4}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?([DF][0-9A-HJ-NP-Z][0-9]{4}|[0-9]{5}[DF])[挂港澳]?|[使领][0-9]{3}[·\\s]?[0-9]{3}|临[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z][·\\s]?[0-9A-Z]{4,5}|[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-Z]?[·\\s]?警[0-9A-Z]{4}|[军海空][A-Z][·\\s]?[0-9]{4,5}|WJ(?:[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]|\\d{2})[·\\s]?[0-9A-Z]{4,5})$";case"carCodeNew":return"^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF])|([DF][A-HJ-NP-Z0-9][0-9]{4}))$";case"subjectCode":return"^\\d{10}$"}return""}function fo(t){var e;return"请输入正确的"+((e=Qt.find(n=>n.key===t))==null?void 0:e.value)}const mo={convertTo:(t,e,n,i)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation.type=n,t.editor.formatValidation.expression=uo(n),t.editor.formatValidation.message=fo(n)},convertFrom:(t,e,n)=>t.editor.formatValidation?e==="type"?t.editor.formatValidation[e]||"none":t.editor.formatValidation[e]:"none"},Kt={convertTo:(t,e,n,i)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation[e]=n},convertFrom:(t,e,n)=>t.editor.formatValidation?t.editor.formatValidation[e]:t.editor[e]};class po extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getPropertyConfig(e,n){return super.getPropertyConfig(e,n),this.propertyConfig.categories.formatValidation=this.getFormatValidation(e),this.propertyConfig}getEditorProperties(e){var i,o;let n;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=l==null?void 0:l.schemaField)!=null&&o.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n,needValid:!0}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getGridFieldEdtiorProperties(e){var i,o;let n;if(((i=e==null?void 0:e.binding)==null?void 0:i.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(o=l==null?void 0:l.schemaField)!=null&&o.type&&(n=l.schemaField.type.length)}return this.getComponentConfig(e,{},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:n}},showType:{description:"指定是文本框还是密码框",title:"展示类型",type:"enum",editor:{type:"combo-list",data:[{id:"text",name:"文本框"},{id:"password",name:"密码框"}]},refreshPanelAfterChanged:!0,defaultValue:"text"},enableViewPassword:{description:"",title:"能否查看密码",visible:e.editor.showType==="password",type:"boolean"}})}getFormatValidation(e){var i,o,l,a;const n={title:"输入格式校验",description:"输入校验",hide:!((i=e.binding)!=null&&i.field),properties:{type:{title:"格式类型",type:"enum",description:"格式类型",defaultValue:"",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:Qt},refreshPanelAfterChanged:!0,$converter:mo,parentPropertyID:"formatValidation"}}};return(o=e.editor.formatValidation)!=null&&o.type&&((l=e.editor.formatValidation)==null?void 0:l.type)!=="none"&&(n.properties.message={title:"输入错误提示",type:"string",description:"输入错误提示",$converter:Kt,parentPropertyID:"formatValidation"}),((a=e.editor.formatValidation)==null?void 0:a.type)==="custom"&&(n.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:Kt,parentPropertyID:"formatValidation"}),n}}const lt=class lt{static getEditorTypesByMDataType(e,n=!1,i=""){if(n)return[{key:z.DgControl["language-textbox"].type,value:z.DgControl["language-textbox"].name}];let o=lt.fieldControlTypeMapping[e];if(i==="data-grid-column"&&(o!=null&&o.length)){const l=[z.DgControl["check-group"].type,z.DgControl["radio-group"].type,z.DgControl.image.type,z.DgControl["rich-text-editor"].type];o=o.filter(a=>!l.includes(a.key))}return o}static getAllInputTypes(){const e=[];for(const n in lt.fieldControlTypeMapping)lt.fieldControlTypeMapping[n].forEach(i=>{e.find(o=>o.key===i.key&&o.value===i.value)||e.push({key:i.key,value:i.value})});return e}static mappingDomPropAndSchemaProp(e,n){var l;const i=(l=e.editor)==null?void 0:l.type,o=[];return(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&n&&n.categoryId&&n.categoryId.indexOf("gridFieldEditor")<0&&o.push({domField:"title",schemaField:"name"}),o.push({domField:"label",schemaField:"name"}),o.push({domField:"editor.required",schemaField:"require"}),o.push({domField:"editor.readonly",schemaField:"readonly"}),(i===z.DgControl["input-group"].type||i===z.DgControl.textarea.type||i===z.DgControl["number-spinner"].type)&&o.push({domField:"editor.maxLength",schemaField:"type.length"}),i===z.DgControl["number-spinner"].type&&o.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.precision",schemaField:"type.precision"}),(i===z.DgControl["combo-list"].type||i===z.DgControl["radio-group"].type)&&o.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.data",schemaField:"type.enumValues"}),i===z.DgControl["date-picker"].type&&(o.push({domField:"editor.displayFormat",schemaField:"editor.format"}),o.push({domField:"editor.fieldType",schemaField:"type.name"})),i===z.DgControl["number-spinner"].type&&(o.push({domField:"editor.max",schemaField:"editor.maxValue"}),o.push({domField:"editor.min",schemaField:"editor.minValue"})),i===z.DgControl.lookup.type&&(o.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),o.push({domField:"editor.valueField",schemaField:"editor.valueField"}),o.push({domField:"editor.textField",schemaField:"editor.textField"}),o.push({domField:"editor.displayType",schemaField:"editor.displayType"}),o.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),o.push({domField:"editor.helpId",schemaField:"editor.helpId"})),o.push({domField:"path",schemaField:"bindingPath"}),o.push({domField:"binding.path",schemaField:"bindingField"}),o.push({domField:"binding.fullPath",schemaField:"path"}),(e.type===z.DgControl["data-grid-column"].type||e.type===z.DgControl["tree-grid-column"].type)&&o.push({domField:"field",schemaField:"bindingPath"}),o}};ne(lt,"fieldControlTypeMapping",{String:[{key:z.DgControl["input-group"].type,value:z.DgControl["input-group"].name},{key:z.DgControl.lookup.type,value:z.DgControl.lookup.name},{key:z.DgControl.image.type,value:z.DgControl.image.name},{key:z.DgControl["date-picker"].type,value:z.DgControl["date-picker"].name},{key:z.DgControl.switch.type,value:z.DgControl.switch.name},{key:z.DgControl["check-box"].type,value:z.DgControl["check-box"].name},{key:z.DgControl["check-group"].type,value:z.DgControl["check-group"].name},{key:z.DgControl["radio-group"].type,value:z.DgControl["radio-group"].name},{key:z.DgControl["combo-list"].type,value:z.DgControl["combo-list"].name},{key:z.DgControl.textarea.type,value:z.DgControl.textarea.name},{key:z.DgControl["time-picker"].type,value:z.DgControl["time-picker"].name}],Text:[{key:z.DgControl.textarea.type,value:z.DgControl.textarea.name},{key:z.DgControl.lookup.type,value:z.DgControl.lookup.name},{key:z.DgControl.image.type,value:z.DgControl.image.name},{key:z.DgControl["rich-text-editor"].type,value:z.DgControl["rich-text-editor"].name}],Decimal:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name}],Integer:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name}],Number:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name},{key:z.DgControl.switch.type,value:z.DgControl.switch.name},{key:z.DgControl["check-box"].type,value:z.DgControl["check-box"].name}],BigNumber:[{key:z.DgControl["number-spinner"].type,value:z.DgControl["number-spinner"].name}],Date:[{key:z.DgControl["date-picker"].type,value:z.DgControl["date-picker"].name}],DateTime:[{key:z.DgControl["date-picker"].type,value:z.DgControl["date-picker"].name}],Boolean:[{key:z.DgControl.switch.type,value:z.DgControl.switch.name},{key:z.DgControl["check-box"].type,value:z.DgControl["check-box"].name}],Enum:[{key:z.DgControl["combo-list"].type,value:z.DgControl["combo-list"].name},{key:z.DgControl["radio-group"].type,value:z.DgControl["radio-group"].name}],Object:[{key:z.DgControl.lookup.type,value:z.DgControl.lookup.name},{key:z.DgControl["combo-list"].type,value:z.DgControl["combo-list"].name},{key:z.DgControl["radio-group"].type,value:z.DgControl["radio-group"].name}]});let ct=lt;var rt=(t=>(t.Form="Form",t.Variable="Variable",t))(rt||{});class ho{constructor(){ne(this,"label","");ne(this,"id","");ne(this,"columnInSM",12);ne(this,"columnInMD",6);ne(this,"columnInLG",3);ne(this,"columnInEL",2);ne(this,"displayWidthInSM",1);ne(this,"displayWidthInMD",1);ne(this,"displayWidthInLG",1);ne(this,"displayWidthInEL",1);ne(this,"displayColumnCountAtBreakPoint","md");ne(this,"tagRow",0);ne(this,"showTopBorder",0);ne(this,"group",1);ne(this,"isSupportedClass",!0);ne(this,"fieldSetId","")}}function go(t){let e,n;const i=new Map;let o=[];function l(f,s){const g=f.split(" ").filter(F=>F.startsWith("col-"));if(g.length===0){s.isSupportedClass=!1;return}let u=g.find(F=>/^col-([1-9]|10|11|12)$/.test(F)),h=g.find(F=>/^col-md-([1-9]|10|11|12)$/.test(F)),b=g.find(F=>/^col-xl-([1-9]|10|11|12)$/.test(F)),C=g.find(F=>/^col-el-([1-9]|10|11|12)$/.test(F));u=u||"col-12",s.columnInSM=parseInt(u.replace("col-",""),10),s.displayWidthInSM=s.columnInSM/12,s.displayWidthInSM!==1&&(s.isSupportedClass=!1),h=h||"col-md-"+s.columnInSM,s.columnInMD=parseInt(h.replace("col-md-",""),10),s.displayWidthInMD=s.columnInMD/6,[1,2].includes(s.displayWidthInMD)||(s.isSupportedClass=!1),b=b||"col-xl-"+s.columnInMD,s.columnInLG=parseInt(b.replace("col-xl-",""),10),s.displayWidthInLG=s.columnInLG/3,[1,2,3,4].includes(s.displayWidthInLG)||(s.isSupportedClass=!1),C=C||"col-el-"+s.columnInLG,s.columnInEL=parseInt(C.replace("col-el-",""),10),s.displayWidthInEL=s.columnInEL/2,[1,2,3,4,5,6].includes(s.displayWidthInEL)||(s.isSupportedClass=!1)}function a(f,s,m,g=!1){let u=!1;f.contents.forEach(h=>{if(h.type==="fieldset"){m+=1,a(h,s,m,!0),u=!0;return}u&&(m+=1,u=!1);const b=h.appearance&&h.appearance.class,C=new ho;b?l(b,C):C.isSupportedClass=!1,C.label=h.label||h.id,C.id=h.id,C.group=m,g&&(C.fieldSetId=f.id),n===h.id&&(e=m),i.set(h.id,h),s.push(C)})}function d(f){const s=t.getComponentById(f);if(!s||!s.componentType||!s.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const m=t.selectNode(s,g=>g.type===z.DgControl["response-form"].type);return!m||!m.contents||m.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:m}}function c(f,s){s=s||f.id;const{result:m,message:g,formNode:u}=d(s);if(!m)return{result:m,message:g};n=f.id,o=[],i.clear();const h=u.contents[0].type===z.DgControl.fieldset.type?0:1;a(u,o,h);const b=o.find(F=>!F.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:b?"customize":"standard"},importData:o}}function p(f,s){s=s;const{result:m,formNode:g}=d(s);if(!m)return"";const u=[];return f.forEach(h=>{var F;const b=i.get(h.id),C=b.appearance&&b.appearance.class;if(C){const T=C.split(" ").filter(I=>!I.startsWith("col-")),v="col-"+h.columnInSM,w="col-md-"+h.columnInMD,y="col-xl-"+h.columnInLG,x="col-el-"+h.columnInEL,S=[v,w,y,x].concat(T);b.appearance.class=S.join(" ")}if(h.fieldSetId){const M=g.contents.find(v=>v.id===h.fieldSetId),T=u.find(v=>v.id===h.fieldSetId);T?(F=T.contents)==null||F.push(b):(u.push(M),M.contents=[b])}else u.push(b)}),g.contents=u,g.id}return{checkCanFindFormNode:d,checkCanOpenLayoutEditor:c,changeFormControlsByResponseLayoutConfig:p,getResonseFormLayoutConfig:a}}class pt extends Jt{constructor(n,i){super(n,i);ne(this,"responseLayoutEditorFunction");ne(this,"bindingVarible");ne(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=go(this.formSchemaUtils)}getCommonPropertyConfig(n,i,o="Card"){this.propertyConfig.categories.basic=this.getBasicProperties(n,i,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n,i),this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"form-group")}getPropertyConfig(n,i){return this.getCommonPropertyConfig(n,i,"Card"),this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressions=this.getExpressionConfig(n,"Field"),this.propertyConfig.categories.eventsEditor=this.getEventPropertyConfig(n),this.propertyConfig}getGridFieldEdtiorPropConfig(n,i){return this.propertyConfig.categories={},this.getCommonPropertyConfig(n,i,"Grid"),this.getGridFieldEdtiorProperties?this.propertyConfig.categories.editor=this.getGridFieldEdtiorProperties(n):this.propertyConfig.categories.editor=this.getEditorProperties(n),this.propertyConfig.categories.expressons=this.getExpressionConfig(n,"Field"),this.propertyConfig.categories}getBasicProperties(n,i,o="Card"){var p;const l=this;this.setDesignViewModelField(n);const{canChangeControlType:a,editorTypeList:d}=this.getAvailableEditorType(n),c={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",editable:!1,data:d,readonly:!a}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},showLabelType:{description:"标签显示方式:1、显示:显示标签 2、占位:保留标签空间,但不显示文本 3、不显示:不显示标签",title:"标签显示",type:"enum",editor:{data:[{id:"visible",name:"显示"},{id:"reserve-space",name:"占位"},{id:"none",name:"不显示"}]},defaultValue:((p=n.editor)==null?void 0:p.type)==="image"?"none":"visible"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:n,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0,readonly:this.formSchemaUtils.designerMode==="PC_RTC"&&!n.isRtcControl}},setPropertyRelates(f,s,m){if(f)switch(f&&f.propertyID){case"type":{l.changeControlType(n,f,i);break}case"label":{f.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(n,f,m);break}}}};return o.toLocaleLowerCase()!=="card"&&delete c.properties.showLabelType,c}checkCanChangeControlType(n,i){if(!n.binding)return!1;if(n.binding.type==="Variable"){if(this.bindingVarible=this.formSchemaUtils.getVariableById(n.binding.field),!this.bindingVarible)return!1}else if(!this.designViewModelField||this.designViewModelField.$type!==Z.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(n){var l,a;const i=this.checkCanChangeControlType(n,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=z.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===Z.FormSchemaEntityField$Type.SimpleField?o=ct.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(o=ct.getEditorTypesByMDataType(this.bindingVarible.type,!!((a=this.designViewModelField)!=null&&a.multiLanguage))),{canChangeControlType:i,editorTypeList:o}}changeBindingField(n,i,o){i.needRefreshEntityTree=!0}getAppearanceProperties(n,i){const o=this;return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的内联样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},fill:{title:"填充宽度",description:"启用后,控件占满父容器宽度",type:"boolean",parentPropertyID:"appearance"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",beforeOpen:()=>o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(n,o.componentId)}}},setPropertyRelates(l,a){if(l)switch(l&&l.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,o.componentId||n.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(n.id,i),delete n.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(l.propertyValue,n.id,this.componentId),z.canvasChanged.value++;break;case"style":{z.canvasChanged.value++;break}}}}}getEditorProperties(n){return this.getComponentConfig(n)}changeControlType(n,i,o){const l=i.propertyValue,a=o&&o.parent&&o.parent.schema;if(!a)return;const d=a.contents.findIndex(f=>f.id===n.id);if(d===-1)return;const c=a.contents[d];let p;if(this.designViewModelField){const m=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(u=>u.id===this.designViewModelField.id).fieldSchema||{};m.editor||(m.editor={}),m.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,m,!1),p=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}p||(p=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(p,{id:c.id,appearance:c.appearance,size:c.size,label:c.label,binding:c.binding}),Object.prototype.hasOwnProperty.call(c,"visible")&&Object.assign(p,{visible:c.visible}),c.editor&&["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(c.editor,f)&&(p.editor[f]=c.editor[f])}),o!=null&&o.updateContextSchema?o.updateContextSchema(p):(o.schema=Object.assign(c,p),Object.assign(n,p)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(f=>f.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(f=>f.classList.remove("dgComponentFocused")),z.canvasChanged.value++,r.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(n,i={},o={},l){var m,g;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},i),d=(m=n.binding)!=null&&m.field?[]:["Const","Variable","StateMachine"],c=this.getPropertyEditorParams(n,d,"readonly"),p=this.getPropertyEditorParams(n,d,"required"),f={readonly:{description:"",title:"只读",editor:c},required:{description:"",title:"必填",type:"boolean",editor:p,visible:!!((g=n.binding)!=null&&g.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const u in o)f[u]=Object.assign(f[u]||{},o[u]);const s=this;return{...a,properties:{...f},setPropertyRelates(u,h){if(u){switch(u.propertyID){case"readonly":case"required":s.afterMutilEditorChanged(n,u);break}l&&l.bind(s)(u,n,h)}}}}updateUnifiedLayoutAfterControlChanged(n,i,o){const l=n.split(" ");let a=l.find(s=>/^col-([1-9]|10|11|12)$/.test(s)),d=l.find(s=>/^col-md-([1-9]|10|11|12)$/.test(s)),c=l.find(s=>/^col-xl-([1-9]|10|11|12)$/.test(s)),p=l.find(s=>/^col-el-([1-9]|10|11|12)$/.test(s));a=a||"col-12",d=d||"col-md-"+a.replace("col-",""),c=c||"col-xl-"+d.replace("col-md-",""),p=p||"col-el-"+c.replace("col-xl-","");const f={id:i,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(d.replace("col-md-",""),10),columnInLG:parseInt(c.replace("col-xl-",""),10),columnInEL:parseInt(p.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,f)}updateUnifiedLayoutAfterResponseLayoutChanged(n,i){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(n);if(!o||!o.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,l,1),i){const u=l.find(h=>h.id===i.id);Object.assign(u||{},i)}const a=l.map(u=>u.columnInSM),d=l.map(u=>u.columnInMD),c=l.map(u=>u.columnInLG),p=l.map(u=>u.columnInEL),f=this.checkIsUniqueColumn(a)?a[0]:null,s=this.checkIsUniqueColumn(d)?d[0]:null,m=this.checkIsUniqueColumn(c)?c[0]:null,g=this.checkIsUniqueColumn(p)?p[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:s,uniqueColClassInLG:m,uniqueColClassInEL:g})}checkIsUniqueColumn(n){const i=new Set(n);return Array.from(i).length===1}getItemCollectionEditor(n,i,o){return i=i||"value",o=o||"name",{editor:{columns:[{field:i,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:i,nameField:o,requiredFields:[i,o],uniqueFields:[i,o],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===Z.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(n,i){n.binding&&n.binding.type===rt.Form&&n.binding.field?(i.find(o=>o.label==="fieldValueChanging"),i.find(o=>o.label==="fieldValueChanged"),this.designViewModelField&&(n.fieldValueChanging=this.designViewModelField.valueChanging,n.fieldValueChanged=this.designViewModelField.valueChanged)):i=i.filter(o=>o.label!=="fieldValueChanging"&&o.label!=="fieldValueChanged")}getControlMethodType(n){if(!n.binding)return n.type;switch(n.binding.type){case rt.Form:return n.binding.path||n.type;case rt.Variable:return n.binding.fullPath||n.type}return n.type}getEventPropertyConfig(n,i="card",o,l){const a=this;let d=[];if(o&&(d=d.concat(o)),d.length===0)return{title:"事件",hideTitle:!0,properties:{},tabId:"commands",tabName:"交互",hide:!0};this.appendFieldValueChangeEvents(n,d);const c=a.eventsEditorUtils.formProperties(n,a.viewModelId,d);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(c),tabId:"commands",tabName:"交互",setPropertyRelates(s,m){const g=s.propertyValue;delete n[a.viewModelId],g&&(g.setPropertyRelates=this.setPropertyRelates,g.controlInfo={type:a.getControlMethodType(n),name:n.title},a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,g.events,g)),l&&l(s,m,g);const u=a.designViewModelUtils.getDgViewModel(a.viewModelId);u&&a.designViewModelField&&u.changeField(a.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged})}}}getExpressionConfig(n,i,o=["compute","dependency","validate"],l){return new Zt(this.formSchemaUtils).getExpressionConfig(n,i,o,l)}getBindingDataType(){return this.designViewModelField?this.designViewModelField.type.name==="Number"?"number":this.designViewModelField.type.name==="String"?"string":"boolean":"boolean"}getEditor(){return this.getBindingDataType()==="number"?this.numberEditorOptions:{}}updatePropertyValue(n,i,o){var l;n.editor[i]!==o?n.editor[i]=o:(l=this.getFormDesignerInstance())==null||l.reloadPropertyPanel()}setBooleanValue(n,i,o){let l=o;this.getBindingDataType()==="string"&&(l=(l||"").trim()||(i==="trueValue"?"true":"false"));const d=i==="trueValue"?"falseValue":"trueValue";n.editor[d]===l&&(l=l+1),this.updatePropertyValue(n,i,l)}getBooleanValueConverter(){return{convertFrom:(n,i)=>n.editor[i],convertTo:(n,i,o)=>{this.setBooleanValue(n,i,o)}}}}class yo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class vo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){const n=this;return n.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},(o,l)=>{if(o)switch(o.propertyID){case"dataSourceType":{o.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...o.propertyValue]);break}}})}}class bo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,i;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((n=this.designViewModelField)==null?void 0:n.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;if(e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)){let a,d;o.type.name===Z.FormSchemaEntityFieldTypeName.String&&(a="true",d="false"),o.type.name===Z.FormSchemaEntityFieldTypeName.Number&&(a=1,d=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&d!==void 0&&(e.editor.falseValue=d)}}}const en={convertFrom:(t,e)=>(t.editor.remote||{})[e],convertTo:(t,e,n)=>{t.editor.remote=t.editor.remote||{},t.editor.remote[e]=n}};class Co extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getCommonEditorProperties(e){var n,i,o;return{viewType:{visible:!!((n=e.editor)!=null&&n.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((i=e.editor)!=null&&i.multiSelect)&&((o=e.editor)==null?void 0:o.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(e){var c,p,f,s,m,g,u,h,b,C,F,M;const n=this;let i="";if(((c=e==null?void 0:e.binding)==null?void 0:c.type)==="Form"){const T=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(p=T==null?void 0:T.schemaField)!=null&&p.type&&(i=T.schemaField.type.$type)}const o=this.getPropertyEditorParams(e,["Variable"]),l=!e.editor.dataSourceType||e.editor.dataSourceType==="static",a=((s=(f=this.designViewModelField)==null?void 0:f.type)==null?void 0:s.$type)===Z.FormSchemaEntityFieldType$Type.StringType&&((m=e.editor)==null?void 0:m.type)==="combo-list"&&((g=e.editor)==null?void 0:g.dataSourceType)==="dynamic"&&!((h=(u=e.editor)==null?void 0:u.remote)!=null&&h.url)&&!((b=e.editor)!=null&&b.multiSelect);return n.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},dataSource:{description:"动态数据源绑定变量",visible:a,title:"数据",editor:{...o,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:l,...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic"&&!((C=e.editor)!=null&&C.dataSource),$converter:en,description:"",title:"服务端API",type:"string",refreshPanelAfterChanged:!0},body:{visible:!1,$converter:en,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!i||i==="StringType",readonly:((F=e.editor)==null?void 0:F.dataSourceType)==="dynamic"&&!!((M=e.editor)!=null&&M.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(T,v)=>{if(!T||!v.editor)return;const w=this;switch(T.propertyID){case"dataSourceType":{T.propertyValue==="static"?(v.editor.valueField="value",v.editor.textField="name",v.editor.remote=null):T.propertyValue==="dynamic"&&(v.editor.remote={method:"GET"},v.editor.valueField="value",v.editor.textField="name");break}case"data":{!w.checkEnumDataReadonly(v)&&v.formatter&&(v.formatter.data=[...T.propertyValue]);break}case"viewType":{T.propertyValue==="tag"&&(v.editor.editable=!1);break}case"dataSource":w.afterMutilEditorChanged(v,T)}})}getGridFieldEdtiorProperties(e,n){var c,p,f,s,m,g,u,h,b,C,F,M,T;const i=this;let o="";if(((c=e==null?void 0:e.binding)==null?void 0:c.type)==="Form"){const v=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(p=v==null?void 0:v.schemaField)!=null&&p.type&&(o=v.schemaField.type.$type)}const l=((s=(f=this.designViewModelField)==null?void 0:f.type)==null?void 0:s.$type)===Z.FormSchemaEntityFieldType$Type.StringType&&((m=e.editor)==null?void 0:m.type)==="combo-list"&&((g=e.editor)==null?void 0:g.dataSourceType)==="dynamic"&&!((u=e.editor)!=null&&u.multiSelect),a=this.getPropertyEditorParams(e,["Variable"]);return i.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},dataSource:{description:"动态数据源绑定变量",visible:l,title:"数据",editor:{...a,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!((h=e.editor)!=null&&h.dataSourceType)||((b=e.editor)==null?void 0:b.dataSourceType)==="static",...i.getItemCollectionEditor(e,(C=e.editor)==null?void 0:C.valueField,(F=e.editor)==null?void 0:F.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:o==="StringType",readonly:((M=e.editor)==null?void 0:M.dataSourceType)==="dynamic"&&!!((T=e.editor)!=null&&T.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(e)},(v,w)=>{if(!v||!w.editor)return;const y=this;switch(v.propertyID){case"dataSourceType":{v.propertyValue==="static"?(w.editor.valueField="value",w.editor.textField="name",w.editor.remote=null):v.propertyValue==="dynamic"&&(w.editor.remote={method:"GET"},w.editor.valueField="value",w.editor.textField="name");break}case"data":{!y.checkEnumDataReadonly(w)&&w.formatter&&(w.formatter.data=[...v.propertyValue]);break}case"dataSource":y.afterMutilEditorChanged(w,v)}})}setEditorPropertyRelates(e,n,i){if(!e||!n.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name",n.editor.remote={});break}case"data":{!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.$type)===Z.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}getEventPropertyConfig(e,n="card",i,o){const l=this;let a=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}];i&&(a=a.concat(i)),this.appendFieldValueChangeEvents(e,a);const d=l.eventsEditorUtils.formProperties(e,l.viewModelId,a);return{title:"事件",hideTitle:!0,properties:l.createBaseEventProperty(d),tabId:"commands",tabName:"交互",setPropertyRelates(f,s){const m=f.propertyValue;delete e[l.viewModelId],m&&(m.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(e,l.viewModelId,m.events,m)),o&&o(f,s,m);const g=l.designViewModelUtils.getDgViewModel(l.viewModelId);g&&l.designViewModelField&&g.changeField(l.designViewModelField.id,{valueChanging:e.fieldValueChanging,valueChanged:e.fieldValueChanged}),e.editor.beforeOpen!==e.beforeOpen&&(e.editor.beforeOpen=e.beforeOpen),e.editor.onChange!==e.onChange&&(e.editor.onChange=e.onChange),e.editor.onClear!==e.onClear&&(e.editor.onClear=e.onClear)}}}}class wo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{resizable:{description:"",title:"拖拽调整大小",type:"boolean"},autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}getGridFieldEdtiorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}}function So(){let t="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:t}=window.top.localStorage);const e=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],n=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],i=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],o=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],l=[{id:"yyyy",name:"yyyy"}];return t==="zh-CHS"&&(e.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),n.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),t==="zh-CHT"&&(e.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),n.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),o.push({id:"MM月dd日",name:"MM月dd日"}),l.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:i,yMdFormats:n,mdFormats:o,yFormats:l}}const xo=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],Mo=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"}],Fo=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],To=[{id:"yyyy",name:"yyyy"}],{timeFormats:_o,yMdFormats:ko,yMFormats:tn,mdFormats:Vo,yFormats:xt}=So();class Eo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getDatePickerModes(e){return e==="Date"||e==="DateTime"?[{label:"年月日",value:"day"}]:[{label:"年月日",value:"day"},{label:"年月",value:"month"},{label:"年",value:"year"}]}checkMaxMinDate(e){const{minDate:n,maxDate:i,showTime:o}=(e==null?void 0:e.editor)||{},{parseToDate:l,formatTo:a}=Z.useDateFormat();if(i){const d=l(i,"yyyy-MM-dd HH:mm:ss");d&&(e.editor.maxDate=a(d,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}if(n){const d=l(n,"yyyy-MM-dd HH:mm:ss");d&&(e.editor.minDate=a(d,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}}getEditorProperties(e){var d,c,p,f,s,m,g,u,h,b,C,F,M,T,v;const n=this.getDateFormatOptions(e==null?void 0:e.editor),i=this.getValueFormatOptions(e==null?void 0:e.editor),o=(c=(d=this.designViewModelField)==null?void 0:d.type)==null?void 0:c.name,l=this.getDatePickerModes(o),a=this.getExtremeDateFormat(e);return(p=e==null?void 0:e.editor)!=null&&p.selectMode||(e.editor.selectMode="day"),this.checkMaxMinDate(e),this.getComponentConfig(e,{type:"date-picker"},{enableClear:{description:"是否显示清除按钮",title:"启用清除",type:"boolean"},selectMode:{description:"",title:"显示类型",type:"string",refreshPanelAfterChanged:!0,editor:{type:"combo-list",idField:"value",textField:"label",valueField:"value",data:l}},showWeekNumber:{description:"",title:"显示第几周",type:"boolean",visible:((f=e==null?void 0:e.editor)==null?void 0:f.selectMode)==="day"},firstDayOfTheWeek:{description:"",title:"每周起始日",type:"string",editor:{type:"combo-list",idField:"value",valueField:"value",textField:"label",data:[{label:"星期日",value:"Sun"},{label:"星期一",value:"Mon"}]},visible:((s=e==null?void 0:e.editor)==null?void 0:s.selectMode)==="day"},showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((m=e==null?void 0:e.editor)==null?void 0:m.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((g=e==null?void 0:e.editor)==null?void 0:g.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:n}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:i},visible:((u=e==null?void 0:e.editor)==null?void 0:u.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((h=e==null?void 0:e.editor)==null?void 0:h.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:"1900-01-01 00:00:00",maxDate:((b=e==null?void 0:e.editor)==null?void 0:b.maxDate)||"9999-12-31 23:59:59",showTime:(C=e==null?void 0:e.editor)==null?void 0:C.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((F=e==null?void 0:e.editor)==null?void 0:F.selectMode)||"day",displayFormat:a,valueFormat:a,minDate:((M=e==null?void 0:e.editor)==null?void 0:M.minDate)||"1900-01-01 00:00:00",maxDate:"9999-12-31 23:59:59",showTime:(T=e==null?void 0:e.editor)==null?void 0:T.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean",visible:((v=e==null?void 0:e.editor)==null?void 0:v.selectMode)==="day"}},this.setEditorPropertyRelates)}getExtremeDateFormat(e){var n,i,o,l;if(((n=e==null?void 0:e.editor)==null?void 0:n.selectMode)==="day")return"yyyy-MM-dd"+((i=e==null?void 0:e.editor)!=null&&i.showTime?" HH:mm:ss":"");if(((o=e==null?void 0:e.editor)==null?void 0:o.selectMode)==="month")return"yyyy-MM";if(((l=e==null?void 0:e.editor)==null?void 0:l.selectMode)==="year")return"yyyy"}getEventPropertyConfig(e){const n=this,i=[{label:"onDatePicked",name:"日期选择后事件"}],o=n.eventsEditorUtils.formProperties(e,n.viewModelId,i);return{title:"事件",hideTitle:!0,properties:n.createBaseEventProperty(o),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,d){const c=a.propertyValue;delete d[n.viewModelId],c&&n.eventsEditorUtils.saveRelatedParameters(d,n.viewModelId,c.events,c);const p=n.designViewModelUtils.getDgViewModel(n.viewModelId);p&&n.designViewModelField&&p.changeField(n.designViewModelField.id,{valueChanging:d.fieldValueChanging,valueChanged:d.fieldValueChanged})}}}setEditorPropertyRelates(e,n,i){if(!(!e||!n.editor))switch(e.propertyID){case"showTime":{const o=n.editor;e.propertyValue?(o.displayFormat="yyyy-MM-dd HH:mm:ss",o.valueFormat="yyyy-MM-dd HH:mm:ss"):(o.displayFormat="yyyy-MM-dd",o.valueFormat="yyyy-MM-dd"),n.formatter&&(n.formatter.dateFormat=o.displayFormat);break}case"displayFormat":{n.formatter&&(n.formatter.dateFormat=e.propertyValue);break}case"selectMode":{e.propertyValue!=="day"?(n.editor.showWeekNumber=!1,n.editor.showTime=!1,n.editor.enableQuickSelect=!1,e.propertyValue==="month"?(n.editor.displayFormat="yyyy-MM",n.editor.valueFormat="yyyy-MM"):(n.editor.displayFormat="yyyy",n.editor.valueFormat="yyyy")):(n.editor.displayFormat="yyyy-MM-dd",n.editor.valueFormat="yyyy-MM-dd");break}}}getDateFormatOptions(e){const n=e.selectMode||"day";let i=[];switch(n){case"day":{const o=[];e.showTime&&o.push(..._o),o.push(...ko,...tn,...xt,...Vo),i=o;break}case"month":{i=[...tn,...xt];break}case"year":{i=[...xt];break}}return i}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let i=[...xo];return e.showTime&&(i=[...Mo]),i}case"month":return Fo;case"year":return To;default:return[]}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)&&(e.editor.fieldType=o.type.name,o.type.name===Z.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const Io=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Po="";function ht(t){let e=[10,20,30,50,100];return t&&(typeof t=="string"&&(e=t.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(t)&&(e=t)),e.map(n=>({value:parseInt(n,10)})).sort((n,i)=>n.value-i.value)}const ge={convertFrom:(t,e)=>{const n=t.editor?t.editor:t;return e==="multiSelect"||e==="enableTitle"?!!n[e]:e==="separator"?n[e]||",":e==="onlySelectLeaf"?n[e]==null?!1:n[e]:e==="loadTreeDataType"?n[e]||"default":e==="placeholder"?je.isNil(n[e])?"请选择":n[e]:e==="openType"?n[e]||"Modal":n[e]},convertTo:(t,e,n)=>{const i=t.editor?t.editor:t;if(i[e]=n,e==="multiSelect"&&!n&&(i.enableCascade=!1),e==="openType"){if(n==="Popup")i.showSelections=!1,i.enableCascade=!1;else if(i.dialog){const{width:o}=i.dialog,{displayType:l}=i;l&&l.toUpperCase().indexOf("NAV")>-1&&(!o||o<520)&&(i.dialog.width=960)}}i.multiSelect&&i.openType==="Popup"&&(i.editable=!1,i.allowFreeInput=!1)}};function No(t){let e="form_group_"+Date.now();return t&&(e=t.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Bo(t,e){const{enablePager:n,pageSize:i,pageList:o}=e;t.pagination=t.pagination||{},Object.assign(t.pagination,{enable:n,sizeLimits:ht(o).map(l=>l.value),size:i,showLimits:!0,showGoto:!1,mode:"server"})}const nn={convertFrom:(t,e)=>{var i;return(i=(t.editor?t.editor:t).dataSource)==null?void 0:i.displayName},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=t.editor?t.editor:t,o=n[0],{name:l,id:a,metadataContent:d,code:c}=o;i.dataSource||(i.dataSource={}),i.dataSource.displayName=`${l}(${c})`,i.helpId=a;const{displayType:p,idField:f,textField:s}=d;i.displayType=p,i.dataSource.idField=f,i.textField=s,i.dataSource.type="ViewObject",i.enableEqualSearch=!1;const{pageInfo:m}=d.dataSource;Bo(i,m);const{treeInfo:g}=p.toUpperCase()==="NAVTREELIST"?d.navigation:d.dataSource;if(g){const{onlySelectLeaf:u,loadDataType:h}=g;i.loadTreeDataType="default",i.onlySelectLeaf=u??!1}if(i.dataSource.uri||(i.dataSource.uri=No(t.id)),i.dialog){const{width:u}=i.dialog;p&&p.toUpperCase().indexOf("NAV")>-1&&(!u||u<520)&&(i.dialog.width=960)}}}},Oo={convertFrom:(t,e)=>{var n;return(n=t.editor.dataSource)==null?void 0:n.idField},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},jo={convertFrom:(t,e)=>{var n;return(n=t.editor)==null?void 0:n.textField},convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.editor.textField=i==null?void 0:i.bindingPath}}},Ro={convertFrom:(t,e)=>t.editor.displayType?t.editor.displayType.toUpperCase():"LIST",convertTo:(t,e,n)=>{t.editor.displayType=n}},Xe={convertFrom:(t,e)=>{var l;let n=t.editor?t.editor.dialog:t.dialog;const i=t.editor?t.editor.openType:t.openType;if(n||(n={}),e==="title")return n[e]||Po;if(!i||i==="Modal"){if(e==="width")return(l=n.displayType)!=null&&l.toUpperCase().startsWith("NAV")?n[e]||960:n[e]||590;if(e==="height")return n[e]||620;if(e==="navigatorWidth")return n[e]||320}else{if(e==="width")return n[e]||460;if(e==="height")return n[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return n[e]==null?!0:n[e]},convertTo:(t,e,n)=>{const i=t.editor?t.editor:t;i.dialog=i.dialog||{},i.dialog[e]=n}},Ao={convertFrom:(t,e)=>{const n=t.editor?t.editor:t;if(n.pagination=n.pagination||{},e==="enable"||e==="showLimits")return n.pagination[e]==null?!1:n.pagination[e];if(e==="sizeLimits"){const i=n.pagination[e];return ht(i)}if(e==="size")return n.pagination[e]||20},convertTo:(t,e,n)=>{var o;const i=t.editor?t.editor.pagination||{}:t;if(i.pagination=i.pagination||{},e==="sizeLimits"){const l=n.map(d=>d.value);i.pagination[e]=l;const a=((o=i.pagination)==null?void 0:o.size)??20;l.includes(a)||(i.pagination.size=l[0]);return}i.pagination[e]=n}},on=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Ho=Symbol("schema_repository_token");function Lo(t,e){const n=i=>i&&i.length?i.map(o=>`${o.name}[${o.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:e.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(i,o)=>`${i==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Ho},dataSourceConverter:nn,defaultConverter:ge,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ut.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:ut.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:t,formBasicInfo:e.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:ut.FieldSelectorRepositoryToken,displayFormatter:n},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const i=e.designViewModelUtils.getAllFields2TreeByVMId(e.viewModelId),o=e.schemaService.getPrimaryField();return o?i.filter(l=>l.data.bindingPath!==o):i},formatter:(i,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,displayFormatter:n}}}}function $o(t){var l,a;const e={type:"combo-list",enableClear:!1,editable:!1},n={type:"number-spinner",useThousands:!1},i=()=>t.displayType?t.displayType.toUpperCase():"",o=()=>i().startsWith("NAV")?t.showNavigation===void 0?!0:!!t.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:ge,editor:{...e,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:t.openType!=="Popup",$converter:Xe},width:{description:"窗口宽度,单位:px,最小值:300px",title:"宽度",type:"number",editor:{...n,min:o()?520:300,needValid:!0},$converter:Xe},height:{description:"窗口高度,单位:px,最小值:200px",title:"高度",type:"number",editor:{...n,min:200,needValid:!0},$converter:Xe},showNavigation:{description:"显示导航栏",$converter:ge,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:i().includes("NAV")&&t.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:o()&&t.openType!=="Popup",editor:{...n,min:200,max:(((l=t==null?void 0:t.dialog)==null?void 0:l.width)??960)-200,needValid:!0},$converter:Xe},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:t.openType!=="Popup",$converter:Xe},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!t.enableUserData&&(((a=t==null?void 0:t.dialog)==null?void 0:a.resizeable)??!0)&&t.openType!=="Popup",$converter:Xe},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:t.openType!=="Popup",$converter:Xe},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:t.openType!=="Popup",$converter:Xe},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:t.openType!=="Popup",$converter:Xe}}}function Wo(t,e=!0){var l,a,d,c;const n=!((l=t.pagination)!=null&&l.enable),i=()=>t.displayType?t.displayType.toUpperCase():"",o=(p,f)=>{const s=i()!=="TREELIST"||p.treeToList;return f&&s?p.pagination&&p.pagination[f]:s};return{hide:!o(t)||n,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Ao,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:e,visible:o(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:e,visible:o(t,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:ht((a=t.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:p,data:f})=>!f||!f.length?(p==null||p.warning({message:"每页显示条数不能为空!"}),!1):new Set(f.map(m=>parseInt(m.value,10))).size===f.length?!0:(p==null||p.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:o(t),editor:{type:"combo-list",enableClear:!1,editable:!1,data:ht((d=t.pagination)==null?void 0:d.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(c=t.pagination)==null?void 0:c.size}}}}}class zo extends $e.InputBaseProperty{constructor(){super(...arguments);ne(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});ne(this,"numberEditor",{type:"number-spinner",useThousands:!1});ne(this,"readonlyEditor",{...this.comboListEditor,editable:!0});ne(this,"visibleEditor",{...this.comboListEditor,editable:!1});ne(this,"requiredEditor",{...this.comboListEditor,editable:!1});ne(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(n,i){const o=["validate"];return n.type==="form-group"&&o.push("dataPicking"),new $e.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(n,"Field",o)}getPropertyConfig(n,i,o="Card"){var C;const l=(C=n.binding)!=null&&C.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(n,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(n,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(n,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(n,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(n,i,o),d=this.getBehaviorConfig(n),c=this.getAppearanceProperties(n,i),p=this.getLookupConfig(n),f=this.getEventPropConfig(n),s=this.getDialogPropertyConfig(n),m=this.getPageConfig(n.editor),g=this.getTreePropConfig(n.editor),u=this.getSearchConfig(n),h=this.getExpressionConfig(n,"Field"),b={basic:a,appearance:c,behavior:d,lookup:p,treeConfig:g,dialog:s,pager:m,searchConfig:u,expressions:h};return n.type==="form-group"&&(b.eventsEditor=f),{type:"object",categories:b}}getGridFieldEdtiorPropConfig(n){return this.getPropertyConfig(n,null,"Grid").categories}flattenTreeNodes(n){return n.reduce((i,o)=>{var l;return i.push(o),(l=o.children)!=null&&l.length&&i.push(...this.flattenTreeNodes(o.children)),i},[])}isSimpleStringField(){var d;const n=((d=this.designViewModelField)==null?void 0:d.path)||"";if(!n||!n.includes("."))return!0;const i=n.split("."),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(o!=null&&o.length))return!1;const l=o.find(c=>c.data.code===i[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!i.reduce((c,p,f)=>[...c,f?`${c[f-1]}.${p}`:p],[]).some(c=>{var p,f,s;return((s=(f=(p=a.find(m=>m.data.path===c))==null?void 0:p.data)==null?void 0:f.type)==null?void 0:s.$type)==="EntityType"})}getBehaviorConfig(n){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(i,o)=>{this.afterMutilEditorChanged(o,i)}}}changeBindingField(n,i){super.changeBindingField(n,i),n.editor.multiSelect=!1}getDisplayType(n){return n.displayType?n.displayType.toUpperCase():""}mapFieldsDisplayFormatter(n){return n&&n.length?n.map(i=>`${i.name}[${i.bindingPath}]`).join(","):""}getSearchConfig(n){var i;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:ge,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:ge,title:"允许查询所有列",type:"boolean",visible:n.editor.openType!=="Popup"&&n.editor.enableSearchBar==null?!0:!!n.editor.enableSearchBar},enableEqualSearch:{$converter:ge,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:n.editor.openType!=="Popup"&&(((i=n.editor)==null?void 0:i.enableSearchBar)??!0)!==!1&&this.getDisplayType(n.editor)!=="TREELIST"}},hide:n.editor.openType==="Popup"}}getLookupConfig(n){var p;const i=n.editor,o=()=>{const f=this.formSchemaUtils.getFormSchema().module.entity[0].id,s=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:i,formBasicInfo:s,viewModelId:f,dataSourceId:i.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:d,mappingFieldsEditor:c}=Lo(i,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(f,s)=>{if(f)switch(f.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(s,f);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor,visible:!!((p=n.binding)!=null&&p.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:ge},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:ge,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:ge,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(i.multiSelect&&i.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:ge,editor:this.freeInputEditor,visible:!!i.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:ge},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:f=>f&&f.length?f.map(s=>`${s.name}(${s.code})`).join(","):"",validateFunction:async f=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(f,n),onSubmitModal:f=>{if(f){delete i.mappingFields;const s=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(s.relativePath,f[0].data).then(m=>JSON.parse(m==null?void 0:m.metadata.content))}}},$converter:nn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:ge,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:i,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:ut.FieldSelectorRepositoryToken,beforeOpen:async({repository:f,notifyService:s})=>{var C;if(!(i==null?void 0:i.helpId))return s==null||s.warning({message:"请先配置数据源!"}),!1;const g=o(),h=new $e.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let b={};if(f){const F=await f.getData(g),M=await f.getLookupConditions(g);b={fieldList:F,conditionList:M}}return(C=h.variables)!=null&&C.forms&&(h.variables.forms.items=h.variables.forms.items.filter(F=>F.category==="remote")),{...b,...h,isServerSide:!0}},onSubmitModal:async({loadingService:f,repository:s,conditions:m,originalConditions:g,FMessageBoxService:u})=>{if(s)try{const h=o(),b=await s.getLookupConditions(h)||[];return JSON.stringify(b)!==JSON.stringify(g.value)?(f==null||f.clearAll(),u.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{m.value=b,g.value=JSON.parse(JSON.stringify(m.value))},()=>{}),!1):(JSON.stringify(m.value)===JSON.stringify(g.value)||await s.saveFilterCondition(m.value,h,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return u==null||u.error("保存失败",""),!1}finally{f==null||f.clearAll()}}},visible:!!i.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Ro,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{...a},$converter:Oo},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:jo,editor:d},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ge,editor:{...c}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:ge,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:ge,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:ge,title:"显示已选记录",type:"boolean",visible:!!i.multiSelect&&i.openType!=="Popup"},separator:{description:"多选分隔符",$converter:ge,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!i.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:ge,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:ge,title:"启用收藏夹",type:"boolean",visible:i.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:ge,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:i.openType!=="Popup"}}}}showNavigatiorWidth(n){return this.getDisplayType(n).startsWith("NAV")&&n.openType!=="Popup"?n.showNavigation===void 0?!0:!!n.showNavigation:!1}getDialogPropertyConfig(n){const i=$o(n.editor);return i.openType.$converter=ge,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:Xe,properties:i}}showPagerProperty(n,i){const o=this.getDisplayType(n)!=="TREELIST"||n.treeToList;return i&&o?n.pagination&&n.pagination[i]:o}getPageConfig(n){return Wo(n)}showLoadType(n){const i=this.getDisplayType(n);return(i==="TREELIST"||i==="NAVTREELIST")&&!n.treeToList&&!n.navTreeToList}isTree(n){return this.getDisplayType(n)==="TREELIST"&&!n.treeToList}getTreePropConfig(n){return{hide:this.getDisplayType(n)!=="TREELIST"&&this.getDisplayType(n)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:ge,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:ge,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:ge,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(n)},enableFullTree:{description:"启用构造完整树",$converter:ge,title:"构造完整树",type:"boolean",visible:this.showLoadType(n)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:ge,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(n)},enableCascade:{description:"启用级联选择",$converter:ge,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(n)&&!!n.multiSelect&&n.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:ge,title:"显示级联状态",type:"boolean",visible:!!n.enableCascade&&this.isTree(n)},cascadeValue:{description:"缺省级联选择模式",$converter:ge,title:"缺省级联选择模式",type:"string",visible:!!n.enableCascade&&this.isTree(n),editor:{...this.comboListEditor,data:Io,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:ge,title:"默认展开层级",type:"number",visible:this.showLoadType(n),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(n){const i=this;let o=on;n.editor.openType==="Popup"&&(o=o.filter(d=>d.label!=="beforeSelectData"));const l=i.eventsEditorUtils.formProperties(n,i.viewModelId,o);return{title:"事件",hideTitle:!0,properties:i.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(d,c){const p=d.propertyValue;delete c[i.viewModelId],p&&i.eventsEditorUtils.saveRelatedParameters(c,i.viewModelId,p.events,p);const f=i.designViewModelUtils.getDgViewModel(i.viewModelId);f&&i.designViewModelField&&f.changeField(i.designViewModelField.id,{valueChanging:c.fieldValueChanging,valueChanged:c.fieldValueChanged})}}}async checkSameBESource(n,i){var o,l,a,d,c;if(n&&((o=i==null?void 0:i.editor)!=null&&o.helpId)&&!i.isRtcControl){if(n.data.id===i.editor.helpId)return!0;const p=await this.metadataService.getPickMetadata("",n.data).then(h=>{var b;if((b=h==null?void 0:h.metadata)!=null&&b.content)return JSON.parse(h.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:i.editor.helpId}).then(h=>{var b;if((b=h==null?void 0:h.metadata)!=null&&b.content)return JSON.parse(h.metadata.content)}),s=(l=p==null?void 0:p.dataSource)==null?void 0:l.sourceType,m=(a=f.dataSource)==null?void 0:a.sourceType,g=(d=p==null?void 0:p.dataSource)==null?void 0:d.sourceId,u=(c=f==null?void 0:f.dataSource)==null?void 0:c.sourceId;if(s==="BE"&&m==="BE"&&g!==u)return new Ct.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class qo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Go extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var l,a,d,c,p,f,s,m;let n,i=!1;if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const g=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=g==null?void 0:g.schemaField)!=null&&a.type&&(n=g.schemaField.type.precision,i=g.schemaField.type.name==="BigNumber")}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:n===0,min:0,max:n,needValid:!0},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,needValid:!0,precision:(d=e==null?void 0:e.editor)==null?void 0:d.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(c=e==null?void 0:e.editor)==null?void 0:c.max,precision:(p=e==null?void 0:e.editor)==null?void 0:p.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((f=e==null?void 0:e.editor)==null?void 0:f.min)===void 0||(s=e==null?void 0:e.editor)==null?void 0:s.min,precision:(m=e==null?void 0:e.editor)==null?void 0:m.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0,visible:this.designViewModelField!=null},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},bigNumber:{description:"",title:"支持大数字",type:"boolean",readonly:!0,visible:i},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(g,u,h){if(g)switch(g.propertyID){case"precision":{u.formatter&&(u.formatter.precision=g.propertyValue);break}}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.name)===Z.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=o.type.precision)}}class Uo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){const n=this;return n.getComponentConfig(e,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,n,i){if(!e||!n.editor)return;const o=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(n.editor.valueField="value",n.editor.textField="name");break}case"data":{!o.checkEnumDataReadonly(n)&&n.formatter&&(n.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;e.editor&&((l=o==null?void 0:o.type)==null?void 0:l.$type)===Z.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}}class Do extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var n,i;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((n=this.designViewModelField)==null?void 0:n.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:this.designViewModelField!=null&&((i=this.designViewModelField)==null?void 0:i.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,n,i){var l;super.changeBindingField(e,n);const o=i;if(e.editor&&((l=o==null?void 0:o.type)!=null&&l.name)){let a,d;o.type.name===Z.FormSchemaEntityFieldTypeName.String&&(a="true",d="false"),o.type.name===Z.FormSchemaEntityFieldTypeName.Number&&(a=1,d=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&d!==void 0&&(e.editor.falseValue=d)}}}class Yo extends pt{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(n,i)=>{n.propertyID==="use12Hours"&&(i.editor.format=i.editor.format||"hh:mm:ss",i.editor.format=n.propertyValue?i.editor.format.replace("HH","hh"):i.editor.format.replace("hh","HH"))})}}class Xo extends $e.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"language-textbox"},{maxLength:{description:"文本字数最大长度",title:"最大长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,max:e.editor.maxLength,needValid:!0}}})}}class Zo extends Jt{constructor(n,i){super(n,i);ne(this,"dataGridProps",null);ne(this,"notifyService",new Ct.FNotifyService)}getPropertyConfig(n,i){var d,c,p;this.dataGridProps=i,this.getBasicPropConfig(n),this.getAppearanceProperties(n,i);const l={formatterEnumData:{description:"",title:"枚举数据",type:"array",visible:!!(((d=n.formatter)==null?void 0:d.type)==="enum"&&((c=n.editor)==null?void 0:c.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(n,"value","name"),refreshPanelAfterChanged:!0}},a=(f,s)=>{if(f)switch(f.propertyID){case"formatterEnumData":{n.formatter&&(n.formatter.data=[...f.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"gridFieldEditor",l,a),this.getFieldEditorProperties(n,i),this.propertyConfig.categories.templateFormat=this.getColumnTemplate(n),((p=n.formatter)==null?void 0:p.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(n)),this.getEventPropConfig(n),this.propertyConfig}getColumnTemplate(n){const i=n.columnTemplateType&&n.columnTemplateType==="custom"||!n.columnTemplateType&&n.columnTemplate&&!n.onClickLinkCommand,o=this;return{title:"列模板",description:"用于配置自定义列模板以及内置的格式化模板,如超链接、图片",properties:{columnTemplateType:{description:"列模板类型",title:"列模板类型",$converter:"/converter/change-formatter-type.converter",type:"enum",editor:{data:[{id:"default",name:"无"},{id:"hyperlink",name:"超链接"},{id:"custom",name:"自定义"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",visible:!!i,editor:{type:"code-editor",language:"html"}}},setPropertyRelates(l,a,d){var c;if(l){switch(l&&l.propertyID){case"columnTemplateType":{l.propertyValue==="custom"&&a.columnTemplate&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}case"columnTemplate":{l.propertyValue&&o.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}}(c=o.getFormDesignerInstance())==null||c.reloadPropertyPanel()}}}}getItemCollectionEditor(n,i,o){const l=i||"value",a=o||"name";return{editor:{columns:[{field:l,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:l,nameField:a,requiredFields:[l,a],uniqueFields:[l,a],readonly:this.checkEnumDataReadonly(n)}}}checkEnumDataReadonly(n){return!n.binding||n.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===Z.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(n){var c,p,f;const i=n.columnTemplateType==="hyperlink"||!n.columnTemplateType&&n.columnTemplate&&n.onClickLinkCommand;let o=[];((c=n.editor)==null?void 0:c.type)==="combo-list"&&o.push({label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}),i&&o.push({label:"onClickLinkCommand",name:"超链接事件"}),((p=n==null?void 0:n.editor)==null?void 0:p.type)==="lookup"&&(o=[...o,...on],n.editor.openType==="Popup"&&(o=o.filter(s=>s.label!=="beforeSelectData"))),((f=n==null?void 0:n.editor)==null?void 0:f.type)==="date-picker"&&(o=[{label:"onDatePicked",name:"日期选择后事件"}]);const l=this,a=l.eventsEditorUtils.formProperties(n,l.viewModelId,o),d=l.createBaseEventProperty(a);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:d,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,m){var u,h,b,C;const g=s.propertyValue;delete n[l.viewModelId],g&&(g.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(n,l.viewModelId,g.events,g)),n.remoteSort=!!n.columnSorted,n.onClickLinkCommand&&!n.onClickLinkCommand.includes("communication:")&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
19
+ @click="(ctx)=>viewModel.current.${n.onClickLinkCommand}({id: rowData.id,context: ctx})">
20
+ {{rowData.${n.field}}}
21
+ </span>`,(u=l.getFormDesignerInstance())==null||u.reloadPropertyPanel()),!n.onClickLinkCommand&&n.columnTemplate&&n.columnTemplateType==="hyperlink"&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer">
22
+ {{rowData.${n.field}}}
23
+ </span>`,(h=l.getFormDesignerInstance())==null||h.reloadPropertyPanel()),((b=n.editor)==null?void 0:b.beforeOpen)!==n.beforeOpen&&(n.editor.beforeOpen=n.beforeOpen),((C=n.editor)==null?void 0:C.onChange)!==n.onChange&&(n.editor.onChange=n.onChange)}}}getBasicPropConfig(n){const i=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:n,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(o,l,a){if(o)switch(o&&o.propertyID){case"binding":{i.afterChangeBindingType(n,a),o.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(n,i){var o,l,a,d;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},filterable:{visible:n.dataType!=="enum",description:"启用过滤",title:"启用过滤",type:"boolean"},sortable:{description:"启用排序",title:"启用排序",type:"boolean",visible:i.type!=="tree-grid"},draggable:{description:"允许列拖拽",title:"启用拖拽",type:"boolean"},width:{description:"列宽",title:"列宽",type:"number"},showTips:{description:"启用鼠标悬浮提示",title:"鼠标悬浮提示",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((l=(o=this.dataGridProps)==null?void 0:o.summary)!=null&&l.enable)&&n.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0},enableGroup:{description:"启用分组",title:"分组",visible:!!((d=(a=this.dataGridProps)==null?void 0:a.group)!=null&&d.enable),type:"boolean",refreshPanelAfterChanged:!0}},setPropertyRelates(c,p,f){if(c)switch(c&&c.propertyID){case"width":{p.actualWidth=c.propertyValue;break}case"summaryType":{const{groupFields:s}=i.summary;!s.includes(p.field)&&c.propertyValue==="sum"&&s.push(p.field),s.includes(p.field)&&c.propertyValue==="none"&&s.splice(s.indexOf(p.field),1);break}case"columnTemplate":{c.propertyValue;break}case"enableGroup":c.propertyValue?i.group.groupFields=[p.field]:i.group.groupFields=[]}}}}getFieldEditorProperties(n,i){i.fieldEditable&&n.editor&&this.getFieldEditorProp(n)}setFormatterEnumData(n){var i,o;(i=n.formatter)!=null&&i.data&&!n.formatterEnumData&&(n.formatterEnumData=(o=n.formatter)==null?void 0:o.data)}getTemplateProperties(n){var l,a,d,c,p,f,s,m,g;const i=Object.prototype.hasOwnProperty;return{title:"格式化",description:"",properties:{type:{description:"",title:"类型",type:"enum",$converter:"/converter/change-formatter.converter",refreshPanelAfterChanged:!0,editor:{data:{enum:[{id:"enum",name:"枚举"},{id:"none",name:"无"}],boolean:[{id:"boolean",name:"布尔"},{id:"none",name:"无"}],number:[{id:"number",name:"数字"},{id:"none",name:"无"}],date:[{id:"date",name:"日期"},{id:"none",name:"无"}],datetime:[{id:"date",name:"日期"},{id:"none",name:"无"}],string:[{id:"enum",name:"枚举"},{id:"date",name:"日期"},{id:"none",name:"无"}]}[n.dataType]}},trueText:{title:"布尔为true时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((l=n.formatter)==null?void 0:l.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((a=n.formatter)==null?void 0:a.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((d=n.formatter)==null?void 0:d.type)==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((c=n.formatter)==null?void 0:c.type)==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:((p=n.formatter)==null?void 0:p.type)==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:((f=n.formatter)==null?void 0:f.type)==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:((s=n.formatter)==null?void 0:s.type)==="number",refreshPanelAfterChanged:!0,description:"千分位"},dateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:((m=n.formatter)==null?void 0:m.type)==="date"||((g=n.formatter)==null?void 0:g.type)==="datetime",refreshPanelAfterChanged:!0,description:"日期格式",type:"enum",editor:{data:[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"dd/MM/yyyy",name:"dd/MM/yyyy"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"},{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy年MM月",name:"yyyy年MM月"},{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"},{id:"MM月dd日",name:"MM月dd日"},{id:"yyyy",name:"yyyy"},{id:"yyyy年",name:"yyyy年"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"},{id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}]}}},setPropertyRelates(u,h,b){var C;if(u)switch(u&&u.propertyID){case"type":{u.propertyValue!=="none"&&h.columnTemplate,u.propertyValue==="boolean"&&(i.call(h.formatter,"trueText")||(h.formatter.trueText="是"),i.call(h.formatter,"falseText")||(h.formatter.falseText="否")),u.propertyValue==="number"&&(i.call(h.formatter,"prefix")||(h.formatter.prefix=""),i.call(h.formatter,"suffix")||(h.formatter.suffix=""),i.call(h.formatter,"precision")||(h.formatter.precision=0),i.call(h.formatter,"decimal")||(h.formatter.decimal="."),i.call(h.formatter,"thousand")||(h.formatter.thousand=",")),u.propertyValue==="date"&&(i.call(h.formatter,"dateFormat")||(h.formatter.dateFormat="yyyy-MM-dd")),u.propertyValue==="enum"&&(i.call(h.formatter,"data")||(h.formatter.data=[],(C=h.formatterEnumData)!=null&&C.length&&(h.formatterEnumData=[])));break}}}}}getFieldEditorProp(n,i="gridFieldEditor",o=!1){const l=this.formMetadataConverter.getRealEditorType(n.editor.type);let a;switch(l){case"avatar":a=new yo(this.componentId,this.designerHostService);break;case"check-group":a=new vo(this.componentId,this.designerHostService);break;case"check-box":a=new bo(this.componentId,this.designerHostService);break;case"combo-list":a=new Co(this.componentId,this.designerHostService);break;case"date-picker":a=new Eo(this.componentId,this.designerHostService);break;case"lookup":a=new zo(this.componentId,this.designerHostService);break;case"number-range":a=new qo(this.componentId,this.designerHostService);break;case"number-spinner":a=new Go(this.componentId,this.designerHostService);break;case"radio-group":a=new Uo(this.componentId,this.designerHostService);break;case"switch":a=new Do(this.componentId,this.designerHostService);break;case"textarea":a=new wo(this.componentId,this.designerHostService);break;case"time-picker":a=new Yo(this.componentId,this.designerHostService);break;case"language-textbox":a=new Xo(this.componentId,this.designerHostService);break;default:a=new po(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);const d=this,{canChangeControlType:c,editorTypeList:p}=this.getAvailableEditorType(n);this.propertyConfig.categories[`${i}_editorType`]={description:"",title:"编辑器类型",propertyData:n.editor,tabId:"gridFieldEditor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",data:p,readonly:!c}}},setPropertyRelates(m,g){if(m)switch(m&&m.propertyID){case"type":{d.changeFieldEditorType(n,m.propertyValue);break}}}};const f=["id","type","class","style","binding","label","responseLayout","visible","fill"],s=a.getGridFieldEdtiorPropConfig(n);Object.keys(s).map(m=>{const g=s[m],u={};if(Object.keys(g.properties).map(h=>{f.findIndex(b=>b===h)===-1&&g.properties[h]!==!1&&(u[h]=g.properties[h])}),Object.keys(u).length!==0){const h=g==null?void 0:g.title,b="gridFieldEditor",C="编辑器",F=g==null?void 0:g.description,M=(g==null?void 0:g.$converter)||"";d.propertyConfig.categories[i+"_"+m]={title:h,hide:Object.prototype.hasOwnProperty.call(g,"hide")?g.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(g,"hideTitle")?g.hideTitle:!1,tabId:g.tabId||b,tabName:g.tabName||C,description:F,$converter:M,parentPropertyID:"editor",propertyData:n,properties:u,setPropertyRelates:g==null?void 0:g.setPropertyRelates}}})}changeFieldEditorType(n,i){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);o.changeField(this.designViewModelField.id,{editor:{$type:i},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const l=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(l,s=>s.type===z.DgControl["data-grid"].type||s.type===z.DgControl["tree-grid"].type);if(!a)return;const d=o.fields.find(s=>s.id===this.designViewModelField.id),c=this.controlCreatorUtils.setGridFieldProperty(i,d,null,!0),p=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,f=p.findIndex(s=>s.id===n.id);if(f>-1&&p[f].editor){const s={};["readonly","required","placeholder"].map(m=>{Object.prototype.hasOwnProperty.call(p[f].editor,m)&&(s[m]=p[f].editor[m])}),p[f].editor=Object.assign(c.editor,s)}Object.assign(p[f],{dataType:c.dataType},c.formatter?{formatter:c.formatter}:{}),!c.formatter&&p[f].formatter&&delete p[f].formatter}checkCanChangeControlType(n,i){return!(!n.binding||!this.designViewModelField||this.designViewModelField.$type!==Z.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(n){var l;const i=this.checkCanChangeControlType(n,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=z.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===Z.FormSchemaEntityField$Type.SimpleField&&(o=ct.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,n.type)),{canChangeControlType:i,editorTypeList:o}}afterChangeBindingType(n,i){!n||!i||(n.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(i),this.controlCreatorUtils.setGridFieldFormatter(n.dataType,n,i))}}function Jo(t,e,n){const i=t.schema,o=r.ref(!0),l=r.ref(!0);function a(m){return!1}function d(){return!1}function c(){return!1}function p(){return!0}function f(m){var h,b;const g=new Zo(m,e),u=(h=t==null?void 0:t.parent)==null?void 0:h.schema;return u!=null&&u.groupFields&&u!=null&&u.groupFields.includes(i.field)&&(i.enableSummary=!0),g.getPropertyConfig(i,(b=t==null?void 0:t.parent)==null?void 0:b.schema)}function s(){var b,C;if(!e||!t)return;const{formSchemaUtils:m}=e;let g=st["data-grid"].name;const u=m.getControlBasicInfoMap(),h=u.get((C=(b=t.parent)==null?void 0:b.schema)==null?void 0:C.id);h&&h.parentPathName&&(g=h.parentPathName),u.set(i.id,{showName:i.title,parentPathName:`${g} > ${i.title}`,reliedComponentId:h.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:d,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:p,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:f,setComponentBasicInfoMap:s}}function Qo(t={}){function e(p,f,s,m){if(typeof s=="number")return m[p].length===s;if(typeof s=="object"){const g=Object.keys(s)[0],u=s[g];if(g==="not")return Number(m[p].length)!==Number(u);if(g==="moreThan")return Number(m[p].length)>=Number(u);if(g==="lessThan")return Number(m[p].length)<=Number(u)}return!1}function n(p,f,s,m){return m[p]&&m[p].propertyValue&&String(m[p].propertyValue.value)===String(s)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((p,f)=>(p.set(f,t[f]),p),i);function o(p,f){const s=p;return typeof f=="number"?[{target:s,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:s,operator:"getProperty",param:p,value:!!f}]:typeof f=="object"?Object.keys(f).map(m=>{if(m==="length")return{target:s,operator:"length",param:null,value:f[m]};const g=m,u=f[m];return{target:s,operator:"getProperty",param:g,value:u}}):[]}function l(p){return Object.keys(p).reduce((s,m)=>{const g=o(m,p[m]);return s.push(...g),s},[])}function a(p,f){if(i.has(p.operator)){const s=i.get(p.operator);return s&&s(p.target,p.param,p.value,f)||!1}return!1}function d(p,f){return l(p).reduce((g,u)=>g&&a(u,f),!0)}function c(p,f){const s=Object.keys(p),m=s.includes("allOf"),g=s.includes("anyOf"),u=m||g,C=(u?p[u?m?"allOf":"anyOf":"allOf"]:[p]).map(M=>d(M,f));return m?!C.includes(!1):C.includes(!0)}return{parseValueSchema:c}}const Ko={convertTo:(t,e,n,i)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},er={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},tr={convertTo:(t,e,n,i)=>{t.editor&&(t.editor[e]=n)},convertFrom:(t,e,n)=>t.editor&&Object.prototype.hasOwnProperty.call(t.editor,e)?t.editor[e]:t[e]},nr={convertFrom:(t,e,n)=>{var o;const i=t.editor&&t.editor[e]?t.editor[e]:t[e];return((o=st[i])==null?void 0:o.name)||i}},ir={convertTo:(t,e,n,i)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},or={convertTo:(t,e,n,i)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t.formatter?t.formatter[e]=n:t.formatter={[e]:n})},convertFrom:(t,e,n)=>{if(t.formatter){if(e==="trueText")return t.formatter.trueText;if(e==="falseText")return t.formatter.falseText;if(e==="prefix")return t.formatter.prefix;if(e==="suffix")return t.formatter.suffix;if(e==="precision")return t.formatter.precision;if(e==="decimal")return t.formatter.decimal;if(e==="thousand")return t.formatter.thousand;if(e==="dateFormat")return t.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return t.formatter.customFormat;if(e==="type")return t.formatter.type||"none"}return"none"}},rr={convertTo:(t,e,n,i)=>{t.command?t.command[e]=n:t.command={[e]:n},e==="enableType"&&n==="default"&&(t.command.enable=!0,t.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]),e==="enableType"&&n==="custom"&&(t.command.enable=!0,t.command.commands=[{value:"add",text:{en:"add","zh-CHS":"增加","zh-CHT":"增加"},type:"link"},{value:"edit",text:{en:"edit","zh-CHS":"编辑","zh-CHT":"編輯"},type:"danger"},{value:"remove",text:{en:"remove","zh-CHS":"删除","zh-CHT":"刪除"},type:"remove"}]),e==="enableType"&&n==="unable"&&(t.command.enable=!1)},convertFrom:(t,e,n)=>{var i,o;if(t.command){if(e==="enableType"){const l=(o=(i=t.command)==null?void 0:i.commands)==null?void 0:o.find(a=>a.command==="edit"&&a.type==="primary");return t.command.enable?l?"default":"custom":"unable"}if(e==="commands")return t.command.enableType==="custom"?t.command.commands:[];if(e==="formatter")return t.command.formatter;if(e==="count")return t.command.count}return""}},lr={convertTo:(t,e,n,i)=>{t.column?t.column[e]=n:t.column={[e]:n},e==="fitColumns"&&n&&(t.column.fitMode||(t.column.fitMode="average"))},convertFrom:(t,e,n)=>{if(t.column){if(e==="fitColumns")return t.column.fitColumns;if(e==="fitMode")return t.column.fitMode}return""}},ar={convertTo:(t,e,n,i)=>{t.summary?t.summary[e]=n:t.summary={[e]:n},e==="enable"&&n&&(t.summary?t.summary.groupFields||(t.summary.groupFields=[]):t.summary={enable:n,groupFields:[]})},convertFrom:(t,e,n)=>t.summary&&e==="enable"?t.summary.enable:t.type==="data-grid-column"?t.enableSummary===void 0?!1:t.enableSummary:""},sr={convertTo:(t,e,n,i)=>{t.group?t.group[e]=n:t.group={[e]:n},e==="enable"&&n&&(t.group?t.group.groupFields||(t.group.groupFields=[]):t.group={enable:n,groupFields:[],showSummary:!1})},convertFrom:(t,e,n)=>{if(t.group){if(e==="enable")return t.group.enable;if(e==="showSummary")return t.group.showSummary}}},dr={convertFrom:(t,e)=>t.binding?t.binding.path:"",convertTo:(t,e,n)=>{if(n&&n.length>0){const i=n[0];t.binding||(t.binding={}),t.binding.type="Form",t.binding.path=i.bindingField,t.binding.field=i.id,t.binding.fullPath=i.path,t.path=i.bindingPath}}},cr={convertTo:(t,e,n,i)=>{t.pagination||(t.pagination={}),t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?t.pagination[e]:t[e]},ur={convertTo:(t,e,n,i)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},fr={convertTo:(t,e,n,i)=>{t.selection||(t.selection={}),t.selection[e]=n},convertFrom:(t,e,n)=>{var i,o;return e==="showCheckbox"?(i=t.selection)!=null&&i.multiSelect?!0:(o=t.selection)==null?void 0:o.showCheckbox:t.selection?t.selection[e]:t[e]}},mr={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},pr={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},hr={convertTo:(t,e,n,i)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},gr={convertFrom:(t,e,n)=>{var i,o;return(i=t.formatter)!=null&&i.data&&e==="formatterEnumData"&&!t.formatterEnumData?(o=t.formatter)==null?void 0:o.data:t.formatterEnumData}},yr={convertTo:(t,e,n,i)=>{t.sort||(t.sort={}),t.sort[e]=n},convertFrom:(t,e,n)=>{var i,o;if(e==="mode")return((i=t.sort)==null?void 0:i.mode)||"client";if(e==="multiSort")return!!((o=t.sort)!=null&&o.multiSort)}},vr={convertTo:(t,e,n,i)=>{t.filter||(t.filter={}),t.filter[e]=n},convertFrom:(t,e,n)=>{var i;if(e==="mode")return((i=t.filter)==null?void 0:i.mode)||"client"}},br={convertTo:(t,e,n,i)=>{t.rowOption?t.rowOption[e]=n:t.rowOption={[e]:n}},convertFrom:(t,e,n)=>{if(t.rowOption){if(e==="customRowStyle")return t.rowOption.customRowStyle;if(e==="customCellStyle")return t.rowOption.customCellStyle}return""}},Cr={convertTo:(t,e,n,i)=>{(t.type==="data-grid-column"||t.type==="tree-grid-column")&&(t[e]=n,e==="columnTemplateType"&&n==="hyperlink"&&(t.onClickLinkCommand?t.columnTemplate=`
24
+ <span class="f-pretend-link f-cursor-pointer"
25
+ @click="(ctx)=>viewModel.current.${t.onClickLinkCommand||""}({id: rowData.id,context: ctx})">
26
+ {{rowData.${t.field}}}
27
+ </span>`:t.columnTemplate=`
28
+ <span class="f-pretend-link f-cursor-pointer">
20
29
  {{rowData.${t.field}}}
21
- </span>`,(p=r.getFormDesignerInstance())==null||p.reloadPropertyPanel()),!t.onClickLinkCommand&&t.columnTemplate&&t.columnTemplateType==="hyperlink"&&(t.columnTemplate=`<span class="f-pretend-link f-cursor-pointer">
22
- {{rowData.${t.field}}}
23
- </span>`,(y=r.getFormDesignerInstance())==null||y.reloadPropertyPanel()),((T=t.editor)==null?void 0:T.beforeOpen)!==t.beforeOpen&&(t.editor.beforeOpen=t.beforeOpen),((S=t.editor)==null?void 0:S.onChange)!==t.onChange&&(t.editor.onChange=t.onChange)}}}getBasicPropConfig(t){const i=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:t,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(o,r,a){if(o)switch(o&&o.propertyID){case"binding":{i.afterChangeBindingType(t,a),o.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(t,i){var o,r,a,s;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},filterable:{visible:t.dataType!=="enum",description:"启用过滤",title:"启用过滤",type:"boolean"},sortable:{description:"启用排序",title:"启用排序",type:"boolean",visible:i.type!=="tree-grid"},draggable:{description:"允许列拖拽",title:"启用拖拽",type:"boolean"},width:{description:"列宽",title:"列宽",type:"number"},showTips:{description:"启用鼠标悬浮提示",title:"鼠标悬浮提示",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((r=(o=this.dataGridProps)==null?void 0:o.summary)!=null&&r.enable)&&t.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0},enableGroup:{description:"启用分组",title:"分组",visible:!!((s=(a=this.dataGridProps)==null?void 0:a.group)!=null&&s.enable),type:"boolean",refreshPanelAfterChanged:!0}},setPropertyRelates(c,m,u){if(c)switch(c&&c.propertyID){case"width":{m.actualWidth=c.propertyValue;break}case"summaryType":{const{groupFields:d}=i.summary;!d.includes(m.field)&&c.propertyValue==="sum"&&d.push(m.field),d.includes(m.field)&&c.propertyValue==="none"&&d.splice(d.indexOf(m.field),1);break}case"columnTemplate":{c.propertyValue;break}case"enableGroup":c.propertyValue?i.group.groupFields=[m.field]:i.group.groupFields=[]}}}}getFieldEditorProperties(t,i){i.fieldEditable&&t.editor&&this.getFieldEditorProp(t)}setFormatterEnumData(t){var i,o;(i=t.formatter)!=null&&i.data&&!t.formatterEnumData&&(t.formatterEnumData=(o=t.formatter)==null?void 0:o.data)}getTemplateProperties(t){var r,a,s,c,m,u,d,f,g;const i=Object.prototype.hasOwnProperty;return{title:"格式化",description:"",properties:{type:{description:"",title:"类型",type:"enum",$converter:"/converter/change-formatter.converter",refreshPanelAfterChanged:!0,editor:{data:{enum:[{id:"enum",name:"枚举"},{id:"none",name:"无"}],boolean:[{id:"boolean",name:"布尔"},{id:"none",name:"无"}],number:[{id:"number",name:"数字"},{id:"none",name:"无"}],date:[{id:"date",name:"日期"},{id:"none",name:"无"}],datetime:[{id:"date",name:"日期"},{id:"none",name:"无"}],string:[{id:"enum",name:"枚举"},{id:"date",name:"日期"},{id:"none",name:"无"}]}[t.dataType]}},trueText:{title:"布尔为true时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((r=t.formatter)==null?void 0:r.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:((a=t.formatter)==null?void 0:a.type)==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((s=t.formatter)==null?void 0:s.type)==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((c=t.formatter)==null?void 0:c.type)==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:((m=t.formatter)==null?void 0:m.type)==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:((u=t.formatter)==null?void 0:u.type)==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:((d=t.formatter)==null?void 0:d.type)==="number",refreshPanelAfterChanged:!0,description:"千分位"},dateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:((f=t.formatter)==null?void 0:f.type)==="date"||((g=t.formatter)==null?void 0:g.type)==="datetime",refreshPanelAfterChanged:!0,description:"日期格式",type:"enum",editor:{data:[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"dd/MM/yyyy",name:"dd/MM/yyyy"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"},{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy年MM月",name:"yyyy年MM月"},{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"},{id:"MM月dd日",name:"MM月dd日"},{id:"yyyy",name:"yyyy"},{id:"yyyy年",name:"yyyy年"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"},{id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}]}}},setPropertyRelates(p,y,T){var S;if(p)switch(p&&p.propertyID){case"type":{p.propertyValue!=="none"&&y.columnTemplate,p.propertyValue==="boolean"&&(i.call(y.formatter,"trueText")||(y.formatter.trueText="是"),i.call(y.formatter,"falseText")||(y.formatter.falseText="否")),p.propertyValue==="number"&&(i.call(y.formatter,"prefix")||(y.formatter.prefix=""),i.call(y.formatter,"suffix")||(y.formatter.suffix=""),i.call(y.formatter,"precision")||(y.formatter.precision=0),i.call(y.formatter,"decimal")||(y.formatter.decimal="."),i.call(y.formatter,"thousand")||(y.formatter.thousand=",")),p.propertyValue==="date"&&(i.call(y.formatter,"dateFormat")||(y.formatter.dateFormat="yyyy-MM-dd")),p.propertyValue==="enum"&&(i.call(y.formatter,"data")||(y.formatter.data=[],(S=y.formatterEnumData)!=null&&S.length&&(y.formatterEnumData=[])));break}}}}}getFieldEditorProp(t,i="gridFieldEditor",o=!1){const r=this.formMetadataConverter.getRealEditorType(t.editor.type);let a;switch(r){case"avatar":a=new mo(this.componentId,this.designerHostService);break;case"check-group":a=new po(this.componentId,this.designerHostService);break;case"check-box":a=new ho(this.componentId,this.designerHostService);break;case"combo-list":a=new go(this.componentId,this.designerHostService);break;case"date-picker":a=new _o(this.componentId,this.designerHostService);break;case"lookup":a=new Lo(this.componentId,this.designerHostService);break;case"number-range":a=new $o(this.componentId,this.designerHostService);break;case"number-spinner":a=new jo(this.componentId,this.designerHostService);break;case"radio-group":a=new Wo(this.componentId,this.designerHostService);break;case"switch":a=new zo(this.componentId,this.designerHostService);break;case"textarea":a=new yo(this.componentId,this.designerHostService);break;case"time-picker":a=new Go(this.componentId,this.designerHostService);break;case"language-textbox":a=new Uo(this.componentId,this.designerHostService);break;default:a=new co(this.componentId,this.designerHostService)}this.setDesignViewModelField(t);const s=this,{canChangeControlType:c,editorTypeList:m}=this.getAvailableEditorType(t);this.propertyConfig.categories[`${i}_editorType`]={description:"",title:"编辑器类型",propertyData:t.editor,tabId:"gridFieldEditor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",data:m,readonly:!c}}},setPropertyRelates(f,g){if(f)switch(f&&f.propertyID){case"type":{s.changeFieldEditorType(t,f.propertyValue);break}}}};const u=["id","type","class","style","binding","label","responseLayout","visible","fill"],d=a.getGridFieldEdtiorPropConfig(t);Object.keys(d).map(f=>{const g=d[f],p={};if(Object.keys(g.properties).map(y=>{u.findIndex(T=>T===y)===-1&&g.properties[y]!==!1&&(p[y]=g.properties[y])}),Object.keys(p).length!==0){const y=g==null?void 0:g.title,T="gridFieldEditor",S="编辑器",C=g==null?void 0:g.description,F=(g==null?void 0:g.$converter)||"";s.propertyConfig.categories[i+"_"+f]={title:y,hide:Object.prototype.hasOwnProperty.call(g,"hide")?g.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(g,"hideTitle")?g.hideTitle:!1,tabId:g.tabId||T,tabName:g.tabName||S,description:C,$converter:F,parentPropertyID:"editor",propertyData:t,properties:p,setPropertyRelates:g==null?void 0:g.setPropertyRelates}}})}changeFieldEditorType(t,i){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);o.changeField(this.designViewModelField.id,{editor:{$type:i},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const r=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(r,d=>d.type===j.DgControl["data-grid"].type||d.type===j.DgControl["tree-grid"].type);if(!a)return;const s=o.fields.find(d=>d.id===this.designViewModelField.id),c=this.controlCreatorUtils.setGridFieldProperty(i,s,null,!0),m=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,u=m.findIndex(d=>d.id===t.id);if(u>-1&&m[u].editor){const d={};["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(m[u].editor,f)&&(d[f]=m[u].editor[f])}),m[u].editor=Object.assign(c.editor,d)}Object.assign(m[u],{dataType:c.dataType},c.formatter?{formatter:c.formatter}:{}),!c.formatter&&m[u].formatter&&delete m[u].formatter}checkCanChangeControlType(t,i){return!(!t.binding||!this.designViewModelField||this.designViewModelField.$type!==X.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(t){var r;const i=this.checkCanChangeControlType(t,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:t.editor.type,value:((r=j.DgControl[t.editor.type])==null?void 0:r.name)||t.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===X.FormSchemaEntityField$Type.SimpleField&&(o=rt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,t.type)),{canChangeControlType:i,editorTypeList:o}}afterChangeBindingType(t,i){!t||!i||(t.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(i),this.controlCreatorUtils.setGridFieldFormatter(t.dataType,t,i))}}function qo(n,e,t){const i=n.schema,o=l.ref(!0),r=l.ref(!0);function a(f){return!1}function s(){return!1}function c(){return!1}function m(){return!0}function u(f){var y,T;const g=new Do(f,e),p=(y=n==null?void 0:n.parent)==null?void 0:y.schema;return p!=null&&p.groupFields&&p!=null&&p.groupFields.includes(i.field)&&(i.enableSummary=!0),g.getPropertyConfig(i,(T=n==null?void 0:n.parent)==null?void 0:T.schema)}function d(){var T,S;if(!e||!n)return;const{formSchemaUtils:f}=e;let g=ft["data-grid"].name;const p=f.getControlBasicInfoMap(),y=p.get((S=(T=n.parent)==null?void 0:T.schema)==null?void 0:S.id);y&&y.parentPathName&&(g=y.parentPathName),p.set(i.id,{showName:i.title,parentPathName:`${g} > ${i.title}`,reliedComponentId:y.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:s,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:m,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u,setComponentBasicInfoMap:d}}var on=(n=>(n.SimpleField="SimpleField",n.ComplexField="ComplexField",n))(on||{});function Yo(n,e,t){function i(){const a=t.componentId;if(!a)return!1;const s=n.formSchemaUtils.getViewModelIdByComponentId(a);if(!s)return!1;const{schema:c}=e,{designViewModelUtils:m}=n,u=m.getDgViewModel(s),d=u==null?void 0:u.fields.find(f=>f.id===c.binding.field);return!(!d||d.$type!==on.SimpleField)}function o(){const{schema:a}=e;return!!n.formSchemaUtils.getVariableById(a.binding.field)}function r(){var c;const{schema:a}=e;let s=!0;if(!n||!((c=a.binding)!=null&&c.field))return s;switch(a.binding.type){case it.Form:{s=i();break}case it.Variable:s=o()}return s}return{checkBindingFieldValidation:r}}const ln=l.defineComponent({name:"FDataGridColumnDesign",props:Mt,emits:[],setup(n,e){const t=l.ref(),i=l.inject("designer-host-service"),o=l.inject("design-item-context");l.inject("data-grid-context");const r=qo(o,i),a=j.useDesignerComponent(t,o,r);l.onMounted(()=>{t.value.componentInstance=a}),e.expose(a.value);function s(d){var f;(f=o==null?void 0:o.setupContext)==null||f.emit("selectionChange",a.value.schema,o.schema,n.componentId,a.value)}const{checkBindingFieldValidation:c}=Yo(i,o,n),u=!l.inject("external-container-id");return()=>{var p;const d=u?c():!0,f="绑定信息已失效,请手动移除列",g=d?"":"color:red";return l.createVNode(l.Fragment,null,[d?"":l.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:f},null),l.createVNode("span",{class:"fv-column-title",style:g,ref:t,onClick:y=>s()},[((p=n.editor)==null?void 0:p.required)===!0&&l.createVNode("span",{class:"text-danger"},[l.createTextVNode("*")]),n.title])])}}}),rn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enableType:{type:"string",default:"unable"},enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""},onHandleAction:{description:"",type:"string",default:""},count:{description:"",type:"number",default:2}}},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:"object",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!1},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"object"},customSummaryStyle:{description:"",type:"object"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},rowOption:{type:"object",properties:{customRowStyle:{description:"",type:"string",default:""},customCellStyle:{description:"",type:"string",default:""},disable:{description:"",type:"object"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showSelectAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},multiSelectMode:{description:"多选模式",type:"string",default:"DependOnCheck"},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"enum",default:"client"},multiSort:{description:"",type:"boolean",default:!0}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},emptyTemplate:{description:"",type:"string",default:""},beforeUpdate:{description:"",type:"string",default:""}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onDoubleClickRow:"行双击事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件",onFilterChanged:"过滤事件",onSortChanged:"排序事件",onSelectItem:"选中行事件",onUnSelectItem:"取消选中行事件",onSelectAll:"全选事件",onUnSelectAll:"取消全选事件",onEndEditCell:"单元格结束编辑事件"}};function Xo(){function n(e,t){const i={};return i.beforeEditCell=o=>t.call("beforeEditCell",e,[o,e]),i.beforeUpdate=o=>t.call("beforeUpdate",e,[o,e]),i}return{resolve:n}}const an=Ge.getPropsResolverGenerator(Je.dataGridProps,rn,mt,pt),sn=Ge.createPropsResolver(Je.dataGridProps,rn,mt,pt),dn=Ge.createCollectionBindingResolver(),cn=Ge.createDataGridSelectionItemResolver(),un=Ge.createDataViewUpdateColumnsResolver(),fn=Xo();Qe.install=n=>{n.component(Qe.name,Qe)},Qe.register=(n,e,t,i,o)=>{n["data-grid"]=Je,e["data-grid"]=an(o),n["grid-field-editor"]=eo,e["grid-field-editor"]=$i(o),i["data-grid"]={bindingResolver:dn,selectionItemResolver:cn,updateColumnsResolver:un,callbackResolver:fn}},Qe.registerDesigner=(n,e,t)=>{n["data-grid"]=Qe,e["data-grid"]=sn,e["data-grid-column"]=io,n["data-grid-column"]=ln,e["tree-grid-column"]=oo,n["tree-grid-column"]=ln};const Zo=X.withInstall(Qe);re.FDataGridDesign=Qe,re.bindingResolver=dn,re.callbackResolver=fn,re.default=Zo,re.getColumnHeader=At,re.propsResolver=sn,re.propsResolverGenerator=an,re.selectionItemResolver=cn,re.updateColumnsResolver=un,Object.defineProperties(re,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
30
+ </span>`),e==="columnTemplateType"&&n==="default"&&(t.columnTemplate=""),e==="columnTemplateType"&&n==="custom"&&(t.columnTemplate=""))},convertFrom:(t,e,n)=>e==="columnTemplate"?t.columnTemplate:e==="columnTemplateType"?t.columnTemplateType?t.columnTemplateType||"default":t.columnTemplate&&!t.onClickLinkCommand?"custom":t.columnTemplate&&t.onClickLinkCommand?"hyperlink":"default":""};function wr(t,e,n){const i=new Map([["/converter/appearance.converter",Ko],["/converter/buttons.converter",er],["/converter/property-editor.converter",tr],["/converter/items-count.converter",mr],["/converter/type.converter",nr],["/converter/change-editor.converter",ir],["/converter/change-formatter.converter",or],["/converter/column-command.converter",rr],["/converter/column-option.converter",lr],["/converter/summary.converter",ar],["/converter/group.converter",sr],["/converter/form-group-label.converter",pr],["/converter/field-selector.converter",dr],["/converter/pagination.converter",cr],["/converter/row-number.converter",ur],["/converter/grid-selection.converter",fr],["/converter/size.converter",hr],["/converter/change-formatter-enum.converter",gr],["/converter/grid-sort.converter",yr],["/converter/grid-filter.converter",vr],["/converter/row-option.converter",br],["/converter/change-formatter-type.converter",Cr]]),o=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),l=Qo();function a(u,h){return()=>l.parseValueSchema(u,h)}function d(u,h,b){return u.includes("visible")&&h.visible!==void 0?typeof h.visible=="boolean"?()=>!!h.visible:h.visible===void 0?!0:a(h.visible,b):()=>!0}function c(u,h,b){return u.includes("readonly")&&h.readonly!==void 0?typeof h.readonly=="boolean"?()=>!!h.readonly:a(h.readonly,b):()=>!1}function p(u,h){const b=u.$converter||h;return typeof b=="string"&&b&&i.has(b)?i.get(b)||null:b||null}function f(u,h,b,C,F,M="",T=""){return Object.keys(u).map(w=>{const y=r.ref(1),x=w,S=u[w],I=Object.keys(S),B=S.title,N=S.type,O=o.get(N)||{type:"input-group",enableClear:!1},_=S.editor?Object.assign({},O,S.editor):Object.assign({},O),k=d(I,S,h),V=c(I,S,h);_.readonly=_.readonly===void 0?V():_.readonly;const W=S.type==="cascade"?f(S.properties,h,b,C,F,M,T):[],P=!0;let H=p(S,T);const X=r.computed({get(){if(y.value){if(["class","style"].find(R=>R===x)&&!H&&(H=i.get("/converter/appearance.converter")||null),H&&H.convertFrom)return H.convertFrom(b,w,F,M);const L=b[w];return Object.prototype.hasOwnProperty.call(S,"defaultValue")&&(L===void 0||typeof L=="string"&&L==="")?S.type==="boolean"?S.defaultValue:S.defaultValue||"":L}return null},set(L){y.value+=1,H&&H.convertTo?(H.convertTo(C,w,L,F,M),H.convertTo(b,w,L,F,M)):(C[w]=L,b[w]=L)}}),{refreshPanelAfterChanged:J,description:oe,isExpand:Me,parentPropertyID:Ce}=S,ve={propertyID:x,propertyName:B,propertyType:N,propertyValue:X,editor:_,visible:k,readonly:V,cascadeConfig:W,hideCascadeTitle:P,refreshPanelAfterChanged:J,description:oe,isExpand:Me,parentPropertyID:Ce};return h[x]=ve,ve})}function s(u,h,b={}){const C={},F=t[u];return F&&F.categories?Object.keys(F.categories).map(T=>{const v=F.categories[T],w=v==null?void 0:v.title,y=f(v.properties||{},C,{},b,h);return{categoryId:T,categoryName:w,properties:y}}):[]}function m(u,h,b,C,F=""){const M=h.$ref.schema,T=h.$ref.converter,v=b[M],w=v.type,y=n(v),x={},S=t[w];if(S&&S.categories){const I=S.categories[u],B=I==null?void 0:I.title;T&&Object.keys(I.properties).forEach(_=>{I.properties[_].$converter=T});const N=(I==null?void 0:I.properties)||{},O=f(N,x,y,v,C,F);return{categoryId:u,categoryName:B,properties:O}}return{categoryId:u,categoryName:"",properties:[]}}function g(u,h,b,C,F){const M=u.type,T=n(u),v={};let w=F||t[M];if(!(w&&Object.keys(w).length>0)&&b&&b.getPropConfig&&(w=b.getPropConfig(C)),w&&w.categories){const x=[];return Object.keys(w.categories).map(S=>{const I=w.categories[S];if(I.$ref){x.push(m(S,I,u,h,C));return}const B=I==null?void 0:I.title,N=I==null?void 0:I.tabId,O=I==null?void 0:I.tabName,_=I==null?void 0:I.hide,k=I==null?void 0:I.hideTitle,V=f(I.properties||{},v,T,u,h,C,I.$converter),{setPropertyRelates:W}=I,P=I==null?void 0:I.parentPropertyID;x.push({categoryId:S,categoryName:B,tabId:N,tabName:O,hide:_,properties:V,hideTitle:k,setPropertyRelates:W,parentPropertyID:P})}),x}return[]}return{getPropertyConfigBySchema:g,getPropertyConfigByType:s,propertyConverterMap:i}}function Sr(t,e){let n;function i(s){const{properties:m,title:g,ignore:u}=s,h=u&&Array.isArray(u),b=Object.keys(m).reduce((C,F)=>((!h||!u.find(M=>M===F))&&(C[F]=m[F].type==="object"&&m[F].properties?i(m[F]):je.cloneDeep(m[F].default)),C),{});if(g&&(!h||!u.find(C=>C==="id"))){const C=g.toLowerCase().replace(/-/g,"_");b.id=`${C}_${Math.random().toString().slice(2,6)}`}return b}function o(s){const{properties:m,title:g,required:u}=s;if(u&&Array.isArray(u)){const h=u.reduce((b,C)=>(b[C]=m[C].type==="object"&&m[C].properties?i(m[C]):je.cloneDeep(m[C].default),b),{});if(g&&u.find(b=>b==="id")){const b=g.toLowerCase().replace(/-/g,"_");h.id=`${b}_${Math.random().toString().slice(2,6)}`}return h}return{type:g}}function l(s,m={},g){const u=t[s];if(u){let h=o(u);const b=e[s];return h=b?b({getSchemaByType:l},h,m,g):h,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(h),h}return null}function a(s,m){const g=i(m);return Object.keys(g).reduce((u,h)=>(Object.prototype.hasOwnProperty.call(s,h)&&(u[h]&&je.isPlainObject(u[h])&&je.isPlainObject(s[h]||!s[h])?Object.assign(u[h],s[h]||{}):u[h]=s[h]),u),g),g}function d(s,m){return Object.keys(s).filter(u=>s[u]!=null).reduce((u,h)=>{if(m.has(h)){const b=m.get(h);if(typeof b=="string")u[b]=s[h];else{const C=b(h,s[h],s);Object.assign(u,C)}}else u[h]=s[h];return u},{})}function c(s,m,g=new Map){const u=a(s,m);return d(u,g)}function p(s){var g;const m=s.type;if(m){const u=t[m];if(!u)return s;const h=a(s,u),b=((g=s.editor)==null?void 0:g.type)||"";if(b){const C=t[b],F=a(s.editor,C);h.editor=F}return h}return s}function f(s){n=s}return{getSchemaByType:l,resolveSchemaWithDefaultValue:p,resolveSchemaToProps:c,mappingSchemaToProps:d,setDesignerContext:f}}const xr={},Mr={},{resolveSchemaWithDefaultValue:Fr}=Sr(xr,Mr);wr({},{},Fr);const{globalStorageKey:Ml}=Z.useThirdComponent();var rn=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(rn||{});function Tr(t,e,n){function i(){const a=n.componentId;if(!a)return!1;const d=t.formSchemaUtils.getViewModelIdByComponentId(a);if(!d)return!1;const{schema:c}=e,{designViewModelUtils:p}=t,f=p.getDgViewModel(d),s=f==null?void 0:f.fields.find(m=>m.id===c.binding.field);return!(!s||s.$type!==rn.SimpleField)}function o(){const{schema:a}=e;return!!t.formSchemaUtils.getVariableById(a.binding.field)}function l(){var c;const{schema:a}=e;let d=!0;if(!t||!((c=a.binding)!=null&&c.field))return d;switch(a.binding.type){case rt.Form:{d=i();break}case rt.Variable:d=o()}return d}return{checkBindingFieldValidation:l}}const ln=r.defineComponent({name:"FDataGridColumnDesign",props:St,emits:[],setup(t,e){const n=r.ref(),i=r.inject("designer-host-service"),o=r.inject("design-item-context");r.inject("data-grid-context");const l=Jo(o,i),a=z.useDesignerComponent(n,o,l);r.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value);function d(s){var m;(m=o==null?void 0:o.setupContext)==null||m.emit("selectionChange",a.value.schema,o.schema,t.componentId,a.value)}const{checkBindingFieldValidation:c}=Tr(i,o,t),f=!r.inject("external-container-id");return()=>{var u;const s=f?c():!0,m="绑定信息已失效,请手动移除列",g=s?"":"color:red";return r.createVNode(r.Fragment,null,[s?"":r.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:m},null),r.createVNode("span",{class:"fv-column-title",style:g,ref:n,onClick:h=>d()},[((u=t.editor)==null?void 0:u.required)===!0&&r.createVNode("span",{class:"text-danger"},[r.createTextVNode("*")]),t.title])])}}}),an={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enableType:{type:"string",default:"unable"},enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""},onHandleAction:{description:"",type:"string",default:""},count:{description:"",type:"number",default:2}}},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:"object",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!1},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"object"},customSummaryStyle:{description:"",type:"object"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},rowOption:{type:"object",properties:{customRowStyle:{description:"",type:"string",default:""},customCellStyle:{description:"",type:"string",default:""},disable:{description:"",type:"object"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showSelectAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},multiSelectMode:{description:"多选模式",type:"string",default:"DependOnCheck"},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"enum",default:"client"},multiSort:{description:"",type:"boolean",default:!0}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},emptyTemplate:{description:"",type:"string",default:""},beforeUpdate:{description:"",type:"string",default:""},beforeEditCell:{description:"",type:"string",default:""}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onDoubleClickRow:"行双击事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件",onFilterChanged:"过滤事件",onSortChanged:"排序事件",onSelectItem:"选中行事件",onUnSelectItem:"取消选中行事件",onSelectAll:"全选事件",onUnSelectAll:"取消全选事件",onEndEditCell:"单元格结束编辑事件"}};function _r(){function t(e,n){const i={};return i.beforeEditCell=o=>n.call("beforeEditCell",e,[o,e]),i.beforeUpdate=o=>n.call("beforeUpdate",e,[o,e]),i}return{resolve:t}}const sn=ze.getPropsResolverGenerator(Qe.dataGridProps,an,ft,mt),dn=ze.createPropsResolver(Qe.dataGridProps,an,ft,mt),cn=ze.createCollectionBindingResolver(),un=ze.createDataGridSelectionItemResolver(),fn=ze.createDataViewUpdateColumnsResolver(),mn=_r();Ke.install=t=>{t.component(Ke.name,Ke)},Ke.register=(t,e,n,i,o)=>{t["data-grid"]=Qe,e["data-grid"]=sn(o),t["grid-field-editor"]=oo,e["grid-field-editor"]=$i(o),i["data-grid"]={bindingResolver:cn,selectionItemResolver:un,updateColumnsResolver:fn,callbackResolver:mn}},Ke.registerDesigner=(t,e,n)=>{t["data-grid"]=Ke,e["data-grid"]=dn,e["data-grid-column"]=ao,t["data-grid-column"]=ln,e["tree-grid-column"]=so,t["tree-grid-column"]=ln};const kr=Z.withInstall(Ke);ae.FDataGridDesign=Ke,ae.bindingResolver=cn,ae.callbackResolver=mn,ae.default=kr,ae.getColumnHeader=At,ae.propsResolver=dn,ae.propsResolverGenerator=sn,ae.selectionItemResolver=un,ae.updateColumnsResolver=fn,Object.defineProperties(ae,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});