@farris/ui-vue 1.2.9 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (287) hide show
  1. package/components/accordion/index.esm.js +64 -64
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +521 -336
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/button-edit/index.css +1 -1
  6. package/components/button-edit/index.esm.js +99 -97
  7. package/components/button-edit/index.umd.cjs +1 -1
  8. package/components/calendar/index.esm.js +496 -504
  9. package/components/calendar/index.umd.cjs +1 -1
  10. package/components/capsule/index.esm.js +251 -259
  11. package/components/capsule/index.umd.cjs +1 -1
  12. package/components/checkbox/index.esm.js +696 -519
  13. package/components/checkbox/index.umd.cjs +1 -1
  14. package/components/color-picker/index.esm.js +368 -376
  15. package/components/color-picker/index.umd.cjs +2 -2
  16. package/components/combo-list/index.css +1 -0
  17. package/components/combo-list/index.esm.js +1141 -340
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +116 -116
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/common/index.esm.js +986 -798
  22. package/components/common/index.umd.cjs +1 -1
  23. package/components/component/index.esm.js +463 -998
  24. package/components/component/index.umd.cjs +1 -1
  25. package/components/condition/index.css +1 -0
  26. package/components/condition/index.esm.js +2233 -1057
  27. package/components/condition/index.umd.cjs +1 -1
  28. package/components/content-container/index.esm.js +335 -1002
  29. package/components/content-container/index.umd.cjs +1 -1
  30. package/components/data-grid/index.css +1 -1
  31. package/components/data-grid/index.esm.js +6193 -4702
  32. package/components/data-grid/index.umd.cjs +1 -1
  33. package/components/data-view/index.css +1 -0
  34. package/components/data-view/index.esm.js +4562 -3294
  35. package/components/data-view/index.umd.cjs +1 -1
  36. package/components/date-picker/index.css +1 -1
  37. package/components/date-picker/index.esm.js +3420 -2623
  38. package/components/date-picker/index.umd.cjs +1 -1
  39. package/components/designer-canvas/index.css +1 -1
  40. package/components/designer-canvas/index.esm.js +914 -883
  41. package/components/designer-canvas/index.umd.cjs +1 -1
  42. package/components/designer-outline/index.esm.js +14 -13
  43. package/components/designer-outline/index.umd.cjs +1 -1
  44. package/components/dropdown/index.esm.js +204 -212
  45. package/components/dropdown/index.umd.cjs +2 -2
  46. package/components/dynamic-form/index.css +1 -0
  47. package/components/dynamic-form/index.esm.js +2795 -1835
  48. package/components/dynamic-form/index.umd.cjs +1 -1
  49. package/components/dynamic-resolver/index.esm.js +180 -130
  50. package/components/dynamic-resolver/index.umd.cjs +1 -1
  51. package/components/dynamic-view/index.esm.js +303 -290
  52. package/components/dynamic-view/index.umd.cjs +1 -1
  53. package/components/events-editor/index.esm.js +328 -336
  54. package/components/events-editor/index.umd.cjs +1 -1
  55. package/components/expression-editor/index.esm.js +65 -65
  56. package/components/expression-editor/index.umd.cjs +1 -1
  57. package/components/external-container/index.css +1 -1
  58. package/components/external-container/index.esm.js +3349 -3626
  59. package/components/external-container/index.umd.cjs +1 -1
  60. package/components/field-selector/index.css +1 -1
  61. package/components/field-selector/index.esm.js +5344 -8588
  62. package/components/field-selector/index.umd.cjs +1 -1
  63. package/components/filter-bar/index.css +1 -1
  64. package/components/filter-bar/index.esm.js +2179 -2227
  65. package/components/filter-bar/index.umd.cjs +1 -1
  66. package/components/flow-canvas/index.css +1 -1
  67. package/components/flow-canvas/index.esm.js +684 -675
  68. package/components/flow-canvas/index.umd.cjs +1 -1
  69. package/components/image-cropper/index.esm.js +482 -490
  70. package/components/image-cropper/index.umd.cjs +1 -1
  71. package/components/input-group/index.esm.js +746 -569
  72. package/components/input-group/index.umd.cjs +1 -1
  73. package/components/layout/index.esm.js +409 -385
  74. package/components/layout/index.umd.cjs +1 -1
  75. package/components/list-nav/index.esm.js +348 -1019
  76. package/components/list-nav/index.umd.cjs +1 -1
  77. package/components/list-view/index.css +1 -1
  78. package/components/list-view/index.esm.js +3606 -2388
  79. package/components/list-view/index.umd.cjs +1 -1
  80. package/components/lookup/index.css +1 -1
  81. package/components/lookup/index.esm.js +10871 -8970
  82. package/components/lookup/index.umd.cjs +1 -1
  83. package/components/mapping-editor/index.css +1 -1
  84. package/components/mapping-editor/index.esm.js +6019 -5631
  85. package/components/mapping-editor/index.umd.cjs +1 -1
  86. package/components/message-box/index.css +1 -1
  87. package/components/message-box/index.esm.js +511 -471
  88. package/components/message-box/index.umd.cjs +1 -1
  89. package/components/modal/index.css +1 -1
  90. package/components/modal/index.esm.js +438 -398
  91. package/components/modal/index.umd.cjs +1 -1
  92. package/components/nav/index.esm.js +912 -1281
  93. package/components/nav/index.umd.cjs +3 -3
  94. package/components/notify/index.esm.js +59 -53
  95. package/components/notify/index.umd.cjs +1 -1
  96. package/components/number-range/index.esm.js +660 -484
  97. package/components/number-range/index.umd.cjs +1 -1
  98. package/components/number-spinner/index.esm.js +682 -506
  99. package/components/number-spinner/index.umd.cjs +1 -1
  100. package/components/order/index.css +1 -1
  101. package/components/order/index.esm.js +1848 -1658
  102. package/components/order/index.umd.cjs +1 -1
  103. package/components/page-footer/index.esm.js +100 -100
  104. package/components/page-footer/index.umd.cjs +1 -1
  105. package/components/page-header/index.esm.js +1120 -1923
  106. package/components/page-header/index.umd.cjs +1 -1
  107. package/components/pagination/index.esm.js +875 -1214
  108. package/components/pagination/index.umd.cjs +1 -1
  109. package/components/popover/index.esm.js +71 -70
  110. package/components/popover/index.umd.cjs +1 -1
  111. package/components/progress/index.esm.js +229 -237
  112. package/components/progress/index.umd.cjs +3 -3
  113. package/components/property-editor/index.css +1 -1
  114. package/components/property-editor/index.esm.js +2314 -1521
  115. package/components/property-editor/index.umd.cjs +3 -3
  116. package/components/property-panel/index.esm.js +867 -868
  117. package/components/property-panel/index.umd.cjs +1 -1
  118. package/components/query-solution/index.css +1 -1
  119. package/components/query-solution/index.esm.js +4332 -3623
  120. package/components/query-solution/index.umd.cjs +1 -1
  121. package/components/radio-button/index.esm.js +72 -72
  122. package/components/radio-button/index.umd.cjs +1 -1
  123. package/components/radio-group/index.esm.js +613 -437
  124. package/components/radio-group/index.umd.cjs +1 -1
  125. package/components/rate/index.esm.js +255 -263
  126. package/components/rate/index.umd.cjs +1 -1
  127. package/components/response-layout/index.esm.js +144 -152
  128. package/components/response-layout/index.umd.cjs +1 -1
  129. package/components/response-layout-editor/index.css +1 -1
  130. package/components/response-layout-editor/index.esm.js +1101 -1038
  131. package/components/response-layout-editor/index.umd.cjs +1 -1
  132. package/components/response-toolbar/index.esm.js +935 -1750
  133. package/components/response-toolbar/index.umd.cjs +1 -1
  134. package/components/schema-selector/index.css +1 -1
  135. package/components/schema-selector/index.esm.js +5264 -5677
  136. package/components/schema-selector/index.umd.cjs +2 -2
  137. package/components/search-box/index.esm.js +151 -154
  138. package/components/search-box/index.umd.cjs +1 -1
  139. package/components/section/index.esm.js +438 -1125
  140. package/components/section/index.umd.cjs +1 -1
  141. package/components/smoke-detector/index.esm.js +93 -101
  142. package/components/smoke-detector/index.umd.cjs +1 -1
  143. package/components/splitter/index.esm.js +563 -1202
  144. package/components/splitter/index.umd.cjs +1 -1
  145. package/components/splitter/style.js +2 -0
  146. package/components/step/index.esm.js +248 -256
  147. package/components/step/index.umd.cjs +1 -1
  148. package/components/switch/index.esm.js +549 -373
  149. package/components/switch/index.umd.cjs +1 -1
  150. package/components/tabs/index.css +1 -1
  151. package/components/tabs/index.esm.js +2436 -3110
  152. package/components/tabs/index.umd.cjs +1 -1
  153. package/components/tags/index.esm.js +328 -336
  154. package/components/tags/index.umd.cjs +1 -1
  155. package/components/text/index.esm.js +339 -347
  156. package/components/text/index.umd.cjs +1 -1
  157. package/components/textarea/index.esm.js +554 -378
  158. package/components/textarea/index.umd.cjs +1 -1
  159. package/components/time-picker/index.css +1 -1
  160. package/components/time-picker/index.esm.js +1322 -1144
  161. package/components/time-picker/index.umd.cjs +1 -1
  162. package/components/transfer/index.css +1 -1
  163. package/components/transfer/index.esm.js +537 -543
  164. package/components/transfer/index.umd.cjs +1 -1
  165. package/components/tree-grid/index.css +1 -1
  166. package/components/tree-grid/index.esm.js +5113 -9426
  167. package/components/tree-grid/index.umd.cjs +1 -1
  168. package/components/tree-view/index.css +1 -0
  169. package/components/tree-view/index.esm.js +3900 -2677
  170. package/components/tree-view/index.umd.cjs +1 -1
  171. package/components/uploader/index.esm.js +568 -570
  172. package/components/uploader/index.umd.cjs +2 -2
  173. package/components/verify-detail/index.esm.js +266 -274
  174. package/components/verify-detail/index.umd.cjs +1 -1
  175. package/components/video/index.esm.js +553 -1052
  176. package/components/video/index.umd.cjs +1 -1
  177. package/components/weather/index.esm.js +558 -566
  178. package/components/weather/index.umd.cjs +5 -5
  179. package/farris.all.esm.js +22009 -22688
  180. package/farris.all.umd.cjs +9 -9
  181. package/index.css +1 -1
  182. package/package.json +1 -1
  183. package/types/capsule/src/capsule.props.d.ts +2 -2
  184. package/types/combo-list/src/components/list-container.component.d.ts +0 -3
  185. package/types/combo-list/src/components/list-container.props.d.ts +0 -4
  186. package/types/common/directive/area-response.d.ts +10 -0
  187. package/types/common/index.d.ts +9 -0
  188. package/types/common/radio-checkbox/radio-checkbox.props.d.ts +1 -0
  189. package/types/common/types.d.ts +1 -1
  190. package/types/common/utils/encrypt.d.ts +2 -0
  191. package/types/common/utils/resolve-field.d.ts +2 -0
  192. package/types/common/utils/use-class.d.ts +7 -0
  193. package/types/component/src/component.props.d.ts +7 -0
  194. package/types/component/src/designer/use-designer-rules.d.ts +2 -2
  195. package/types/component/src/property-config/component.property-config.d.ts +9 -0
  196. package/types/components.d.ts +1 -0
  197. package/types/condition/src/types.d.ts +2 -1
  198. package/types/content-container/src/designer/use-designer-rules.d.ts +3 -3
  199. package/types/data-grid/index.d.ts +11 -5
  200. package/types/data-grid/src/data-grid.component.d.ts +4 -2
  201. package/types/data-grid/src/data-grid.props.d.ts +1 -0
  202. package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
  203. package/types/data-grid/src/designer/use-designer-rules.d.ts +2 -2
  204. package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
  205. package/types/data-view/composition/data/use-tree-data.d.ts +1 -1
  206. package/types/data-view/composition/types.d.ts +19 -4
  207. package/types/data-view/composition/visualization/use-virtual-scroll.d.ts +0 -15
  208. package/types/designer-canvas/index.d.ts +2 -1
  209. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  210. package/types/designer-canvas/src/composition/rule/use-dragula-common-rule.d.ts +4 -0
  211. package/types/designer-canvas/src/composition/rule/use-template-rule.d.ts +30 -0
  212. package/types/designer-canvas/src/composition/types.d.ts +2 -3
  213. package/types/designer-canvas/src/types.d.ts +2 -1
  214. package/types/dynamic-form/src/composition/use-response-form-layout-setting.d.ts +2 -0
  215. package/types/dynamic-form/src/designer/response-form-layout-setting.component.d.ts +8 -0
  216. package/types/dynamic-form/src/designer/response-form-layout-setting.props.d.ts +4 -0
  217. package/types/dynamic-form/src/designer/response-form.design.component.d.ts +7 -1
  218. package/types/dynamic-form/src/designer/use-designer-rules.d.ts +1 -1
  219. package/types/dynamic-form/src/property-config/form.property-config.d.ts +9 -0
  220. package/types/dynamic-form/src/schema/schema-mapper.d.ts +1 -0
  221. package/types/dynamic-form/src/schema/schema-resolver.d.ts +1 -0
  222. package/types/dynamic-form/src/types.d.ts +12 -1
  223. package/types/dynamic-resolver/index.d.ts +1 -0
  224. package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +1 -1
  225. package/types/dynamic-resolver/src/event-handler-resolver.d.ts +4 -0
  226. package/types/dynamic-resolver/src/types.d.ts +9 -0
  227. package/types/dynamic-view/index.d.ts +1 -0
  228. package/types/dynamic-view/src/event-dispatcher.d.ts +1 -1
  229. package/types/external-container/src/designer/use-designer-rules.d.ts +3 -3
  230. package/types/index.d.ts +2 -0
  231. package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +3 -3
  232. package/types/list-nav/src/designer/use-designer-rules.d.ts +3 -0
  233. package/types/lookup/src/components/favorite/lookup-favorite.component.d.ts +29 -0
  234. package/types/lookup/src/components/favorite/lookup-favorite.props.d.ts +15 -0
  235. package/types/lookup/src/components/modal-container.component.d.ts +25 -0
  236. package/types/lookup/src/components/modal-container.props.d.ts +29 -0
  237. package/types/lookup/src/composition/types.d.ts +8 -0
  238. package/types/lookup/src/composition/use-check-props.d.ts +9 -2
  239. package/types/lookup/src/composition/use-dialog.d.ts +5 -1
  240. package/types/lookup/src/composition/use-favorite.d.ts +12 -0
  241. package/types/lookup/src/composition/use-http.d.ts +9 -5
  242. package/types/lookup/src/composition/use-input-change.d.ts +3 -0
  243. package/types/lookup/src/composition/use-user-data.d.ts +24 -0
  244. package/types/lookup/src/property-config/lookup.property-config.d.ts +6 -4
  245. package/types/mapping-editor/src/mapping-editor.component.d.ts +3 -0
  246. package/types/mapping-editor/src/mapping-editor.props.d.ts +0 -1
  247. package/types/modal/src/composition/use-draggable.d.ts +2 -1
  248. package/types/modal/src/composition/use-shortcut.d.ts +6 -0
  249. package/types/modal/src/modal.component.d.ts +3 -0
  250. package/types/modal/src/modal.props.d.ts +4 -0
  251. package/types/page-header/src/page-header.props.d.ts +1 -0
  252. package/types/pagination/src/components/buttons/goto-buttons.component.d.ts +2 -2
  253. package/types/pagination/src/components/buttons/next-buttons.component.d.ts +2 -2
  254. package/types/pagination/src/components/buttons/previous-buttons.component.d.ts +2 -2
  255. package/types/pagination/src/components/pages/page-list.component.d.ts +2 -2
  256. package/types/pagination/src/components/pages/page-number.component.d.ts +2 -2
  257. package/types/property-panel/index.d.ts +2 -1
  258. package/types/property-panel/src/composition/entity/base-property.d.ts +8 -0
  259. package/types/property-panel/src/composition/entity/input-base-property.d.ts +20 -1
  260. package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +34 -27
  261. package/types/query-solution/src/designer/query-solution-config/composition/use-panel.d.ts +2 -16
  262. package/types/{data-grid/src/designer/use-group-column.d.ts → query-solution/src/designer/query-solution-config/composition/use-property.d.ts} +4 -5
  263. package/types/query-solution/src/designer/query-solution-config/composition/use-querysolution-rules.d.ts +3 -0
  264. package/types/query-solution/src/designer/query-solution-config/composition/use-transfer.d.ts +1 -1
  265. package/types/query-solution/src/property-config/query-solution.property-config.d.ts +60 -0
  266. package/types/query-solution/src/solutions.d.ts +108 -509
  267. package/types/response-layout-editor/index.d.ts +3 -1
  268. package/types/response-layout-editor/src/composition/converter/use-response-layout-editor-setting.d.ts +2 -0
  269. package/types/response-layout-editor/src/type.d.ts +21 -0
  270. package/types/response-toolbar/src/designer/use-designer-rules.d.ts +3 -3
  271. package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -0
  272. package/types/section/src/designer/use-designer-rules.d.ts +3 -3
  273. package/types/splitter/src/components/splitter-pane.component.d.ts +1 -1
  274. package/types/splitter/src/designer/splitter-pane-use-designer-rules.d.ts +3 -3
  275. package/types/splitter/src/designer/splitter-use-designer-rules.d.ts +3 -3
  276. package/types/tabs/src/designer/tab-page-use-designer-rules.d.ts +3 -3
  277. package/types/tabs/src/designer/tab-use-designer-rules.d.ts +3 -3
  278. package/types/tabs/src/tabs.props.d.ts +1 -0
  279. package/types/tree-grid/index.d.ts +8 -2
  280. package/types/tree-grid/src/tree-grid.component.d.ts +3 -1
  281. package/types/designer-canvas/src/composition/rule/use-drag-drop-rules.d.ts +0 -19
  282. package/types/designer-canvas/src/composition/use-dragula-common-rule.d.ts +0 -4
  283. package/types/list-nav/src/composition/use-designer-rules.d.ts +0 -3
  284. package/types/modal/src/composition/use-esc.d.ts +0 -1
  285. package/types/query-solution/src/designer/query-solution-config/composition/mock-data.d.ts +0 -6
  286. package/types/response-layout-editor/src/composition/converter/response-layout-editor.converter.d.ts +0 -3
  287. package/types/response-layout-editor/src/composition/converter/use-convert-property-value.d.ts +0 -20
@@ -1 +1 @@
1
- (function(j,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):(j=typeof globalThis<"u"?globalThis:j||self,x(j.tags={},j.common,j.Vue,j.LodashES))})(this,function(j,x,e,be){"use strict";function Te(n,t,m){return t}const de={},pe={};function Q(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?Q(t[w]):be.cloneDeep(t[w].default)),v),{});return(!r||!p.find(v=>v=="id"))&&(y.id=`${m}-${Date.now()}`),y}function U(n,t={},m){const p=de[n];if(p){let r=Q(p);const y=pe[n];return r=y?y({getSchemaByType:U},r,t,m):r,r}return null}function we(n,t){const m=Q(t);return Object.keys(n).reduce((p,r)=>(p[r]&&typeof p[r]=="object"?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 de[t.title]=t,pe[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 je=new Map([["appearance",Ne]]),Oe={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}},Y=Se(H,Ve,je,Te,Oe);function ge(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=ge(n,t,r,b),{dragstart:E,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 O=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 P=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 Z(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 K(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 ee=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!n.enableAddButton}));function te(s){s.stopPropagation(),D.value=!0}function ae(){return!n.disable&&e.createVNode("li",{class:ee.value,onClick:s=>te(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 ne(s){const o=s.target;o&&o.value?J(o):D.value=!1}function me(s){s.key==="Enter"&&J(s.target)}function re(){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:me,onBlur:ne},null)])}function se(s,o){return e.createVNode("li",{class:R(s),style:P.value,tabindex:0,id:s.name,key:s.name,onClick:u=>_(u,s),onKeydown:u=>Z(u,s),draggable:"true",onDragstart:u=>E(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=>K(u,s)},null)])])}function z(){return b.value.map((s,o)=>{switch(s.type){case"Tag":return se(s.payload,o);case"AddButton":return ae();case"Input":return re()}})}const G=e.computed(()=>({"farris-tags-item-container":!0,"farris-tag-item-capsule":v.value==="capsule"}));function oe(s){const o=Math.max(f.value.scrollLeft-s.deltaX,0);f.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 N=o.split(":"),ie=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,ie,F)}}function ce(s){s.preventDefault()}return()=>e.createVNode("div",{class:O.value,onDrop:le,onDragover:ce},[e.createVNode("ul",{ref:f,class:G.value,onWheel:s=>oe(s)},[z()])])}});function Me(n,t,m){var E;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 O=U(B,h,S);const R=B.toLowerCase().replace("-","_");return O&&!O.id&&O.type===B&&(O.id=`${R}_${Math.random().toString().slice(2,6)}`),O}function L(h,S){const B=String(h.getAttribute("data-controltype")),O=h.getAttribute("data-feature"),R=O?JSON.parse(O):{};R.parentComponentInstance=v.value;let P=U(B,R);const _=B.toLowerCase().replace("-","_");return P&&!P.id&&P.type===B&&(P.id=`${_}_${Math.random().toString().slice(2,6)}`),P}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:(E=t==null?void 0:t.parent)==null?void 0:E.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 Ee=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 E(){const a=r.value.map(l=>({type:"Tag",payload:l}));return d.value&&a.push({type:"AddButton"}),a}const h=e.ref(E());function S(a){r.value=a,h.value=E()}const B=e.computed(()=>h.value.findIndex(a=>a.type==="Input")),O=ge(n,t,r,h),{dragstart:R,dragenter:P,dragover:_,dragend:Z}=O;e.watch(()=>n.data,a=>S(a));const K=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 ee(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 te=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 ae(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=E(),t.emit("change",r.value),t.emit("remove",r.value,C,c)}a.stopPropagation()}const ne=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!k.value}));function me(a){}function re(){return e.createVNode("li",{class:ne.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 se(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=E(),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 oe(a){const l=a.target;l&&(l.innerText?G(l):t.emit("change",r.value))}function le(a){a.key==="Enter"&&G(a.target),a.key==="Backspace"&&(se(a.target),e.nextTick(()=>{var l;b.value&&((l=b.value)==null||l.focus())}))}function ce(){return e.createVNode("li",{class:"farris-tag-input-box"},[e.createVNode("div",{ref:b,class:"form-control",contenteditable:"true",onKeyup:le,onBlur:oe},null)])}function s(a,l){return e.createVNode("li",{class:ee(a),style:te.value,tabindex:0,id:a.name,key:a.name,onClick:c=>ae(c,a),onKeydown:c=>X(c,a),draggable:"true",onDragstart:c=>R(c,a,l),onDragenter:c=>P(c,l),onDragend:c=>Z(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 re();case"Input":return ce()}})}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 ie(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(),ue=window.getComputedStyle($),ve=parseInt(ue["margin-left"],10)+V.width+parseInt(ue["margin-right"],10);return V.left+ve>a});if(C>-1)return C}return c}function F(a){if(f.value){const c=ie(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 he(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(fe=>(console.log(`${fe.value} === ${V} is ${fe.value===V}`),fe.value===V))>-1||z(r.value.length,$,V)}}function ye(a){a.preventDefault()}return()=>e.createVNode("div",{ref:L,class:K.value,onClick:F,onDrop:he,onDragover:ye},[e.createVNode("ul",{ref:D,class:u.value,onWheel:a=>N(a)},[o()])])}});W.register=(n,t,m,p)=>{n.tags=W,t.tags=Y},W.registerDesigner=(n,t,m)=>{n.tags=Ee,t.tags=Y};const Pe=x.withInstall(W);j.FTags=W,j.default=Pe,j.propsResolver=Y,j.tagsProps=H,Object.defineProperties(j,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(N,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):(N=typeof globalThis<"u"?globalThis:N||self,I(N.tags={},N.common,N.Vue,N.LodashES))})(this,function(N,I,e,z){"use strict";function Te(n,t,m){return t}const de={},ge={};function G(n){const{properties:t,title:m,ignore:g}=n,r=g&&Array.isArray(g),h=Object.keys(t).reduce((v,w)=>((!r||!g.find(A=>A==w))&&(v[w]=t[w].type==="object"&&t[w].properties?G(t[w]):z.cloneDeep(t[w].default)),v),{});return m&&(!r||!g.find(v=>v=="id"))&&(h.id=`${m}-${Date.now()}`),h}function pe(n,t={},m){const g=de[n];if(g){let r=G(g);const h=ge[n];return r=h?h({getSchemaByType:pe},r,t,m):r,r}return null}function ke(n,t){const m=G(t);return Object.keys(n).reduce((g,r)=>(g[r]&&z.isPlainObject(g[r])&&z.isPlainObject(n[r])?Object.assign(g[r],n[r]):g[r]=n[r],g),m),m}function we(n,t){return Object.keys(n).filter(g=>n[g]!=null).reduce((g,r)=>{if(t.has(r)){const h=t.get(r);if(typeof h=="string")g[h]=n[r];else{const v=h(r,n[r],n);Object.assign(g,v)}}else g[r]=n[r];return g},{})}function De(n,t,m=new Map){const g=ke(n,t);return we(g,m)}function Be(n={}){function t(i,p,d,f){if(typeof d=="number")return f[i].length===d;if(typeof d=="object"){const T=Object.keys(d)[0],D=d[T];if(T==="not")return Number(f[i].length)!==Number(D);if(T==="moreThan")return Number(f[i].length)>=Number(D);if(T==="lessThan")return Number(f[i].length)<=Number(D)}return!1}function m(i,p,d,f){return f[i]&&f[i].propertyValue&&String(f[i].propertyValue.value)===String(d)}const g=new Map([["length",t],["getProperty",m]]);Object.keys(n).reduce((i,p)=>(i.set(p,n[p]),i),g);function r(i,p){const d=i;return typeof p=="number"?[{target:d,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:d,operator:"getProperty",param:i,value:!!p}]:typeof p=="object"?Object.keys(p).map(f=>{if(f==="length")return{target:d,operator:"length",param:null,value:p[f]};const T=f,D=p[f];return{target:d,operator:"getProperty",param:T,value:D}}):[]}function h(i){return Object.keys(i).reduce((d,f)=>{const T=r(f,i[f]);return d.push(...T),d},[])}function v(i,p){if(g.has(i.operator)){const d=g.get(i.operator);return d&&d(i.target,i.param,i.value,p)||!1}return!1}function w(i,p){return h(i).reduce((T,D)=>T&&v(D,p),!0)}function A(i,p){const d=Object.keys(i),f=d.includes("allOf"),T=d.includes("anyOf"),D=f||T,b=(D?i[D?f?"allOf":"anyOf":"allOf"]:[i]).map(R=>w(R,p));return f?!b.includes(!1):b.includes(!0)}return{parseValueSchema:A}}const Ae={},Ce={};Be();function Se(n,t,m=new Map,g=(v,w,A)=>w,r={},h=v=>v){return de[t.title]=t,ge[t.title]=g,Ae[t.title]=r,Ce[t.title]=h,(v={})=>{const w=De(v,t,m),A=Object.keys(n).reduce((i,p)=>(i[p]=n[p].default,i),{});return Object.assign(A,w)}}function Ne(n,t){return{customClass:t.class,customStyle:t.style}}const je=new Map([["appearance",Ne]]),Oe={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"]},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=Se(W,Ve,je,Te,Oe);function me(n,t,m,g){const r=e.ref(-1),h=e.ref(!1);function v(p,d,f){p.stopPropagation(),d&&setTimeout(()=>{r.value=f,h.value=!0,d.moving=!0})}function w(p,d){if(p.preventDefault(),r.value!==d){const f=g.value[r.value],T=g.value;T.splice(r.value,1),T.splice(d,0,f),r.value=d}}function A(p,d){p.preventDefault(),p.dataTransfer&&(p.dataTransfer.dropEffect="move")}function i(p,d){d&&(d.moving=!1),m.value=g.value.filter(f=>f.type==="Tag").map(f=>f.payload),h.value=!1,t.emit("change",m.value)}return{dragstart:v,dragenter:w,dragover:A,dragend:i,isDragging:h}}const q=e.defineComponent({name:"FTags",props:W,emits:["remove","selectionChange","change"],setup(n,t){const m=e.ref(n.selectable),g=e.ref(n.customClass),r=e.ref(n.data),h=e.ref(n.tagType),v=e.ref(n.tagStyle),w=e.ref(n.showColor),A=e.ref(n.customStyle),i=e.ref(n.activeTag),p=e.ref(n.showClose),d=e.ref(n.addButtonText),f=e.ref(),T=e.ref(n.wrapText),D=e.ref();e.ref(n.disable);const B=e.ref(!1);function V(){const s=r.value.map(l=>({type:"Tag",payload:l}));return n.showAddButton&&s.push({type:"AddButton"}),s}const b=e.ref(V());function E(s){r.value=s,b.value=V()}const R=e.computed(()=>b.value.findIndex(s=>s.type==="Input")),L=me(n,t,r,b),{dragstart:y,dragenter:k,dragover:j,dragend:M}=L;e.watch(()=>n.data,s=>E(s)),e.watch(()=>n.showAddButton,()=>{b.value=V()}),e.watch(()=>n.disable,s=>{b.value=V()}),e.watch(()=>n.activeTag,s=>{i.value=s}),e.watch(B,s=>{const l=[...b.value];s?l.length>0&&l[l.length-1].type!=="Input"&&(l.splice(l.length-1,1),l.splice(l.length,0,{type:"Input"}),b.value=l,e.nextTick(()=>{var u;D.value&&((u=D.value)==null||u.focus())})):l.length>0&&l[l.length-1].type!=="AddButton"&&(l.splice(l.length-1,1),l.splice(l.length,0,{type:"AddButton"}),b.value=l)});const F=e.computed(()=>{const s={"farris-tags":!0,"farris-tags-checkable":m.value,"farris-tags-nowrap":!T.value};return g.value.split(" ").reduce((l,u)=>(l[u]=!0,l),s),s});function Q(s){const l={"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(h.value){const u=`farris-tag-item-${h.value}`;l[u]=!0}return l}const U=e.computed(()=>{const s={};return A.value&&A.value.split(";").reduce((l,u)=>{const S=u.split(":");return l[S[0]]=S[1],l},s),s});function Y(s,l){!n.disable&&m.value&&(!l.hasOwnProperty("selectable")||l.selectable)&&(l.checked=!l.checked,i.value=l.checked?l.name:"",l.checked&&r.value.filter(u=>u.name!==l.name).forEach(u=>{u.checked=!l.checked}),t.emit("change",r.value),t.emit("selectionChange",l))}function Z(s,l){let u;switch(s.key){case"Backspace":r.value=r.value.filter(S=>S.name!==l.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 K(s,l){const u=r.value.findIndex(S=>S.name===l.name);if(u>-1){const[S]=r.value.splice(u,1);b.value=V(),t.emit("change",r.value),t.emit("remove",{tags:r.value,remove:S})}s.stopPropagation()}const ee=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!n.enableAddButton}));function te(s){s.stopPropagation(),B.value=!0}function ae(){return!n.disable&&e.createVNode("li",{class:ee.value,onClick:s=>te(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,l,u){s>-1&&(r.value.splice(s,0,{name:l,value:u,selectable:m.value}),b.value=V(),B.value=!1,t.emit("change",r.value))}function H(s){if(s&&s.value){const l=s.value,u=R.value;x(u,l,l),s.innerText=""}else B.value=!1}function ne(s){const l=s.target;l&&l.value?H(l):B.value=!1}function he(s){s.key==="Enter"&&H(s.target)}function re(){return!n.disable&&e.createVNode("li",{class:"farris-tag-input-box"},[e.createVNode("input",{title:"farris-tag-input-box",ref:D,class:"form-control",onKeyup:he,onBlur:ne},null)])}function se(s,l){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=>y(u,s,l),onDragenter:u=>k(u,l),onDragend:u=>M(u,s),onDragover:u=>j(u,l)},[e.createVNode("span",{title:s.name,class:"tag-box"},[s.name]),!n.disable&&p.value&&e.createVNode("span",{class:"tag-delete"},[e.createVNode("i",{class:"f-icon f-icon-close",onClick:u=>K(u,s)},null)])])}function _(){return b.value.map((s,l)=>{switch(s.type){case"Tag":return se(s.payload,l);case"AddButton":return ae();case"Input":return re()}})}const X=e.computed(()=>({"farris-tags-item-container":!0,"farris-tag-item-capsule":v.value==="capsule"}));function le(s){const l=Math.max(f.value.scrollLeft-s.deltaX,0);f.value.scrollLeft=l}function oe(s){var u;s.preventDefault(),s.stopPropagation();const l=(u=s.dataTransfer)==null?void 0:u.getData("Text");if(l){const S=l.split(":"),ie=S[0],$=S[1];[...r.value].findIndex(a=>(console.log(`${a.value} === ${$} is ${a.value===$}`),a.value===$))>-1||x(r.value.length,ie,$)}}function ce(s){s.preventDefault()}return()=>e.createVNode("div",{class:F.value,onDrop:oe,onDragover:ce},[e.createVNode("ul",{ref:f,class:X.value,onWheel:s=>le(s)},[_()])])}});function Me(n,t,m){var L;function g(){}const r="",h="",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 p(){return(t==null?void 0:t.schema.componentType)==="frame"}function d(y){if(!y||!y.value)return null;if(y.value.schema&&y.value.schema.type==="component")return y.value;const k=e.ref(y==null?void 0:y.value.parent),j=d(k);return j||null}function f(y=t){const{componentInstance:k,designerItemElementRef:j}=y;return!k||!k.value?null:k.value.canMove?j:f(y.parent)}function T(y){return!!m}function D(){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 V(y,k){}function b(y,k){const{componentType:j}=y;let M=pe(j,y,k);const F=j.toLowerCase().replace("-","_");return M&&!M.id&&M.type===j&&(M.id=`${F}_${Math.random().toString().slice(2,6)}`),M}function E(y){}function R(...y){}return v.value={canMove:w(),canSelectParent:A(),canDelete:i(),canNested:!p(),contents:t==null?void 0:t.schema.contents,elementRef:n,parent:(L=t==null?void 0:t.parent)==null?void 0:L.componentInstance,schema:t==null?void 0:t.schema,styles:r,designerClass:h,canAccepts:T,getBelongedComponentInstance:d,getDraggableDesignItemElement:f,getDraggingDisplayText:D,getPropConfig:R,getDragScopeElement:B,onAcceptMovedChildElement:V,onChildElementMovedOut:E,addNewChildComponentSchema:b,updateDragAndDropRules:g,triggerBelongedComponentToMoveWhenMoved:e.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:e.ref(!1)},v}const Pe=e.defineComponent({name:"FTagsDesign",props:W,emits:["remove","selectionChange","change"],setup(n,t){const m=e.ref(n.selectable),g=e.ref(n.customClass),r=e.ref(n.data),h=e.ref(n.tagType),v=e.ref(n.tagStyle),w=e.ref(n.showColor),A=e.ref(n.activeTag),i=e.ref(n.customStyle),p=e.ref(n.showClose),d=e.ref(n.showAddButton),f=e.ref(n.showInput),T=e.ref(n.addButtonText),D=e.ref(n.enableAddButton);e.ref(n.placeholder),e.ref(""),e.ref();const B=e.ref(),V=e.ref(n.wrapText),b=e.ref(),E=e.ref(),R=e.inject("design-item-context"),L=Me(E,R);e.onMounted(()=>{E.value.componentInstance=L}),t.expose(L.value);function y(){const a=r.value.map(o=>({type:"Tag",payload:o}));return d.value&&a.push({type:"AddButton"}),a}const k=e.ref(y());function j(a){r.value=a,k.value=y()}const M=e.computed(()=>k.value.findIndex(a=>a.type==="Input")),F=me(n,t,r,k),{dragstart:Q,dragenter:U,dragover:Y,dragend:Z}=F;e.watch(()=>n.data,a=>j(a));const K=e.computed(()=>{const a={"farris-tags":!0,"farris-tags-checkable":m.value,"farris-tags-nowrap":!V.value};return g.value.split(" ").reduce((o,c)=>(o[c]=!0,o),a),a});function ee(a){const o={"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(h.value){const c=`farris-tag-item-${h.value}`;o[c]=!0}return o}const te=e.computed(()=>{const a={};return i.value&&i.value.split(";").reduce((o,c)=>{const C=c.split(":");return o[C[0]]=C[1],o},a),a});function ae(a,o){m.value&&o.selectable&&(o.checked=!o.checked,A.value=o.checked?o.name:"",o.checked&&r.value.filter(c=>c.name!==o.name).forEach(c=>{c.checked=!o.checked}),t.emit("change",r.value),t.emit("selectionChange",o))}function x(a,o){let c;switch(a.key){case"Backspace":r.value=r.value.filter(C=>C.name!==o.name),t.emit("change",r.value);break;case"ArrowLeft":c=Math.max(B.value.scrollLeft+20,0),B.value.scrollLeft=c;break;case"ArrowRight":c=Math.max(B.value.scrollLeft-20,0),B.value.scrollLeft=c}}function H(a,o){const c=r.value.findIndex(C=>C.name===o.name);if(c>-1){const[C]=r.value.splice(c,1);k.value=y(),t.emit("change",r.value),t.emit("remove",r.value,C,c)}a.stopPropagation()}const ne=e.computed(()=>({"farris-tag-item":!0,"farris-tag-add-button":!0,"farris-tag-add-button-disabled":!D.value}));function he(a){}function re(){return e.createVNode("li",{class:ne.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 se(a){if(a&&!a.innerText){const o=M.value;if(o>0){const[c]=r.value.splice(o-1,1);k.value.splice(o-1,1),t.emit("remove",r.value,c,o-1)}}}function _(a,o,c){a>-1&&(r.value.splice(a,0,{name:o,value:c,selectable:m.value}),k.value=y(),t.emit("change",r.value))}function X(a){if(a&&a.innerText){const o=a.innerText,c=M.value;_(c,o,o),a.innerText=""}}function le(a){const o=a.target;o&&(o.innerText?X(o):t.emit("change",r.value))}function oe(a){a.key==="Enter"&&X(a.target),a.key==="Backspace"&&(se(a.target),e.nextTick(()=>{var o;b.value&&((o=b.value)==null||o.focus())}))}function ce(){return e.createVNode("li",{class:"farris-tag-input-box"},[e.createVNode("div",{ref:b,class:"form-control",contenteditable:"true",onKeyup:oe,onBlur:le},null)])}function s(a,o){return e.createVNode("li",{class:ee(a),style:te.value,tabindex:0,id:a.name,key:a.name,onClick:c=>ae(c,a),onKeydown:c=>x(c,a),draggable:"true",onDragstart:c=>Q(c,a,o),onDragenter:c=>U(c,o),onDragend:c=>Z(c,a),onDragover:c=>Y(c,o)},[e.createVNode("div",{title:a.name,class:"tag-box"},[a.name]),p.value&&e.createVNode("span",{class:"tag-delete"},[e.createVNode("i",{class:"f-icon f-icon-close",onClick:c=>H(c,a)},null)])])}function l(){return k.value.map((a,o)=>{switch(a.type){case"Tag":return s(a.payload,o);case"AddButton":return re();case"Input":return ce()}})}const u=e.computed(()=>({"farris-tags-item-container":!0,"farris-tag-item-capsule":v.value==="capsule"}));function S(a){const o=Math.max(B.value.scrollLeft-a.deltaX,0);B.value.scrollLeft=o}function ie(a){const o=B.value,c=r.value.length-1;if(o){const C=Array.from(o.children).filter(P=>P.className.indexOf("farris-tag-item")>-1).findIndex(P=>{const O=P.getBoundingClientRect(),ue=window.getComputedStyle(P),be=parseInt(ue["margin-left"],10)+O.width+parseInt(ue["margin-right"],10);return O.left+be>a});if(C>-1)return C}return c}function $(a){if(f.value){const c=ie(a.clientX)+1,P=k.value.filter(O=>O.type!=="Input");P.splice(c,0,{type:"Input"}),k.value=P,e.nextTick(()=>{var O;b.value&&((O=b.value)==null||O.focus())})}}function ye(a){var c;a.preventDefault(),a.stopPropagation();const o=(c=a.dataTransfer)==null?void 0:c.getData("Text");if(o){const C=o.split(":"),P=C[0],O=C[1];[...r.value].findIndex(fe=>(console.log(`${fe.value} === ${O} is ${fe.value===O}`),fe.value===O))>-1||_(r.value.length,P,O)}}function ve(a){a.preventDefault()}return()=>e.createVNode("div",{ref:E,class:K.value,onClick:$,onDrop:ye,onDragover:ve},[e.createVNode("ul",{ref:B,class:u.value,onWheel:a=>S(a)},[l()])])}});q.register=(n,t,m,g)=>{n.tags=q,t.tags=J},q.registerDesigner=(n,t,m)=>{n.tags=Pe,t.tags=J};const Ee=I.withInstall(q);N.FTags=q,N.default=Ee,N.propsResolver=J,N.tagsProps=W,Object.defineProperties(N,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});