@farris/ui-vue 1.3.0 → 1.3.3

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 (305) hide show
  1. package/components/accordion/index.esm.js +103 -99
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +454 -398
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/binding-selector/index.esm.js +444 -0
  6. package/components/binding-selector/index.umd.cjs +1 -0
  7. package/components/binding-selector/package.json +8 -0
  8. package/components/border-editor/index.esm.js +5 -3
  9. package/components/border-editor/index.umd.cjs +1 -1
  10. package/components/button-edit/index.esm.js +143 -139
  11. package/components/button-edit/index.umd.cjs +1 -1
  12. package/components/calendar/index.esm.js +479 -476
  13. package/components/calendar/index.umd.cjs +1 -1
  14. package/components/capsule/index.esm.js +255 -252
  15. package/components/capsule/index.umd.cjs +1 -1
  16. package/components/checkbox/index.esm.js +652 -567
  17. package/components/checkbox/index.umd.cjs +1 -1
  18. package/components/color-picker/index.esm.js +518 -521
  19. package/components/color-picker/index.umd.cjs +2 -2
  20. package/components/combo-list/index.esm.js +659 -553
  21. package/components/combo-list/index.umd.cjs +1 -1
  22. package/components/combo-tree/index.esm.js +162 -155
  23. package/components/combo-tree/index.umd.cjs +1 -1
  24. package/components/common/index.esm.js +866 -747
  25. package/components/common/index.umd.cjs +1 -1
  26. package/components/component/index.esm.js +371 -998
  27. package/components/component/index.umd.cjs +1 -1
  28. package/components/condition/index.esm.js +1174 -1280
  29. package/components/condition/index.umd.cjs +1 -1
  30. package/components/content-container/index.esm.js +340 -991
  31. package/components/content-container/index.umd.cjs +1 -1
  32. package/components/data-grid/index.esm.js +6066 -5847
  33. package/components/data-grid/index.umd.cjs +1 -1
  34. package/components/data-view/index.esm.js +3400 -3486
  35. package/components/data-view/index.umd.cjs +1 -1
  36. package/components/date-picker/index.esm.js +2328 -2446
  37. package/components/date-picker/index.umd.cjs +1 -1
  38. package/components/designer-canvas/index.css +1 -1
  39. package/components/designer-canvas/index.esm.js +9551 -1200
  40. package/components/designer-canvas/index.umd.cjs +1 -1
  41. package/components/designer-outline/index.esm.js +2 -1
  42. package/components/designer-outline/index.umd.cjs +1 -1
  43. package/components/drawer/index.esm.js +34 -38
  44. package/components/drawer/index.umd.cjs +1 -1
  45. package/components/dropdown/index.esm.js +234 -231
  46. package/components/dropdown/index.umd.cjs +2 -2
  47. package/components/dynamic-form/index.esm.js +1996 -2630
  48. package/components/dynamic-form/index.umd.cjs +1 -1
  49. package/components/dynamic-resolver/index.esm.js +138 -123
  50. package/components/dynamic-resolver/index.umd.cjs +1 -1
  51. package/components/dynamic-view/index.esm.js +218 -218
  52. package/components/dynamic-view/index.umd.cjs +1 -1
  53. package/components/event-parameter/index.esm.js +311 -0
  54. package/components/event-parameter/index.umd.cjs +1 -0
  55. package/components/event-parameter/package.json +8 -0
  56. package/components/events-editor/index.css +1 -1
  57. package/components/events-editor/index.esm.js +548 -586
  58. package/components/events-editor/index.umd.cjs +1 -1
  59. package/components/expression-editor/index.esm.js +95 -91
  60. package/components/expression-editor/index.umd.cjs +1 -1
  61. package/components/external-container/index.esm.js +2871 -3736
  62. package/components/external-container/index.umd.cjs +1 -1
  63. package/components/field-selector/index.esm.js +3380 -3645
  64. package/components/field-selector/index.umd.cjs +1 -1
  65. package/components/filter-bar/index.css +1 -1
  66. package/components/filter-bar/index.esm.js +10543 -3207
  67. package/components/filter-bar/index.umd.cjs +1 -1
  68. package/components/flow-canvas/index.css +1 -1
  69. package/components/flow-canvas/index.esm.js +9775 -1312
  70. package/components/flow-canvas/index.umd.cjs +1 -1
  71. package/components/image-cropper/index.esm.js +442 -438
  72. package/components/image-cropper/index.umd.cjs +1 -1
  73. package/components/input-group/index.esm.js +587 -807
  74. package/components/input-group/index.umd.cjs +1 -1
  75. package/components/layout/index.esm.js +415 -381
  76. package/components/layout/index.umd.cjs +1 -1
  77. package/components/list-nav/index.esm.js +361 -1024
  78. package/components/list-nav/index.umd.cjs +1 -1
  79. package/components/list-view/index.esm.js +2265 -2371
  80. package/components/list-view/index.umd.cjs +1 -1
  81. package/components/lookup/index.esm.js +6425 -6257
  82. package/components/lookup/index.umd.cjs +1 -1
  83. package/components/mapping-editor/index.esm.js +6164 -5946
  84. package/components/mapping-editor/index.umd.cjs +1 -1
  85. package/components/message-box/index.esm.js +252 -252
  86. package/components/message-box/index.umd.cjs +1 -1
  87. package/components/modal/index.esm.js +70 -70
  88. package/components/modal/index.umd.cjs +1 -1
  89. package/components/nav/index.esm.js +524 -1474
  90. package/components/nav/index.umd.cjs +3 -3
  91. package/components/number-range/index.esm.js +547 -502
  92. package/components/number-range/index.umd.cjs +1 -1
  93. package/components/number-spinner/index.esm.js +646 -574
  94. package/components/number-spinner/index.umd.cjs +1 -1
  95. package/components/order/index.esm.js +1181 -2028
  96. package/components/order/index.umd.cjs +1 -1
  97. package/components/page-footer/index.esm.js +134 -131
  98. package/components/page-footer/index.umd.cjs +1 -1
  99. package/components/page-header/index.esm.js +1185 -2027
  100. package/components/page-header/index.umd.cjs +1 -1
  101. package/components/pagination/index.esm.js +442 -1368
  102. package/components/pagination/index.umd.cjs +1 -1
  103. package/components/progress/index.esm.js +238 -235
  104. package/components/progress/index.umd.cjs +3 -3
  105. package/components/property-editor/index.esm.js +1635 -1713
  106. package/components/property-editor/index.umd.cjs +2 -2
  107. package/components/property-panel/index.esm.js +791 -716
  108. package/components/property-panel/index.umd.cjs +1 -1
  109. package/components/query-solution/index.css +1 -1
  110. package/components/query-solution/index.esm.js +12203 -5274
  111. package/components/query-solution/index.umd.cjs +6 -1
  112. package/components/radio-button/index.esm.js +97 -97
  113. package/components/radio-button/index.umd.cjs +1 -1
  114. package/components/radio-group/index.css +1 -1
  115. package/components/radio-group/index.esm.js +1873 -520
  116. package/components/radio-group/index.umd.cjs +1 -1
  117. package/components/rate/index.esm.js +299 -300
  118. package/components/rate/index.umd.cjs +1 -1
  119. package/components/response-layout/index.esm.js +176 -173
  120. package/components/response-layout/index.umd.cjs +1 -1
  121. package/components/response-layout-editor/index.esm.js +715 -659
  122. package/components/response-layout-editor/index.umd.cjs +1 -1
  123. package/components/response-toolbar/index.esm.js +1032 -1883
  124. package/components/response-toolbar/index.umd.cjs +1 -1
  125. package/components/schema-selector/index.esm.js +4767 -5693
  126. package/components/schema-selector/index.umd.cjs +2 -2
  127. package/components/search-box/index.esm.js +169 -161
  128. package/components/search-box/index.umd.cjs +1 -1
  129. package/components/section/index.esm.js +490 -1167
  130. package/components/section/index.umd.cjs +1 -1
  131. package/components/smoke-detector/index.esm.js +154 -151
  132. package/components/smoke-detector/index.umd.cjs +1 -1
  133. package/components/splitter/index.esm.js +575 -1204
  134. package/components/splitter/index.umd.cjs +1 -1
  135. package/components/splitter/style.js +2 -0
  136. package/components/step/index.esm.js +279 -276
  137. package/components/step/index.umd.cjs +1 -1
  138. package/components/switch/index.esm.js +478 -428
  139. package/components/switch/index.umd.cjs +1 -1
  140. package/components/tabs/index.esm.js +2591 -3326
  141. package/components/tabs/index.umd.cjs +1 -1
  142. package/components/tags/index.esm.js +442 -439
  143. package/components/tags/index.umd.cjs +1 -1
  144. package/components/text/index.esm.js +309 -307
  145. package/components/text/index.umd.cjs +1 -1
  146. package/components/textarea/index.esm.js +500 -430
  147. package/components/textarea/index.umd.cjs +1 -1
  148. package/components/time-picker/index.esm.js +1391 -1341
  149. package/components/time-picker/index.umd.cjs +1 -1
  150. package/components/transfer/index.esm.js +574 -575
  151. package/components/transfer/index.umd.cjs +1 -1
  152. package/components/tree-grid/index.esm.js +3422 -3536
  153. package/components/tree-grid/index.umd.cjs +1 -1
  154. package/components/tree-view/index.esm.js +2661 -2764
  155. package/components/tree-view/index.umd.cjs +1 -1
  156. package/components/uploader/index.esm.js +675 -674
  157. package/components/uploader/index.umd.cjs +2 -2
  158. package/components/verify-detail/index.esm.js +300 -297
  159. package/components/verify-detail/index.umd.cjs +1 -1
  160. package/components/video/index.esm.js +454 -1089
  161. package/components/video/index.umd.cjs +1 -1
  162. package/components/weather/index.esm.js +709 -706
  163. package/components/weather/index.umd.cjs +5 -5
  164. package/farris.all.esm.js +54780 -52757
  165. package/farris.all.umd.cjs +14 -9
  166. package/index.css +1 -1
  167. package/package.json +1 -1
  168. package/types/binding-selector/index.d.ts +55 -0
  169. package/types/binding-selector/src/binding-selector.component.d.ts +11 -0
  170. package/types/binding-selector/src/binding-selector.props.d.ts +52 -0
  171. package/types/binding-selector/src/components/binding-selector-container.component.d.ts +13 -0
  172. package/types/binding-selector/src/composition/use-field-selection.d.ts +9 -0
  173. package/types/combo-list/src/components/list-container.component.d.ts +6 -6
  174. package/types/combo-list/src/components/list-container.props.d.ts +1 -1
  175. package/types/combo-tree/src/components/tree-container.component.d.ts +5 -5
  176. package/types/common/directive/area-response.d.ts +10 -0
  177. package/types/common/entity/entity-schema.d.ts +26 -11
  178. package/types/common/index.d.ts +9 -0
  179. package/types/common/radio-checkbox/radio-checkbox.props.d.ts +1 -0
  180. package/types/common/types.d.ts +2 -2
  181. package/types/common/utils/resolve-field.d.ts +2 -0
  182. package/types/common/utils/use-class.d.ts +7 -0
  183. package/types/component/src/designer/use-designer-rules.d.ts +2 -2
  184. package/types/condition/src/condition-fields.design.component.d.ts +18 -0
  185. package/types/condition/src/types.d.ts +5 -4
  186. package/types/content-container/src/designer/use-designer-rules.d.ts +3 -3
  187. package/types/data-grid/index.d.ts +8 -5
  188. package/types/data-grid/src/composition/data-grid-component-creator.service.d.ts +20 -0
  189. package/types/data-grid/src/{designer/data-grid-column.props.d.ts → data-grid-column.props.d.ts} +1 -1
  190. package/types/data-grid/src/data-grid.component.d.ts +3 -2
  191. package/types/data-grid/src/data-grid.props.d.ts +2 -2
  192. package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
  193. package/types/data-grid/src/designer/grid-field-editor.component.d.ts +14 -14
  194. package/types/data-grid/src/designer/use-designer-rules.d.ts +2 -2
  195. package/types/data-grid/src/schema/schema-resolver.d.ts +1 -1
  196. package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
  197. package/types/data-view/composition/data/use-tree-data.d.ts +1 -1
  198. package/types/data-view/composition/types.d.ts +9 -11
  199. package/types/date-picker/src/components/calendar/calendar.component.d.ts +3 -3
  200. package/types/date-picker/src/components/month/month.component.d.ts +3 -3
  201. package/types/date-picker/src/components/year/year.component.d.ts +3 -3
  202. package/types/designer-canvas/index.d.ts +3 -1
  203. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  204. package/types/designer-canvas/src/composition/function/drag-resolve.d.ts +5 -0
  205. package/types/designer-canvas/src/composition/rule/use-dragula-common-rule.d.ts +4 -0
  206. package/types/designer-canvas/src/composition/rule/use-template-rule.d.ts +30 -0
  207. package/types/designer-canvas/src/composition/types.d.ts +49 -41
  208. package/types/designer-canvas/src/types.d.ts +10 -21
  209. package/types/dynamic-form/index.d.ts +1 -1
  210. package/types/dynamic-form/src/designer/form-group-use-designer-rules.d.ts +3 -0
  211. package/types/dynamic-form/src/designer/response-form-use-designer-rules.d.ts +3 -0
  212. package/types/dynamic-form/src/designer/response-form.design.component.d.ts +7 -1
  213. package/types/dynamic-form/src/property-config/{form.property-config.d.ts → response-form.property-config.d.ts} +1 -1
  214. package/types/dynamic-form/src/schema/{schema-resolver.d.ts → response-form-schema-resolver.d.ts} +1 -1
  215. package/types/dynamic-form/src/types.d.ts +1 -1
  216. package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +6 -1
  217. package/types/dynamic-resolver/src/converter/row-number.converter.d.ts +3 -0
  218. package/types/entity-binding-selector/composition/use-entity-tree.d.ts +7 -0
  219. package/types/entity-binding-selector/entity-binding-selector.component.d.ts +11 -0
  220. package/types/entity-binding-selector/entity-binding-selector.props.d.ts +3 -0
  221. package/types/enum-editor/src/components/enum-editor-container.component.d.ts +3 -3
  222. package/types/enum-editor/src/enum-editor.component.d.ts +3 -3
  223. package/types/event-parameter/index.d.ts +31 -0
  224. package/types/event-parameter/src/composition/type.d.ts +77 -0
  225. package/types/event-parameter/src/composition/use-editor-combotree.d.ts +3 -0
  226. package/types/event-parameter/src/composition/use-editor-input.d.ts +3 -0
  227. package/types/event-parameter/src/composition/use-editor-select.d.ts +3 -0
  228. package/types/event-parameter/src/composition/use-editor-switch.d.ts +3 -0
  229. package/types/event-parameter/src/composition/use-editor.d.ts +3 -0
  230. package/types/event-parameter/src/event-parameter.component.d.ts +8 -0
  231. package/types/event-parameter/src/event-parameter.props.d.ts +34 -0
  232. package/types/external-container/src/designer/import-external-schema.component.d.ts +1 -1
  233. package/types/external-container/src/designer/use-designer-rules.d.ts +3 -3
  234. package/types/field-selector/src/field-selector.component.d.ts +1 -2
  235. package/types/field-selector/src/field-selector.props.d.ts +0 -9
  236. package/types/input-group/src/designer/use-input-group-rules.d.ts +1 -2
  237. package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +3 -3
  238. package/types/list-nav/src/designer/use-designer-rules.d.ts +3 -0
  239. package/types/list-view/src/designer/list-view-table.design.component.d.ts +15 -0
  240. package/types/list-view/src/list-view-table.component.d.ts +15 -0
  241. package/types/lookup/src/composition/use-user-data.d.ts +2 -2
  242. package/types/lookup/src/property-config/lookup.property-config.d.ts +2 -6
  243. package/types/modal/src/composition/modal.service.d.ts +2 -1
  244. package/types/page-header/src/designer/page-header.design.component.d.ts +1 -1
  245. package/types/page-header/src/page-header.component.d.ts +1 -1
  246. package/types/pagination/src/components/buttons/goto-buttons.component.d.ts +2 -2
  247. package/types/pagination/src/components/buttons/next-buttons.component.d.ts +2 -2
  248. package/types/pagination/src/components/buttons/previous-buttons.component.d.ts +2 -2
  249. package/types/pagination/src/components/pages/page-list.component.d.ts +2 -2
  250. package/types/pagination/src/components/pages/page-number.component.d.ts +2 -2
  251. package/types/property-panel/index.d.ts +3 -1
  252. package/types/property-panel/src/composition/entity/input-base-property.d.ts +1 -1
  253. package/types/property-panel/src/composition/entity/property-entity.d.ts +1 -1
  254. package/types/property-panel/src/composition/type.d.ts +0 -13
  255. package/types/query-solution/src/composition/types.d.ts +35 -4
  256. package/types/query-solution/src/composition/use-header.d.ts +21 -0
  257. package/types/query-solution/src/composition/{use-filter.d.ts → use-http.d.ts} +2 -2
  258. package/types/query-solution/src/composition/use-solution.d.ts +20 -0
  259. package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +43 -35
  260. package/types/query-solution/src/designer/query-solution-config/composition/use-panel.d.ts +2 -16
  261. package/types/query-solution/src/designer/query-solution-config/composition/use-property.d.ts +19 -0
  262. package/types/query-solution/src/designer/query-solution-config/composition/use-querysolution-rules.d.ts +3 -0
  263. package/types/query-solution/src/designer/query-solution-config/composition/use-transfer.d.ts +1 -1
  264. package/types/query-solution/src/designer/query-solution-config/query-solution-config.props.d.ts +14 -14
  265. package/types/query-solution/src/property-config/query-solution.property-config.d.ts +12 -0
  266. package/types/query-solution/src/query-solution.d.ts +10 -2
  267. package/types/query-solution/src/solutions.d.ts +108 -509
  268. package/types/radio-group/src/designer/item-collection-editor-inner.component.d.ts +29 -0
  269. package/types/radio-group/src/designer/item-collection-editor.component.d.ts +29 -0
  270. package/types/radio-group/src/designer/item-collection-editor.props.d.ts +21 -0
  271. package/types/radio-group/src/schema/schema-mapper.d.ts +1 -0
  272. package/types/radio-group/src/schema/schema-resolver.d.ts +1 -0
  273. package/types/response-layout-editor/index.d.ts +3 -1
  274. package/types/response-toolbar/src/designer/use-designer-rules.d.ts +3 -3
  275. package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -0
  276. package/types/response-toolbar/src/property-config/response-toolbar.property-config.d.ts +1 -0
  277. package/types/section/src/designer/use-designer-rules.d.ts +3 -3
  278. package/types/section/src/property-config/section.property-config.d.ts +17 -17
  279. package/types/section/src/schema/schema-resolver.d.ts +1 -2
  280. package/types/section/src/schema/toolbar-resolver.d.ts +1 -1
  281. package/types/splitter/src/components/splitter-pane.component.d.ts +1 -1
  282. package/types/splitter/src/designer/splitter-pane-use-designer-rules.d.ts +3 -3
  283. package/types/splitter/src/designer/splitter-use-designer-rules.d.ts +3 -3
  284. package/types/tabs/src/composition/types.d.ts +4 -1
  285. package/types/tabs/src/designer/tab-page-use-designer-rules.d.ts +3 -3
  286. package/types/tabs/src/designer/tab-use-designer-rules.d.ts +3 -3
  287. package/types/tabs/src/property-config/tab-page.property-config.d.ts +9 -59
  288. package/types/tabs/src/property-config/tabs.property-config.d.ts +8 -71
  289. package/types/tabs/src/schema/schema-resolver.d.ts +1 -2
  290. package/types/text/src/composition/types.d.ts +4 -4
  291. package/types/textarea/src/property-config/textarea.property-config.d.ts +23 -0
  292. package/types/tree-grid/index.d.ts +3 -3
  293. package/types/tree-grid/src/tree-grid.component.d.ts +1 -1
  294. package/types/weather/src/composition/use-weather-charts.d.ts +15 -0
  295. package/types/weather/src/composition/use-weather-color.d.ts +15 -0
  296. package/types/weather/src/composition/use-weather-data.d.ts +15 -0
  297. package/types/weather/src/composition/use-weather-format-number.d.ts +15 -0
  298. package/types/designer-canvas/src/composition/rule/use-drag-drop-rules.d.ts +0 -19
  299. package/types/designer-canvas/src/composition/use-dragula-common-rule.d.ts +0 -4
  300. package/types/dynamic-form/src/designer/use-designer-rules.d.ts +0 -3
  301. package/types/list-nav/src/composition/use-designer-rules.d.ts +0 -3
  302. package/types/property-panel/src/composition/entity/use-input-rules.d.ts +0 -3
  303. package/types/query-solution/src/designer/query-solution-config/composition/mock-data.d.ts +0 -6
  304. package/types/tree-grid/src/schema/column-resolver.d.ts +0 -3
  305. package/types/weather/src/composition/types.d.ts +0 -2
@@ -1 +1 @@
1
- (function(O,x){typeof exports=="object"&&typeof module<"u"?x(exports,require("../common/index.umd.js"),require("vue"),require("lodash-es")):typeof define=="function"&&define.amd?define(["exports","../common/index.umd.js","vue","lodash-es"],x):(O=typeof globalThis<"u"?globalThis:O||self,x(O.tags={},O.common,O.Vue,O.LodashES))})(this,function(O,x,e,Q){"use strict";function Te(n,t,m){return t}const pe={},ge={};function U(n){const{properties:t,title:m,ignore:p}=n,r=p&&Array.isArray(p),y=Object.keys(t).reduce((v,w)=>((!r||!p.find(A=>A==w))&&(v[w]=t[w].type==="object"&&t[w].properties?U(t[w]):Q.cloneDeep(t[w].default)),v),{});return(!r||!p.find(v=>v=="id"))&&(y.id=`${m}-${Date.now()}`),y}function Y(n,t={},m){const p=pe[n];if(p){let r=U(p);const y=ge[n];return r=y?y({getSchemaByType:Y},r,t,m):r,r}return null}function we(n,t){const m=U(t);return Object.keys(n).reduce((p,r)=>(p[r]&&Q.isPlainObject(p[r])&&Q.isPlainObject(n[r])?Object.assign(p[r],n[r]):p[r]=n[r],p),m),m}function ke(n,t){return Object.keys(n).filter(p=>n[p]!=null).reduce((p,r)=>{if(t.has(r)){const y=t.get(r);if(typeof y=="string")p[y]=n[r];else{const v=y(r,n[r],n);Object.assign(p,v)}}else p[r]=n[r];return p},{})}function De(n,t,m=new Map){const p=we(n,t);return ke(p,m)}function Be(n={}){function t(i,g,d,f){if(typeof d=="number")return f[i].length===d;if(typeof d=="object"){const T=Object.keys(d)[0],k=d[T];if(T==="not")return Number(f[i].length)!==Number(k);if(T==="moreThan")return Number(f[i].length)>=Number(k);if(T==="lessThan")return Number(f[i].length)<=Number(k)}return!1}function m(i,g,d,f){return f[i]&&f[i].propertyValue&&String(f[i].propertyValue.value)===String(d)}const p=new Map([["length",t],["getProperty",m]]);Object.keys(n).reduce((i,g)=>(i.set(g,n[g]),i),p);function r(i,g){const d=i;return typeof g=="number"?[{target:d,operator:"length",param:null,value:Number(g)}]:typeof g=="boolean"?[{target:d,operator:"getProperty",param:i,value:!!g}]:typeof g=="object"?Object.keys(g).map(f=>{if(f==="length")return{target:d,operator:"length",param:null,value:g[f]};const T=f,k=g[f];return{target:d,operator:"getProperty",param:T,value:k}}):[]}function y(i){return Object.keys(i).reduce((d,f)=>{const T=r(f,i[f]);return d.push(...T),d},[])}function v(i,g){if(p.has(i.operator)){const d=p.get(i.operator);return d&&d(i.target,i.param,i.value,g)||!1}return!1}function w(i,g){return y(i).reduce((T,k)=>T&&v(k,g),!0)}function A(i,g){const d=Object.keys(i),f=d.includes("allOf"),T=d.includes("anyOf"),k=f||T,b=(k?i[k?f?"allOf":"anyOf":"allOf"]:[i]).map(I=>w(I,g));return f?!b.includes(!1):b.includes(!0)}return{parseValueSchema:A}}const Ae={},Ce={};Be();function Se(n,t,m=new Map,p=(v,w,A)=>w,r={},y=v=>v){return pe[t.title]=t,ge[t.title]=p,Ae[t.title]=r,Ce[t.title]=y,(v={})=>{const w=De(v,t,m),A=Object.keys(n).reduce((i,g)=>(i[g]=n[g].default,i),{});return Object.assign(A,w)}}function Ne(n,t){return{customClass:t.class,customStyle:t.style}}const Oe=new Map([["appearance",Ne]]),je={title:"tags",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:[]}}}}}},Ve={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tags.schema.json",title:"tags",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for tags",type:"string"},type:{description:"The type string of tags",type:"string",default:"tags"},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"]},H={activeTag:{type:String,default:""},addButtonText:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},data:{type:Array,default:[{name:"示例1"}]},enableAddButton:{type:Boolean,default:!1},selectable:{type:Boolean,default:!1},showAddButton:{type:Boolean,default:!1},showClose:{type:Boolean,default:!0},showColor:{type:Boolean,default:!1},tagType:{type:String,default:""},tagStyle:{type:String,default:""},wrapText:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},disable:{type:Boolean,default:!1}},Z=Se(H,Ve,Oe,Te,je);function me(n,t,m,p){const r=e.ref(-1),y=e.ref(!1);function v(g,d,f){g.stopPropagation(),d&&setTimeout(()=>{r.value=f,y.value=!0,d.moving=!0})}function w(g,d){if(g.preventDefault(),r.value!==d){const f=p.value[r.value],T=p.value;T.splice(r.value,1),T.splice(d,0,f),r.value=d}}function A(g,d){g.preventDefault(),g.dataTransfer&&(g.dataTransfer.dropEffect="move")}function i(g,d){d&&(d.moving=!1),m.value=p.value.filter(f=>f.type==="Tag").map(f=>f.payload),y.value=!1,t.emit("change",m.value)}return{dragstart:v,dragenter:w,dragover:A,dragend:i,isDragging:y}}const W=e.defineComponent({name:"FTags",props:H,emits:["remove","selectionChange","change"],setup(n,t){const m=e.ref(n.selectable),p=e.ref(n.customClass),r=e.ref(n.data),y=e.ref(n.tagType),v=e.ref(n.tagStyle),w=e.ref(n.showColor),A=e.ref(n.customStyle),i=e.ref(n.activeTag),g=e.ref(n.showClose),d=e.ref(n.addButtonText),f=e.ref(),T=e.ref(n.wrapText),k=e.ref();e.ref(n.disable);const D=e.ref(!1);function M(){const s=r.value.map(o=>({type:"Tag",payload:o}));return n.showAddButton&&s.push({type:"AddButton"}),s}const b=e.ref(M());function L(s){r.value=s,b.value=M()}const I=e.computed(()=>b.value.findIndex(s=>s.type==="Input")),q=me(n,t,r,b),{dragstart:P,dragenter:h,dragover:S,dragend:B}=q;e.watch(()=>n.data,s=>L(s)),e.watch(()=>n.showAddButton,()=>{b.value=M()}),e.watch(()=>n.disable,s=>{b.value=M()}),e.watch(()=>n.activeTag,s=>{i.value=s}),e.watch(D,s=>{const o=[...b.value];s?o.length>0&&o[o.length-1].type!=="Input"&&(o.splice(o.length-1,1),o.splice(o.length,0,{type:"Input"}),b.value=o,e.nextTick(()=>{var u;k.value&&((u=k.value)==null||u.focus())})):o.length>0&&o[o.length-1].type!=="AddButton"&&(o.splice(o.length-1,1),o.splice(o.length,0,{type:"AddButton"}),b.value=o)});const j=e.computed(()=>{const s={"farris-tags":!0,"farris-tags-checkable":m.value,"farris-tags-nowrap":!T.value};return p.value.split(" ").reduce((o,u)=>(o[u]=!0,o),s),s});function R(s){const o={"farris-tag-item":!0,"farris-tag-item-checked":m.value&&s.checked,"farris-tag-item-checkable":m.value,"farris-tag-item-has-color":w.value,"farris-tag-item-actived":i.value===s.name};if(y.value){const u=`farris-tag-item-${y.value}`;o[u]=!0}return o}const E=e.computed(()=>{const s={};return A.value&&A.value.split(";").reduce((o,u)=>{const N=u.split(":");return o[N[0]]=N[1],o},s),s});function _(s,o){!n.disable&&m.value&&(!o.hasOwnProperty("selectable")||o.selectable)&&(o.checked=!o.checked,i.value=o.checked?o.name:"",o.checked&&r.value.filter(u=>u.name!==o.name).forEach(u=>{u.checked=!o.checked}),t.emit("change",r.value),t.emit("selectionChange",o))}function K(s,o){let u;switch(s.key){case"Backspace":r.value=r.value.filter(N=>N.name!==o.name),t.emit("change",r.value);break;case"ArrowLeft":u=Math.max(f.value.scrollLeft+20,0),f.value.scrollLeft=u;break;case"ArrowRight":u=Math.max(f.value.scrollLeft-20,0),f.value.scrollLeft=u}}function ee(s,o){const u=r.value.findIndex(N=>N.name===o.name);if(u>-1){const[N]=r.value.splice(u,1);b.value=M(),t.emit("change",r.value),t.emit("remove",{tags:r.value,remove:N})}s.stopPropagation()}const te=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!n.enableAddButton}));function ae(s){s.stopPropagation(),D.value=!0}function ne(){return!n.disable&&e.createVNode("li",{class:te.value,onClick:s=>ae(s)},[e.createVNode("span",{class:"f-icon f-icon-amplification"},null),d.value&&e.createVNode("span",{class:"farris-tag-add-text"},[d.value])])}function X(s,o,u){s>-1&&(r.value.splice(s,0,{name:o,value:u,selectable:m.value}),b.value=M(),D.value=!1,t.emit("change",r.value))}function J(s){if(s&&s.value){const o=s.value,u=I.value;X(u,o,o),s.innerText=""}else D.value=!1}function re(s){const o=s.target;o&&o.value?J(o):D.value=!1}function he(s){s.key==="Enter"&&J(s.target)}function se(){return!n.disable&&e.createVNode("li",{class:"farris-tag-input-box"},[e.createVNode("input",{title:"farris-tag-input-box",ref:k,class:"form-control",onKeyup:he,onBlur:re},null)])}function oe(s,o){return e.createVNode("li",{class:R(s),style:E.value,tabindex:0,id:s.name,key:s.name,onClick:u=>_(u,s),onKeydown:u=>K(u,s),draggable:"true",onDragstart:u=>P(u,s,o),onDragenter:u=>h(u,o),onDragend:u=>B(u,s),onDragover:u=>S(u,o)},[e.createVNode("span",{title:s.name,class:"tag-box"},[s.name]),!n.disable&&g.value&&e.createVNode("span",{class:"tag-delete"},[e.createVNode("i",{class:"f-icon f-icon-close",onClick:u=>ee(u,s)},null)])])}function z(){return b.value.map((s,o)=>{switch(s.type){case"Tag":return oe(s.payload,o);case"AddButton":return ne();case"Input":return se()}})}const G=e.computed(()=>({"farris-tags-item-container":!0,"farris-tag-item-capsule":v.value==="capsule"}));function le(s){const o=Math.max(f.value.scrollLeft-s.deltaX,0);f.value.scrollLeft=o}function ce(s){var u;s.preventDefault(),s.stopPropagation();const o=(u=s.dataTransfer)==null?void 0:u.getData("Text");if(o){const N=o.split(":"),ue=N[0],F=N[1];[...r.value].findIndex(a=>(console.log(`${a.value} === ${F} is ${a.value===F}`),a.value===F))>-1||X(r.value.length,ue,F)}}function ie(s){s.preventDefault()}return()=>e.createVNode("div",{class:j.value,onDrop:ce,onDragover:ie},[e.createVNode("ul",{ref:f,class:G.value,onWheel:s=>le(s)},[z()])])}});function Me(n,t,m){var P;function p(){}const r="",y="",v=e.ref();function w(){return(t==null?void 0:t.schema.componentType)!=="frame"}function A(){return!1}function i(){return(t==null?void 0:t.schema.componentType)!=="frame"}function g(){return(t==null?void 0:t.schema.componentType)==="frame"}function d(h){if(!h||!h.value)return null;if(h.value.schema&&h.value.schema.type==="component")return h.value;const S=e.ref(h==null?void 0:h.value.parent),B=d(S);return B||null}function f(h=t){const{componentInstance:S,designerItemElementRef:B}=h;return!S||!S.value?null:S.value.canMove?B:f(h.parent)}function T(h){return!!m}function k(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function D(){}function M(h,S){}function b(h,S){const{componentType:B}=h;let j=Y(B,h,S);const R=B.toLowerCase().replace("-","_");return j&&!j.id&&j.type===B&&(j.id=`${R}_${Math.random().toString().slice(2,6)}`),j}function L(h,S){const B=String(h.getAttribute("data-controltype")),j=h.getAttribute("data-feature"),R=j?JSON.parse(j):{};R.parentComponentInstance=v.value;let E=Y(B,R);const _=B.toLowerCase().replace("-","_");return E&&!E.id&&E.type===B&&(E.id=`${_}_${Math.random().toString().slice(2,6)}`),E}function I(h){}function q(...h){}return v.value={canMove:w(),canSelectParent:A(),canDelete:i(),canNested:!g(),contents:t==null?void 0:t.schema.contents,elementRef:n,parent:(P=t==null?void 0:t.parent)==null?void 0:P.componentInstance,schema:t==null?void 0:t.schema,styles:r,designerClass:y,canAccepts:T,getBelongedComponentInstance:d,getDraggableDesignItemElement:f,getDraggingDisplayText:k,getPropConfig:q,getDragScopeElement:D,onAcceptMovedChildElement:M,onAcceptNewChildElement:L,onChildElementMovedOut:I,addNewChildComponentSchema:b,updateDragAndDropRules:p,triggerBelongedComponentToMoveWhenMoved:e.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:e.ref(!1)},v}const Pe=e.defineComponent({name:"FTagsDesign",props:H,emits:["remove","selectionChange","change"],setup(n,t){const m=e.ref(n.selectable),p=e.ref(n.customClass),r=e.ref(n.data),y=e.ref(n.tagType),v=e.ref(n.tagStyle),w=e.ref(n.showColor),A=e.ref(n.activeTag),i=e.ref(n.customStyle),g=e.ref(n.showClose),d=e.ref(n.showAddButton),f=e.ref(n.showInput),T=e.ref(n.addButtonText),k=e.ref(n.enableAddButton);e.ref(n.placeholder),e.ref(""),e.ref();const D=e.ref(),M=e.ref(n.wrapText),b=e.ref(),L=e.ref(),I=e.inject("design-item-context"),q=Me(L,I);e.onMounted(()=>{L.value.componentInstance=q}),t.expose(q.value);function P(){const a=r.value.map(l=>({type:"Tag",payload:l}));return d.value&&a.push({type:"AddButton"}),a}const h=e.ref(P());function S(a){r.value=a,h.value=P()}const B=e.computed(()=>h.value.findIndex(a=>a.type==="Input")),j=me(n,t,r,h),{dragstart:R,dragenter:E,dragover:_,dragend:K}=j;e.watch(()=>n.data,a=>S(a));const ee=e.computed(()=>{const a={"farris-tags":!0,"farris-tags-checkable":m.value,"farris-tags-nowrap":!M.value};return p.value.split(" ").reduce((l,c)=>(l[c]=!0,l),a),a});function te(a){const l={"farris-tag-item":!0,"farris-tag-item-checked":m.value&&a.checked,"farris-tag-item-checkable":m.value,"farris-tag-item-has-color":w.value,"farris-tag-item-actived":A.value===a.name};if(y.value){const c=`farris-tag-item-${y.value}`;l[c]=!0}return l}const ae=e.computed(()=>{const a={};return i.value&&i.value.split(";").reduce((l,c)=>{const C=c.split(":");return l[C[0]]=C[1],l},a),a});function ne(a,l){m.value&&l.selectable&&(l.checked=!l.checked,A.value=l.checked?l.name:"",l.checked&&r.value.filter(c=>c.name!==l.name).forEach(c=>{c.checked=!l.checked}),t.emit("change",r.value),t.emit("selectionChange",l))}function X(a,l){let c;switch(a.key){case"Backspace":r.value=r.value.filter(C=>C.name!==l.name),t.emit("change",r.value);break;case"ArrowLeft":c=Math.max(D.value.scrollLeft+20,0),D.value.scrollLeft=c;break;case"ArrowRight":c=Math.max(D.value.scrollLeft-20,0),D.value.scrollLeft=c}}function J(a,l){const c=r.value.findIndex(C=>C.name===l.name);if(c>-1){const[C]=r.value.splice(c,1);h.value=P(),t.emit("change",r.value),t.emit("remove",r.value,C,c)}a.stopPropagation()}const re=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!k.value}));function he(a){}function se(){return e.createVNode("li",{class:re.value,onClick:a=>void 0},[e.createVNode("span",{class:"f-icon f-icon-amplification"},null),e.createVNode("span",{class:"farris-tag-add-text"},[T.value])])}function oe(a){if(a&&!a.innerText){const l=B.value;if(l>0){const[c]=r.value.splice(l-1,1);h.value.splice(l-1,1),t.emit("remove",r.value,c,l-1)}}}function z(a,l,c){a>-1&&(r.value.splice(a,0,{name:l,value:c,selectable:m.value}),h.value=P(),t.emit("change",r.value))}function G(a){if(a&&a.innerText){const l=a.innerText,c=B.value;z(c,l,l),a.innerText=""}}function le(a){const l=a.target;l&&(l.innerText?G(l):t.emit("change",r.value))}function ce(a){a.key==="Enter"&&G(a.target),a.key==="Backspace"&&(oe(a.target),e.nextTick(()=>{var l;b.value&&((l=b.value)==null||l.focus())}))}function ie(){return e.createVNode("li",{class:"farris-tag-input-box"},[e.createVNode("div",{ref:b,class:"form-control",contenteditable:"true",onKeyup:ce,onBlur:le},null)])}function s(a,l){return e.createVNode("li",{class:te(a),style:ae.value,tabindex:0,id:a.name,key:a.name,onClick:c=>ne(c,a),onKeydown:c=>X(c,a),draggable:"true",onDragstart:c=>R(c,a,l),onDragenter:c=>E(c,l),onDragend:c=>K(c,a),onDragover:c=>_(c,l)},[e.createVNode("div",{title:a.name,class:"tag-box"},[a.name]),g.value&&e.createVNode("span",{class:"tag-delete"},[e.createVNode("i",{class:"f-icon f-icon-close",onClick:c=>J(c,a)},null)])])}function o(){return h.value.map((a,l)=>{switch(a.type){case"Tag":return s(a.payload,l);case"AddButton":return se();case"Input":return ie()}})}const u=e.computed(()=>({"farris-tags-item-container":!0,"farris-tag-item-capsule":v.value==="capsule"}));function N(a){const l=Math.max(D.value.scrollLeft-a.deltaX,0);D.value.scrollLeft=l}function ue(a){const l=D.value,c=r.value.length-1;if(l){const C=Array.from(l.children).filter($=>$.className.indexOf("farris-tag-item")>-1).findIndex($=>{const V=$.getBoundingClientRect(),fe=window.getComputedStyle($),be=parseInt(fe["margin-left"],10)+V.width+parseInt(fe["margin-right"],10);return V.left+be>a});if(C>-1)return C}return c}function F(a){if(f.value){const c=ue(a.clientX)+1,$=h.value.filter(V=>V.type!=="Input");$.splice(c,0,{type:"Input"}),h.value=$,e.nextTick(()=>{var V;b.value&&((V=b.value)==null||V.focus())})}}function ye(a){var c;a.preventDefault(),a.stopPropagation();const l=(c=a.dataTransfer)==null?void 0:c.getData("Text");if(l){const C=l.split(":"),$=C[0],V=C[1];[...r.value].findIndex(de=>(console.log(`${de.value} === ${V} is ${de.value===V}`),de.value===V))>-1||z(r.value.length,$,V)}}function ve(a){a.preventDefault()}return()=>e.createVNode("div",{ref:L,class:ee.value,onClick:F,onDrop:ye,onDragover:ve},[e.createVNode("ul",{ref:D,class:u.value,onWheel:a=>N(a)},[o()])])}});W.register=(n,t,m,p)=>{n.tags=W,t.tags=Z},W.registerDesigner=(n,t,m)=>{n.tags=Pe,t.tags=Z};const Ee=x.withInstall(W);O.FTags=W,O.default=Ee,O.propsResolver=Z,O.tagsProps=H,Object.defineProperties(O,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(V,I){typeof exports=="object"&&typeof module<"u"?I(exports,require("../common/index.umd.js"),require("vue"),require("lodash-es")):typeof define=="function"&&define.amd?define(["exports","../common/index.umd.js","vue","lodash-es"],I):(V=typeof globalThis<"u"?globalThis:V||self,I(V.tags={},V.common,V.Vue,V.LodashES))})(this,function(V,I,e,z){"use strict";function Te(a,t,m){return t}const de={},pe={};function G(a){const{properties:t,title:m,ignore:p}=a,r=p&&Array.isArray(p),y=Object.keys(t).reduce((b,w)=>((!r||!p.find(A=>A===w))&&(b[w]=t[w].type==="object"&&t[w].properties?G(t[w]):z.cloneDeep(t[w].default)),b),{});if(m&&(!r||!p.find(b=>b==="id"))){const b=m.toLowerCase().replace(/-/g,"_");y.id=`${b}_${Math.random().toString().slice(2,6)}`}return y}function ge(a,t={},m){const p=de[a];if(p){let r=G(p);const y=pe[a];return r=y?y({getSchemaByType:ge},r,t,m):r,r}return null}function ke(a,t){const m=G(t);return Object.keys(m).reduce((p,r)=>(p[r]&&z.isPlainObject(p[r])&&z.isPlainObject(a[r]||!a[r])?Object.assign(p[r],a[r]||{}):p[r]=a[r],p),m),m}function we(a,t){return Object.keys(a).filter(p=>a[p]!=null).reduce((p,r)=>{if(t.has(r)){const y=t.get(r);if(typeof y=="string")p[y]=a[r];else{const b=y(r,a[r],a);Object.assign(p,b)}}else p[r]=a[r];return p},{})}function Be(a,t,m=new Map){const p=ke(a,t);return we(p,m)}function De(a={}){function t(i,g,f,d){if(typeof f=="number")return d[i].length===f;if(typeof f=="object"){const k=Object.keys(f)[0],B=f[k];if(k==="not")return Number(d[i].length)!==Number(B);if(k==="moreThan")return Number(d[i].length)>=Number(B);if(k==="lessThan")return Number(d[i].length)<=Number(B)}return!1}function m(i,g,f,d){return d[i]&&d[i].propertyValue&&String(d[i].propertyValue.value)===String(f)}const p=new Map([["length",t],["getProperty",m]]);Object.keys(a).reduce((i,g)=>(i.set(g,a[g]),i),p);function r(i,g){const f=i;return typeof g=="number"?[{target:f,operator:"length",param:null,value:Number(g)}]:typeof g=="boolean"?[{target:f,operator:"getProperty",param:i,value:!!g}]:typeof g=="object"?Object.keys(g).map(d=>{if(d==="length")return{target:f,operator:"length",param:null,value:g[d]};const k=d,B=g[d];return{target:f,operator:"getProperty",param:k,value:B}}):[]}function y(i){return Object.keys(i).reduce((f,d)=>{const k=r(d,i[d]);return f.push(...k),f},[])}function b(i,g){if(p.has(i.operator)){const f=p.get(i.operator);return f&&f(i.target,i.param,i.value,g)||!1}return!1}function w(i,g){return y(i).reduce((k,B)=>k&&b(B,g),!0)}function A(i,g){const f=Object.keys(i),d=f.includes("allOf"),k=f.includes("anyOf"),B=d||k,T=(B?i[B?d?"allOf":"anyOf":"allOf"]:[i]).map(E=>w(E,g));return d?!T.includes(!1):T.includes(!0)}return{parseValueSchema:A}}const Se={},Ae={};De();function Ne(a,t,m=new Map,p=(b,w,A,i)=>w,r={},y=b=>b){return de[t.title]=t,pe[t.title]=p,Se[t.title]=r,Ae[t.title]=y,(b={})=>{const w=Be(b,t,m),A=Object.keys(a).reduce((i,g)=>(i[g]=a[g].default,i),{});return Object.assign(A,w)}}function je(a,t){return{customClass:t.class,customStyle:t.style}}const Oe=new Map([["appearance",je]]),Ve={title:"tags",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:[]}}}}}},Ce={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tags.schema.json",title:"tags",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for tags",type:"string"},type:{description:"The type string of tags",type:"string",default:"tags"},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"]},W={activeTag:{type:String,default:""},addButtonText:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},data:{type:Array,default:[{name:"示例1"}]},enableAddButton:{type:Boolean,default:!1},selectable:{type:Boolean,default:!1},showAddButton:{type:Boolean,default:!1},showClose:{type:Boolean,default:!0},showColor:{type:Boolean,default:!1},tagType:{type:String,default:""},tagStyle:{type:String,default:""},wrapText:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},disable:{type:Boolean,default:!1}},J=Ne(W,Ce,Oe,Te,Ve);function me(a,t,m,p){const r=e.ref(-1),y=e.ref(!1);function b(g,f,d){g.stopPropagation(),f&&setTimeout(()=>{r.value=d,y.value=!0,f.moving=!0})}function w(g,f){if(g.preventDefault(),r.value!==f){const d=p.value[r.value],k=p.value;k.splice(r.value,1),k.splice(f,0,d),r.value=f}}function A(g,f){g.preventDefault(),g.dataTransfer&&(g.dataTransfer.dropEffect="move")}function i(g,f){f&&(f.moving=!1),m.value=p.value.filter(d=>d.type==="Tag").map(d=>d.payload),y.value=!1,t.emit("change",m.value)}return{dragstart:b,dragenter:w,dragover:A,dragend:i,isDragging:y}}const q=e.defineComponent({name:"FTags",props:W,emits:["remove","selectionChange","change"],setup(a,t){const m=e.ref(a.selectable),p=e.ref(a.customClass),r=e.ref(a.data),y=e.ref(a.tagType),b=e.ref(a.tagStyle),w=e.ref(a.showColor),A=e.ref(a.customStyle),i=e.ref(a.activeTag),g=e.ref(a.showClose),f=e.ref(a.addButtonText),d=e.ref(),k=e.ref(a.wrapText),B=e.ref();e.ref(a.disable);const D=e.ref(!1);function M(){const s=r.value.map(o=>({type:"Tag",payload:o}));return a.showAddButton&&s.push({type:"AddButton"}),s}const T=e.ref(M());function R(s){r.value=s,T.value=M()}const E=e.computed(()=>T.value.findIndex(s=>s.type==="Input")),L=me(a,t,r,T),{dragstart:h,dragenter:v,dragover:S,dragend:j}=L;e.watch(()=>a.data,s=>R(s)),e.watch(()=>a.showAddButton,()=>{T.value=M()}),e.watch(()=>a.disable,s=>{T.value=M()}),e.watch(()=>a.activeTag,s=>{i.value=s}),e.watch(D,s=>{const o=[...T.value];s?o.length>0&&o[o.length-1].type!=="Input"&&(o.splice(o.length-1,1),o.splice(o.length,0,{type:"Input"}),T.value=o,e.nextTick(()=>{var u;B.value&&((u=B.value)==null||u.focus())})):o.length>0&&o[o.length-1].type!=="AddButton"&&(o.splice(o.length-1,1),o.splice(o.length,0,{type:"AddButton"}),T.value=o)});const F=e.computed(()=>{const s={"farris-tags":!0,"farris-tags-checkable":m.value,"farris-tags-nowrap":!k.value};return p.value.split(" ").reduce((o,u)=>(o[u]=!0,o),s),s});function Q(s){const o={"farris-tag-item":!0,"farris-tag-item-checked":m.value&&s.checked,"farris-tag-item-checkable":m.value,"farris-tag-item-has-color":w.value,"farris-tag-item-actived":i.value===s.name};if(y.value){const u=`farris-tag-item-${y.value}`;o[u]=!0}return o}const U=e.computed(()=>{const s={};return A.value&&A.value.split(";").reduce((o,u)=>{const O=u.split(":");return o[O[0]]=O[1],o},s),s});function Y(s,o){!a.disable&&m.value&&(!o.hasOwnProperty("selectable")||o.selectable)&&(o.checked=!o.checked,i.value=o.checked?o.name:"",o.checked&&r.value.filter(u=>u.name!==o.name).forEach(u=>{u.checked=!o.checked}),t.emit("change",r.value),t.emit("selectionChange",o))}function Z(s,o){let u;switch(s.key){case"Backspace":r.value=r.value.filter(O=>O.name!==o.name),t.emit("change",r.value);break;case"ArrowLeft":u=Math.max(d.value.scrollLeft+20,0),d.value.scrollLeft=u;break;case"ArrowRight":u=Math.max(d.value.scrollLeft-20,0),d.value.scrollLeft=u}}function K(s,o){const u=r.value.findIndex(O=>O.name===o.name);if(u>-1){const[O]=r.value.splice(u,1);T.value=M(),t.emit("change",r.value),t.emit("remove",{tags:r.value,remove:O})}s.stopPropagation()}const ee=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!a.enableAddButton}));function te(s){s.stopPropagation(),D.value=!0}function ae(){return!a.disable&&e.createVNode("li",{class:ee.value,onClick:s=>te(s)},[e.createVNode("span",{class:"f-icon f-icon-amplification"},null),f.value&&e.createVNode("span",{class:"farris-tag-add-text"},[f.value])])}function _(s,o,u){s>-1&&(r.value.splice(s,0,{name:o,value:u,selectable:m.value}),T.value=M(),D.value=!1,t.emit("change",r.value))}function H(s){if(s&&s.value){const o=s.value,u=E.value;_(u,o,o),s.innerText=""}else D.value=!1}function ne(s){const o=s.target;o&&o.value?H(o):D.value=!1}function he(s){s.key==="Enter"&&H(s.target)}function re(){return!a.disable&&e.createVNode("li",{class:"farris-tag-input-box"},[e.createVNode("input",{title:"farris-tag-input-box",ref:B,class:"form-control",onKeyup:he,onBlur:ne},null)])}function se(s,o){return e.createVNode("li",{class:Q(s),style:U.value,tabindex:0,id:s.name,key:s.name,onClick:u=>Y(u,s),onKeydown:u=>Z(u,s),draggable:"true",onDragstart:u=>h(u,s,o),onDragenter:u=>v(u,o),onDragend:u=>j(u,s),onDragover:u=>S(u,o)},[e.createVNode("span",{title:s.name,class:"tag-box"},[s.name]),!a.disable&&g.value&&e.createVNode("span",{class:"tag-delete"},[e.createVNode("i",{class:"f-icon f-icon-close",onClick:u=>K(u,s)},null)])])}function X(){return T.value.map((s,o)=>{switch(s.type){case"Tag":return se(s.payload,o);case"AddButton":return ae();case"Input":return re()}})}const x=e.computed(()=>({"farris-tags-item-container":!0,"farris-tag-item-capsule":b.value==="capsule"}));function oe(s){const o=Math.max(d.value.scrollLeft-s.deltaX,0);d.value.scrollLeft=o}function le(s){var u;s.preventDefault(),s.stopPropagation();const o=(u=s.dataTransfer)==null?void 0:u.getData("Text");if(o){const O=o.split(":"),ie=O[0],$=O[1];[...r.value].findIndex(n=>(console.log(`${n.value} === ${$} is ${n.value===$}`),n.value===$))>-1||_(r.value.length,ie,$)}}function ce(s){s.preventDefault()}return()=>e.createVNode("div",{class:F.value,onDrop:le,onDragover:ce},[e.createVNode("ul",{ref:d,class:x.value,onWheel:s=>oe(s)},[X()])])}});function Me(a,t,m){var L;const p="",r="",y=e.ref();function b(){return(t==null?void 0:t.schema.componentType)!=="frame"}function w(){return!1}function A(){return(t==null?void 0:t.schema.componentType)!=="frame"}function i(){return(t==null?void 0:t.schema.componentType)==="frame"}function g(h){if(!h||!h.value)return null;if(h.value.schema&&h.value.schema.type==="component")return h.value;const v=e.ref(h==null?void 0:h.value.parent),S=g(v);return S||null}function f(h=t){const{componentInstance:v,designerItemElementRef:S}=h;return!v||!v.value?null:v.value.canMove?S:f(h.parent)}function d(h){return!!m}function k(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function B(){}function D(h,v){}function M(h,v){const{componentType:S}=h;let j=ge(S,h,v);const F=S.toLowerCase().replace(/-/g,"_");return j&&!j.id&&j.type===S&&(j.id=`${F}_${Math.random().toString().slice(2,6)}`),j}function T(h){}function R(...h){}function E(){t!=null&&t.schema.contents&&t.schema.contents.map(h=>{var j;let v=h.id;h.type==="component-ref"&&(v=h.component);const S=a.value.querySelector(`#${v}-design-item`);(j=S==null?void 0:S.componentInstance)!=null&&j.value.onRemoveComponent&&S.componentInstance.value.onRemoveComponent()})}return y.value={canMove:b(),canSelectParent:w(),canDelete:A(),canNested:!i(),contents:t==null?void 0:t.schema.contents,elementRef:a,parent:(L=t==null?void 0:t.parent)==null?void 0:L.componentInstance,schema:t==null?void 0:t.schema,styles:p,designerClass:r,canAccepts:d,getBelongedComponentInstance:g,getDraggableDesignItemElement:f,getDraggingDisplayText:k,getPropConfig:R,getDragScopeElement:B,onAcceptMovedChildElement:D,onChildElementMovedOut:T,addNewChildComponentSchema:M,triggerBelongedComponentToMoveWhenMoved:e.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:e.ref(!1),onRemoveComponent:E},y}const Pe=e.defineComponent({name:"FTagsDesign",props:W,emits:["remove","selectionChange","change"],setup(a,t){const m=e.ref(a.selectable),p=e.ref(a.customClass),r=e.ref(a.data),y=e.ref(a.tagType),b=e.ref(a.tagStyle),w=e.ref(a.showColor),A=e.ref(a.activeTag),i=e.ref(a.customStyle),g=e.ref(a.showClose),f=e.ref(a.showAddButton),d=e.ref(a.showInput),k=e.ref(a.addButtonText),B=e.ref(a.enableAddButton);e.ref(a.placeholder),e.ref(""),e.ref();const D=e.ref(),M=e.ref(a.wrapText),T=e.ref(),R=e.ref(),E=e.inject("design-item-context"),L=Me(R,E);e.onMounted(()=>{R.value.componentInstance=L}),t.expose(L.value);function h(){const n=r.value.map(l=>({type:"Tag",payload:l}));return f.value&&n.push({type:"AddButton"}),n}const v=e.ref(h());function S(n){r.value=n,v.value=h()}const j=e.computed(()=>v.value.findIndex(n=>n.type==="Input")),F=me(a,t,r,v),{dragstart:Q,dragenter:U,dragover:Y,dragend:Z}=F;e.watch(()=>a.data,n=>S(n));const K=e.computed(()=>{const n={"farris-tags":!0,"farris-tags-checkable":m.value,"farris-tags-nowrap":!M.value};return p.value.split(" ").reduce((l,c)=>(l[c]=!0,l),n),n});function ee(n){const l={"farris-tag-item":!0,"farris-tag-item-checked":m.value&&n.checked,"farris-tag-item-checkable":m.value,"farris-tag-item-has-color":w.value,"farris-tag-item-actived":A.value===n.name};if(y.value){const c=`farris-tag-item-${y.value}`;l[c]=!0}return l}const te=e.computed(()=>{const n={};return i.value&&i.value.split(";").reduce((l,c)=>{const N=c.split(":");return l[N[0]]=N[1],l},n),n});function ae(n,l){m.value&&l.selectable&&(l.checked=!l.checked,A.value=l.checked?l.name:"",l.checked&&r.value.filter(c=>c.name!==l.name).forEach(c=>{c.checked=!l.checked}),t.emit("change",r.value),t.emit("selectionChange",l))}function _(n,l){let c;switch(n.key){case"Backspace":r.value=r.value.filter(N=>N.name!==l.name),t.emit("change",r.value);break;case"ArrowLeft":c=Math.max(D.value.scrollLeft+20,0),D.value.scrollLeft=c;break;case"ArrowRight":c=Math.max(D.value.scrollLeft-20,0),D.value.scrollLeft=c}}function H(n,l){const c=r.value.findIndex(N=>N.name===l.name);if(c>-1){const[N]=r.value.splice(c,1);v.value=h(),t.emit("change",r.value),t.emit("remove",r.value,N,c)}n.stopPropagation()}const ne=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!B.value}));function he(n){}function re(){return e.createVNode("li",{class:ne.value,onClick:n=>void 0},[e.createVNode("span",{class:"f-icon f-icon-amplification"},null),e.createVNode("span",{class:"farris-tag-add-text"},[k.value])])}function se(n){if(n&&!n.innerText){const l=j.value;if(l>0){const[c]=r.value.splice(l-1,1);v.value.splice(l-1,1),t.emit("remove",r.value,c,l-1)}}}function X(n,l,c){n>-1&&(r.value.splice(n,0,{name:l,value:c,selectable:m.value}),v.value=h(),t.emit("change",r.value))}function x(n){if(n&&n.innerText){const l=n.innerText,c=j.value;X(c,l,l),n.innerText=""}}function oe(n){const l=n.target;l&&(l.innerText?x(l):t.emit("change",r.value))}function le(n){n.key==="Enter"&&x(n.target),n.key==="Backspace"&&(se(n.target),e.nextTick(()=>{var l;T.value&&((l=T.value)==null||l.focus())}))}function ce(){return e.createVNode("li",{class:"farris-tag-input-box"},[e.createVNode("div",{ref:T,class:"form-control",contenteditable:"true",onKeyup:le,onBlur:oe},null)])}function s(n,l){return e.createVNode("li",{class:ee(n),style:te.value,tabindex:0,id:n.name,key:n.name,onClick:c=>ae(c,n),onKeydown:c=>_(c,n),draggable:"true",onDragstart:c=>Q(c,n,l),onDragenter:c=>U(c,l),onDragend:c=>Z(c,n),onDragover:c=>Y(c,l)},[e.createVNode("div",{title:n.name,class:"tag-box"},[n.name]),g.value&&e.createVNode("span",{class:"tag-delete"},[e.createVNode("i",{class:"f-icon f-icon-close",onClick:c=>H(c,n)},null)])])}function o(){return v.value.map((n,l)=>{switch(n.type){case"Tag":return s(n.payload,l);case"AddButton":return re();case"Input":return ce()}})}const u=e.computed(()=>({"farris-tags-item-container":!0,"farris-tag-item-capsule":b.value==="capsule"}));function O(n){const l=Math.max(D.value.scrollLeft-n.deltaX,0);D.value.scrollLeft=l}function ie(n){const l=D.value,c=r.value.length-1;if(l){const N=Array.from(l.children).filter(P=>P.className.indexOf("farris-tag-item")>-1).findIndex(P=>{const C=P.getBoundingClientRect(),ue=window.getComputedStyle(P),be=parseInt(ue["margin-left"],10)+C.width+parseInt(ue["margin-right"],10);return C.left+be>n});if(N>-1)return N}return c}function $(n){if(d.value){const c=ie(n.clientX)+1,P=v.value.filter(C=>C.type!=="Input");P.splice(c,0,{type:"Input"}),v.value=P,e.nextTick(()=>{var C;T.value&&((C=T.value)==null||C.focus())})}}function ye(n){var c;n.preventDefault(),n.stopPropagation();const l=(c=n.dataTransfer)==null?void 0:c.getData("Text");if(l){const N=l.split(":"),P=N[0],C=N[1];[...r.value].findIndex(fe=>(console.log(`${fe.value} === ${C} is ${fe.value===C}`),fe.value===C))>-1||X(r.value.length,P,C)}}function ve(n){n.preventDefault()}return()=>e.createVNode("div",{ref:R,class:K.value,onClick:$,onDrop:ye,onDragover:ve},[e.createVNode("ul",{ref:D,class:u.value,onWheel:n=>O(n)},[o()])])}});q.register=(a,t,m,p)=>{a.tags=q,t.tags=J},q.registerDesigner=(a,t,m)=>{a.tags=Pe,t.tags=J};const Re=I.withInstall(q);V.FTags=q,V.default=Re,V.propsResolver=J,V.tagsProps=W,Object.defineProperties(V,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});