@farris/ui-vue 1.7.0-beta.4 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (563) hide show
  1. package/components/accordion/index.esm.js +61 -312
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +56 -1481
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/binding-selector/index.esm.js +8 -752
  6. package/components/binding-selector/index.umd.cjs +1 -1
  7. package/components/button-edit/index.esm.js +358 -351
  8. package/components/button-edit/index.umd.cjs +1 -1
  9. package/components/button-group/index.esm.js +110 -266
  10. package/components/button-group/index.umd.cjs +1 -1
  11. package/components/calendar/index.esm.js +1371 -1284
  12. package/components/calendar/index.umd.cjs +30 -30
  13. package/components/code-editor/index.esm.js +169 -237
  14. package/components/code-editor/index.umd.cjs +3 -3
  15. package/components/collection-property-editor/index.esm.js +382 -351
  16. package/components/collection-property-editor/index.umd.cjs +2 -2
  17. package/components/color-picker/index.esm.js +502 -812
  18. package/components/color-picker/index.umd.cjs +1 -1
  19. package/components/combo-list/index.esm.js +197 -183
  20. package/components/combo-list/index.umd.cjs +1 -1
  21. package/components/combo-tree/index.esm.js +199 -364
  22. package/components/combo-tree/index.umd.cjs +1 -1
  23. package/components/comment/index.esm.js +1501 -1465
  24. package/components/comment/index.umd.cjs +6 -6
  25. package/components/common/index.esm.js +136 -100
  26. package/components/common/index.umd.cjs +1 -1
  27. package/components/component/index.css +1 -1
  28. package/components/component/index.esm.js +2662 -3647
  29. package/components/component/index.umd.cjs +1 -8
  30. package/components/condition/index.esm.js +492 -2449
  31. package/components/condition/index.umd.cjs +1 -8
  32. package/components/content-container/index.esm.js +252 -241
  33. package/components/content-container/index.umd.cjs +1 -1
  34. package/components/data-grid/index.esm.js +505 -409
  35. package/components/data-grid/index.umd.cjs +1 -1
  36. package/components/data-view/index.esm.js +3326 -3258
  37. package/components/data-view/index.umd.cjs +1 -1
  38. package/components/date-picker/index.esm.js +1709 -1634
  39. package/components/date-picker/index.umd.cjs +1 -1
  40. package/components/designer-canvas/index.css +1 -1
  41. package/components/designer-canvas/index.esm.js +2693 -3021
  42. package/components/designer-canvas/index.umd.cjs +1 -1
  43. package/components/designer-outline/index.esm.js +102 -98
  44. package/components/designer-outline/index.umd.cjs +1 -1
  45. package/components/drawer/index.esm.js +409 -358
  46. package/components/drawer/index.umd.cjs +2 -2
  47. package/components/dropdown/index.esm.js +124 -373
  48. package/components/dropdown/index.umd.cjs +2 -2
  49. package/components/dynamic-form/index.esm.js +760 -573
  50. package/components/dynamic-form/index.umd.cjs +1 -1
  51. package/components/dynamic-resolver/index.esm.js +354 -327
  52. package/components/dynamic-resolver/index.umd.cjs +2 -2
  53. package/components/dynamic-view/index.esm.js +413 -359
  54. package/components/dynamic-view/index.umd.cjs +1 -1
  55. package/components/event-parameter/index.esm.js +1 -1
  56. package/components/event-parameter/index.umd.cjs +1 -1
  57. package/components/events-editor/index.css +1 -1
  58. package/components/events-editor/index.esm.js +1535 -1941
  59. package/components/events-editor/index.umd.cjs +3 -3
  60. package/components/expression-editor/index.css +1 -1
  61. package/components/expression-editor/index.esm.js +2 -7317
  62. package/components/expression-editor/index.umd.cjs +1 -427
  63. package/components/field-selector/index.esm.js +13 -13
  64. package/components/field-selector/index.umd.cjs +1 -1
  65. package/components/fieldset/index.esm.js +140 -123
  66. package/components/fieldset/index.umd.cjs +1 -1
  67. package/components/filter-bar/index.esm.js +1021 -1012
  68. package/components/filter-bar/index.umd.cjs +2 -2
  69. package/components/filter-condition-editor/index.css +1 -1
  70. package/components/filter-condition-editor/index.esm.js +448 -9000
  71. package/components/filter-condition-editor/index.umd.cjs +1 -427
  72. package/components/html-template/index.esm.js +167 -147
  73. package/components/html-template/index.umd.cjs +1 -1
  74. package/components/image/index.esm.js +372 -352
  75. package/components/image/index.umd.cjs +2 -2
  76. package/components/image-cropper/index.esm.js +361 -615
  77. package/components/image-cropper/index.umd.cjs +1 -1
  78. package/components/json-editor/index.esm.js +247 -325
  79. package/components/json-editor/index.umd.cjs +1 -1
  80. package/components/language-textbox/index.esm.js +835 -421
  81. package/components/language-textbox/index.umd.cjs +2 -2
  82. package/components/layout/index.esm.js +163 -549
  83. package/components/layout/index.umd.cjs +1 -1
  84. package/components/list-nav/index.esm.js +39 -836
  85. package/components/list-nav/index.umd.cjs +1 -1
  86. package/components/list-view/index.esm.js +690 -474
  87. package/components/list-view/index.umd.cjs +6 -8
  88. package/components/loading/index.esm.js +128 -97
  89. package/components/loading/index.umd.cjs +2 -2
  90. package/components/locale/index.esm.js +361 -340
  91. package/components/locale/index.umd.cjs +5 -5
  92. package/components/lookup/index.css +1 -1
  93. package/components/lookup/index.esm.js +3396 -3368
  94. package/components/lookup/index.umd.cjs +1 -1
  95. package/components/mapping-editor/index.css +1 -1
  96. package/components/mapping-editor/index.esm.js +1684 -1584
  97. package/components/mapping-editor/index.umd.cjs +1 -1
  98. package/components/menu-lookup/index.esm.js +586 -609
  99. package/components/menu-lookup/index.umd.cjs +6 -6
  100. package/components/message-box/index.css +1 -1
  101. package/components/message-box/index.esm.js +357 -353
  102. package/components/message-box/index.umd.cjs +1 -1
  103. package/components/modal/index.esm.js +325 -318
  104. package/components/modal/index.umd.cjs +1 -1
  105. package/components/nav/index.esm.js +31 -311
  106. package/components/nav/index.umd.cjs +1 -1
  107. package/components/number-range/index.esm.js +189 -1633
  108. package/components/number-range/index.umd.cjs +1 -1
  109. package/components/number-spinner/index.esm.js +195 -175
  110. package/components/number-spinner/index.umd.cjs +1 -1
  111. package/components/order/index.esm.js +761 -1057
  112. package/components/order/index.umd.cjs +7 -9
  113. package/components/page-footer/index.esm.js +48 -331
  114. package/components/page-footer/index.umd.cjs +1 -1
  115. package/components/page-header/index.esm.js +92 -73
  116. package/components/page-header/index.umd.cjs +1 -1
  117. package/components/pagination/index.esm.js +195 -472
  118. package/components/pagination/index.umd.cjs +1 -1
  119. package/components/popover/index.esm.js +77 -76
  120. package/components/popover/index.umd.cjs +1 -1
  121. package/components/progress/index.esm.js +148 -353
  122. package/components/progress/index.umd.cjs +3 -3
  123. package/components/property-editor/index.esm.js +74 -68
  124. package/components/property-editor/index.umd.cjs +1 -1
  125. package/components/property-panel/index.esm.js +872 -1800
  126. package/components/property-panel/index.umd.cjs +5 -12
  127. package/components/query-solution/index.css +1 -1
  128. package/components/query-solution/index.esm.js +4223 -6205
  129. package/components/query-solution/index.umd.cjs +6 -13
  130. package/components/response-layout/index.esm.js +206 -170
  131. package/components/response-layout/index.umd.cjs +1 -1
  132. package/components/response-layout-editor/index.esm.js +1 -1
  133. package/components/response-layout-editor/index.umd.cjs +1 -1
  134. package/components/response-toolbar/index.esm.js +378 -359
  135. package/components/response-toolbar/index.umd.cjs +1 -1
  136. package/components/schema-selector/index.esm.js +2491 -2653
  137. package/components/schema-selector/index.umd.cjs +8 -10
  138. package/components/search-box/index.esm.js +79 -240
  139. package/components/search-box/index.umd.cjs +1 -1
  140. package/components/section/index.esm.js +304 -289
  141. package/components/section/index.umd.cjs +2 -2
  142. package/components/smoke-detector/index.esm.js +8 -179
  143. package/components/smoke-detector/index.umd.cjs +1 -1
  144. package/components/sort-condition-editor/index.esm.js +4 -9421
  145. package/components/sort-condition-editor/index.umd.cjs +1 -427
  146. package/components/splitter/index.esm.js +142 -1171
  147. package/components/splitter/index.umd.cjs +1 -1
  148. package/components/step/index.esm.js +48 -47
  149. package/components/step/index.umd.cjs +1 -1
  150. package/components/tabs/index.esm.js +460 -513
  151. package/components/tabs/index.umd.cjs +1 -1
  152. package/components/text/index.esm.js +73 -217
  153. package/components/text/index.umd.cjs +1 -1
  154. package/components/time-picker/index.esm.js +380 -375
  155. package/components/time-picker/index.umd.cjs +1 -1
  156. package/components/tooltip/index.esm.js +40 -40
  157. package/components/tooltip/index.umd.cjs +1 -1
  158. package/components/transfer/index.esm.js +551 -771
  159. package/components/transfer/index.umd.cjs +6 -8
  160. package/components/tree-grid/index.esm.js +250 -235
  161. package/components/tree-grid/index.umd.cjs +1 -1
  162. package/components/tree-view/index.esm.js +157 -314
  163. package/components/tree-view/index.umd.cjs +1 -1
  164. package/components/uploader/index.esm.js +634 -1125
  165. package/components/uploader/index.umd.cjs +2 -2
  166. package/components/verify-detail/index.esm.js +106 -359
  167. package/components/verify-detail/index.umd.cjs +1 -1
  168. package/components/video/index.esm.js +89 -222
  169. package/components/video/index.umd.cjs +1 -1
  170. package/components/weather/index.esm.js +199 -290
  171. package/components/weather/index.umd.cjs +1 -1
  172. package/designer/accordion/index.esm.js +257 -0
  173. package/designer/accordion/index.umd.cjs +1 -0
  174. package/designer/avatar/index.esm.js +227 -0
  175. package/designer/avatar/index.umd.cjs +1 -0
  176. package/designer/binding-selector/index.esm.js +792 -0
  177. package/designer/binding-selector/index.umd.cjs +1 -0
  178. package/designer/button-edit/index.esm.js +210 -203
  179. package/designer/button-edit/index.umd.cjs +1 -1
  180. package/designer/button-group/index.esm.js +282 -0
  181. package/designer/button-group/index.umd.cjs +1 -0
  182. package/designer/checkbox/index.esm.js +51 -45
  183. package/designer/checkbox/index.umd.cjs +1 -1
  184. package/designer/checkbox-group/index.esm.js +89 -83
  185. package/designer/checkbox-group/index.umd.cjs +1 -1
  186. package/designer/code-editor/index.esm.js +75 -0
  187. package/designer/code-editor/index.umd.cjs +1 -0
  188. package/designer/color-picker/index.esm.js +1096 -0
  189. package/designer/color-picker/index.umd.cjs +1 -0
  190. package/designer/combo-list/index.esm.js +1095 -0
  191. package/designer/combo-list/index.umd.cjs +1 -0
  192. package/designer/combo-tree/index.esm.js +186 -0
  193. package/designer/combo-tree/index.umd.cjs +1 -0
  194. package/designer/component/index.css +1 -0
  195. package/designer/component/index.esm.js +5002 -0
  196. package/designer/component/index.umd.cjs +1 -0
  197. package/designer/condition/index.esm.js +1899 -0
  198. package/designer/condition/index.umd.cjs +1 -0
  199. package/designer/data-grid/index.esm.js +5580 -6213
  200. package/designer/data-grid/index.umd.cjs +10 -17
  201. package/designer/data-view/index.esm.js +212 -191
  202. package/designer/data-view/index.umd.cjs +2 -2
  203. package/designer/date-picker/index.esm.js +621 -607
  204. package/designer/date-picker/index.umd.cjs +1 -1
  205. package/designer/drawer/index.css +1 -1
  206. package/designer/drawer/index.esm.js +869 -620
  207. package/designer/drawer/index.umd.cjs +2 -2
  208. package/designer/dropdown/index.esm.js +261 -0
  209. package/designer/dropdown/index.umd.cjs +1 -0
  210. package/designer/dynamic-form/index.esm.js +1166 -1384
  211. package/designer/dynamic-form/index.umd.cjs +1 -8
  212. package/designer/expression-editor/index.css +1 -0
  213. package/designer/expression-editor/index.esm.js +7006 -0
  214. package/designer/expression-editor/index.umd.cjs +427 -0
  215. package/designer/farris-designer.all.esm.js +10309 -10617
  216. package/designer/farris-designer.all.umd.cjs +17 -19
  217. package/designer/filter-condition-editor/index.css +1 -0
  218. package/designer/filter-condition-editor/index.esm.js +4795 -0
  219. package/designer/filter-condition-editor/index.umd.cjs +1 -0
  220. package/designer/html-template/index.esm.js +718 -0
  221. package/designer/html-template/index.umd.cjs +1 -0
  222. package/designer/image-cropper/index.esm.js +765 -0
  223. package/designer/image-cropper/index.umd.cjs +1 -0
  224. package/designer/index.css +1 -1
  225. package/designer/input-group/index.esm.js +72 -66
  226. package/designer/input-group/index.umd.cjs +1 -1
  227. package/designer/json-editor/index.esm.js +83 -0
  228. package/designer/json-editor/index.umd.cjs +1 -0
  229. package/designer/language-textbox/index.esm.js +783 -0
  230. package/designer/language-textbox/index.umd.cjs +8 -0
  231. package/designer/layout/index.esm.js +430 -0
  232. package/designer/layout/index.umd.cjs +1 -0
  233. package/designer/list-nav/index.esm.js +802 -0
  234. package/designer/list-nav/index.umd.cjs +1 -0
  235. package/designer/list-view/index.esm.js +864 -844
  236. package/designer/list-view/index.umd.cjs +7 -9
  237. package/designer/lookup/index.esm.js +2083 -0
  238. package/designer/lookup/index.umd.cjs +1 -0
  239. package/designer/menu-lookup/index.esm.js +46 -0
  240. package/designer/menu-lookup/index.umd.cjs +1 -0
  241. package/designer/modal/index.esm.js +137 -29
  242. package/designer/modal/index.umd.cjs +1 -1
  243. package/designer/nav/index.esm.js +284 -0
  244. package/designer/nav/index.umd.cjs +1 -0
  245. package/designer/number-range/index.esm.js +1616 -0
  246. package/designer/number-range/index.umd.cjs +1 -0
  247. package/designer/number-spinner/index.esm.js +19 -17
  248. package/designer/number-spinner/index.umd.cjs +1 -1
  249. package/designer/order/index.css +1 -0
  250. package/designer/order/index.esm.js +2196 -0
  251. package/designer/order/index.umd.cjs +18 -0
  252. package/designer/page-footer/index.esm.js +290 -0
  253. package/designer/page-footer/index.umd.cjs +1 -0
  254. package/designer/page-header/index.esm.js +1003 -0
  255. package/designer/page-header/index.umd.cjs +1 -0
  256. package/designer/pagination/index.esm.js +591 -0
  257. package/designer/pagination/index.umd.cjs +1 -0
  258. package/designer/progress/index.esm.js +213 -0
  259. package/designer/progress/index.umd.cjs +1 -0
  260. package/designer/radio-group/index.esm.js +978 -949
  261. package/designer/radio-group/index.umd.cjs +1 -1
  262. package/designer/response-layout-editor/index.esm.js +1 -1
  263. package/designer/response-layout-editor/index.umd.cjs +1 -1
  264. package/designer/response-toolbar/index.esm.js +1471 -1416
  265. package/designer/response-toolbar/index.umd.cjs +1 -1
  266. package/designer/search-box/index.esm.js +245 -0
  267. package/designer/search-box/index.umd.cjs +1 -0
  268. package/designer/section/index.esm.js +83 -78
  269. package/designer/section/index.umd.cjs +1 -1
  270. package/designer/smoke-detector/index.css +1 -0
  271. package/designer/smoke-detector/index.esm.js +178 -0
  272. package/designer/smoke-detector/index.umd.cjs +1 -0
  273. package/designer/sort-condition-editor/index.esm.js +138 -0
  274. package/designer/sort-condition-editor/index.umd.cjs +1 -0
  275. package/designer/splitter/index.esm.js +1120 -0
  276. package/designer/splitter/index.umd.cjs +1 -0
  277. package/designer/step/index.esm.js +226 -0
  278. package/designer/step/index.umd.cjs +1 -0
  279. package/designer/switch/index.esm.js +10 -10
  280. package/designer/switch/index.umd.cjs +1 -1
  281. package/designer/tabs/index.css +1 -1
  282. package/designer/tabs/index.esm.js +2447 -2698
  283. package/designer/tabs/index.umd.cjs +2 -2
  284. package/designer/text/index.esm.js +147 -0
  285. package/designer/text/index.umd.cjs +1 -0
  286. package/designer/time-picker/index.esm.js +101 -100
  287. package/designer/time-picker/index.umd.cjs +1 -1
  288. package/designer/transfer/index.esm.js +254 -0
  289. package/designer/transfer/index.umd.cjs +1 -0
  290. package/designer/tree-grid/index.esm.js +473 -810
  291. package/designer/tree-grid/index.umd.cjs +1 -1
  292. package/designer/tree-view/index.esm.js +313 -0
  293. package/designer/tree-view/index.umd.cjs +1 -0
  294. package/designer/uploader/index.esm.js +1190 -0
  295. package/designer/uploader/index.umd.cjs +2 -0
  296. package/designer/verify-detail/index.esm.js +258 -0
  297. package/designer/verify-detail/index.umd.cjs +1 -0
  298. package/designer/video/index.esm.js +136 -0
  299. package/designer/video/index.umd.cjs +1 -0
  300. package/designer/weather/index.css +1 -0
  301. package/designer/weather/index.esm.js +6244 -0
  302. package/designer/weather/index.umd.cjs +14 -0
  303. package/farris.all.esm.js +69941 -70514
  304. package/farris.all.umd.cjs +117 -117
  305. package/index.css +1 -1
  306. package/locales/filter-bar/ui/en.json +2 -1
  307. package/locales/filter-bar/ui/zh-CHS.json +2 -1
  308. package/locales/filter-bar/ui/zh-CHT.json +2 -1
  309. package/locales/query-solution/ui/en.json +1 -1
  310. package/locales/query-solution/ui/zh-CHS.json +1 -1
  311. package/locales/query-solution/ui/zh-CHT.json +1 -1
  312. package/locales/ui/en.json +3 -2
  313. package/locales/ui/zh-CHS.json +3 -2
  314. package/locales/ui/zh-CHT.json +3 -2
  315. package/package.json +1 -1
  316. package/types/accordion/designer.d.ts +44 -0
  317. package/types/accordion/src/accordion.props.d.ts +0 -1
  318. package/types/accordion/src/components/accordion-item.props.d.ts +0 -1
  319. package/types/avatar/designer.d.ts +29 -0
  320. package/types/avatar/src/avatar.props.d.ts +0 -1
  321. package/types/avatar/src/property-config/avatar.property-config.d.ts +1 -1
  322. package/types/{expression-editor/index.d.ts → binding-selector/designer.d.ts} +6 -6
  323. package/types/binding-selector/index.d.ts +0 -54
  324. package/types/binding-selector/src/binding-selector.props.d.ts +0 -1
  325. package/types/button-group/designer.d.ts +29 -0
  326. package/types/button-group/index.d.ts +15 -0
  327. package/types/button-group/src/button-group.props.d.ts +0 -1
  328. package/types/calendar/src/calendar.props.d.ts +1 -0
  329. package/types/calendar/src/components/month/month-view.component.d.ts +6 -6
  330. package/types/calendar/src/composition/use-calendar-events.d.ts +1 -1
  331. package/types/calendar/src/composition/use-locales.d.ts +1 -0
  332. package/types/calendar/src/property-config/calendar.property-config.d.ts +2 -0
  333. package/types/capsule/src/capsule-item.component.d.ts +6 -6
  334. package/types/checkbox/designer.d.ts +2 -0
  335. package/types/checkbox-group/designer.d.ts +2 -0
  336. package/types/code-editor/designer.d.ts +5 -0
  337. package/types/code-editor/index.d.ts +0 -1
  338. package/types/code-editor/src/code-textbox.component.d.ts +6 -6
  339. package/types/code-editor/src/code-textbox.props.d.ts +0 -2
  340. package/types/color-picker/designer.d.ts +29 -0
  341. package/types/color-picker/index.d.ts +0 -15
  342. package/types/color-picker/src/color-picker.props.d.ts +0 -1
  343. package/types/combo-list/designer.d.ts +29 -0
  344. package/types/combo-list/src/combo-list.props.d.ts +1 -0
  345. package/types/combo-list/src/designer/combo-list.design.props.d.ts +6 -0
  346. package/types/combo-tree/designer.d.ts +5 -0
  347. package/types/combo-tree/src/combo-tree.props.d.ts +0 -1
  348. package/types/combo-tree/src/components/tree-container.component.d.ts +7 -7
  349. package/types/comment/src/comment.props.d.ts +4 -0
  350. package/types/comment/src/designer/comment.design.props.d.ts +4 -0
  351. package/types/common/index.d.ts +1 -0
  352. package/types/common/utils/use-mobile.d.ts +1 -0
  353. package/types/component/designer.d.ts +35 -0
  354. package/types/component/index.d.ts +0 -2
  355. package/types/component/src/component.props.d.ts +0 -8
  356. package/types/component/src/composition/field-tree-builder.d.ts +1 -0
  357. package/types/components.d.ts +2 -6
  358. package/types/condition/designer.d.ts +56 -0
  359. package/types/condition/index.d.ts +0 -55
  360. package/types/content-container/index.d.ts +3 -2
  361. package/types/content-container/src/content-container.props.d.ts +1 -0
  362. package/types/data-grid/designer.d.ts +2 -0
  363. package/types/data-grid/index.d.ts +5 -2
  364. package/types/data-grid/src/data-grid.component.d.ts +2 -1
  365. package/types/data-grid/src/designer/grid-field-editor.props.d.ts +1 -0
  366. package/types/data-view/composition/types.d.ts +7 -1
  367. package/types/data-view/composition/use-mobile.d.ts +3 -0
  368. package/types/data-view/designer/property-config/use-command-option.d.ts +11 -0
  369. package/types/data-view/index.d.ts +1 -0
  370. package/types/designer-canvas/src/composition/designer-canvas-changed.d.ts +3 -3
  371. package/types/designer-canvas/src/composition/dg-control.d.ts +8 -0
  372. package/types/designer-outline/src/designer-outline.component.d.ts +3 -3
  373. package/types/designer-outline/src/types.d.ts +5 -1
  374. package/types/drawer/designer.d.ts +12 -0
  375. package/types/drawer/src/designer/drawer-toolbar.design.props.d.ts +12 -0
  376. package/types/drawer/src/designer/drawer.design.component.d.ts +8 -0
  377. package/types/drawer/src/designer/drawer.design.props.d.ts +4 -0
  378. package/types/drawer/src/schema/schema-mapper.d.ts +1 -0
  379. package/types/drawer/src/schema/schema-resolver.d.ts +1 -0
  380. package/types/dropdown/designer.d.ts +6 -0
  381. package/types/dropdown/index.d.ts +27 -6
  382. package/types/dropdown/src/dropdown.item.component.d.ts +2 -2
  383. package/types/dropdown/src/dropdown.props.d.ts +0 -1
  384. package/types/dynamic-form/designer.d.ts +3 -1
  385. package/types/dynamic-form/index.d.ts +4 -3
  386. package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.component.d.ts +6 -6
  387. package/types/dynamic-form/src/composition/use-input-type-resolver.d.ts +11 -0
  388. package/types/dynamic-resolver/index.d.ts +3 -0
  389. package/types/dynamic-resolver/src/props-resolver.d.ts +2 -0
  390. package/types/dynamic-resolver/src/resolver/property-config/property-config-resolver-design.d.ts +1 -1
  391. package/types/dynamic-resolver/src/resolver/property-config/property-config-resolver.d.ts +1 -1
  392. package/types/dynamic-resolver/src/resolver/property-config/use-property-config-resolver.d.ts +2 -2
  393. package/types/dynamic-resolver/src/resolver/schema/schema-resolver-design.d.ts +1 -1
  394. package/types/dynamic-resolver/src/resolver/schema/schema-resolver.d.ts +1 -1
  395. package/types/dynamic-view/src/components/maps.d.ts +883 -1
  396. package/types/dynamic-view/src/dynamic-view.component.d.ts +1 -1
  397. package/types/dynamic-view/src/types.d.ts +4 -0
  398. package/types/expression-editor/designer.d.ts +9 -0
  399. package/types/field-selector/index.d.ts +2 -1
  400. package/types/fieldset/index.d.ts +3 -2
  401. package/types/fieldset/src/fieldset.props.d.ts +1 -0
  402. package/types/filter-bar/src/composition/types.d.ts +1 -1
  403. package/types/filter-bar/src/composition/use-size.d.ts +2 -2
  404. package/types/filter-bar/src/locale/locale.d.ts +1 -0
  405. package/types/filter-condition-editor/designer.d.ts +10 -0
  406. package/types/filter-condition-editor/index.d.ts +0 -9
  407. package/types/filter-condition-editor/src/components/filter-condition-grid.component.d.ts +12 -12
  408. package/types/filter-condition-editor/src/components/sort-editor-grid.component.d.ts +12 -12
  409. package/types/filter-condition-editor/src/filter-condition-editor.props.d.ts +0 -1
  410. package/types/html-template/designer.d.ts +31 -0
  411. package/types/html-template/src/designer/html-template.design.props.d.ts +9 -0
  412. package/types/html-template/src/html-template.props.d.ts +2 -0
  413. package/types/image-cropper/designer.d.ts +4 -0
  414. package/types/image-cropper/src/image-cropper.props.d.ts +0 -1
  415. package/types/index.d.ts +0 -1
  416. package/types/input-group/designer.d.ts +2 -0
  417. package/types/json-editor/designer.d.ts +5 -0
  418. package/types/json-editor/src/components/editable-combo/editable-combo.component.d.ts +3 -3
  419. package/types/json-editor/src/components/editable-combo/popup-container.component.d.ts +3 -3
  420. package/types/json-editor/src/json-editor.props.d.ts +0 -1
  421. package/types/language-textbox/index.d.ts +6 -6
  422. package/types/language-textbox/src/language-textbox.component.d.ts +2 -2
  423. package/types/language-textbox/src/language-textbox.props.d.ts +1 -0
  424. package/types/layout/index.d.ts +1 -0
  425. package/types/layout/src/components/layout-pane.props.d.ts +0 -1
  426. package/types/layout/src/layout.props.d.ts +0 -1
  427. package/types/list-nav/index.d.ts +24 -5
  428. package/types/list-nav/src/list-nav.props.d.ts +0 -1
  429. package/types/list-view/index.d.ts +1 -0
  430. package/types/list-view/src/composition/use-draggable.d.ts +1 -1
  431. package/types/list-view/src/designer/list-view.design.props.d.ts +1 -0
  432. package/types/list-view/src/list-view-table.props.d.ts +1 -0
  433. package/types/loading/index.d.ts +6 -6
  434. package/types/loading/src/loading.component.d.ts +3 -3
  435. package/types/lookup/index.d.ts +1 -1
  436. package/types/lookup/src/components/popup-container.component.d.ts +6 -6
  437. package/types/lookup/src/lookup.props.d.ts +1 -0
  438. package/types/lookup/src/property-config/external-lookup.property-config.d.ts +1 -0
  439. package/types/lookup/src/property-config/lookup.property-config.d.ts +1 -0
  440. package/types/menu-lookup/designer.d.ts +5 -0
  441. package/types/menu-lookup/src/menu-lookup.props.d.ts +0 -1
  442. package/types/message-box/index.d.ts +6 -6
  443. package/types/message-box/src/message-box.component.d.ts +3 -3
  444. package/types/modal/designer.d.ts +2 -0
  445. package/types/modal/index.d.ts +30 -24
  446. package/types/modal/src/modal.component.d.ts +15 -12
  447. package/types/modal/src/modal.props.d.ts +4 -0
  448. package/types/nav/designer.d.ts +6 -0
  449. package/types/nav/index.d.ts +24 -20
  450. package/types/nav/src/nav.props.d.ts +0 -1
  451. package/types/notify/index.d.ts +3 -3
  452. package/types/notify/src/notify.component.d.ts +2 -2
  453. package/types/number-range/designer.d.ts +29 -0
  454. package/types/number-range/src/number-range.props.d.ts +0 -1
  455. package/types/number-spinner/src/composition/types.d.ts +1 -0
  456. package/types/order/designer.d.ts +6 -0
  457. package/types/order/index.d.ts +36 -5
  458. package/types/order/src/designer/order.design.component.d.ts +1 -1
  459. package/types/order/src/order.props.d.ts +0 -1
  460. package/types/page-footer/designer.d.ts +6 -0
  461. package/types/page-footer/index.d.ts +0 -2
  462. package/types/page-footer/src/page-footer.props.d.ts +0 -1
  463. package/types/page-header/index.d.ts +3 -2
  464. package/types/page-header/src/designer/page-header.design.props.d.ts +20 -0
  465. package/types/page-header/src/page-header.props.d.ts +2 -0
  466. package/types/pagination/designer.d.ts +29 -0
  467. package/types/pagination/index.d.ts +15 -0
  468. package/types/pagination/src/pagination.props.d.ts +0 -1
  469. package/types/popover/index.d.ts +3 -3
  470. package/types/popover/src/composition/use-resize.d.ts +1 -1
  471. package/types/popover/src/popover.component.d.ts +2 -2
  472. package/types/progress/designer.d.ts +29 -0
  473. package/types/progress/src/progress.props.d.ts +0 -1
  474. package/types/property-panel/src/property-panel.component.d.ts +3 -3
  475. package/types/query-solution/index.d.ts +4 -4
  476. package/types/query-solution/src/composition/types.d.ts +8 -2
  477. package/types/query-solution/src/composition/use-header.d.ts +2 -2
  478. package/types/query-solution/src/composition/use-solution-utils.d.ts +1 -1
  479. package/types/query-solution/src/designer/query-solution-config/composition/use-util.d.ts +1 -1
  480. package/types/query-solution/src/designer/query-solution-config/query-solution-config.props.d.ts +1 -0
  481. package/types/query-solution/src/designer/solution-preset-config/solution-preset.props.d.ts +1 -0
  482. package/types/query-solution/src/query-solution.props.d.ts +1 -0
  483. package/types/radio-group/designer.d.ts +4 -1
  484. package/types/radio-group/src/designer/item-collection-editor.props.d.ts +1 -0
  485. package/types/response-layout/index.d.ts +3 -2
  486. package/types/response-layout/src/component/response-layout-item.props.d.ts +1 -0
  487. package/types/response-layout/src/property-config/response-layout-splitter/response-layout-splitter.props.d.ts +1 -0
  488. package/types/response-layout/src/response-layout.props.d.ts +1 -0
  489. package/types/response-toolbar/designer.d.ts +2 -1
  490. package/types/response-toolbar/src/designer/response-toolbar.design.props.d.ts +1 -0
  491. package/types/search-box/designer.d.ts +52 -0
  492. package/types/search-box/index.d.ts +1 -17
  493. package/types/search-box/src/components/search-box-container.component.d.ts +3 -3
  494. package/types/search-box/src/search-box.props.d.ts +0 -1
  495. package/types/section/designer.d.ts +1 -0
  496. package/types/smoke-detector/designer.d.ts +6 -0
  497. package/types/smoke-detector/index.d.ts +0 -2
  498. package/types/smoke-detector/src/smoke-detector.props.d.ts +0 -1
  499. package/types/sort-condition-editor/designer.d.ts +9 -0
  500. package/types/sort-condition-editor/index.d.ts +2 -7
  501. package/types/sort-condition-editor/src/sort-condition-editor.props.d.ts +0 -1
  502. package/types/splitter/designer.d.ts +32 -0
  503. package/types/splitter/index.d.ts +1 -0
  504. package/types/splitter/src/components/splitter-pane.props.d.ts +0 -1
  505. package/types/splitter/src/splitter.props.d.ts +0 -1
  506. package/types/step/designer.d.ts +6 -0
  507. package/types/tabs/designer.d.ts +1 -0
  508. package/types/tabs/index.d.ts +0 -1
  509. package/types/tabs/src/composition/types.d.ts +1 -0
  510. package/types/tabs/src/designer/tab-toolbar-item.props.d.ts +1 -0
  511. package/types/tags/index.d.ts +3 -3
  512. package/types/tags/src/tags.component.d.ts +1 -1
  513. package/types/text/designer.d.ts +6 -0
  514. package/types/text/index.d.ts +24 -20
  515. package/types/text/src/text.props.d.ts +0 -1
  516. package/types/time-picker/src/components/time.component.d.ts +3 -3
  517. package/types/transfer/designer.d.ts +35 -0
  518. package/types/transfer/src/transfer.props.d.ts +0 -1
  519. package/types/tree-view/designer.d.ts +29 -0
  520. package/types/tree-view/src/tree-view.props.d.ts +0 -1
  521. package/types/uploader/designer.d.ts +141 -0
  522. package/types/uploader/index.d.ts +6 -6
  523. package/types/uploader/src/components/upload-progress.component.d.ts +3 -3
  524. package/types/uploader/src/uploader.component.d.ts +3 -3
  525. package/types/uploader/src/uploader.props.d.ts +0 -1
  526. package/types/verify-detail/designer.d.ts +6 -0
  527. package/types/verify-detail/index.d.ts +58 -5
  528. package/types/verify-detail/src/designer/verify-detail.design.component.d.ts +8 -8
  529. package/types/verify-detail/src/verify-detail.props.d.ts +0 -1
  530. package/types/video/designer.d.ts +6 -0
  531. package/types/video/index.d.ts +24 -20
  532. package/types/video/src/video.props.d.ts +0 -1
  533. package/components/sort-condition-editor/index.css +0 -1
  534. package/package.zip +0 -0
  535. package/types/designer-toolbox/index.d.ts +0 -3
  536. package/types/designer-toolbox/src/toolbox.component.d.ts +0 -14
  537. package/types/designer-toolbox/src/toolbox.props.d.ts +0 -29
  538. package/types/designer-toolbox/src/types.d.ts +0 -21
  539. package/types/designer.d.ts +0 -13
  540. package/types/flow-canvas/index.d.ts +0 -3
  541. package/types/flow-canvas/src/components/flow-node-item.component.d.ts +0 -8
  542. package/types/flow-canvas/src/components/flow-node-item.props.d.ts +0 -3
  543. package/types/flow-canvas/src/composition/types.d.ts +0 -42
  544. package/types/flow-canvas/src/composition/use-bezier-curve.d.ts +0 -2
  545. package/types/flow-canvas/src/composition/use-connections.d.ts +0 -2
  546. package/types/flow-canvas/src/composition/use-curve.d.ts +0 -4
  547. package/types/flow-canvas/src/composition/use-drawing-bezier.d.ts +0 -2
  548. package/types/flow-canvas/src/composition/use-drawing.d.ts +0 -4
  549. package/types/flow-canvas/src/flow-canvas.component.d.ts +0 -8
  550. package/types/flow-canvas/src/flow-canvas.props.d.ts +0 -3
  551. package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +0 -2
  552. package/types/layout/src/designer/layout-pane.design.component.d.ts +0 -8
  553. package/types/layout/src/designer/layout-use-designer-rules.d.ts +0 -2
  554. package/types/layout/src/designer/layout.design.component.d.ts +0 -8
  555. package/types/layout/src/schema/schema-mapper.d.ts +0 -2
  556. package/types/layout/src/schema/schema-resolver.d.ts +0 -2
  557. package/types/list-nav/src/designer/use-designer-rules.d.ts +0 -2
  558. package/types/list-nav/src/property-config/list-nav.property-config.d.ts +0 -8
  559. package/types/list-nav/src/schema/schema-mapper.d.ts +0 -2
  560. package/types/list-nav/src/schema/schema-resolver.d.ts +0 -2
  561. /package/{components → designer}/condition/index.css +0 -0
  562. /package/{components → designer}/uploader/index.css +0 -0
  563. /package/types/{list-nav/src/designer/list-nav.design.component.d.ts → dynamic-form/src/component/form-control/form-control.component.d.ts} +0 -0
@@ -1,30 +1,23 @@
1
- (function(de,D){typeof exports=="object"&&typeof module<"u"?D(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/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/data-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/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/data-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"],D):(de=typeof globalThis<"u"?globalThis:de||self,D(de["data-grid"]={},de.common,de.FDataGrid,de.dynamicResolver,de.Vue,de.VueUseCore,de.checkbox,de.FPopover,de.locale,null,de.LodashES,null,null,null,null,de.FButton,de.FButtonGroup,null,null,null,null,de.notify,de.condition,de.dynamicForm,de.designerCanvas,de.designer$1,de.propertyPanel,de.FTags,de.FTreeView,de.dataView,de.FFieldSelector))})(this,function(de,D,nt,ze,r,cn,wt,un,je,Pr,Re,Nr,Br,Or,jr,It,fn,Rr,Ar,Hr,Lr,St,fe,mn,A,We,He,pn,hn,_e,gt){"use strict";var Er=Object.defineProperty;var Ir=(de,D,nt)=>D in de?Er(de,D,{enumerable:!0,configurable:!0,writable:!0,value:nt}):de[D]=nt;var ie=(de,D,nt)=>Ir(de,typeof D!="symbol"?D+"":D,nt);const gn={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}},yn=D.excludeProperties(Object.assign({},gn,{disabled:{},editable:{},componentId:{type:String,default:""}}),"columnOption","commandOption");function vn(t,e,n,i,o){const{getGridHeaderCells:l}=o,a=120,s=50,f=r.computed(()=>{var g;return((g=t.rowNumber)==null?void 0:g.enable)||!1}),u=r.computed(()=>{var g,b;return((g=t.selection)==null?void 0:g.multiSelect)||((b=t.selection)==null?void 0:b.showCheckbox)||!1}),m=r.computed(()=>{var g;return 0+(f.value?((g=t.rowNumber)==null?void 0:g.width)||32:0)+(u.value?s:0)}),d=r.computed(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns}),c=r.computed(()=>{var g;return d.value&&((g=t.columnOption)==null?void 0:g.fitMode)||"none"});function h(g,b,S){const P=parseInt(g.width,10)/100;return S*P}function p(g,b,S){return typeof g.width=="string"?h(g,b,S):g.width||a}function y(g,b){const S=[],P=[];let B=0;g.value.primaryColumns.forEach(k=>{typeof k.width=="string"?P.push(k):(k.width=k.width||a,B+=k.width,S.push(k))});const E=b*(S.length/g.value.primaryColumns.length);S.forEach(k=>{const T=E*(k.width/B);k.actualWidth=T,g.value.primaryColumnsWidth+=k.actualWidth});const N=b-E;P.forEach(k=>{const T=h(k,g.value,N);k.actualWidth=T,g.value.primaryColumnsWidth+=k.actualWidth})}function w(g,b){const S=[],P=[],B=new WeakMap;let E=0,N=0;if(g.value.primaryColumns.forEach(T=>{if(typeof T.width=="string"){const V=h(T,g.value,b);B.set(T,V),E+=V,P.push(T)}else T.width=T.width||a,N+=T.width,S.push(T)}),b-E>N){const T=b-E;P.forEach(V=>{V.actualWidth=B.get(V)||a,g.value.primaryColumnsWidth+=V.actualWidth}),S.forEach(V=>{V.actualWidth=T*(V.width/N),g.value.primaryColumnsWidth+=V.actualWidth})}else y(g,b)}function F(g,b){g.value.primaryColumns.forEach(S=>{S.actualWidth=p(S,g.value,b),g.value.primaryColumnsWidth+=S.actualWidth})}const x={expand:w,none:F,percentage:y};function M(g){g.value.leftHeaderColumns=Array.from(l(g.value.leftColumns).values()),g.value.primaryHeaderColumns=Array.from(l(g.value.primaryColumns).values()),g.value.rightHeaderColumns=Array.from(l(g.value.rightColumns).values())}function _(g){g.value.leftColumnsWidth=0,g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,g.value.leftColumns.forEach(b=>{g.value.leftColumnsWidth+=b.actualWidth||0}),g.value.primaryColumns.forEach(b=>{g.value.primaryColumnsWidth+=b.actualWidth||0}),g.value.rightColumns.forEach(b=>{g.value.rightColumnsWidth+=b.actualWidth||0}),g.value=Object.assign({},g.value)}function v(g,b,S){var V;let P=0;const B=g.value.primaryColumns,E=g.value.rightColumns;g.value.rightColumns.forEach(H=>{H.actualWidth=p(H,g.value,b),P+=H.actualWidth});const N=S-P,k=x[c.value];if(k&&k(g,N),g.value.primaryColumnsWidth+P<=S)return g.value.primaryColumns=[...B,...E],g.value.primaryColumnsWidth+=P,g.value.rightColumns=[],g.value.rightColumnsWidth=0,!0;const T=new Map;return T.set("primary",[]),T.set("right",[]),g.value.primaryColumns.reduce((H,I)=>{var R,q;return I.fixed==="right"?(R=H.get("right"))==null||R.push(I):(q=H.get("primary"))==null||q.push(I),H},T),(V=T.get("right"))!=null&&V.length&&(g.value.primaryColumns=[...T.get("primary")||[]],g.value.rightColumns=[...T.get("right")||[]]),g.value.primaryColumnsWidth=0,g.value.rightColumnsWidth=0,!1}function C(){if(n.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const g=n.value.clientWidth-m.value;e.value.leftColumns.forEach(S=>{S.actualWidth=p(S,e.value,g),e.value.leftColumnsWidth+=S.actualWidth});const b=g-e.value.leftColumnsWidth;if(v(e,g,b))i.value=b;else{e.value.rightColumns.forEach(B=>{B.actualWidth=p(B,e.value,g),e.value.rightColumnsWidth+=B.actualWidth});const S=g-e.value.leftColumnsWidth-e.value.rightColumnsWidth,P=x[c.value];P&&P(e,S),i.value=S}M(e),e.value=Object.assign({},e.value)}}return r.watch(()=>{var g;return(g=t.columnOption)==null?void 0:g.fitColumns},(g,b)=>{g!==b&&g&&C()}),r.watch(c,(g,b)=>{g!==b&&d.value&&C()}),{calculateColumnHeaders:M,calculateColumnsSize:C,calculateColumnsWidth:_}}const bn="";function Cn(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 s(){i.value.rightColumns.forEach(g=>{g.showSetting=!1}),i.value.primaryColumns.forEach(g=>{g.showSetting=!1});const v=i.value.rightColumns,C=i.value.primaryColumns;v.length>0?v[v.length-1].showSetting=!0:C.length>0&&(C[C.length-1].showSetting=!0)}function f(v){o();const C=new Map;return a.value&&a.value.reduce((g,b)=>(g.set(b,!0),g),C),v.reduce((g,b)=>(b.filter=b.filter||bn,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),C.has(b.field)&&i.value.summaryColumns.push(b),g),i),s(),i}f(t.columns);const u=r.computed(()=>i.value.leftColumns.length>0),m=r.computed(()=>i.value.rightColumns.length>0);function d(v,C){return C.sortable&&C.sort&&C.sort!=="none"&&v.push(C),v}function c(v,C){return v.sortOrder=v.sortOrder||0,C.sortOrder=C.sortOrder||0,v.sortOrder===C.sortOrder?0:v.sortOrder<C.sortOrder?-1:1}function h(v,C){return v.sortOrder=v.sortOrder||0,C.sortOrder=C.sortOrder||0,v.sortOrder===C.sortOrder?0:v.sortOrder<C.sortOrder?1:-1}function p(v,C){return C.filterable&&v.push(C),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 w(){const v=[];i.value.leftColumns.reduce(d,v),i.value.primaryColumns.reduce(d,v),i.value.rightColumns.reduce(d,v);const C=Math.max(...v.map(g=>g.sortOrder||0));return v.sort(h).map(g=>{const b=g.sortOrder||C+1;return g.sortOrder=b,g}).sort(c).map((g,b)=>{const S=b+1;return g.sortOrder=S,g})}function F(v,C,g){const b=v.map(S=>{const P=g.getSorterByColumn(S),B=S.sort==="asc",E=S.sort==="desc",N=B?P.ascend:E?P.decend:void 0;return{field:S.field,compare:N}});C.setSorters(b)}function x(v,C){const g=w();F(g,v,C)}function M(v){}function _(v){}return{applyColumnSorter:x,collectionFilterableColumns:y,applySortableColumns:F,collectionSortableColumns:w,columnContext:i,hasLeftFixedColumn:u,hasRightFixedColumn:m,updateColumnRenderContext:f,updateColumnSettingIcon:s,sortFromServer:M,createSortConditions:_}}function wn(t,e,n,i,o,l,a,s){const f=r.ref(i.value-1+o),u=r.ref(0),{renderDataRow:m}=l,d=a?a.renderGroupRow:m,c=s?s.renderSummaryRow:m;function h(w){let F=m;return w.__fv_data_grid_group_row__&&(F=d),w.__fv_data_grid_group_summary__&&(F=c),F}function p(w,F,x,M){const{dataView:_}=n,v=[];if(_.value.length>0){const C=M?Date.now().toString():"";let g=w,b=0;const S=F-w+1;for(;v.length<S&&g<_.value.length;){const P=_.value[g],B=_.value[g-1]||x,E=v[b-1],N=B?(B.__fv_data_position__||0)+(B.__fv_data_height__||0):0,T=h(P)(P,B,E,g,N,e.value,v);T.refreshKey=C,v.push(T),b++,g++}}return u.value=v.length>0?v[0].index:0,f.value=v.length>0?v[v.length-1].index:0,v}function y(w,F,x){const M=F.groupField||"",{groupValue:_,raw:v}=F;n[w](M,_,v.groupParents||[]);const{dataView:C}=n,g=x[0].index,b=Math.min(g+i.value+o+1,C.value.length-1);return p(g,b)}return{getVisualData:p,maxVisibleRowIndex:f,minVisibleRowIndex:u,toggleGroupRow:y}}var Ee=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(Ee||{}),qe=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(qe||{}),it=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(it||{}),Pe=(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))(Pe||{}),Ge=(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))(Ge||{});const Sn="__setting__",Pt="__command__",xn=150,Mn="right",Nt="commands";function Fn(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:s=>o(s,e,"horizontal")},null)])}return{renderHorizontalScrollbar:a}}function Tn(t){function e(s,f){switch(s.command){case"edit":case"remove":return f.status===qe.initial;case"accept":case"cancel":return f.status===qe.editing;default:return!s.hidden}}function n(s,f,u,m){var d,c,h,p,y;switch((d=s.onClick)==null||d.call(s,f,u.dataIndex,u),s.command){case"edit":u.status,qe.editing,(h=(c=t.commandOption)==null?void 0:c.onClickEditCommand)==null||h.call(c,m,u,s,f);break;case"accept":case"cancel":u.status,qe.initial;break;case"remove":(y=(p=t.commandOption)==null?void 0:p.onClickDeleteCommand)==null||y.call(p,m,u,s,f);break}}function i(s){return s==="编辑"?je.LocaleService.getLocaleValue("datagrid.commandColumn.edit"):s==="确定"?je.LocaleService.getLocaleValue("datagrid.commandColumn.accept"):s==="取消"?je.LocaleService.getLocaleValue("datagrid.commandColumn.cancel"):s==="删除"?je.LocaleService.getLocaleValue("datagrid.commandColumn.remove"):s}function o(s,f){const{column:u}=s;return u.commands&&u.commands.map((m,d)=>d?e(m,f)&&r.createVNode(It,{class:"ml-1",type:m.type,size:m.size||"small",onClick:c=>n(m,c,f,s),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(m.text),r.createTextVNode(" ")]}):e(m,f)&&r.createVNode(It,{type:m.type,size:m.size||"small",onClick:c=>n(m,c,f,s),style:{"margin-bottom":"3px"}},{default:()=>[r.createTextVNode(" "),i(m.text),r.createTextVNode(" ")]}))}function l(s,f,u,m){var d,c,h;(d=f.onClick)==null||d.call(f,s,u.dataIndex,u),(h=(c=t.commandOption)==null?void 0:c.onHandleAction)==null||h.call(c,m,u,f,s)}function a(s,f){var d;const{column:u}=s;return((d=u==null?void 0:u.commands)==null?void 0:d.find(c=>c.command))?o(s,f):r.createVNode(fn,{data:u.commands,count:2,size:"small",placement:"auto",onClick:c=>{l(c.payload,c.button,f,s)}},null)}return{renderCommandColumn:a}}function _n(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],([f,u,m,d])=>{e.value=Number(m),n.value=Number(d),i.value=Number(f),o.value=Number(u)}),{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 kn(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(()=>je.LocaleService.getLocaleValue("datagrid.commandColumn.title"));function o(s){var f;if(e.value&&!(s.value.findIndex(m=>m.dataType===Nt)>-1)){const m={field:Pt,title:i.value,width:xn,fixed:Mn,dataType:Nt,commands:n.value,resizable:!1,halign:((f=t.commandOption)==null?void 0:f.halign)||"left",visible:!0,formatter:t.commandOption.formatter&&typeof t.commandOption.formatter?(d,c)=>t.commandOption.formatter(d,c):null};t.commandOption.formatter&&typeof t.commandOption.formatter!="function"&&(m.formatter=(d,c)=>t.commandOption.formatter(d,c)),s.value.push(m)}}return{applyCommands:o}}function Vn(t,e){var u;const n=r.ref((u=t.columnOption)==null?void 0:u.groups);function i(m,d,c,h,p){const y={actualWidth:0,children:[],depth:1,field:m.field,layer:1,left:0,parent:c,resizable:!0,title:m.title||"",status:Pe.none,popoverRef:r.ref(),showPopover:!1,column:null,sortType:"none"},w=h||y;if(m.group){let F=1;m.group.reduce((x,M)=>{if(typeof M=="string"){const _=d.get(M);_&&(p.fieldToRootMap.set(M,w),x.actualWidth+=_.actualWidth,x.children.push(_))}else{const _=i(M,d,x,w,p);F=Math.max(F,_.depth),x.actualWidth+=_.actualWidth,x.children.push(_)}return x},y),y.depth+=F}return e.value.headerDepth=Math.max(e.value.headerDepth,y.depth),y}function o(m){const d={groupedCells:new Map,fieldToRootMap:new Map};return n.value&&n.value.reduce((c,h)=>{const p=i(h,m,null,null,d);return c.groupedCells.set(h.field,p),c},d),d}function l(m){if(!m||m.length===0)return 0;const d=m[0];return d.children&&d.children.length>0&&(d.left=l(d.children)),d.left}function a(m,d){const c=e.value.headerDepth;m.forEach(h=>{h.layer=d?d.layer+1:1;const p=h.children&&h.children.length===0;h.depth=p?c-(h.layer-1):1,h.left=p?h.left:l(h.children),h.children&&a(h.children,h)})}function s(m,d){const c=new Map;return m.forEach(h=>{const p=d.fieldToRootMap.get(h.field),y=p!=null;y&&!c.has(p.field)&&c.set(p.field,p),y||c.set(h.field,h)}),a(Array.from(c.values())),c}function f(m){let d=new Map,c=0;if(m.reduce((h,p)=>{let y=Pe.none;y=p.sortable?y|Pe.sortable:y,y=p.filterable?y|Pe.filterable:y,y=p.sort&&p.sort!=="none"?y|Pe.sorted|(p.sort==="asc"?Pe.ascending:Pe.descending):y;const w=p.field;return h.set(w,{actualWidth:p.actualWidth||0,children:[],depth:1,layer:1,left:c,field:w,parent:null,resizable:p.resizable===void 0?!0:p.resizable,title:p.title,status:y,popoverRef:r.ref(),showPopover:!1,column:p,filterValue:null,sortType:p.sort||"none",showSetting:p.showSetting,draggable:p.draggable}),c+=p.actualWidth||0,h},d),n.value){const h=o(d);d=s(d,h)}return d}return{getGridHeaderCells:f}}function En(t,e){var v;const{sum:n,toFixed:i}=D.useNumberFormat(),{uuid:o}=D.useGuid(),{idField:l}=e,a=r.ref(t.summary),s=r.ref(t.group),f=r.ref(((v=t.group)==null?void 0:v.groupFields)||[]),u=r.computed(()=>{var C;return(C=t.group)==null?void 0:C.enable}),m=r.computed(()=>{var C;return(C=t.group)==null?void 0:C.showGroupPanel}),d=r.computed(()=>{const C=a.value;return(C==null?void 0:C.groupFields)||[]}),c=r.computed(()=>{const C=s.value;return C&&C.showSummary}),h=r.ref(0),p=new Map;let y=[];function w(C,g,b,S,P){const B=S[b];B&&(g.reduce((E,N,k)=>{var H;const T=N[B];let V=E.get(T);if(!V){const I=d.value.reduce((R,q)=>(R.set(q,0),R),new Map);V={field:B,title:((H=P.get(B))==null?void 0:H.title)||B,value:T,layer:b,details:[],groupSummaries:I},E.set(T,V)}return d.value&&d.value.forEach(I=>{if(V){const R=V.groupSummaries.get(I)||0;V.groupSummaries.set(I,n([R,D.resolveField(N,I)]))}}),d.value&&d.value.forEach(I=>{if(V){const R=V.groupSummaries.get(I)||0;V.groupSummaries.set(I,i(R,2))}}),V.details.push(N),E},C),b<S.length-1&&C.forEach((E,N)=>{E.nestGroup=new Map,w(E.nestGroup,E.details,b+1,S,P),E.details=[]}))}function F(C,g){return t.group&&t.group.formatter?t.group.formatter(C.value,{...C,total:g}):`${C.title}:${C.value} (${g})`}function x(C,g){const b=[];return C.forEach(S=>{const P={[l.value]:`group_of_${g?g[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:[]};g&&(P.groupParents=[...g.groupParents,g]);let B=0;if(b.push(P),S.nestGroup){const E=x(S.nestGroup,P);b.push(...E),B+=E.length}if(S.details&&S.details.length&&(b.push(...S.details),B+=S.details.length),c.value){const E={__fv_data_grid_group_field__:S.field,__fv_data_grid_group_layer__:S.layer,__fv_data_grid_group_summary__:!0};E[l.value]=`summary_of_${S.field}_${S.value}`,E[S.field]=Array.from(S.groupSummaries.entries()).reduce((N,[k,T])=>`${N} ${k} total:${T} `,""),b.push(E)}S.groupSummaries&&S.groupSummaries.size&&S.groupSummaries.forEach((E,N)=>{P[N]=E}),P[S.field]=F(S,B),P.value=S.value}),b.forEach((S,P)=>{S.__fv_data_index__=P}),b}function M(C,g,b){return!C||C.length===0||!g.length?g:(C.join(","),p.clear(),y=[],g=g.filter(S=>!S.__fv_data_grid_group_row__),w(p,g,0,C,b),y=x(p),y)}function _(C){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":C.collapse}}return{collpaseGroupIconClass:_,generateGroupData:M,groupFields:f,shouldGroupingData:u,showGroupPanel:m,groupRowSize:h}}function Bt(t){const e="parent",n="layer",i="hasChildren",o=(a,s=1,f=[],u=null)=>(a=a||[],a.reduce((m,d)=>(d.id=d.id||d.data[t.idField],d[e]=u,d[n]=s,d[i]=d[i]===void 0?!1:d[i],d.data&&Object.keys(d.data).forEach(c=>{Object.keys(d).includes(c)||(d[c]=d.data[c])}),f.push(d),d.children&&d.children.length&&(d[i]=!0,o(d.children,s+1,f,d.id)),m),f),f);return{flatTreeData:o,isNestedTree:a=>a.some(s=>Array.isArray(s.children))}}function In(t,e,n,i){const o=r.ref(0),l=r.ref(!!t.hierarchy),{idField:a}=i,{collapseField:s,hasChildrenField:f,parentIdField:u}=n,m=new Map,d=new Map,c=new Map,{flatTreeData:h,isNestedTree:p}=Bt(t);function y(L,W){d.clear(),L.reduce((G,U)=>{const ne=U[u.value]!==void 0?U[u.value]:"";if(ne&&W.has(ne)){const me=W.get(ne),ge=isNaN(Number(me.__fv_layer__))?1:Number(me.__fv_layer__);U.__fv_layer__=ge+1,U.__fv_parent_index__=me.__fv_index__,me.__fv_hasChildren__=!0}else U.__fv_layer__=1;const ue=G.has(ne)?G.get(ne):[];return ue.push(U),G.set(ne,ue),G},d)}function w(L){c.clear(),L.reduce((W,G)=>{const U=G[a.value];return W.set(U,G),W},c)}function F(L){L.forEach(W=>{const G=W[a.value];W.__fv_children_index__.map(ne=>L[ne]).forEach(ne=>{ne.__fv_parents__=new Map([...W.__fv_parents__.entries(),[G,!0]])})})}function x(L){L.forEach(W=>{const G=new Set(W.__fv_children_index__);W.__fv_children_index__=[...G].sort((U,ne)=>U-ne)})}function M(L){L.forEach(W=>{const G=W.__fv_parents__;Array.from(G.keys()).map(U=>c.get(U)).forEach(U=>{U.__fv_children_index__.push(W.__fv_index__)})}),x(L)}function _(L){L.forEach(W=>{W.__fv_child_with_lines__=[],W.__fv_child_length__=W.__fv_descendant_index__.length,W.__fv_descendant_index__.map(G=>L[G]).reduce((G,U)=>(G.__fv_child_length__+=U.__fv_children_index__.length,G.__fv_child_with_lines__.push(...U.__fv_children_index__,U.__fv_index__),G),W)})}function v(L,W){return{id:L,index:W,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map,collapsed:!1,visibleInHierarchy:!0}}function C(L,W,G){Array.from(W.keys()).forEach(U=>{W.get(U).reduce((ue,me)=>{const ge=me[a.value],ye=L.get(me[a.value]),he=L.get(U),Ie=G.get(U);return he&&Ie&&(he.children.set(ge,ye),he.children.set(ge,ye),ye.parentId=U,ye.parentIndex=he.index,ye.parents.set(U,he)),ue},L)})}function g(L){L.children.forEach(G=>{G.parents=new Map([...L.parents.entries(),[L.id,L]]),g(G)})}function b(L,W){L.filter(G=>G[u.value]===void 0||G[u.value]==="").forEach(G=>{const U=G[a.value],ne=W.get(U);g(ne)})}function S(L){Array.from(L.values()).forEach(W=>{Array.from(W.parents.values()).forEach(G=>{G.descendant.set(W.id,W)})})}function P(L){m.clear(),L.forEach((W,G)=>{const U=W[a.value];m.set(U,v(U,G))}),w(L),y(L,c),C(m,d,c),b(L,m),S(m)}function B(L){const W=L[a.value],G=m.get(W);return G&&G.children.size>0}function E(L){return L[f.value]&&!B(L)}function N(L){const W=L[a.value],G=m.get(W);return G&&G.visibleInHierarchy}function k(){o.value=Date.now()}function T(L,W){W.forEach(G=>{const U=m.get(G[a.value]),ne=m.get(L),ue=c.get(L);ne&&ue&&(U.visibleInHierarchy=!ue[s.value]&&ne.visibleInHierarchy)}),k()}function V(L){if(d.has(L)){const G=d.get(L);T(L,G),G.map(U=>U[a.value]).forEach(U=>V(U))}}function H(L){const W=L[a.value];V(W)}function I(L,W,G=0){L.forEach(U=>{const ne=E(U),ue=U.__fv_layer__<=G,me=W==="ToCollapse"?U.__fv_layer__<=G:!(U.__fv_layer__<=G),ge=ue?me:U[s.value];U[s.value]=ne||ge});for(const[U,ne]of d.entries())T(U,ne);return L}function R(L,W){I(L,"ToCollapse",W)}function q(L,W){I(L,"ToExpand",W)}function J(L){L.forEach((W,G)=>{var me;const U=W[a.value],ne=d.has(U)?(me=d.get(U))==null?void 0:me.map(ge=>ge.__fv_index__):[],ue=v(U,G);W.__fv_graph_node__=ue,W.__fv_children_index__=ne,W.__fv_descendant_index__=[...ne],W.__fv_parents__=new Map,E(W)&&(W[s.value]=!0)})}function j(L){var U,ne;P(e.value),J(L),F(L),M(L),t.showLines&&_(L);const G=((U=t.hierarchy)==null?void 0:U.collapseTo)!==void 0?Number((ne=t.hierarchy)==null?void 0:ne.collapseTo):0;return I(L,"ToCollapse",G),L}function ee(L,W,G){const ne=G.value[L][a.value],ue=m.get(ne);if(ue){const me=m.get(ue.parentId);let ge=G.value.length-1;if(me){const ye=Array.from(me.children.keys()).indexOf(ue.id);if(ye===me.children.size-1){const Ie=Array.from(me.descendant.values())[me.descendant.size-1];ge=G.value.findIndex(O=>O[a.value]===Ie.id)+1}else{const Ie=Array.from(me.children.values())[ye+1];ge=G.value.findIndex(O=>O[a.value]===Ie.id)}W[f.value]=!1,W[u.value]=me.id,G.value.splice(ge,0,W)}}}function oe(L,W,G){const U=G.value[L],ne=U[a.value];if(m.get(ne)){const ge=G.value.findIndex(ye=>ye[a.value]===ne)+1;U[f.value]=!0,U[s.value]=!1,W[f.value]=!1,W[u.value]=ne,G.value.splice(ge,0,W)}}function ce(L,W,G){const ne=G.value[L][a.value];if(m.get(ne)){const ge=G.value.findIndex(he=>he[a.value]===ne)+1;let ye=W;p(W)&&(ye=h(W)),ye.forEach(he=>{he[u.value]=ne}),G.value.splice(ge,0,...ye)}}function Z(L,W){const G=L[a.value],U=m.get(G),ne=Array.from(U.descendant.keys());ne.unshift(G);const ue=m.get(U.parentId);if(ue&&(ue.children.delete(G),ue.children.size===0)){const ge=W.find(ye=>ye[a.value]===U.parentId);ge[f.value]=!1,ge[s.value]=!1}return W.filter(ge=>ne.indexOf(ge.id)===-1)}return{checkVisibleInHierarchy:o,collapseTo:R,expandTo:q,generateHierarchyData:j,hasRealChildren:B,insertSibling:ee,insertChild:oe,insertChildren:ce,isVisibleInTree:N,shouldStratifyData:l,toggleChildrenVisibiltyByCollapseStatus:H,trimmedOriginalData:Z}}function Pn(t,e,n,i,o){const{toNumber:l,sum:a,toFixed:s}=D.useNumberFormat(),f=new Map,u=new Map,m=new Map,d=new Map,c=new Map,h=r.ref([]),p=r.ref([]),y=En(t,o),{generateGroupData:w,groupFields:F,shouldGroupingData:x}=y,M=r.ref(t.data||[]),_=In(t,M,i,o),{collapseTo:v,expandTo:C,generateHierarchyData:g,hasRealChildren:b,insertSibling:S,insertChild:P,insertChildren:B,isVisibleInTree:E,shouldStratifyData:N,toggleChildrenVisibiltyByCollapseStatus:k,trimmedOriginalData:T,checkVisibleInHierarchy:V}=_,{idField:H,reviseIdentifyField:I}=o,R=r.ref(t.newDataItem),q=r.ref(t.data||[]),J=r.ref(t.data),{flatTreeData:j,isNestedTree:ee}=Bt(t);if(t.hierarchy&&ee(t.data)){const $=j(t.data);M.value=$,q.value=$,J.value=$}const oe=r.ref(t.summary),ce=r.computed(()=>{const $=oe.value;return($==null?void 0:$.groupFields)||[]});let Z=new Map;const L=r.ref(q.value.length),W=r.ref(t.pagination);function G(){return W.value&&W.value.enable&&W.value.size>0?W.value.size:q.value.length}const U=r.ref(1),ne=r.computed(()=>W.value&&W.value.enable&&W.value.mode!=="server"),ue=r.computed(()=>W.value&&W.value.enable&&W.value.mode==="server"),me=new St.FNotifyService;function ge($,K){const le=Math.ceil($.length/K);let pe=0;const Ve=[],$e=[],Je=[];for(;pe<le;){const Oe=$.slice(pe*K,(pe+1)*K),Ce=w(F.value,Oe,e);$e[pe]=Ce.filter(we=>we.__fv_data_grid_group_row__).length,Ve.push(...Ce),pe++}return $e.reduce((Oe,Ce,we)=>(Oe=Oe+Ce,Je.push(Oe),Oe),0),{groupData:Ve,groupRowSizeList:$e,accumulateGroupRowSize:Je}}function ye(){var Ce;q.value=M.value,ne.value&&(L.value=q.value.length),x.value&&!ne.value&&(q.value=w(F.value,M.value,e)),Z=ce.value.reduce((we,Te)=>(we.set(Te,0),we),Z);const $=0,K=G(),le=(U.value-1)*K;let Ve=le>q.value.length-1||ue.value?$:le,$e=ue.value?q.value.length:Math.min(Ve+K,q.value.length);if(x.value&&ne.value){const{accumulateGroupRowSize:we,groupData:Te,groupRowSizeList:Me}=ge(M.value,K);q.value=Te;const at=Me[U.value-1];Ve+=U.value-2<0?0:we[U.value-2],$e=Ve+K+at}let Je=0;const Oe=[];if(q.value.length){I(q.value);const we=H.value!==t.idField;for(let Te=Ve;Te<$e;Te++){const Me=q.value[Te];Me.__fv_data_grid_group_row__?(Je=0,Me.__fv_data_index__=""):Me.__fv_data_grid_group_summary__?Me.__fv_data_index__="":(Je++,Me.__fv_data_index__=Je+(U.value-1)*K),Me.__fv_index__=Te,Me.__fv_visible_index__=Te,t.rowOption&&t.rowOption.disabledField&&(Me.__fv_disabled__=Me[(Ce=t.rowOption)==null?void 0:Ce.disabledField]),we&&(Me[H.value]=Te),ce.value.forEach(at=>{const Vt=Z.get(at)||0;Z.set(at,a([Vt,D.resolveField(Me,at)||0]))}),Oe.push(Me)}}return N.value&&g(Oe),ce.value.forEach(we=>{const Te=Z.get(we)||0;Z.set(we,s(Te,2))}),J.value=[...Oe],Oe}const he=r.ref(ye()),Ie=r.computed(()=>(V.value,he.value.filter($=>N.value?$.__fv_visible__!==!1&&E($):$.__fv_visible__!==!1)));function Le(){Ie.value.forEach(($,K)=>($.__fv_visible_index__=K,$))}function O($,K,le=!1){var Oe;const pe=le?ye():[...J.value];let Ve=pe;((Oe=t.filter)==null?void 0:Oe.mode)!=="server"&&(Ve=pe.filter(Ce=>n.apply(Ce)));const $e=$&&$.length?Ve.filter(Ce=>$.reduce((we,Te)=>we&&Te.filter(Ce),!0)):Ve,Je=K&&K.length?$e.sort((Ce,we)=>{const Te=[...K],Me=Te.shift(),at=D.resolveField(Ce,Me.field)===void 0||D.resolveField(Ce,Me.field)===null?"":D.resolveField(Ce,Me.field),Vt=D.resolveField(we,Me.field)===void 0||D.resolveField(we,Me.field)===null?"":D.resolveField(we,Me.field);let Et=Me.compare(at,Vt);for(;Et===0&&Te.length!==0;){const tt=Te.shift();if(tt){const kr=D.resolveField(Ce,tt.field)===void 0||D.resolveField(Ce,tt.field)===null?"":D.resolveField(Ce,tt.field),Vr=D.resolveField(we,tt.field)===void 0||D.resolveField(we,tt.field)===null?"":D.resolveField(we,tt.field);Et=tt.compare(kr,Vr)}}return Et}):$e;return he.value=Je.map((Ce,we)=>{if(Ce.__fv_data_grid_group_row__){const Te=`group_of_${Ce.__fv_data_grid_group_field__}_${Ce.__fv_data_grid_group_value__}`;Ce.__fv_data_grid_group_collapse__=!!f.get(Te)}return Ce.__fv_index__=we,Ce.__fv_visible_index__=we,Ce}),he.value}function Y($){return c.clear(),p.value=$,p.value.reduce((K,le)=>(K.set(le.field,le),K),c),O([],p.value)}function Q($,K){return c.set($,K),p.value=Array.from(c.values()),O([],p.value)}function re($){return c.delete($),p.value=Array.from(c.values()),O([],p.value)}function ve($,K){return u.set($,K),h.value=Array.from(u.values()),O([],Array.from(c.values()))}function Ne($){return u.delete($),h.value=Array.from(u.values()),O([],Array.from(c.values()),!0)}function De(){return u.clear(),h.value=[],O([],Array.from(c.values()),!0)}function Qe($,K,le){const pe=`group_of_${$}_${K}`;f.set(pe,!0);const Ve=$e=>$e[$]!==K;return m.set(`collapse_${$}_${K}`,{field:$,fieldName:$,fieldType:"string",filterValue:K,filter:Ve}),O(Array.from(m.values()),Array.from(c.values()))}function et($){v(he.value,$)}function z($){C(he.value,$)}function ae($,K,le){const pe=`group_of_${$}_${K}`;return f.set(pe,!1),m.delete(`collapse_${$}_${K}`),O(Array.from(m.values()),Array.from(c.values()),!0)}function Fe($){const K=$.raw[H.value],le=pe=>!pe.__fv_parents__.has(K);d.set(`fold_${K}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(K),filter:le}),O(Array.from(d.values()),Array.from(c.values())),g(he.value)}function Se($){const K=$[H.value];d.delete(`fold_${K}`)}function Ye($){Se($.raw),O(Array.from(d.values()),Array.from(c.values()),!0),g(he.value)}function Ae(){const $=ye();he.value=$,O(Array.from(d.values()),Array.from(c.values())),t.hierarchy&&g(he.value)}function Tt($){const le=t.hierarchy&&ee($)?j($):$;M.value=le,Ae()}function bt($,K,le){return($&&$.length?he.value.filter((Ve,$e)=>$.reduce((Je,Oe)=>Je&&Oe.filter(Ve),!0)):he.value).slice(K,le)}function _t($){const K=G(),le=Math.ceil(L.value/K);0<=$&&$<=le&&(U.value=$,Ae())}function kt($){M.value.push(Re.cloneDeep($)),he.value=ye()}function Ct($=0){if(!($>-1))return!1;const le=R.value();t.hierarchy?S($,le,M):M.value.splice($,0,le),Ae()}function X($=0){if(!($>-1&&t.hierarchy))return!1;const le=R.value(),pe=M.value[$];Se(pe),P($,le,M),Ae()}function te($,K=0){if(!(K>-1&&t.hierarchy))return!1;const pe=M.value[K];Se(pe),B(K,$,M),Ae()}function se($){const K=$?$-1:0;M.value.splice(K,1),Ae()}function xe($){const K=M.value.findIndex(le=>le[H.value]===$);K!==-1&&(M.value.splice(K,1),Ae())}function Be($){const K=$>-1?M.value[$]:null;if(!(K&&K.deletable!==!1))return!1;M.value=T(K,M.value),Ae()}function Xe(){const $=m.size>0?Array.from(m.values()):[];return O($,Array.from(c.values()))}function Ze($){W.value.size=$}function ht($){W.value&&(Ze($),Ae())}function ct($,K){const le=M.value[Number($)-1];le.editable!==!1?(le.name=K,Ae()):me.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function lt($){return $.map(le=>{const pe=J.value.findIndex(Ve=>""+Ve[H.value]==""+le);return pe>-1?J.value[pe]:null}).filter(le=>le!=null)}function ut(){const $=t.summary.groupFields;Z=$.reduce((K,le)=>(K.set(le,0),K),Z);for(const K of q.value)$.forEach(le=>{const pe=Z.get(le)||0;Z.set(le,a([pe,D.resolveField(K,le)||0]))});$.forEach(K=>{const le=Z.get(K)||0;Z.set(K,s(le,2))})}function _r($){const K=t.summary.groupFields;Z=K.reduce((le,pe)=>(le.set(pe,0),le),Z);for(const le of $)K.forEach(pe=>{const Ve=Z.get(pe)||0;Z.set(pe,a([Ve,D.resolveField(le.raw,pe)||0]))});K.forEach(le=>{const pe=Z.get(le)||0;Z.set(le,s(pe,2))})}return{addFilter:ve,addNewDataItem:kt,addSorter:Q,updatePageSize:Ze,changePageSizeTo:ht,collapse:Qe,collapseTo:et,dataView:he,editDataItem:ct,expand:ae,expandTo:z,filters:h,fold:Fe,getRange:bt,getSelectionItems:lt,hasRealChildren:b,insertNewChildDataItem:X,insertNewChildDataItems:te,insertNewDataItem:Ct,isVisibleInTree:E,load:Tt,navigatePageTo:_t,pageIndex:U,rawView:J,refresh:Xe,removeAllFilter:De,removeDataItem:se,removeDataItemById:xe,removeFilter:Ne,removeHierarchyDataItem:Be,removeSorter:re,reOrderVisibleIndex:Le,setSorters:Y,sorters:p,summaries:Z,updateSummary:ut,toggleChildrenVisibiltyByCollapseStatus:k,totalItems:L,unFold:Ye,updateDataView:Ae,visibleDataItems:Ie,shouldGroupingData:x,pagination:W,updateVisibleDataSummary:_r}}const Nn=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Bn={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},On={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},jn={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}},Rn={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},An={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}},Hn=new Map([["boolean",On],["datetime",jn],["enum",Rn],["number",An],["text",Bn]]);function Ln(t,e){const n=r.ref([]),i=new Map,{loadConditionGroup:o}=fe.useCondition();function l(_,v){switch(_){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"]]),s=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 f(){n.value.forEach((v,C)=>{C===n.value.length-1?v.relation=0:v.relation=1});const _=[];return n.value.forEach(v=>{const{valueType:C}=v.value,g=v.value.value;if(C==="boolean"){const b=[];g.length===1&&b.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}),g.length>1&&b.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+")":")"}),_.push(...b)}else _.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})}),_}function u(_){var C;const v=_.dataType||"string";return((C=_.editor)==null?void 0:C.type)||a.get(v)||"text"}function m(_){var k,T,V,H,I;const v=`field_filter_${_.field}`,C=Date.now(),g=_.field,b=((k=_.column)==null?void 0:k.title)||"",S=((T=_.column)==null?void 0:T.dataType)||"string",P=s.get(S)||fe.CompareType.Equal,B=((H=(V=_.column)==null?void 0:V.editor)==null?void 0:H.type)||a.get(S)||"text",E=l(B,(I=_.column)==null?void 0:I.filter),N=B==="lookup"||B==="combo-lookup"?fe.ValueType.SmartHelp:B==="combo-list"?fe.ValueType.Enum:fe.ValueType.Value;i.set(v,{id:v,fieldCode:g,fieldName:b,compareType:P,valueType:N,value:E,conditionId:C,relation:1}),n.value=Array.from(i.values())}function d(_){const v=`field_filter_${_.field}`;i.delete(v),n.value=Array.from(i.values())}function c(_){i.delete(_),n.value=Array.from(i.values())}function h(){i.clear(),n.value=[]}function p(_){const{valueType:v}=_.value,C=_.compareType||"0",g=Nn[Number(C)];return Hn.get(v)[g]}function y(_){const v=_.relation===2?0:1,C=_.items.map(b=>{const S=p(b);return B=>S(B,b.fieldCode,b.value.getValue())}),g=_.children&&_.children.length?_.children.map(b=>y(b)):[];return{relation:v,filterFunctions:C,children:g}}function w(){const _=o(n.value);return y(_)}function F(_,v){const C=v.filterFunctions.map(b=>b(_)),g=v.children.map(b=>F(_,b));return v.relation===1?C.every(b=>b)&&g.every(b=>b):C.includes(!0)||g.includes(!0)}function x(_){const v=w();return F(_,v)}function M(_){e.emit("filterChanged",_)}return{addColumnFilter:m,apply:x,clearCondition:h,conditions:n,getFilterEditorType:u,removeColumnFilter:d,removeCondition:c,filterFromServer:M,createFilterConditions:f}}function $n(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 Wn(t,e,n,i,o,l,a,s,f){var Ct;const{dataView:u,visibleDataItems:m}=e,{getVisualData:d,maxVisibleRowIndex:c,minVisibleRowIndex:h}=o,p=r.computed(()=>i.value.primaryColumnsWidth),y=r.computed(()=>i.value.leftColumnsWidth),w=r.computed(()=>i.value.rightColumnsWidth),F=((Ct=t.rowOption)==null?void 0:Ct.height)||28,x=r.ref(0),M=r.ref(0);let _=0,v=l.value-1;const C=r.ref(0),g=r.ref(0),b=r.ref(0),S=r.ref(t.virtualized),P=24,B=1.5;let E=null;function N(){const X=m.value;if(X.length<=0)return 0;const te=c.value<X.length?X[c.value]:X[X.length-1];return te.__fv_data_position__>X.length*F?X.length*F:(te.__fv_data_position__||0)+(te.__fv_data_height__||0)+Math.max(X.length-1-c.value,0)*F}const k=r.computed(()=>{const X=N();m.value;let te=g.value/Math.max(X,g.value),se=Math.floor(te*g.value);for(;g.value>0&&se<P;)te*=B,se=Math.floor(te*g.value);return se}),T=r.computed(()=>Math.floor(b.value/Math.max(p.value,b.value)*C.value)),V=0,H=0,I=r.computed(()=>C.value-(y.value+p.value+w.value+s.value));function R(X){const se=Math.floor(X/F)+1,xe=m.value;return xe.length>se?xe[se].__fv_visible_index__-1:0}function q(X,te,se){let xe=X,Be=te;const Xe=te-X+1;if(Xe<a+l.value+a){const Ze=a+l.value+a-Xe,ht=te+Ze<=se,ct=0+Ze<=X;if(ht)Be+=Ze,v=Be;else if(ct)xe-=Ze,_=xe;else{const lt=se-te,ut=Ze-lt;Be=Math.min(te+lt,se),xe=Math.max(X-ut,0)}}return{actualStart:xe,actualEnd:Be}}function J(X){var lt,ut;const te=m.value;if(!te.length){n.value=[];return}const se=(lt=t.pagination)!=null&&lt.enable?0:Math.max(_-a,0),xe=te[te.length-1].__fv_visible_index__,Be=(ut=t.pagination)!=null&&ut.enable?te.length-1:Math.min(v+a,xe),{actualStart:Xe,actualEnd:Ze}=q(se,Be,xe),ht=te[Xe-1],ct=d(Xe,Ze,ht,X);ct.length&&(n.value=[...ct])}const j=r.computed(()=>N()>g.value),ee=r.computed(()=>Math.floor(p.value)>b.value);function oe(X,te){let se=X;const xe=se>V,Be=j.value;Be&&se<g.value-te&&(se=g.value-te),(!Be||xe)&&(se=V),x.value!==se&&(x.value=se)}function ce(){S.value&&(_=R(Math.abs(x.value)),v=_+l.value-1,(_<h.value||v>c.value-a/2)&&J())}function Z(X){let te=x.value+X;te>V&&(te=V);const se=N();oe(te,se),ce()}function L(X){if(!ee.value){M.value=0;return}let te=M.value+X;te>H&&(te=H),te<I.value&&(te=I.value),M.value!==te&&(M.value=te)}function W(){Math.abs(M.value)+b.value>p.value&&(M.value=Math.min(b.value-p.value,0))}function G(){x.value=0,_=0,v=l.value-1,J()}function U(){const X=N();oe(x.value,X)}r.watch([b,p],()=>{L(0)}),r.watch(g,(X,te)=>{X!==te&&X>=u.value.length*F&&Z(0)});function ne(X){let{deltaX:te}=X,se=-1*X.deltaY;return typeof te>"u"&&(te=-1*X.wheelDeltaX/6),typeof se>"u"&&(se=X.wheelDeltaY/6),X.deltaMode&&X.deltaMode===1&&(te*=10,se*=10),X.shiftKey?{deltaY:-se,deltaX:-te}:{deltaX:te,deltaY:se}}function ue(X){if(t.disabled||!j.value||X.target.tagName==="TEXTAREA")return;X.preventDefault(),X.stopPropagation();const{deltaX:te,deltaY:se}=ne(X);Z(se),L(te)}const me=r.computed(()=>({height:`${u.value.length*F}px`,width:`${y.value}px`,transform:`translateY(${x.value}px)`})),ge=r.computed(()=>({transform:`translateY(${x.value}px)`})),ye=r.computed(()=>({height:`${(t.autoHeight?m.value:u.value).length*F}px`,width:`${p.value}px`,transform:`translate(${M.value}px, ${x.value}px)`})),he=r.computed(()=>({transform:`translate(${M.value}px, ${x.value}px)`})),Ie=r.computed(()=>({height:`${u.value.length*F}px`,width:`${w.value}px`,transform:`translateY(${x.value}px)`})),Le=r.computed(()=>({transform:`translateY(${x.value}px)`})),O=r.computed(()=>({height:`${u.value.length*F}px`,width:`${s.value}px`,transform:`translateY(${x.value}px)`})),Y=r.computed(()=>({width:`${y.value}px`})),Q=r.computed(()=>({transform:`translateX(${M.value}px)`})),re=r.computed(()=>({width:`${w.value}px`})),ve=r.computed(()=>{const X=N();return oe(x.value,X),x.value/(g.value-X)*(g.value-k.value)}),Ne=r.computed(()=>({width:"8px",height:`${k.value}px`,top:`${ve.value}px`,backgroundColor:"#cccccc !important"})),De=r.computed(()=>M.value/I.value*(C.value-T.value)),Qe=r.computed(()=>({height:"8px",width:`${T.value}px`,left:`${De.value}px`,backgroundColor:"#cccccc !important"})),et=r.ref(!1),z=r.ref(-1),ae=r.ref(-1),Fe=r.ref();function Se(X){if(et.value&&ae.value!==-1){const te=ae.value-X.pageX,se=C.value-T.value;if(Math.abs(te)<=se){const xe=te/(b.value-T.value)*(p.value-b.value);L(xe),ae.value=X.pageX}}}function Ye(X){if(et.value&&z.value!==-1){const te=z.value-X.pageY,se=N(),xe=se-k.value;if(Math.abs(te)<=xe){const Be=te/(g.value-k.value)*(se-g.value);Z(Be),z.value=X.pageY}}}function Ae(X){et.value=!1,z.value=-1,ae.value=-1,document.removeEventListener("mouseup",Ae),E&&(document.removeEventListener("mousemove",E),E=null),document.body.style.userSelect="",Fe.value&&(Fe.value.style.opacity=null)}function Tt(X,te,se){var Xe;et.value=!0;const xe=(Xe=X.target)==null?void 0:Xe.parentElement;xe&&(xe.style.opacity="1",Fe.value=xe);const Be=se==="horizontal"?Se:Re.throttle(Ye,50);E||(E=Be),se==="vertical"&&(z.value=X.pageY),se==="horizontal"&&(ae.value=X.pageX),te.value&&(te.value,document.addEventListener("mousemove",E),document.addEventListener("mouseup",Ae),document.body.style.userSelect="none")}function bt(X){const te=u.value.length*F-g.value;let se=X*F;se>=te&&(se=te),Z(-se-x.value)}function _t(){bt(u.value.length)}function kt(X){Z(X-x.value)}return{dataGridWidth:C,fitHorizontalScroll:W,gridDataStyle:ye,gridHeaderColumnsStyle:Q,gridMergedDataStyle:he,gridSideStyle:O,horizontalScrollThumbStyle:Qe,leftFixedGridDataStyle:me,leftFixedGridHeaderColumnsStyle:Y,leftFixedGridMergedDataStyle:ge,offsetX:M,offsetY:x,onMouseDownScrollThumb:Tt,onWheel:ue,reCalculateVisualDataRows:J,resetScroll:G,rightFixedGridDataStyle:Ie,rightFixedGridHeaderColumnsStyle:re,rightFixedGridMergedDataStyle:Le,shouldShowHorizontalScrollbar:ee,shouldShowVirticalScrollbar:j,updateVirticalScroll:U,updateVisibleRowsOnLatestVisibleScope:ce,verticalScrollThumbStyle:Ne,viewPortWidth:b,viewPortHeight:g,scrollToBottom:_t,scrollToRowByIndex:bt,scrollTo:kt}}function zn(t){var l;const{isUndefined:e}=D.useCommonUtils(),n=((l=t.rowOption)==null?void 0:l.height)||28;function i(a,s){const f=a.pre;if(f){let u=f.__fv_data_position__,m=f.__fv_data_height__;(e(u)||t.virtualized&&t.hierarchy&&f.__fv_visible_index__*n!==u)&&(u=f.__fv_visible_index__*n),e(m)&&(m=n);const d=a.visible?u+m:f.__fv_data_position__;a.top=d,s.__fv_data_position__=d}else a.top=0,s.__fv_data_position__=0}function o(a,s,f){if(a&&!s.ref){s.ref=a;const u=s.parent;s.cellHeight!==a.offsetHeight&&(s.cellHeight=a.offsetHeight),s.cellHeight&&s.cellHeight>(u.height||0)&&(u.height=s.cellHeight,f.__fv_data_height__=u.height),i(u,f)}!a&&s.ref&&(s.ref=a)}return{updateRowPosition:i,updateVisualInfomation:o}}function qn(){function t(e,n){var a,s;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(e!=null&&e.includes(",")){const f=e.split(",");if(!n.data.filter(c=>f.includes(c[i])).length)return"";const m=(a=n.data)==null?void 0:a.reduce((c,h)=>(c[h[i]]=h,c),{});return f.map(c=>{var h;return(h=m[c])==null?void 0:h[o]}).join(",")||e}const l=(s=n.data)==null?void 0:s.find(f=>f[i]===e);return(l==null?void 0:l[o])||e||""}return{renderEnumColumn:t}}function Gn(){function t(e,n){return e?n==null?void 0:n.trueText:n==null?void 0:n.falseText}return{renderText:t}}function Un(){const{formatTo:t}=D.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[s,f]=i.split(a);return s=t(s,l),f=t(f,l),s+a+f}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 Dn(){const{formatTo:t}=D.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 Yn(){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 Xn(){function t(e,n){const i=je.LocaleService.getLocale();return(e==null?void 0:e[i||"zh-CHS"])||""}return{renderMultilingualColumn:t}}function Zn(){const{renderText:t}=Gn(),{renderEnumColumn:e}=qn(),{renderNumberColumn:n}=Dn(),{renderDateColumn:i,renderDateTimeColumn:o}=Un(),{renderImageColumn:l}=Yn(),{renderMultilingualColumn:a}=Xn();function s(m){return typeof m=="boolean"?m.toString():m}function f(m,d,c){return d.customFormat?d.customFormat(m,c.raw):s(m)}function u(m,d,c){const{column:h}=m,p=D.resolveField(d.raw,h.field),y=c.options||c;return c.type===Ge.NONE?s(p):c.type===Ge.CUSTOM?f(p,c,d):c.type===Ge.ENUM?e(p,y):c.type===Ge.NUMBER?n(p,y):c.type===Ge.BOOLEAN?t(p,y):c.type===Ge.DATE?i(p,y):c.type===Ge.DATE_TIME?o(p,c):c.type===Ge.IMAGE?l(p,y):c.type===Ge.MULTI_LINGUAL?a(p,y):s(p)}return{renderFormatColumn:u}}function Jn(t,e,n){var F;const{isUndefined:i}=D.useCommonUtils(),o=r.ref(t.mergeCell);(F=r.ref(t.rowOption).value)!=null&&F.wrapContent;const{updateVisualInfomation:a}=n,{renderCommandColumn:s}=Tn(t),{renderFormatColumn:f}=Zn();function u(x,M,_,v,C,g=1){const b={colSpan:g,rowSpan:1,index:_,field:x,data:D.resolveField(v,x),editingData:D.resolveField(v,x),parent:C,mode:M,align:"left",valign:"start",showEllipsis:!0,getEditor:S=>S.data,setRef:S=>a(S,b,v),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return b}function m(x,M,_){return x.getEditor=v=>e.getEditor(v,M,v.parent),x.setRef=v=>a(v,x,_),x.update=v=>{v!==void 0&&(x.editingData=v)},x.accept=()=>{D.setFieldValue(x.editingData,_,M.field),x.data=D.resolveField(_,M.field)},x.cancel=()=>{x.editingData=x.data},x.updateData=v=>{D.setFieldValue(D.resolveField(v,M.field),_,M.field),x.data=D.resolveField(_,M.field),x.editingData=D.resolveField(_,M.field)},x}function d(x,M){M.dataType==="commands"?x.formatter=(_,v)=>M.formatter?M.formatter(x,v):s(x,v):M.formatter&&(x.formatter=(_,v)=>typeof M.formatter=="function"?M.formatter(_,v):f(x,v,M.formatter))}function c(x,M,_){const v=M&&M.data[_];if(v&&v.data===x.data){const g=v&&v.spannedBy||v;g.rowSpan++,g.spanned=g.spanned||[],g.spanned.push(x),x.colSpan=0,x.rowSpan=0,x.spannedBy=g}}function h(x,M,_){o.value&&c(x,M,_.field)}function p(x,M){M.showEllipsis!==void 0&&(x.showEllipsis=M.showEllipsis),x.showTips=i(M.showTips)?!0:M.showTips,x.column=M,x.align=M.align||"left",x.valign=M.valign||"middle",x.mode=t.editable?Ee.editable:Ee.readonly}function y(x,M,_,v){p(x,M),m(x,M,v),d(x,M),h(x,_,M)}function w(x,M,_,v,C){const g=t.editable?Ee.editable:Ee.readonly,b=u(x.field,g,M,_,v);return y(b,x,C,_),b}return{createCellByColumn:w,createCellByField:u,updateCellByColumn:y}}function Qn(t,e,n,i,o,l,a){var M,_;const s=r.ref(t.rowOption),f=((M=s.value)==null?void 0:M.height)||28,u=((_=s.value)==null?void 0:_.wrapContent)||!1,{idField:m}=o,{collapseField:d}=i,{updateRowPosition:c}=l,{createCellByColumn:h}=a,p=(v,C,g,b)=>{D.setFieldValue(D.resolveField(v,b),C,b),g.data[b].data=D.resolveField(C,b),g.data[b].editingData=D.resolveField(C,b)};function y(v,C,g,b,S,P){var ee,oe,ce;const{__fv_data_grid_group_field__:B,__fv_data_grid_group_value__:E,__fv_data_index__:N}=g,k=g.__fv_data_grid_group_layer__||(g.__fv_parents__?(ee=g.__fv_parents__)==null?void 0:ee.size:0)||0,T=typeof g.parent=="number"?Number(g.parent):-1,V=g.__fv_data_grid_group_collapse__||g[d.value],H=g.__fv_visible__===void 0?!0:g.__fv_visible__,I=g.__fv_checked__,R=g.__fv_indeterminate__,q=g.__fv_disabled__||g[((oe=t.rowOption)==null?void 0:oe.disabledField)||"disabled"],J=t.hierarchy&&e.isVisibleInTree(g),j={collapse:V,data:{},dataIndex:N,groupField:B,groupValue:E,layer:k,index:C,parentIndex:T,pre:b,top:P,type:v,raw:g,checked:I,disabled:q,indeterminate:R,setRef:Z=>{j.ref=Z},visible:H&&J||H&&!t.hierarchy,status:qe.initial,updateCell:(Z,L)=>{p(Z,g,j,L),e.updateSummary()},updateCells:(Z,L)=>{L.forEach(W=>{p(Z,g,j,W)})}};return b||(g.__fv_data_position__=0),u||(j.height=f,g.__fv_data_height__=j.height,c(j,g)),(ce=s.value)!=null&&ce.customRowStatus&&(s.value.customRowStatus(j),g.__fv_disabled__=j.disabled),j}function w(v,C,g,b,S,P){const B=y(it.data,S,C,g,b,P);return v.forEach((E,N)=>{B.data[E.field]=h(E,N,C,B,b)}),B}function F(v,C,g,b,S){return Object.assign(v,{index:C,dataIndex:g,top:b,pre:S})}function x(v,C,g,b,S,P){const B=v.__fv_data_index__,E=v[m.value],N=n.getEditingSnapshot(E);return N===null?w(P,v,C,g,b,S):F(N,b,B,S,C)}return{createEmptyRow:y,createNewRowFromDataItem:w,renderDataRow:x}}function Kn(t,e,n,i){const o=r.ref(t.summary),{idField:l}=e,{createCellByField:a}=n,{createEmptyRow:s}=i,f=r.computed(()=>{const c=o.value;return(c==null?void 0:c.groupFields)||[]}),u=r.computed(()=>{const c=o.value;return c&&c.enable&&c.groupFields&&c.groupFields.length>0});function m(c,h,p,y){if(u.value){const w=c.data[h];let F=w.colSpan;const x=f.value.reduce((M,_)=>(M.set(_,!0),M),new Map);y.reduce((M,_,v)=>{if(x.has(_.field)){const C=a(_.field,Ee.readonly,v,p,c);c.data[_.field]=C,F-1>v&&(F=v)}return M},c),w.colSpan=F}}function d(c,h,p,y,w,F,x){const M=c.__fv_data_grid_group_field__,_=s(it.group,y,c,h,p,w);return _.data[l.value]=a(l.value,Ee.readonly,-1,c,_,0),_.data[M]=a(M,Ee.readonly,1,c,_,F.length),m(_,M,c,F),_}return{renderGroupRow:d}}function ei(t,e,n,i){const{idField:o}=e,{createCellByField:l}=n,{createEmptyRow:a}=i;function s(f,u,m,d,c,h,p){const y=f.__fv_data_grid_group_field__,w=a(it.summary,d,f,u,m,c);return w.data[o.value]=l(o.value,Ee.readonly,-1,f,w),w.data[y]=l(y,Ee.readonly,1,f,w,h.length),w}return{renderSummaryRow:s}}function ti(t,e,n,i,o){var J;const{idField:l}=n,a=r.ref(t.editable),s=r.ref(t.editOption),f=r.ref(((J=t.rowOption)==null?void 0:J.wrapContent)||!1),{onClickRow:u,onClickRowExcludeDblclick:m}=i,d=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let c,h,p,y,w;function F(j){return h&&h.raw[l.value]===j?h:null}const x=r.reactive({});function M(j){return(j==null?void 0:j.field)!==Pt&&(j==null?void 0:j.field)!==Sn}function _(j,ee,oe={}){j.mode=Ee.editing,c=j,h=ee,p=D.resolveField(ee==null?void 0:ee.raw,j.field),y=oe;for(const ce in x)delete x[ce]}function v(j){j.accept(),j.mode=Ee.editable,c=null;const ee={};h&&(Object.keys(h).forEach(oe=>{ee[oe]=h==null?void 0:h[oe]}),h=null),e.emit("endEditCell",{cell:j,row:ee,newValue:D.resolveField(ee==null?void 0:ee.raw,j.field),oldValue:p,column:y,editor:x})}function C(j){const ee=Promise.resolve(!0);return j?ee.then(()=>Re.isUndefined(t.beforeEndEditCell)?!0:typeof t.beforeEndEditCell=="function"?t.beforeEndEditCell({cell:j,row:h,newValue:j.editingData,oldValue:p}):()=>!0).then(oe=>(oe&&(v(j),h&&(h=null)),oe)):ee}function g(j){if(w&&w!==j.target){w=null;return}if(document.body.classList.contains("lookup-modal-open"))return;const oe=j.target;if(!(oe!=null&&oe.closest(".popover"))){if(j instanceof MouseEvent||j.key!=="Enter"){const ce=oe.closest(".fv-grid-cell");if(c&&c.ref&&c.ref===ce)return}C(c).then(ce=>{ce&&document.body.removeEventListener("click",g,!0)})}}function b(j,ee,oe){return Promise.resolve().then(()=>{var Z;const ce=(Z=oe.editor)==null?void 0:Z.readonly;return!Re.isUndefined(t.beforeEditCell)&&typeof t.beforeEditCell=="function"?t.beforeEditCell({row:j,cell:ee,rawData:j.raw,column:oe}):!ce}).then(ce=>{ce&&(_(ee,j,oe),document.body.removeEventListener("click",g,!0),document.body.addEventListener("click",g,!0))})}function S(j,ee,oe,ce={}){j.stopPropagation(),m(j,oe),M(ee.column)&&a.value&&s.value.editMode==="cell"&&ee.mode===Ee.editable&&C(c).then(()=>{c||b(oe,ee,ce)})}function P(j,ee,oe,ce={}){j.stopPropagation(),u(j,oe),M(ee.column)&&a.value&&s.value.editMode==="cell"&&ee.mode===Ee.editable&&C(c).then(()=>{c||b(oe,ee,ce)})}function B(j){j.stopPropagation(),w=j.target}function E(j){j.stopPropagation(),w&&(w=null)}function N(j){Object.values(j.data).filter(ee=>ee.mode===Ee.editable&&M(ee.column)).forEach(ee=>{ee.mode=Ee.editing}),j.status=qe.editing,h=j}function k(j,ee){Object.values(j.data).filter(oe=>oe.mode===Ee.editing).forEach(oe=>{ee?oe.accept():oe.cancel(),oe.mode=Ee.editable}),j.status=qe.initial,h===j&&(h=null)}function T(j){a.value&&s.value.editMode==="row"&&h!==j&&(h&&k(h,!1),N(j))}function V(j){k(j,!0),j.status=qe.initial}function H(j){k(j,!1),j.status=qe.initial}function I(j,ee,oe){const ce=ee.dataType,Z=ee.editor||{type:d.get(ce)||"input-group"};return!f.value&&Z.type==="text"&&(Z.type="input-group"),Z&&M(j.column)?(Z.type==="input-group"&&(Z.textAlign=ee.align!=="center"&&ee.align!=="right"?"left":ee.align,Z.updateOn="change"),Z.type==="number-spinner"&&(Z.updateOn="change"),Z.type==="textarea"&&(Z.lineBreak="alt enter"),Z.context={rowData:oe.raw,column:ee,cell:j,editor:x},Z.readonly=!1,r.createVNode(mn.FDynamicFormInput,{focusOnCreated:t.focusOnEditingCell,selectOnCreated:t.selectOnEditingCell,editor:Z,modelValue:j.editingData,"onUpdate:modelValue":L=>j.editingData=L,id:ee.id,onMousedown:L=>B(L),onMouseup:L=>E(L)},null)):j.data}function R(){C(c)}r.watch(()=>t.editable,()=>{a.value=t.editable}),r.watch(()=>{var j;return(j=t.editOption)==null?void 0:j.editMode},j=>{s.value.editMode=j});function q(){c=null,h=null,y=null,w=null,document.body.removeEventListener("click",g,!0)}return{clear:q,onClickOutOfCell:g,onClickCell:P,onClickCellByKeyboard:S,onEditingRow:T,acceptEditingRow:V,cancelEditingRow:H,getEditingSnapshot:F,getEditor:I,endEditCell:R,onMousedownCell:B,onMouseupCell:E}}function ni(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 ii(t,e,n,i){const{idField:o}=i,{currentSelectedDataId:l,multiSelectOnClickRow:a,multiSelectOnClickRowWithShift:s,selectItem:f,toggleSelectItem:u,updateSelectAllStatus:m,isSingleSelect:d}=n,c=r.ref(0),h=r.ref(-1);function p(E){l.value=E}function y(E){return E.raw[o.value]===l.value}function w(E,N){var V;const k=N??E.dataIndex,T={"fv-grid-row":E.type===it.data,"fv-grid-group-row":E.type===it.group,"fv-grid-summary-row":E.type===it.summary,"fv-grid-row-hover":k===h.value,"fv-grid-row-selected":y(E),"fv-grid-row-odd":k%2>0,"fv-grid-row-even":k%2===0,"fv-grid-disabled":E.disabled};if((V=t.rowOption)!=null&&V.customRowStyle){const H=t.rowOption.customRowStyle(E.raw)||{};return Object.assign({},T,H.class||{})}return T}function F(E,N){var T;const k={"fv-grid-cell":!0};if((T=t.rowOption)!=null&&T.customCellStyle){const V=t.rowOption.customCellStyle(E,N)||{};return Object.assign({},k,V.class||{})}return k}function x(E,N){var T;const k={"fv-grid-hierarchy-cell":!0};if((T=t.rowOption)!=null&&T.customCellStyle){const V=t.rowOption.customCellStyle(E,N)||{};return Object.assign({},k,V.class||{})}return k}function M(E){const N=l.value,k=E.raw[o.value];p(k),N!==k&&e.emit("selectionChange",[E.raw],{id:k,data:E.raw})}function _(E,N){var V,H;if(s.value&&!(N!=null&&N.shiftKey)||d.value){(V=t.selection)!=null&&V.keepSelectingOnClick?f(E):u(E,(H=t.selection)==null?void 0:H.keepSelectingOnClick),m();return}if(s.value&&(N==null?void 0:N.shiftKey)||a.value){u(E),m();return}}function v(E,N){N.disabled||(e.emit("clickRow",N.index,N.raw),M(N),_(N,E))}function C(E){c.value+=1,setTimeout(()=>{c.value===1&&e.emit("clickRow",E.index,E.raw),c.value=0},250),c.value>1&&(e.emit("doubleClickRow",E.index,E.raw),c.value=0)}function g(E,N){N.disabled||(C(N),M(N),_(N,E))}function b(E){E.disabled||C(E)}function S(E,N){}function P(E,N){}function B(E,N){var V;const k=N??E.dataIndex,T={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":k===h.value,"fv-grid-sidebar-row-selected":y(E),"fv-grid-sidebar-row-odd":k%2>0,"fv-grid-sidebar-row-even":k%2===0,"d-flex":!0,"align-items-center":!0};if((V=t.rowOption)!=null&&V.customRowStyle){const H=t.rowOption.customRowStyle(E.raw)||{};return Object.assign({},T,H.class||{})}return T}return{activeRowById:p,clickRowItem:b,selectRow:_,changeRow:M,gridCellClass:F,gridHierarchyCellClass:x,gridRowClass:w,onClickRow:g,onClickRowExcludeDblclick:v,onMouseoverRow:S,sidebarRowClass:B,onMouseoutRow:P}}function oi(t,e,n,i,o){const{idField:l}=n,{dataView:a,getSelectionItems:s}=e,f=r.ref(""),u=r.computed(()=>t.selection.enableSelectRow),m=r.ref(t.selection.multiSelect??!1),d=r.ref(t.selection.multiSelectMode||"DependOnCheck"),c=r.ref(t.selection.showCheckbox),h=r.ref(t.selection.showSelectAll),p=r.ref(t.selectionValues||[]),y=r.computed(()=>t.selection.showSelection),w=r.computed(()=>{var O;return((O=t.selection)==null?void 0:O.keepSelectingOnPaging)===void 0?!0:t.selection.keepSelectingOnPaging}),F=r.ref(!!p.value.length&&i.value.length===p.value.length),x=r.ref(!!p.value.length&&i.value.length!==p.value.length);r.watch(()=>t.selection.showSelectAll,(O,Y)=>{O!==Y&&(h.value=O)});function M(){if(!w.value){const O=a.value.map(Y=>Y[l.value]);p.value=p.value.filter(Y=>O.includes(Y))}}function _(){const O=a.value.every(Q=>p.value.includes(Q[l.value])),Y=a.value.every(Q=>!p.value.includes(Q[l.value]));O&&(F.value=!0,x.value=!1),Y&&(F.value=!1,x.value=!1),!O&&!Y&&(F.value=!1,x.value=!0)}function v(){return s(p.value)}function C(){const O=i.value.reduce((Q,re)=>(Q.set(re.raw[l.value],re),Q),new Map);return p.value.map(Q=>O.get(Q)).filter(Q=>!!Q)}function g(O){var Q;const Y=O.raw.__fv_children_index__;if(Y&&Y.length){const re=Y.map(ve=>a.value[ve]);(Q=p.value)!=null&&Q.length&&re.some(Ne=>!p.value.includes(Ne[l.value]))&&(O.indeterminate=!0,O.raw.__fv_indeterminate__=!0)}}const b=r.computed(()=>u.value&&m.value),S=r.computed(()=>u.value&&!m.value&&!c.value),P=r.computed(()=>!!t.hierarchy),B=r.computed(()=>{const O=c.value&&d.value==="DependOnCheck";return b.value&&O}),E=r.computed(()=>b.value&&!c.value),N=r.computed(()=>b.value&&c.value&&d.value==="OnCheckAndClick");r.computed(()=>N.value);function k(){const O=s(p.value);o.emit("selectionUpdate",O,p.value)}function T(O){o.emit("unSelectItem",O)}function V(O){o.emit("selectItem",O)}function H(){const O=i.value.filter(Q=>Q.indeterminate).map(Q=>Q.raw[l.value]);i.value.forEach(Q=>{Q.checked=!1,Q.indeterminate=!1,Q.raw.__fv_checked__=!1,Q.raw.__fv_indeterminate__=!1}),C().forEach(Q=>{Q.checked=!0,Q.raw.__fv_checked__=!0}),O.forEach(Q=>{const re=i.value.find(ve=>ve.raw[l.value]===Q);g(re)})}r.watch(()=>i.value,()=>{H()}),r.watch(()=>t.selectionValues,O=>{p.value=O,H()},{immediate:!0}),r.watch(()=>t.selection,O=>{m.value=!!O.multiSelect,d.value=O.multiSelectMode||"DependOnCheck",c.value=!!O.showCheckbox});const I=r.computed(()=>!m.value);function R(O){return O.raw[l.value]}function q(O){return p.value.findIndex(Q=>Q===R(O))}function J(){C().forEach(Q=>{Q.checked=!1}),s(p.value).forEach(Q=>{Q.__fv_checked__=!1}),p.value=[],f.value="",_()}function j(O){const Y=O;Y.__fv_checked__=!0,Y.__fv_indeterminate__=!1;const Q=new Set(p.value);Q.add(Y[l.value]),p.value=Array.from(Q.values()),M()}function ee(O){const Y=O;Y.__fv_checked__=!1,Y.__fv_indeterminate__=!1,p.value=p.value.filter(Q=>Q!==Y[l.value]),M()}function oe(O){const Y=O.raw;Y.__fv_checked__=!0,Y.__fv_indeterminate__=!1;const Q=new Set(p.value);Q.add(Y[l.value]),p.value=Array.from(Q.values()),M(),O.checked=!0,O.indeterminate=!1,k(),V(O)}function ce(O){const Y=O.raw;Y.__fv_checked__=!1,Y.__fv_indeterminate__=!1,p.value=p.value.filter(Q=>Q!==Y[l.value]),M(),O.checked=!1,O.indeterminate=!1,k(),T(O)}function Z(O){O.disabled||(oe(O),f.value=O.raw[l.value])}function L(O){O.disabled||(ce(O),f.value="")}function W(O){O.__fv_checked__=!1,O.__fv_indeterminate__=!0,p.value=p.value.filter(Y=>Y!==O[l.value]),M()}function G(O){const Y=O.raw;Y.__fv_checked__=!1,Y.__fv_indeterminate__=!0,p.value=p.value.filter(Q=>Q!==Y[l.value]),M(),O.checked=!1,O.indeterminate=!0}function U(O){I.value&&J(),O.checked?ce(O):oe(O)}function ne(O,Y=!0){const Q=O.checked;I.value&&J(),Y?O.checked?L(O):Z(O):Q?L(O):Z(O)}function ue(O){O.raw[l.value]!==f.value&&(J(),Z(O))}function me(O){const Y=i.value.find(Q=>Q.raw[l.value]===O);if(Y)ue(Y);else{const Q=a.value.find(re=>re[l.value]===O);Q&&j(Q)}}function ge(O){const Y=i.value.filter(ve=>O.includes(ve.raw[l.value])),Q=Y.map(ve=>ve.raw[l.value]),re=a.value.filter(ve=>{const Ne=ve[l.value];return!Q.includes(Ne)&&O.includes(Ne)});(Y.length||re.length)&&S.value&&(f.value=O[0]),Y.forEach(ve=>{Z(ve)}),re.forEach(ve=>{j(ve)})}function ye(O){for(const Y of O){if(!p.value.includes(Y))continue;const Q=i.value.find(re=>re.raw[l.value]===Y);if(Q)L(Q);else{const re=a.value.find(ve=>ve[l.value]===Y);re&&ee(re)}}p.value=p.value.filter(Y=>!O.includes(Y)),M()}function he(){i.value.forEach(O=>{const Y=O.raw;Y.__fv_checked__=!0,Y.__fv_indeterminate__=!1;const Q=new Set(p.value);Q.add(Y[l.value]),p.value=Array.from(Q.values()),M(),O.checked=!0,O.indeterminate=!1}),k()}function Ie(){i.value.forEach(O=>{const Y=O.raw;Y.__fv_checked__=!1,Y.__fv_indeterminate__=!1,p.value=p.value.filter(Q=>Q!==Y[l.value]),M(),O.checked=!1,O.indeterminate=!1}),k()}function Le(){return i.value.find(O=>O.raw[l.value]===f.value)}return{clearSelection:J,currentSelectedDataId:f,enableMultiSelect:m,enableSelectRow:u,findIndexInSelectedItems:q,getSelectedItems:v,getSelectionRow:Le,indeterminate:G,indeterminateDataItem:W,isSelectingHirarchyItem:P,multiSelectMode:d,multiSelectOnClickRow:N,multiSelectOnClickRowWithShift:E,multiSelectOnlyOnCheck:B,select:Z,selectAll:he,selectedValues:p,selectDataItem:j,selectItem:ue,selectItemById:me,selectItemByIds:ge,showCheckBox:c,showSelectAll:h,toggleSelectItem:ne,toggleSelectItemWithoutRow:U,unSelect:L,unSelectAll:Ie,unSelectDataItem:ee,unSelectItemByIds:ye,updateSelectAllStatus:_,selectAllStatus:F,indeterminateStatus:x,isSingleSelect:S,showSelection:y,keepSelectingOnPaging:w,emitSelectionChanged:k}}function ri(t,e){var y,w;const n=String(Date.now()),i=50,{showCheckBox:o}=e,l=r.ref(((y=t.rowNumber)==null?void 0:y.enable)??!1),a=r.computed(()=>t.hierarchy&&o.value&&t.selection.enableSelectRow&&t.selection.multiSelect?!1:o.value),s=r.ref(l.value?((w=t.rowNumber)==null?void 0:w.width)??36:0),f=r.ref(a.value?i:0),u=r.computed(()=>{var F,x;return l.value?((F=t.rowNumber)==null?void 0:F.heading)==="序号"?je.LocaleService.getLocaleValue("datagrid.lineNumberTitle"):(x=t.rowNumber)==null?void 0:x.heading:""}),m=r.computed(()=>(a.value&&!t.hierarchy?Number(f.value):0)+(l.value?Number(s.value):0));r.watch(()=>t.rowNumber,F=>{F&&F.enable!==void 0&&(l.value=F.enable),F&&F.width!==void 0&&(s.value=F.width)});function d(F){var M;const x={top:`${F.top}px`,width:`${m.value}px`,height:`${F.height||""}px`};if((M=t.rowOption)!=null&&M.customRowStyle){const _=t.rowOption.customRowStyle(F.raw)||{};return Object.assign({},x,_.style||{})}return x}const c=r.computed(()=>({width:`${m.value}px`}));function h(F){return`${n}_${F.type}_r_${F.index}_${F.refreshKey||""}`}function p(F){return`${n}_${F.type}_r_${F.index}_${F.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:a,sidebarCellPosition:d,sidebarCornerCellStyle:c,sidebarTitle:u,sidebarWidth:m,rowKey:p,cellKey:h}}const li={ascend:(t,e)=>t===e?0:t===!1?-1:1,decend:(t,e)=>t===e?0:t===!0?-1:1},ai={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}},si={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1},di={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1};function ci(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",li],["datetime-sorter",ai],["numeric-sorter",si],["text-sorter",di]]);function i(a){const s=(a==null?void 0:a.dataType)||"string",f=e.get(s)||"text-sorter";return n.get(f)||(a==null?void 0:a.sorter)}function o(a){return i(a.column)}function l(a,s){const f=o(a),u=(a.status&Pe.sortable)===Pe.sortable&&(a.status&Pe.sorted)===Pe.sorted,m=(a.status&Pe.ascending)===Pe.ascending,d=(a.status&Pe.descending)===Pe.descending;if(u&&f){const c=m?f.ascend:d?f.decend:void 0;c?s.addSorter(a.field,{field:a.field,compare:c}):s.removeSorter(a.field)}else s.removeSorter(a.field)}return{getSorterByColumn:i,updateSorter:l}}function Ot(t,e,n,i,o="data-grid-column"){const{columnContext:l,hasLeftFixedColumn:a,hasRightFixedColumn:s}=n,{gridHeaderColumnsStyle:f,leftFixedGridHeaderColumnsStyle:u,rightFixedGridHeaderColumnsStyle:m}=i,d=l.value.defaultColumnWidth,c=32,h=new Map([[0,0]]);function p(P,B){const E=h.get(B)||0,N={height:`${P.depth*c}px`,left:`${P.left}px`,top:`${(P.layer-1)*c}px`,width:`${P.actualWidth}px`,padding:0};return l.value.headerDepth>1&&(N["line-height"]=`${P.depth*c}px`),h.set(B+1,E+(P.actualWidth||d)),N}const y=r.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":l.value.headerDepth>1})),w=r.computed(()=>({height:`${l.value.headerDepth*c}px`})),F=function(P){return e.showSetting&&!!P.showSetting};function x(){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(P,B,E,N){var k;(k=t==null?void 0:t.setupContext)==null||k.emit("selectionChange",P,B,E,N)}function _(P){var E,N;return"w-100 d-flex align-items-center justify-content-"+(((E=P.column)==null?void 0:E.halign)==="center"?"center":((N=P.column)==null?void 0:N.halign)==="right"?"end pr-2":"start pl-2")}function v(P,B,E){var k;const N=r.ref(P.column);return r.createVNode("div",{class:"fv-grid-header-cell",style:p(P,E)},[r.createVNode(A.FDesignerItem,{modelValue:N.value,"onUpdate:modelValue":T=>N.value=T,customClass:_(P),canAdd:!1,canDelete:!1,canMove:!1,key:(k=N.value)==null?void 0:k.id,type:o,componentId:e.componentId,onSelectionChange:M},null),F(P)&&x(),P.resizable&&r.createVNode("span",{class:"fv-column-resize-bar"},null)])}function C(P){return P.map((B,E)=>{const N=[];if(N.push(v(B,P,E)),B.children&&B.children.length){const k=C(B.children);N.push(...k)}return N})}function g(){return r.createVNode("div",{class:"fv-grid-header-left-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[C(l.value.leftHeaderColumns)])])}function b(){return r.createVNode("div",{class:"fv-grid-header-right-fixed"},[r.createVNode("div",{class:"fv-grid-header-columns",style:m.value},[C(l.value.rightHeaderColumns)])])}function S(){return r.createVNode("div",{class:y.value,style:w.value},[a.value&&g(),r.createVNode("div",{class:"fv-grid-header-primary"},[r.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[C(l.value.primaryHeaderColumns)])]),s.value&&b()])}return{renderGridHeader:S}}const ft={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"},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 ui extends He.BaseControlProperty{constructor(e,n){super(e,n)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.propertyConfig.categories.command=We.useCommandOption(this).getCommandColumnProperties(e),this.propertyConfig.categories.column=We.useColumnOption().getColumnOptionProperties(e),this.propertyConfig.categories.rowOption=We.useRowOption().getRowOptionProperties(e),this.propertyConfig.categories.summary=We.useSummary().getSummaryProperties(e),this.propertyConfig.categories.sort=We.useSort().getSort(e),this.propertyConfig.categories.filter=We.useFilter().getFilter(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var a,s,f;const n=(f=(s=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:s.entity[0])==null?void 0:f.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(u,m){switch(u&&u.propertyID){case"dataSource":{const d=o.formSchemaUtils.getViewModelById(o.viewModelId);if(d){const c=i.find(h=>h.label===u.propertyValue);d.bindTo=c.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(s=>this.assembleSchemaEntityToTree(s,n+1,e,a,l)),l}getAppearanceProperties(e){this.propertyConfig.categories.appearance=We.useAppearance().getDataGrid(e,this.viewModelId),this.propertyConfig.categories.selection=We.useSelection().getSelection(e),this.propertyConfig.categories.rowNumber=We.useRowNumber().getRowNumber(e),this.propertyConfig.categories.pagination=We.usePagination().getPagination(e,this.isSubGrid())}getEventPropConfig(e){const n=[...We.useDataGridEvent().initEvent(e),{label:"onEndEditCell",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,s){const f=a.propertyValue;delete e[i.viewModelId],f&&(f.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(e,i.viewModelId,f.events,f)),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 fi(t,e){const n=t.schema,i=r.ref(!0),o=r.ref(!0);function l(d){return d&&d.sourceType==="control"?d.componentCategory==="input":!1}function a(){return!1}function s(){return!1}function f(){return!0}function u(d){return new ui(d,e).getPropertyConfig(n)}function m(){var d,c,h,p;if(t&&e){const y=(d=t==null?void 0:t.componentInstance)==null?void 0:d.value.belongedComponentId;let w="",F="";const{formSchemaUtils:x}=e;if(y){const _=x.getRootViewModelId(),v=x.getComponentByViewModelId(_),C=x.selectNode(v,g=>g.contents&&g.contents.find(b=>b.component===y));(C==null?void 0:C.type)===((c=ft["tab-page"])==null?void 0:c.type)&&((h=C==null?void 0:C.contents)!=null&&h.length)&&(w=C.title||""),(C==null?void 0:C.type)===((p=ft.section)==null?void 0:p.type)&&(C==null?void 0:C.showHeader)!==!1&&(w=C.mainTitle||""),w=w?`${w} > `:"",F=w?C.id:""}const M=ft["data-grid"].name;e==null||e.formSchemaUtils.getControlBasicInfoMap().set(t.schema.id,{componentTitle:M,parentPathName:`${w}${M}`,reliedComponentId:F})}}return{canAccepts:l,checkCanDeleteComponent:a,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:f,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:u,setComponentBasicInfoMap:m}}const Ke=r.defineComponent({name:"FDataGridDesign",props:yn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(t,e){var O;const n=r.ref(),i=r.inject("designer-host-service"),o=r.inject("design-item-context"),l=fi(o,i),a=A.useDesignerComponent(n,o,l);a.value.styles="display:flex;flex:1;",r.onMounted(()=>{n.value.componentInstance=a}),r.provide("data-grid-context",{dataGridProps:t}),e.expose(a.value);const s=r.ref(t.columns),f=20,u=ni(t),m=0,d=r.ref(),c=r.ref(),h=r.ref(t.showStripe),p=r.ref([]),y=r.ref(!1),w=r.ref(((O=t.rowOption)==null?void 0:O.wrapContent)||!1),F=Ln(t,e),x=$n(t),M=Pn(t,new Map,F,x,u),_=oi(t,M,u,p,e),v=r.computed(()=>M.totalItems.value<f?M.totalItems.value:f),{containerStyleObject:C}=_n(t),g=kn(t),{applyCommands:b}=g;b(s);const S=Cn(t),P=ci(),{applyColumnSorter:B,columnContext:E,updateColumnRenderContext:N}=S;B(M,P);const k=Vn(t,E),T=ii(t,e,_,u),V=ti(t,e,u,T),H=zn(t),I=Jn(t,V,H),R=Qn(t,M,V,x,u,H,I),q=Kn(t,u,I,R),J=ei(t,u,I,R),j=wn(t,s,M,v,m,R,q,J),{getVisualData:ee}=j,oe=ri(t,_),{sidebarWidth:ce}=oe;p.value=ee(0,v.value+m-1);const Z=Wn(t,M,p,E,j,v,m,ce),{onWheel:L,dataGridWidth:W,viewPortHeight:G,viewPortWidth:U}=Z,ne=vn(t,E,d,U,k),{calculateColumnsSize:ue}=ne,me=r.computed(()=>({"fv-grid":!0,"fv-grid-bordered":!0,"fv-datagrid-strip":h.value})),ge=r.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":w.value})),{renderGridHeader:ye}=Ot(o,t,S,Z),{renderHorizontalScrollbar:he}=Fn(t,d,Z);function Ie(){var Y,Q;G.value=((Y=c.value)==null?void 0:Y.clientHeight)||0,W.value=((Q=d.value)==null?void 0:Q.clientWidth)||0,ue()}r.onMounted(()=>{d.value&&(cn.useResizeObserver(d.value,Ie),ue(),r.nextTick(()=>{d.value&&(W.value=d.value.clientWidth),c.value&&(U.value=c.value.clientWidth,G.value=c.value.clientHeight)}))});function Le(Y){Y&&(s.value=Y,b(s),N(s.value),B(M,P),ue())}return r.watch(()=>t.columns,Y=>{Le(Y),A.canvasChanged.value++}),r.watch(U,()=>{d.value&&ue()}),()=>r.createVNode("div",{ref:n,class:me.value,style:C.value,onWheel:L},[ye(),r.createVNode("div",{ref:d,class:ge.value,onMouseover:()=>{y.value=!0},onMouseleave:()=>{y.value=!1}},[he()])])}}),mi={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}},pi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},hi=r.defineComponent({name:"FOverlay",props:pi,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(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}r.computed(()=>{const s=i.value;if(s){const f=s.getBoundingClientRect(),{left:u,top:m,height:d}=f;return{left:u,top:m+d}}return n.value});const a=r.computed(()=>({}));return()=>r.createVNode(r.Teleport,{to:"body"},{default:()=>{var s,f;return[r.createVNode("div",{class:"overlay-container",onClick:u=>l(u),style:o.value},[r.createVNode("div",{style:a.value},[(f=(s=e.slots).default)==null?void 0:f.call(s)])])]}})}});function gi(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function yi(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=gi(t);return()=>r.createVNode(hi,{"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 vi{static show(e){return yi(e)}}const bi={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60},host:{type:Object,default:"body"}};class ke{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 ke(e.clientX,e.clientY);if(n===null||e.changedTouches.length===1)return new ke(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 ke(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 ke(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 ke(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 ot{constructor(e,n){this.width=e,this.height=n}static getCurrent(e){const n=new ot(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 ot(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Ci(t,e){const n=r.ref(),i=r.ref(),o=r.ref(),l=r.ref(),a=r.ref(),s=r.ref(),f=r.ref(),u=r.ref(),m=r.ref(),d=r.ref(),c=r.ref(),h=r.ref(t.resizeable),p=r.ref(),y=r.ref(t.draggable),w=r.ref(!1);function F(){const I=i.value||document.body,R=window.getComputedStyle(I);if(!R||!n.value)return;const q=ke.getTransformInfo(n.value),J={};f.value&&(J.deltaL=n.value.offsetLeft-f.value.x,J.deltaT=n.value.offsetTop-f.value.y);const j=R.getPropertyValue("position");J.width=I.clientWidth,J.height=I.clientHeight,J.pr=parseInt(R.getPropertyValue("padding-right"),10),J.pb=parseInt(R.getPropertyValue("padding-bottom"),10),J.position=R.getPropertyValue("position"),j==="static"&&(I.style.position="relative"),J.translateX=q.x,J.translateY=q.y,d.value=J}function x(I){if(n.value){l.value=ot.getCurrent(n.value),a.value=ke.getCurrent(n.value),s.value=l.value?ot.copy(l.value):null,f.value=a.value?ke.copy(a.value):null,F();const R=I.target.getAttribute("type")||"";u.value={n:!!R.match(/n/),s:!!R.match(/s/),w:!!R.match(/w/),e:!!R.match(/e/)}}}function M(){var I,R,q,J;if(n.value){const j=n.value;u.value&&((u.value.n||u.value.s)&&((I=s.value)!=null&&I.height)&&(j.style.height=s.value.height+"px"),(u.value.w||u.value.e)&&((R=s.value)!=null&&R.width)&&(j.style.width=s.value.width+"px"),f.value&&((q=f.value)!=null&&q.x&&(j.style.left=f.value.x+"px"),(J=f.value)!=null&&J.y&&(j.style.top=f.value.y+"px")))}}function _(){const I=t.minHeight?t.minHeight:1,R=t.minWidth?t.minWidth:1;s.value&&f.value&&u.value&&l.value&&(s.value.height<I&&(s.value.height=I,u.value.n&&a.value&&(f.value.y=a.value.y+(l.value.height-I))),s.value.width<R&&(s.value.width=R,u.value.w&&a.value&&(f.value.x=a.value.x+(l.value.width-R))),t.maxHeight&&s.value.height>t.maxHeight&&(s.value.height=t.maxHeight,a.value&&u.value.n&&(f.value.y=a.value.y+(l.value.height-t.maxHeight))),t.maxWidth&&s.value.width>t.maxWidth&&(s.value.width=t.maxWidth,u.value.w&&a.value&&(f.value.x=a.value.x+(l.value.width-t.maxWidth))))}function v(){if(i.value){const I=d.value;if(f.value&&s.value&&u.value&&l.value){const R=I.width-I.pr-I.deltaL-I.translateX-f.value.x,q=I.height-I.pb-I.deltaT-I.translateY-f.value.y;u.value.n&&f.value.y+I.translateY<0&&a.value&&(f.value.y=-I.translateY,s.value.height=l.value.height+a.value.y+I.translateY),u.value.w&&f.value.x+I.translateX<0&&a.value&&(f.value.x=-I.translateX,s.value.width=l.value.width+a.value.x+I.translateX),s.value.width>R&&(s.value.width=R),s.value.height>q&&(s.value.height=q)}}}function C(I){if(!o.value||!l.value||!a.value||!u.value)return;I.subtract(o.value);const R=I.x,q=I.y;u.value.n?(f.value.y=a.value.y+q,s.value.height=l.value.height-q):u.value.s&&(s.value.height=l.value.height+q),u.value.e?s.value.width=l.value.width+R:u.value.w&&(s.value.width=l.value.width-R,f.value.x=a.value.x+R),v(),_(),M()}function g(I){if(!m.value)return;const R=ke.fromEvent(I);R&&C(R)}function b(){if(n.value){const{width:I,height:R,x:q,y:J}=n.value.getBoundingClientRect(),j=ke.getTransformInfo(n.value);return{size:{width:I,height:R},position:{x:q-j.x,y:J-j.y}}}return null}function S(I){if(n.value){const R=b();c.value=R}o.value=void 0,l.value=null,a.value=null,s.value=null,f.value=null,u.value=null,m.value=null,document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",S)}function P(){document.addEventListener("mousemove",g),document.addEventListener("mouseup",S)}function B(I){I instanceof MouseEvent&&I.button===2||y.value&&(document.body.click(),I.stopPropagation(),I.preventDefault(),o.value=ke.fromEvent(I),m.value=I.target,x(I),P())}function E(I){return n.value=I,h.value&&r.createVNode(r.Fragment,null,[r.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:R=>B(R)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:R=>B(R)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:R=>B(R)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:R=>B(R)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:R=>B(R)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:R=>B(R)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:R=>B(R)},null),r.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:R=>B(R)},null)])}function N(I=!0){document.body.click();const R=i.value||document.body,q=ot.getCurrent(R),J=n.value;I&&J&&(p.value=b(),p.value.transform=J.style.transform),q&&J&&(s.value=q,s.value.height-=14,s.value.width-=14,J.style.height=s.value.height+"px",J.style.width=s.value.width+"px",J.style.left="7px",J.style.top="7px",J.style.transform="",c.value={size:s.value,position:{x:0,y:0}},y.value=!1,w.value=!0)}function k(){var I,R;if(document.body.click(),p.value){const q={width:p.value.size.width||0,height:p.value.size.height||0},J={x:(window.innerWidth-q.width)/2,y:(window.innerHeight-q.height)/2};(I=s.value)==null||I.set(q),(R=f.value)==null||R.set(J);const j=n.value;j.style.height=q.height+"px",j.style.width=q.width+"px",j.style.left=`${J.x}px`,j.style.top=`${J.y}px`,j.style.transform="",c.value={size:q,position:J},y.value=t.draggable,w.value=!1}}function T(){if(n.value){const I=ot.getCurrent(n.value);if(I){const{width:R,height:q}=I;n.value.style.left=`${(window.innerWidth-R)/2}px`,n.value.style.top=`${(window.innerHeight-q)/2}px`,n.value.style.transform=""}}}function V(){const I=()=>{w.value?N(!1):T(),document.body.click()};return window.addEventListener("resize",I),()=>{window.removeEventListener("resize",I)}}const H=V();return{renderResizeBar:E,boundingElement:i,resizedEventParam:c,maximize:N,restore:k,allowDrag:y,isMaximized:w,unWindowResizeHandle:H,moveToCenter:T}}function wi(t,e,n){const i=r.ref(),o=r.ref(t.draggable),l=r.ref(t.lockAxis),a=r.ref(),s=r.ref(),f=r.ref(!1),u=r.ref(new ke(0,0)),m=r.ref(new ke(0,0)),d=r.ref(new ke(0,0)),c=r.ref(new ke(0,0));r.watch(()=>n.value,g=>{a.value.style.cursor=g?"move":"default"});function h(g,b){if(b.tagName==="BUTTON")return!1;if(b===g)return!0;for(const S in b.children)if(Object.prototype.hasOwnProperty.call(b.children,S)&&h(g,b.children[S]))return!0;return!1}function p(){var P,B;let g=d.value.x+m.value.x,b=d.value.y+m.value.y;l.value==="x"?(g=((P=u.value)==null?void 0:P.x)||0,d.value.x=0):l.value==="y"&&(b=((B=u.value)==null?void 0:B.y)||0,d.value.y=0);const S=`translate3d(${Math.round(g)}px, ${Math.round(b)}px, 0px)`;i.value&&(i.value.style.transform=S),c.value.x=g,c.value.y=b}function y(){if(!s.value||!i.value)return null;const g=s.value.getBoundingClientRect(),b=i.value.getBoundingClientRect(),S={top:g.top<b.top,right:g.right>b.right,bottom:g.bottom>b.bottom,left:g.left<b.left};return S.top||(d.value.y-=b.top-g.top),S.bottom||(d.value.y-=b.bottom-g.bottom),S.right||(d.value.x-=b.right-g.right),S.left||(d.value.x-=b.left-g.left),p(),S}function w(g){g&&(u.value&&g.subtract(u.value),d.value.set(g),p(),y())}function F(g){f.value&&o.value&&(g.stopPropagation(),g.preventDefault(),w(ke.fromEvent(g,a.value)))}function x(){var g;f.value&&(f.value=!1,m.value.add(d.value),d.value.reset(),(g=i.value)==null||g.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",F),document.removeEventListener("mouseup",x))}function M(){!f.value&&a.value&&(f.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",F),document.addEventListener("mouseup",x))}function _(){if(i.value){const g=ke.getTransformInfo(i.value);m.value.set(g);return}m.value.reset()}function v(g){if(!n.value||g instanceof MouseEvent&&g.button===2)return;const b=g.target||g.srcElement;a.value!==void 0&&b&&!h(b,a.value)||o.value!==!1&&(document.body.click(),g.stopPropagation(),g.preventDefault(),u.value=ke.fromEvent(g,i.value),_(),M())}function C(g,b,S){if(o.value&&b){if(g)a.value=g;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)a.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const P=b.querySelector(t.dragHandle);P&&(a.value=P)}}i.value=b,s.value=S,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",v)):o.value=!1}}return{registerDraggle:C,resetTranslate:_}}function jt(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 Si(t,e){const n=r.ref(t.enableEsc);let i=null;return n.value?(i=jt("Escape",o=>{e.emit("esc",{event:o.event,type:"esc"})}),{remove:i}):null}function xi(t,e){const n=r.ref(t.enableEnter);let i=null;return n.value?(i=jt("Enter",o=>{e.emit("enter",{event:o.event,type:"enter"})}),{remove:i}):null}const mt=r.defineComponent({name:"FModal",props:bi,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),s=r.ref(t.fitContent),f=r.ref(t.showHeader),u=r.ref(""),m=r.ref(t.showCloseButton),d=r.ref(t.showMaxButton),c=r.ref(!1),h=r.ref(t.dialogType),p=r.ref(t.src),y=r.ref(""),w=r.ref(t.showButtons),F=r.ref(t.title),x=r.ref(t.containment||null),M=r.ref();F.value==="错误提示"&&(F.value=je.LocaleService.getLocaleValue("messageBox.errorTitle"));const _=r.ref(!1);function v(z,ae){const Fe=ae?"accept":"cancel";Promise.resolve().then(()=>{var Se;return(Se=t.beforeClose)==null?void 0:Se.call(t,{closeType:Fe})}).then(Se=>{Se&&(o.value=!1,e.emit("update:modelValue",!1),ae!=null&&e.emit(ae?"accept":"cancel"),e.emit("closed",z))})}const C=[{name:"cancel",text:je.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:z=>{v(z,!1)}},{name:"accept",text:je.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:z=>{v(z,!0)}}],g=r.ref(t.buttons&&t.buttons.length?t.buttons:C),b=r.computed(()=>!!u.value),S=r.computed(()=>!!w.value&&!!g.value),P=r.ref(),B=r.ref(),E=r.ref(!1),{renderResizeBar:N,maximize:k,restore:T,boundingElement:V,resizedEventParam:H,allowDrag:I,unWindowResizeHandle:R,moveToCenter:q}=Ci(t),{registerDraggle:J}=wi(t,e,I);function j(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function ee(){const z=document.querySelectorAll(".farris-modal").length;(!z||z-1<=0)&&document.body.classList.remove("modal-open"),M.value&&M.value.classList.remove("show")}r.watch(()=>t.title,(z,ae)=>{z!==ae&&(F.value=z)}),r.watch(()=>t.modelValue,(z,ae)=>{z!==ae&&(o.value=z,o.value&&t.draggable&&r.nextTick(()=>{B.value&&!x.value&&(x.value=B.value.parentElement,V.value=x.value,J(P.value,B.value,V.value),q())}),z||(x.value&&(x.value=null),ee())),o.value?_.value=j():(E.value=!1,I.value=t.draggable)}),r.watch(()=>t.showHeader,(z,ae)=>{z!==ae&&(f.value=z)}),r.watch(()=>t.showButtons,(z,ae)=>{z!==ae&&(w.value=z)}),r.watch(()=>H.value,(z,ae)=>{const Fe=z||{},Se=ae||{};JSON.stringify(Fe)!==JSON.stringify(Se)&&e.emit("resize",{newSize:z,oldSize:ae,isMaximized:E.value})}),r.watch([()=>t.width,()=>t.height],(z,ae)=>{(z[0]!==ae[0]||z[1]!==ae[1])&&(n.value=z[0]||500,i.value=z[1]||600)});const oe=r.computed(()=>(o.value&&document.body.classList.add("modal-open"),o.value)),ce=r.computed(()=>{var Fe;const z={modal:!0,"farris-modal":!0,fade:!0};z["f-modal-fitContent"]=!!s.value,z.show=!!oe.value;const ae=(Fe=t.maskClass)==null?void 0:Fe.split(" ");return ae==null||ae.reduce((Se,Ye)=>(Se[Ye]=!0,Se),z),z}),Z=r.computed(()=>{var Fe;const z={"modal-dialog":!0},ae=(Fe=a.value)==null?void 0:Fe.split(" ");return ae==null||ae.reduce((Se,Ye)=>(Se[Ye]=!0,Se),z),z}),L=r.computed(()=>{const z=document.documentElement.clientWidth,ae=document.documentElement.clientHeight,Fe=Math.min(n.value,z),Se=s.value?"auto":`${Math.min(i.value,ae-10)}px`,Ye={position:"absolute",top:`${(window.innerHeight-parseInt(Se==="auto"?"0":Se))/2}px`,left:`${(window.innerWidth-Fe)/2}px`,width:`${Fe}px`,height:Se};return t.mask||(Ye.pointerEvents="auto"),Ye}),W=()=>D.getMaxZIndex()||1040,G=r.computed(()=>{const z={display:"block",zIndex:W()};return t.mask||(z.pointerEvents="none",z.backgroundColor="transparent"),_.value&&(z.backgroundColor="transparent"),z}),U=r.computed(()=>({"modal-content":!0,"modal-content-has-header":f.value})),ne=r.computed(()=>{const z={display:f.value?"":"none"};return z["pointer-events"]=I.value?"auto":"none",z}),ue=r.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:E.value})),me=r.computed(()=>({"modal-body":!0,"f-utils-flex-column":h.value==="iframe","f-utils-fill":!0}));function ge(){return{height:`${t.footerHeight||60}px`}}const ye=r.computed(()=>{const z={textAlgin:y.value},ae=ge();return Object.assign(z,ae)});function he(z){if(z==null||z.stopPropagation(),E.value){E.value=!1,T();return}k(),E.value=!0}async function Ie(z,ae){z.handle&&await z.handle(ae,z)&&e.emit("closed",ae)}function Le(z){z.width&&(n.value=z.width),z.height&&(i.value=z.height),z.buttons&&(g.value=z.buttons),z.title&&(F.value=z.title)}let O=null,Y=null;r.onBeforeMount(()=>{_.value=j()}),r.onMounted(()=>{B.value&&!x.value&&(x.value=B.value.parentElement,V.value=x.value,J(P.value,B.value,V.value)),oe.value&&document.body.classList.add("modal-open"),O=Si(t,e),Y=xi(t,e)}),r.onUnmounted(()=>{R&&R(),O&&O.remove(),Y&&Y.remove()}),e.expose({modalElementRef:B,updateModalOptions:Le,close:v,maxDialog:he,isMaximized:E});function Q(){return r.createVNode("ul",null,[c.value&&r.createVNode("li",{class:"f-btn-icon f-bare"},[r.createVNode("span",{class:"f-icon modal_minimize"},null)]),d.value&&r.createVNode("li",{onClick:he,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[r.createVNode("span",{class:ue.value},null)]),m.value&&r.createVNode("li",{class:"f-btn-icon f-bare",onClick:z=>v(z,!1),style:"pointer-events: auto;"},[r.createVNode("span",{class:"f-icon modal_close"},null)])])}function re(){return r.createVNode("div",{class:"modal-footer",style:ye.value},[g.value&&g.value.map(z=>{const ae=r.ref(z.disabled);return r.createVNode("button",{name:z.name,type:"button",disabled:ae.value,class:z.class+(z.iconClass?" btn-icontext":""),onClick:Fe=>{Ie(z,Fe)}},[!!z.iconClass&&r.createVNode("i",{class:z.iconClass},null),z.text])})])}function ve(){return r.createVNode("div",{ref:P,class:"modal-header",style:ne.value},[e.slots.headerTemplate?e.slots.headerTemplate():r.createVNode("div",{class:"modal-title"},[b.value&&r.createVNode("span",{class:u.value,style:"margin-right: 8px"},null),r.createVNode("span",{class:"modal-title-label"},[F.value])]),r.createVNode("div",{class:"actions"},[Q()])])}function Ne(){return e.slots.footerTemplate?e.slots.footerTemplate():S.value&&re()}function De(z){if(z.stopPropagation(),t.allowClickMaskToClose){if(z.target!==M.value)return;v(z,!1)}}function Qe(){var z,ae;return r.createVNode("div",{id:l.value,class:Z.value,style:L.value,ref:B},[r.createVNode("div",{class:U.value},[f.value&&ve(),r.createVNode("div",{class:me.value},[(ae=(z=e.slots).default)==null?void 0:ae.call(z),h.value==="iframe"&&r.createVNode("iframe",{title:l.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:p.value},null)]),Ne()]),!s.value&&B.value&&!E.value&&N(B.value)])}function et(z){return z||"body"}return()=>r.createVNode(r.Teleport,{to:et(t.host)},{default:()=>[oe.value&&r.createVNode(r.Transition,{name:"fade",appear:!0},{default:()=>[r.createVNode("div",{ref:M,class:ce.value,style:G.value,onClick:De},[Qe()])]})]})}});function Rt(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function Mi(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||""),s=r.ref(!!t.showButtons),f=r.ref(!!t.showHeader),u=r.ref(t.showCloseButton==null?!0:t.showCloseButton),m=r.ref(!0),d=r.ref(t.title||""),c=t.acceptCallback||(()=>{}),h=t.rejectCallback||(()=>{}),p=t.closedCallback||(M=>{}),y=t.resizeHandle||(M=>{}),w=t.stopMoveHandle||(M=>{}),F=Rt(t),x=M=>{m.value=!1,n.unmount(),p(M)};return r.onMounted(()=>{}),o.expose({modalRef:l}),()=>r.createVNode(mt,{ref:l,class:a.value,modelValue:m.value,"onUpdate:modelValue":M=>m.value=M,title:d.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":f.value,"show-buttons":s.value,"show-close-button":u.value,"show-max-button":!1,onAccept:c,onCancel:h,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:x,onResize:y,onStopMove:w},{default:()=>[F&&F(n)]})}});return document.body.appendChild(e),n.use(je.LocaleService.i18n),n.mount(e),n}class Fi{constructor(e){ie(this,"appContext",null);ie(this,"modalRef",r.ref());ie(this,"activeModalIndex",r.ref(0));ie(this,"modalRefs",{});ie(this,"isUseEscCloseModal",r.ref(!1));ie(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 Mi(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||(()=>{}),s=i.value.closedCallback||((v,C)=>{}),f=i.value.resizeHandle||(v=>{}),u=e.stopMoveHandle||(v=>{});let m;const d=Rt(i.value),c=v=>{var g;o.value=!1;const C=(g=v==null?void 0:v.target)==null?void 0:g.classList.contains("modal_close");s(v,this.isUseEscCloseModal.value?"esc":C?"icon":"button")},h=v=>{c(v),m&&r.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],r.render(null,n),m=null,this.modalRef.value=null,this.modalRefs){const C=Object.keys(this.modalRefs).map(g=>Number(g));C.length>0?this.activeModalIndex.value=Math.max(...C):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},p=v=>{var C;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((C=this.activeModalInstance.value)==null||C.close(v==null?void 0:v.event))},{width:y,height:w}=i.value,F=this.adaptToWindow(y||500,w||320);Object.assign(i.value,F);const x=()=>r.createVNode(mt,r.mergeProps({ref:this.modalRef,modelValue:o.value,"onUpdate:modelValue":v=>o.value=v},i.value,{onAccept:l,onCancel:a,onClosed:h,onResize:f,onEsc:p,onStopMove:u}),{default:()=>[d&&d(this.app)]});return m=(v=>{const C=r.h(x,v);return C.appContext=this.appContext,r.render(C,n),C})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:v=>{i.value={...i.value,...v},m&&r.render(r.cloneVNode(m,{...i}),n)},destroy:h,modalRef:this.activeModalInstance,close:()=>this.close()}}}const At=Symbol("FModalService");mt.install=t=>{t.component(mt.name,mt);const e=new Fi(t);t.provide(At,e),t.provide("FModalService",e)};function Ht(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 Ti(t,e,n,i,o){const l=r.ref(t.buttonBehavior),a=r.ref(t.popupOnInput),s=r.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:f}=Ht(t,o),u=r.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),m=r.inject(At,null),d=r.ref();async function c(y){if(await f()&&u.value){const w=!!e.slots.default;if(l.value==="Modal"){const F=t.modalOptions,x=m==null?void 0:m.open({...F,render:()=>e.slots.default&&e.slots.default()});d.value=x==null?void 0:x.modalRef}l.value==="Overlay"&&vi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),w&&l.value==="Popup"&&i.togglePopup(!0),w&&a.value&&i.hidePopup(),e.emit("clickButton",{origin:y,value:t.modelValue})}}function h(y){e.emit("mouseEnterIcon",y)}function p(y){e.emit("mouseLeaveIcon",y)}return{buttonGroupClass:s,onClickButton:c,onMouseEnterButton:h,onMouseLeaveButton:p,modalRef:d}}function _i(t,e,n,i,o,l){const a=r.ref(!1),s=r.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:f,hasClearClass:u}=l;function m(p){a.value=p,u.value=p}r.watch(o,()=>{m(!!o.value)});function d(p){const y=!t.readonly&&!t.disable&&t.editable,w=!t.editable;p.stopPropagation(),(y||w)&&(f(""),o.value="",m(!a.value),e.emit("clear"))}function c(p){if(s.value){if(!n.value){m(!1);return}!t.disable&&!t.readonly&&m(!0)}}function h(p){s.value&&m(!1)}return{enableClearButton:s,showClearButton:a,onClearValue:d,onMouseEnterTextBox:c,onMouseLeaveTextBox:h}}function ki(t,e,n,i,o){const l=r.computed(()=>t.popupOnInput),a=r.computed(()=>t.popupOnFocus),{shouldPopupContent:s,closeAllPopover:f}=o,u=r.ref(!1),m=r.computed(()=>t.enableTitle?n.value:""),d=r.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),c=r.computed(()=>t.readonly||!t.editable),h=r.ref(!1),p=r.computed(()=>!t.disable&&h.value),y=r.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),w=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":p.value,"input-group--has-clear":t.enableClear&&u.value}));function F(B,E=!0){n.value=B,E&&(e.emit("change",B),e.emit("update:modelValue",B))}function x(B){s.value=!1,F(B,!0)}r.watch(()=>t.modelValue,B=>{n.value=B});function M(B){h.value=!1,e.emit("blur",B),B.stopPropagation()}function _(B){e.emit("click",B),f(),e.slots.default&&!t.disable&&!t.readonly&&t.popupOnClick&&o.togglePopup()}function v(B){!t.disable&&!t.readonly&&(h.value=!0,c.value||(e.emit("focus",B),a.value&&!s.value&&o.popup()))}function C(B){e.emit("input",B);const E=B.target.value;i.value=E,n.value!==E&&F(E,t.updateOn==="change"),l.value&&!s.value&&o.popup()}function g(B){B.target.tagName!=="INPUT"&&B.preventDefault(),B.stopPropagation()}function b(B){e.emit("keydown",B)}function S(B){B.key==="Enter"&&(l.value||a.value)&&o.hidePopup(),e.emit("keyup",B)}function P(B){const E=B.target.value;B.stopPropagation(),F(E)}return{hasFocusedTextBox:p,isTextBoxReadonly:c,textBoxClass:y,textBoxPlaceholder:d,textBoxTitle:m,inputGroupClass:w,hasClearClass:u,changeTextBoxValue:F,commitValue:x,onBlurTextBox:M,onClickTextBox:_,onFocusTextBox:v,onInput:C,onKeyDownTextBox:b,onKeyUpTextBox:S,onMouseDownTextBox:g,onTextBoxValueChange:P}}const rt="FarrisVue_PopoverInstancesKey";function Vi(t,e,n,i){const o=r.ref(),l=r.ref(!1),{judgeCanOpen:a}=Ht(t,i);r.watch(()=>o.value,(h,p)=>{window[rt]=window[rt]||new WeakMap,h?window[rt].set(n.value,h):window[rt].delete(n.value)});function s(){if(window[rt]){const h=window[rt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(p=>{const y=h.get(p);y&&p!==n.value&&!n.value.closest(".popover-fitcontent")&&y.hide()})}}function f(){const h=o.value;h&&h.show(n.value)}async function u(h=!1){if(!!e.slots.default){if(!h&&!l.value&&!await a())return;l.value=!l.value,l.value&&(await r.nextTick(),f())}}async function m(h=!1){if(!!e.slots.default){if(!h&&!await a())return;l.value=!0,await r.nextTick(),f()}}function d(){l.value=!1}function c(){l.value=!0,r.nextTick(()=>{f()})}return{hidePopup:d,showPopup:c,popup:m,shouldPopupContent:l,togglePopup:u,popoverRef:o,closeAllPopover:s}}function Ei(t,e,n){const i=r.ref(),{isTextBoxReadonly:o,textBoxClass:l,textBoxPlaceholder:a,textBoxTitle:s,onBlurTextBox:f,onClickTextBox:u,onFocusTextBox:m,onInput:d,onKeyDownTextBox:c,onKeyUpTextBox:h,onMouseDownTextBox:p,onTextBoxValueChange:y}=n,w=r.ref(t.id),{uuid:F}=D.useGuid(),x=r.computed(()=>({}));r.onMounted(()=>{var g,b;t.selectOnCreated&&((g=i.value)==null||g.select()),t.focusOnCreated&&((b=i.value)==null||b.focus({preventScroll:!0})),w.value||(w.value="button-edit_"+F(8)),w.value=w.value+"-textbox"});const M=r.ref(!1),_=g=>{g.preventDefault(),M.value=!0},v=g=>{g.preventDefault(),M.value=!1,d(g)};function C(g){M.value||d(g)}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:x.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:a.value,readonly:o.value,tabindex:t.tabIndex,title:s.value,type:t.inputType,value:e.value,onBlur:f,onChange:y,onClick:u,onFocus:m,onInput:C,onKeydown:c,onKeyup:h,onMousedown:p,onCompositionend:v,onCompositionstart:_},null)}function Ii(t,e,n){const i=r.ref(t.separator),o=r.computed(()=>t.readonly||t.disable),{changeTextBoxValue:l,onFocusTextBox:a,onBlurTextBox:s,onClickTextBox:f,textBoxPlaceholder:u}=n,m=r.computed(()=>e.value?e.value.split(i.value).map(p=>({name:p,selectable:!0})):[]);function d(p){l(p.map(y=>y.name).join(i.value),!0)}r.watch(()=>t.separator,p=>{i.value=p});const c=r.ref(!t.disable&&!t.readonly);r.watch([()=>t.disable,()=>t.readonly],([p,y],[w,F])=>{c.value=!p&&!y});function h(p){f(p)}return()=>r.createVNode(pn,{tabindex:t.tabIndex,onFocus:a,onBlur:s,id:`${t.id}-tag-editor`,class:"form-control",placeholder:u.value,data:m.value,showClose:!o.value,showInput:!0,disable:o.value,onChange:d,onClick:h},null)}function Pi(t,e,n,i){const{buttonGroupClass:o,onClickButton:l,onMouseEnterButton:a,onMouseLeaveButton:s}=n,{enableClearButton:f,showClearButton:u,onClearValue:m}=i,d=r.ref(),c=Re.debounce(p=>{l(p)},t.buttonBehavior==="Modal"?0:200),h=()=>{e.emit("beforeClearValue")};return{renderButtonGroup:()=>r.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:o.value},[f.value&&r.withDirectives(r.createVNode("span",{class:"input-group-text input-group-clear",onClick:m,onMousedown:h},[r.createVNode("i",{class:"f-icon modal_close"},null)]),[[r.vShow,u.value]]),e.slots.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",onClick:c,onMouseenter:a,onMouseleave:s},[e.slots.buttonContent()]):t.buttonContent?r.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:d,onClick:p=>c(p),onMouseenter:a,onMouseleave:s},null):null]),buttonHandleElement:d}}function Ni(t,e,n){const i=r.ref(t.popupMinWidth),{hidePopup:o,popoverRef:l}=n,a=()=>{e.emit("shown")};return()=>r.createVNode(un,{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 s,f;return[(f=(s=e.slots).default)==null?void 0:f.call(s)]}})}const Bi=r.defineComponent({name:"FButtonEdit",props:mi,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=Vi(t,e,n,o),{shouldPopupContent:a,hidePopup:s,showPopup:f,togglePopup:u}=l,m=Ti(t,e,n,l,o),d=r.ref(""),c=ki(t,e,o,d,l),{hasFocusedTextBox:h,commitValue:p,inputGroupClass:y}=c,w=_i(t,e,o,h,d,c),{onMouseEnterTextBox:F,onMouseLeaveTextBox:x}=w,M=r.ref(!1),_=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((H,I)=>(H[I]=!0,H),V),V}),v=r.computed(()=>({overflow:t.wrapText?"hidden":""})),C=r.computed(()=>({}));function g(){if(!t.multiSelect||t.inputType!=="tag"||!n.value)return 0;let V=0;const H=Array.from(n.value.querySelectorAll(".farris-tag-item"));return H&&H.length&&(V=H.map(I=>I.offsetTop).filter(I=>I>20).length),V}const b=r.ref(g());r.onUpdated(()=>{b.value=g()});function S(){return t.multiSelect&&t.inputType==="tag"?()=>r.createVNode(r.Fragment,null,[Ii(t,o,c)(),!!b.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("+"),b.value])])]):Ei(t,o,c)}let P=S();r.watch([()=>t.multiSelect,()=>t.inputType],()=>{P=S()});const{renderButtonGroup:B,buttonHandleElement:E}=Pi(t,e,m,w),N=Ni(t,e,l),k=r.ref(a.value),T={displayText:d,commitValue:p,elementRef:n,hidePopup:s,showPopup:f,popoverRef:l.popoverRef,shouldPopupContent:a,togglePopup:u,openDialog:()=>{E.value&&t.buttonBehavior==="Modal"&&E.value.click()},getModal:()=>{var V;return t.buttonBehavior==="Modal"?(V=m.modalRef.value)==null?void 0:V.value:null},getTextbox:()=>{var V;return(V=n.value)==null?void 0:V.querySelector("input")},forceClosePopup:()=>{k.value=!1,M.value=!0,a.value=!1}};return r.onMounted(()=>{n.value.componentInstance=T,window.onresize=()=>{document.body.click()}}),r.onBeforeUnmount(()=>{var V;window.onresize=null,(V=window[rt])==null||V.delete(n.value)}),e.expose(T),r.watch(()=>a.value,async(V,H)=>{if(M.value){k.value=V,M.value=!1;return}if(!V&&t.beforeClosePopup&&typeof t.beforeClosePopup=="function"){try{const I=await t.beforeClosePopup();k.value=!I,(!I||t.readonly)&&(a.value=!0)}catch(I){console.error("Error in beforeClosePopup:",I),k.value=H,a.value=H}return}k.value=V}),()=>{var V,H;return r.createVNode(r.Fragment,null,[r.createVNode("div",r.mergeProps(e.attrs,{ref:n,class:_.value,id:t.id?t.id:void 0,style:v.value}),[r.createVNode("div",{id:t.id?`${t.id}-input-group`:void 0,class:y.value,style:C.value,onMouseenter:F,onMouseleave:x},[(H=(V=e.slots).precontent)==null?void 0:H.call(V),P(),B()])]),k.value&&N()])}}}),Lt=new Map([["appearance",ze.resolveAppearance],["column","columnOption"],["command","commandOption"]]),$t=new Map([]),Oi="root-viewmodel";class ji{constructor(e,n){ie(this,"formSchemaUtils");ie(this,"controlCreatorUtils");ie(this,"designViewModelUtils");ie(this,"useFormCommand");ie(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 f,u,m,d,c,h,p,y,w,F,x;const o=(u=(f=n==null?void 0:n.parentComponentInstance)==null?void 0:f.schema)==null?void 0:u.type,l=(c=(d=(m=n==null?void 0:n.parentComponentInstance)==null?void 0:m.schema)==null?void 0:d.appearance)==null?void 0:c.class,a=(p=(h=this.formSchemaUtils.getFormSchema())==null?void 0:h.module)==null?void 0:p.templateId;if(o===A.DgControl["splitter-pane"].type&&(l!=null&&l.includes("f-page-content-main"))&&["double-list-template","tree-list-template"].includes(a))return e;const s=[A.DgControl["content-container"].type,A.DgControl["response-layout-item"].type,A.DgControl["splitter-pane"].type];if(o&&s.includes(o)){const M=this.resolver.getSchemaByType("section",{parentComponentInstance:n.parentComponentInstance,mainTitle:n.componentName},this.designerHostService);if(M&&M.contents&&M.contents.length){const _=M.contents[0];return _.contents=[e],this.appendAddDeleteBtnToParentContainer(_,n,i),M}}return this.appendAddDeleteBtnToParentContainer((y=n==null?void 0:n.parentComponentInstance)==null?void 0:y.schema,n,i),o===A.DgControl["tab-page"].type&&(w=n.parentComponentInstance)!=null&&w.parent&&(F=n.parentComponentInstance)!=null&&F.parent.updateToolbarItems&&((x=n.parentComponentInstance)==null||x.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(),s=A.DgControl["tab-page"].type===o?"tab-toolbar-item":"section-toolbar-item",f=this.resolver.getSchemaByType(s),u=[Object.assign({},f,{id:`button-add-${n.componentId}`,type:s,text:"新增",disabled:a.find(m=>m.id==="canAddDetail")?{type:"StateMachine",status:!1,field:"canAddDetail"}:!1,onClick:`root-viewModel.${i.id}.${l}AddItem1`}),Object.assign({},f,{id:`button-remove-${n.componentId}`,type:s,text:"删除",disabled:a.find(m=>m.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:A.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=A.DgControl["tab-page"].type===o?"tab-toolbar":"section-toolbar"),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(u),this.appendAddAndDeleteCommands(i),this.useFormCommand&&this.useFormCommand.checkCommands()}appendAddAndDeleteCommands(e){var m;const n=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=D.useGuid().guid(),o=D.useGuid().guid(),l=this.resolveCommandController(),a={id:i,code:`${n}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:l,shortcut:{},extensions:[]},s={id:o,code:`${n}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:l,shortcut:{},extensions:[]};(m=this.designerHostService.designerContext)!=null&&m.appendIdentifyForNewCommand&&(this.designerHostService.designerContext.appendIdentifyForNewCommand(a),this.designerHostService.designerContext.appendIdentifyForNewCommand(s)),e.commands.push(a,s),this.formSchemaUtils.getFormSchema().module.webcmds.find(d=>d.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:Oi,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(e){var o,l,a;const{templateId:n}=this.formSchemaUtils.getFormSchema().module,i=(a=(l=(o=e.parentComponentInstance)==null?void 0:o.schema)==null?void 0:l.appearance)==null?void 0:a.class;return n==="double-list-in-tab-template"||["double-list-template","tree-list-template"].includes(n)&&(i!=null&&i.includes("f-page-content-main"))?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){var m,d,c;const n=(c=(d=(m=e.parentComponentInstance)==null?void 0:m.schema)==null?void 0:d.appearance)==null?void 0:c.class,{templateId:i}=this.formSchemaUtils.getFormSchema().module;let o;if(i==="double-list-in-tab-template"){const h=this.resolver.getSchemaByType("section");Object.assign(h,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),o=h}else if((i==="double-list-template"||i==="tree-list-template")&&(n!=null&&n.includes("f-page-content-main"))){const h=this.resolver.getSchemaByType("section");Object.assign(h,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),o=h}else{const h=this.resolver.getSchemaByType("content-container");Object.assign(h,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),o=h}const l=this.resolver.getSchemaByType("data-grid"),a=[],s=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),f=e.editable&&s.length>0&&s.findIndex(h=>h.id==="editable")>-1;Object.assign(l,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:f,dataSource:e.dataSource||"",editable:f?{type:"StateMachine",status:!0,field:"editable"}:!1,pagination:{enable:!e.editable}}),o.contents=[l];const{selectedFields:u}=e;return u==null||u.forEach(h=>{if(h.$type===D.FormSchemaEntityField$Type.ComplexField)return;const p=Re.cloneDeep(h),y=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",p,"",f);y&&a.push(y)}),[o]}assembleViewModelFields(e){const n=[],{selectedFields:i}=e;return i==null||i.forEach(o=>{if(o.$type===D.FormSchemaEntityField$Type.ComplexField)return;let l="blur";const a=o.type.name;(a===D.FormSchemaEntityFieldTypeName.Enum||a===D.FormSchemaEntityFieldTypeName.Boolean)&&(l="change"),n.push({type:"Form",id:o.id,fieldName:o.bindingField,groupId:null,groupName:null,updateOn:l,fieldSchema:{}})}),n}}function Wt(t,e,n,i){var l,a,s,f,u,m,d;const o=n.parentComponentInstance;if(o&&i){const c=Math.random().toString(36).slice(2,6),h={componentId:`data-grid-${c}`,componentName:((l=n.bindingSourceContext)==null?void 0:l.entityTitle)||((s=(a=n.bindingSourceContext)==null?void 0:a.bindingEntity)==null?void 0:s.name)||`表格-${c}`,componentType:"data-grid",parentContainerId:o.schema.id,parentComponentInstance:o,editable:!0,bindTo:((f=n.bindingSourceContext)==null?void 0:f.bindTo)||"",dataSource:(m=(u=n.bindingSourceContext)==null?void 0:u.bindingEntity)==null?void 0:m.label,selectedFields:(d=n.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new ji(t,i).createComponent(h)}else return e}function zt(t,e,n){return e}const Ri={$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"]},qt={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},Ai=ze.createPropsResolver(qt,Ri,Lt,Wt),Hi=new Map([["appearance",ze.resolveAppearance]]);function Li(t,e,n){return e}const $i={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:[]}}}}}},Wi={$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"]},Gt={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(Gt,Wi,Hi,Li,$i);const zi={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 qi(t,e){function n(l){const a=[];let s=l.nextNode();for(;s;)a.push(s),s=l.nextNode();return a}function i(l,a){const s=document.createTreeWalker(l,NodeFilter.SHOW_TEXT);return n(s).map(d=>({textNode:d,text:(d.textContent||"").toLocaleLowerCase()})).map(({textNode:d,text:c})=>{const h=[];let p=0;for(;p<c.length;){const y=c.indexOf(a,p);if(y===-1)break;h.push(y),p=y+a.length}return h.map(y=>{const w=new Range;return w.setStart(d,y),w.setEnd(d,y+a.length),w})}).flat()}function o(l){if(!CSS.highlights||(CSS.highlights.clear(),!l||!e))return;const a=i(e.value,l.toLocaleLowerCase()),s=new Highlight(...a);CSS.highlights.set("search-result",s)}return{search:o}}function Ut(t,e,n,i,o,l,a,s,f,u){const m=r.ref(t.size),d=r.ref(t.textField),c=r.ref(t.titleField),h=r.ref(t.disableField),p=r.computed(()=>{var S,P;return((S=t.selection)==null?void 0:S.multiSelect)&&((P=t.selection)==null?void 0:P.showCheckbox)}),{onMouseenterItem:y,onMouseoverItem:w,onMouseoutItem:F}=l,{getKey:x,listViewItemClass:M,listViewItemStyle:_,onCheckItem:v,onClickItem:C}=a,g=r.computed(()=>{const S={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return t.itemClass?S:{margin:m.value==="small"?"0.25rem 0":"8px 0",...S}});function b(S,P,B){return S.checked=s.findIndexInSelectedItems(S)>-1,r.createVNode("li",{class:M(S,P),id:x(S,P),key:x(S,P),style:_(S,P),onClick:E=>C(S,P,E),onMouseenter:E=>y(E,S,P),onMouseover:E=>w(E,S,P),onMouseout:E=>F(E,S,P)},[p.value&&r.createVNode("div",{class:"f-list-select",onClick:E=>E.stopPropagation()},[r.createVNode(wt.FCheckbox,{id:"list-"+x(S,P),customClass:"listview-checkbox float-left",disabled:S[h.value],checked:S.checked,"onUpdate:checked":E=>S.checked=E,onChange:E=>{v(S,P,!E.checked)}},null)]),r.createVNode("div",{class:"f-list-content"},[r.createVNode("div",{class:t.itemContentClass,style:g.value,title:S.raw[c.value]||S.raw[d.value]},[S.raw[d.value]])])])}return{renderItem:b}}function Gi(t,e,n,i,o,l,a,s,f,u){const m=r.ref(t.multiSelect),d=r.ref(t.disableField),c=r.ref(t.textField),{onMouseenterItem:h,onMouseoverItem:p,onMouseoutItem:y}=l,{getKey:w,listViewItemClass:F,listViewItemStyle:x,onCheckItem:M,onClickItem:_}=a;function v(g,b,S){return t.contentTemplate?r.createVNode(r.Fragment,null,[t.contentTemplate({item:g.raw,index:b,selectedItem:S})]):e.slots.content?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.content({item:g.raw,index:b,selectedItem:S})]):r.createVNode("div",{style:"margin: 10px 0;"},[g.raw[c.value||"name"]])}function C(g,b,S){return r.createVNode("li",{class:F(g,b),id:w(g,b),key:w(g,b),style:x(g,b),onClick:P=>_(g,b,P),onMouseenter:P=>h(P,g,b),onMouseover:P=>p(P,g,b),onMouseout:P=>y(P,g,b)},[m.value&&r.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[r.createVNode(wt.FCheckbox,{id:"list-"+w(g,b),customClass:"listview-checkbox",disabled:g[d.value],checked:g.checked,"onUpdate:checked":P=>g.checked=P,onChange:P=>M(g,b,!P.checked)},null)]),r.createVNode("div",{class:"f-list-content"},[v(g,b,S)])])}return{renderItem:C}}function Ui(t,e,n,i,o,l,a,s,f,u){const m=r.ref(t.multiSelect),d=r.ref(t.disableField),c=r.ref(t.textField),{onMouseenterItem:h,onMouseoverItem:p,onMouseoutItem:y}=l,{getKey:w,listViewItemClass:F,onCheckItem:x,onClickItem:M}=a,{dragstart:_,dragenter:v,dragover:C,dragend:g}=i,{removeItem:b}=f,S=r.computed(()=>({margin:m.value?"10px 0":"10px 0px 10px 14px"}));function P(T,V=""){const H=T.target;H.title=H.scrollWidth>H.clientWidth?V:""}function B(T){return r.createVNode("div",{style:S.value,onMouseenter:V=>P(V,T.raw[c.value||"name"])},[T.raw[c.value||"name"]])}function E(){return e.slots.itemContent?e.slots.itemContent:B}const N=E();function k(T,V,H){return r.createVNode("li",{class:F(T,V),id:w(T,V),key:w(T,V),onClick:I=>M(T,V,I),onMouseenter:I=>h(I,T,V),onMouseover:I=>p(I,T,V),onMouseout:I=>y(I,T,V),draggable:"true",onDragstart:I=>_(I,T,V),onDragenter:I=>v(I,V),onDragend:I=>g(I,T),onDragover:I=>C(I)},[m.value&&r.createVNode("div",{class:"f-list-select",onClick:I=>I.stopPropagation()},[r.createVNode(wt.FCheckbox,{id:"list-"+w(T,V),customClass:"listview-checkbox",disabled:T[d.value]||!T.checked,checked:T.checked,"onUpdate:checked":I=>T.checked=I,onChange:I=>x(T,V,!I.checked)},null)]),r.createVNode("div",{class:"f-list-content"},[N(T)]),r.createVNode("div",{class:"f-list-remove",onClick:I=>{I.stopPropagation(),b(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:k}}function Di(t,e,n,i,o,l,a,s,f,u){var w;const m=r.ref(((w=t.group)==null?void 0:w.groupFields)||[]),{collpaseGroupIconClass:d}=o,{toggleGroupRow:c}=u;function h(F,x){x.collapse=!x.collapse,n.value=c(x.collapse?"collapse":"expand",x,n.value)}function p(F,x,M){return e.slots.group?r.createVNode(r.Fragment,null,[e.slots.content&&e.slots.group({item:F.raw,index:x,selectedItem:M})]):r.createVNode("div",{class:"f-navlookup-recentHeader",onClick:_=>h(_,F)},[r.createVNode("div",{class:"fv-grid-group-row-icon"},[r.createVNode("span",{class:d(F)},null)]),r.createVNode("div",{class:"f-navlookup-recommandLabel"},[F.raw[m.value[F.layer]]])])}function y(F,x,M){return F.layer>-1&&p(F,x,M)}return{renderItem:y}}function Yi(t,e,n,i){const{dataView:o}=n,{updateSelectedItems:l}=i;function a(s){if(s>-1&&s<o.value.length){if(t!=null&&t.checkBeforeRemoveItem&&!t.checkBeforeRemoveItem(o.value[s]))return;const f=o.value.splice(s,1);l(),e.emit("removeItem",f[0])}}return{removeItem:a}}function Xi(t,e,n,i,o,l,a,s,f,u){const m=r.ref(t.view),d=r.ref(t.view==="CardView"),c=r.ref({}),h=Yi(t,e,i,f),p=r.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":d.value,"flex-wrap":d.value})),y=r.computed(()=>!!n.value&&n.value.length>0),w=r.computed(()=>n.value.length===0);r.computed(()=>w.value&&!e.slots.empty);function F(){return m.value==="SingleView"?Ut:m.value==="DraggableView"?Ui:(m.value==="ContentView"||m.value==="CardView")&&(t.contentTemplate||e.slots.content)?Gi:Ut}const x=F(),{renderItem:M}=x(t,e,n,u,o,l,f,a,h,s),{renderItem:_}=Di(t,e,n,u,o,l,f,a,h,s),v=[M,_];function C(){return n.value.filter(S=>S.visible!==!1).map((S,P)=>v[S.type](S,P,c))}function g(){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():je.LocaleService.getLocaleValue("listView.emptyMessage")])])}function b(){return r.createVNode("ul",{class:p.value,style:"list-style: none;"},[y.value&&C(),w.value&&g()])}return{renderListArea:b}}function Zi(t,e,n){function i(){return e.slots.header&&r.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:i}}function Dt(t,e,n){const i=r.ref(t.headerClass),o=r.ref(t.placeholder),l=r.ref(""),a=r.computed(()=>!l.value),s=r.computed(()=>!!l.value);function f(c){l.value=""}r.watch(l,c=>{t.enableHighlightSearch&&n.search(c),e.emit("afterSearch",c)});const u=r.computed(()=>{const c={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((p,y)=>(p[y]=!0,p),c),c});function m(c){}function d(){return r.createVNode("div",{class:"f-list-view-header",onClick:r.withModifiers(()=>m,["prevent","stop"])},[r.createVNode("div",{class:u.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":c=>l.value=c,name:"input-group-value",type:"text",placeholder:o.value,autocomplete:"off"},null),[[r.vModelText,l.value]]),r.createVNode("div",{class:"input-group-append"},[s.value&&r.createVNode("span",{class:"input-group-text input-group-clear",onClick:c=>f()},[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:d}}function Ji(){const t=r.ref(""),e=r.ref(-1),n=r.ref(""),i=r.ref(-1),o=r.ref(!1);function l(d,c,h){i.value=h}function a(d,c,h){o.value||(i.value=h)}function s(d,c,h){i.value=-1}function f(){o.value=!0}function u(){o.value=!1}function m(){e.value=-1,t.value=""}return{activeIndex:e,focusedItemId:n,hoverIndex:i,clearActiveItem:m,onMouseenterItem:l,onMouseoverItem:a,onMouseoutItem:s,resumeHover:u,suspendHover:f}}function Qi(t,e,n,i){const o=r.ref(t.idField),{dataView:l}=n,a=r.ref(-1),s=r.ref(!1),{activeIndex:f,focusedItemId:u,hoverIndex:m,resumeHover:d,suspendHover:c}=i;let h,p=0,y=0;function w(C,g){const b=C-p,S=g-y;h.style.left=parseInt(h.style.left)+b+"px",h.style.top=parseInt(h.style.top)+S+"px",p=C,y=g}function F(C){const{left:g,top:b}=C.getBoundingClientRect(),S=C.cloneNode(!0);return S.style.cssText=`
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,bt,pn,Ae,nl,ze,il,ol,ll,ke,Bt,hn,rl,al,sl,dl,Ct,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 Ct.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 gt(L){F.value.push(ze.cloneDeep(L)),me.value=pe()}function yt(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 vt(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:gt,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:yt,isVisibleInTree:E,load:Tt,navigatePageTo:xt,pageIndex:U,rawView:Q,refresh:Et,removeAllFilter:Re,removeDataItem:It,removeDataItemById:vt,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 gt(q){z.value=!1,le.value=-1,he.value=-1,document.removeEventListener("mouseup",gt),E&&(document.removeEventListener("mousemove",E),E=null),document.body.style.userSelect="",Me.value&&(Me.value.style.opacity=null)}function yt(q){z.value=!1,le.value=-1,he.value=-1,document.removeEventListener("touchend",yt),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",gt),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",yt),document.body.style.userSelect="none")}function vt(q){const K=m.value.length*S-h.value;let ne=q*S;ne>=K&&(ne=K),R(-ne-C.value)}function kt(){vt(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:vt,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"]},wt={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(wt,Ut,mt,pt);const $i=Ge.getPropsResolverGenerator(wt,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(bt.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(bt.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(bt.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=`
2
2
  position:absolute;
3
- left:${g}px;
3
+ left:${h}px;
4
4
  top:${document.documentElement.scrollTop?b+document.documentElement.scrollTop:b}px;
5
5
  z-index: 999999;
6
- border: 1px solid #e2e3e5;
7
6
  pointer-events: none;
8
- background-color: #edf5ff;
9
7
  border-radius: 10px;
10
8
  margin: 4px 2px;
11
9
  display: flex;
12
10
  align-items: center;
13
11
  float: none;
14
12
  text-align: initial;
15
- width:${getComputedStyle(C).width};
16
- height:${getComputedStyle(C).height};
17
- `,S.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",S.children[0].children[0].style.cssText=`
13
+ width:${getComputedStyle(w).width};
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=`
18
16
  margin: 10px 0px 10px 14px;
19
17
  overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
20
- `,S.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",S.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(S),S}function x(C,g,b){if(C.stopPropagation(),c(),g){if(h=F(C.target),C.dataTransfer){const S=new Image;S.src="",C.dataTransfer.setDragImage(S,0,0)}p=C.pageX,y=C.pageY,setTimeout(()=>{a.value=b,s.value=!0,g.moving=!0})}}function M(C,g){if(C.preventDefault(),a.value!==g){const b=l.value[a.value],S=l.value;S.splice(a.value,1),S.splice(g,0,b),a.value=g,w(C.pageX,C.pageY)}}function _(C){C.preventDefault(),C.dataTransfer&&(C.dataTransfer.dropEffect="move"),w(C.pageX,C.pageY)}function v(C,g){g&&(g.moving=!1,h&&(document.body.removeChild(h),h=null)),l.value.forEach((b,S)=>{b.__fv_index__=S}),s.value=!1,d(),m.value=g.raw.__fv_index__,f.value=g.raw.__fv_index__,u.value=g.raw[o.value],e.emit("change",l.value),e.emit("activeChange",[g.raw])}return{dragstart:x,dragenter:M,dragover:_,dragend:v,isDragging:s}}function Ki(t,e,n,i,o,l){const a=r.ref(t.idField),s=r.ref(t.disableField),f=r.ref(t.draggable);r.ref(t.itemClass);const u=r.ref(t.selection.multiSelect??!1),m=r.ref(t.selection.multiSelectMode),{isDragging:d}=i,{activeIndex:c,focusedItemId:h,hoverIndex:p}=o,{clearSelection:y,getSelectedItems:w,toggleSelectItem:F,currentSelectedDataId:x}=l,M=r.ref(w()),_=k=>M.value.length===0?!1:M.value.some(T=>{let V="";return T.data?V=T.data[a.value]:V=T[a.value],V===k});function v(){M.value=w()}function C(k,T){return k.raw[a.value]!=null?k.raw[a.value]:""}function g(k,T){const V={"f-list-view-group-item":!0,"f-list-view-draggable-item":f.value,"f-un-click":!k.checked,"f-un-select":!!k.raw[s.value],"f-listview-active":u.value&&_(C(k))||!u.value&&k.raw[a.value]===x.value,"f-listview-hover":!d.value&&T===p.value,moving:!!k.moving};if(typeof t.itemClass=="string")return D.getCustomClass(V,t.itemClass);if(typeof t.itemClass=="function"){const H=t.itemClass(k);return D.getCustomClass(V,H)}return V}function b(k,T){const V=u.value&&_(C(k))||!u.value&&k.raw[a.value]===x.value,H={};if(V&&(H.backgroundColor="#dae9ff"),typeof t.itemStyle=="string")return D.getCustomStyle(H,t.itemStyle);if(typeof t.itemStyle=="function"){const I=t.itemStyle(k);return D.getCustomStyle(H,I)}return H}const S=r.computed(()=>!u.value);function P(k,T,V){k.checked=V,!k.raw[s.value]&&(S.value&&(h.value=k.raw[a.value]),F(k))}const B=r.computed(()=>u.value&&m.value==="OnCheckClearByClick"),E=r.computed(()=>!u.value||u.value&&(m.value==="OnCheckAndClick"||m.value==="OnClick"));function N(k,T,V){if(k.raw[s.value]){V==null||V.preventDefault(),V==null||V.stopPropagation();return}h.value=k.raw[a.value],c.value=T,B.value&&y(),E.value&&(F(k),v()),e.emit("clickItem",{data:M.value,index:T,dataItem:k.raw}),e.emit("activeChange",M.value)}return{getKey:C,selectedItems:M,listViewItemClass:g,listViewItemStyle:b,updateSelectedItems:v,onCheckItem:P,onClickItem:N}}const Yt=r.defineComponent({name:"FListView",props:zi,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(t,e){const n=r.ref(),i=r.ref(!0),o=r.ref(!1),l=r.ref([]),a=0,s=r.ref(t.columns),f=_e.useFilter(t,e),u=_e.useIdentify(t),m=_e.useHierarchy(t),d=_e.useGroupData(t,u),c=_e.useDataView(t,new Map,f,m,u),h=_e.useSelection(t,c,u,l,e),p=qi(t,n),y=_e.usePagination(t,c),w=r.computed(()=>c.dataView.value.length),F=_e.useRow(t,e,h,u),x=_e.useEdit(t,e,u,F,l),M=_e.useVisualDataBound(t),_=_e.useVisualDataCell(t,{},M),v=_e.useVisualDataRow(t,c,x,m,u,M,_),C=_e.useVisualGroupRow(t,u,_,v),g=_e.useVisualSummaryRow(t,u,_,v),b=_e.useVisualData(t,s,c,w,a,v,C,g),{getVisualData:S}=b;l.value=S(0,w.value+a-1);const P=r.computed(()=>{const re={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&(re[`${t.size}-item`]=!0),D.getCustomClass(re,t.customClass)}),B=r.computed(()=>!!e.slots.footer||i.value);function E(){return t.header==="SearchBar"?Dt:t.header==="ContentHeader"?Zi:Dt}const N=E(),{renderHeader:k}=N(t,e,p),T=Ji(),V=Qi(t,e,c,T),H=Ki(t,e,l,V,T,h),{renderListArea:I}=Xi(t,e,l,c,d,T,h,b,H,V);function R(re){p.search(re)}function q(re){re&&(c.load(re),l.value=S(0,w.value+a-1))}function J(){h.clearSelection(),T.clearActiveItem()}function j(){return H.selectedItems.value}function ee(){return H.selectedItems.value.map(re=>re[u.idField.value])}function oe(re){h.selectedValues.value=re,H.updateSelectedItems()}function ce(){return h.currentSelectedDataId.value}function Z(re){F.activeRowById(re)}function L(re){const ve=u.idField.value,Ne=l.value.find(Qe=>Qe.raw[ve]===re),De=l.value.findIndex(Qe=>Qe.raw[ve]===re);Ne&&De>-1&&H.onClickItem(Ne,De)}function W(re){const ve=u.idField.value,Ne=l.value.find(De=>De.raw[ve]===re);Ne&&F.changeRow(Ne)}function G(re){y.updatePagination(re)}function U(re){return l.value.filter(ve=>re.includes(ve.raw[t.idField]))}e.expose({search:R,updateDataSource:q,clearSelection:J,getSelections:j,updateSelectionByIds:oe,getSelectionIds:ee,activeRowById:Z,getCurrentRowId:ce,clickRowItemById:L,updatePagination:G,getVisibleDataByIds:U,selectRowById:W});function ne(re){t.multiSelect&&(re.preventDefault(),re.stopPropagation())}r.watch(()=>t.selectionValues,(re,ve)=>{re!==ve&&oe(re)});const ue=_e.useSidebar(t,h),{sidebarWidth:me,showSidebarCheckBox:ge}=ue,ye=_e.useColumn(t,e),{applyColumnSorter:he,columnContext:Ie,updateColumnRenderContext:Le}=ye,O=_e.useVirtualScroll(t,c,l,Ie,b,w,a,me,x),{shouldRenderPagination:Y}=y,{renderDataGridPagination:Q}=_e.getPagination(t,e,c,O,y,h);return()=>r.createVNode("div",{class:P.value,onClick:ne},[k(),r.createVNode("div",{ref:n,class:"f-list-view-content",onMouseover:()=>{o.value=!0},onMouseleave:()=>{o.value=!1}},[I()]),B.value&&r.createVNode("div",{class:"f-list-view-footer"},[t.footerTemplate?t.footerTemplate():e.slots.footer&&e.slots.footer()])])}}),eo=r.defineComponent({name:"FTransfer",props:Gt,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),s=r.ref(t.selections||[]),f=r.computed(()=>s.value.map(N=>N[n.value])),u=new Map,m=r.ref(),d=r.ref(),c=r.ref();let h;function p(){const N=new Map,k=t.selectionValues||[];k.length&&k.reduce((V,H)=>(V.set(H,!0),V),N);const T=t.selections||[];T.length&&(N.clear(),T.reduce((V,H)=>(V.set(H[n.value],!0),V),N)),s.value.length||(s.value=l.value.filter(V=>N.has(V[n.value])).map(V=>Object.assign({},V))),l.value.forEach(V=>{const H=V[n.value],I=N.has(H);V.checked=I,I&&u.set(H,V)})}p(),r.watch(()=>t.selections,N=>{s.value=N,p()});const y=r.computed(()=>i.value==="List"),w=r.computed(()=>i.value==="Tree");function F(N){const k=Re.cloneDeep(s.value);s.value=N.map(T=>Object.assign({},T)),e.emit("change",s.value,k)}function x(N){e.emit("selectItem",N)}function M(N){e.emit("unSelectItem",N)}function _(){return r.createVNode(Yt,{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:f.value,onSelectionUpdate:F},null)}function v(){return r.createVNode(hn,{ref:c,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:f.value,onSelectionUpdate:F,onSelectItem:x,onUnSelectItem:M},null)}function C(){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"},[y.value&&_(),w.value&&v()])])])}function g(N){const k=N[n.value];if(k!==null||k!==void 0){s.value=s.value.filter(V=>V[n.value]!==k);const T=u.get(k);T&&(T.checked=!1,u.delete(k)),e.emit("change",s.value),e.emit("removeItem",N)}}r.watch(s,N=>{m.value.updateDataSource(Re.cloneDeep(N));const k=h==null?void 0:h[n.value],T=N.find(V=>k===V[n.value]);T?m.value.activeRowById(T[n.value]):(h=null,m.value.activeRowById(""))});function b(N){const k=new Map;s.value.reduce((T,V)=>(T.set(V[n.value],V),T),k),s.value=N.map(T=>k.get(T[n.value])),e.emit("change",s.value)}function S(N){h=N[0],e.emit("activeChange",N)}function P(){var N;return r.createVNode(Yt,{ref:m,columns:t.columns,style:"flex:1",data:s.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:a.value,itemClass:t.selectedItemClass,onChange:b,onRemoveItem:g,onActiveChange:S,checkBeforeRemoveItem:t.checkBeforeRemoveItem},{itemContent:(N=e.slots)!=null&&N.text?k=>{var T;return((T=e.slots)==null?void 0:T.text)&&e.slots.text(k)}: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"},[je.LocaleService.getLocaleValue("transfer.selectedStart")]),r.createVNode("span",{class:"selection-count"},[s.value&&s.value.length]),r.createVNode("span",{class:"selection-item-title"},[je.LocaleService.getLocaleValue("transfer.selectedEnd")])]),r.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[P()])])])}const E=r.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":o.value}));return r.onMounted(()=>{d.value&&d.value.parentElement&&getComputedStyle(d.value.parentElement).display==="flex"&&(o.value=!0)}),()=>r.createVNode("div",{ref:d,class:E.value,style:"height:480px"},[e.slots.children?e.slots.children({selections:s.value}):C(),B()])}}),to=r.defineComponent({name:"FGridFieldEditor",props:qt,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"),s=r.inject("designerContext");let f=t.gridData.columns;const{fieldEditable:u}=t.gridData,m=r.ref(`共 ${(f||[]).length} 项`),d=r.ref([]),c=r.ref([]);let h=[];function p(k,T=!0){if(s.checkCanDeleteControl){const V=h.find(H=>{var I;return((I=H.data)==null?void 0:I.id)===k.id});return s.checkCanDeleteControl(V,T)}return!0}const y={customRowStatus:k=>{const T=k.raw;T.type&&T.type.fields&&T.type.fields.length>0&&(k.disabled=!0),p(T,!1)||(k.disabled=!0)}};function w(){if(d.value=[],!f||f.length===0)return[];const k="[绑定字段不存在,待移除]";f.forEach(T=>{if(T.binding&&T.binding.field){const V=h.find(H=>H.data.id===T.binding.field);V?V.data.$type===D.FormSchemaEntityField$Type.ComplexField?d.value.push(Object.assign({isInValidBinding:!0},V.data,{name:V.data.name+k})):d.value.push(Object.assign({},V.data)):d.value.push({id:T.binding.field,name:T.title+k,label:T.field,bindingField:null,isInValidBinding:!0})}}),m.value=`共 ${d.value.length} 项`}function F(k,T=[]){return k&&k.forEach(V=>{if(T.push(V),V.children&&F(V.children,T),s.appendIdentifyForNewControl){const H=f.find(I=>{var R;return((R=I.binding)==null?void 0:R.field)===V.data.id});(!H||H[s.identifyForNewControl])&&s.appendIdentifyForNewControl(V)}}),T}function x(){if(o.designerMode==="PC_RTC"&&l.rtcAddedTreeNodes.value){const k=l.getTableInfoByViewModelId(n.value);if(k!=null&&k.id){const T=l.rtcAddedTreeNodes.value[k.id];T!=null&&T.length&&(c.value=c.value.concat(T))}}}function M(){c.value=i.getAllFields2TreeByVMId(n.value),x(),h=F(c.value)}function _(k,T,V){if(o.getComponents().find(I=>{let R=o.getControlsInCmpWidthBinding(I.viewModel,k);if(R=R.filter(q=>{var j;if(q.id===V)return!1;const J=T.type==="visible"?q[T.type]:(j=q.editor)==null?void 0:j[T.type];if(J&&J.type==="Expression"&&J.expressionId===T.id)return!0}),R.length)return!0}))return!0}function v(k){k.map(T=>{var H;const V=f.find(I=>{var R;return((R=I.binding)==null?void 0:R.field)===T});if(V&&o.getExpressions().length){const I=o.getExpressions(),R=I.findIndex(q=>q.target===T);R>-1&&((H=I[R].rules)==null||H.map(q=>{var J;switch(q.type){case"visible":case"readonly":case"required":{const j=q.type==="visible"?V[q.type]:(J=V.editor)==null?void 0:J[q.type];j&&j.type==="Expression"&&j.expressionId===q.id&&(_(T,q,V.id)||(q.needDelete=!0));break}default:_(T,q,V.id)||(q.needDelete=!0)}}),I[R].rules=I[R].rules.filter(q=>!q.needDelete))}})}function C(){const k=i.getDgViewModel(n.value),T=[],V=[],H=d.value;H.forEach(R=>{const q=f==null?void 0:f.find(J=>{if(J.binding&&J.binding.field)return J.binding.field===R.id});if(q)T.push(q);else{const J=a.setGridFieldProperty(t.gridType,R.data,null,u);k.addField(R),T.push(J)}V.push(R.id)});const I=k.fields.filter(R=>!V.includes(R.id));if(I&&I.length>0){const R=I.map(q=>q.id);k.removeField(R),v(R)}H.length!==d.value.length&&(d.value=H),m.value=`共 ${T.length} 项`,e.emit("change",T)}const g={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{C()},rejectCallback:()=>{}};function b(){return t.getLatestGridData?f=t.getLatestGridData().columns:f=t.gridData.columns,M(),w(),Promise.resolve(!0)}function S(k){d.value=[...d.value,k.raw]}function P(k){const T=d.value.findIndex(V=>V.id===k.raw.id);T>-1&&(d.value=[...d.value.slice(0,T),...d.value.slice(T+1)])}function B(k){const T=d.value.findIndex(V=>V.id===k.id);T>-1&&(d.value=[...d.value.slice(0,T),...d.value.slice(T+1)])}function E(k){const T=k[0].__fv_index__,V=d.value.findIndex(I=>I.id===k[0].id),H=d.value.find(I=>I.id===k[0].id);d.value.splice(V,1),d.value.splice(T,0,H)}const N=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(k,T)=>k.data+` [${T.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return r.onMounted(()=>{M()}),()=>r.createVNode(Bi,{"button-behavior":"Modal","modal-options":g,modelValue:m.value,"onUpdate:modelValue":k=>m.value=k,editable:!1,beforeOpen:b},{default:()=>[r.createVNode("div",{class:"f-utils-absolute-all"},[r.createVNode(eo,{selections:d.value,"data-source":c.value,rowOption:y,class:"mx-2",columns:N,displayType:"Tree",onRemoveItem:B,onSelectItem:S,onUnSelectItem:P,onActiveChange:E,checkBeforeRemoveItem:p},{text:k=>r.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[k.data.name.data,r.createTextVNode(" ["),k.data.bindingField.data,r.createTextVNode("]")])})])]})}}),no={$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:"超链接事件"}},io={$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"]},xt={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:""}},oo=ze.createPropsResolver(xt,no,$t,zt),ro=ze.createPropsResolver(xt,io,$t,zt);function lo(t){const{formSchemaUtils:e,formStateMachineUtils:n}=t;function i(f,u=""){return{path:u+f.code,field:f.id,fullPath:f.code}}function o(f,u=""){return e.getViewModelById(f).states.map(d=>i(d,u))}function l(f){const u=e.getRootViewModelId(),m=o(f);if(f===u)return m;const d=o(u,"root-component.");return[...m,...d]}function a(f){return f.binding&&f.binding.path||f.id||""}function s(){return n&&n.getRenderStates()||[]}return{getVariables:l,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,n)=>({convertFrom:(i,o,l,a)=>{const s=l.getExpressionRuleValue(e,n||o);return s&&s.value||""},convertTo:(i,o,l,a,s)=>{var f;if(o==="dataPicking"&&(l!=null&&l.target)){const u=`${l.target}_dataPicking`;((f=l.rules)==null?void 0:f.some(d=>d.id===u&&d.value))?i.dictPickingExpressionId=u: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 s;const l=this.createTreeNode(o,n);let a=[];(s=o.type)!=null&&s.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 f,u;const l=this.createTreeNode(o,n);l.type="entity";const a=this.buildEntityFieldsTreeData((f=o.type)==null?void 0:f.fields,[...n,o.label]),s=this.buildChildEntityTreeData((u=o.type)==null?void 0:u.entities,[...n,o.label]);s!=null&&s.length&&(a==null||a.push(...s)),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(),s={message:["validate","required","dataPicking"].includes(n)&&l?l.message:"",...a};return l.messageType!=null&&(s.messageType=l.messageType),s}buildRule(e,n,i,o){const{expression:l,message:a,messageType:s}=n,f={id:`${e}_${i}`,type:i,value:l};return(i==="validate"||i==="dataPicking"||i==="required")&&(f.message=a),i==="dataPicking"&&(f.messageType=s),i==="validate"&&o&&(f.elementId=o),f}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 f=this.getExpressionData().find(m=>m.targetType===n&&m.target===l);const u=m=>m.value.trim()==="";if(f){const m=f.rules.find(d=>d.id===a.id);if(m)u(a)?f.rules=f.rules.filter(d=>d.id!==a.id):(Object.assign(m,a),o==="validate"&&e.type==="form-group"&&(m.elementId=e.id));else{if(u(a))return null;f.rules=f.rules||[],f.rules.push(a)}}else{if(u(a))return null;f={target:`${l}`,rules:[a],targetType:n}}return f}getExpressionEditorOptions(e,n,i,o){return i.reduce((l,a)=>{var f,u;const s=n==="Field"?(f=e==null?void 0:e.binding)==null?void 0:f.field:e.id;return l[a]={hide:n==="Field"?!!((u=e==null?void 0:e.binding)!=null&&u.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,n),onSubmitModal:m=>{const d=this.updateExpression(e,n,m,a);if(o){const c=this.buildRule(s,m,a);o(c)}return d}}},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 Zt{constructor(e,n){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=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:A.DgControl[e.type]&&A.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,s){if(a){switch(a&&a.propertyID){case"class":case"style":{A.canvasChanged.value++;break}}i&&i(a,e,s)}}}}getPropertyEditorParams(e,n=[],i="visible",o={},l={},a=""){const{getVariables:s,getControlName:f,getStateMachines:u}=lo(this.designerHostService),m=this.getRealTargetType(e),d=n&&n.length>0?n:["Const","Variable","StateMachine","Expression"],c={type:"property-editor",propertyTypes:d};return d.map(h=>{switch(h){case"Const":Object.assign(c,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":c.expressionConfig=this.getExpressionOptions(e,m,a||i);break;case"StateMachine":c.stateMachines=u();break;case"Variable":Object.assign(c,{controlName:f(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),parentComponentId:this.componentId==="root-component"?"":"root-component",onBeforeOpenVariables:p=>{p.value=s(this.viewModelId)}},l),this.designerContext.designerMode==="PC_RTC"&&(c.newVariablePrefix="ext_"+c.newVariablePrefix);break}}),c}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 f in i)a[f]=Object.assign(a[f]||{},i[f]);const s=this;return{...l,properties:{...a},setPropertyRelates(f,u){if(f){switch(f.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(e,f);break}o&&o(f,u)}}}}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=Re.cloneDeep(i.contents[o]);i.contents.splice(o,1),i.contents.splice(o,0,l),A.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:s,targetType:f,expressionType:u,value:m,message:d}=a,c=this.formSchemaUtils.getModule();c.expressions=c.expressions||[];const{expressions:h}=c;let p=h.find(w=>w.target===s);p||(p={target:s,rules:[],targetType:f},h.push(p));const y=p.rules.find(w=>w.type===u);if(y)y.value=m,y.message=d;else{const w={id:l,type:u,value:m,message:d};p.rules.push(w)}delete n.expressionInfo}clearExpression(e,n){const i=e.propertyValue;if(i&&i.type==="Expression")return;const l=e.propertyID,a=this.formSchemaUtils.getExpressions(),s=n.binding?n.binding.field:n.id,f=a.find(u=>u.target===s);!f||!f.rules||(f.rules=f.rules.filter(u=>u.type!==l))}getExpressionOptions(e,n,i){return new Xt(this.formSchemaUtils).getExpressionOptions(e,n,i)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const 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 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 ao(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 so(t){var e;return"请输入正确的"+((e=Jt.find(n=>n.key===t))==null?void 0:e.value)}const co={convertTo:(t,e,n,i)=>{t.editor.formatValidation||(t.editor.formatValidation={type:"none"}),t.editor.formatValidation.type=n,t.editor.formatValidation.expression=ao(n),t.editor.formatValidation.message=so(n)},convertFrom:(t,e,n)=>t.editor.formatValidation?e==="type"?t.editor.formatValidation[e]||"none":t.editor.formatValidation[e]:"none"},Qt={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 uo extends He.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:Jt},refreshPanelAfterChanged:!0,$converter:co,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:Qt,parentPropertyID:"formatValidation"}),((a=e.editor.formatValidation)==null?void 0:a.type)==="custom"&&(n.properties.expression={title:"匹配正则",type:"string",description:"匹配正则",$converter:Qt,parentPropertyID:"formatValidation"}),n}}const dt=class dt{static getEditorTypesByMDataType(e,n=!1,i=""){if(n)return[{key:A.DgControl["language-textbox"].type,value:A.DgControl["language-textbox"].name}];let o=dt.fieldControlTypeMapping[e];if(i==="data-grid-column"&&(o!=null&&o.length)){const l=[A.DgControl["check-group"].type,A.DgControl["radio-group"].type,A.DgControl.image.type];o=o.filter(a=>!l.includes(a.key))}return o}static getAllInputTypes(){const e=[];for(const n in dt.fieldControlTypeMapping)dt.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===A.DgControl["data-grid-column"].type||e.type===A.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===A.DgControl["input-group"].type||i===A.DgControl.textarea.type||i===A.DgControl["number-spinner"].type)&&o.push({domField:"editor.maxLength",schemaField:"type.length"}),i===A.DgControl["number-spinner"].type&&o.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===A.DgControl["data-grid-column"].type||e.type===A.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.precision",schemaField:"type.precision"}),(i===A.DgControl["combo-list"].type||i===A.DgControl["radio-group"].type)&&o.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===A.DgControl["data-grid-column"].type||e.type===A.DgControl["tree-grid-column"].type)&&o.push({domField:"formatter.data",schemaField:"type.enumValues"}),i===A.DgControl["date-picker"].type&&(o.push({domField:"editor.displayFormat",schemaField:"editor.format"}),o.push({domField:"editor.fieldType",schemaField:"type.name"})),i===A.DgControl["number-spinner"].type&&(o.push({domField:"editor.max",schemaField:"editor.maxValue"}),o.push({domField:"editor.min",schemaField:"editor.minValue"})),i===A.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===A.DgControl["data-grid-column"].type||e.type===A.DgControl["tree-grid-column"].type)&&o.push({domField:"field",schemaField:"bindingPath"}),o}};ie(dt,"fieldControlTypeMapping",{String:[{key:A.DgControl["input-group"].type,value:A.DgControl["input-group"].name},{key:A.DgControl.lookup.type,value:A.DgControl.lookup.name},{key:A.DgControl.image.type,value:A.DgControl.image.name},{key:A.DgControl["date-picker"].type,value:A.DgControl["date-picker"].name},{key:A.DgControl.switch.type,value:A.DgControl.switch.name},{key:A.DgControl["check-box"].type,value:A.DgControl["check-box"].name},{key:A.DgControl["check-group"].type,value:A.DgControl["check-group"].name},{key:A.DgControl["radio-group"].type,value:A.DgControl["radio-group"].name},{key:A.DgControl["combo-list"].type,value:A.DgControl["combo-list"].name},{key:A.DgControl.textarea.type,value:A.DgControl.textarea.name},{key:A.DgControl["time-picker"].type,value:A.DgControl["time-picker"].name}],Text:[{key:A.DgControl.textarea.type,value:A.DgControl.textarea.name},{key:A.DgControl.lookup.type,value:A.DgControl.lookup.name},{key:A.DgControl.image.type,value:A.DgControl.image.name},{key:A.DgControl["rich-text-editor"].type,value:A.DgControl["rich-text-editor"].name}],Decimal:[{key:A.DgControl["number-spinner"].type,value:A.DgControl["number-spinner"].name}],Integer:[{key:A.DgControl["number-spinner"].type,value:A.DgControl["number-spinner"].name}],Number:[{key:A.DgControl["number-spinner"].type,value:A.DgControl["number-spinner"].name},{key:A.DgControl.switch.type,value:A.DgControl.switch.name},{key:A.DgControl["check-box"].type,value:A.DgControl["check-box"].name}],BigNumber:[{key:A.DgControl["number-spinner"].type,value:A.DgControl["number-spinner"].name}],Date:[{key:A.DgControl["date-picker"].type,value:A.DgControl["date-picker"].name}],DateTime:[{key:A.DgControl["date-picker"].type,value:A.DgControl["date-picker"].name}],Boolean:[{key:A.DgControl.switch.type,value:A.DgControl.switch.name},{key:A.DgControl["check-box"].type,value:A.DgControl["check-box"].name}],Enum:[{key:A.DgControl["combo-list"].type,value:A.DgControl["combo-list"].name},{key:A.DgControl["radio-group"].type,value:A.DgControl["radio-group"].name}],Object:[{key:A.DgControl.lookup.type,value:A.DgControl.lookup.name},{key:A.DgControl["combo-list"].type,value:A.DgControl["combo-list"].name},{key:A.DgControl["radio-group"].type,value:A.DgControl["radio-group"].name}]});let pt=dt;var st=(t=>(t.Form="Form",t.Variable="Variable",t))(st||{});class fo{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 mo(t){let e,n;const i=new Map;let o=[];function l(m,d){const h=m.split(" ").filter(x=>x.startsWith("col-"));if(h.length===0){d.isSupportedClass=!1;return}let p=h.find(x=>/^col-([1-9]|10|11|12)$/.test(x)),y=h.find(x=>/^col-md-([1-9]|10|11|12)$/.test(x)),w=h.find(x=>/^col-xl-([1-9]|10|11|12)$/.test(x)),F=h.find(x=>/^col-el-([1-9]|10|11|12)$/.test(x));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),w=w||"col-xl-"+d.columnInMD,d.columnInLG=parseInt(w.replace("col-xl-",""),10),d.displayWidthInLG=d.columnInLG/3,[1,2,3,4].includes(d.displayWidthInLG)||(d.isSupportedClass=!1),F=F||"col-el-"+d.columnInLG,d.columnInEL=parseInt(F.replace("col-el-",""),10),d.displayWidthInEL=d.columnInEL/2,[1,2,3,4,5,6].includes(d.displayWidthInEL)||(d.isSupportedClass=!1)}function a(m,d,c,h=!1){let p=!1;m.contents.forEach(y=>{if(y.type==="fieldset"){c+=1,a(y,d,c,!0),p=!0;return}p&&(c+=1,p=!1);const w=y.appearance&&y.appearance.class,F=new fo;w?l(w,F):F.isSupportedClass=!1,F.label=y.label||y.id,F.id=y.id,F.group=c,h&&(F.fieldSetId=m.id),n===y.id&&(e=c),i.set(y.id,y),d.push(F)})}function s(m){const d=t.getComponentById(m);if(!d||!d.componentType||!d.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const c=t.selectNode(d,h=>h.type===A.DgControl["response-form"].type);return!c||!c.contents||c.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:c}}function f(m,d){d=d||m.id;const{result:c,message:h,formNode:p}=s(d);if(!c)return{result:c,message:h};n=m.id,o=[],i.clear();const y=p.contents[0].type===A.DgControl.fieldset.type?0:1;a(p,o,y);const w=o.find(x=>!x.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:w?"customize":"standard"},importData:o}}function u(m,d){d=d;const{result:c,formNode:h}=s(d);if(!c)return"";const p=[];return m.forEach(y=>{var x;const w=i.get(y.id),F=w.appearance&&w.appearance.class;if(F){const _=F.split(" ").filter(P=>!P.startsWith("col-")),v="col-"+y.columnInSM,C="col-md-"+y.columnInMD,g="col-xl-"+y.columnInLG,b="col-el-"+y.columnInEL,S=[v,C,g,b].concat(_);w.appearance.class=S.join(" ")}if(y.fieldSetId){const M=h.contents.find(v=>v.id===y.fieldSetId),_=p.find(v=>v.id===y.fieldSetId);_?(x=_.contents)==null||x.push(w):(p.push(M),M.contents=[w])}else p.push(w)}),h.contents=p,h.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:f,changeFormControlsByResponseLayoutConfig:u,getResonseFormLayoutConfig:a}}class yt extends Zt{constructor(n,i){super(n,i);ie(this,"responseLayoutEditorFunction");ie(this,"bindingVarible");ie(this,"numberEditorOptions",{type:"number-spinner",useThousands:!1,keyboard:!1,showButton:!1});this.responseLayoutEditorFunction=mo(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 u;const l=this;this.setDesignViewModelField(n);const{canChangeControlType:a,editorTypeList:s}=this.getAvailableEditorType(n),f={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:((u=n.editor)==null?void 0:u.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(m,d,c){if(m)switch(m&&m.propertyID){case"type":{l.changeControlType(n,m,i);break}case"label":{m.needRefreshControlTree=!0;break}case"binding":{l.changeBindingField(n,m,c);break}}}};return o.toLocaleLowerCase()!=="card"&&delete f.properties.showLabelType,f}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!==D.FormSchemaEntityField$Type.SimpleField)return!1;return!0}getAvailableEditorType(n){var l;const i=this.checkCanChangeControlType(n,this.viewModelId);if(!i)return{canChangeControlType:!1,editorTypeList:[{key:n.editor.type,value:((l=A.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===D.FormSchemaEntityField$Type.SimpleField?o=pt.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage):this.bindingVarible&&(o=pt.getEditorTypesByMDataType(this.bindingVarible.type,this.designViewModelField.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),A.canvasChanged.value++;break;case"style":{A.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 s=a.contents.findIndex(m=>m.id===n.id);if(s===-1)return;const f=a.contents[s];let u;if(this.designViewModelField){const c=this.formSchemaUtils.getViewModelById(this.viewModelId).fields.find(p=>p.id===this.designViewModelField.id).fieldSchema||{};c.editor||(c.editor={}),c.editor.$type=l,this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,c,!1),u=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)}u||(u=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(u,{id:f.id,appearance:f.appearance,size:f.size,label:f.label,binding:f.binding}),Object.prototype.hasOwnProperty.call(f,"visible")&&Object.assign(u,{visible:f.visible}),f.editor&&["readonly","required","placeholder"].map(m=>{Object.prototype.hasOwnProperty.call(f.editor,m)&&(u.editor[m]=f.editor[m])}),o!=null&&o.updateContextSchema?o.updateContextSchema(u):(o.schema=Object.assign(f,u),Object.assign(n,u)),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(m=>m.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(m=>m.classList.remove("dgComponentFocused")),A.canvasChanged.value++,r.nextTick(()=>{this.getFormDesignerInstance().reloadPropertyPanel()})}getComponentConfig(n,i={},o={},l){var c,h;const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter",parentPropertyID:"editor"},i),s=(c=n.binding)!=null&&c.field?[]:["Const","Variable","StateMachine"],f=this.getPropertyEditorParams(n,s,"readonly"),u=this.getPropertyEditorParams(n,s,"required"),m={readonly:{description:"",title:"只读",editor:f},required:{description:"",title:"必填",type:"boolean",editor:u,visible:!!((h=n.binding)!=null&&h.field)},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}};for(const p in o)m[p]=Object.assign(m[p]||{},o[p]);const d=this;return{...a,properties:{...m},setPropertyRelates(p,y){if(p){switch(p.propertyID){case"readonly":case"required":d.afterMutilEditorChanged(n,p);break}l&&l.bind(d)(p,n,y)}}}}updateUnifiedLayoutAfterControlChanged(n,i,o){const l=n.split(" ");let a=l.find(d=>/^col-([1-9]|10|11|12)$/.test(d)),s=l.find(d=>/^col-md-([1-9]|10|11|12)$/.test(d)),f=l.find(d=>/^col-xl-([1-9]|10|11|12)$/.test(d)),u=l.find(d=>/^col-el-([1-9]|10|11|12)$/.test(d));a=a||"col-12",s=s||"col-md-"+a.replace("col-",""),f=f||"col-xl-"+s.replace("col-md-",""),u=u||"col-el-"+f.replace("col-xl-","");const m={id:i,columnInSM:parseInt(a.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(f.replace("col-xl-",""),10),columnInEL:parseInt(u.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,m)}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 p=l.find(y=>y.id===i.id);Object.assign(p||{},i)}const a=l.map(p=>p.columnInSM),s=l.map(p=>p.columnInMD),f=l.map(p=>p.columnInLG),u=l.map(p=>p.columnInEL),m=this.checkIsUniqueColumn(a)?a[0]:null,d=this.checkIsUniqueColumn(s)?s[0]:null,c=this.checkIsUniqueColumn(f)?f[0]:null,h=this.checkIsUniqueColumn(u)?u[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:m,uniqueColClassInMD:d,uniqueColClassInLG:c,uniqueColClassInEL:h})}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===D.FormSchemaEntityFieldType$Type.EnumType)}appendFieldValueChangeEvents(n,i){n.binding&&n.binding.type===st.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 st.Form:return n.binding.path||n.type;case st.Variable:return n.binding.fullPath||n.type}return n.type}getEventPropertyConfig(n,i="card",o,l){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(n,s);const f=a.eventsEditorUtils.formProperties(n,a.viewModelId,s);return{title:"事件",hideTitle:!0,properties:a.createBaseEventProperty(f),tabId:"commands",tabName:"交互",setPropertyRelates(d,c){const h=d.propertyValue;delete n[a.viewModelId],h&&(h.setPropertyRelates=this.setPropertyRelates,h.controlInfo={type:a.getControlMethodType(n),name:n.title},a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,h.events,h)),l&&l(d,c,h);const p=a.designViewModelUtils.getDgViewModel(a.viewModelId);p&&a.designViewModelField&&p.changeField(a.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged})}}}getExpressionConfig(n,i,o=["compute","dependency","validate"],l){return new Xt(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 s=i==="trueValue"?"falseValue":"trueValue";n.editor[s]===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 po extends yt{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 ho extends He.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 go extends He.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:((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:((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,s;o.type.name===D.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),o.type.name===D.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:(t,e)=>(t.editor.remote||{})[e],convertTo:(t,e,n)=>{t.editor.remote=t.editor.remote||{},t.editor.remote[e]=n}};class yo extends He.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 l,a;const n=this;let i="";if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const s=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=s==null?void 0:s.schemaField)!=null&&a.type&&(i=s.schemaField.type.$type)}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},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...n.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,f)=>{if(!s||!f.editor)return;const u=this;switch(s.propertyID){case"dataSourceType":{s.propertyValue==="static"?(f.editor.valueField="value",f.editor.textField="name",f.editor.remote=null):s.propertyValue==="dynamic"&&(f.editor.remote={method:"GET"},f.editor.valueField="value",f.editor.textField="name");break}case"data":{!u.checkEnumDataReadonly(f)&&f.formatter&&(f.formatter.data=[...s.propertyValue]);break}case"viewType":s.propertyValue==="tag"&&(f.editor.editable=!1)}})}getGridFieldEdtiorProperties(e,n){var a,s,f,u,m,d;const i=this;let o="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const c=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=c==null?void 0:c.schemaField)!=null&&s.type&&(o=c.schemaField.type.$type)}return i.getComponentConfig(e,{type:"combo-list"},{enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!((f=e.editor)!=null&&f.dataSourceType)||((u=e.editor)==null?void 0:u.dataSourceType)==="static",...i.getItemCollectionEditor(e,(m=e.editor)==null?void 0:m.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)},(c,h)=>{if(!c||!h.editor)return;const p=this;switch(c.propertyID){case"dataSourceType":{c.propertyValue==="static"?(h.editor.valueField="value",h.editor.textField="name",h.editor.remote=null):c.propertyValue==="dynamic"&&(h.editor.remote={method:"GET"},h.editor.valueField="value",h.editor.textField="name");break}case"data":{!p.checkEnumDataReadonly(h)&&h.formatter&&(h.formatter.data=[...c.propertyValue]);break}}})}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)===D.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 s=l.eventsEditorUtils.formProperties(e,l.viewModelId,a);return{title:"事件",hideTitle:!0,properties:l.createBaseEventProperty(s),tabId:"commands",tabName:"交互",setPropertyRelates(m,d){const c=m.propertyValue;delete e[l.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(e,l.viewModelId,c.events,c)),o&&o(m,d,c);const h=l.designViewModelUtils.getDgViewModel(l.viewModelId);h&&l.designViewModelField&&h.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 vo extends He.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 bo(){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 Co=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],wo=[{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"}],So=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],xo=[{id:"yyyy",name:"yyyy"}],{timeFormats:Mo,yMdFormats:Fo,yMFormats:en,mdFormats:To,yFormats:Mt}=bo();class _o extends He.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}=D.useDateFormat();if(i){const s=l(i,"yyyy-MM-dd HH:mm:ss");s&&(e.editor.maxDate=a(s,o?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd"))}if(n){const s=l(n,"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,f,u,m,d,c,h,p,y,w,F,x,M,_,v;const n=this.getDateFormatOptions(e==null?void 0:e.editor),i=this.getValueFormatOptions(e==null?void 0:e.editor),o=(f=(s=this.designViewModelField)==null?void 0:s.type)==null?void 0:f.name,l=this.getDatePickerModes(o),a=this.getExtremeDateFormat(e);return(u=e==null?void 0:e.editor)!=null&&u.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:((m=e==null?void 0:e.editor)==null?void 0:m.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:((c=e==null?void 0:e.editor)==null?void 0:c.fieldType)==="Date",refreshPanelAfterChanged:!0,visible:((h=e==null?void 0:e.editor)==null?void 0:h.selectMode)==="day"},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:n}},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:((w=e==null?void 0:e.editor)==null?void 0:w.maxDate)||"9999-12-31 23:59:59",showTime:(F=e==null?void 0:e.editor)==null?void 0:F.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,selectMode:((x=e==null?void 0:e.editor)==null?void 0:x.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:(_=e==null?void 0:e.editor)==null?void 0:_.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,s){const f=a.propertyValue;delete s[n.viewModelId],f&&n.eventsEditorUtils.saveRelatedParameters(s,n.viewModelId,f.events,f);const u=n.designViewModelUtils.getDgViewModel(n.viewModelId);u&&n.designViewModelField&&u.changeField(n.designViewModelField.id,{valueChanging:s.fieldValueChanging,valueChanged:s.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(...Mo),o.push(...Fo,...en,...Mt,...To),i=o;break}case"month":{i=[...en,...Mt];break}case"year":{i=[...Mt];break}}return i}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let i=[...Co];return e.showTime&&(i=[...wo]),i}case"month":return So;case"year":return xo;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===D.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 ko=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Vo="";function vt(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 be={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"?Re.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 Eo(t){let e="form_group_"+Date.now();return t&&(e=t.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Io(t,e){const{enablePager:n,pageSize:i,pageList:o}=e;t.pagination=t.pagination||{},Object.assign(t.pagination,{enable:n,sizeLimits:vt(o).map(l=>l.value),size:i,showLimits:!0,showGoto:!1,mode:"server"})}const tn={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:s,code:f}=o;i.dataSource||(i.dataSource={}),i.dataSource.displayName=`${l}(${f})`,i.helpId=a;const{displayType:u,idField:m,textField:d}=s;i.displayType=u,i.dataSource.idField=m,i.textField=d,i.dataSource.type="ViewObject",i.enableEqualSearch=!1;const{pageInfo:c}=s.dataSource;Io(i,c);const{treeInfo:h}=u.toUpperCase()==="NAVTREELIST"?s.navigation:s.dataSource;if(h){const{onlySelectLeaf:p,loadDataType:y}=h;i.loadTreeDataType="default",i.onlySelectLeaf=p??!1}if(i.dataSource.uri||(i.dataSource.uri=Eo(t.id)),i.dialog){const{width:p}=i.dialog;u&&u.toUpperCase().indexOf("NAV")>-1&&(!p||p<520)&&(i.dialog.width=960)}}}},Po={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}}},No={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}}},Bo={convertFrom:(t,e)=>t.editor.displayType?t.editor.displayType.toUpperCase():"LIST",convertTo:(t,e,n)=>{t.editor.displayType=n}},Ue={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]||Vo;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}},Oo={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 vt(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(s=>s.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}},nn=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],jo=Symbol("schema_repository_token");function Ro(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:jo},dataSourceConverter:tn,defaultConverter:be,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:gt.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:gt.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:gt.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 Ao(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:be,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:Ue},width:{description:"窗口宽度,单位:px,最小值:300px",title:"宽度",type:"number",editor:{...n,min:o()?520:300,needValid:!0},$converter:Ue},height:{description:"窗口高度,单位:px,最小值:200px",title:"高度",type:"number",editor:{...n,min:200,needValid:!0},$converter:Ue},showNavigation:{description:"显示导航栏",$converter:be,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:Ue},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:t.openType!=="Popup",$converter:Ue},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:Ue},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:t.openType!=="Popup",$converter:Ue},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:t.openType!=="Popup",$converter:Ue},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:t.openType!=="Popup",$converter:Ue}}}function Ho(t,e=!0){var l,a,s,f;const n=!((l=t.pagination)!=null&&l.enable),i=()=>t.displayType?t.displayType.toUpperCase():"",o=(u,m)=>{const d=i()!=="TREELIST"||u.treeToList;return m&&d?u.pagination&&u.pagination[m]:d};return{hide:i()==="TREELIST"||!t.helpId||n,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Oo,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:vt((a=t.pagination)==null?void 0:a.sizeLimits),beforeSubmit:({notifyService:u,data:m})=>!m||!m.length?(u==null||u.warning({message:"每页显示条数不能为空!"}),!1):new Set(m.map(c=>parseInt(c.value,10))).size===m.length?!0:(u==null||u.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:o(t),editor:{type:"combo-list",enableClear:!1,editable:!1,data:vt((s=t.pagination)==null?void 0:s.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(f=t.pagination)==null?void 0:f.size}}}}}class Lo extends He.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(n,i){const o=["validate"];return n.type==="form-group"&&o.push("dataPicking"),new He.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(n,"Field",o)}getPropertyConfig(n,i,o="Card"){var F;const l=(F=n.binding)!=null&&F.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),s=this.getBehaviorConfig(n),f=this.getAppearanceProperties(n,i),u=this.getLookupConfig(n),m=this.getEventPropConfig(n),d=this.getDialogPropertyConfig(n),c=this.getPageConfig(n.editor),h=this.getTreePropConfig(n.editor),p=this.getSearchConfig(n),y=this.getExpressionConfig(n,"Field"),w={basic:a,appearance:f,behavior:s,lookup:u,treeConfig:h,dialog:d,pager:c,searchConfig:p,expressions:y};return n.type==="form-group"&&(w.eventsEditor=m),{type:"object",categories:w}}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 s;const n=((s=this.designViewModelField)==null?void 0:s.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(f=>f.data.code===i[0]);if(!l)return!1;const a=[l,...this.flattenTreeNodes(l.children)];return!i.reduce((f,u,m)=>[...f,m?`${f[m-1]}.${u}`:u],[]).some(f=>{var u,m,d;return((d=(m=(u=a.find(c=>c.data.path===f))==null?void 0:u.data)==null?void 0:m.type)==null?void 0:d.$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:be,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:be,title:"允许查询所有列",type:"boolean",visible:n.editor.openType!=="Popup"&&n.editor.enableSearchBar==null?!0:!!n.editor.enableSearchBar},enableEqualSearch:{$converter:be,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){const i=n.editor,o=()=>{const u=this.formSchemaUtils.getFormSchema().module.entity[0].id,m=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:i,formBasicInfo:m,viewModelId:u,dataSourceId:i.helpId}},{dataSourceEditor:l,idFieldEditor:a,textFieldEditor:s,mappingFieldsEditor:f}=Ro(i,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(u,m)=>{if(u)switch(u.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(m,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},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:be},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:be,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:be,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(i.multiSelect&&i.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:be,editor:this.freeInputEditor,visible:!!i.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:be},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:u=>u&&u.length?u.map(m=>`${m.name}(${m.code})`).join(","):"",validateFunction:async u=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(u,n),onSubmitModal:u=>{if(u){delete i.mappingFields;const m=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(m.relativePath,u[0].data).then(d=>JSON.parse(d==null?void 0:d.metadata.content))}}},$converter:tn},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:be,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:gt.FieldSelectorRepositoryToken,beforeOpen:async({repository:u,notifyService:m})=>{var w;if(!(i==null?void 0:i.helpId))return m==null||m.warning({message:"请先配置数据源!"}),!1;const c=o(),p=new He.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let y={};if(u){const F=await u.getData(c),x=await u.getLookupConditions(c);y={fieldList:F,conditionList:x}}return(w=p.variables)!=null&&w.forms&&(p.variables.forms.items=p.variables.forms.items.filter(F=>F.category==="remote")),{...y,...p,isServerSide:!0}},onSubmitModal:async({loadingService:u,repository:m,conditions:d,originalConditions:c,FMessageBoxService:h})=>{if(m)try{const p=o(),y=await m.getLookupConditions(p)||[];return JSON.stringify(y)!==JSON.stringify(c.value)?(u==null||u.clearAll(),h.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{d.value=y,c.value=JSON.parse(JSON.stringify(d.value))},()=>{}),!1):(JSON.stringify(d.value)===JSON.stringify(c.value)||await m.saveFilterCondition(d.value,p,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return h==null||h.error("保存失败",""),!1}finally{u==null||u.clearAll()}}},visible:!!i.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Bo,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:Po},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:No,editor:s},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:be,editor:{...f}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:be,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:be,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:be,title:"显示已选记录",type:"boolean",visible:!!i.multiSelect&&i.openType!=="Popup"},separator:{description:"多选分隔符",$converter:be,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:be,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:be,title:"启用收藏夹",type:"boolean",visible:i.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:be,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=Ao(n.editor);return i.openType.$converter=be,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:Ue,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 Ho(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:be,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:be,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(n)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:be,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:be,title:"构造完整树",type:"boolean",visible:this.showLoadType(n)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:be,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(n)},enableCascade:{description:"启用级联选择",$converter:be,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(n)&&!!n.multiSelect&&n.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:be,title:"显示级联状态",type:"boolean",visible:!!n.enableCascade&&this.isTree(n)},cascadeValue:{description:"缺省级联选择模式",$converter:be,title:"缺省级联选择模式",type:"string",visible:!!n.enableCascade&&this.isTree(n),editor:{...this.comboListEditor,data:ko,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:be,title:"默认展开层级",type:"number",visible:this.showLoadType(n),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(n){const i=this;let o=nn;n.editor.openType==="Popup"&&(o=o.filter(s=>s.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(s,f){const u=s.propertyValue;delete f[i.viewModelId],u&&i.eventsEditorUtils.saveRelatedParameters(f,i.viewModelId,u.events,u);const m=i.designViewModelUtils.getDgViewModel(i.viewModelId);m&&i.designViewModelField&&m.changeField(i.designViewModelField.id,{valueChanging:f.fieldValueChanging,valueChanged:f.fieldValueChanged})}}}async checkSameBESource(n,i){var o,l,a,s,f;if(n&&((o=i==null?void 0:i.editor)!=null&&o.helpId)&&!i.isRtcControl){if(n.data.id===i.editor.helpId)return!0;const u=await this.metadataService.getPickMetadata("",n.data).then(y=>{var w;if((w=y==null?void 0:y.metadata)!=null&&w.content)return JSON.parse(y.metadata.content)}),m=await this.metadataService.getPickMetadata("",{id:i.editor.helpId}).then(y=>{var w;if((w=y==null?void 0:y.metadata)!=null&&w.content)return JSON.parse(y.metadata.content)}),d=(l=u==null?void 0:u.dataSource)==null?void 0:l.sourceType,c=(a=m.dataSource)==null?void 0:a.sourceType,h=(s=u==null?void 0:u.dataSource)==null?void 0:s.sourceId,p=(f=m==null?void 0:m.dataSource)==null?void 0:f.sourceId;if(d==="BE"&&c==="BE"&&h!==p)return new St.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class $o extends yt{constructor(e,n){super(e,n)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class Wo extends He.InputBaseProperty{constructor(e,n){super(e,n)}getEditorProperties(e){var l,a,s,f,u,m,d,c;let n,i=!1;if(((l=e==null?void 0:e.binding)==null?void 0:l.type)==="Form"){const h=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=h==null?void 0:h.schemaField)!=null&&a.type&&(n=h.schemaField.type.precision,i=h.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:(s=e==null?void 0:e.editor)==null?void 0:s.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(f=e==null?void 0:e.editor)==null?void 0:f.max,precision:(u=e==null?void 0:e.editor)==null?void 0:u.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((m=e==null?void 0:e.editor)==null?void 0:m.min)===void 0||(d=e==null?void 0:e.editor)==null?void 0:d.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision,bigNumber:i,needValid:!0},refreshPanelAfterChanged:!0},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},bigNumber:{description:"",title:"支持大数字",type:"boolean",readonly:!0,visible:i},showZero:{description:"",title:"显示0值",type:"boolean"},nullable:{description:"允许设置为 null",title:"允许为空",type:"boolean"},useThousands:{description:"",title:"启用千分位",type:"boolean"},showButton:{description:"",title:"显示加减按钮",type:"boolean"}},function(h,p,y){if(h)switch(h.propertyID){case"precision":{p.formatter&&(p.formatter.precision=h.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)===D.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=o.type.precision)}}class zo extends yt{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)===D.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=o.type.enumValues||[])}}class qo extends He.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:((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:((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,s;o.type.name===D.FormSchemaEntityFieldTypeName.String&&(a="true",s="false"),o.type.name===D.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 yt{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 Uo extends He.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 Do extends Zt{constructor(n,i){super(n,i);ie(this,"dataGridProps",null);ie(this,"notifyService",new St.FNotifyService)}getPropertyConfig(n,i){var s,f,u;this.dataGridProps=i,this.getBasicPropConfig(n),this.getAppearanceProperties(n,i);const l={formatterEnumData:{description:"",title:"枚举数据",type:"array",visible:!!(((s=n.formatter)==null?void 0:s.type)==="enum"&&((f=n.editor)==null?void 0:f.type)!=="combo-list"),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(n,"value","name"),refreshPanelAfterChanged:!0}},a=(m,d)=>{if(m)switch(m.propertyID){case"formatterEnumData":{n.formatter&&(n.formatter.data=[...m.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"gridFieldEditor",l,a),this.getFieldEditorProperties(n,i),this.propertyConfig.categories.templateFormat=this.getColumnTemplate(n),((u=n.formatter)==null?void 0:u.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(n)),this.getEventPropConfig(n),this.propertyConfig}getColumnTemplate(n){const i=n.columnTemplateType==="custom"||n.columnTemplateType==="hyperlink"||!n.columnTemplateType&&n.columnTemplate,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,s){var f;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}}(f=o.getFormDesignerInstance())==null||f.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===D.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(n){var f,u;const i=n.columnTemplateType==="hyperlink"||!n.columnTemplateType&&n.columnTemplate&&n.onClickLinkCommand;let o=[];((f=n.editor)==null?void 0:f.type)==="combo-list"&&o.push({label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}),i&&o.push({label:"onClickLinkCommand",name:"超链接事件"}),((u=n==null?void 0:n.editor)==null?void 0:u.type)==="lookup"&&(o=[...o,...nn],n.editor.openType==="Popup"&&(o=o.filter(m=>m.label!=="beforeSelectData")));const l=this,a=l.eventsEditorUtils.formProperties(n,l.viewModelId,o),s=l.createBaseEventProperty(a);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:s,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(m,d){var h;const c=m.propertyValue;delete n[l.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,l.eventsEditorUtils.saveRelatedParameters(n,l.viewModelId,c.events,c)),n.remoteSort=!!n.columnSorted,n.onClickLinkCommand&&!n.onClickLinkCommand.includes("communication:")&&(n.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
21
- @click="(ctx)=>viewModel.current.${n.onClickLinkCommand}({id: rowData.id,context: ctx})">
22
- {{rowData.${n.field}}}
23
- </span>`,(h=l.getFormDesignerInstance())==null||h.reloadPropertyPanel()),n.editor.beforeOpen!==n.beforeOpen&&(n.editor.beforeOpen=n.beforeOpen),n.editor.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;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"},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}},setPropertyRelates(a,s,f){if(a)switch(a&&a.propertyID){case"width":{s.actualWidth=a.propertyValue;break}case"summaryType":{const{groupFields:u}=i.summary;!u.includes(s.field)&&a.propertyValue==="sum"&&u.push(s.field),u.includes(s.field)&&a.propertyValue==="none"&&u.splice(u.indexOf(s.field),1);break}case"columnTemplate":{a.propertyValue;break}case"enableGroup":a.propertyValue?i.group.groupFields=[s.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,s,f,u,m,d,c,h;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:((s=n.formatter)==null?void 0:s.type)==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:((f=n.formatter)==null?void 0:f.type)==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:((u=n.formatter)==null?void 0:u.type)==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:((m=n.formatter)==null?void 0:m.type)==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:((d=n.formatter)==null?void 0:d.type)==="number",refreshPanelAfterChanged:!0,description:"千分位"},dateFormat:{title:"日期格式",$converter:"/converter/change-formatter.converter",visible:((c=n.formatter)==null?void 0:c.type)==="date"||((h=n.formatter)==null?void 0:h.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,w){var F;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=[],(F=y.formatterEnumData)!=null&&F.length&&(y.formatterEnumData=[])));break}}}}}getFieldEditorProp(n,i="gridFieldEditor",o=!1){const l=this.formMetadataConverter.getRealEditorType(n.editor.type);let a;switch(l){case"avatar":a=new po(this.componentId,this.designerHostService);break;case"check-group":a=new ho(this.componentId,this.designerHostService);break;case"check-box":a=new go(this.componentId,this.designerHostService);break;case"combo-list":a=new yo(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 Wo(this.componentId,this.designerHostService);break;case"radio-group":a=new zo(this.componentId,this.designerHostService);break;case"switch":a=new qo(this.componentId,this.designerHostService);break;case"textarea":a=new vo(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 uo(this.componentId,this.designerHostService)}this.setDesignViewModelField(n);const s=this,{canChangeControlType:f,editorTypeList:u}=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:u,readonly:!f}}},setPropertyRelates(c,h){if(c)switch(c&&c.propertyID){case"type":{s.changeFieldEditorType(n,c.propertyValue);break}}}};const m=["id","type","class","style","binding","label","responseLayout","visible"],d=a.getGridFieldEdtiorPropConfig(n);Object.keys(d).map(c=>{const h=d[c],p={};if(Object.keys(h.properties).map(y=>{m.findIndex(w=>w===y)===-1&&h.properties[y]!==!1&&(p[y]=h.properties[y])}),Object.keys(p).length!==0){const y=h==null?void 0:h.title,w="gridFieldEditor",F="编辑器",x=h==null?void 0:h.description,M=(h==null?void 0:h.$converter)||"";s.propertyConfig.categories[i+"_"+c]={title:y,hide:Object.prototype.hasOwnProperty.call(h,"hide")?h.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(h,"hideTitle")?h.hideTitle:!1,tabId:h.tabId||w,tabName:h.tabName||F,description:x,$converter:M,parentPropertyID:"editor",propertyData:n,properties:p,setPropertyRelates:h==null?void 0:h.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,d=>d.type===A.DgControl["data-grid"].type||d.type===A.DgControl["tree-grid"].type);if(!a)return;const s=o.fields.find(d=>d.id===this.designViewModelField.id),f=this.controlCreatorUtils.setGridFieldProperty(i,s,null,!0),u=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,m=u.findIndex(d=>d.id===n.id);if(m>-1&&u[m].editor){const d={};["readonly","required","placeholder"].map(c=>{Object.prototype.hasOwnProperty.call(u[m].editor,c)&&(d[c]=u[m].editor[c])}),u[m].editor=Object.assign(f.editor,d)}Object.assign(u[m],{dataType:f.dataType},f.formatter?{formatter:f.formatter}:{}),!f.formatter&&u[m].formatter&&delete u[m].formatter}checkCanChangeControlType(n,i){return!(!n.binding||!this.designViewModelField||this.designViewModelField.$type!==D.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=A.DgControl[n.editor.type])==null?void 0:l.name)||n.editor.type}]};let o=[];return this.designViewModelField&&this.designViewModelField.$type===D.FormSchemaEntityField$Type.SimpleField&&(o=pt.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 Yo(t,e,n){const i=t.schema,o=r.ref(!0),l=r.ref(!0);function a(c){return!1}function s(){return!1}function f(){return!1}function u(){return!0}function m(c){var y,w;const h=new Do(c,e),p=(y=t==null?void 0:t.parent)==null?void 0:y.schema;return p!=null&&p.groupFields&&p!=null&&p.groupFields.includes(i.field)&&(i.enableSummary=!0),h.getPropertyConfig(i,(w=t==null?void 0:t.parent)==null?void 0:w.schema)}function d(){var w,F;if(!e||!t)return;const{formSchemaUtils:c}=e;let h=ft["data-grid"].name;const p=c.getControlBasicInfoMap(),y=p.get((F=(w=t.parent)==null?void 0:w.schema)==null?void 0:F.id);y&&y.parentPathName&&(h=y.parentPathName),p.set(i.id,{showName:i.title,parentPathName:`${h} > ${i.title}`,reliedComponentId:y.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:s,checkCanMoveComponent:f,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:o,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:m,setComponentBasicInfoMap:d}}function Xo(t={}){function e(u,m,d,c){if(typeof d=="number")return c[u].length===d;if(typeof d=="object"){const h=Object.keys(d)[0],p=d[h];if(h==="not")return Number(c[u].length)!==Number(p);if(h==="moreThan")return Number(c[u].length)>=Number(p);if(h==="lessThan")return Number(c[u].length)<=Number(p)}return!1}function n(u,m,d,c){return c[u]&&c[u].propertyValue&&String(c[u].propertyValue.value)===String(d)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((u,m)=>(u.set(m,t[m]),u),i);function o(u,m){const d=u;return typeof m=="number"?[{target:d,operator:"length",param:null,value:Number(m)}]:typeof m=="boolean"?[{target:d,operator:"getProperty",param:u,value:!!m}]:typeof m=="object"?Object.keys(m).map(c=>{if(c==="length")return{target:d,operator:"length",param:null,value:m[c]};const h=c,p=m[c];return{target:d,operator:"getProperty",param:h,value:p}}):[]}function l(u){return Object.keys(u).reduce((d,c)=>{const h=o(c,u[c]);return d.push(...h),d},[])}function a(u,m){if(i.has(u.operator)){const d=i.get(u.operator);return d&&d(u.target,u.param,u.value,m)||!1}return!1}function s(u,m){return l(u).reduce((h,p)=>h&&a(p,m),!0)}function f(u,m){const d=Object.keys(u),c=d.includes("allOf"),h=d.includes("anyOf"),p=c||h,F=(p?u[p?c?"allOf":"anyOf":"allOf"]:[u]).map(M=>s(M,m));return c?!F.includes(!1):F.includes(!0)}return{parseValueSchema:f}}const Zo={convertTo:(t,e,n,i)=>{t.appearance||(t.appearance={}),t.appearance[e]=n},convertFrom:(t,e,n)=>t.appearance?t.appearance[e]:t[e]},Jo={convertFrom:(t,e,n)=>t.buttons&&t.buttons.length?`共 ${t.buttons.length} 项`:"无"},Qo={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]},Ko={convertFrom:(t,e,n)=>{var o;const i=t.editor&&t.editor[e]?t.editor[e]:t[e];return((o=ft[i])==null?void 0:o.name)||i}},er={convertTo:(t,e,n,i)=>{t[e]=t[e]},convertFrom:(t,e,n)=>t.editor?n.getRealEditorType(t.editor.type):""},tr={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"}},nr={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:"增加",type:"link"},{value:"edit",text:"编辑",type:"danger"},{value:"remove",text:"删除",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}return""}},ir={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""}},or={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:""},rr={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}}},lr={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}}},ar={convertTo:(t,e,n,i)=>{t.pagination||(t.pagination={}),t.pagination[e]=n},convertFrom:(t,e,n)=>t.pagination?t.pagination[e]:t[e]},sr={convertTo:(t,e,n,i)=>{t.rowNumber||(t.rowNumber={}),t.rowNumber[e]=n},convertFrom:(t,e,n)=>t.rowNumber?t.rowNumber[e]:t[e]},dr={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]}},cr={convertFrom:(t,e,n)=>t[e]&&t[e].length?`共 ${t[e].length} 项`:""},ur={convertFrom:(t,e)=>t[e]||"",convertTo:(t,e,n)=>{t[e]=n}},fr={convertTo:(t,e,n,i)=>{t.size||(t.size={}),t.size[e]=n},convertFrom:(t,e,n)=>t.size?t.size[e]:t[e]},mr={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}},pr={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)}},hr={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"}},gr={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""}},yr={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">
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:wt,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"]},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:""}},io=Ge.createPropsResolver(St,to,zt,Gt),oo=Ge.createPropsResolver(St,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}}class uo extends Le.InputBaseProperty{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 fo 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 mo 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 po 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 ho 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 go(){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 yo=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],vo=[{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"}],bo=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],Co=[{id:"yyyy",name:"yyyy"}],{timeFormats:wo,yMdFormats:So,yMFormats:en,mdFormats:Mo,yFormats:Mt}=go();class Fo 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(...wo),o.push(...So,...en,...Mt,...Mo),i=o;break}case"month":{i=[...en,...Mt];break}case"year":{i=[...Mt];break}}return i}getValueFormatOptions(e){switch(e.selectMode||"day"){case"day":{let i=[...yo];return e.showTime&&(i=[...vo]),i}case"month":return bo;case"year":return Co;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 To=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],_o="";function ht(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 xo(n){let e="form_group_"+Date.now();return n&&(e=n.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Vo(n,e){const{enablePager:t,pageSize:i,pageList:o}=e;n.pagination=n.pagination||{},Object.assign(n.pagination,{enable:t,sizeLimits:ht(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;Vo(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=xo(n.id)),i.dialog){const{width:p}=i.dialog;m&&m.toUpperCase().indexOf("NAV")>-1&&(!p||p<520)&&(i.dialog.width=960)}}}},Io={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}}},ko={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}}},Eo={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]||_o;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}},Po={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 ht(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:"帮助后事件"}],No=Symbol("schema_repository_token");function Bo(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:No},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 Oo(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 Ro(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:Po,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:ht((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:ht((s=n.pagination)==null?void 0:s.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(c=n.pagination)==null?void 0:c.size}}}}}class Ho 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}=Bo(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:Eo,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:Io},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:ko,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=Oo(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 Ro(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:To,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 Ct.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}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 Ao{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 Lo(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 Ao;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 Ft 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=Lo(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 $o extends Ft{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 Ft{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 Ft{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 Ct.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})">
29
20
  {{rowData.${t.field}}}
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 vr(t,e,n){const i=new Map([["/converter/appearance.converter",Zo],["/converter/buttons.converter",Jo],["/converter/property-editor.converter",Qo],["/converter/items-count.converter",cr],["/converter/type.converter",Ko],["/converter/change-editor.converter",er],["/converter/change-formatter.converter",tr],["/converter/column-command.converter",nr],["/converter/column-option.converter",ir],["/converter/summary.converter",or],["/converter/group.converter",rr],["/converter/form-group-label.converter",ur],["/converter/field-selector.converter",lr],["/converter/pagination.converter",ar],["/converter/row-number.converter",sr],["/converter/grid-selection.converter",dr],["/converter/size.converter",fr],["/converter/change-formatter-enum.converter",mr],["/converter/grid-sort.converter",pr],["/converter/grid-filter.converter",hr],["/converter/row-option.converter",gr],["/converter/change-formatter-type.converter",yr]]),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=Xo();function a(p,y){return()=>l.parseValueSchema(p,y)}function s(p,y,w){return p.includes("visible")&&y.visible!==void 0?typeof y.visible=="boolean"?()=>!!y.visible:y.visible===void 0?!0:a(y.visible,w):()=>!0}function f(p,y,w){return p.includes("readonly")&&y.readonly!==void 0?typeof y.readonly=="boolean"?()=>!!y.readonly:a(y.readonly,w):()=>!1}function u(p,y){const w=p.$converter||y;return typeof w=="string"&&w&&i.has(w)?i.get(w)||null:w||null}function m(p,y,w,F,x,M="",_=""){return Object.keys(p).map(C=>{const g=r.ref(1),b=C,S=p[C],P=Object.keys(S),B=S.title,E=S.type,N=o.get(E)||{type:"input-group",enableClear:!1},k=S.editor?Object.assign({},N,S.editor):Object.assign({},N),T=s(P,S,y),V=f(P,S,y);k.readonly=k.readonly===void 0?V():k.readonly;const H=S.type==="cascade"?m(S.properties,y,w,F,x,M,_):[],I=!0;let R=u(S,_);const q=r.computed({get(){if(g.value){if(["class","style"].find(L=>L===b)&&!R&&(R=i.get("/converter/appearance.converter")||null),R&&R.convertFrom)return R.convertFrom(w,C,x,M);const Z=w[C];return Object.prototype.hasOwnProperty.call(S,"defaultValue")&&(Z===void 0||typeof Z=="string"&&Z==="")?S.type==="boolean"?S.defaultValue:S.defaultValue||"":Z}return null},set(Z){g.value+=1,R&&R.convertTo?(R.convertTo(F,C,Z,x,M),R.convertTo(w,C,Z,x,M)):(F[C]=Z,w[C]=Z)}}),{refreshPanelAfterChanged:J,description:j,isExpand:ee,parentPropertyID:oe}=S,ce={propertyID:b,propertyName:B,propertyType:E,propertyValue:q,editor:k,visible:T,readonly:V,cascadeConfig:H,hideCascadeTitle:I,refreshPanelAfterChanged:J,description:j,isExpand:ee,parentPropertyID:oe};return y[b]=ce,ce})}function d(p,y,w={}){const F={},x=t[p];return x&&x.categories?Object.keys(x.categories).map(_=>{const v=x.categories[_],C=v==null?void 0:v.title,g=m(v.properties||{},F,{},w,y);return{categoryId:_,categoryName:C,properties:g}}):[]}function c(p,y,w,F,x=""){const M=y.$ref.schema,_=y.$ref.converter,v=w[M],C=v.type,g=n(v),b={},S=t[C];if(S&&S.categories){const P=S.categories[p],B=P==null?void 0:P.title;_&&Object.keys(P.properties).forEach(k=>{P.properties[k].$converter=_});const E=(P==null?void 0:P.properties)||{},N=m(E,b,g,v,F,x);return{categoryId:p,categoryName:B,properties:N}}return{categoryId:p,categoryName:"",properties:[]}}function h(p,y,w,F,x){const M=p.type,_=n(p),v={};let C=x||t[M];if(C&&Object.keys(C).length===0&&w&&w.getPropConfig&&(C=w.getPropConfig(F)),C&&C.categories){const g=[];return Object.keys(C.categories).map(b=>{const S=C.categories[b];if(S.$ref){g.push(c(b,S,p,y,F));return}const P=S==null?void 0:S.title,B=S==null?void 0:S.tabId,E=S==null?void 0:S.tabName,N=S==null?void 0:S.hide,k=S==null?void 0:S.hideTitle,T=m(S.properties||{},v,_,p,y,F,S.$converter),{setPropertyRelates:V}=S,H=S==null?void 0:S.parentPropertyID;g.push({categoryId:b,categoryName:P,tabId:B,tabName:E,hide:N,properties:T,hideTitle:k,setPropertyRelates:V,parentPropertyID:H})}),g}return[]}return{getPropertyConfigBySchema:h,getPropertyConfigByType:d,propertyConverterMap:i}}function br(t,e){let n;function i(d){const{properties:c,title:h,ignore:p}=d,y=p&&Array.isArray(p),w=Object.keys(c).reduce((F,x)=>((!y||!p.find(M=>M===x))&&(F[x]=c[x].type==="object"&&c[x].properties?i(c[x]):Re.cloneDeep(c[x].default)),F),{});if(h&&(!y||!p.find(F=>F==="id"))){const F=h.toLowerCase().replace(/-/g,"_");w.id=`${F}_${Math.random().toString().slice(2,6)}`}return w}function o(d){const{properties:c,title:h,required:p}=d;if(p&&Array.isArray(p)){const y=p.reduce((w,F)=>(w[F]=c[F].type==="object"&&c[F].properties?i(c[F]):Re.cloneDeep(c[F].default),w),{});if(h&&p.find(w=>w==="id")){const w=h.toLowerCase().replace(/-/g,"_");y.id=`${w}_${Math.random().toString().slice(2,6)}`}return y}return{type:h}}function l(d,c={},h){const p=t[d];if(p){let y=o(p);const w=e[d];return y=w?w({getSchemaByType:l},y,c,h):y,n!=null&&n.appendIdentifyForNewControl&&n.appendIdentifyForNewControl(y),y}return null}function a(d,c){const h=i(c);return Object.keys(h).reduce((p,y)=>(Object.prototype.hasOwnProperty.call(d,y)&&(p[y]&&Re.isPlainObject(p[y])&&Re.isPlainObject(d[y]||!d[y])?Object.assign(p[y],d[y]||{}):p[y]=d[y]),p),h),h}function s(d,c){return Object.keys(d).filter(p=>d[p]!=null).reduce((p,y)=>{if(c.has(y)){const w=c.get(y);if(typeof w=="string")p[w]=d[y];else{const F=w(y,d[y],d);Object.assign(p,F)}}else p[y]=d[y];return p},{})}function f(d,c,h=new Map){const p=a(d,c);return s(p,h)}function u(d){var h;const c=d.type;if(c){const p=t[c];if(!p)return d;const y=a(d,p),w=((h=d.editor)==null?void 0:h.type)||"";if(w){const F=t[w],x=a(d.editor,F);y.editor=x}return y}return d}function m(d){n=d}return{getSchemaByType:l,resolveSchemaWithDefaultValue:u,resolveSchemaToProps:f,mappingSchemaToProps:s,setDesignerContext:m}}const Cr={},wr={},{resolveSchemaWithDefaultValue:Sr}=br(Cr,wr);vr({},{},Sr);const{globalStorageKey:Sl}=D.useThirdComponent();var on=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(on||{});function xr(t,e,n){function i(){const a=n.componentId;if(!a)return!1;const s=t.formSchemaUtils.getViewModelIdByComponentId(a);if(!s)return!1;const{schema:f}=e,{designViewModelUtils:u}=t,m=u.getDgViewModel(s),d=m==null?void 0:m.fields.find(c=>c.id===f.binding.field);return!(!d||d.$type!==on.SimpleField)}function o(){const{schema:a}=e;return!!t.formSchemaUtils.getVariableById(a.binding.field)}function l(){var f;const{schema:a}=e;let s=!0;if(!t||!((f=a.binding)!=null&&f.field))return s;switch(a.binding.type){case st.Form:{s=i();break}case st.Variable:s=o()}return s}return{checkBindingFieldValidation:l}}const rn=r.defineComponent({name:"FDataGridColumnDesign",props:xt,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=Yo(o,i),a=A.useDesignerComponent(n,o,l);r.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value);function s(d){var c;(c=o==null?void 0:o.setupContext)==null||c.emit("selectionChange",a.value.schema,o.schema,t.componentId,a.value)}const{checkBindingFieldValidation:f}=xr(i,o,t),m=!r.inject("external-container-id");return()=>{var p;const d=m?f():!0,c="绑定信息已失效,请手动移除列",h=d?"":"color:red";return r.createVNode(r.Fragment,null,[d?"":r.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:c},null),r.createVNode("span",{class:"fv-column-title",style:h,ref:n,onClick:y=>s()},[((p=t.editor)==null?void 0:p.required)===!0&&r.createVNode("span",{class:"text-danger"},[r.createTextVNode("*")]),t.title])])}}}),Mr={$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:""}}},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 Fr(){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 Ft=ze.createPropsResolver(nt.dataGridProps,Mr,Lt,Wt),ln=ze.createCollectionBindingResolver(),an=ze.createDataGridSelectionItemResolver(),sn=ze.createDataViewUpdateColumnsResolver(),dn=Fr();Ke.install=t=>{t.component(Ke.name,Ke)},Ke.register=(t,e,n,i)=>{t["data-grid"]=nt,e["data-grid"]=Ft,t["grid-field-editor"]=to,e["grid-field-editor"]=Ai,i["data-grid"]={bindingResolver:ln,selectionItemResolver:an,updateColumnsResolver:sn,callbackResolver:dn}},Ke.registerDesigner=(t,e,n)=>{t["data-grid"]=Ke,e["data-grid"]=Ft,e["data-grid-column"]=oo,t["data-grid-column"]=rn,e["tree-grid-column"]=ro,t["tree-grid-column"]=rn};const Tr=D.withInstall(Ke);de.FDataGridDesign=Ke,de.bindingResolver=ln,de.callbackResolver=dn,de.default=Tr,de.getColumnHeader=Ot,de.propsResolver=Ft,de.selectionItemResolver=an,de.updateColumnsResolver=sn,Object.defineProperties(de,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
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 uo(this.componentId,this.designerHostService);break;case"check-group":a=new fo(this.componentId,this.designerHostService);break;case"check-box":a=new mo(this.componentId,this.designerHostService);break;case"combo-list":a=new po(this.componentId,this.designerHostService);break;case"date-picker":a=new Fo(this.componentId,this.designerHostService);break;case"lookup":a=new Ho(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 ho(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:St,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"}})});