bromcom-ui 2.8.1-rc.1 → 2.8.1-rc.10-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 (259) hide show
  1. package/dist/bromcom-ui/bromcom-ui.css +1 -1
  2. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  3. package/dist/bromcom-ui/{p-5b2b1352.entry.js → p-02c42184.entry.js} +1 -1
  4. package/dist/bromcom-ui/p-037a40a6.entry.js +5 -0
  5. package/dist/bromcom-ui/{p-0ae7d5fb.entry.js → p-06a45faf.entry.js} +1 -1
  6. package/dist/bromcom-ui/{p-748cefe3.entry.js → p-089069a9.entry.js} +1 -1
  7. package/dist/bromcom-ui/p-09c105f8.js +5 -0
  8. package/dist/bromcom-ui/{p-70909443.entry.js → p-09e8d92e.entry.js} +1 -1
  9. package/dist/bromcom-ui/{p-e0991d3a.entry.js → p-09fbb3b8.entry.js} +1 -1
  10. package/dist/bromcom-ui/{p-c2210caa.entry.js → p-0d1e483d.entry.js} +1 -1
  11. package/dist/bromcom-ui/{p-cab8c1e0.entry.js → p-0dfca6d7.entry.js} +1 -1
  12. package/dist/bromcom-ui/{p-5098fca3.entry.js → p-0fa13944.entry.js} +1 -1
  13. package/dist/bromcom-ui/{p-6755089b.js → p-11d582b5.js} +1 -1
  14. package/dist/bromcom-ui/p-148f83a6.entry.js +5 -0
  15. package/dist/bromcom-ui/p-19476cc8.entry.js +5 -0
  16. package/dist/bromcom-ui/{p-6de2deb5.entry.js → p-1a4ec3c9.entry.js} +1 -1
  17. package/dist/bromcom-ui/{p-bf523f14.entry.js → p-1a918f69.entry.js} +1 -1
  18. package/dist/bromcom-ui/{p-6fc52a85.entry.js → p-1e9d406f.entry.js} +1 -1
  19. package/dist/bromcom-ui/p-1eabd5dc.js +10 -0
  20. package/dist/bromcom-ui/{p-bda1709b.entry.js → p-23bda383.entry.js} +1 -1
  21. package/dist/bromcom-ui/{p-a8c8c9cf.entry.js → p-243b178e.entry.js} +1 -1
  22. package/dist/bromcom-ui/{p-67ff8aa3.entry.js → p-295d7119.entry.js} +1 -1
  23. package/dist/bromcom-ui/p-2a123374.entry.js +5 -0
  24. package/dist/bromcom-ui/{p-02116d36.entry.js → p-2b00934e.entry.js} +1 -1
  25. package/dist/bromcom-ui/{p-940cbe01.js → p-34b8ec60.js} +1 -1
  26. package/dist/bromcom-ui/{p-c3da137b.entry.js → p-3661e4d1.entry.js} +1 -1
  27. package/dist/bromcom-ui/{p-ffdc6086.entry.js → p-4886e703.entry.js} +1 -1
  28. package/dist/bromcom-ui/{p-e6afe8b6.entry.js → p-53712b34.entry.js} +1 -1
  29. package/dist/bromcom-ui/p-65d74e36.entry.js +5 -0
  30. package/dist/bromcom-ui/{p-a58c6ceb.entry.js → p-6ade0512.entry.js} +1 -1
  31. package/dist/bromcom-ui/{p-216c6fd5.entry.js → p-6e9c67c4.entry.js} +1 -1
  32. package/dist/bromcom-ui/{p-95351a23.entry.js → p-721c9f7d.entry.js} +1 -1
  33. package/dist/bromcom-ui/{p-a3109200.entry.js → p-7259beea.entry.js} +1 -1
  34. package/dist/bromcom-ui/p-759ed536.entry.js +5 -0
  35. package/dist/bromcom-ui/{p-6d8f018f.entry.js → p-818d7779.entry.js} +1 -1
  36. package/dist/bromcom-ui/{p-ffec0a2b.js → p-86221bd5.js} +1 -1
  37. package/dist/bromcom-ui/{p-481f4962.entry.js → p-885f5588.entry.js} +1 -1
  38. package/dist/bromcom-ui/{p-b40bb51f.entry.js → p-90426981.entry.js} +1 -1
  39. package/dist/bromcom-ui/p-91d43275.entry.js +13 -0
  40. package/dist/bromcom-ui/{p-677153b5.entry.js → p-95b7a1ae.entry.js} +1 -1
  41. package/dist/bromcom-ui/{p-3f9d992a.entry.js → p-99a858ed.entry.js} +1 -1
  42. package/dist/bromcom-ui/{p-b9ba70c3.entry.js → p-9a067c18.entry.js} +1 -1
  43. package/dist/bromcom-ui/{p-7ad7c6d7.entry.js → p-9d0a5fa5.entry.js} +1 -1
  44. package/dist/bromcom-ui/{p-406785b9.entry.js → p-9d60c905.entry.js} +1 -1
  45. package/dist/bromcom-ui/{p-a6b9ac13.entry.js → p-a1aa14b8.entry.js} +1 -1
  46. package/dist/bromcom-ui/{p-18a5c6ab.entry.js → p-a23fbb1b.entry.js} +1 -1
  47. package/dist/bromcom-ui/{p-426b7889.entry.js → p-ac73dc85.entry.js} +1 -1
  48. package/dist/bromcom-ui/p-ad5d5452.entry.js +5 -0
  49. package/dist/bromcom-ui/{p-44b18c6d.entry.js → p-b45f1818.entry.js} +1 -1
  50. package/dist/bromcom-ui/p-babbf589.js +5 -0
  51. package/dist/bromcom-ui/{p-68868af9.entry.js → p-bd50f5c7.entry.js} +1 -1
  52. package/dist/bromcom-ui/{p-7af21a10.entry.js → p-be88442c.entry.js} +1 -1
  53. package/dist/bromcom-ui/{p-495b54be.entry.js → p-c9d15e14.entry.js} +1 -1
  54. package/dist/bromcom-ui/{p-773d6818.js → p-d002a5ca.js} +1 -1
  55. package/dist/bromcom-ui/{p-1f0ce7fa.entry.js → p-d10b2420.entry.js} +1 -1
  56. package/dist/bromcom-ui/p-d52bdae8.entry.js +5 -0
  57. package/dist/bromcom-ui/p-e291a70c.entry.js +5 -0
  58. package/dist/bromcom-ui/{p-63bff12e.entry.js → p-e63cd734.entry.js} +1 -1
  59. package/dist/bromcom-ui/{p-e0855669.entry.js → p-ea808b98.entry.js} +1 -1
  60. package/dist/bromcom-ui/{p-4b1cba4c.entry.js → p-f9ef85d4.entry.js} +1 -1
  61. package/dist/bromcom-ui/p-fa958e3a.entry.js +5 -0
  62. package/dist/bromcom-ui/{p-81f1dd1f.js → p-ff2f2303.js} +1 -1
  63. package/dist/cjs/bcm-accordion.cjs.entry.js +1 -1
  64. package/dist/cjs/bcm-alert.cjs.entry.js +1 -1
  65. package/dist/cjs/bcm-attendance.cjs.entry.js +1 -1
  66. package/dist/cjs/bcm-avatar_2.cjs.entry.js +3 -3
  67. package/dist/cjs/bcm-breadcrumb.cjs.entry.js +1 -1
  68. package/dist/cjs/bcm-button-group.cjs.entry.js +1 -1
  69. package/dist/cjs/bcm-button_7.cjs.entry.js +4 -4
  70. package/dist/cjs/bcm-card.cjs.entry.js +1 -1
  71. package/dist/cjs/bcm-checkbox-lite_9.cjs.entry.js +1 -1
  72. package/dist/cjs/bcm-chip.cjs.entry.js +1 -1
  73. package/dist/cjs/bcm-collapse.cjs.entry.js +1 -1
  74. package/dist/cjs/bcm-color-input.cjs.entry.js +3 -3
  75. package/dist/cjs/bcm-colorful_2.cjs.entry.js +17 -546
  76. package/dist/cjs/bcm-content.cjs.entry.js +22 -0
  77. package/dist/cjs/bcm-date-picker.cjs.entry.js +1 -1
  78. package/dist/cjs/bcm-datetime-picker.cjs.entry.js +4 -7
  79. package/dist/cjs/bcm-default.cjs.entry.js +1 -1
  80. package/dist/cjs/bcm-drawer.cjs.entry.js +3 -3
  81. package/dist/cjs/bcm-dropdown.cjs.entry.js +4 -10
  82. package/dist/cjs/bcm-expansion-panel.cjs.entry.js +1 -1
  83. package/dist/cjs/bcm-form-2.cjs.entry.js +1 -1
  84. package/dist/cjs/bcm-input-custom.cjs.entry.js +1 -1
  85. package/dist/cjs/bcm-input.cjs.entry.js +5 -5
  86. package/dist/cjs/bcm-item.cjs.entry.js +1 -1
  87. package/dist/cjs/bcm-items.cjs.entry.js +1 -1
  88. package/dist/cjs/bcm-list.cjs.entry.js +143 -331
  89. package/dist/cjs/bcm-menu.cjs.entry.js +10 -7
  90. package/dist/cjs/bcm-modal-2-footer.cjs.entry.js +3 -3
  91. package/dist/cjs/bcm-modal-2-header.cjs.entry.js +3 -3
  92. package/dist/cjs/bcm-modal-2.cjs.entry.js +3 -3
  93. package/dist/cjs/bcm-modal.cjs.entry.js +34 -10
  94. package/dist/cjs/bcm-popconfirm-box.cjs.entry.js +1 -1
  95. package/dist/cjs/bcm-popconfirm.cjs.entry.js +1 -1
  96. package/dist/cjs/bcm-popover.cjs.entry.js +3 -3
  97. package/dist/cjs/bcm-progress.cjs.entry.js +1 -1
  98. package/dist/cjs/bcm-radio-group.cjs.entry.js +3 -3
  99. package/dist/cjs/bcm-radio.cjs.entry.js +3 -3
  100. package/dist/cjs/bcm-range.cjs.entry.js +1 -1
  101. package/dist/cjs/bcm-rc-overflow_2.cjs.entry.js +2443 -0
  102. package/dist/cjs/bcm-skeleton.cjs.entry.js +1 -1
  103. package/dist/cjs/bcm-step.cjs.entry.js +2 -2
  104. package/dist/cjs/bcm-stepper.cjs.entry.js +23 -7
  105. package/dist/cjs/bcm-switch.cjs.entry.js +1 -1
  106. package/dist/cjs/bcm-tab-group.cjs.entry.js +3 -3
  107. package/dist/cjs/bcm-tab-item-header.cjs.entry.js +3 -3
  108. package/dist/cjs/bcm-tab-item.cjs.entry.js +3 -3
  109. package/dist/cjs/bcm-tag.cjs.entry.js +2 -2
  110. package/dist/cjs/bcm-textarea.cjs.entry.js +3 -3
  111. package/dist/cjs/bcm-time-picker.cjs.entry.js +1 -1
  112. package/dist/cjs/bcm-toast.cjs.entry.js +1 -1
  113. package/dist/cjs/bromcom-ui.cjs.js +1 -1
  114. package/dist/cjs/{generate-493daefd.js → generate-a326693e.js} +10 -1
  115. package/dist/cjs/index-906fb4e5.js +540 -0
  116. package/dist/cjs/{input-template-96af0058.js → input-template-f4d1834d.js} +1 -1
  117. package/dist/cjs/{json-parse-decarator-b5b0b23d.js → json-parse-decarator-a72e223c.js} +1 -1
  118. package/dist/cjs/loader.cjs.js +1 -1
  119. package/dist/cjs/{number-helper-051fe1ec.js → number-helper-ca12966b.js} +1 -1
  120. package/dist/cjs/old-bcm-popover-box.cjs.entry.js +2 -2
  121. package/dist/cjs/old-bcm-popover.cjs.entry.js +1 -1
  122. package/dist/cjs/{stepper-states-efee4ad7.js → stepper-states-2e52f5b2.js} +1 -1
  123. package/dist/cjs/{tooltip-helper-a8734616.js → tooltip-helper-a11a36cc.js} +3 -3
  124. package/dist/cjs/{validators-50fd1ad1.js → validators-3697c8dc.js} +1 -1
  125. package/dist/collection/collection-manifest.json +4 -2
  126. package/dist/collection/components/molecules/dropdown/dropdown.js +20 -8
  127. package/dist/collection/components/molecules/input/input.css +0 -4
  128. package/dist/collection/components/molecules/linked/linked.js +2 -2
  129. package/dist/collection/components/molecules/menu/menu.css +23 -1
  130. package/dist/collection/components/molecules/menu/menu.js +41 -2
  131. package/dist/collection/components/molecules/modal/modal.js +59 -17
  132. package/dist/collection/components/molecules/search/search.css +0 -4
  133. package/dist/collection/components/molecules/stepper/stepper.css +75 -43
  134. package/dist/collection/components/molecules/stepper/stepper.js +38 -2
  135. package/dist/collection/components/molecules/textarea/textarea.css +0 -4
  136. package/dist/collection/components/organism/datetime-picker/datetime-picker.js +3 -6
  137. package/dist/collection/components/organism/list/list.css +4 -3
  138. package/dist/collection/components/organism/list/list.js +172 -177
  139. package/dist/collection/components/organism/states/bcm-list2.states.js +1 -1
  140. package/dist/collection/components/other/content/content.js +15 -0
  141. package/dist/collection/components/{molecules → third-parts}/colorful/colorful.css +1 -5
  142. package/dist/collection/components/third-parts/rc-overflow/rc-overflow.css +138 -0
  143. package/dist/collection/components/third-parts/rc-overflow/rc-overflow.js +194 -0
  144. package/dist/collection/helper/generate.js +9 -0
  145. package/dist/collection/templates/list-template.js +2 -2
  146. package/dist/components/bcm-alert.js +1 -1
  147. package/dist/components/bcm-checkbox-group.js +1 -1
  148. package/dist/components/bcm-content.d.ts +11 -0
  149. package/dist/components/bcm-content.js +35 -0
  150. package/dist/components/bcm-dropdown.js +3 -8
  151. package/dist/components/bcm-list.js +157 -332
  152. package/dist/components/bcm-modal.js +34 -10
  153. package/dist/components/bcm-rc-overflow.d.ts +11 -0
  154. package/dist/components/bcm-rc-overflow.js +10 -0
  155. package/dist/components/bcm-stepper.js +20 -4
  156. package/dist/components/bcm-textarea.js +1 -1
  157. package/dist/components/button.js +1 -1
  158. package/dist/components/colorful.js +2 -531
  159. package/dist/components/datetime-picker.js +3 -6
  160. package/dist/components/generate.js +10 -1
  161. package/dist/components/index.d.ts +3 -1
  162. package/dist/components/index.js +2 -0
  163. package/dist/components/index3.js +523 -177
  164. package/dist/components/index4.js +191 -0
  165. package/dist/components/input.js +1 -1
  166. package/dist/components/linked.js +2 -2
  167. package/dist/components/menu.js +8 -3
  168. package/dist/components/rc-overflow.js +2238 -0
  169. package/dist/components/search.js +2 -2
  170. package/dist/components/step.js +1 -1
  171. package/dist/esm/bcm-accordion.entry.js +1 -1
  172. package/dist/esm/bcm-alert.entry.js +1 -1
  173. package/dist/esm/bcm-attendance.entry.js +1 -1
  174. package/dist/esm/bcm-avatar_2.entry.js +3 -3
  175. package/dist/esm/bcm-breadcrumb.entry.js +1 -1
  176. package/dist/esm/bcm-button-group.entry.js +1 -1
  177. package/dist/esm/bcm-button_7.entry.js +4 -4
  178. package/dist/esm/bcm-card.entry.js +1 -1
  179. package/dist/esm/bcm-checkbox-lite_9.entry.js +1 -1
  180. package/dist/esm/bcm-chip.entry.js +1 -1
  181. package/dist/esm/bcm-collapse.entry.js +1 -1
  182. package/dist/esm/bcm-color-input.entry.js +3 -3
  183. package/dist/esm/bcm-colorful_2.entry.js +7 -536
  184. package/dist/esm/bcm-content.entry.js +18 -0
  185. package/dist/esm/bcm-date-picker.entry.js +1 -1
  186. package/dist/esm/bcm-datetime-picker.entry.js +4 -7
  187. package/dist/esm/bcm-default.entry.js +1 -1
  188. package/dist/esm/bcm-drawer.entry.js +3 -3
  189. package/dist/esm/bcm-dropdown.entry.js +4 -10
  190. package/dist/esm/bcm-expansion-panel.entry.js +1 -1
  191. package/dist/esm/bcm-form-2.entry.js +1 -1
  192. package/dist/esm/bcm-input-custom.entry.js +1 -1
  193. package/dist/esm/bcm-input.entry.js +5 -5
  194. package/dist/esm/bcm-item.entry.js +1 -1
  195. package/dist/esm/bcm-items.entry.js +1 -1
  196. package/dist/esm/bcm-list.entry.js +143 -331
  197. package/dist/esm/bcm-menu.entry.js +10 -7
  198. package/dist/esm/bcm-modal-2-footer.entry.js +3 -3
  199. package/dist/esm/bcm-modal-2-header.entry.js +3 -3
  200. package/dist/esm/bcm-modal-2.entry.js +3 -3
  201. package/dist/esm/bcm-modal.entry.js +34 -10
  202. package/dist/esm/bcm-popconfirm-box.entry.js +1 -1
  203. package/dist/esm/bcm-popconfirm.entry.js +1 -1
  204. package/dist/esm/bcm-popover.entry.js +3 -3
  205. package/dist/esm/bcm-progress.entry.js +1 -1
  206. package/dist/esm/bcm-radio-group.entry.js +3 -3
  207. package/dist/esm/bcm-radio.entry.js +3 -3
  208. package/dist/esm/bcm-range.entry.js +1 -1
  209. package/dist/esm/bcm-rc-overflow_2.entry.js +2438 -0
  210. package/dist/esm/bcm-skeleton.entry.js +1 -1
  211. package/dist/esm/bcm-step.entry.js +2 -2
  212. package/dist/esm/bcm-stepper.entry.js +23 -7
  213. package/dist/esm/bcm-switch.entry.js +1 -1
  214. package/dist/esm/bcm-tab-group.entry.js +3 -3
  215. package/dist/esm/bcm-tab-item-header.entry.js +3 -3
  216. package/dist/esm/bcm-tab-item.entry.js +3 -3
  217. package/dist/esm/bcm-tag.entry.js +2 -2
  218. package/dist/esm/bcm-textarea.entry.js +3 -3
  219. package/dist/esm/bcm-time-picker.entry.js +1 -1
  220. package/dist/esm/bcm-toast.entry.js +1 -1
  221. package/dist/esm/bromcom-ui.js +1 -1
  222. package/dist/esm/{generate-de5e04cf.js → generate-21bf7157.js} +10 -1
  223. package/dist/esm/index-6310a048.js +537 -0
  224. package/dist/esm/{input-template-c5338e25.js → input-template-1c1d8658.js} +1 -1
  225. package/dist/esm/{json-parse-decarator-a417723b.js → json-parse-decarator-8bbed2b0.js} +1 -1
  226. package/dist/esm/loader.js +1 -1
  227. package/dist/esm/{number-helper-8de373ee.js → number-helper-53aabc3d.js} +1 -1
  228. package/dist/esm/old-bcm-popover-box.entry.js +2 -2
  229. package/dist/esm/old-bcm-popover.entry.js +1 -1
  230. package/dist/esm/{stepper-states-64ffef36.js → stepper-states-aba688ef.js} +1 -1
  231. package/dist/esm/{tooltip-helper-096296d0.js → tooltip-helper-2b15bcb1.js} +3 -3
  232. package/dist/esm/{validators-c8be2c83.js → validators-db449fed.js} +1 -1
  233. package/dist/types/components/molecules/dropdown/dropdown.d.ts +1 -1
  234. package/dist/types/components/molecules/menu/menu.d.ts +2 -0
  235. package/dist/types/components/molecules/modal/modal.d.ts +10 -4
  236. package/dist/types/components/molecules/stepper/stepper.d.ts +3 -0
  237. package/dist/types/components/organism/list/list.d.ts +9 -5
  238. package/dist/types/components/other/content/content.d.ts +6 -0
  239. package/dist/types/components/third-parts/rc-overflow/rc-overflow.d.ts +17 -0
  240. package/dist/types/components.d.ts +50 -4
  241. package/package.json +2 -1
  242. package/dist/bromcom-ui/p-2677dc60.entry.js +0 -10
  243. package/dist/bromcom-ui/p-3ee818a8.entry.js +0 -5
  244. package/dist/bromcom-ui/p-48e2d5e5.js +0 -5
  245. package/dist/bromcom-ui/p-4bbdd324.entry.js +0 -5
  246. package/dist/bromcom-ui/p-57c71c1f.entry.js +0 -5
  247. package/dist/bromcom-ui/p-6a842eb1.js +0 -5
  248. package/dist/bromcom-ui/p-7a89e7ae.entry.js +0 -5
  249. package/dist/bromcom-ui/p-a8b7d3cf.entry.js +0 -5
  250. package/dist/bromcom-ui/p-b2d87a12.entry.js +0 -5
  251. package/dist/bromcom-ui/p-c0e58db2.entry.js +0 -5
  252. package/dist/bromcom-ui/p-ea763cf4.entry.js +0 -5
  253. package/dist/bromcom-ui/p-efee3d33.entry.js +0 -5
  254. package/dist/cjs/bcm-search.cjs.entry.js +0 -245
  255. package/dist/collection/components/organism/list/list-tag-control.js +0 -173
  256. package/dist/esm/bcm-search.entry.js +0 -241
  257. package/dist/types/components/organism/list/list-tag-control.d.ts +0 -18
  258. /package/dist/collection/components/{molecules → third-parts}/colorful/colorful.js +0 -0
  259. /package/dist/types/components/{molecules → third-parts}/colorful/colorful.d.ts +0 -0
@@ -1,245 +0,0 @@
1
- /*!
2
- * Built with Stencil
3
- * Copyright (c) Bromcom.
4
- */
5
- 'use strict';
6
-
7
- Object.defineProperty(exports, '__esModule', { value: true });
8
-
9
- const index$1 = require('./index-ddfd6d8f.js');
10
- const generate = require('./generate-493daefd.js');
11
- const bcm = require('./bcm-634604e3.js');
12
- const inputTemplate = require('./input-template-96af0058.js');
13
- const utils = require('./utils-fc077139.js');
14
- const index = require('./index-4506fcd7.js');
15
- const stringHelper = require('./string-helper-45cffee0.js');
16
- require('./colors-e1d142ad.js');
17
- require('./_commonjsHelpers-bd20f4c0.js');
18
- require('./types-cc4adee7.js');
19
- require('./index-fdbf5226.js');
20
-
21
- const { state } = index.createStore({
22
- value: new Map(),
23
- });
24
- const setValue = val => {
25
- const { id, dataSource } = val;
26
- const data = {
27
- id: generate.snq(() => id, generate.Generate.UID),
28
- dataSource: dataSource && dataSource.length > 0 && recursive(dataSource),
29
- searchIsOnlyChilds: val.searchIsOnlyChilds,
30
- };
31
- state.value.set(data.id, data);
32
- };
33
- const recursive = (data, parentId) => {
34
- let recData = [];
35
- if (data) {
36
- recData = data.map(item => (Object.assign(Object.assign(Object.assign({}, item), { parentId: generate.snq(() => parentId, null) }), (item.items && item.items.length > 0 && { items: generate.snq(() => recursive(item.items, item.id), []) }))));
37
- }
38
- return recData;
39
- };
40
- const removeValue = _id => {
41
- state.value.delete(_id);
42
- };
43
- const getValue = id => generate.snq(() => state.value.get(id), {});
44
- const getDataPagination = (id, limit = 3) => {
45
- let data = [];
46
- const value = getValue(id);
47
- if (value) {
48
- const { dataSource } = value;
49
- data = dataSource.slice(0, limit);
50
- }
51
- return data;
52
- };
53
- // //search treeview data by text
54
- // const searchData = (id, search, items?) => {
55
- // let dataSource
56
- // if (items && items.length > 0) {
57
- // dataSource = items
58
- // } else {
59
- // const value = getValue(id);
60
- // dataSource = value.dataSource;
61
- // }
62
- // let result = []
63
- // if (dataSource) {
64
- // dataSource.forEach(child => {
65
- // if (child.text.toLowerCase().includes(search.toLowerCase())) {
66
- // result.push(child)
67
- // }
68
- // result = result.concat(searchData(id, search, child.items))
69
- // })
70
- // };
71
- // return result
72
- // };
73
- //nested search
74
- const searchData = (id, searchText, items) => {
75
- let dataSource;
76
- if (items && items.length > 0) {
77
- dataSource = items;
78
- }
79
- else {
80
- const value = getValue(id);
81
- dataSource = value.dataSource;
82
- }
83
- let results = [];
84
- if (dataSource) {
85
- results.push(nestedSearch(id, dataSource, searchText));
86
- //return with their parents
87
- // dataSource.forEach(child => {
88
- // if (child.text.toLowerCase().includes(searchText.toLowerCase())) {
89
- // results.push(child)
90
- // } else if (child.items && child.items.length > 0) {
91
- // child.items = nestedSearch(child.items, searchText)
92
- // if (child.items.length > 0) {
93
- // results.push(child)
94
- // }
95
- // }
96
- // })
97
- }
98
- return {
99
- result: generate.snq(() => generate.Generate.flatArray(results[0].result), []),
100
- matching: generate.snq(() => results[0].matching, []),
101
- parentIndex: generate.snq(() => results[0].parentIndex, []),
102
- nestedResult: generate.snq(() => results[0].nestedResult, []),
103
- };
104
- };
105
- const nestedSearch = (id, items, searchText) => {
106
- let matching = [];
107
- let parentIndex = [];
108
- let result = [];
109
- let nestedResult = [];
110
- const { searchIsOnlyChilds } = getValue(id);
111
- if (items && items.length > 0) {
112
- items.forEach(child => {
113
- let isChild = searchIsOnlyChilds && child.parentId !== null;
114
- let isMatching = stringHelper.StringHelper.slugify(child.text).indexOf(stringHelper.StringHelper.slugify(searchText)) > -1 ||
115
- (child.keywords && stringHelper.StringHelper.slugify(child.keywords).indexOf(stringHelper.StringHelper.slugify(searchText)) > -1);
116
- if (isMatching && (!searchIsOnlyChilds || (searchIsOnlyChilds && isChild))) {
117
- result.push(child.id);
118
- matching.push(child.id);
119
- parentIndex.push(child.id);
120
- nestedResult.push({ id: child.id, text: child.text, parentId: child.parentId });
121
- if (child.items && child.items.length > 0) {
122
- const found = nestedSearch(id, child.items, searchText);
123
- if (found.matching.length > 0) {
124
- found.matching.forEach(chi => {
125
- matching.push(chi);
126
- });
127
- }
128
- }
129
- }
130
- else if (child.items && child.items.length > 0) {
131
- const found = nestedSearch(id, child.items, searchText);
132
- if (found.result.length > 0) {
133
- found.result.forEach(chi => {
134
- result.push(chi);
135
- });
136
- result.push(child.id);
137
- parentIndex.push(child.id);
138
- nestedResult.push({ id: child.id, text: child.text, parentId: child.parentId, items: found.nestedResult });
139
- }
140
- if (found.matching.length > 0) {
141
- matching.push(...found.matching);
142
- }
143
- }
144
- });
145
- }
146
- return { result, matching, parentIndex, nestedResult };
147
- };
148
- const searchState = {
149
- setValue,
150
- removeValue,
151
- getValue,
152
- getDataPagination,
153
- searchData,
154
- };
155
-
156
- const searchCss = "@import url(\"https://fonts.googleapis.com/css?family=Roboto:400,500\");@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@200;400;500;600&display=swap\"); @import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@200;400;500;600&display=swap\"); @import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@200;400;500;600&display=swap\"); .size-1{font-size:12px;line-height:20px}.size-2{font-size:14px;line-height:22px}.size-3{font-size:16px;line-height:24px}.size-4{font-size:20px;line-height:28px}.size-5{font-size:24px;line-height:32px}.size-6{font-size:30px;line-height:38px}.size-7{font-size:38px;line-height:46px}.size-8{font-size:46px;line-height:54px}.size-9{font-size:56px;line-height:64px}.weight-regular{font-weight:400}.weight-semibold{font-weight:500}.input-size-large{height:40px}.input-size-medium{height:32px}.input-size-small{height:24px}.resize-none textarea{resize:none}.resize-vertical textarea{resize:vertical}.resize-auto textarea{height:auto;resize:none}.textarea-size-large{padding:4px 0 0 4px;min-height:40px}.textarea-size-large .bcm-input-element{min-height:calc((40px - 8px) + 2px)}.textarea-size-large .input-clear-button{height:calc( 40px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-medium{padding:4px 0 0 4px;min-height:32px}.textarea-size-medium .bcm-input-element{min-height:calc((32px - 8px) + 2px)}.textarea-size-medium .input-clear-button{height:calc( 32px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-small{padding:0px 0 0 4px;min-height:24px}.textarea-size-small .bcm-input-element{min-height:calc((24px - 8px) + 2px)}.textarea-size-small .input-clear-button{height:calc( 24px - 16px );top:8px;padding:0;margin-right:8px}*{box-sizing:border-box}.bcm-caption-area{font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;font-size:12px;line-height:calc(12px + 8px);color:var(--bcm-new-ds-color-slate-400);display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;flex-wrap:nowrap;margin-top:2px}.bcm-caption-area__text{color:var(--bcm-new-ds-color-slate-400)}.bcm-caption-area__text.default{color:var(--bcm-new-ds-color-slate-400)}.bcm-caption-area__text.info{color:var(--bcm-new-ds-color-blue-500)}.bcm-caption-area__text.success{color:var(--bcm-new-ds-color-emerald-500)}.bcm-caption-area__text.warning{color:var(--bcm-new-ds-color-amber-500)}.bcm-caption-area__text.error{color:var(--bcm-new-ds-color-red-500)}.bcm-caption-area__size-small{font-size:10px;line-height:calc(10px + 8px);min-height:calc(10px + 8px)}.bcm-caption-area__size-medium{font-size:12px;line-height:calc(12px + 8px);min-height:calc(12px + 8px)}.bcm-caption-area__size-large{font-size:14px;line-height:calc(14px + 8px);min-height:calc(14px + 8px)}*{box-sizing:border-box}.bcm-label{display:inline-flex;align-items:flex-start;grid-gap:2px}.bcm-label__text{margin-bottom:2px;font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;display:inline-block;color:var(--bcm-new-ds-color-slate-600)}.bcm-label__size-small{font-size:10px;line-height:calc(10px + 8px);min-height:calc(10px + 8px)}.bcm-label__size-medium{font-size:12px;line-height:calc(12px + 8px);min-height:calc(12px + 8px)}.bcm-label__size-large{font-size:14px;line-height:calc(14px + 8px);min-height:calc(14px + 8px)}.bcm-input[no-margin]{margin:0}.bcm-textarea[no-margin]{margin:0}.bcm-switch[no-margin]{margin:0}.bcm-checkbox[no-margin]{margin:0}.bcm-radio-group[no-margin]{margin:0}.bcm-checkbox-group[no-margin]{margin:0}.bcm-range[no-margin]{margin:0}.bcm-form[no-margin]{margin:0}.bcm-form-group[no-margin]{margin:0}.bcm-list[no-margin]{margin:0}.bcm-colorpicker[no-margin]{margin:0}.bcm-date-picker[no-margin]{margin:0}.bcm-time-picker[no-margin]{margin:0}.bcm-datetime-picker[no-margin]{margin:0}.bcm-select[no-margin]{margin:0}.bcm-listbox[no-margin]{margin:0}*{box-sizing:border-box}.bcm-input{display:inline-flex;flex-direction:column;width:100%;max-width:256px;margin-bottom:8px}.bcm-input.full-width{max-width:100%}.bcm-input.hidden{display:none}.bcm-input__container{font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;display:flex;align-items:stretch;flex-direction:row;background-color:var(--bcm-new-ds-color-white);border:1px solid var(--bcm-new-ds-color-slate-300);border-radius:4px;box-sizing:border-box;cursor:text;padding:0 0 0 4px;position:relative;width:100%}.bcm-input__container.disabled{background-color:var(--bcm-new-ds-color-slate-50);cursor:not-allowed}.bcm-input__container.disabled .bcm-input-element{color:var(--bcm-new-ds-color-slate-500)}.bcm-input__container.readonly{background-color:var(--bcm-new-ds-color-slate-50);cursor:default}.bcm-input__container.readonly .bcm-input-element{color:var(--bcm-new-ds-color-slate-600)}.bcm-input__container:not(.disabled):hover .caret-container,.bcm-input__container:not(.disabled).focused .caret-container{opacity:1}.bcm-input__container:not(.disabled):hover .input-clear-button,.bcm-input__container:not(.disabled).focused .input-clear-button{opacity:1}.bcm-input__container:not(.disabled).focused{background-color:var(--bcm-new-ds-color-slate-50)}.bcm-input__container:not(.disabled):hover{border-color:var(--bcm-color-prime-blue-6)}.bcm-input__container.empty .input-clear-button{display:none}.bcm-input__container.invalid,.bcm-input__container.error{border-color:var(--bcm-new-ds-color-red-500)}.bcm-input__container .bcm-input-element{width:100%;color:var(--bcm-new-ds-color-slate-600);flex:1;border:none;background:transparent;box-shadow:unset;padding:0 4px;font-family:\"Inter\", sans-serif;cursor:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bcm-input__container .bcm-input-element::placeholder{font-family:\"Inter\", sans-serif;color:var(--bcm-new-ds-color-slate-300);user-select:none}.bcm-input__container .bcm-input-element::-webkit-search-decoration,.bcm-input__container .bcm-input-element::-webkit-search-cancel-button,.bcm-input__container .bcm-input-element::-webkit-search-results-button,.bcm-input__container .bcm-input-element::-webkit-search-results-decoration,.bcm-input__container .bcm-input-element::-webkit-calendar-picker-indicator,.bcm-input__container .bcm-input-element::-webkit-inner-spin-button,.bcm-input__container .bcm-input-element::-webkit-outer-spin-button{-webkit-appearance:none}.bcm-input__container .caret-container{width:30px;display:flex;flex-direction:column;justify-content:center;align-items:stretch;border-left:1px solid #D9D9D9;transition:0.2s opacity;user-select:none;box-sizing:border-box}.bcm-input__container .caret-container .bcm-input-caret{display:flex;align-items:center;justify-content:center;color:var(--bcm-color-grey-7);cursor:pointer;flex:1}.bcm-input__container .caret-container .bcm-input-caret bcm-icon{line-height:1}.bcm-input__container .caret-container .bcm-input-caret:hover{color:var(--bcm-color-prime-blue-6)}.bcm-input__container .caret-container .bcm-input-caret:active{background-color:var(--bcm-color-grey-3)}.bcm-input__container .caret-container .bcm-input-caret:last-child{border-top:1px solid #D9D9D9}.bcm-input__container .caret-container.disabled{background-color:var(--bcm-color-grey-3)}.bcm-input__container .caret-container.disabled .bcm-input-caret{cursor:not-allowed}.bcm-input__container .input-suffix-content{display:flex;align-items:center;justify-content:center}.bcm-input__container .input-prefix:not(:empty){padding-left:4px}.bcm-input__container .input-suffix:not(:empty){min-width:24px;padding-right:4px}.bcm-input__container .input-prefix:not(:empty),.bcm-input__container .input-suffix:not(:empty){display:flex;align-items:center;justify-content:center;cursor:default;color:#64748a}.bcm-input__container .input-prefix:not(:empty) .unit-prefix,.bcm-input__container .input-suffix:not(:empty) .unit-prefix{color:#64748a}.bcm-input__container .input-prefix-button:not(:empty),.bcm-input__container .input-suffix-button:not(:empty){cursor:pointer}.bcm-input__container .caret-container,.bcm-input__container .input-clear-button{opacity:0}.bcm-input__container--small{font-size:12px}.bcm-input__container--medium{font-size:14px}.bcm-input__container--large{font-size:16px}.bcm-input__textarea .bcm-input-element{white-space:normal}.bcm-input__textarea.clearable .bcm-input-element{padding-right:24px}.bcm-input__textarea .input-clear-button{position:absolute;top:4px;right:0}";
157
-
158
- const BcmSearch = class {
159
- constructor(hostRef) {
160
- index$1.registerInstance(this, hostRef);
161
- this.bcmOnSearch = index$1.createEvent(this, "bcm-on-search", 7);
162
- this.bcmOnSearchClear = index$1.createEvent(this, "bcm-on-search-clear", 7);
163
- this.debounceHandler = generate.Generate.debounceInput((event) => this.onSearchValue(event, this), 300, false, () => {
164
- var _a, _b;
165
- this.isActiveClearable = ((_b = (_a = this.inputElement) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.length) > 0 && this.clearable;
166
- });
167
- this._id = generate.Generate.UID();
168
- this.placeholder = "Search";
169
- this.disabled = false;
170
- this.readonly = false;
171
- this.clearable = true;
172
- this.size = bcm.Bcm.Size.medium;
173
- this.limit = 10;
174
- this.searchIsOnlyChilds = false;
175
- this.minSearchLength = 2;
176
- this.data = [];
177
- this.tick = {};
178
- this.isActiveClearable = false;
179
- }
180
- async componentDidLoad() {
181
- await this.initState();
182
- }
183
- async dataChanged(newValue, oldValue) {
184
- // console.log('data changed', newValue, oldValue)
185
- if (newValue !== oldValue) {
186
- await this.initState();
187
- }
188
- }
189
- async initState() {
190
- await searchState.setValue({
191
- id: this._id + "-input",
192
- dataSource: this.data,
193
- searchIsOnlyChilds: this.searchIsOnlyChilds,
194
- });
195
- await this.markForCheck();
196
- }
197
- markForCheck() {
198
- this.tick = generate.Generate.UID();
199
- }
200
- handleInput() {
201
- // console.log("aheyya")
202
- }
203
- async onBcmFocus() {
204
- this.inputElement.focus();
205
- }
206
- async onBcmBlur() {
207
- this.inputElement.blur();
208
- }
209
- async onBcmSelect() {
210
- this.inputElement.select();
211
- }
212
- async setValue(newValue) {
213
- this.inputElement.value = newValue;
214
- }
215
- handleFocus() { }
216
- handleBlur() { }
217
- handleChange() { }
218
- async handleClear(eventEmit = true) {
219
- this.inputElement.value = '';
220
- const { value, id } = this.inputElement;
221
- searchState.searchData(id, value);
222
- this.isActiveClearable = false;
223
- this.bcmOnSearch.emit({ result: null, value: null, matching: null, parentIndex: null });
224
- this.bcmOnSearchClear.emit(eventEmit);
225
- await utils.delay(10);
226
- return Promise.resolve();
227
- }
228
- onSearchValue(event, instance) {
229
- const { value, id } = event.target;
230
- const searchResult = (value === null || value === void 0 ? void 0 : value.length) >= this.minSearchLength ? searchState.searchData(id, value, null) : null;
231
- const { bcmOnSearch, inputElement } = instance;
232
- bcmOnSearch.emit({ result: searchResult === null || searchResult === void 0 ? void 0 : searchResult.result, value: inputElement === null || inputElement === void 0 ? void 0 : inputElement.value, matching: searchResult === null || searchResult === void 0 ? void 0 : searchResult.matching, parentIndex: searchResult === null || searchResult === void 0 ? void 0 : searchResult.parentIndex, nestedResult: searchResult === null || searchResult === void 0 ? void 0 : searchResult.nestedResult });
233
- }
234
- render() {
235
- const { _id, placeholder, disabled, readonly } = this;
236
- return index$1.h(index$1.Host, { onClick: () => { this.onBcmFocus(); this.onBcmSelect(); } }, index$1.h(inputTemplate.InputTemplate, { size: this.size, id: _id, type: "search", placeholder: placeholder, disabled: disabled, "full-width": true, readonly: readonly, clearable: this.isActiveClearable, handleFocus: () => this.handleFocus(), handleBlur: () => this.handleBlur(), handleChange: () => this.handleChange(), handleClear: () => this.handleClear(), handleInput: this.debounceHandler, ref: (el) => this.inputElement = el }));
237
- }
238
- get el() { return index$1.getElement(this); }
239
- static get watchers() { return {
240
- "data": ["dataChanged"]
241
- }; }
242
- };
243
- BcmSearch.style = searchCss;
244
-
245
- exports.bcm_search = BcmSearch;
@@ -1,173 +0,0 @@
1
- /*!
2
- * Built with Stencil
3
- * Copyright (c) Bromcom.
4
- */
5
- import { Tooltip } from '@bcm/helpers';
6
- import snq from 'snq';
7
- import { StringHelper } from '../../../helper/string-helper';
8
- import { pluralize } from '../../../utils/utils';
9
- export class ListTagControl {
10
- constructor(containerId, values, listId, selectedOtherTag, clearable) {
11
- this.clearable = false;
12
- this.containerId = containerId;
13
- this.values = values;
14
- this.listId = listId;
15
- this.selectedOtherTag = selectedOtherTag;
16
- this.clearable = clearable;
17
- }
18
- getTooltip(id, text) {
19
- return new Tooltip({ message: text, targetId: id, placement: 'bottom' });
20
- }
21
- tagHtmlTemplate(tag, isOtherTag = false, otherTagIsSingle = false) {
22
- return `<span class="bcm-tag__content dismissable ${!otherTagIsSingle && isOtherTag && (this.selectedOtherTag ? 'checkable checked' : '')}">
23
- <span class="value">${tag.text}</span>
24
- ${otherTagIsSingle
25
- ? ''
26
- : `
27
- <span class="right close-button" bcm-list-tag-dismiss >
28
- <bcm-icon icon="fal fa-times"></bcm-icon>
29
- </span>`}
30
- </span>`;
31
- }
32
- getContainer() {
33
- return document.getElementById(this.containerId);
34
- }
35
- getContainerWidth() {
36
- let tagContainerWidth = snq(() => document.getElementById(this.containerId).clientWidth, 0);
37
- tagContainerWidth = (this.clearable ? tagContainerWidth - 20 : tagContainerWidth) - 20;
38
- return [tagContainerWidth < 130 ? 130 : tagContainerWidth - 20, tagContainerWidth];
39
- }
40
- isClickDismiss(e) {
41
- const path = e.path || (e.composedPath && e.composedPath());
42
- const tag = path.find(element => element.attributes && element.attributes['bcm-list-tag-dismiss']);
43
- return !!tag;
44
- }
45
- onClickControl(e, id, isOtherTag = false) {
46
- const isDismiss = this.isClickDismiss(e);
47
- let tooltipId = '';
48
- if (isDismiss) {
49
- this.onClickDismiss(id);
50
- tooltipId = isOtherTag ? `bcm-list-input-tag-${this.listId}-other-tag` : `list-${this.listId}-${id}`;
51
- this.getTooltip(tooltipId, '').hide();
52
- }
53
- else {
54
- isOtherTag ? this.onClickOtherTag(id) : this.onClickTag(id);
55
- }
56
- }
57
- calculateTags() {
58
- const containerWidth = this.getContainerWidth();
59
- const virtualDom = this.getContainer();
60
- if (virtualDom) {
61
- if (this.values && this.values.length > 0) {
62
- if (containerWidth[0] > 0 && virtualDom) {
63
- virtualDom.innerHTML = '';
64
- this.values.slice(0, 50).map(value => {
65
- const tag = document.createElement('div');
66
- tag.classList.add('bcm-tag');
67
- tag.id = `list-${this.listId}-${value.id}`;
68
- // tag.title = value.tagTitle || value.text || '';
69
- tag.onmouseenter = () => this.getTooltip(`list-${this.listId}-${value.id}`, value.tagTitle || value.text || '').show();
70
- tag.onmouseleave = () => this.getTooltip(`list-${this.listId}-${value.id}`, value.tagTitle || value.text || '').hide();
71
- tag.dataset.id = value.id;
72
- tag.onclick = e => this.onClickControl(e, value.id);
73
- tag.innerHTML = this.tagHtmlTemplate(Object.assign(Object.assign({}, value), { text: StringHelper.textLimitter(value.text, 10) }));
74
- virtualDom.appendChild(tag);
75
- });
76
- let tags = virtualDom.querySelectorAll('.bcm-tag');
77
- let otherTags = [];
78
- let visibleTags = [];
79
- const checkControl = () => {
80
- const virtualDomTags = virtualDom.querySelectorAll('.bcm-tag');
81
- if (visibleTags.length === 1 && (virtualDomTags === null || virtualDomTags === void 0 ? void 0 : virtualDomTags.length) === 1) {
82
- visibleTags[0].innerHTML = this.tagHtmlTemplate({ text: '+1' }, false, true);
83
- }
84
- };
85
- let tagsWidth = Array.from(tags).reduce((acc, tag) => {
86
- const tagClientWidth = tag.clientWidth > 50 ? tag.clientWidth : 50;
87
- if (tagClientWidth > 0 && acc + tagClientWidth + 10 < containerWidth[0]) {
88
- acc += tagClientWidth + 10;
89
- visibleTags.push(tag);
90
- const checkFreeSpace = tagClientWidth > 0 && acc + tagClientWidth + 10 < containerWidth[0];
91
- !checkFreeSpace && containerWidth[1] < 70 && checkControl();
92
- }
93
- else {
94
- otherTags.push(tag);
95
- tag.remove();
96
- }
97
- return acc;
98
- }, 0);
99
- const otherTagElement = this.values.slice(visibleTags.length);
100
- const virtualDomLastElements = virtualDom.lastElementChild;
101
- const otherTagTextControl = args => {
102
- const { count, width } = args;
103
- if (count > 999)
104
- return '999+' + pluralize('item', count);
105
- if (width >= 100)
106
- return `${count} ` + pluralize('item', count) + ' selected';
107
- if (width < 100)
108
- return `+${count < 10 ? count : '9'}`;
109
- };
110
- if (otherTags && otherTags.length > 0 && virtualDomLastElements && virtualDomLastElements.id !== `bcm-list-input-tag-${this.listId}-other-tag`) {
111
- otherTags.push(virtualDomLastElements);
112
- if (otherTags.length > 0) {
113
- const otherCounter = otherTagElement.length + 1;
114
- const createOthertagElement = {
115
- id: `bcm-list-input-tag-${this.listId}-other-tag`,
116
- text: otherTagTextControl({ count: otherCounter, width: containerWidth[1] }),
117
- title: snq(() => otherTags
118
- .map(tag => this.values.find(value => value.id == tag.dataset.id))
119
- .sort((a, b) => +a.ct - +b.ct)
120
- .slice(0, 15)
121
- .map(item => StringHelper.textLimitter(item.tagTitle || item.text, 40, true))
122
- .toString()
123
- .split(',')
124
- .join('\r\n') + (otherTags.length > 15 ? ('\r\n...') : ''), '...'),
125
- };
126
- virtualDomLastElements.remove();
127
- visibleTags = visibleTags.filter(tag => tag.id !== virtualDomLastElements.id);
128
- const hiddenTags = this.values.filter(value => !visibleTags.find(tag => tag.dataset.id == value.id)).map(value => value.id);
129
- const otherTag = document.createElement('div');
130
- const otherTagIds = hiddenTags.join(',');
131
- const otherTagIsSingle = visibleTags.length === 0;
132
- otherTag.classList.add('bcm-tag');
133
- !otherTagIsSingle && otherTag.classList.add('bcm-tag--other');
134
- otherTag.id = createOthertagElement.id;
135
- // otherTag.title = createOthertagElement.title || false;
136
- if (createOthertagElement.title) {
137
- otherTag.onmouseenter = () => this.getTooltip(createOthertagElement.id, createOthertagElement.title).show();
138
- otherTag.onmouseleave = () => this.getTooltip(createOthertagElement.id, createOthertagElement.title).hide();
139
- }
140
- otherTag.onclick = e => this.onClickControl(e, otherTagIds, otherTagIsSingle ? false : true);
141
- otherTag.innerHTML = this.tagHtmlTemplate(createOthertagElement, true, otherTagIsSingle);
142
- otherTag.dataset.ids = hiddenTags.join(',');
143
- virtualDom.appendChild(otherTag);
144
- }
145
- }
146
- const otherTag = document.getElementById(`bcm-list-input-tag-${this.listId}-other-tag`);
147
- const otherTagWidth = otherTag ? (otherTag.clientWidth && otherTag.clientWidth < 50 ? 50 : otherTag.clientWidth) : 200;
148
- const tagsPerRow = Math.floor(containerWidth[0] - tagsWidth);
149
- if (tagsPerRow > otherTagWidth) {
150
- if (otherTag) {
151
- const findElement = this.values.find(value => value.id == otherTag.dataset.ids.split(',')[0]);
152
- const tag = document.createElement('div');
153
- tag.classList.add('bcm-tag');
154
- tag.id = `list-${this.listId}-${findElement.id}`;
155
- // tag.title = findElement?.title || '';
156
- tag.onmouseenter = () => this.getTooltip(`list-${this.listId}-${findElement.id}`, (findElement === null || findElement === void 0 ? void 0 : findElement.title) || '').show();
157
- tag.onmouseleave = () => this.getTooltip(`list-${this.listId}-${findElement.id}`, (findElement === null || findElement === void 0 ? void 0 : findElement.title) || '').hide();
158
- tag.dataset.id = findElement.id;
159
- tag.onclick = e => this.onClickControl(e, findElement === null || findElement === void 0 ? void 0 : findElement.id);
160
- tag.innerHTML = this.tagHtmlTemplate(Object.assign(Object.assign({}, findElement), { text: StringHelper.textLimitter(findElement.text, 10) }));
161
- const otherTagElement = document.getElementById(`bcm-list-input-tag-${this.listId}-other-tag`);
162
- otherTagElement.remove();
163
- virtualDom.appendChild(tag);
164
- }
165
- }
166
- }
167
- }
168
- else {
169
- virtualDom.innerHTML = '';
170
- }
171
- }
172
- }
173
- }