@farris/ui-vue 1.7.3 → 1.7.5

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 (392) hide show
  1. package/components/accordion/index.esm.js +312 -61
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +1482 -56
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/binding-selector/index.esm.js +752 -8
  6. package/components/binding-selector/index.umd.cjs +1 -1
  7. package/components/button-group/index.esm.js +266 -110
  8. package/components/button-group/index.umd.cjs +1 -1
  9. package/components/calendar/index.esm.js +129 -128
  10. package/components/calendar/index.umd.cjs +2 -2
  11. package/components/code-editor/index.esm.js +237 -169
  12. package/components/code-editor/index.umd.cjs +3 -3
  13. package/components/collection-property-editor/index.esm.js +134 -133
  14. package/components/collection-property-editor/index.umd.cjs +2 -2
  15. package/components/color-picker/index.esm.js +812 -502
  16. package/components/color-picker/index.umd.cjs +1 -1
  17. package/components/combo-list/index.esm.js +323 -291
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +355 -174
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/comment/index.esm.js +134 -133
  22. package/components/comment/index.umd.cjs +2 -2
  23. package/components/common/index.esm.js +1 -1
  24. package/components/common/index.umd.cjs +1 -1
  25. package/components/component/index.esm.js +3791 -2760
  26. package/components/component/index.umd.cjs +8 -1
  27. package/components/condition/index.esm.js +2482 -492
  28. package/components/condition/index.umd.cjs +8 -1
  29. package/components/data-view/index.esm.js +1816 -1790
  30. package/components/data-view/index.umd.cjs +1 -1
  31. package/components/date-picker/index.esm.js +1 -1
  32. package/components/date-picker/index.umd.cjs +1 -1
  33. package/components/designer-canvas/index.esm.js +2975 -2615
  34. package/components/designer-canvas/index.umd.cjs +1 -1
  35. package/components/drawer/index.esm.js +397 -387
  36. package/components/drawer/index.umd.cjs +2 -2
  37. package/components/dropdown/index.esm.js +373 -124
  38. package/components/dropdown/index.umd.cjs +2 -2
  39. package/components/dynamic-form/index.esm.js +592 -1894
  40. package/components/dynamic-form/index.umd.cjs +1 -1
  41. package/components/dynamic-resolver/index.esm.js +250 -248
  42. package/components/dynamic-resolver/index.umd.cjs +2 -2
  43. package/components/dynamic-view/index.esm.js +427 -466
  44. package/components/dynamic-view/index.umd.cjs +1 -1
  45. package/components/event-parameter/index.esm.js +1 -1
  46. package/components/event-parameter/index.umd.cjs +1 -1
  47. package/components/events-editor/index.esm.js +1890 -1473
  48. package/components/events-editor/index.umd.cjs +3 -3
  49. package/components/expression-editor/index.css +1 -1
  50. package/components/expression-editor/index.esm.js +7371 -2
  51. package/components/expression-editor/index.umd.cjs +427 -1
  52. package/components/fieldset/index.esm.js +1 -1
  53. package/components/fieldset/index.umd.cjs +1 -1
  54. package/components/filter-bar/index.esm.js +2 -3
  55. package/components/filter-bar/index.umd.cjs +2 -2
  56. package/components/filter-condition-editor/index.css +1 -1
  57. package/components/filter-condition-editor/index.esm.js +9044 -425
  58. package/components/filter-condition-editor/index.umd.cjs +427 -1
  59. package/components/html-template/index.esm.js +33 -36
  60. package/components/html-template/index.umd.cjs +1 -1
  61. package/components/image-cropper/index.esm.js +615 -361
  62. package/components/image-cropper/index.umd.cjs +1 -1
  63. package/components/json-editor/index.esm.js +325 -247
  64. package/components/json-editor/index.umd.cjs +1 -1
  65. package/components/language-textbox/index.esm.js +269 -269
  66. package/components/language-textbox/index.umd.cjs +2 -2
  67. package/components/layout/index.esm.js +549 -163
  68. package/components/layout/index.umd.cjs +1 -1
  69. package/components/list-nav/index.esm.js +837 -39
  70. package/components/list-nav/index.umd.cjs +1 -1
  71. package/components/list-view/index.esm.js +427 -646
  72. package/components/list-view/index.umd.cjs +6 -6
  73. package/components/lookup/index.esm.js +3624 -3625
  74. package/components/lookup/index.umd.cjs +1 -1
  75. package/components/menu-lookup/index.esm.js +577 -536
  76. package/components/menu-lookup/index.umd.cjs +6 -6
  77. package/components/nav/index.esm.js +311 -31
  78. package/components/nav/index.umd.cjs +1 -1
  79. package/components/number-range/index.esm.js +1634 -189
  80. package/components/number-range/index.umd.cjs +1 -1
  81. package/components/number-spinner/index.esm.js +82 -82
  82. package/components/number-spinner/index.umd.cjs +1 -1
  83. package/components/order/index.esm.js +1190 -850
  84. package/components/order/index.umd.cjs +6 -6
  85. package/components/page-footer/index.esm.js +331 -48
  86. package/components/page-footer/index.umd.cjs +1 -1
  87. package/components/page-header/index.esm.js +110 -116
  88. package/components/page-header/index.umd.cjs +1 -1
  89. package/components/pagination/index.esm.js +509 -232
  90. package/components/pagination/index.umd.cjs +1 -1
  91. package/components/progress/index.esm.js +353 -148
  92. package/components/progress/index.umd.cjs +3 -3
  93. package/components/property-editor/index.esm.js +157 -153
  94. package/components/property-editor/index.umd.cjs +1 -1
  95. package/components/property-panel/index.esm.js +1825 -871
  96. package/components/property-panel/index.umd.cjs +12 -5
  97. package/components/query-solution/index.css +1 -1
  98. package/components/query-solution/index.esm.js +6075 -3863
  99. package/components/query-solution/index.umd.cjs +13 -6
  100. package/components/response-layout/index.esm.js +1 -1
  101. package/components/response-layout/index.umd.cjs +1 -1
  102. package/components/schema-selector/index.esm.js +2447 -2221
  103. package/components/schema-selector/index.umd.cjs +7 -7
  104. package/components/search-box/index.esm.js +244 -72
  105. package/components/search-box/index.umd.cjs +1 -1
  106. package/components/section/index.esm.js +134 -133
  107. package/components/section/index.umd.cjs +2 -2
  108. package/components/smoke-detector/index.esm.js +179 -8
  109. package/components/smoke-detector/index.umd.cjs +1 -1
  110. package/components/sort-condition-editor/index.css +1 -0
  111. package/components/sort-condition-editor/index.esm.js +9488 -4
  112. package/components/sort-condition-editor/index.umd.cjs +427 -1
  113. package/components/splitter/index.esm.js +1172 -142
  114. package/components/splitter/index.umd.cjs +1 -1
  115. package/components/step/index.esm.js +47 -48
  116. package/components/step/index.umd.cjs +1 -1
  117. package/components/tabs/index.esm.js +490 -419
  118. package/components/tabs/index.umd.cjs +1 -1
  119. package/components/text/index.esm.js +217 -73
  120. package/components/text/index.umd.cjs +1 -1
  121. package/components/textarea/index.esm.js +29 -27
  122. package/components/textarea/index.umd.cjs +2 -2
  123. package/components/transfer/index.esm.js +760 -543
  124. package/components/transfer/index.umd.cjs +5 -5
  125. package/components/tree-grid/index.esm.js +105 -104
  126. package/components/tree-grid/index.umd.cjs +1 -1
  127. package/components/tree-view/index.esm.js +320 -153
  128. package/components/tree-view/index.umd.cjs +1 -1
  129. package/components/uploader/index.esm.js +1125 -634
  130. package/components/uploader/index.umd.cjs +2 -2
  131. package/components/verify-detail/index.esm.js +359 -106
  132. package/components/verify-detail/index.umd.cjs +1 -1
  133. package/components/video/index.esm.js +222 -89
  134. package/components/video/index.umd.cjs +1 -1
  135. package/components/weather/index.esm.js +290 -199
  136. package/components/weather/index.umd.cjs +1 -1
  137. package/designer/data-grid/index.esm.js +5192 -4408
  138. package/designer/data-grid/index.umd.cjs +17 -10
  139. package/designer/drawer/index.esm.js +576 -567
  140. package/designer/drawer/index.umd.cjs +2 -2
  141. package/designer/dynamic-form/index.esm.js +1418 -1154
  142. package/designer/dynamic-form/index.umd.cjs +8 -1
  143. package/designer/farris-designer.all.esm.js +12665 -12117
  144. package/designer/farris-designer.all.umd.cjs +12 -12
  145. package/designer/list-view/index.esm.js +327 -327
  146. package/designer/list-view/index.umd.cjs +3 -3
  147. package/designer/modal/index.esm.js +29 -137
  148. package/designer/modal/index.umd.cjs +1 -1
  149. package/designer/radio-group/index.esm.js +0 -1
  150. package/designer/radio-group/index.umd.cjs +1 -1
  151. package/designer/response-toolbar/index.esm.js +9 -9
  152. package/designer/response-toolbar/index.umd.cjs +1 -1
  153. package/designer/section/index.esm.js +1 -6
  154. package/designer/section/index.umd.cjs +1 -1
  155. package/designer/tabs/index.esm.js +2829 -2540
  156. package/designer/tabs/index.umd.cjs +2 -2
  157. package/designer/tree-grid/index.esm.js +822 -464
  158. package/designer/tree-grid/index.umd.cjs +1 -1
  159. package/farris.all.esm.js +68724 -67244
  160. package/farris.all.umd.cjs +92 -92
  161. package/index.css +1 -1
  162. package/package.json +1 -1
  163. package/types/accordion/src/accordion.props.d.ts +1 -0
  164. package/types/accordion/src/components/accordion-item.props.d.ts +1 -0
  165. package/types/avatar/src/avatar.props.d.ts +1 -0
  166. package/types/binding-selector/index.d.ts +54 -0
  167. package/types/binding-selector/src/binding-selector.props.d.ts +1 -0
  168. package/types/button-group/index.d.ts +0 -15
  169. package/types/button-group/src/button-group.props.d.ts +1 -0
  170. package/types/code-editor/index.d.ts +1 -0
  171. package/types/code-editor/src/code-textbox.component.d.ts +6 -6
  172. package/types/code-editor/src/code-textbox.props.d.ts +2 -0
  173. package/types/color-picker/index.d.ts +15 -0
  174. package/types/color-picker/src/color-picker.props.d.ts +1 -0
  175. package/types/combo-list/src/composition/use-data-source.d.ts +2 -1
  176. package/types/combo-list/src/property-config/combo-list.property-config.d.ts +14 -2
  177. package/types/combo-tree/src/combo-tree.props.d.ts +1 -0
  178. package/types/component/index.d.ts +2 -0
  179. package/types/component/src/component.props.d.ts +8 -0
  180. package/types/components.d.ts +6 -1
  181. package/types/condition/index.d.ts +55 -0
  182. package/types/designer-toolbox/index.d.ts +3 -0
  183. package/types/designer-toolbox/src/toolbox.component.d.ts +14 -0
  184. package/types/designer-toolbox/src/toolbox.props.d.ts +29 -0
  185. package/types/designer-toolbox/src/types.d.ts +21 -0
  186. package/types/designer.d.ts +13 -0
  187. package/types/dropdown/index.d.ts +6 -27
  188. package/types/dropdown/src/dropdown.item.component.d.ts +1 -1
  189. package/types/dropdown/src/dropdown.props.d.ts +1 -0
  190. package/types/dynamic-form/designer.d.ts +1 -3
  191. package/types/dynamic-form/index.d.ts +3 -9
  192. package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.component.d.ts +3 -3
  193. package/types/dynamic-resolver/index.d.ts +0 -3
  194. package/types/dynamic-resolver/src/resolver/property-config/property-config-resolver-design.d.ts +1 -1
  195. package/types/dynamic-resolver/src/resolver/property-config/property-config-resolver.d.ts +1 -1
  196. package/types/dynamic-resolver/src/resolver/property-config/use-property-config-resolver.d.ts +2 -2
  197. package/types/dynamic-resolver/src/resolver/schema/schema-resolver-design.d.ts +1 -1
  198. package/types/dynamic-resolver/src/resolver/schema/schema-resolver.d.ts +1 -1
  199. package/types/dynamic-view/src/components/maps.d.ts +104 -92
  200. package/types/{binding-selector/designer.d.ts → expression-editor/index.d.ts} +6 -6
  201. package/types/filter-condition-editor/index.d.ts +9 -0
  202. package/types/filter-condition-editor/src/components/filter-condition-grid.component.d.ts +12 -12
  203. package/types/filter-condition-editor/src/components/sort-editor-grid.component.d.ts +12 -12
  204. package/types/filter-condition-editor/src/filter-condition-editor.props.d.ts +1 -0
  205. package/types/flow-canvas/index.d.ts +3 -0
  206. package/types/{dynamic-form/src/component/form-control/form-control.component.d.ts → flow-canvas/src/components/flow-node-item.component.d.ts} +1 -1
  207. package/types/flow-canvas/src/components/flow-node-item.props.d.ts +3 -0
  208. package/types/flow-canvas/src/composition/types.d.ts +42 -0
  209. package/types/flow-canvas/src/composition/use-bezier-curve.d.ts +2 -0
  210. package/types/flow-canvas/src/composition/use-connections.d.ts +2 -0
  211. package/types/flow-canvas/src/composition/use-curve.d.ts +4 -0
  212. package/types/flow-canvas/src/composition/use-drawing-bezier.d.ts +2 -0
  213. package/types/flow-canvas/src/composition/use-drawing.d.ts +4 -0
  214. package/types/flow-canvas/src/flow-canvas.component.d.ts +8 -0
  215. package/types/flow-canvas/src/flow-canvas.props.d.ts +3 -0
  216. package/types/image-cropper/src/image-cropper.props.d.ts +1 -0
  217. package/types/index.d.ts +1 -0
  218. package/types/json-editor/src/json-editor.props.d.ts +1 -0
  219. package/types/layout/index.d.ts +0 -1
  220. package/types/layout/src/components/layout-pane.props.d.ts +1 -0
  221. package/types/layout/src/layout.props.d.ts +1 -0
  222. package/types/list-nav/index.d.ts +5 -24
  223. package/types/list-nav/src/list-nav.props.d.ts +1 -0
  224. package/types/list-view/index.d.ts +0 -1
  225. package/types/list-view/src/composition/use-draggable.d.ts +1 -1
  226. package/types/lookup/index.d.ts +1 -1
  227. package/types/lookup/src/components/popup-container.component.d.ts +3 -3
  228. package/types/menu-lookup/src/menu-lookup.props.d.ts +1 -0
  229. package/types/modal/designer.d.ts +0 -2
  230. package/types/nav/index.d.ts +20 -24
  231. package/types/nav/src/nav.props.d.ts +1 -0
  232. package/types/number-range/src/number-range.props.d.ts +1 -0
  233. package/types/order/index.d.ts +5 -36
  234. package/types/order/src/designer/order.design.component.d.ts +1 -1
  235. package/types/order/src/order.props.d.ts +1 -0
  236. package/types/page-footer/index.d.ts +2 -0
  237. package/types/page-footer/src/page-footer.props.d.ts +1 -0
  238. package/types/pagination/index.d.ts +0 -15
  239. package/types/pagination/src/pagination.props.d.ts +1 -0
  240. package/types/progress/src/progress.props.d.ts +1 -0
  241. package/types/query-solution/index.d.ts +1 -1
  242. package/types/radio-group/designer.d.ts +1 -2
  243. package/types/search-box/index.d.ts +17 -1
  244. package/types/search-box/src/search-box.props.d.ts +1 -0
  245. package/types/section/designer.d.ts +0 -1
  246. package/types/smoke-detector/index.d.ts +2 -0
  247. package/types/smoke-detector/src/smoke-detector.props.d.ts +1 -0
  248. package/types/sort-condition-editor/index.d.ts +7 -2
  249. package/types/sort-condition-editor/src/sort-condition-editor.props.d.ts +1 -0
  250. package/types/splitter/index.d.ts +0 -1
  251. package/types/splitter/src/components/splitter-pane.props.d.ts +1 -0
  252. package/types/splitter/src/splitter.props.d.ts +1 -0
  253. package/types/tabs/designer.d.ts +0 -1
  254. package/types/tabs/index.d.ts +1 -0
  255. package/types/text/index.d.ts +20 -24
  256. package/types/text/src/text.props.d.ts +1 -0
  257. package/types/transfer/src/transfer.props.d.ts +1 -0
  258. package/types/tree-view/src/tree-view.props.d.ts +1 -0
  259. package/types/uploader/src/uploader.props.d.ts +1 -0
  260. package/types/verify-detail/index.d.ts +5 -58
  261. package/types/verify-detail/src/designer/verify-detail.design.component.d.ts +8 -8
  262. package/types/verify-detail/src/verify-detail.props.d.ts +1 -0
  263. package/types/video/index.d.ts +20 -24
  264. package/types/video/src/video.props.d.ts +1 -0
  265. package/components/dynamic-form/index.css +0 -1
  266. package/designer/accordion/index.esm.js +0 -257
  267. package/designer/accordion/index.umd.cjs +0 -1
  268. package/designer/avatar/index.esm.js +0 -1460
  269. package/designer/avatar/index.umd.cjs +0 -1
  270. package/designer/binding-selector/index.esm.js +0 -792
  271. package/designer/binding-selector/index.umd.cjs +0 -1
  272. package/designer/button-group/index.esm.js +0 -282
  273. package/designer/button-group/index.umd.cjs +0 -1
  274. package/designer/code-editor/index.esm.js +0 -75
  275. package/designer/code-editor/index.umd.cjs +0 -1
  276. package/designer/color-picker/index.esm.js +0 -1096
  277. package/designer/color-picker/index.umd.cjs +0 -1
  278. package/designer/combo-list/index.esm.js +0 -1095
  279. package/designer/combo-list/index.umd.cjs +0 -1
  280. package/designer/combo-tree/index.esm.js +0 -186
  281. package/designer/combo-tree/index.umd.cjs +0 -1
  282. package/designer/component/index.css +0 -1
  283. package/designer/component/index.esm.js +0 -5002
  284. package/designer/component/index.umd.cjs +0 -1
  285. package/designer/condition/index.esm.js +0 -1899
  286. package/designer/condition/index.umd.cjs +0 -1
  287. package/designer/dropdown/index.esm.js +0 -261
  288. package/designer/dropdown/index.umd.cjs +0 -1
  289. package/designer/expression-editor/index.css +0 -1
  290. package/designer/expression-editor/index.esm.js +0 -7006
  291. package/designer/expression-editor/index.umd.cjs +0 -427
  292. package/designer/filter-condition-editor/index.css +0 -1
  293. package/designer/filter-condition-editor/index.esm.js +0 -4795
  294. package/designer/filter-condition-editor/index.umd.cjs +0 -1
  295. package/designer/html-template/index.esm.js +0 -718
  296. package/designer/html-template/index.umd.cjs +0 -1
  297. package/designer/image-cropper/index.esm.js +0 -765
  298. package/designer/image-cropper/index.umd.cjs +0 -1
  299. package/designer/json-editor/index.esm.js +0 -83
  300. package/designer/json-editor/index.umd.cjs +0 -1
  301. package/designer/language-textbox/index.esm.js +0 -783
  302. package/designer/language-textbox/index.umd.cjs +0 -8
  303. package/designer/layout/index.esm.js +0 -430
  304. package/designer/layout/index.umd.cjs +0 -1
  305. package/designer/list-nav/index.esm.js +0 -802
  306. package/designer/list-nav/index.umd.cjs +0 -1
  307. package/designer/lookup/index.esm.js +0 -2083
  308. package/designer/lookup/index.umd.cjs +0 -1
  309. package/designer/menu-lookup/index.esm.js +0 -46
  310. package/designer/menu-lookup/index.umd.cjs +0 -1
  311. package/designer/nav/index.esm.js +0 -284
  312. package/designer/nav/index.umd.cjs +0 -1
  313. package/designer/number-range/index.esm.js +0 -1616
  314. package/designer/number-range/index.umd.cjs +0 -1
  315. package/designer/order/index.css +0 -1
  316. package/designer/order/index.esm.js +0 -2196
  317. package/designer/order/index.umd.cjs +0 -18
  318. package/designer/page-footer/index.esm.js +0 -290
  319. package/designer/page-footer/index.umd.cjs +0 -1
  320. package/designer/page-header/index.esm.js +0 -1003
  321. package/designer/page-header/index.umd.cjs +0 -1
  322. package/designer/pagination/index.esm.js +0 -591
  323. package/designer/pagination/index.umd.cjs +0 -1
  324. package/designer/progress/index.esm.js +0 -213
  325. package/designer/progress/index.umd.cjs +0 -1
  326. package/designer/search-box/index.esm.js +0 -245
  327. package/designer/search-box/index.umd.cjs +0 -1
  328. package/designer/smoke-detector/index.css +0 -1
  329. package/designer/smoke-detector/index.esm.js +0 -178
  330. package/designer/smoke-detector/index.umd.cjs +0 -1
  331. package/designer/sort-condition-editor/index.esm.js +0 -138
  332. package/designer/sort-condition-editor/index.umd.cjs +0 -1
  333. package/designer/splitter/index.esm.js +0 -1120
  334. package/designer/splitter/index.umd.cjs +0 -1
  335. package/designer/step/index.esm.js +0 -226
  336. package/designer/step/index.umd.cjs +0 -1
  337. package/designer/text/index.esm.js +0 -147
  338. package/designer/text/index.umd.cjs +0 -1
  339. package/designer/transfer/index.esm.js +0 -254
  340. package/designer/transfer/index.umd.cjs +0 -1
  341. package/designer/tree-view/index.esm.js +0 -313
  342. package/designer/tree-view/index.umd.cjs +0 -1
  343. package/designer/uploader/index.esm.js +0 -1190
  344. package/designer/uploader/index.umd.cjs +0 -2
  345. package/designer/verify-detail/index.esm.js +0 -258
  346. package/designer/verify-detail/index.umd.cjs +0 -1
  347. package/designer/video/index.esm.js +0 -136
  348. package/designer/video/index.umd.cjs +0 -1
  349. package/designer/weather/index.css +0 -1
  350. package/designer/weather/index.esm.js +0 -6244
  351. package/designer/weather/index.umd.cjs +0 -14
  352. package/types/accordion/designer.d.ts +0 -44
  353. package/types/avatar/designer.d.ts +0 -29
  354. package/types/button-group/designer.d.ts +0 -29
  355. package/types/code-editor/designer.d.ts +0 -5
  356. package/types/color-picker/designer.d.ts +0 -29
  357. package/types/combo-list/designer.d.ts +0 -29
  358. package/types/combo-list/src/designer/combo-list.design.props.d.ts +0 -6
  359. package/types/combo-tree/designer.d.ts +0 -5
  360. package/types/component/designer.d.ts +0 -35
  361. package/types/condition/designer.d.ts +0 -56
  362. package/types/dropdown/designer.d.ts +0 -6
  363. package/types/dynamic-form/src/composition/use-input-type-resolver.d.ts +0 -11
  364. package/types/expression-editor/designer.d.ts +0 -9
  365. package/types/filter-condition-editor/designer.d.ts +0 -10
  366. package/types/html-template/designer.d.ts +0 -31
  367. package/types/html-template/src/designer/html-template.design.props.d.ts +0 -9
  368. package/types/image-cropper/designer.d.ts +0 -4
  369. package/types/json-editor/designer.d.ts +0 -5
  370. package/types/layout/designer.d.ts +0 -32
  371. package/types/list-nav/designer.d.ts +0 -6
  372. package/types/menu-lookup/designer.d.ts +0 -5
  373. package/types/nav/designer.d.ts +0 -6
  374. package/types/number-range/designer.d.ts +0 -29
  375. package/types/order/designer.d.ts +0 -6
  376. package/types/page-footer/designer.d.ts +0 -6
  377. package/types/page-header/src/designer/page-header.design.props.d.ts +0 -20
  378. package/types/pagination/designer.d.ts +0 -29
  379. package/types/progress/designer.d.ts +0 -29
  380. package/types/search-box/designer.d.ts +0 -52
  381. package/types/smoke-detector/designer.d.ts +0 -6
  382. package/types/sort-condition-editor/designer.d.ts +0 -9
  383. package/types/splitter/designer.d.ts +0 -32
  384. package/types/step/designer.d.ts +0 -6
  385. package/types/text/designer.d.ts +0 -6
  386. package/types/transfer/designer.d.ts +0 -35
  387. package/types/tree-view/designer.d.ts +0 -29
  388. package/types/uploader/designer.d.ts +0 -141
  389. package/types/verify-detail/designer.d.ts +0 -6
  390. package/types/video/designer.d.ts +0 -6
  391. /package/{designer → components}/condition/index.css +0 -0
  392. /package/{designer → components}/uploader/index.css +0 -0
@@ -1 +1 @@
1
- (function(e,t){typeof exports=="object"&&typeof module<"u"?t(exports):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e["binding-selector"]={}))})(this,function(e){"use strict";const t=[{field:"name",title:"名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],l=[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"displayTypeName",title:"变量类型"}],i=[{value:"Form",text:"绑定字段"},{value:"LocaleVariable",text:"绑定组件变量"},{value:"RemoteVariable",text:"绑定表单变量"}],d={disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:Object,default:null},bindingType:{type:Object,default:{enable:!0,value:"Form",textField:"text",valueField:"value"}},data:{type:Array,default:[]},idField:{type:String,default:"id"},title:{type:String,default:"字段选择器"},modalWidth:{type:Number,default:800},modalHeight:{type:Number,default:600},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},bindingData:{type:Array,default:[]},textField:{type:String,default:"code"},beforeOpenDialog:{type:Function,default:null},editorParams:{type:Object,default:null},onFieldSelected:{type:Function,default:null},showCustomFooter:{type:Boolean,default:!1}};e.bindingSelectorProps=d,e.bindingTypes=i,e.fieldColumns=t,e.variableColumns=l,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
1
+ (function(p,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../button-edit/index.umd.js"),require("../tree-grid/index.umd.js"),require("../radio-group/index.umd.js"),require("../common/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../locale/index.umd.js"),require("../property-panel/index.umd.js"),require("lodash-es"),require("../notify/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../button-edit/index.umd.js","../tree-grid/index.umd.js","../radio-group/index.umd.js","../common/index.umd.js","../dynamic-resolver/index.umd.js","../locale/index.umd.js","../property-panel/index.umd.js","lodash-es","../notify/index.umd.js"],t):(p=typeof globalThis<"u"?globalThis:p||self,t(p["binding-selector"]={},p.Vue,p.FButtonEdit,p.FTreeGrid,p.FRadioGroup,p.common,p.dynamicResolver,p.locale,p.propertyPanel,p.LodashES,p.notify))})(this,function(p,t,k,re,de,H,ce,Y,q,ee,ue){"use strict";var ge=Object.defineProperty;var he=(p,t,k)=>t in p?ge(p,t,{enumerable:!0,configurable:!0,writable:!0,value:k}):p[t]=k;var D=(p,t,k)=>he(p,typeof t!="symbol"?t+"":t,k);const me={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/binding-selector.schema.json",title:"binding-selector",description:"字段绑定选择器",type:"object",properties:{disabled:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},bindingType:{description:"",type:"object",default:{}},idField:{description:"",type:"string",default:"id"},title:{description:"",type:"string",default:"字段选择器"},modalWidth:{description:"",type:"number",default:800},modalHeight:{description:"",type:"number",default:600},separator:{description:"",type:"string",default:","},bindingData:{description:"",type:"array",default:[]},textField:{description:"",type:"string",default:"code"},editorParams:{description:"",type:"object",default:{}}}},z=[{field:"name",title:"名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],J=[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"displayTypeName",title:"变量类型"}],te=[{value:"Form",text:"绑定字段"},{value:"LocaleVariable",text:"绑定组件变量"},{value:"RemoteVariable",text:"绑定表单变量"}],_={disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:Object,default:null},bindingType:{type:Object,default:{enable:!0,value:"Form",textField:"text",valueField:"value"}},data:{type:Array,default:[]},idField:{type:String,default:"id"},title:{type:String,default:"字段选择器"},modalWidth:{type:Number,default:800},modalHeight:{type:Number,default:600},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},bindingData:{type:Array,default:[]},textField:{type:String,default:"code"},beforeOpenDialog:{type:Function,default:null},editorParams:{type:Object,default:null},onFieldSelected:{type:Function,default:null},showCustomFooter:{type:Boolean,default:!1}},ne=ce.createPropsResolver(_,me),fe={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object},safeHtml:{type:Boolean,default:!0}},pe={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Q=t.defineComponent({name:"Toast",props:pe,emits:["close","click"],setup:(e,o)=>{const l=t.ref(e.animate),s="fadeOut",a=t.computed(()=>e.options),u=t.ref(!1),f=t.computed(()=>a.value.title&&a.value.message),m=t.computed(()=>!a.value.title&&a.value.message),N=t.computed(()=>{const h={animated:u.value,toast:!0,"toast--only-content":!f.value};return h[e.animate]=!1,h[s]=u.value,h["toasty-type-"+a.value.type]=!0,a.value.theme&&(h[a.value.theme]=!0),h}),b=t.computed(()=>{const T=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,M={"f-icon":!0};return M[T]=!0,M}),x=t.computed(()=>a.value.title||a.value.message),v=t.computed(()=>e.showCloseButton),V=t.computed(()=>!!a.value.buttons||!!o.slots.default),C=t.computed(()=>Y.LocaleService.getLocale()==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function w(h){h.stopPropagation(),h.preventDefault(),u.value=!1,setTimeout(()=>{o.emit("close",a.value)},200)}function $(h,B){}function R(h){return`f-preten-link ${h.customClass?h.customClass:""}`}t.watch(l,()=>{l.value});const E=()=>{var h;return t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"after-toast-msg text-right"},[!o.slots.default&&((h=a.value.buttons)==null?void 0:h.map(B=>t.createVNode("span",{class:R(B),onClick:T=>void 0},[B.text]))),o.slots.default&&o.slots.default()])])};return()=>t.createVNode("div",{class:N.value,style:"min-height:44px"},[v.value&&t.createVNode("button",{title:Y.LocaleService.getLocaleValue("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:w},[t.createVNode("span",{class:"f-icon modal_close"},null)]),x.value&&t.createVNode("section",{class:"modal-tips"},[!f.value&&t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:b.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[f.value&&t.createVNode(t.Fragment,null,[t.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),t.createVNode("p",{class:"toast-msg",innerHTML:a.value.message,style:C.value},null),V.value&&E()]),m.value&&(a.value.buttons?t.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:C.value,innerHTML:a.value.message},null),t.createVNode("div",{class:"after-toast-title text-right ml-auto"},[E()])]):t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:C.value,innerHTML:a.value.message},null))])])])}}),A=t.defineComponent({name:"Notify",props:fe,emits:["close","empty"],setup(e,o){const l=t.computed(()=>({"farris-notify":!0})),s={left:12,right:12,top:20,bottom:12},a=t.ref(),u=t.ref(e.options),f=t.ref(e.showCloseButton),m=t.computed(()=>e.position||"bottom-right"),N=t.computed(()=>e.timeout!=null?e.timeout:3e3),b=t.computed(()=>{const V=e.bottom?e.bottom:s.bottom,C=e.top?e.top:s.top,w={transition:"all 0.2s ease",left:m.value.indexOf("left")>-1?`${e.left?e.left:s.left}px`:"",right:m.value.indexOf("right")>-1?`${e.right?e.right:s.right}px`:"",top:m.value.indexOf("top")>-1?`${C}px`:"",bottom:m.value.indexOf("bottom")>-1?`${V}px`:""};return m.value.indexOf("center")>-1&&(w.left="50%",w.marginLeft="calc(-24rem / 2)",m.value==="center-center"&&(w.top="50%",w.transform="translate(-50%, -50%)")),w});function x(V){o.emit("close")}N.value&&setTimeout(()=>{x()},N.value),o.expose({closeToast:x,container:a,notifyPosition:m});function v(V,C){x()}return()=>t.createVNode("div",{class:l.value,style:b.value,ref:a},[t.createVNode(Q,{options:u.value,showCloseButton:f.value,animate:e.animate,onClose:V=>v(V,u.value)},null)])}});class oe{constructor(){D(this,"notifyRefs",[]);D(this,"globalConfig",t.reactive({}))}escapeAllHtml(o){if(typeof o!="string"||!o)return"";const l=document.createElement("div");return l.textContent=o||"",l.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/\\r/g,"")}createNotifyInstance(o){const l=this,a=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...o}),u=document.createElement("div");u.style.display="contents";const f=t.createApp({setup(){var b;const m=t.ref();function N(){m.value.container.style.transform="scale(0)",setTimeout(()=>{l.updateNotifyPositionForClose(a,m),f.unmount()},220)}if(a.position.indexOf("top")>-1){const x=l.getNotifyInstances(a.position),v=x[x.length-1];if(v){const V=v.value.container.getBoundingClientRect();a.top=V.bottom}}return a.safeHtml&&((b=a.options)!=null&&b.message)&&(a.options.message=l.escapeAllHtml(a.options.message)),t.onUnmounted(()=>{document.body.removeChild(u)}),t.onMounted(()=>{l.updateNotifyPositionForCreate(a,m)}),()=>t.createVNode(t.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[t.createVNode(A,t.mergeProps({ref:m},a,{onClose:N}),null)]})}});return f.provide("NotifyService",this),document.body.appendChild(u),f.use(Y.LocaleService.i18n),f.mount(u),f}getNotifyInstances(o){return this.notifyRefs.filter(l=>l.value.notifyPosition===o)}updateNotifyPositionForCreate(o,l){if(this.notifyRefs&&this.notifyRefs.length){const s=window.innerHeight;o.position.indexOf("bottom")>-1&&this.getNotifyInstances(o.position).forEach(a=>{const u=a.value.container.getBoundingClientRect();a.value.container.style.bottom=u.height+s-u.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,l]}updateNotifyPositionForClose(o,l){const s=this.notifyRefs.indexOf(l);if(o.position.indexOf("top")>-1){const a=this.getNotifyInstances(o.position),u=a.indexOf(l);a.slice(u+1).forEach(f=>{f.value.container.style.top=f.value.container.offsetTop-f.value.container.offsetHeight+"px"})}s>-1&&this.notifyRefs.splice(s,1)}show(o){return this.createNotifyInstance(o)}buildNotifyProps(o,l){let s="",a="",u,f,m;typeof l=="string"?s=l:l&&(s=l.message||"",a=l.title||"",f=l.position||null,m=l.showCloseButton!=null?l.showCloseButton:null,u=l.timeout!=null?l.timeout:null);const b={options:{type:o,message:s,title:a}};return f!=null&&(b.position=f),m!=null&&(b.showCloseButton=m),u!=null&&(b.timeout=u),b}info(o){const l=this.buildNotifyProps("info",o);return this.show(l)}success(o){const l=this.buildNotifyProps("success",o);return this.show(l)}warning(o){const l=this.buildNotifyProps("warning",o);return this.show(l)}error(o){const l=this.buildNotifyProps("error",o);return this.show(l)}close(o){o&&o.unmount()}closeAll(){this.notifyRefs.forEach(o=>{o==null||o.value.closeToast()}),this.notifyRefs.length=0}}const ye=Symbol("NOTIFY_SERVICE_TOKEN");A.install=e=>{e.component(A.name,A),e.component(Q.name,Q);const o=new oe;e.provide(ye,o),e.provide("FNotifyService",o)};function ie(e){const{designViewModelUtils:o,schemaService:l,formSchemaUtils:s,designerContext:a}=e.editorParams.designerHostService,{viewModelId:u}=e.editorParams;let f=[],m=[],N=[];const b=new oe;b.globalConfig={position:"top-center"};function x(i){switch(i){case"LocaleVariable":return m;case"RemoteVariable":return N;default:return f}}function v(){f=o.getAllFields2TreeByVMId(u)}function V(){const i=s.getViewModelById(u);if(i.parent){const d=s.getLocaleVariablesByViewModelId(i.parent);d&&d.length&&(d[0].data.name="根组件",m=m.concat(d))}const r=s.getLocaleVariablesByViewModelId(u);m=m.concat(r)}function C(){N=s.getRemoteVariables()}function w(i){var c,g,F,S;const r=ee.merge({},i.rawData,{groupId:null,groupName:null}),d=(c=e.editorParams.componentSchema)==null?void 0:c.binding,y=(g=e.editorParams.componentSchema)==null?void 0:g.label,n=o.getDgViewModel(u);if(d!=null&&d.field){const I=n.fields.find(O=>O.id===d.field);if(n.removeField([d.field]),I){const{groupId:O,groupName:L,editor:P}=I;ee.merge(r,{editor:P,groupId:O,groupName:L})}}n.addField(r),(S=(F=e.editorParams.componentSchema)==null?void 0:F.editor)!=null&&S.type&&n.changeField(r.id,{editor:r.editor}),y&&n.changeField(r.id,{name:y})}function $(i){var n;const r=(n=e.editorParams.componentSchema)==null?void 0:n.binding,d=o.getDgViewModel(u),y={type:"Variable",id:i.id,fieldName:i.code,groupId:"",groupName:""};if(r!=null&&r.field){const c=s.getViewModelById(u),g=c==null?void 0:c.fields.find(F=>F.id===(r==null?void 0:r.field));g&&(y.groupName=g.groupName,y.groupId=g.groupId),d.removeField([r==null?void 0:r.field])}s.addViewModelField(u,y)}function R(i,r){if(!e.editorParams.needSyncToViewModel||!e.editorParams.viewModelId||!e.editorParams.designerHostService)return;const d=e.editorParams.componentSchema.binding;d&&d.field===i.id||(r==="Form"?w(i):$(i))}function E(i){if(!e.editorParams.needSyncToViewModel||!e.editorParams.viewModelId||!e.editorParams.designerHostService)return;const r=e.editorParams.componentSchema.binding;if(!(!r||r.field===i.id)&&s.getExpressions().length){const{componentSchema:d}=e.editorParams,y=s.getExpressions().findIndex(n=>n.target===r.field);y>-1&&(s.getExpressions().splice(y,1),b.warning("切换绑定后,请重新配置表达式"),Object.keys(d).forEach(n=>{d[n]&&d[n].type==="Expression"&&(d[n].expressionId=""),d.editor&&Object.keys(d.editor).forEach(c=>{d.editor[c]&&d.editor[c].type==="Expression"&&(d.editor[c].expressionId="")})}))}}function h(i){var d;[H.FormSchemaEntityFieldTypeName.Number,H.FormSchemaEntityFieldTypeName.String,H.FormSchemaEntityFieldTypeName.Text].includes(i.type.name)&&((d=i.type)==null?void 0:d.length)&&e.editorParams.componentSchema.editor&&!Object.prototype.hasOwnProperty.call(e.editorParams.componentSchema.editor,"maxLength")&&(e.editorParams.componentSchema.editor.maxLength=i.type.length)}function B(i,r){if(e.editorParams.componentSchema){switch(e.editorParams.componentSchema.binding||(e.editorParams.componentSchema.binding={}),r){case"Form":{e.editorParams.componentSchema.binding.path=i.bindingField,e.editorParams.componentSchema.binding.field=i.id,e.editorParams.componentSchema.binding.fullPath=i.path;break}case"LocaleVariable":{e.editorParams.componentSchema.binding.path=i.viewModelId===u?i.code:"root-component."+i.code,e.editorParams.componentSchema.binding.field=i.id,e.editorParams.componentSchema.binding.fullPath=i.code;break}case"RemoteVariable":{e.editorParams.componentSchema.binding.path="root-component."+i.code,e.editorParams.componentSchema.binding.field=i.id,e.editorParams.componentSchema.binding.fullPath=i.code;break}}return e.editorParams.componentSchema.binding.type=r,e.editorParams.componentSchema.path=i.bindingPath,h(i),e.editorParams.componentSchema.binding}}function T(i){const r=i==null?void 0:i.field,d=new Set,y=s.getFormSchema().module,n=s.getViewModelById(u),c=y.components.find(S=>S.viewModel===u),g=s.checkComponentExistInDrawer(c.id);let F=c.componentType;return(F==="frame"||F==="table")&&(F="form"),y.viewmodels.forEach(S=>{if(!S.fields||S.fields.length===0)return;const I=y.components.find(P=>P.viewModel===S.id);let{componentType:O}=I;if((O==="frame"||O==="table")&&(O="form"),O!==F||S.bindTo!==n.bindTo)return;const L=s.checkComponentExistInDrawer(I.id);g&&L&&S.fields.forEach(P=>{P.id!==r&&d.add(P.id)}),!g&&!L&&S.fields.forEach(P=>{P.id!==r&&d.add(P.id)})}),d}function M(i){if(!i)return[];const r={},d=a&&a.schemaDOMMapping?a.schemaDOMMapping:q.SchemaDOMMapping,{fieldControlTypeMapping:y}=d;for(const n in y){const c=y[n];!c||!c.length||c.forEach(g=>{r[g.key]=r[g.key]||[],r[g.key].push(n)})}return r["language-textbox"]=["multiLanguage"],r[i]}function X(){v(),V(),C()}function W(i,r){if(i.multiLanguage)return{fieldType:"multiLanguage",fieldTypeName:"多语言"};const d=r===q.FormBindingType.Form?i.type.name:i.type,y=r===q.FormBindingType.Form?i.type.displayName:i.displayTypeName;return{fieldType:d,fieldTypeName:y}}function G(){var n;const i=(n=e.editorParams)==null?void 0:n.componentSchema,r=i==null?void 0:i.binding;if(!r)return{originalFieldType:"",isOriginalBindComplexField:!1};let d,y=!1;if(r.type===q.FormBindingType.Form){const c=l.getFieldByID(r.field);c&&(d=W(c,q.FormBindingType.Form).fieldType,c.$type===H.FormSchemaEntityField$Type.ComplexField&&(y=!0))}else{const c=s.getVariableById(r.field);c&&(d=c.type)}return{originalFieldType:d,isOriginalBindComplexField:y}}function Z(i,r){var P,ae,le,se;if(!(i!=null&&i.length))return b.warning({message:"请先选择数据"}),!1;const d=(P=e.editorParams)==null?void 0:P.componentSchema;if(!(d==null?void 0:d.binding))return!0;let n=!0;const{originalFieldType:c,isOriginalBindComplexField:g}=G(),F=i[0],{fieldType:S,fieldTypeName:I}=W(F,r),O="不可以切换成",L="类型字段,请重新选择!";if(g||!c){const K=M((se=(le=(ae=e.editorParams)==null?void 0:ae.componentSchema)==null?void 0:le.editor)==null?void 0:se.type);return K!=null&&K.length&&!K.includes(S)&&(b.warning(`${O}${I}${L}`),n=!1),n}return c&&c!==S?e.editorParams.canChangeFieldType?!0:(b.warning(`${O}${I}${L}`),!1):n}return{initTreeData:X,getTreeDataSource:x,updateViewModel:R,updateComponentSchema:B,resolveOccupiedFields:T,resolveFieldTypesByEditorType:M,checkFieldValiation:Z,clearExpresssionConfig:E,getOriginalFieldType:G}}const U=t.defineComponent({name:"FBindingSelectorContainer",props:_,emits:["selected","bindingTypeChange","cancel","submit","skip"],setup(e,o){var r,d,y;const l=t.ref(e.data),s=t.ref(((r=e.modelValue)==null?void 0:r.type)||"Form"),a=t.ref(e.bindingData),u=t.ref(),f=t.ref(),m=t.ref(),{getTreeDataSource:N,initTreeData:b,resolveOccupiedFields:x,resolveFieldTypesByEditorType:v,getOriginalFieldType:V}=ie(e),C=t.ref([]),{originalFieldType:w,isOriginalBindComplexField:$}=V();t.onBeforeMount(()=>{var n,c,g,F,S,I;b(),l.value=N(s.value),(n=e.editorParams)!=null&&n.disableOccupiedFields&&(f.value=x((g=(c=e.editorParams)==null?void 0:c.componentSchema)==null?void 0:g.binding)),m.value=v((I=(S=(F=e.editorParams)==null?void 0:F.componentSchema)==null?void 0:S.editor)==null?void 0:I.type),C.value=s.value==="Form"?z:J}),t.onMounted(()=>{var c,g,F;const n=(F=(g=(c=e.editorParams)==null?void 0:c.componentSchema)==null?void 0:g.binding)==null?void 0:F.field;n&&u.value.selectRowById(n)});const R={"f-utils-fill":!0,"m-2":(d=e.bindingType)==null?void 0:d.enable,"mx-2":!((y=e.bindingType)!=null&&y.enable),border:!0};function E(n){C.value=n==="Form"?z:J,u.value.updateColumns(C.value),l.value=N(n),u.value.updateDataSource(l.value),u.value.clearSelection(),a.value=[],o.emit("selected",[]),o.emit("bindingTypeChange",n)}function h(n){a.value=n,o.emit("selected",n)}function B(){return t.createVNode("div",{class:"px-3"},[t.createVNode(de,{name:"bindingType",textField:e.bindingType.textField||"text",valueField:e.bindingType.valueField||"value",data:te,modelValue:s.value,"onUpdate:modelValue":n=>s.value=n,onChangeValue:E},null)])}function T(n){var c;return n.raw.multiLanguage?"multiLanguage":s.value==="Form"?(c=n.raw.type)==null?void 0:c.name:n.raw.type}const M={customRowStatus:n=>{var g;if(n.raw.$type&&n.raw.$type!==H.FormSchemaEntityField$Type.SimpleField||f.value&&f.value.has(n.raw.id))return n.disabled=!0,n;const c=T(n);if($||!w){if(c&&((g=m.value)!=null&&g.length)&&!m.value.includes(c))return n.disabled=!0,n}else if(w&&w!==c)return n.disabled=!0,n;return n.disabled=!1,n}};function X(){return t.createVNode(re,{ref:u,fit:!0,data:l.value,idField:e.idField,columns:C.value,rowNumber:{enable:!1},columnOption:{fitColumns:!0},onSelectionChange:h,"row-option":M},null)}function W(){o.emit("cancel")}function G(){if(!a.value||!a.value.length){const n=new ue.FNotifyService;return n.globalConfig={position:"top-center"},n.warning({message:"请先选择数据"}),!1}return!0}function Z(){G()&&o.emit("submit",{selectedData:a.value[0],bindingType:s.value})}function i(){o.emit("skip")}return()=>t.createVNode("div",{class:"h-100 d-flex flex-column"},[e.bindingType.enable&&B(),t.createVNode("div",{class:R,style:"position:relative;border-radius:10px;"},[t.createTextVNode(" "),X()]),e.showCustomFooter?t.createVNode("div",{class:"modal-footer"},[t.createVNode("button",{type:"button",class:"btn btn-secondary",onClick:W},[t.createTextVNode("取消")]),t.createVNode("button",{type:"button",class:"btn btn-secondary",onClick:i},[t.createTextVNode("跳过绑定")]),t.createVNode("button",{type:"button",class:"btn btn-primary",onClick:Z},[t.createTextVNode("确定")])]):""])}}),j=t.defineComponent({name:"FBindingSelector",props:_,emits:["selected","bindingTypeChanged"],setup(e,o){var h,B;const l='<i class="f-icon f-icon-lookup"></i>',s=t.ref(e.bindingData),a=t.ref(e.data),u=t.ref(),f=t.ref(((h=e.modelValue)==null?void 0:h.type)||"Form"),m=t.ref((B=e.modelValue)==null?void 0:B.path),{updateViewModel:N,updateComponentSchema:b,checkFieldValiation:x,clearExpresssionConfig:v}=ie(e);function V(T){s.value=T}function C(T){f.value=T}function w(T){m.value=T.path}function $(){return t.createVNode(U,{ref:u,data:a.value,onSelected:V,modelValue:e.modelValue,idField:e.idField,bindingData:s.value,onBindingTypeChange:C,editorParams:e.editorParams,bindingType:e.bindingType,showCustomFooter:!1},null)}function R(){return!!x(s.value,f.value)}const E={title:e.title,fitContent:!1,height:e.modalHeight,width:e.modalWidth,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:T=>(s.value=[],!0)},{name:"accept",text:"确定",class:"btn btn-primary",handle:T=>{if(!R())return!1;N(s.value[0],f.value),v(s.value[0]);const M=b(s.value[0],f.value);return w(M),e.onFieldSelected&&typeof e.onFieldSelected=="function"&&e.onFieldSelected(M,void 0,s.value[0]),!0}}],resizeable:!1,draggable:!0};return()=>t.createVNode(k,{modelValue:m.value,"onUpdate:modelValue":T=>m.value=T,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableClear:!1,buttonContent:l,buttonBehavior:"Modal",modalOptions:E},{default:()=>[t.createVNode("div",{class:"h-100 d-flex flex-column"},[$()])]})}});j.install=e=>{e.component(j.name,j),e.component(U.name,U)},j.register=(e,o,l,s)=>{e["binding-selector"]=j,o["binding-selector"]=ne},p.BindingSelector=j,p.FBindingSelectorContainer=U,p.bindingSelectorProps=_,p.bindingTypes=te,p.default=j,p.fieldColumns=z,p.propsResolver=ne,p.variableColumns=J,Object.defineProperties(p,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -1,8 +1,116 @@
1
- import { ref as b, nextTick as k, createVNode as u, Fragment as w, defineComponent as D } from "vue";
2
- import B from "../button/index.esm.js";
3
- import h from "../popover/index.esm.js";
4
- import { withInstall as C } from "../common/index.esm.js";
5
- const P = {
1
+ import { ref as b, nextTick as C, createVNode as r, Fragment as P, defineComponent as D, inject as S, onMounted as R } from "vue";
2
+ import j from "../button/index.esm.js";
3
+ import { resolveAppearance as F, createPropsResolver as G } from "../dynamic-resolver/index.esm.js";
4
+ import x from "../popover/index.esm.js";
5
+ import { useDesignerComponent as $ } from "../designer-canvas/index.esm.js";
6
+ import { withInstall as T } from "../common/index.esm.js";
7
+ const O = "https://json-schema.org/draft/2020-12/schema", q = "https://farris-design.gitee.io/button-group.schema.json", z = "button-group", A = "A Farris Component", N = "object", E = {
8
+ id: {
9
+ description: "The unique identifier for button-group",
10
+ type: "string"
11
+ },
12
+ type: {
13
+ description: "The type string of button-group",
14
+ type: "string",
15
+ default: "button-group"
16
+ },
17
+ appearance: {
18
+ description: "",
19
+ type: "object",
20
+ properties: {
21
+ class: {
22
+ type: "string"
23
+ },
24
+ style: {
25
+ type: "string"
26
+ }
27
+ },
28
+ default: {}
29
+ },
30
+ binding: {
31
+ description: "",
32
+ type: "object",
33
+ default: {}
34
+ },
35
+ disable: {
36
+ type: "string",
37
+ default: !1
38
+ },
39
+ editable: {
40
+ description: "",
41
+ type: "boolean",
42
+ default: !0
43
+ },
44
+ placeholder: {
45
+ description: "",
46
+ type: "string",
47
+ default: ""
48
+ },
49
+ readonly: {
50
+ description: "",
51
+ type: "boolean",
52
+ default: !1
53
+ },
54
+ require: {
55
+ description: "",
56
+ type: "boolean",
57
+ default: !1
58
+ },
59
+ tabindex: {
60
+ description: "",
61
+ type: "number",
62
+ default: -1
63
+ },
64
+ visible: {
65
+ description: "",
66
+ type: "boolean",
67
+ default: !0
68
+ }
69
+ }, H = [
70
+ "id",
71
+ "type"
72
+ ], V = {
73
+ $schema: O,
74
+ $id: q,
75
+ title: z,
76
+ description: A,
77
+ type: N,
78
+ properties: E,
79
+ required: H
80
+ };
81
+ function W(e, o, s) {
82
+ return o;
83
+ }
84
+ const J = /* @__PURE__ */ new Map([
85
+ ["appearance", F]
86
+ ]), K = "button-group", L = "A Farris Component", Q = "object", U = {
87
+ basic: {
88
+ description: "Basic Infomation",
89
+ title: "基本信息",
90
+ properties: {
91
+ id: {
92
+ description: "组件标识",
93
+ title: "标识",
94
+ type: "string",
95
+ readonly: !0
96
+ },
97
+ type: {
98
+ description: "组件类型",
99
+ title: "控件类型",
100
+ type: "select",
101
+ editor: {
102
+ type: "waiting for modification",
103
+ enum: []
104
+ }
105
+ }
106
+ }
107
+ }
108
+ }, X = {
109
+ title: K,
110
+ description: L,
111
+ type: Q,
112
+ categories: U
113
+ }, k = {
6
114
  /**
7
115
  * 组件标识
8
116
  */
@@ -38,136 +146,136 @@ const P = {
38
146
  * 按钮展示位置
39
147
  */
40
148
  placement: { type: String, default: "bottom-left" }
41
- };
42
- function S(e, i, p) {
43
- const r = b(), t = b(!1), l = b(), s = b(!1);
44
- function y() {
45
- const a = r.value;
46
- a && a.show(p.value);
149
+ }, B = G(k, V, J, W, X);
150
+ function Y(e, o, s) {
151
+ const u = b(), i = b(!1), a = b(), l = b(!1);
152
+ function g() {
153
+ const f = u.value;
154
+ f && f.show(s.value);
47
155
  }
48
- async function f() {
49
- t.value = !t.value, await k(), y();
156
+ async function p() {
157
+ i.value = !i.value, await C(), g();
50
158
  }
51
- function v() {
52
- t.value = !1, i.emit("changeState", t.value);
159
+ function d() {
160
+ i.value = !1, o.emit("changeState", i.value);
53
161
  }
54
- function o(a) {
55
- a.stopPropagation(), f(), i.emit("changeState", t.value);
162
+ function t(f) {
163
+ f.stopPropagation(), p(), o.emit("changeState", i.value);
56
164
  }
57
- function c(a, M) {
58
- a.stopPropagation(), !M.disabled && (t.value = !1, i.emit("change", { payload: a, button: M }), i.emit("click", { payload: a, button: M }));
165
+ function c(f, M) {
166
+ f.stopPropagation(), !M.disabled && (i.value = !1, o.emit("change", { payload: f, button: M }), o.emit("click", { payload: f, button: M }));
59
167
  }
60
- function g() {
61
- t.value && (l.value = setTimeout(() => {
62
- s.value || v();
168
+ function v() {
169
+ i.value && (a.value = setTimeout(() => {
170
+ l.value || d();
63
171
  }, 1e3));
64
172
  }
65
173
  function n() {
66
- l.value && (clearTimeout(l.value), l.value = null);
174
+ a.value && (clearTimeout(a.value), a.value = null);
67
175
  }
68
- function d(a) {
69
- s.value = !0;
176
+ function y(f) {
177
+ l.value = !0;
70
178
  }
71
- function m(a) {
72
- s.value = !1, g();
179
+ function m(f) {
180
+ l.value = !1, v();
73
181
  }
74
182
  return {
75
- hidePopup: v,
76
- onClickDropdownButton: o,
183
+ hidePopup: d,
184
+ onClickDropdownButton: t,
77
185
  onClickDropdownMenuItem: c,
78
- onMouseleaveDropdownButton: g,
186
+ onMouseleaveDropdownButton: v,
79
187
  onMouseenterDropdownButton: n,
80
- onMouseenterDropMenu: d,
188
+ onMouseenterDropMenu: y,
81
189
  onMouseleaveDropMenu: m,
82
- popoverRef: r,
83
- shouldPopupContent: t,
84
- togglePopup: f
190
+ popoverRef: u,
191
+ shouldPopupContent: i,
192
+ togglePopup: p
85
193
  };
86
194
  }
87
- function G(e, i, p) {
195
+ function Z(e, o, s) {
88
196
  const {
89
- hidePopup: r,
90
- onClickDropdownMenuItem: t,
91
- popoverRef: l,
92
- onMouseenterDropMenu: s,
93
- onMouseleaveDropMenu: y
94
- } = p;
95
- function f(o) {
96
- return u(w, null, [o.divider && u("div", {
197
+ hidePopup: u,
198
+ onClickDropdownMenuItem: i,
199
+ popoverRef: a,
200
+ onMouseenterDropMenu: l,
201
+ onMouseleaveDropMenu: g
202
+ } = s;
203
+ function p(t) {
204
+ return r(P, null, [t.divider && r("div", {
97
205
  class: "dropdown-divider"
98
- }, null), u("div", {
99
- id: o.id,
100
- class: "dropdown-item" + (o.disabled ? " disabled" : ""),
101
- onClick: (c) => t(c, o)
102
- }, [o.icon && u("i", {
103
- class: "f-icon dropdown-item-icon" + o.icon
104
- }, null), u("span", null, [o.text])])]);
105
- }
106
- function v(o) {
107
- return u(h, {
206
+ }, null), r("div", {
207
+ id: t.id,
208
+ class: "dropdown-item" + (t.disabled ? " disabled" : ""),
209
+ onClick: (c) => i(c, t)
210
+ }, [t.icon && r("i", {
211
+ class: "f-icon dropdown-item-icon" + t.icon
212
+ }, null), r("span", null, [t.text])])]);
213
+ }
214
+ function d(t) {
215
+ return r(x, {
108
216
  id: `${e.id}-popover`,
109
- ref: l,
217
+ ref: a,
110
218
  visible: !0,
111
219
  placement: e.placement,
112
220
  host: "body",
113
221
  fitContent: !0,
114
- onHidden: r,
222
+ onHidden: u,
115
223
  minWidth: 120
116
224
  }, {
117
- default: () => [u("div", {
225
+ default: () => [r("div", {
118
226
  class: "bg-white",
119
- onMouseenter: s,
120
- onMouseleave: y
121
- }, [o.map((c) => f(c))])]
227
+ onMouseenter: l,
228
+ onMouseleave: g
229
+ }, [t.map((c) => p(c))])]
122
230
  });
123
231
  }
124
232
  return {
125
- renderDropdownMenu: v
233
+ renderDropdownMenu: d
126
234
  };
127
235
  }
128
- function F(e, i) {
129
- const p = b(), r = b(), t = S(e, i, r), {
130
- onMouseleaveDropdownButton: l,
131
- onMouseenterDropdownButton: s,
132
- onClickDropdownButton: y,
133
- shouldPopupContent: f
134
- } = t, {
135
- renderDropdownMenu: v
136
- } = G(e, p, t), o = () => ({
236
+ function w(e, o) {
237
+ const s = b(), u = b(), i = Y(e, o, u), {
238
+ onMouseleaveDropdownButton: a,
239
+ onMouseenterDropdownButton: l,
240
+ onClickDropdownButton: g,
241
+ shouldPopupContent: p
242
+ } = i, {
243
+ renderDropdownMenu: d
244
+ } = Z(e, s, i), t = () => ({
137
245
  "margin-bottom": "2px"
138
246
  });
139
- function c(g) {
140
- return u("div", {
247
+ function c(v) {
248
+ return r("div", {
141
249
  class: "btn-group f-btn-group-dropdown",
142
- ref: p,
143
- onMouseleave: l,
144
- onMouseenter: s,
145
- style: o
146
- }, [u("button", {
147
- ref: r,
250
+ ref: s,
251
+ onMouseleave: a,
252
+ onMouseenter: l,
253
+ style: t
254
+ }, [r("button", {
255
+ ref: u,
148
256
  type: "button",
149
257
  class: "f-btn-dropdown",
150
- onClick: y
151
- }, [u("span", {
258
+ onClick: g
259
+ }, [r("span", {
152
260
  class: "f-icon f-icon-lookup"
153
- }, null)]), f.value && v(g)]);
261
+ }, null)]), p.value && d(v)]);
154
262
  }
155
263
  return {
156
264
  renderDropdownButton: c
157
265
  };
158
266
  }
159
- const R = /* @__PURE__ */ D({
267
+ const h = /* @__PURE__ */ D({
160
268
  name: "FButtonGroup",
161
- props: P,
269
+ props: k,
162
270
  emits: ["click", "change", "changeState"],
163
- setup(e, i) {
164
- const p = b(), r = e.data && e.data.slice(0, e.count) || [], t = e.data && e.data.slice(e.count) || [], l = (n) => n.type || e.type, s = (n) => n.disabled !== void 0 ? n.disabled : e.disabled, y = function(n) {
165
- const d = {
271
+ setup(e, o) {
272
+ const s = b(), u = e.data && e.data.slice(0, e.count) || [], i = e.data && e.data.slice(e.count) || [], a = (n) => n.type || e.type, l = (n) => n.disabled !== void 0 ? n.disabled : e.disabled, g = function(n) {
273
+ const y = {
166
274
  "f-btn-ml": (n.type && n.type !== "link" || e.type !== "link") && e.mode === "default",
167
275
  "btn-link": !n.type && !e.type || e.type === "link" || n.type === "link"
168
276
  }, m = n.type ? n.type : e.type && e.type !== "link" ? e.type : "";
169
- return m && (d[`btn-${m}`] = !0), d;
170
- }, f = function() {
277
+ return m && (y[`btn-${m}`] = !0), y;
278
+ }, p = function() {
171
279
  return {
172
280
  "position-relative": !0,
173
281
  "btn-group": e.mode === "group",
@@ -175,48 +283,96 @@ const R = /* @__PURE__ */ D({
175
283
  // 'btn-group-lg': props.size === 'large',
176
284
  // 'btn-group-sm': props.size === 'small',
177
285
  };
178
- }, v = () => ({
286
+ }, d = () => ({
179
287
  display: "inline-flex",
180
288
  "vertical-align": "middle",
181
289
  "margin-bottom": "2px"
182
290
  });
183
- function o(n, d) {
184
- i.emit("change", {
291
+ function t(n, y) {
292
+ o.emit("change", {
185
293
  payload: n,
186
- button: d
187
- }), i.emit("click", {
294
+ button: y
295
+ }), o.emit("click", {
188
296
  payload: n,
189
- button: d
297
+ button: y
190
298
  });
191
299
  }
192
300
  function c(n) {
193
- return u(B, {
194
- disabled: s(n),
301
+ return r(j, {
302
+ disabled: l(n),
195
303
  id: n.id,
196
304
  icon: n.icon,
197
305
  size: e.size,
198
- type: l(n),
199
- customClass: y(n),
200
- onClick: (d) => o(d, n)
306
+ type: a(n),
307
+ customClass: g(n),
308
+ onClick: (y) => t(y, n)
201
309
  }, {
202
310
  default: () => [n.text]
203
311
  });
204
312
  }
205
313
  const {
206
- renderDropdownButton: g
207
- } = F(e, i);
208
- return () => u("div", {
314
+ renderDropdownButton: v
315
+ } = w(e, o);
316
+ return () => r("div", {
317
+ class: "f-btn-group",
318
+ style: "position:relative;",
319
+ ref: s
320
+ }, [r("div", {
321
+ class: p(),
322
+ style: d()
323
+ }, [u.map((n) => c(n))]), !!i.length && v(i)]);
324
+ }
325
+ }), _ = /* @__PURE__ */ D({
326
+ name: "FButtonGroupDesign",
327
+ props: k,
328
+ emits: ["click", "changeState", "change", "clickMenuOut"],
329
+ setup(e, o) {
330
+ const s = b(), u = S("design-item-context"), i = $(s, u);
331
+ R(() => {
332
+ s.value.componentInstance = i;
333
+ }), o.expose(i.value);
334
+ const a = e.data && e.data.slice(0, e.count) || [], l = e.data && e.data.slice(e.count) || [], g = function(t) {
335
+ const c = {
336
+ btn: !0,
337
+ "f-btn-ml": t.type && t.type !== "link",
338
+ "btn-link": !!t.icon || !t.type,
339
+ "btn-icontext": !!t.icon,
340
+ disabled: t.disabled
341
+ };
342
+ return t.type && (c[`btn-${t.type}`] = !0), c;
343
+ };
344
+ function p(t) {
345
+ return r("div", null, [r("button", {
346
+ type: "button",
347
+ id: t.id,
348
+ title: t.id,
349
+ class: g(t)
350
+ }, [t.icon && r("i", {
351
+ class: `f-icon ${t.icon}`
352
+ }, null), !t.icon && t.text])]);
353
+ }
354
+ const {
355
+ renderDropdownButton: d
356
+ } = w(e, o);
357
+ return () => r("div", {
209
358
  class: "f-btn-group",
210
359
  style: "position:relative;",
211
- ref: p
212
- }, [u("div", {
213
- class: f(),
214
- style: v()
215
- }, [r.map((n) => c(n))]), !!t.length && g(t)]);
360
+ ref: s
361
+ }, [r("div", {
362
+ class: (e.size === "large" ? "btn-group-lg" : "btn-group-sm") + " btn-group f-btn-group-links"
363
+ }, [a.map((t) => p(t))]), !!l.length && d(l)]);
216
364
  }
217
- }), z = C(R);
365
+ });
366
+ h.register = (e, o, s, u) => {
367
+ e["button-group"] = h, o["button-group"] = B;
368
+ };
369
+ h.registerDesigner = (e, o, s) => {
370
+ e["button-group"] = _, o["button-group"] = B;
371
+ };
372
+ const re = T(h);
218
373
  export {
219
- R as FButtonGroup,
220
- P as buttonGroupProps,
221
- z as default
374
+ h as FButtonGroup,
375
+ k as buttonGroupProps,
376
+ re as default,
377
+ B as propsResolver
222
378
  };
@@ -1 +1 @@
1
- (function(u,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("../button/index.umd.js"),require("../popover/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../button/index.umd.js","../popover/index.umd.js","../common/index.umd.js"],e):(u=typeof globalThis<"u"?globalThis:u||self,e(u["button-group"]={},u.Vue,u.FButton,u.FPopover,u.common))})(this,function(u,e,D,h,B){"use strict";const k={id:String,data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},count:{type:Number,default:2},mode:{type:String,default:"default"},size:{type:String,default:"middle"},type:{type:String,default:"primary"},placement:{type:String,default:"bottom-left"}};function C(t,r,f){const a=e.ref(),o=e.ref(!1),d=e.ref(),c=e.ref(!1);function m(){const l=a.value;l&&l.show(f.value)}async function y(){o.value=!o.value,await e.nextTick(),m()}function b(){o.value=!1,r.emit("changeState",o.value)}function i(l){l.stopPropagation(),y(),r.emit("changeState",o.value)}function s(l,M){l.stopPropagation(),!M.disabled&&(o.value=!1,r.emit("change",{payload:l,button:M}),r.emit("click",{payload:l,button:M}))}function g(){o.value&&(d.value=setTimeout(()=>{c.value||b()},1e3))}function n(){d.value&&(clearTimeout(d.value),d.value=null)}function p(l){c.value=!0}function v(l){c.value=!1,g()}return{hidePopup:b,onClickDropdownButton:i,onClickDropdownMenuItem:s,onMouseleaveDropdownButton:g,onMouseenterDropdownButton:n,onMouseenterDropMenu:p,onMouseleaveDropMenu:v,popoverRef:a,shouldPopupContent:o,togglePopup:y}}function N(t,r,f){const{hidePopup:a,onClickDropdownMenuItem:o,popoverRef:d,onMouseenterDropMenu:c,onMouseleaveDropMenu:m}=f;function y(i){return e.createVNode(e.Fragment,null,[i.divider&&e.createVNode("div",{class:"dropdown-divider"},null),e.createVNode("div",{id:i.id,class:"dropdown-item"+(i.disabled?" disabled":""),onClick:s=>o(s,i)},[i.icon&&e.createVNode("i",{class:"f-icon dropdown-item-icon"+i.icon},null),e.createVNode("span",null,[i.text])])])}function b(i){return e.createVNode(h,{id:`${t.id}-popover`,ref:d,visible:!0,placement:t.placement,host:"body",fitContent:!0,onHidden:a,minWidth:120},{default:()=>[e.createVNode("div",{class:"bg-white",onMouseenter:c,onMouseleave:m},[i.map(s=>y(s))])]})}return{renderDropdownMenu:b}}function P(t,r){const f=e.ref(),a=e.ref(),o=C(t,r,a),{onMouseleaveDropdownButton:d,onMouseenterDropdownButton:c,onClickDropdownButton:m,shouldPopupContent:y}=o,{renderDropdownMenu:b}=N(t,f,o),i=()=>({"margin-bottom":"2px"});function s(g){return e.createVNode("div",{class:"btn-group f-btn-group-dropdown",ref:f,onMouseleave:d,onMouseenter:c,style:i},[e.createVNode("button",{ref:a,type:"button",class:"f-btn-dropdown",onClick:m},[e.createVNode("span",{class:"f-icon f-icon-lookup"},null)]),y.value&&b(g)])}return{renderDropdownButton:s}}const w=e.defineComponent({name:"FButtonGroup",props:k,emits:["click","change","changeState"],setup(t,r){const f=e.ref(),a=t.data&&t.data.slice(0,t.count)||[],o=t.data&&t.data.slice(t.count)||[],d=n=>n.type||t.type,c=n=>n.disabled!==void 0?n.disabled:t.disabled,m=function(n){const p={"f-btn-ml":(n.type&&n.type!=="link"||t.type!=="link")&&t.mode==="default","btn-link":!n.type&&!t.type||t.type==="link"||n.type==="link"},v=n.type?n.type:t.type&&t.type!=="link"?t.type:"";return v&&(p[`btn-${v}`]=!0),p},y=function(){return{"position-relative":!0,"btn-group":t.mode==="group","f-btn-group-links":t.type==="link"}},b=()=>({display:"inline-flex","vertical-align":"middle","margin-bottom":"2px"});function i(n,p){r.emit("change",{payload:n,button:p}),r.emit("click",{payload:n,button:p})}function s(n){return e.createVNode(D,{disabled:c(n),id:n.id,icon:n.icon,size:t.size,type:d(n),customClass:m(n),onClick:p=>i(p,n)},{default:()=>[n.text]})}const{renderDropdownButton:g}=P(t,r);return()=>e.createVNode("div",{class:"f-btn-group",style:"position:relative;",ref:f},[e.createVNode("div",{class:y(),style:b()},[a.map(n=>s(n))]),!!o.length&&g(o)])}}),V=B.withInstall(w);u.FButtonGroup=w,u.buttonGroupProps=k,u.default=V,Object.defineProperties(u,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(s,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../button/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../button/index.umd.js","../dynamic-resolver/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js"],t):(s=typeof globalThis<"u"?globalThis:s||self,t(s["button-group"]={},s.Vue,s.FButton,s.dynamicResolver,s.FPopover,s.designerCanvas,s.common))})(this,function(s,t,C,D,j,N,V){"use strict";const x={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-group.schema.json",title:"button-group",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for button-group",type:"string"},type:{description:"The type string of button-group",type:"string",default:"button-group"},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"]};function P(e,i,c){return i}const S=new Map([["appearance",D.resolveAppearance]]),$={title:"button-group",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:[]}}}}}},v={id:String,data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},count:{type:Number,default:2},mode:{type:String,default:"default"},size:{type:String,default:"middle"},type:{type:String,default:"primary"},placement:{type:String,default:"bottom-left"}},k=D.createPropsResolver(v,x,S,P,$);function G(e,i,c){const a=t.ref(),r=t.ref(!1),u=t.ref(),d=t.ref(!1);function g(){const y=a.value;y&&y.show(c.value)}async function p(){r.value=!r.value,await t.nextTick(),g()}function f(){r.value=!1,i.emit("changeState",r.value)}function n(y){y.stopPropagation(),p(),i.emit("changeState",r.value)}function l(y,B){y.stopPropagation(),!B.disabled&&(r.value=!1,i.emit("change",{payload:y,button:B}),i.emit("click",{payload:y,button:B}))}function m(){r.value&&(u.value=setTimeout(()=>{d.value||f()},1e3))}function o(){u.value&&(clearTimeout(u.value),u.value=null)}function b(y){d.value=!0}function M(y){d.value=!1,m()}return{hidePopup:f,onClickDropdownButton:n,onClickDropdownMenuItem:l,onMouseleaveDropdownButton:m,onMouseenterDropdownButton:o,onMouseenterDropMenu:b,onMouseleaveDropMenu:M,popoverRef:a,shouldPopupContent:r,togglePopup:p}}function R(e,i,c){const{hidePopup:a,onClickDropdownMenuItem:r,popoverRef:u,onMouseenterDropMenu:d,onMouseleaveDropMenu:g}=c;function p(n){return t.createVNode(t.Fragment,null,[n.divider&&t.createVNode("div",{class:"dropdown-divider"},null),t.createVNode("div",{id:n.id,class:"dropdown-item"+(n.disabled?" disabled":""),onClick:l=>r(l,n)},[n.icon&&t.createVNode("i",{class:"f-icon dropdown-item-icon"+n.icon},null),t.createVNode("span",null,[n.text])])])}function f(n){return t.createVNode(j,{id:`${e.id}-popover`,ref:u,visible:!0,placement:e.placement,host:"body",fitContent:!0,onHidden:a,minWidth:120},{default:()=>[t.createVNode("div",{class:"bg-white",onMouseenter:d,onMouseleave:g},[n.map(l=>p(l))])]})}return{renderDropdownMenu:f}}function w(e,i){const c=t.ref(),a=t.ref(),r=G(e,i,a),{onMouseleaveDropdownButton:u,onMouseenterDropdownButton:d,onClickDropdownButton:g,shouldPopupContent:p}=r,{renderDropdownMenu:f}=R(e,c,r),n=()=>({"margin-bottom":"2px"});function l(m){return t.createVNode("div",{class:"btn-group f-btn-group-dropdown",ref:c,onMouseleave:u,onMouseenter:d,style:n},[t.createVNode("button",{ref:a,type:"button",class:"f-btn-dropdown",onClick:g},[t.createVNode("span",{class:"f-icon f-icon-lookup"},null)]),p.value&&f(m)])}return{renderDropdownButton:l}}const h=t.defineComponent({name:"FButtonGroup",props:v,emits:["click","change","changeState"],setup(e,i){const c=t.ref(),a=e.data&&e.data.slice(0,e.count)||[],r=e.data&&e.data.slice(e.count)||[],u=o=>o.type||e.type,d=o=>o.disabled!==void 0?o.disabled:e.disabled,g=function(o){const b={"f-btn-ml":(o.type&&o.type!=="link"||e.type!=="link")&&e.mode==="default","btn-link":!o.type&&!e.type||e.type==="link"||o.type==="link"},M=o.type?o.type:e.type&&e.type!=="link"?e.type:"";return M&&(b[`btn-${M}`]=!0),b},p=function(){return{"position-relative":!0,"btn-group":e.mode==="group","f-btn-group-links":e.type==="link"}},f=()=>({display:"inline-flex","vertical-align":"middle","margin-bottom":"2px"});function n(o,b){i.emit("change",{payload:o,button:b}),i.emit("click",{payload:o,button:b})}function l(o){return t.createVNode(C,{disabled:d(o),id:o.id,icon:o.icon,size:e.size,type:u(o),customClass:g(o),onClick:b=>n(b,o)},{default:()=>[o.text]})}const{renderDropdownButton:m}=w(e,i);return()=>t.createVNode("div",{class:"f-btn-group",style:"position:relative;",ref:c},[t.createVNode("div",{class:p(),style:f()},[a.map(o=>l(o))]),!!r.length&&m(r)])}}),F=t.defineComponent({name:"FButtonGroupDesign",props:v,emits:["click","changeState","change","clickMenuOut"],setup(e,i){const c=t.ref(),a=t.inject("design-item-context"),r=N.useDesignerComponent(c,a);t.onMounted(()=>{c.value.componentInstance=r}),i.expose(r.value);const u=e.data&&e.data.slice(0,e.count)||[],d=e.data&&e.data.slice(e.count)||[],g=function(n){const l={btn:!0,"f-btn-ml":n.type&&n.type!=="link","btn-link":!!n.icon||!n.type,"btn-icontext":!!n.icon,disabled:n.disabled};return n.type&&(l[`btn-${n.type}`]=!0),l};function p(n){return t.createVNode("div",null,[t.createVNode("button",{type:"button",id:n.id,title:n.id,class:g(n)},[n.icon&&t.createVNode("i",{class:`f-icon ${n.icon}`},null),!n.icon&&n.text])])}const{renderDropdownButton:f}=w(e,i);return()=>t.createVNode("div",{class:"f-btn-group",style:"position:relative;",ref:c},[t.createVNode("div",{class:(e.size==="large"?"btn-group-lg":"btn-group-sm")+" btn-group f-btn-group-links"},[u.map(n=>p(n))]),!!d.length&&f(d)])}});h.register=(e,i,c,a)=>{e["button-group"]=h,i["button-group"]=k},h.registerDesigner=(e,i,c)=>{e["button-group"]=F,i["button-group"]=k};const q=V.withInstall(h);s.FButtonGroup=h,s.buttonGroupProps=v,s.default=q,s.propsResolver=k,Object.defineProperties(s,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});