bromcom-ui 2.9.0-rc.8 → 2.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (495) 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/global/global.js +6 -0
  4. package/dist/bromcom-ui/global/helper/toast.ts +2 -0
  5. package/dist/bromcom-ui/p-08c75801.js +5 -0
  6. package/dist/bromcom-ui/p-0dacfdbc.entry.js +5 -0
  7. package/dist/bromcom-ui/{p-24f0e23a.entry.js → p-13f6e1a7.entry.js} +1 -1
  8. package/dist/bromcom-ui/{p-5c3e9ac9.entry.js → p-14cafd64.entry.js} +1 -1
  9. package/dist/bromcom-ui/p-170cf07d.js +6 -0
  10. package/dist/bromcom-ui/p-19634d99.js +5 -0
  11. package/dist/bromcom-ui/{p-e4477593.entry.js → p-1c801d0c.entry.js} +1 -1
  12. package/dist/bromcom-ui/{p-48f85544.entry.js → p-1c9314bd.entry.js} +1 -1
  13. package/dist/bromcom-ui/{p-6bcaf906.entry.js → p-1cfe5a5d.entry.js} +1 -1
  14. package/dist/bromcom-ui/p-20ba9769.entry.js +5 -0
  15. package/dist/bromcom-ui/{p-8ded5483.entry.js → p-228c74e9.entry.js} +1 -1
  16. package/dist/bromcom-ui/{p-65f01d32.entry.js → p-22eb4e12.entry.js} +1 -1
  17. package/dist/bromcom-ui/{p-f331e009.entry.js → p-26290ed5.entry.js} +1 -1
  18. package/dist/bromcom-ui/{p-240151d4.entry.js → p-2aaeb247.entry.js} +1 -1
  19. package/dist/bromcom-ui/{p-73ca7c0a.entry.js → p-2b822458.entry.js} +1 -1
  20. package/dist/bromcom-ui/{p-dbc4c30c.js → p-2c5a0863.js} +1 -1
  21. package/dist/bromcom-ui/p-304bfa08.entry.js +5 -0
  22. package/dist/bromcom-ui/p-3432a82d.js +19 -0
  23. package/dist/bromcom-ui/p-399bce44.entry.js +5 -0
  24. package/dist/bromcom-ui/p-41cea609.entry.js +7 -0
  25. package/dist/bromcom-ui/{p-6c3e9e10.entry.js → p-430c0a24.entry.js} +1 -1
  26. package/dist/bromcom-ui/p-434c170e.js +5 -0
  27. package/dist/bromcom-ui/{p-d0bb9a84.entry.js → p-440bbaaa.entry.js} +1 -1
  28. package/dist/bromcom-ui/p-47400be4.entry.js +5 -0
  29. package/dist/bromcom-ui/{p-f5bed571.entry.js → p-4a2de9ce.entry.js} +1 -1
  30. package/dist/bromcom-ui/p-4f42085a.entry.js +5 -0
  31. package/dist/bromcom-ui/{p-ff48f5b2.entry.js → p-5232e011.entry.js} +1 -1
  32. package/dist/bromcom-ui/p-53e91ae6.js +5 -0
  33. package/dist/bromcom-ui/{p-c75519d5.js → p-54211561.js} +1 -1
  34. package/dist/bromcom-ui/{p-dc2c4b14.entry.js → p-5699f67d.entry.js} +1 -1
  35. package/dist/bromcom-ui/p-5871767a.entry.js +5 -0
  36. package/dist/bromcom-ui/{p-45767d1d.entry.js → p-588165ef.entry.js} +1 -1
  37. package/dist/bromcom-ui/p-5916e844.entry.js +5 -0
  38. package/dist/bromcom-ui/{p-499bb928.entry.js → p-5fb0f815.entry.js} +1 -1
  39. package/dist/bromcom-ui/{p-2fc584c4.js → p-61db1f1f.js} +1 -1
  40. package/dist/bromcom-ui/{p-89e1d8c5.entry.js → p-626b805d.entry.js} +1 -1
  41. package/dist/bromcom-ui/{p-d389b202.entry.js → p-647de93f.entry.js} +1 -1
  42. package/dist/bromcom-ui/p-64fad38b.js +11 -0
  43. package/dist/bromcom-ui/{p-03134b6f.entry.js → p-67343ad8.entry.js} +1 -1
  44. package/dist/bromcom-ui/{p-bd51d347.entry.js → p-69260d36.entry.js} +1 -1
  45. package/dist/bromcom-ui/p-6cf1e8a2.entry.js +5 -0
  46. package/dist/bromcom-ui/{p-4aa0e6b1.js → p-6edf985f.js} +1 -1
  47. package/dist/bromcom-ui/p-73ec379d.entry.js +5 -0
  48. package/dist/bromcom-ui/{p-3cde7f38.js → p-74e6d2b6.js} +1 -1
  49. package/dist/bromcom-ui/p-75ec5cc6.entry.js +5 -0
  50. package/dist/bromcom-ui/p-784a7bb0.entry.js +5 -0
  51. package/dist/bromcom-ui/p-78f0fe00.js +5 -0
  52. package/dist/bromcom-ui/p-7b05abe8.entry.js +5 -0
  53. package/dist/bromcom-ui/{p-d995750a.entry.js → p-7c5763cc.entry.js} +1 -1
  54. package/dist/bromcom-ui/p-7cb30513.js +5 -0
  55. package/dist/bromcom-ui/{p-81eeccfa.entry.js → p-7d18ce0e.entry.js} +1 -1
  56. package/dist/bromcom-ui/{p-5ae0a59b.js → p-7e44e6b5.js} +1 -1
  57. package/dist/bromcom-ui/p-80ee3d97.entry.js +5 -0
  58. package/dist/bromcom-ui/p-822d590f.entry.js +5 -0
  59. package/dist/bromcom-ui/p-85eedabc.js +5 -0
  60. package/dist/bromcom-ui/p-89a28750.entry.js +5 -0
  61. package/dist/bromcom-ui/{p-3c7a0345.js → p-8c018ae0.js} +1 -1
  62. package/dist/bromcom-ui/p-8f45ba5f.entry.js +5 -0
  63. package/dist/bromcom-ui/p-9075a184.entry.js +5 -0
  64. package/dist/bromcom-ui/{p-f58c1fbe.entry.js → p-913c55ee.entry.js} +1 -1
  65. package/dist/bromcom-ui/p-9164639f.entry.js +5 -0
  66. package/dist/bromcom-ui/p-9850cbce.js +5 -0
  67. package/dist/bromcom-ui/{p-8bcfe3b3.entry.js → p-99824717.entry.js} +1 -1
  68. package/dist/bromcom-ui/p-9bd5f3b4.entry.js +5 -0
  69. package/dist/bromcom-ui/{p-6aeaef2a.entry.js → p-a006e404.entry.js} +1 -1
  70. package/dist/bromcom-ui/{p-e9842c26.js → p-a0ba474b.js} +1 -1
  71. package/dist/bromcom-ui/{p-b60bcecf.js → p-a1b1750c.js} +1 -1
  72. package/dist/bromcom-ui/{p-8fcb5846.js → p-a2c364af.js} +1 -1
  73. package/dist/bromcom-ui/p-a40a5474.entry.js +5 -0
  74. package/dist/bromcom-ui/{p-7c6e3ae5.entry.js → p-a664cc20.entry.js} +1 -1
  75. package/dist/bromcom-ui/p-a9eb0321.js +315 -0
  76. package/dist/bromcom-ui/{p-2acd6bee.entry.js → p-ab0b4d1e.entry.js} +1 -1
  77. package/dist/bromcom-ui/{p-ea4d8a18.entry.js → p-ae57f046.entry.js} +1 -1
  78. package/dist/bromcom-ui/{p-2caa75a4.entry.js → p-b4f033b4.entry.js} +1 -1
  79. package/dist/bromcom-ui/p-b81e8f91.js +5 -0
  80. package/dist/bromcom-ui/{p-503feae9.entry.js → p-b8a8bd1d.entry.js} +1 -1
  81. package/dist/bromcom-ui/{p-b4ac5904.js → p-b901e1ce.js} +1 -1
  82. package/dist/bromcom-ui/p-ba74a838.entry.js +5 -0
  83. package/dist/bromcom-ui/{p-c42dffea.entry.js → p-ba949d4a.entry.js} +1 -1
  84. package/dist/bromcom-ui/{p-f4538abb.entry.js → p-ba9eff2a.entry.js} +1 -1
  85. package/dist/bromcom-ui/{p-fb4b5224.entry.js → p-bd2b6de5.entry.js} +1 -1
  86. package/dist/bromcom-ui/{p-ebee9f45.entry.js → p-c1a992e7.entry.js} +1 -1
  87. package/dist/bromcom-ui/{p-908b1b5d.js → p-c8751181.js} +1 -1
  88. package/dist/bromcom-ui/p-ccf0872d.js +5 -0
  89. package/dist/bromcom-ui/p-cf659967.entry.js +5 -0
  90. package/dist/bromcom-ui/{p-8d0ca8c2.js → p-d153c7fc.js} +1 -1
  91. package/dist/bromcom-ui/p-d3db9e02.entry.js +5 -0
  92. package/dist/bromcom-ui/{p-7ddaedb7.entry.js → p-d551a51d.entry.js} +1 -1
  93. package/dist/bromcom-ui/{p-ec36d0c0.entry.js → p-d68c2c0a.entry.js} +1 -1
  94. package/dist/bromcom-ui/{p-e5a0d8f6.entry.js → p-d724cfa9.entry.js} +1 -1
  95. package/dist/bromcom-ui/{p-af0a447d.entry.js → p-d7ca94e1.entry.js} +1 -1
  96. package/dist/bromcom-ui/p-dd49ae28.entry.js +5 -0
  97. package/dist/bromcom-ui/p-e2294927.entry.js +5 -0
  98. package/dist/bromcom-ui/{p-1b1f4b44.entry.js → p-e688b044.entry.js} +1 -1
  99. package/dist/bromcom-ui/p-ec0224fb.entry.js +5 -0
  100. package/dist/bromcom-ui/{p-6ca980dd.entry.js → p-ece578ef.entry.js} +1 -1
  101. package/dist/bromcom-ui/{p-1be22601.entry.js → p-ef8c5b55.entry.js} +1 -1
  102. package/dist/bromcom-ui/p-f711588b.js +5 -0
  103. package/dist/bromcom-ui/p-fe1f2413.entry.js +5 -0
  104. package/dist/bromcom-ui/{p-a82f2b2a.entry.js → p-fe83cdd3.entry.js} +1 -1
  105. package/dist/bromcom-ui/{p-f619f9f9.entry.js → p-fff1a0f9.entry.js} +1 -1
  106. package/dist/bromcom-ui/static/message-bot.svg +2 -2
  107. package/dist/cjs/{_commonjsHelpers-bd20f4c0.js → _commonjsHelpers-ed84c3ca.js} +16 -0
  108. package/dist/cjs/{bcm-ab921827.js → bcm-7f703055.js} +33 -31
  109. package/dist/cjs/bcm-accordion.cjs.entry.js +5 -5
  110. package/dist/cjs/bcm-alert.cjs.entry.js +9 -9
  111. package/dist/cjs/bcm-attendance.cjs.entry.js +5 -5
  112. package/dist/cjs/bcm-autocomplete.cjs.entry.js +3 -3
  113. package/dist/cjs/bcm-avatar_2.cjs.entry.js +209 -0
  114. package/dist/cjs/bcm-box.cjs.entry.js +1 -1
  115. package/dist/cjs/bcm-breadcrumb.cjs.entry.js +6 -6
  116. package/dist/cjs/bcm-button-group.cjs.entry.js +11 -11
  117. package/dist/cjs/bcm-button_15.cjs.entry.js +35172 -0
  118. package/dist/cjs/bcm-card.cjs.entry.js +10 -10
  119. package/dist/cjs/bcm-checkbox-group.cjs.entry.js +29 -29
  120. package/dist/cjs/bcm-checkbox-lite_9.cjs.entry.js +10 -10
  121. package/dist/cjs/{bcm-checkbox.cjs.entry.js → bcm-checkbox_2.cjs.entry.js} +28 -17
  122. package/dist/cjs/bcm-chip-group.cjs.entry.js +15 -16
  123. package/dist/cjs/bcm-chip.cjs.entry.js +7 -7
  124. package/dist/cjs/bcm-collapse-group.cjs.entry.js +1 -1
  125. package/dist/cjs/bcm-collapse.cjs.entry.js +6 -6
  126. package/dist/cjs/bcm-color-input.cjs.entry.js +10 -11
  127. package/dist/cjs/bcm-colorpicker.cjs.entry.js +3 -3
  128. package/dist/cjs/bcm-content.cjs.entry.js +1 -1
  129. package/dist/cjs/bcm-default.cjs.entry.js +5 -5
  130. package/dist/cjs/bcm-drawer.cjs.entry.js +13 -14
  131. package/dist/cjs/bcm-dropdown.cjs.entry.js +119 -0
  132. package/dist/cjs/bcm-error-layout.cjs.entry.js +3 -3
  133. package/dist/cjs/bcm-expansion-panel.cjs.entry.js +9 -9
  134. package/dist/cjs/bcm-form-group.cjs.entry.js +1 -1
  135. package/dist/cjs/bcm-input-custom.cjs.entry.js +6 -6
  136. package/dist/cjs/bcm-input-dropdown.cjs.entry.js +309 -0
  137. package/dist/cjs/bcm-item.cjs.entry.js +72 -0
  138. package/dist/cjs/bcm-items.cjs.entry.js +49 -0
  139. package/dist/cjs/bcm-link.cjs.entry.js +6 -6
  140. package/dist/cjs/bcm-list_3.cjs.entry.js +169 -1691
  141. package/dist/cjs/bcm-menu.cjs.entry.js +150 -0
  142. package/dist/cjs/bcm-message.cjs.entry.js +3 -3
  143. package/dist/cjs/bcm-modal-2-footer.cjs.entry.js +11 -12
  144. package/dist/cjs/bcm-modal-2-header.cjs.entry.js +10 -11
  145. package/dist/cjs/bcm-modal-2.cjs.entry.js +12 -13
  146. package/dist/cjs/bcm-modal.cjs.entry.js +11 -11
  147. package/dist/cjs/bcm-notification.cjs.entry.js +3 -3
  148. package/dist/cjs/bcm-old-tag_2.cjs.entry.js +3 -3
  149. package/dist/cjs/bcm-overlay_2.cjs.entry.js +4 -4
  150. package/dist/cjs/bcm-popconfirm-box.cjs.entry.js +10 -10
  151. package/dist/cjs/bcm-popconfirm.cjs.entry.js +9 -9
  152. package/dist/cjs/bcm-popover.cjs.entry.js +229 -0
  153. package/dist/cjs/bcm-progress.cjs.entry.js +9 -9
  154. package/dist/cjs/bcm-radio-group.cjs.entry.js +17 -18
  155. package/dist/cjs/bcm-radio.cjs.entry.js +18 -19
  156. package/dist/cjs/bcm-range.cjs.entry.js +10 -10
  157. package/dist/cjs/bcm-result.cjs.entry.js +3 -3
  158. package/dist/cjs/bcm-select-group.cjs.entry.js +3 -3
  159. package/dist/cjs/bcm-select-option.cjs.entry.js +3 -3
  160. package/dist/cjs/bcm-select.cjs.entry.js +5 -5
  161. package/dist/cjs/bcm-skeleton.cjs.entry.js +5 -5
  162. package/dist/cjs/bcm-step.cjs.entry.js +8 -8
  163. package/dist/cjs/bcm-stepper.cjs.entry.js +15 -16
  164. package/dist/cjs/bcm-switch.cjs.entry.js +15 -15
  165. package/dist/cjs/bcm-tab-group.cjs.entry.js +209 -0
  166. package/dist/cjs/bcm-tab-item-header.cjs.entry.js +58 -0
  167. package/dist/cjs/bcm-tab-item.cjs.entry.js +90 -0
  168. package/dist/cjs/bcm-tab-pane.cjs.entry.js +3 -3
  169. package/dist/cjs/bcm-tab.cjs.entry.js +3 -3
  170. package/dist/cjs/bcm-table.cjs.entry.js +7648 -38
  171. package/dist/cjs/bcm-tabs-content.cjs.entry.js +3 -3
  172. package/dist/cjs/bcm-tabs.cjs.entry.js +3 -3
  173. package/dist/cjs/bcm-tag.cjs.entry.js +19 -19
  174. package/dist/cjs/bcm-text.cjs.entry.js +49 -0
  175. package/dist/cjs/bcm-textarea.cjs.entry.js +13 -13
  176. package/dist/cjs/bcm-timeline-item.cjs.entry.js +3 -3
  177. package/dist/cjs/bcm-timeline.cjs.entry.js +3 -3
  178. package/dist/cjs/bcm-toast.cjs.entry.js +38 -19
  179. package/dist/cjs/bcm-treeview-group.cjs.entry.js +1 -1
  180. package/dist/cjs/bromcom-ui.cjs.js +5 -4
  181. package/dist/cjs/{caption-template-8d099fd6.js → caption-template-81dbc490.js} +2 -2
  182. package/dist/cjs/{color-helper-7ab15732.js → color-helper-c3a819ea.js} +1 -1
  183. package/dist/cjs/{colors-e1d142ad.js → colors-078851ec.js} +1 -1
  184. package/dist/cjs/{floating-ui-c9fc2202.js → floating-ui-b441ea7c.js} +2 -2
  185. package/dist/cjs/{generate-cae9c0fb.js → generate-1dfe001a.js} +2 -2
  186. package/dist/cjs/{global-3ce50f9f.js → global-4a6abd46.js} +6 -1
  187. package/dist/cjs/index-5279dea2.js +2571 -0
  188. package/dist/cjs/{index-906fb4e5.js → index-7eed931f.js} +1631 -25
  189. package/dist/cjs/{index-fdbf5226.js → index-95ae50d0.js} +1 -1
  190. package/dist/cjs/{index-ddfd6d8f.js → index-c591ecec.js} +4 -0
  191. package/dist/cjs/{index-4506fcd7.js → index-d321de96.js} +1 -1
  192. package/dist/cjs/{input-template-a7f8f2e9.js → input-template-41868c68.js} +8 -8
  193. package/dist/cjs/{is-load-decorator-137dded1.js → is-load-decorator-15036f37.js} +3 -2
  194. package/dist/cjs/{json-parse-decarator-34a3d26e.js → json-parse-decarator-f29c368a.js} +2 -2
  195. package/dist/cjs/{label-template-4d5f99a5.js → label-template-80235581.js} +5 -5
  196. package/dist/cjs/loader.cjs.js +5 -4
  197. package/dist/cjs/{number-helper-101d8aa8.js → number-helper-2b9c1f9d.js} +1 -1
  198. package/dist/cjs/old-bcm-popover-box.cjs.entry.js +11 -11
  199. package/dist/cjs/old-bcm-popover.cjs.entry.js +9 -9
  200. package/dist/cjs/{package-ed8b3296.js → package-66b81414.js} +1 -1
  201. package/dist/cjs/{popover-placement-ccb40073.js → popover-placement-f20020a6.js} +1 -1
  202. package/dist/cjs/{slot-template-d70ea082.js → slot-template-873b0cd5.js} +2 -2
  203. package/dist/cjs/{stepper-states-308c8d3e.js → stepper-states-6ccb8ab3.js} +3 -3
  204. package/dist/cjs/{string-helper-d681e5c7.js → string-helper-fda7cbba.js} +5 -5
  205. package/dist/cjs/tooltip-helper-0eb3ef13.js +157 -0
  206. package/dist/cjs/{validators-26badb68.js → validators-97a46a9e.js} +6 -1
  207. package/dist/cjs/watermark-2c23c8f1.js +47499 -0
  208. package/dist/collection/assets/csv.svg +9 -0
  209. package/dist/collection/assets/excel.svg +9 -0
  210. package/dist/collection/assets/pdf.svg +9 -0
  211. package/dist/collection/collection-manifest.json +5 -2
  212. package/dist/collection/components/atoms/avatar/avatar.js +21 -23
  213. package/dist/collection/components/atoms/avatar/avatar.style.js +24 -21
  214. package/dist/collection/components/atoms/badge/badge.js +2 -1
  215. package/dist/collection/components/atoms/badge/badge.style.js +36 -24
  216. package/dist/collection/components/atoms/button/button.css +55 -0
  217. package/dist/collection/components/atoms/button/button.js +1 -1
  218. package/dist/collection/components/atoms/icon/static/message-bot.svg +2 -2
  219. package/dist/collection/components/molecules/dropdown/dropdown.js +1 -1
  220. package/dist/collection/components/molecules/input/input.js +0 -2
  221. package/dist/collection/components/molecules/input-dropdown/input-dropdown.css +291 -0
  222. package/dist/collection/components/molecules/input-dropdown/input-dropdown.js +751 -0
  223. package/dist/collection/components/molecules/input-dropdown/input-dropdown.style.js +73 -0
  224. package/dist/collection/components/molecules/linked/linked.js +5 -29
  225. package/dist/collection/components/molecules/popconfirm/popconfirm.js +1 -1
  226. package/dist/collection/components/molecules/popover/popover.js +1 -1
  227. package/dist/collection/components/molecules/tooltip/tooltip.js +1 -1
  228. package/dist/collection/components/organism/date-picker/date-picker.css +1 -1
  229. package/dist/collection/components/organism/date-picker/date-picker.js +20 -1
  230. package/dist/collection/components/organism/datetime-picker/datetime-picker.css +13 -1
  231. package/dist/collection/components/organism/datetime-picker/datetime-picker.js +21 -1
  232. package/dist/collection/components/organism/form/form.js +1 -0
  233. package/dist/collection/components/organism/form-2/bcm-form-components.js +4 -1
  234. package/dist/collection/components/organism/list/list.css +1 -1
  235. package/dist/collection/components/organism/list/list.js +63 -22
  236. package/dist/collection/components/organism/time-picker/time-picker.css +1 -1
  237. package/dist/collection/components/organism/time-picker/time-picker.js +20 -1
  238. package/dist/collection/components/other/toast/toast.js +48 -11
  239. package/dist/collection/components/other_deprecated/old-popover/old-popover.js +1 -1
  240. package/dist/collection/components/third-parts/rc-picker/date.js +862 -0
  241. package/dist/collection/components/third-parts/rc-picker/rc-picker.css +1009 -0
  242. package/dist/collection/components/third-parts/rc-picker/rc-picker.js +550 -0
  243. package/dist/collection/components/third-parts/table/table-definations.js +42 -0
  244. package/dist/collection/components/third-parts/table/table.css +136 -0
  245. package/dist/collection/components/third-parts/table/table.js +288 -0
  246. package/dist/collection/decorators/bcm-decorator.js +28 -0
  247. package/dist/collection/decorators/event-decorator.js +31 -0
  248. package/dist/collection/decorators/index.js +1 -0
  249. package/dist/collection/decorators/is-load-decorator.js +2 -1
  250. package/dist/collection/global/global.js +6 -0
  251. package/dist/collection/global/helper/toast.js +1 -0
  252. package/dist/collection/global/helper/toast.ts +2 -0
  253. package/dist/collection/helper/string-helper.js +2 -2
  254. package/dist/collection/models/bcm.js +29 -27
  255. package/dist/collection/templates/index.js +2 -0
  256. package/dist/collection/templates/toolbar-hamburger-template.js +14 -0
  257. package/dist/collection/templates/toolbar-template.js +15 -0
  258. package/dist/components/_commonjsHelpers.js +16 -1
  259. package/dist/components/avatar.js +46 -44
  260. package/dist/components/badge.js +39 -70
  261. package/dist/components/bcm-chip-group.js +14 -8
  262. package/dist/components/bcm-date-picker.js +4 -2
  263. package/dist/components/bcm-date.d.ts +11 -0
  264. package/dist/components/bcm-date.js +232 -0
  265. package/dist/components/bcm-form-2.js +4 -1
  266. package/dist/components/bcm-form.js +1 -0
  267. package/dist/components/bcm-input-dropdown.d.ts +11 -0
  268. package/dist/components/bcm-input-dropdown.js +395 -0
  269. package/dist/components/bcm-rc-picker.d.ts +11 -0
  270. package/dist/components/bcm-rc-picker.js +10 -0
  271. package/dist/components/bcm-table.js +55128 -41
  272. package/dist/components/bcm-textarea.js +1 -214
  273. package/dist/components/bcm-time-picker.js +4 -2
  274. package/dist/components/bcm-toast.js +30 -10
  275. package/dist/components/bcm.js +29 -27
  276. package/dist/components/button.js +1 -1
  277. package/dist/components/chip.js +12 -6
  278. package/dist/components/colors2.js +1 -1
  279. package/dist/components/datetime-picker.js +5 -2
  280. package/dist/components/generate.js +1 -1
  281. package/dist/components/index.d.ts +4 -1
  282. package/dist/components/index.js +9 -1
  283. package/dist/components/index3.js +5 -1
  284. package/dist/components/index5.js +2569 -0
  285. package/dist/components/input.js +0 -2
  286. package/dist/components/is-load-decorator.js +2 -1
  287. package/dist/components/linked.js +5 -11
  288. package/dist/components/list.js +22 -8
  289. package/dist/components/raf.js +1594 -0
  290. package/dist/components/rc-overflow.js +32 -1557
  291. package/dist/components/rc-picker.js +14030 -0
  292. package/dist/components/string-helper.js +2 -2
  293. package/dist/components/textarea.js +220 -0
  294. package/dist/esm/{_commonjsHelpers-3016b722.js → _commonjsHelpers-7002e5de.js} +16 -1
  295. package/dist/esm/bcm-accordion.entry.js +5 -5
  296. package/dist/esm/bcm-alert.entry.js +9 -9
  297. package/dist/esm/bcm-attendance.entry.js +5 -5
  298. package/dist/esm/bcm-autocomplete.entry.js +3 -3
  299. package/dist/esm/bcm-avatar_2.entry.js +204 -0
  300. package/dist/esm/bcm-box.entry.js +1 -1
  301. package/dist/esm/bcm-breadcrumb.entry.js +6 -6
  302. package/dist/esm/bcm-button-group.entry.js +8 -8
  303. package/dist/esm/bcm-button_15.entry.js +35154 -0
  304. package/dist/esm/bcm-card.entry.js +11 -11
  305. package/dist/esm/bcm-checkbox-group.entry.js +19 -19
  306. package/dist/esm/bcm-checkbox-lite_9.entry.js +8 -8
  307. package/dist/esm/{bcm-checkbox.entry.js → bcm-checkbox_2.entry.js} +24 -14
  308. package/dist/esm/bcm-chip-group.entry.js +16 -17
  309. package/dist/esm/bcm-chip.entry.js +8 -8
  310. package/dist/esm/bcm-collapse-group.entry.js +2 -2
  311. package/dist/esm/bcm-collapse.entry.js +6 -6
  312. package/dist/esm/bcm-color-input.entry.js +12 -13
  313. package/dist/esm/bcm-colorpicker.entry.js +5 -5
  314. package/dist/esm/bcm-content.entry.js +1 -1
  315. package/dist/esm/{bcm-9f50af9c.js → bcm-d45dc47d.js} +30 -28
  316. package/dist/esm/bcm-default.entry.js +5 -5
  317. package/dist/esm/bcm-drawer.entry.js +13 -14
  318. package/dist/esm/bcm-dropdown.entry.js +115 -0
  319. package/dist/esm/bcm-error-layout.entry.js +3 -3
  320. package/dist/esm/bcm-expansion-panel.entry.js +10 -10
  321. package/dist/esm/bcm-form-group.entry.js +1 -1
  322. package/dist/esm/bcm-input-custom.entry.js +6 -6
  323. package/dist/esm/bcm-input-dropdown.entry.js +305 -0
  324. package/dist/esm/bcm-item.entry.js +68 -0
  325. package/dist/esm/bcm-items.entry.js +45 -0
  326. package/dist/esm/bcm-link.entry.js +4 -4
  327. package/dist/esm/bcm-list_3.entry.js +93 -1615
  328. package/dist/esm/bcm-menu.entry.js +146 -0
  329. package/dist/esm/bcm-message.entry.js +3 -3
  330. package/dist/esm/bcm-modal-2-footer.entry.js +13 -14
  331. package/dist/esm/bcm-modal-2-header.entry.js +12 -13
  332. package/dist/esm/bcm-modal-2.entry.js +13 -14
  333. package/dist/esm/bcm-modal.entry.js +9 -9
  334. package/dist/esm/bcm-notification.entry.js +3 -3
  335. package/dist/esm/bcm-old-tag_2.entry.js +4 -4
  336. package/dist/esm/bcm-overlay_2.entry.js +4 -4
  337. package/dist/esm/bcm-popconfirm-box.entry.js +11 -11
  338. package/dist/esm/bcm-popconfirm.entry.js +7 -7
  339. package/dist/esm/bcm-popover.entry.js +225 -0
  340. package/dist/esm/bcm-progress.entry.js +9 -9
  341. package/dist/esm/bcm-radio-group.entry.js +15 -16
  342. package/dist/esm/bcm-radio.entry.js +13 -14
  343. package/dist/esm/bcm-range.entry.js +8 -8
  344. package/dist/esm/bcm-result.entry.js +3 -3
  345. package/dist/esm/bcm-select-group.entry.js +3 -3
  346. package/dist/esm/bcm-select-option.entry.js +3 -3
  347. package/dist/esm/bcm-select.entry.js +6 -6
  348. package/dist/esm/bcm-skeleton.entry.js +5 -5
  349. package/dist/esm/bcm-step.entry.js +8 -8
  350. package/dist/esm/bcm-stepper.entry.js +15 -16
  351. package/dist/esm/bcm-switch.entry.js +10 -10
  352. package/dist/esm/bcm-tab-group.entry.js +205 -0
  353. package/dist/esm/bcm-tab-item-header.entry.js +54 -0
  354. package/dist/esm/bcm-tab-item.entry.js +86 -0
  355. package/dist/esm/bcm-tab-pane.entry.js +3 -3
  356. package/dist/esm/bcm-tab.entry.js +3 -3
  357. package/dist/esm/bcm-table.entry.js +7649 -39
  358. package/dist/esm/bcm-tabs-content.entry.js +4 -4
  359. package/dist/esm/bcm-tabs.entry.js +4 -4
  360. package/dist/esm/bcm-tag.entry.js +9 -9
  361. package/dist/esm/bcm-text.entry.js +45 -0
  362. package/dist/esm/bcm-textarea.entry.js +11 -11
  363. package/dist/esm/bcm-timeline-item.entry.js +3 -3
  364. package/dist/esm/bcm-timeline.entry.js +3 -3
  365. package/dist/esm/bcm-toast.entry.js +38 -19
  366. package/dist/esm/bcm-treeview-group.entry.js +1 -1
  367. package/dist/esm/bromcom-ui.js +6 -5
  368. package/dist/esm/{caption-template-34a1cb44.js → caption-template-d47f338f.js} +2 -2
  369. package/dist/esm/{color-helper-116755ed.js → color-helper-845ba523.js} +2 -2
  370. package/dist/esm/{colors-44c95e7e.js → colors-ebea297f.js} +1 -1
  371. package/dist/esm/{element-dragger-7ea06c76.js → element-dragger-89bb52fd.js} +1 -1
  372. package/dist/esm/{floating-ui-e7341329.js → floating-ui-8a0c54d6.js} +1 -1
  373. package/dist/esm/{generate-e008f24f.js → generate-7a1258c4.js} +2 -2
  374. package/dist/esm/{global-9c04f017.js → global-032592ad.js} +6 -1
  375. package/dist/esm/{index-ed9652af.js → index-00c8a8f7.js} +1 -1
  376. package/dist/esm/{index-348b16ad.js → index-0615c2b8.js} +3 -1
  377. package/dist/esm/index-3bc8c6e3.js +2569 -0
  378. package/dist/esm/{index-0052017c.js → index-7e71bbc8.js} +1 -1
  379. package/dist/esm/{index-6310a048.js → index-e4b6a4ce.js} +1616 -26
  380. package/dist/esm/{input-template-0bdd4dda.js → input-template-68c29fde.js} +4 -4
  381. package/dist/esm/{is-load-decorator-07d3502a.js → is-load-decorator-8277e3b8.js} +3 -2
  382. package/dist/esm/{json-parse-decarator-40fc5701.js → json-parse-decarator-2945634b.js} +2 -2
  383. package/dist/esm/{label-template-98dafeb3.js → label-template-946d4062.js} +4 -4
  384. package/dist/esm/loader.js +6 -5
  385. package/dist/esm/{number-helper-ddce4326.js → number-helper-fe7d1aca.js} +1 -1
  386. package/dist/esm/old-bcm-popover-box.entry.js +13 -13
  387. package/dist/esm/old-bcm-popover.entry.js +7 -7
  388. package/dist/esm/{package-00ece356.js → package-acbf2052.js} +1 -1
  389. package/dist/esm/{popover-placement-78f86f15.js → popover-placement-be68c848.js} +1 -1
  390. package/dist/esm/{slot-template-672e941d.js → slot-template-fcc7846e.js} +2 -2
  391. package/dist/esm/{stepper-states-56644bc7.js → stepper-states-9ab8511e.js} +3 -3
  392. package/dist/esm/{string-helper-6bd24967.js → string-helper-b0e05041.js} +4 -4
  393. package/dist/esm/tooltip-helper-e5246812.js +155 -0
  394. package/dist/esm/{utils-b3338faf.js → utils-57652744.js} +1 -1
  395. package/dist/esm/{validators-77fbe47e.js → validators-22975416.js} +6 -2
  396. package/dist/esm/watermark-f2c6a1f9.js +47477 -0
  397. package/dist/types/components/atoms/avatar/avatar.d.ts +0 -2
  398. package/dist/types/components/atoms/avatar/avatar.style.d.ts +181 -5
  399. package/dist/types/components/atoms/badge/badge.style.d.ts +174 -4
  400. package/dist/types/components/molecules/input-dropdown/input-dropdown.d.ts +51 -0
  401. package/dist/types/components/molecules/input-dropdown/input-dropdown.style.d.ts +307 -0
  402. package/dist/types/components/molecules/linked/linked.d.ts +1 -3
  403. package/dist/types/components/organism/date-picker/date-picker.d.ts +1 -0
  404. package/dist/types/components/organism/datetime-picker/datetime-picker.d.ts +1 -0
  405. package/dist/types/components/organism/list/list.d.ts +4 -0
  406. package/dist/types/components/organism/time-picker/time-picker.d.ts +1 -0
  407. package/dist/types/components/other/toast/toast.d.ts +2 -0
  408. package/dist/types/components/third-parts/rc-picker/date.d.ts +175 -0
  409. package/dist/types/components/third-parts/rc-picker/rc-picker.d.ts +47 -0
  410. package/dist/types/components/third-parts/table/table-definations.d.ts +28 -0
  411. package/dist/types/components/third-parts/table/table.d.ts +37 -0
  412. package/dist/types/components.d.ts +244 -3
  413. package/dist/types/decorators/bcm-decorator.d.ts +2 -0
  414. package/dist/types/decorators/event-decorator.d.ts +2 -0
  415. package/dist/types/decorators/index.d.ts +1 -0
  416. package/dist/types/global/helper/toast.d.ts +2 -0
  417. package/dist/types/models/bcm.d.ts +256 -236
  418. package/dist/types/templates/index.d.ts +2 -0
  419. package/dist/types/templates/toolbar-hamburger-template.d.ts +12 -0
  420. package/dist/types/templates/toolbar-template.d.ts +13 -0
  421. package/helper/toast.d.ts +2 -0
  422. package/helper/toast.d.ts.map +1 -1
  423. package/helper/toast.js +1 -0
  424. package/package.json +9 -3
  425. package/dist/bromcom-ui/p-019b44bb.entry.js +0 -5
  426. package/dist/bromcom-ui/p-01a50abe.entry.js +0 -5
  427. package/dist/bromcom-ui/p-065e0f32.entry.js +0 -5
  428. package/dist/bromcom-ui/p-0cb5a92d.entry.js +0 -5
  429. package/dist/bromcom-ui/p-0f52bab9.entry.js +0 -5
  430. package/dist/bromcom-ui/p-15758356.entry.js +0 -5
  431. package/dist/bromcom-ui/p-1eabd5dc.js +0 -10
  432. package/dist/bromcom-ui/p-235023cc.entry.js +0 -5
  433. package/dist/bromcom-ui/p-2a7bdc8b.entry.js +0 -5
  434. package/dist/bromcom-ui/p-32028f4f.entry.js +0 -5
  435. package/dist/bromcom-ui/p-3a68eca1.js +0 -5
  436. package/dist/bromcom-ui/p-4484ed7d.entry.js +0 -5
  437. package/dist/bromcom-ui/p-4f8b00bc.entry.js +0 -5
  438. package/dist/bromcom-ui/p-4fd78dbb.entry.js +0 -5
  439. package/dist/bromcom-ui/p-54c0916c.js +0 -5
  440. package/dist/bromcom-ui/p-5d89f348.entry.js +0 -5
  441. package/dist/bromcom-ui/p-61c4745d.entry.js +0 -5
  442. package/dist/bromcom-ui/p-626a65e9.js +0 -5
  443. package/dist/bromcom-ui/p-663766cf.entry.js +0 -5
  444. package/dist/bromcom-ui/p-6d7fe687.js +0 -6
  445. package/dist/bromcom-ui/p-6f56f8ca.js +0 -5
  446. package/dist/bromcom-ui/p-74b2d896.js +0 -5
  447. package/dist/bromcom-ui/p-7f529bbe.entry.js +0 -5
  448. package/dist/bromcom-ui/p-9fe802bc.entry.js +0 -5
  449. package/dist/bromcom-ui/p-a19320bb.entry.js +0 -13
  450. package/dist/bromcom-ui/p-a429e85b.js +0 -5
  451. package/dist/bromcom-ui/p-a56e8c98.js +0 -5
  452. package/dist/bromcom-ui/p-a8033cda.entry.js +0 -5
  453. package/dist/bromcom-ui/p-a9692ed3.entry.js +0 -5
  454. package/dist/bromcom-ui/p-b1c83bb8.entry.js +0 -5
  455. package/dist/bromcom-ui/p-bddbd954.entry.js +0 -5
  456. package/dist/bromcom-ui/p-c49d038e.js +0 -5
  457. package/dist/bromcom-ui/p-c799b397.entry.js +0 -5
  458. package/dist/bromcom-ui/p-cf0ab7f0.entry.js +0 -5
  459. package/dist/bromcom-ui/p-d65a1e21.js +0 -11
  460. package/dist/bromcom-ui/p-d7f10f7f.js +0 -5
  461. package/dist/bromcom-ui/p-dd422dd1.js +0 -5
  462. package/dist/bromcom-ui/p-e09fa0dc.entry.js +0 -5
  463. package/dist/bromcom-ui/p-e32d9cfc.js +0 -5
  464. package/dist/bromcom-ui/p-ec6b45ba.entry.js +0 -5
  465. package/dist/bromcom-ui/p-f645d9ae.entry.js +0 -5
  466. package/dist/bromcom-ui/p-fdc3e5b8.entry.js +0 -5
  467. package/dist/cjs/bcm-avatar.cjs.entry.js +0 -127
  468. package/dist/cjs/bcm-badge_15.cjs.entry.js +0 -1739
  469. package/dist/cjs/bcm-colorful.cjs.entry.js +0 -17227
  470. package/dist/cjs/bcm-date-picker.cjs.entry.js +0 -181
  471. package/dist/cjs/bcm-datetime-picker.cjs.entry.js +0 -1449
  472. package/dist/cjs/bcm-form-2.cjs.entry.js +0 -209
  473. package/dist/cjs/bcm-form.cjs.entry.js +0 -488
  474. package/dist/cjs/bcm-input.cjs.entry.js +0 -371
  475. package/dist/cjs/bcm-label.cjs.entry.js +0 -45
  476. package/dist/cjs/bcm-old-input.cjs.entry.js +0 -397
  477. package/dist/cjs/bcm-time-picker.cjs.entry.js +0 -149
  478. package/dist/cjs/datetime-helper-eaf4fadb.js +0 -11
  479. package/dist/cjs/index-b08b037a.js +0 -52
  480. package/dist/collection/components/other/data-table/table.css +0 -130
  481. package/dist/collection/components/other/data-table/table.js +0 -88
  482. package/dist/esm/bcm-avatar.entry.js +0 -123
  483. package/dist/esm/bcm-badge_15.entry.js +0 -1721
  484. package/dist/esm/bcm-colorful.entry.js +0 -17223
  485. package/dist/esm/bcm-date-picker.entry.js +0 -177
  486. package/dist/esm/bcm-datetime-picker.entry.js +0 -1445
  487. package/dist/esm/bcm-form-2.entry.js +0 -205
  488. package/dist/esm/bcm-form.entry.js +0 -484
  489. package/dist/esm/bcm-input.entry.js +0 -367
  490. package/dist/esm/bcm-label.entry.js +0 -41
  491. package/dist/esm/bcm-old-input.entry.js +0 -393
  492. package/dist/esm/bcm-time-picker.entry.js +0 -145
  493. package/dist/esm/datetime-helper-df25808a.js +0 -9
  494. package/dist/esm/index-962dec74.js +0 -50
  495. package/dist/types/components/other/data-table/table.d.ts +0 -8
@@ -1,1739 +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 colorHelper = require('./color-helper-7ab15732.js');
11
- require('./datetime-helper-eaf4fadb.js');
12
- const generate = require('./generate-cae9c0fb.js');
13
- require('./number-helper-101d8aa8.js');
14
- const stringHelper = require('./string-helper-d681e5c7.js');
15
- require('./validators-26badb68.js');
16
- require('./element-dragger-a8562f82.js');
17
- const bcm = require('./bcm-ab921827.js');
18
- const index = require('./index-b08b037a.js');
19
- const index$3 = require('./index-fdbf5226.js');
20
- const index$2 = require('./index-4506fcd7.js');
21
- const slotTemplate = require('./slot-template-d70ea082.js');
22
- const isLoadDecorator = require('./is-load-decorator-137dded1.js');
23
- const jsonParseDecarator = require('./json-parse-decarator-34a3d26e.js');
24
- const utils = require('./utils-fc077139.js');
25
- const floatingUi = require('./floating-ui-c9fc2202.js');
26
- require('./colors-56282b00.js');
27
- require('./colors-e1d142ad.js');
28
- require('./_commonjsHelpers-bd20f4c0.js');
29
- require('./package-ed8b3296.js');
30
-
31
- class Tooltip {
32
- constructor({ message, targetId, placement = "top", color = "slate-700", trigger = "none", size = "medium", openDelay = 0, closeDelay = 0, autoHide = false, emitShow = () => { }, emitHide = () => { }, }) {
33
- this.destroy = () => {
34
- this.el = document.getElementById(this.id);
35
- if (this.el) {
36
- this.el.remove();
37
- this.emitHide();
38
- }
39
- this.removeListener();
40
- };
41
- this.target = () => document.getElementById(this.targetId);
42
- this.sizeClass = () => {
43
- switch (this.size) {
44
- case bcm.Bcm.Size.small:
45
- return "tw-text-1";
46
- case bcm.Bcm.Size.medium:
47
- return "tw-text-2";
48
- case bcm.Bcm.Size.large:
49
- return "tw-text-3";
50
- default:
51
- return "tw-text-2";
52
- }
53
- };
54
- this.init = () => {
55
- const { tone, colorName } = colorHelper.ColorHelper.parseColor(this.color, 700);
56
- const dc = generate.Generate.getTwColor({
57
- color: colorName,
58
- tones: {
59
- [tone]: ["bg"],
60
- },
61
- variable: "--bcm-tooltip",
62
- });
63
- const style = Object.assign(Object.assign({}, dc), (dc["--bcm-tooltip-bg"] && { "--bcm-tooltip-text": colorHelper.ColorHelper.reverseColor(dc["--bcm-tooltip-bg"]) }));
64
- this.el = generate.Generate.createElement("div", {
65
- "id": `${this.targetId}-tooltip-box`,
66
- "class": `
67
- tw-whitespace-normal tw-break-words tw-block tw-font-sans tw-pointer-events-none tw-max-w-xs tw-py-1 tw-px-2 tw-rounded tw-bg-[--bcm-tooltip-bg] tw-text-[--bcm-tooltip-text] ${this.sizeClass()} tw-absolute tw-top-0 tw-left-0 tw-z-tooltip tw-opacity-0 tw-transition-opacity tw-duration-300`,
68
- "role": "tooltip",
69
- "aria-hidden": "true",
70
- "style": colorHelper.ColorHelper.generateStyleString(style),
71
- "innerHTML": stringHelper.StringHelper.trim(this.message),
72
- });
73
- };
74
- this.update = () => {
75
- this.el = document.getElementById(this.id);
76
- if (this.el) {
77
- this.hide();
78
- this.show();
79
- }
80
- };
81
- this.listener = () => {
82
- window.addEventListener("resize", this.calculatePosition.bind(this));
83
- window.addEventListener("scroll", this.calculatePosition.bind(this), true);
84
- window.addEventListener("wheel", this.calculatePosition.bind(this));
85
- if (this.trigger && this.target()) {
86
- switch (this.trigger) {
87
- case "click":
88
- this.target().addEventListener("click", this.toggle.bind(this));
89
- this.autoHide && this.target().addEventListener("mouseleave", this.hide.bind(this));
90
- break;
91
- case "hover":
92
- this.target().addEventListener("mouseenter", this.show.bind(this));
93
- this.target().addEventListener("mouseleave", this.hide.bind(this));
94
- break;
95
- case "focus":
96
- this.target().addEventListener("focus", this.show.bind(this), true);
97
- this.target().addEventListener("blur", this.hide.bind(this), true);
98
- break;
99
- }
100
- }
101
- this.calculatePosition();
102
- };
103
- this.removeListener = () => {
104
- window.removeEventListener("resize", this.calculatePosition.bind(this));
105
- window.removeEventListener("scroll", this.calculatePosition.bind(this), true);
106
- window.removeEventListener("wheel", this.calculatePosition.bind(this));
107
- if (this.target()) {
108
- this.target().removeEventListener("click", this.toggle.bind(this));
109
- this.target().removeEventListener("mouseenter", this.show.bind(this));
110
- this.target().removeEventListener("mouseleave", this.hide.bind(this));
111
- this.target().removeEventListener("focus", this.show.bind(this), true);
112
- this.target().removeEventListener("blur", this.hide.bind(this), true);
113
- }
114
- };
115
- this.calculatePosition = () => {
116
- this.el = document.getElementById(this.id);
117
- if (this.el) {
118
- floatingUi.FloatingUI({
119
- ref: this.target(),
120
- floating: this.el,
121
- placement: this.placement,
122
- offset: 8,
123
- arrow: true,
124
- arrowColor: `tw-bg-[--bcm-tooltip-bg]`,
125
- });
126
- }
127
- };
128
- this.show = async () => {
129
- if (this.message) {
130
- this.init();
131
- await utils.delay(this.openDelay);
132
- this.calculatePosition();
133
- this.emitShow();
134
- }
135
- else {
136
- this.hide();
137
- }
138
- };
139
- this.hide = async () => {
140
- this.el = document.getElementById(this.id);
141
- if (this.el) {
142
- await utils.delay(this.closeDelay);
143
- this.el && this.el.remove();
144
- this.emitHide();
145
- }
146
- };
147
- this.toggle = () => {
148
- this.el = document.getElementById(this.id);
149
- if (this.el) {
150
- this.hide();
151
- }
152
- else {
153
- this.show();
154
- }
155
- };
156
- this.message = message;
157
- this.targetId = targetId;
158
- this.placement = placement;
159
- this.color = color;
160
- this.id = targetId + "-tooltip-box";
161
- this.trigger = trigger;
162
- this.size = size;
163
- this.openDelay = openDelay;
164
- this.closeDelay = closeDelay;
165
- this.autoHide = autoHide;
166
- this.emitShow = emitShow;
167
- this.emitHide = emitHide;
168
- }
169
- }
170
-
171
- class Popover {
172
- constructor({ content, message, targetId, placement = "top", color = "slate-700", trigger = "none", openDelay = 0, closeDelay = 0, autoHide = false, emitShow = () => { }, emitHide = () => { } }) {
173
- this.destroy = () => {
174
- this.el = document.getElementById(this.id);
175
- if (this.el) {
176
- this.el.remove();
177
- this.emitHide();
178
- }
179
- this.removeListener();
180
- };
181
- this.target = () => document.getElementById(this.targetId);
182
- this.init = () => {
183
- const { tone, colorName } = colorHelper.ColorHelper.parseColor(this.color, 700);
184
- const dc = generate.Generate.getTwColor({
185
- color: colorName,
186
- tones: {
187
- [tone]: ["bg"],
188
- },
189
- variable: "--bcm-popover",
190
- });
191
- const style = Object.assign(Object.assign({}, dc), (dc["--bcm-popover-bg"] && { "--bcm-popover-text": colorHelper.ColorHelper.reverseColor(dc["--bcm-popover-bg"]) }));
192
- const inner = `<div class="tw-z-[1] tw-rounded tw-py-2">
193
- ${this.message ? `<div class="tw-font-medium tw-w-full tw-pb-1 tw-px-4">${stringHelper.StringHelper.trim(this.message)}</div>` : ""}
194
- ${this.content ? `<div class="tw-font-normal tw-px-4">${stringHelper.StringHelper.trim(this.content)}</div>` : ""}
195
- </div>`;
196
- this.el = generate.Generate.createElement("div", {
197
- "id": `${this.targetId}-popover-box`,
198
- "class": `
199
- tw-whitespace-normal tw-break-words tw-block tw-font-sans tw-pointer-events-none tw-max-w-[256px] tw-rounded tw-bg-[--bcm-popover-bg] tw-text-[--bcm-popover-text] tw-text-3 tw-absolute tw-top-0 tw-left-0 tw-z-tooltip tw-opacity-0 tw-transition-opacity tw-duration-300
200
- tw-shadow`,
201
- "role": "popover",
202
- "aria-hidden": "true",
203
- "style": colorHelper.ColorHelper.generateStyleString(style),
204
- "innerHTML": inner,
205
- });
206
- };
207
- this.update = () => {
208
- this.el = document.getElementById(this.id);
209
- if (this.el) {
210
- this.hide();
211
- this.show();
212
- }
213
- };
214
- this.listener = () => {
215
- window.addEventListener("resize", this.calculatePosition.bind(this));
216
- window.addEventListener("scroll", this.calculatePosition.bind(this), true);
217
- window.addEventListener("wheel", this.calculatePosition.bind(this));
218
- if (this.trigger && this.target()) {
219
- switch (this.trigger) {
220
- case "click":
221
- this.target().addEventListener("click", this.toggle.bind(this));
222
- this.autoHide && this.target().addEventListener("mouseleave", this.hide.bind(this));
223
- break;
224
- case "hover":
225
- this.target().addEventListener("mouseenter", this.show.bind(this));
226
- this.target().addEventListener("mouseleave", this.hide.bind(this));
227
- break;
228
- case "focus":
229
- this.target().addEventListener("focus", this.show.bind(this), true);
230
- this.target().addEventListener("blur", this.hide.bind(this), true);
231
- break;
232
- }
233
- }
234
- this.calculatePosition();
235
- };
236
- this.removeListener = () => {
237
- window.removeEventListener("resize", this.calculatePosition.bind(this));
238
- window.removeEventListener("scroll", this.calculatePosition.bind(this), true);
239
- window.removeEventListener("wheel", this.calculatePosition.bind(this));
240
- if (this.target()) {
241
- this.target().removeEventListener("click", this.toggle.bind(this));
242
- this.target().removeEventListener("mouseenter", this.show.bind(this));
243
- this.target().removeEventListener("mouseleave", this.hide.bind(this));
244
- this.target().removeEventListener("focus", this.show.bind(this), true);
245
- this.target().removeEventListener("blur", this.hide.bind(this), true);
246
- }
247
- };
248
- this.calculatePosition = () => {
249
- this.el = document.getElementById(this.id);
250
- if (this.el) {
251
- floatingUi.FloatingUI({
252
- ref: this.target(),
253
- floating: this.el,
254
- placement: this.placement,
255
- offset: 8,
256
- arrow: true,
257
- arrowColor: `tw-bg-[--bcm-popover-bg]`,
258
- });
259
- }
260
- };
261
- this.show = async () => {
262
- if (this.message) {
263
- this.init();
264
- await utils.delay(this.openDelay);
265
- this.calculatePosition();
266
- this.emitShow();
267
- }
268
- else {
269
- this.hide();
270
- }
271
- };
272
- this.hide = async () => {
273
- this.el = document.getElementById(this.id);
274
- if (this.el) {
275
- await utils.delay(this.closeDelay);
276
- this.el.remove();
277
- this.emitHide();
278
- }
279
- };
280
- this.toggle = () => {
281
- this.el = document.getElementById(this.id);
282
- if (this.el) {
283
- this.hide();
284
- }
285
- else {
286
- this.show();
287
- }
288
- };
289
- this.content = content;
290
- this.message = message;
291
- this.targetId = targetId;
292
- this.placement = placement;
293
- this.color = color;
294
- this.trigger = trigger;
295
- this.id = targetId + "-popover-box";
296
- this.openDelay = openDelay;
297
- this.closeDelay = closeDelay;
298
- this.autoHide = autoHide;
299
- this.emitShow = emitShow;
300
- this.emitHide = emitHide;
301
- }
302
- }
303
-
304
- const badgeStyle = index.cva([
305
- "bcm-badge__dot bcm-ui-element bcm-ui-content-display",
306
- "tw-flex tw-items-center tw-justify-center tw-flex-row",
307
- "tw-rounded-full tw-text-center",
308
- "tw-bg-[--bcm-badge-bg] tw-text-[--bcm-badge-text]",
309
- " tw-whitespace-nowrap [&>*:empty]:tw-hidden",
310
- ], {
311
- variants: {
312
- size: {
313
- small: ["bcm-badge__dot-size-small tw-text-1 tw-min-w-1.5 tw-min-h-1.5 [&>*]:tw-px-1.5 [&>*]:tw-min-w-4"],
314
- medium: ["bcm-badge__dot-size-medium tw-text-2 tw-min-w-2 tw-min-h-2 [&>*]:tw-px-1.5 [&>*]:tw-min-w-5"],
315
- large: ["bcm-badge__dot-size-large tw-text-3 tw-min-w-2.5 tw-min-h-2.5 [&>*]:tw-px-2 [&>*]:tw-min-w-6"], //10
316
- },
317
- blink: {
318
- true: [
319
- "bcm-badge__dot-blink tw-relative",
320
- "after:tw-content-[''] after:tw-absolute after:tw-top-0 after:tw-left-0 after:tw-z-[-1]",
321
- "after:tw-w-full after:tw-h-full after:tw-bg-[--bcm-badge-bg] after:tw-opacity-75 after:tw-rounded-full",
322
- "after:tw-animate-blink after:tw-pointer-events-none"
323
- ],
324
- },
325
- },
326
- compoundVariants: [
327
- {
328
- size: "medium",
329
- blink: false,
330
- class: "",
331
- },
332
- ],
333
- defaultVariants: {
334
- size: "medium",
335
- blink: false,
336
- },
337
- });
338
-
339
- const BcmBadge = class {
340
- constructor(hostRef) {
341
- index$1.registerInstance(this, hostRef);
342
- this.statusColors = {
343
- info: "blue",
344
- error: "red",
345
- warning: "amber",
346
- success: "emerald",
347
- };
348
- this._id = generate.Generate.UID();
349
- this.blink = false;
350
- this.value = undefined;
351
- this.color = undefined;
352
- this.size = bcm.Bcm.Size.medium;
353
- this.status = undefined;
354
- }
355
- render() {
356
- const { blink, value, size, color, status } = this;
357
- const _color = this.statusColors[status] || color;
358
- const { tone, colorName } = colorHelper.ColorHelper.parseColor(_color);
359
- const dc = generate.Generate.getTwColor({
360
- color: colorName,
361
- tones: {
362
- [tone]: ["bg"],
363
- },
364
- variable: "--bcm-badge",
365
- });
366
- const style = Object.assign(Object.assign({}, dc), (dc["--bcm-badge-bg"] && { "--bcm-badge-text": colorHelper.ColorHelper.reverseColor(dc["--bcm-badge-bg"]) }));
367
- return (index$1.h(index$1.Host, { class: "bcm-badge tw-inline-flex tw-items-center tw-justify-center", role: "status", "aria-live": "polite" }, index$1.h("div", { class: badgeStyle({ size, blink }), style: style }, index$1.h("span", { class: "bcm-badge__dot-text", role: "presentation", "aria-hidden": "true" }, index$1.h("slot", null, value)), index$1.h("span", { class: "tw-sr-only" }, value))));
368
- }
369
- get el() { return index$1.getElement(this); }
370
- };
371
-
372
- const variantOptions = {
373
- save: {
374
- text: 'Save',
375
- color: 'emerald',
376
- icon: 'far fa-save',
377
- iconPosition: 'prefix',
378
- },
379
- ok: {
380
- text: 'Ok',
381
- color: 'emerald',
382
- icon: 'far fa-check',
383
- iconPosition: 'prefix',
384
- },
385
- new: {
386
- text: 'New',
387
- color: 'emerald',
388
- icon: 'far fa-plus',
389
- iconPosition: 'prefix',
390
- },
391
- add: {
392
- text: 'Add',
393
- color: 'emerald',
394
- icon: 'far fa-plus',
395
- iconPosition: 'prefix',
396
- },
397
- create: {
398
- text: 'Create',
399
- color: 'emerald',
400
- icon: 'far fa-plus',
401
- iconPosition: 'prefix',
402
- },
403
- prev: {
404
- text: 'Prev',
405
- color: '',
406
- icon: 'far fa-arrow-left',
407
- iconPosition: 'prefix',
408
- },
409
- next: {
410
- text: 'Next',
411
- color: '',
412
- icon: 'far fa-arrow-right',
413
- iconPosition: 'suffix',
414
- },
415
- apply: {
416
- text: 'Apply',
417
- color: '',
418
- icon: 'far fa-check-circle',
419
- iconPosition: 'prefix',
420
- },
421
- submit: {
422
- text: 'Submit',
423
- color: '',
424
- icon: 'far fa-save',
425
- iconPosition: 'prefix',
426
- },
427
- send: {
428
- text: 'Send',
429
- color: 'emerald',
430
- icon: 'far fa-paper-plane',
431
- iconPosition: 'prefix',
432
- },
433
- delete: {
434
- text: 'Delete',
435
- color: 'red',
436
- icon: 'far fa-trash',
437
- iconPosition: 'prefix',
438
- },
439
- cancel: {
440
- text: 'Cancel',
441
- color: 'red',
442
- icon: 'far fa-times',
443
- iconPosition: 'prefix',
444
- },
445
- decline: {
446
- text: 'Decline',
447
- color: 'red',
448
- icon: 'far fa-ban',
449
- iconPosition: 'prefix',
450
- },
451
- close: {
452
- text: 'Close',
453
- color: 'red',
454
- icon: 'far fa-times-circle',
455
- iconPosition: 'prefix',
456
- },
457
- archive: {
458
- text: 'Archive',
459
- color: 'red',
460
- icon: 'far fa-folder-open',
461
- iconPosition: 'prefix',
462
- },
463
- remove: {
464
- text: 'Remove',
465
- color: 'red',
466
- icon: 'far fa-minus-circle',
467
- iconPosition: 'prefix',
468
- },
469
- edit: {
470
- text: 'Edit',
471
- color: '',
472
- icon: 'far fa-edit',
473
- iconPosition: 'prefix',
474
- },
475
- export: {
476
- text: 'Export',
477
- color: '',
478
- icon: 'far fa-sign-out',
479
- iconPosition: 'prefix',
480
- },
481
- import: {
482
- text: 'Import',
483
- color: '',
484
- icon: 'far fa-sign-in',
485
- iconPosition: 'prefix',
486
- },
487
- filter: {
488
- text: 'Filter',
489
- color: '',
490
- icon: 'far fa-filter',
491
- iconPosition: 'prefix',
492
- },
493
- update: {
494
- text: 'Update',
495
- color: '',
496
- icon: 'far fa-sync',
497
- iconPosition: 'prefix',
498
- },
499
- reset: {
500
- text: "Reset",
501
- color: "",
502
- icon: 'far fa-sync',
503
- iconPosition: "prefix",
504
- },
505
- download: {
506
- text: 'Download',
507
- color: '',
508
- icon: 'far fa-download',
509
- iconPosition: 'prefix',
510
- },
511
- };
512
- var VariantProps;
513
- (function (VariantProps) {
514
- VariantProps["save"] = "save";
515
- VariantProps["submit"] = "submit";
516
- VariantProps["ok"] = "ok";
517
- VariantProps["new"] = "new";
518
- VariantProps["add"] = "add";
519
- VariantProps["create"] = "create";
520
- VariantProps["apply"] = "apply";
521
- VariantProps["prev"] = "prev";
522
- VariantProps["next"] = "next";
523
- VariantProps["send"] = "send";
524
- VariantProps["delete"] = "delete";
525
- VariantProps["cancel"] = "cancel";
526
- VariantProps["decline"] = "decline";
527
- VariantProps["close"] = "close";
528
- VariantProps["archive"] = "archive";
529
- VariantProps["remove"] = "remove";
530
- VariantProps["edit"] = "edit";
531
- VariantProps["export"] = "export";
532
- VariantProps["import"] = "import";
533
- VariantProps["filter"] = "filter";
534
- VariantProps["update"] = "update";
535
- VariantProps["reset"] = "Reset";
536
- VariantProps["download"] = "download";
537
- })(VariantProps || (VariantProps = {}));
538
-
539
- const { state } = index$2.createStore({
540
- value: new Map(),
541
- setData: {},
542
- removeData: {}
543
- });
544
- const setValue = (val) => {
545
- const data = Object.assign(Object.assign({}, val), (variantOptions[val.variant] && {
546
- icon: variantOptions[val.variant].icon,
547
- value: variantOptions[val.variant].text,
548
- iconPosition: bcm.Bcm$1.IconPosition[variantOptions[val.variant].iconPosition],
549
- variantColor: variantOptions[val.variant].color
550
- }));
551
- state.value.set(data.id, data);
552
- };
553
- const removeValue = (_id) => {
554
- state.value.delete(_id);
555
- };
556
- const getValue = (id) => generate.snq(() => state.value.get(id), {});
557
- const buttonState = {
558
- setValue,
559
- removeValue,
560
- getValue
561
- };
562
-
563
- const ButtonTemplate = ({ value, type, componentClass, disabled, href, target, loading, isIconOnly, icon, iconPosition, id }) => {
564
- const ButtonTagType = (href) ? bcm.Bcm$1.HtmlElementType.a : bcm.Bcm$1.HtmlElementType.button;
565
- return (index$1.h(ButtonTagType, Object.assign({ id: id }, (type == bcm.Bcm$1.HtmlElementType.button && { type }), { class: componentClass, disabled: disabled, href: href, target: target, tabindex: "0" }),
566
- index$1.h("span", { hidden: true },
567
- index$1.h("slot", null)),
568
- loading && index$1.h("span", { class: "bcm-button__container-loading" },
569
- " ",
570
- index$1.h("span", { class: "bcm-button__container-icon" },
571
- index$1.h("i", { class: "far fa-spinner-third fa-spin" }),
572
- " ")),
573
- icon && index$1.h("span", { class: `${iconPosition} bcm-button__container-icon` },
574
- index$1.h("i", { class: `${icon}` })),
575
- !isIconOnly && (index$1.h(slotTemplate.SlotTemplate, { className: "bcm-button__container-text", value: value })),
576
- index$1.h("slot", { name: "suffix" })));
577
- };
578
-
579
- const buttonCss = "@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\"); .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-button{display:inline-flex;width:fit-content;height:fit-content;--bcm-button-solid-color-default:var(--bcm-new-ds-color-white);--bcm-button-solid-background-color-default:var(--bcm-new-ds-color-blue-500);--bcm-button-solid-border-default:var(--bcm-new-ds-color-blue-500);--bcm-button-solid-color-hover:var(--bcm-new-ds-color-white);--bcm-button-solid-background-color-hover:var(--bcm-new-ds-color-blue-600);--bcm-button-solid-border-hover:var(--bcm-new-ds-color-blue-600);--bcm-button-solid-color-focus-visible:var(--bcm-new-ds-color-white);--bcm-button-solid-background-color-focus-visible:var(--bcm-new-ds-color-blue-800);--bcm-button-solid-border-focus-visible:var(--bcm-new-ds-color-blue-800);--bcm-button-solid-color-active:var(--bcm-new-ds-color-white);--bcm-button-solid-background-color-active:var(--bcm-new-ds-color-blue-700);--bcm-button-solid-border-active:var(--bcm-new-ds-color-blue-700);--bcm-button-solid-color-disabled:var(--bcm-new-ds-color-white);--bcm-button-solid-background-color-disabled:var(--bcm-new-ds-color-slate-400);--bcm-button-solid-border-disabled:var(--bcm-new-ds-color-slate-400);--bcm-button-ghost-color-default:var(--bcm-new-ds-color-slate-600);--bcm-button-ghost-background-color-default:var(--bcm-new-ds-color-slate-100);--bcm-button-ghost-border-default:var(--bcm-new-ds-color-slate-300);--bcm-button-ghost-color-hover:var(--bcm-new-ds-color-slate-600);--bcm-button-ghost-background-color-hover:var(--bcm-new-ds-color-slate-200);--bcm-button-ghost-border-hover:var(--bcm-new-ds-color-slate-400);--bcm-button-ghost-color-focus-visible:var(--bcm-new-ds-color-slate-600);--bcm-button-ghost-background-color-focus-visible:var(--bcm-new-ds-color-slate-400);--bcm-button-ghost-border-focus-visible:var(--bcm-new-ds-color-slate-600);--bcm-button-ghost-color-active:var(--bcm-new-ds-color-slate-600);--bcm-button-ghost-background-color-active:var(--bcm-new-ds-color-slate-300);--bcm-button-ghost-border-active:var(--bcm-new-ds-color-slate-500);--bcm-button-ghost-color-disabled:var(--bcm-new-ds-color-slate-300);--bcm-button-ghost-background-color-disabled:var(--bcm-new-ds-color-slate-50);--bcm-button-ghost-border-disabled:var(--bcm-new-ds-color-slate-200);--bcm-button-link-color-default:var(--bcm-new-ds-color-blue-500);--bcm-button-link-background-color-default:var(--bcm-new-ds-color-transparent);--bcm-button-link-border-default:var(--bcm-new-ds-color-transparent);--bcm-button-link-color-hover:var(--bcm-new-ds-color-blue-600);--bcm-button-link-background-color-hover:var(--bcm-new-ds-color-transparent);--bcm-button-link-border-hover:var(--bcm-new-ds-color-transparent);--bcm-button-link-color-focus-visible:var(--bcm-new-ds-color-blue-800);--bcm-button-link-background-color-focus-visible:var(--bcm-new-ds-color-slate-50);--bcm-button-link-border-focus-visible:var(--bcm-new-ds-color-slate-50);--bcm-button-link-color-active:var(--bcm-new-ds-color-blue-700);--bcm-button-link-background-color-active:var(--bcm-new-ds-color-slate-50);--bcm-button-link-border-active:var(--bcm-new-ds-color-slate-50);--bcm-button-link-color-disabled:var(--bcm-new-ds-color-slate-400);--bcm-button-link-background-color-disabled:var(--bcm-new-ds-color-transparent);--bcm-button-link-border-disabled:var(--bcm-new-ds-color-transparent)}.bcm-button.full-width{width:100%}.bcm-button.full-width .bcm-button__container{width:100%}.bcm-button:after,.bcm-button:before{content:\"\";clear:both}.bcm-button__container{border:none;color:inherit;background-color:inherit;padding:0;margin:0;font:inherit;cursor:pointer;outline:none;text-decoration:none;font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:4px 12px;outline:none;border-radius:4px;transition:background-color 0.1s ease-in-out;position:relative;min-width:40px;border-width:1px;border-style:solid;border-color:initial}.bcm-button__container:hover,.bcm-button__container:focus,.bcm-button__container:active{outline:none;text-decoration:none}.bcm-button__container-loading{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:4px;display:flex;align-items:center;justify-content:center}.bcm-button__container-kind-solid{color:var(--bcm-button-solid-color-default);background-color:var(--bcm-button-solid-background-color-default);border-color:var(--bcm-button-solid-border-default)}.bcm-button__container-kind-solid:hover{color:var(--bcm-button-solid-color-hover);background-color:var(--bcm-button-solid-background-color-hover);border-color:var(--bcm-button-solid-border-hover)}.bcm-button__container-kind-solid:focus-visible{color:var(--bcm-button-solid-color-focus-visible);background-color:var(--bcm-button-solid-background-color-focus-visible);border-color:var(--bcm-button-solid-border-focus-visible)}.bcm-button__container-kind-solid:active{color:var(--bcm-button-solid-color-active);background-color:var(--bcm-button-solid-background-color-active);border-color:var(--bcm-button-solid-border-active)}.bcm-button__container-kind-solid:disabled{color:var(--bcm-button-solid-color-disabled);background-color:var(--bcm-button-solid-background-color-disabled);border-color:var(--bcm-button-solid-border-disabled)}.bcm-button__container-kind-solid.checked{color:var(--bcm-button-solid-color-active);background-color:var(--bcm-button-solid-background-color-active);border-color:var(--bcm-button-solid-border-active)}.bcm-button__container-kind-solid.disabled{color:var(--bcm-button-solid-color-disabled);background-color:var(--bcm-button-solid-background-color-disabled);border-color:var(--bcm-button-solid-border-disabled)}.bcm-button__container-kind-solid .bcm-button__container-loading{color:var(--bcm-button-solid-color-default);background-color:var(--bcm-button-solid-background-color-default);border-color:var(--bcm-button-solid-border-default)}.bcm-button__container-kind-ghost{color:var(--bcm-button-ghost-color-default);background-color:var(--bcm-button-ghost-background-color-default);border-color:var(--bcm-button-ghost-border-default)}.bcm-button__container-kind-ghost:not([disabled]) .bcm-icon{color:var(--bcm-new-ds-color-slate-500)}.bcm-button__container-kind-ghost:hover{color:var(--bcm-button-ghost-color-hover);background-color:var(--bcm-button-ghost-background-color-hover);border-color:var(--bcm-button-ghost-border-hover)}.bcm-button__container-kind-ghost:focus-visible{color:var(--bcm-button-ghost-color-focus-visible);background-color:var(--bcm-button-ghost-background-color-focus-visible);border-color:var(--bcm-button-ghost-border-focus-visible)}.bcm-button__container-kind-ghost:active{color:var(--bcm-button-ghost-color-active);background-color:var(--bcm-button-ghost-background-color-active);border-color:var(--bcm-button-ghost-border-active)}.bcm-button__container-kind-ghost:disabled{color:var(--bcm-button-ghost-color-disabled);background-color:var(--bcm-button-ghost-background-color-disabled);border-color:var(--bcm-button-ghost-border-disabled)}.bcm-button__container-kind-ghost.checked{color:var(--bcm-button-ghost-color-active);background-color:var(--bcm-button-ghost-background-color-active);border-color:var(--bcm-button-ghost-border-active)}.bcm-button__container-kind-ghost.disabled{color:var(--bcm-button-ghost-color-disabled);background-color:var(--bcm-button-ghost-background-color-disabled);border-color:var(--bcm-button-ghost-border-disabled)}.bcm-button__container-kind-ghost .bcm-button__container-loading{color:var(--bcm-button-ghost-color-default);background-color:var(--bcm-button-ghost-background-color-default);border-color:var(--bcm-button-ghost-border-default)}.bcm-button__container-kind-link{color:var(--bcm-button-link-color-default);background-color:var(--bcm-button-link-background-color-default);border-color:var(--bcm-button-link-border-default)}.bcm-button__container-kind-link:hover{color:var(--bcm-button-link-color-hover);background-color:var(--bcm-button-link-background-color-hover);border-color:var(--bcm-button-link-border-hover)}.bcm-button__container-kind-link:focus-visible{color:var(--bcm-button-link-color-focus-visible);background-color:var(--bcm-button-link-background-color-focus-visible);border-color:var(--bcm-button-link-border-focus-visible)}.bcm-button__container-kind-link:active{color:var(--bcm-button-link-color-active);background-color:var(--bcm-button-link-background-color-active);border-color:var(--bcm-button-link-border-active)}.bcm-button__container-kind-link:disabled{color:var(--bcm-button-link-color-disabled);background-color:var(--bcm-button-link-background-color-disabled);border-color:var(--bcm-button-link-border-disabled)}.bcm-button__container-kind-link.checked{color:var(--bcm-button-link-color-active);background-color:var(--bcm-button-link-background-color-active);border-color:var(--bcm-button-link-border-active)}.bcm-button__container-kind-link.disabled{color:var(--bcm-button-link-color-disabled);background-color:var(--bcm-button-link-background-color-disabled);border-color:var(--bcm-button-link-border-disabled)}.bcm-button__container-kind-link .bcm-button__container-loading{color:var(--bcm-button-link-color-default);background-color:var(--bcm-button-link-background-color-default);border-color:var(--bcm-button-link-border-default)}.bcm-button__container[disabled]{cursor:not-allowed}.bcm-button__container-text{order:3;display:flex;align-items:center;gap:8px;white-space:nowrap}.bcm-button__container-icon{min-height:calc(12px + 8px)}.bcm-button__container-icon.prefix{order:2}.bcm-button__container-icon.suffix{order:4}.bcm-button__container-size-small{font-size:12px;line-height:calc(12px + 8px);padding:calc(4px - 3px) 12px;min-height:calc(calc(12px + 8px) + calc(calc(4px - 2px)) * 2)}.bcm-button__container-size-small .bcm-button__container-icon{min-height:calc(12px + 8px)}.bcm-button__container-size-medium{font-size:calc(12px + 1px);line-height:calc(12px + 8px);padding:calc(4px + 1px) 12px;min-height:calc(calc(12px + 8px) + calc(calc(4px + 2px)) * 2)}.bcm-button__container-size-medium .bcm-button__container-icon{min-height:calc(12px + 8px)}.bcm-button__container-size-large{font-size:16px;line-height:calc(16px + 8px);padding:calc(8px - 1px) 12px;min-height:calc(calc(16px + 8px) + (calc(8px) * 2))}.bcm-button__container-size-large .bcm-button__container-icon{min-height:calc(16px + 8px)}";
580
-
581
- const BcmButton = class {
582
- constructor(hostRef) {
583
- index$1.registerInstance(this, hostRef);
584
- this.bcmClick = index$1.createEvent(this, "bcm-click", 7);
585
- this._id = generate.Generate.UID();
586
- this.hidden = false;
587
- this.type = bcm.Bcm$1.ButtonType.button;
588
- this.size = bcm.Bcm$1.Size.medium;
589
- this.disabled = false;
590
- this.kind = bcm.Bcm$1.Kind.solid;
591
- this.outline = false;
592
- this.icon = undefined;
593
- this.href = undefined;
594
- this.target = undefined;
595
- this.value = undefined;
596
- this.loading = false;
597
- this.variant = undefined;
598
- this.dataDismiss = false;
599
- this.fullWidth = false;
600
- this.iconPosition = bcm.Bcm$1.IconPosition.prefix;
601
- this.color = undefined;
602
- this.checked = false;
603
- }
604
- handleOnClick(e) {
605
- if (this.disabled) {
606
- e.preventDefault();
607
- e.stopPropagation();
608
- return false;
609
- }
610
- }
611
- componentWillRender() {
612
- const { size, kind, icon, iconPosition, disabled, outline, href, type, target, loading, variant, fullWidth, hidden, value } = this;
613
- buttonState.setValue({
614
- id: this._id,
615
- size,
616
- type,
617
- kind,
618
- icon,
619
- iconPosition,
620
- disabled,
621
- outline,
622
- href,
623
- target,
624
- loading,
625
- variant,
626
- fullWidth,
627
- hidden,
628
- value,
629
- isIconOnly: !!(this.isHaveChildNodes() && this.icon),
630
- });
631
- }
632
- getStateData() {
633
- return buttonState.getValue(this._id);
634
- }
635
- isHaveChildNodes() {
636
- const childNodes = Array.from(this.el.childNodes);
637
- return childNodes.find(node => node.nodeType === Node.TEXT_NODE) === undefined;
638
- }
639
- setColor(color = this.color) {
640
- if (!color)
641
- return;
642
- const { kind } = this;
643
- const prefix = `--bcm-button-${kind}`;
644
- if (kind === 'solid') {
645
- return {
646
- [`${prefix}-color-default`]: colorHelper.ColorHelper.dsColor('white'),
647
- [`${prefix}-color-hover`]: colorHelper.ColorHelper.dsColor('white'),
648
- [`${prefix}-color-focus-visible`]: colorHelper.ColorHelper.dsColor('white'),
649
- [`${prefix}-color-active`]: colorHelper.ColorHelper.dsColor('white'),
650
- [`${prefix}-color-disabled`]: colorHelper.ColorHelper.dsColor('white'),
651
- [`${prefix}-background-color-default`]: colorHelper.ColorHelper.dsColor(color + '-500'),
652
- [`${prefix}-background-color-hover`]: colorHelper.ColorHelper.dsColor(color + '-600'),
653
- [`${prefix}-background-color-focus-visible`]: colorHelper.ColorHelper.dsColor(color + '-700'),
654
- [`${prefix}-background-color-active`]: colorHelper.ColorHelper.dsColor(color + '-800'),
655
- [`${prefix}-background-color-disabled`]: colorHelper.ColorHelper.dsColor('slate-400'),
656
- [`${prefix}-border-default`]: colorHelper.ColorHelper.dsColor(color + '-500'),
657
- [`${prefix}-border-hover`]: colorHelper.ColorHelper.dsColor(color + '-600'),
658
- [`${prefix}-border-focus-visible`]: colorHelper.ColorHelper.dsColor(color + '-700'),
659
- [`${prefix}-border-active`]: colorHelper.ColorHelper.dsColor(color + '-800'),
660
- [`${prefix}-border-disabled`]: colorHelper.ColorHelper.dsColor('slate-400')
661
- };
662
- }
663
- else if (kind == 'link') {
664
- return {
665
- [`${prefix}-color-default`]: colorHelper.ColorHelper.dsColor(color + '-500'),
666
- [`${prefix}-color-hover`]: colorHelper.ColorHelper.dsColor(color + '-600'),
667
- [`${prefix}-color-focus-visible`]: colorHelper.ColorHelper.dsColor(color + '-800'),
668
- [`${prefix}-color-active`]: colorHelper.ColorHelper.dsColor(color + '-700'),
669
- [`${prefix}-color-disabled`]: colorHelper.ColorHelper.dsColor('slate-400'),
670
- [`${prefix}-background-color-default`]: colorHelper.ColorHelper.dsColor('transparent'),
671
- [`${prefix}-background-color-hover`]: colorHelper.ColorHelper.dsColor('transparent'),
672
- [`${prefix}-background-color-focus-visible`]: colorHelper.ColorHelper.dsColor('slate-50'),
673
- [`${prefix}-background-color-active`]: colorHelper.ColorHelper.dsColor('slate-50'),
674
- [`${prefix}-background-color-disabled`]: colorHelper.ColorHelper.dsColor('transparent'),
675
- [`${prefix}-border-default`]: colorHelper.ColorHelper.dsColor('transparent'),
676
- [`${prefix}-border-hover`]: colorHelper.ColorHelper.dsColor('transparent'),
677
- [`${prefix}-border-focus-visible`]: colorHelper.ColorHelper.dsColor('slate-50'),
678
- [`${prefix}-border-active`]: colorHelper.ColorHelper.dsColor('slate-50'),
679
- [`${prefix}-border-disabled`]: colorHelper.ColorHelper.dsColor('transparent')
680
- };
681
- }
682
- else if (kind == 'ghost') {
683
- return {
684
- [`${prefix}-color-default`]: colorHelper.ColorHelper.dsColor(color + '-600'),
685
- [`${prefix}-color-hover`]: colorHelper.ColorHelper.dsColor(color + '-600'),
686
- [`${prefix}-color-focus-visible`]: colorHelper.ColorHelper.dsColor(color + '-600'),
687
- [`${prefix}-color-active`]: colorHelper.ColorHelper.dsColor(color + '-600'),
688
- [`${prefix}-color-disabled`]: colorHelper.ColorHelper.dsColor(color + '-300'),
689
- [`${prefix}-background-color-default`]: colorHelper.ColorHelper.dsColor(color + '-100'),
690
- [`${prefix}-background-color-hover`]: colorHelper.ColorHelper.dsColor(color + '-200'),
691
- [`${prefix}-background-color-focus-visible`]: colorHelper.ColorHelper.dsColor(color + '-400'),
692
- [`${prefix}-background-color-active`]: colorHelper.ColorHelper.dsColor(color + '-300'),
693
- [`${prefix}-background-color-disabled`]: colorHelper.ColorHelper.dsColor(color + '-50'),
694
- [`${prefix}-border-default`]: colorHelper.ColorHelper.dsColor(color + '-300'),
695
- [`${prefix}-border-hover`]: colorHelper.ColorHelper.dsColor(color + '-400'),
696
- [`${prefix}-border-focus-visible`]: colorHelper.ColorHelper.dsColor(color + '-600'),
697
- [`${prefix}-border-active`]: colorHelper.ColorHelper.dsColor(color + '-500'),
698
- [`${prefix}-border-disabled`]: colorHelper.ColorHelper.dsColor(color + '-200'),
699
- };
700
- }
701
- return;
702
- }
703
- render() {
704
- const { size, kind, disabled, outline, type, href, target, loading, variantColor, fullWidth, hidden, icon, iconPosition, value, isIconOnly, iconSize } = this.getStateData();
705
- const classPrefix = 'bcm-button';
706
- let componentClass = index$3.classnames('bcm-button__container', `bcm-button__container-size-${size}`, `bcm-button__container-kind-${outline ? 'ghost' : kind}`, {
707
- 'full-width': fullWidth,
708
- 'checked': this.checked,
709
- 'disabled': disabled,
710
- });
711
- const hostClasses = index$3.classnames(`${classPrefix}`, {
712
- hidden,
713
- 'full-width': fullWidth,
714
- });
715
- return (index$1.h(index$1.Host, { class: hostClasses, style: this.setColor(variantColor), onClick: () => !disabled && this.bcmClick.emit(this.el) }, index$1.h(ButtonTemplate, { type: type, value: value, componentClass: componentClass, disabled: disabled, href: href, target: target, icon: icon, loading: loading, iconSize: iconSize, isIconOnly: isIconOnly, iconPosition: iconPosition })));
716
- }
717
- get el() { return index$1.getElement(this); }
718
- };
719
- BcmButton.style = buttonCss;
720
-
721
- const dropdownCss = "@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\"); .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-dropdown{width:fit-content;display:inline-flex;flex-direction:row}.bcm-dropdown.hidden{display:none}.bcm-dropdown.no-style{cursor:pointer}.bcm-dropdown.full-width{width:100%}.bcm-dropdown.full-width .bcm-button__container-text{flex:1;justify-content:space-between}.bcm-dropdown__type-split .main-button .bcm-button__container{border-top-right-radius:0;border-bottom-right-radius:0}.bcm-dropdown__type-split .split-button .bcm-button__container{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:1px;min-width:auto}.bcm-dropdown__icon{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-wrap:nowrap;transform:rotate(0deg);transition:transform 0.2s ease}.bcm-dropdown__icon--open{transform:rotate(180deg)}";
722
-
723
- var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
724
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
725
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
726
- r = Reflect.decorate(decorators, target, key, desc);
727
- else
728
- for (var i = decorators.length - 1; i >= 0; i--)
729
- if (d = decorators[i])
730
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
731
- return c > 3 && r && Object.defineProperty(target, key, r), r;
732
- };
733
- const BcmDropdown = class {
734
- constructor(hostRef) {
735
- index$1.registerInstance(this, hostRef);
736
- this.bcmClick = index$1.createEvent(this, "bcm-click", 7);
737
- this.bcmDropdownChange = index$1.createEvent(this, "bcm-dropdown-change", 7);
738
- this.isOpen = undefined;
739
- this._id = generate.Generate.UID();
740
- this.menuId = generate.Generate.UID();
741
- this.hidden = false;
742
- this.type = 'dropdown';
743
- this.size = bcm.Bcm$1.Size.medium;
744
- this.disabled = false;
745
- this.kind = bcm.Bcm$1.Kind.solid;
746
- this.icon = undefined;
747
- this.href = undefined;
748
- this.target = undefined;
749
- this.value = undefined;
750
- this.noStyle = false;
751
- this.dropdownIcon = 'fas fa-angle-down';
752
- this.linkedComponent = undefined;
753
- this.loading = false;
754
- this.variant = undefined;
755
- this.dataDismiss = false;
756
- this.fullWidth = false;
757
- this.iconPosition = bcm.Bcm$1.IconPosition.prefix;
758
- this.placement = undefined;
759
- this.height = undefined;
760
- this.maxHeight = '500px';
761
- this.minHeight = '50px';
762
- this.stopDeepClean = false;
763
- this.selectable = true;
764
- this.gap = '4px';
765
- this.color = undefined;
766
- this.activeItem = null;
767
- this.data = [];
768
- }
769
- async dataChanged(newValue) {
770
- if (newValue) {
771
- this.data = newValue;
772
- }
773
- }
774
- async setActive(id = null) {
775
- var _a, _b;
776
- (_b = (_a = document
777
- .getElementById(`${this.menuId}`)) === null || _a === void 0 ? void 0 : _a.querySelectorAll('bcm-menu')) === null || _b === void 0 ? void 0 : _b.forEach(item => {
778
- item.setActive(id);
779
- });
780
- }
781
- async getActive() {
782
- return this.activeItem;
783
- }
784
- handleSlotItems({ detail }) {
785
- this.data = detail;
786
- }
787
- setActiveAttribute(e) {
788
- if (e.detail) {
789
- this.bcmDropdownChange.emit(e.detail);
790
- this.activeItem = e.detail;
791
- }
792
- }
793
- ;
794
- render() {
795
- const { size, kind, disabled, icon, color, href, target, loading, type, variant, fullWidth, isOpen } = this;
796
- const hostClasses = index$3.classnames('bcm-dropdown', 'bcm-dropdown__type-' + type, {
797
- 'full-width': fullWidth,
798
- 'no-style': this.noStyle,
799
- 'hidden': this.hidden || this.linkedComponent,
800
- });
801
- const attributes = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (disabled && { disabled })), (loading && { loading })), (kind && { kind })), (size && { size })), (variant && { variant })), (color && { color })), (this.menuId && { 'menu-id': this.menuId }));
802
- const iconClasses = index$3.classnames('bcm-dropdown__icon', {
803
- 'bcm-dropdown__icon--open': isOpen,
804
- });
805
- const dropdownIcon = (index$1.h("span", { class: iconClasses }, index$1.h("bcm-icon", { icon: this.dropdownIcon })));
806
- return (index$1.h(index$1.Host, { class: hostClasses }, index$1.h("span", { hidden: true }, index$1.h("slot", null)), this.noStyle && index$1.h("slot", null), !this.noStyle && (index$1.h("bcm-button", Object.assign({ class: "main-button", id: `${this._id}-button` }, attributes, (icon && { icon }), (href && type === 'split' && { href }), (target && type === 'split' && { target }), (fullWidth && { fullWidth })), index$1.h("slot", null), type === 'dropdown' && dropdownIcon)), !this.noStyle && type === 'split' && (index$1.h("bcm-button", Object.assign({ id: `${this._id}-button-split`, class: "split-button" }, attributes), dropdownIcon)), index$1.h("bcm-linked", { id: `${this.menuId}`, "target-id": `${this._id}-button${type === 'split' ? '-split' : ''}`, placement: this.placement || (type === 'dropdown' ? 'bottom-start' : 'bottom-end'), "max-height": this.maxHeight, "min-height": this.minHeight, height: this.height, "on-bcm-open": e => { var _a; return ((_a = e === null || e === void 0 ? void 0 : e.target) === null || _a === void 0 ? void 0 : _a.id) == this.menuId && (this.isOpen = e.detail); } }, this.data && this.data.length > 0 && index$1.h("bcm-menu", { data: this.data, selectable: this.selectable, "on-bcm-click": e => this.bcmClick.emit(e.detail), "onBcm-menu-change": e => this.setActiveAttribute(e), gap: this.gap, dropdown: true }), index$1.h("slot", { name: "content" }))));
807
- }
808
- get el() { return index$1.getElement(this); }
809
- static get watchers() { return {
810
- "data": ["dataChanged"]
811
- }; }
812
- };
813
- __decorate$1([
814
- isLoadDecorator.IsLoad()
815
- ], BcmDropdown.prototype, "el", void 0);
816
- __decorate$1([
817
- jsonParseDecarator.JsonParse('data', true)
818
- ], BcmDropdown.prototype, "dataChanged", null);
819
- BcmDropdown.style = dropdownCss;
820
-
821
- const iconCss = "@import url(\"https://fonts.googleapis.com/css?family=Roboto:400,500\");.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}.bcm-icon.hidden{display:none}";
822
-
823
- const customIconList = {
824
- "message-bot": "message-bot.svg",
825
- };
826
- const BcmIcon = class {
827
- constructor(hostRef) {
828
- index$1.registerInstance(this, hostRef);
829
- this.hidden = false;
830
- this.icon = undefined;
831
- }
832
- getIcon() {
833
- const { icon } = this;
834
- if (icon in customIconList) {
835
- const _icon = index$1.getAssetPath("./static/" + customIconList[icon]);
836
- return (index$1.h("div", { class: "tw-flex tw-h-fit tw-w-fit tw-items-center tw-justify-center" }, index$1.h("img", { src: `${_icon}`, alt: icon, class: "tw-h-fit tw-w-fit" })));
837
- }
838
- return index$1.h("i", { class: `${icon}` });
839
- }
840
- render() {
841
- const { /*icon,*/ hidden } = this;
842
- return index$1.h(index$1.Host, { class: `bcm-icon fa ${hidden ? "hidden" : ""}` }, this.getIcon());
843
- }
844
- static get assetsDirs() { return ["static"]; }
845
- get el() { return index$1.getElement(this); }
846
- };
847
- BcmIcon.style = iconCss;
848
-
849
- const itemCss = "@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\"); .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-item{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:nowrap;--bcm-item-color-default:var(--bcm-new-ds-color-white);--bcm-item-background-color-default:var(--bcm-new-ds-color-blue-500);--bcm-item-color-hover:var(--bcm-new-ds-color-white);--bcm-item-background-color-hover:var(--bcm-new-ds-color-blue-600);--bcm-item-color-focus-visible:var(--bcm-new-ds-color-white);--bcm-item-background-color-focus-visible:var(--bcm-new-ds-color-blue-800);--bcm-item-color-active:var(--bcm-new-ds-color-white);--bcm-item-background-color-active:var(--bcm-new-ds-color-blue-700);--bcm-item-color-disabled:var(--bcm-new-ds-color-white);--bcm-item-background-color-disabled:var(--bcm-new-ds-color-slate-400);font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;border-radius:4px;outline:none;color:var(--bcm-item-color-default);background-color:var(--bcm-item-background-color-default)}.bcm-item-size-small{font-size:12px;line-height:calc(12px + 8px);padding:2px 12px;min-height:calc(calc(12px + 8px) + calc(2px) * 2)}.bcm-item-size-medium{font-size:14px;line-height:calc(14px + 8px);padding:5px 12px;min-height:calc(calc(14px + 8px) + calc(5px) * 2)}.bcm-item-size-large{font-size:16px;line-height:calc(16px + 8px);padding:8px 12px;min-height:calc(calc(16px + 8px) + calc(8px) * 2)}.bcm-item:default{color:var(--bcm-item-color-default);background-color:var(--bcm-item-background-color-default)}.bcm-item:hover{color:var(--bcm-item-color-hover);background-color:var(--bcm-item-background-color-hover)}.bcm-item:focus-visible{color:var(--bcm-item-color-focus-visible);background-color:var(--bcm-item-background-color-focus-visible)}.bcm-item:active{color:var(--bcm-item-color-active);background-color:var(--bcm-item-background-color-active)}.bcm-item:disabled{color:var(--bcm-item-color-disabled);background-color:var(--bcm-item-background-color-disabled)}.bcm-item:not(.static):hover{cursor:pointer}";
850
-
851
- const BcmItem = class {
852
- constructor(hostRef) {
853
- index$1.registerInstance(this, hostRef);
854
- this._id = generate.Generate.UID();
855
- this.size = bcm.Bcm$1.Size.medium;
856
- this.color = undefined;
857
- this.static = false;
858
- }
859
- setColor(color = this.color) {
860
- if (!color)
861
- return;
862
- const prefix = `--bcm-item`;
863
- if (color == "white") {
864
- return {
865
- [`${prefix}-color-default`]: colorHelper.ColorHelper.dsColor('slate-600'),
866
- [`${prefix}-color-hover`]: colorHelper.ColorHelper.dsColor('slate-600'),
867
- [`${prefix}-color-focus-visible`]: colorHelper.ColorHelper.dsColor('slate-600'),
868
- [`${prefix}-color-active`]: colorHelper.ColorHelper.dsColor('slate-600'),
869
- [`${prefix}-color-disabled`]: colorHelper.ColorHelper.dsColor('white'),
870
- [`${prefix}-background-color-default`]: colorHelper.ColorHelper.dsColor(this.static ? 'white' : 'white'),
871
- [`${prefix}-background-color-hover`]: colorHelper.ColorHelper.dsColor(this.static ? 'white' : 'slate-100'),
872
- [`${prefix}-background-color-focus-visible`]: colorHelper.ColorHelper.dsColor(this.static ? 'white' : 'slate-200'),
873
- [`${prefix}-background-color-active`]: colorHelper.ColorHelper.dsColor(this.static ? 'white' : 'slate-300'),
874
- [`${prefix}-background-color-disabled`]: colorHelper.ColorHelper.dsColor('slate-400'),
875
- };
876
- }
877
- return {
878
- [`${prefix}-color-default`]: colorHelper.ColorHelper.dsColor('white'),
879
- [`${prefix}-color-hover`]: colorHelper.ColorHelper.dsColor('white'),
880
- [`${prefix}-color-focus-visible`]: colorHelper.ColorHelper.dsColor('white'),
881
- [`${prefix}-color-active`]: colorHelper.ColorHelper.dsColor('white'),
882
- [`${prefix}-color-disabled`]: colorHelper.ColorHelper.dsColor('white'),
883
- [`${prefix}-background-color-default`]: colorHelper.ColorHelper.dsColor(color + '-500'),
884
- [`${prefix}-background-color-hover`]: colorHelper.ColorHelper.dsColor(color + '-600'),
885
- [`${prefix}-background-color-focus-visible`]: colorHelper.ColorHelper.dsColor(color + '-700'),
886
- [`${prefix}-background-color-active`]: colorHelper.ColorHelper.dsColor(color + '-800'),
887
- [`${prefix}-background-color-disabled`]: colorHelper.ColorHelper.dsColor('slate-400'),
888
- };
889
- }
890
- disconnectedCallback() {
891
- // this.el.remove()
892
- }
893
- render() {
894
- const hostClasses = index$3.classnames('bcm-item', `bcm-item-size-${this.size}`);
895
- return (index$1.h(index$1.Host, { class: hostClasses, style: this.setColor() }, index$1.h("slot", null)));
896
- }
897
- get el() { return index$1.getElement(this); }
898
- };
899
- BcmItem.style = itemCss;
900
-
901
- const BcmItems = class {
902
- constructor(hostRef) {
903
- index$1.registerInstance(this, hostRef);
904
- this.bcmItems = index$1.createEvent(this, "bcm-items", 7);
905
- this._id = generate.Generate.UID();
906
- }
907
- connectedCallback() {
908
- if (this.el.children && this.el.children.length > 0) {
909
- let slots = this.nestedItems(this.el);
910
- this.bcmItems.emit(slots);
911
- this.el.remove();
912
- }
913
- }
914
- mapItems(element) {
915
- var _a;
916
- const item = element;
917
- const textContent = (_a = item === null || item === void 0 ? void 0 : item.innerHTML) === null || _a === void 0 ? void 0 : _a.replace(/<bcm-item>.*<\/bcm-item>/g, '').replace(/<bcm-item .*>.*<\/bcm-item>/g, '').replace(/<!--(.|\s)*?-->/g, '').trim();
918
- const checkAttr = (attr) => stringHelper.StringHelper.elementBooleanCheck(element.getAttribute(attr));
919
- return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ id: element.getAttribute('id') || generate.Generate.UID(), text: element.getAttribute('text') || textContent }, (element.innerHTML.trim() && { isHtmlContent: element.textContent.length > 0 ? (element.innerHTML.trim()) : null })), (checkAttr('disabled') && { disabled: checkAttr('disabled') })), (checkAttr('selected') && { selected: checkAttr('selected') })), (checkAttr('hidden') && { hidden: checkAttr('hidden') })), (checkAttr('checked') && { checked: checkAttr('checked') })), (checkAttr('readonly') && { readonly: checkAttr('readonly') })), (checkAttr('active') && { active: checkAttr('active') })), (checkAttr('icon') && { icon: element.getAttribute('icon') })), (checkAttr('link') && { link: element.getAttribute('link') }));
920
- }
921
- nestedItems(element) {
922
- return generate.snq(() => Array.from(element === null || element === void 0 ? void 0 : element.children).map((child) => {
923
- var _a;
924
- return (Object.assign(Object.assign({}, (((_a = child === null || child === void 0 ? void 0 : child.tagName) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === 'bcm-item' && this.mapItems(child))), { items: this.nestedItems(child) }));
925
- }), []);
926
- }
927
- render() {
928
- return index$1.h("slot", null);
929
- }
930
- get el() { return index$1.getElement(this); }
931
- };
932
-
933
- const BcmLinked = class {
934
- constructor(hostRef) {
935
- index$1.registerInstance(this, hostRef);
936
- this.bcmOpen = index$1.createEvent(this, "bcm-open", 7);
937
- this._id = generate.Generate.UID();
938
- this.placement = bcm.Bcm.Placement["bottom-start"];
939
- this.trigger = bcm.Bcm.TriggerType.click;
940
- this.targetId = "";
941
- this.height = undefined;
942
- this.maxHeight = undefined;
943
- this.minHeight = "50px";
944
- this.isOpen = false;
945
- this.hideDelay = 500;
946
- this.isMouseOverLink = false;
947
- }
948
- target() {
949
- const target = document.querySelectorAll(`[id="${this.targetId}"]`);
950
- if (target.length > 0) {
951
- target.length > 1 && console.warn(`[bcm-linked] - Target id "${this.targetId}" is duplicated`);
952
- return target[0];
953
- }
954
- else {
955
- // console.warn(`[bcm-linked] - id="${this._id}" was removed from the dom because id="${this.targetId}" could not be found.`);
956
- this.el.remove();
957
- return null;
958
- }
959
- }
960
- detectClone() {
961
- const linked = document.querySelectorAll(`[target-id="${this.targetId}"]`);
962
- if (linked.length > 0) {
963
- linked.forEach((item) => {
964
- if (item.id !== this._id) {
965
- console.warn(`[bcm-linked] - id="${this._id}" was removed from the dom because id="${this.targetId}" is duplicated.`);
966
- item.remove();
967
- }
968
- });
969
- }
970
- }
971
- dismissEvent() {
972
- document.dispatchEvent(new CustomEvent("linked-data-dismiss", { detail: { id: this._id } }));
973
- }
974
- checkDataDismiss(e) {
975
- generate.Generate.findEventPathHasAttribute(e, "data-dismiss") && this.dismissEvent();
976
- }
977
- hideChildLinked() {
978
- this.el.querySelectorAll("[is-linked][linked-is-open]").forEach(item => {
979
- var _a;
980
- (_a = document.querySelector(`#${item.getAttribute("is-linked")}[is-open]`)) === null || _a === void 0 ? void 0 : _a.hide(false);
981
- });
982
- }
983
- calculatePosition() {
984
- const el = this.el;
985
- if (el && this.target()) {
986
- if (this.isOpen) {
987
- floatingUi.FloatingUI({
988
- ref: this.target(),
989
- floating: el,
990
- placement: this.placement,
991
- offset: 4,
992
- autoHidden: el.getAttribute("main-linked") === "true" ? false : true,
993
- autoSize: true,
994
- style: {
995
- height: this.height,
996
- maxHeight: this.maxHeight,
997
- minHeight: this.minHeight,
998
- },
999
- });
1000
- }
1001
- else {
1002
- el.style.visibility = "hidden";
1003
- el.style.opacity = "0";
1004
- }
1005
- }
1006
- }
1007
- init() {
1008
- const target = this.target();
1009
- this.trigger === bcm.Bcm.TriggerType.hover && this.listenMouseOver();
1010
- if (target) {
1011
- target.setAttribute("is-linked", this.el.id);
1012
- if (!generate.Generate.getAncestor(target, "bcm-linked")) {
1013
- this.el.setAttribute("main-linked", "true");
1014
- }
1015
- else {
1016
- this.el.removeAttribute("main-linked");
1017
- }
1018
- }
1019
- }
1020
- componentDidLoad() {
1021
- this.init();
1022
- }
1023
- triggerWatch(newValue) {
1024
- if (newValue === bcm.Bcm.TriggerType.hover) {
1025
- this.listenMouseOver();
1026
- }
1027
- }
1028
- watchIsOpen() {
1029
- this.bcmOpen.emit(this.isOpen);
1030
- }
1031
- onLinkedDataDismis() {
1032
- this.hide(false);
1033
- }
1034
- onBcmFloatingIsHide(e) {
1035
- if (e.detail.id === this._id) {
1036
- this.hide(false);
1037
- }
1038
- }
1039
- async show(wait = true) {
1040
- wait && (await utils.delay(50));
1041
- this.detectClone();
1042
- const target = this.target();
1043
- if (target) {
1044
- const bcmOverlayContainer = document.querySelector("#bcm-overlay-container");
1045
- bcmOverlayContainer.appendChild(this.el);
1046
- target.setAttribute("linked-is-open", "true");
1047
- this.isOpen = true;
1048
- this.calculatePosition();
1049
- }
1050
- else {
1051
- this.hide(false);
1052
- }
1053
- return this.isOpen;
1054
- }
1055
- async hide(wait = true) {
1056
- wait && (await utils.delay(50));
1057
- const target = this.target();
1058
- this.isMouseOverLink = false;
1059
- if (target) {
1060
- target.removeAttribute("linked-is-open");
1061
- this.hideChildLinked();
1062
- this.isOpen = false;
1063
- }
1064
- return this.isOpen;
1065
- }
1066
- async toggle(wait = true) {
1067
- return this.isOpen ? await this.hide(wait) : await this.show(wait);
1068
- }
1069
- clickListener(e) {
1070
- if (!this.target())
1071
- return;
1072
- if (this.trigger === bcm.Bcm.TriggerType.hover)
1073
- return;
1074
- const isTarget = generate.Generate.findEventPath(e, this.target());
1075
- const isSelf = generate.Generate.findEventPath(e, this.el);
1076
- const isLinked = generate.Generate.findEventPathWithNodeName(e, "BCM-LINKED");
1077
- if (!isTarget && !isSelf && !isLinked) {
1078
- this.hide();
1079
- this.bcmOpen.emit(this.isOpen);
1080
- return;
1081
- }
1082
- if (this.isOpen) {
1083
- isTarget && this.hide(false);
1084
- isSelf && this.checkDataDismiss(e);
1085
- if (this.el.getAttribute("main-linked") === "true" && !isTarget && !isSelf && !isLinked) {
1086
- this.dismissEvent();
1087
- }
1088
- }
1089
- else {
1090
- isTarget && this.show(false);
1091
- }
1092
- }
1093
- resizeListener() {
1094
- this.calculatePosition();
1095
- }
1096
- scrollListener() {
1097
- this.calculatePosition();
1098
- }
1099
- wheelListener() {
1100
- this.calculatePosition();
1101
- }
1102
- listenMouseOver() {
1103
- var _a, _b;
1104
- this.el.addEventListener("mouseover", () => (this.isMouseOverLink = true));
1105
- this.el.addEventListener("mouseleave", () => {
1106
- this.isMouseOverLink = false;
1107
- this.handleMouseLeave();
1108
- });
1109
- (_a = this.target()) === null || _a === void 0 ? void 0 : _a.addEventListener("mouseenter", this.handleMouseEnter.bind(this));
1110
- (_b = this.target()) === null || _b === void 0 ? void 0 : _b.addEventListener("mouseleave", this.handleMouseLeave.bind(this));
1111
- }
1112
- handleMouseLeave() {
1113
- setTimeout(() => {
1114
- !this.isMouseOverLink && this.hide();
1115
- }, this.hideDelay);
1116
- }
1117
- handleMouseEnter() {
1118
- clearTimeout(this.timeoutId);
1119
- this.isMouseOverLink = false;
1120
- this.show();
1121
- }
1122
- render() {
1123
- const openStyle = this.isOpen ? { visibility: "visible", opacity: "1" } : { visibility: "hidden", opacity: "0" };
1124
- return (index$1.h(index$1.Host, { class: "tw-invisible tw-absolute tw-left-0 tw-top-0 tw-z-tooltip tw-block tw-overscroll-contain tw-scroll-smooth tw-rounded tw-bg-white tw-opacity-0 tw-shadow tw-transition-opacity tw-duration-100", style: Object.assign(Object.assign({}, openStyle), { overflow: "auto" }) }, index$1.h("slot", null)));
1125
- }
1126
- get el() { return index$1.getElement(this); }
1127
- static get watchers() { return {
1128
- "trigger": ["triggerWatch"],
1129
- "isOpen": ["watchIsOpen"]
1130
- }; }
1131
- };
1132
-
1133
- const menuCss = "@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\"); .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-menu{--bcm-menu-color-default:var(--bcm-new-ds-color-slate-700);--bcm-menu-background-color-default:var(--bcm-new-ds-color-transparent);--bcm-menu-icon-color-default:var(--bcm-new-ds-color-slate-600);--bcm-menu-color-hover:var(--bcm-new-ds-color-slate-800);--bcm-menu-background-color-hover:var(--bcm-new-ds-color-slate-50);--bcm-menu-icon-color-hover:var(--bcm-new-ds-color-slate-700);--bcm-menu-color-active:var(--bcm-new-ds-color-white);--bcm-menu-background-color-active:var(--bcm-color-primary-500);--bcm-menu-icon-color-active:var(--bcm-new-ds-color-white);--bcm-menu-color-focus-visible:var(--bcm-new-ds-color-white);--bcm-menu-background-color-focus-visible:var(--bcm-color-primary-600);--bcm-menu-icon-color-focus-visible:var(--bcm-new-ds-color-white);--bcm-menu-color-disabled:var(--bcm-new-ds-color-slate-50);--bcm-menu-background-color-disabled:var(--bcm-new-ds-color-slate-300);--bcm-menu-icon-color-disabled:var(--bcm-new-ds-color-slate-50);--bcm-menu-color-dropdownDisabled:var(--bcm-new-ds-color-slate-400);--bcm-menu-background-color-dropdownDisabled:var(--bcm-new-ds-color-transparent);--bcm-menu-icon-color-dropdownDisabled:var(--bcm-new-ds-color-slate-400);--bcm-menu-color-active-hover:var(--bcm-new-ds-color-white);--bcm-menu-background-color-active-hover:var(--bcm-color-primary-400);--bcm-menu-icon-color-active-hover:var(--bcm-new-ds-color-white);--bcm-menu-color-active-focus-visible:var(--bcm-new-ds-color-white);--bcm-menu-background-color-active-focus-visible:var(--bcm-color-primary-700);--bcm-menu-icon-color-active-focus-visible:var(--bcm-new-ds-color-white);--bcm-menu-color-active-active:var(--bcm-new-ds-color-white);--bcm-menu-background-color-active-active:var(--bcm-color-primary-800);--bcm-menu-icon-color-active-active:var(--bcm-new-ds-color-white);font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;display:inline-block;position:relative;width:210px;box-shadow:0 2px 6px 1px rgba(17, 24, 38, 0.1);border-radius:8px;background-color:var(--bcm-new-ds-color-white);transition:background-color 0.1s ease-in-out, width 0.3s ease-in-out}.bcm-menu__container{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap}.bcm-menu__item{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap;font:inherit;cursor:pointer;color:inherit;background-color:inherit;padding:0;margin:0;border:none;outline:none;text-decoration:none}.bcm-menu__item:hover,.bcm-menu__item:focus,.bcm-menu__item:active{outline:none;text-decoration:none}.bcm-menu__item--is-sub{color:var(--bcm-menu-color-hover);background-color:var(--bcm-menu-background-color-hover);border-radius:4px}.bcm-menu__item--is-sub .bcm-menu__item-link-icon,.bcm-menu__item--is-sub .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-hover)}.bcm-menu__item-link{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px;padding:4px 8px;border-radius:4px;transition:background-color 0.1s ease-in-out, padding 0.3s ease-in-out;color:var(--bcm-menu-color-default);background-color:var(--bcm-menu-background-color-default)}.bcm-menu__item-link-icon{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-wrap:nowrap;min-width:24px;max-width:24px}.bcm-menu__item-link-text{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1}.bcm-menu__item-link-text--collapse{opacity:0}.bcm-menu__item-link-toggle{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-wrap:nowrap;font-size:10px;height:100%;order:0;width:24px;transform:rotate(0deg);transition:transform 0.2s ease-in-out;margin-right:-8px}.bcm-menu__item-link-toggle--collapse{transform:rotate(-180deg)}.bcm-menu__item-link .bcm-menu__item-link-icon,.bcm-menu__item-link .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-default)}.bcm-menu__item-link:hover:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active){color:var(--bcm-menu-color-hover);background-color:var(--bcm-menu-background-color-hover)}.bcm-menu__item-link:hover:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-icon,.bcm-menu__item-link:hover:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-hover)}.bcm-menu__item-link:active:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active){color:var(--bcm-menu-color-active);background-color:var(--bcm-menu-background-color-active)}.bcm-menu__item-link:active:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-icon,.bcm-menu__item-link:active:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-active)}.bcm-menu__item-link:focus-visible:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active){color:var(--bcm-menu-color-focus-visible);background-color:var(--bcm-menu-background-color-focus-visible)}.bcm-menu__item-link:focus-visible:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-icon,.bcm-menu__item-link:focus-visible:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-focus-visible)}.bcm-menu__item-link:disabled:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active){color:var(--bcm-menu-color-disabled);background-color:var(--bcm-menu-background-color-disabled)}.bcm-menu__item-link:disabled:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-icon,.bcm-menu__item-link:disabled:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-disabled)}.bcm-menu__item-link:dropdownDisabled:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active){color:var(--bcm-menu-color-dropdownDisabled);background-color:var(--bcm-menu-background-color-dropdownDisabled)}.bcm-menu__item-link:dropdownDisabled:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-icon,.bcm-menu__item-link:dropdownDisabled:not(.bcm-menu__item-link--disabled):not(.bcm-menu__item-link--active) .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-dropdownDisabled)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled){color:var(--bcm-menu-color-active);background-color:var(--bcm-menu-background-color-active)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled) .bcm-menu__item-link-icon,.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled) .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-active)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):hover{color:var(--bcm-menu-color-active-hover);background-color:var(--bcm-menu-background-color-active-hover)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):hover .bcm-menu__item-link-icon,.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):hover .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-active-hover)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):focus-visible{color:var(--bcm-menu-color-active-focus-visible);background-color:var(--bcm-menu-background-color-active-focus-visible)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):focus-visible .bcm-menu__item-link-icon,.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):focus-visible .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-active-focus-visible)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):active{color:var(--bcm-menu-color-active-active);background-color:var(--bcm-menu-background-color-active-active)}.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):active .bcm-menu__item-link-icon,.bcm-menu__item-link--active:not(.bcm-menu__item-link--disabled):active .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-active-active)}.bcm-menu__item-link--disabled{cursor:not-allowed;color:var(--bcm-menu-color-disabled);background-color:var(--bcm-menu-background-color-disabled)}.bcm-menu__item-link--disabled .bcm-menu__item-link-icon,.bcm-menu__item-link--disabled .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-disabled)}.bcm-menu__item-submenu{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap;gap:4px;padding:12px;display:none}.bcm-menu__item-submenu .bcm-menu__item-link{--bcm-menu-background-color-default:var(--bcm-new-ds-color-white);--bcm-menu-background-color-hover:var(--bcm-new-ds-color-slate-100)}.bcm-menu__item-submenu--open{display:flex}.bcm-menu__size-small{padding:8px;font-size:12px;line-height:calc(14px + 8px)}.bcm-menu__size-medium{padding:16px;font-size:14px;line-height:calc(16px + 8px)}.bcm-menu__size-large{padding:16px;font-size:16px;line-height:calc(18px + 8px)}.bcm-menu__collapse-button{color:var(--bcm-menu-color-active);background-color:var(--bcm-menu-background-color-active);display:flex;flex-direction:row;align-items:center;justify-content:center;flex-wrap:nowrap;font-size:14px;border-radius:100px;position:absolute;top:23px;right:-8px;width:18px;height:18px;cursor:pointer;transition:background-color 0.1s ease-in-out, transform 0.3s ease}.bcm-menu__collapse-button:hover{color:var(--bcm-menu-color-active-hover);background-color:var(--bcm-menu-background-color-active-hover)}.bcm-menu__collapse-button:focus-visible{color:var(--bcm-menu-color-active-focus-visible);background-color:var(--bcm-menu-background-color-active-focus-visible)}.bcm-menu__collapse-button:active{color:var(--bcm-menu-color-active-active);background-color:var(--bcm-menu-background-color-active-active)}.bcm-menu__collapse-button--collapsed{transform:rotate(-180deg)}.bcm-menu__collapse{width:64px}.bcm-menu__collapse .bcm-menu__item-link{padding:4px}.bcm-menu--linked{position:absolute;z-index:10800;top:0;left:0;opacity:0;visibility:hidden;width:fit-content;min-height:50px;max-height:500px;height:auto;overflow-y:auto;padding:12px}.bcm-menu--linked.bcm-menu__open{opacity:1;visibility:visible}.bcm-menu--linked .bcm-menu__container{gap:4px}.bcm-menu--linked .bcm-menu__item-link{--bcm-menu-background-color-default:var(--bcm-new-ds-color-slate-50);--bcm-menu-background-color-hover:var(--bcm-new-ds-color-slate-100)}.bcm-menu--linked .bcm-menu__item .bcm-menu__item-submenu .bcm-menu__item-link{--bcm-menu-background-color-default:var(--bcm-new-ds-color-white);--bcm-menu-background-color-hover:var(--bcm-new-ds-color-slate-100)}.bcm-menu--linked .bcm-menu__item-submenu-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-submenu-link:not(.bcm-menu--linked .bcm-menu__item-submenu-link--active){background-color:var(--bcm-menu-background-color-default)}.bcm-menu--linked .bcm-menu__item-submenu-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-submenu-link:not(.bcm-menu--linked .bcm-menu__item-submenu-link--active):hover{color:var(--bcm-menu-color-hover);background-color:var(--bcm-menu-background-color-hover)}.bcm-menu--linked .bcm-menu__item-submenu-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-submenu-link:not(.bcm-menu--linked .bcm-menu__item-submenu-link--active):focus-visible{color:var(--bcm-menu-color-focus-visible);background-color:var(--bcm-menu-background-color-focus-visible)}.bcm-menu--linked .bcm-menu__item-submenu-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-submenu-link:not(.bcm-menu--linked .bcm-menu__item-submenu-link--active):active{color:var(--bcm-menu-color-active);background-color:var(--bcm-menu-background-color-active)}.bcm-menu--linked .bcm-menu__item-submenu-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-submenu-link:not(.bcm-menu--linked .bcm-menu__item-submenu-link--active) .bcm-menu__item-link--disabled{cursor:not-allowed;color:var(--bcm-menu-color-disabled);background-color:var(--bcm-menu-background-color-disabled)}.bcm-menu--linked .bcm-menu__item-submenu-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-submenu-link:not(.bcm-menu--linked .bcm-menu__item-submenu-link--active) .bcm-menu__item-link--disabled .bcm-menu__item-link-icon,.bcm-menu--linked .bcm-menu__item-submenu-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-submenu-link:not(.bcm-menu--linked .bcm-menu__item-submenu-link--active) .bcm-menu__item-link--disabled .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-disabled)}.bcm-menu--linked .bcm-menu__item-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-link:not(.bcm-menu--linked .bcm-menu__item-link--active){background-color:var(--bcm-menu-background-color-default)}.bcm-menu--linked .bcm-menu__item-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-link:not(.bcm-menu--linked .bcm-menu__item-link--active):hover{color:var(--bcm-menu-color-hover);background-color:var(--bcm-menu-background-color-hover)}.bcm-menu--linked .bcm-menu__item-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-link:not(.bcm-menu--linked .bcm-menu__item-link--active):focus-visible{color:var(--bcm-menu-color-focus-visible);background-color:var(--bcm-menu-background-color-focus-visible)}.bcm-menu--linked .bcm-menu__item-link:not(:disabled) .bcm-menu--linked .bcm-menu__item-link:not(.bcm-menu--linked .bcm-menu__item-link--active):active{color:var(--bcm-menu-color-active);background-color:var(--bcm-menu-background-color-active)}.bcm-menu__dropdown{width:auto;max-width:210px}.bcm-menu__dropdown .bcm-menu__item-link--disabled{color:var(--bcm-menu-color-dropdownDisabled);background-color:var(--bcm-menu-background-color-dropdownDisabled)}.bcm-menu__dropdown .bcm-menu__item-link--disabled .bcm-menu__item-link-icon,.bcm-menu__dropdown .bcm-menu__item-link--disabled .bcm-menu__item-link-toggle{color:var(--bcm-menu-icon-color-dropdownDisabled)}";
1134
-
1135
- var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1136
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1137
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
1138
- r = Reflect.decorate(decorators, target, key, desc);
1139
- else
1140
- for (var i = decorators.length - 1; i >= 0; i--)
1141
- if (d = decorators[i])
1142
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1143
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1144
- };
1145
- const BcmMenu = class {
1146
- constructor(hostRef) {
1147
- index$1.registerInstance(this, hostRef);
1148
- this.bcmClick = index$1.createEvent(this, "bcm-click", 7);
1149
- this.bcmExpanded = index$1.createEvent(this, "bcm-expanded", 7);
1150
- this.bcmMenuChange = index$1.createEvent(this, "bcm-menu-change", 7);
1151
- this._id = generate.Generate.UID();
1152
- this.size = 'medium';
1153
- this.collapsible = false;
1154
- this.collapse = false;
1155
- this.mode = 'inline';
1156
- this.disabled = false;
1157
- this.hidden = false;
1158
- this.linkedComponent = undefined;
1159
- this.height = 'auto';
1160
- this.maxHeight = '500px';
1161
- this.minHeight = '150px';
1162
- this.selectable = true;
1163
- this.gap = "16px";
1164
- this.dropdown = false;
1165
- this.placement = 'bottom-start';
1166
- this.activeItemId = undefined;
1167
- this.data = [];
1168
- }
1169
- async setActive(param) {
1170
- this.activeItemId = null;
1171
- const recursive = (data) => {
1172
- data.forEach(item => {
1173
- if (item.id == param) {
1174
- item.active = true;
1175
- this.activeItemId = item.id;
1176
- this.bcmClick.emit(item);
1177
- }
1178
- else {
1179
- item.active = false;
1180
- if (item.items) {
1181
- recursive(item.items);
1182
- }
1183
- }
1184
- });
1185
- };
1186
- recursive(this.data);
1187
- }
1188
- async getActive() {
1189
- return this.activeItem;
1190
- }
1191
- handleSlotItems({ detail }) {
1192
- this.data = detail;
1193
- }
1194
- handleClickItem(item) {
1195
- if (item.items && item.items.length > 0) {
1196
- item.isOpen = !item.isOpen;
1197
- index$1.forceUpdate(this);
1198
- }
1199
- else {
1200
- this.activeItemId = item.id;
1201
- document.dispatchEvent(new CustomEvent('linked-data-dismiss', { detail: { id: this._id } }));
1202
- }
1203
- // this.data = this.data.map(menuItem => ({ ...menuItem, active: menuItem.id === item.id }));
1204
- this.bcmClick.emit(item);
1205
- }
1206
- getTooltip(id, text) {
1207
- return new Tooltip({ message: text, targetId: 'bcm-menu__item-' + this._id + '-' + id, placement: 'right' });
1208
- }
1209
- render() {
1210
- const { data, collapsible, collapse } = this;
1211
- const hostClasses = index$3.classnames('bcm-menu', `bcm-menu__size-${this.size}`, {
1212
- 'bcm-menu__collapse': collapse,
1213
- 'bcm-menu__dropdown': this.dropdown,
1214
- });
1215
- const MenuLinkTemplate = (item, index) => {
1216
- if (!item.text)
1217
- return;
1218
- if (!item.id)
1219
- item.id = generate.Generate.UID();
1220
- const subItems = !!(item.items && item.items.length);
1221
- if (this.selectable && (this.activeItemId ? this.activeItemId === item.id : item.active)) {
1222
- this.bcmMenuChange.emit(item);
1223
- this.activeItem = item;
1224
- }
1225
- return (index$1.h("a", { id: 'bcm-menu__item-' + this._id + '-' + item.id, onMouseEnter: () => this.collapse && this.getTooltip(item.id, item.text).show(), onMouseLeave: () => this.collapse && this.getTooltip(item.id, item.text).hide(), key: index, href: !item.disabled ? item.link || 'javascript:void(0)' : 'javascript:void(0)', tabindex: item.disabled ? '-1' : '0', class: index$3.classnames('bcm-menu__item', {
1226
- 'bcm-menu__item--is-sub': subItems && item.isOpen,
1227
- 'hidden tw-hidden': item.hidden,
1228
- }) }, index$1.h("span", { class: index$3.classnames('bcm-menu__item-link', `bcm-menu__item-link--${this.mode}`, {
1229
- 'bcm-menu__item-link--active': this.selectable && (this.activeItemId ? this.activeItemId === item.id : item.active),
1230
- 'bcm-menu__item-link--disabled': item.disabled,
1231
- }), onClick: () => {
1232
- !this.disabled && !item.disabled && this.handleClickItem(item);
1233
- } }, item.icon && (index$1.h("span", { class: "bcm-menu__item-link-icon" }, index$1.h("i", { class: item.icon || 'far fa-angle-left' }))), index$1.h("span", { class: index$3.classnames('bcm-menu__item-link-text', {
1234
- 'bcm-menu__item-link-text--collapse': collapse,
1235
- }), innerHTML: item.text }), subItems && (index$1.h("div", { class: index$3.classnames('bcm-menu__item-link-toggle', {
1236
- 'bcm-menu__item-link-toggle--collapse': item.isOpen,
1237
- }) }, index$1.h("i", { class: "fas fa-chevron-down" })))), subItems && (index$1.h("div", { class: index$3.classnames('bcm-menu__item-submenu', {
1238
- 'bcm-menu__item-submenu--collapse': collapse,
1239
- 'bcm-menu__item-submenu--open': item.isOpen,
1240
- }) }, item.items.map((subItem, subIndex) => MenuLinkTemplate(subItem, subIndex))))));
1241
- };
1242
- return (index$1.h(index$1.Host, { class: hostClasses, disabled: this.disabled }, index$1.h("div", { class: "bcm-menu__container", style: { gap: this.gap } }, index$1.h("slot", null), (data === null || data === void 0 ? void 0 : data.length) > 0 && data.map((item, index) => MenuLinkTemplate(item, index)), collapsible && (index$1.h("div", { class: index$3.classnames('bcm-menu__collapse-button', {
1243
- 'bcm-menu__collapse-button--collapsed': collapse,
1244
- }), onClick: () => {
1245
- this.collapse = !collapse;
1246
- collapsible && this.bcmExpanded.emit(collapse);
1247
- } }, index$1.h("i", { class: "far fa-angle-left" }))))));
1248
- }
1249
- get el() { return index$1.getElement(this); }
1250
- };
1251
- __decorate([
1252
- isLoadDecorator.IsLoad()
1253
- ], BcmMenu.prototype, "el", void 0);
1254
- BcmMenu.style = menuCss;
1255
-
1256
- const BcmPopover = class {
1257
- constructor(hostRef) {
1258
- index$1.registerInstance(this, hostRef);
1259
- this.bcmPopoverShow = index$1.createEvent(this, "bcmPopoverShow", 7);
1260
- this.bcmPopoverHide = index$1.createEvent(this, "bcmPopoverHide", 7);
1261
- this._id = generate.Generate.UID();
1262
- this.message = "";
1263
- this.content = "";
1264
- this.placement = bcm.Bcm.Placement.top;
1265
- this.trigger = bcm.Bcm.TriggerType.click;
1266
- this.open = false;
1267
- this.color = "white";
1268
- this.openDelay = 0;
1269
- this.closeDelay = 0;
1270
- this.autoHide = false;
1271
- this.targetId = undefined;
1272
- this.popover = undefined;
1273
- }
1274
- emitShow() {
1275
- this.bcmPopoverShow.emit();
1276
- }
1277
- emitHide() {
1278
- this.bcmPopoverHide.emit();
1279
- }
1280
- connectedCallback() {
1281
- this.popover = new Popover({
1282
- targetId: this.targetId || this._id,
1283
- content: this.content,
1284
- message: this.message,
1285
- placement: this.placement,
1286
- color: this.color,
1287
- trigger: this.trigger,
1288
- openDelay: this.openDelay,
1289
- closeDelay: this.closeDelay,
1290
- autoHide: this.autoHide,
1291
- emitShow: () => this.emitShow(),
1292
- emitHide: () => this.emitHide(),
1293
- });
1294
- }
1295
- componentDidLoad() {
1296
- this.popover.listener();
1297
- }
1298
- componentDidRender() {
1299
- const { content, message, placement, color, trigger } = this;
1300
- this.popover.content = content;
1301
- this.popover.message = message;
1302
- this.popover.placement = placement;
1303
- this.popover.color = color;
1304
- this.popover.trigger = trigger;
1305
- this.popover.openDelay = this.openDelay;
1306
- this.popover.closeDelay = this.closeDelay;
1307
- this.popover.autoHide = this.autoHide;
1308
- this.popover.update();
1309
- }
1310
- disconnectedCallback() {
1311
- this.popover.destroy();
1312
- }
1313
- async show() {
1314
- this.popover.show();
1315
- }
1316
- async hide() {
1317
- this.popover.hide();
1318
- }
1319
- async toggle() {
1320
- this.popover.toggle();
1321
- }
1322
- render() {
1323
- return (index$1.h(index$1.Host, { class: "tw-inline-flex tw-h-fit tw-w-fit", role: "tooltip", "aria-hidden": "true" }, index$1.h("slot", null)));
1324
- }
1325
- get el() { return index$1.getElement(this); }
1326
- };
1327
-
1328
- const BcmTabGroup = class {
1329
- constructor(hostRef) {
1330
- index$1.registerInstance(this, hostRef);
1331
- this.tabChange = index$1.createEvent(this, "bcm-tab-change", 7);
1332
- this._id = generate.Generate.UID();
1333
- this.active = "1";
1334
- this.color = "blue";
1335
- this.size = bcm.Bcm.Size.medium;
1336
- }
1337
- get tabItems() {
1338
- return this.el.querySelectorAll("bcm-tab-item");
1339
- }
1340
- get tabItemHeaders() {
1341
- return this.el.querySelectorAll("bcm-tab-item-header");
1342
- }
1343
- setTabAttributes() {
1344
- this.tabItems.forEach((tab, index) => {
1345
- const itemActive = tab.hasAttribute("active") ? true : false;
1346
- const itemDisabled = tab.hasAttribute("disabled") ? true : false;
1347
- const itemIndex = index + 1;
1348
- tab.setAttribute("index", `${itemIndex}`);
1349
- tab.setAttribute("size", this.size);
1350
- tab.setAttribute("color", this.color);
1351
- tab.removeAttribute("active");
1352
- tab.removeAttribute("disabled");
1353
- if (itemActive) {
1354
- tab.setAttribute("active", "");
1355
- this.active = itemIndex.toString();
1356
- }
1357
- if (itemDisabled) {
1358
- tab.setAttribute("disabled", "");
1359
- }
1360
- // const headerElement = tab.querySelector("bcm-tab-item-header");
1361
- // if (headerElement) {
1362
- // this.setHeaderTabAttributes(headerElement, tab);
1363
- // }
1364
- });
1365
- const isHasActiveTab = Array.from(this.tabItems).some((tab) => tab.hasAttribute("active"));
1366
- if (!isHasActiveTab) {
1367
- this.tabItems[0].setAttribute("active", "");
1368
- }
1369
- }
1370
- componentWillLoad() {
1371
- this.setTabAttributes();
1372
- }
1373
- handleTabClick(index) {
1374
- var _a, _b;
1375
- if (index) {
1376
- this.active = index.toString();
1377
- }
1378
- if ((_a = this.tabItems) === null || _a === void 0 ? void 0 : _a.length) {
1379
- this.tabItems.forEach(tab => {
1380
- tab.removeAttribute("active");
1381
- tab.setAttribute("size", this.size);
1382
- tab.setAttribute("color", this.color);
1383
- if (tab.getAttribute("index") == this.active) {
1384
- tab.setAttribute("active", "");
1385
- }
1386
- });
1387
- }
1388
- if ((_b = this.tabItemHeaders) === null || _b === void 0 ? void 0 : _b.length) {
1389
- this.tabItemHeaders.forEach(tabHeader => {
1390
- tabHeader.removeAttribute("active");
1391
- tabHeader.setAttribute("size", this.size);
1392
- tabHeader.setAttribute("color", this.color);
1393
- if (tabHeader.getAttribute("index") == this.active) {
1394
- tabHeader.setAttribute("active", "");
1395
- // tabHeader.scrollIntoView({
1396
- // behavior: "smooth",
1397
- // block: "start",
1398
- // inline: "center",
1399
- // });
1400
- }
1401
- });
1402
- }
1403
- this.tabChange.emit(this.active);
1404
- }
1405
- componentDidRender() {
1406
- this.inkBarControl();
1407
- this.handleTabClick();
1408
- }
1409
- componentDidLoad() {
1410
- this.inkBarControl();
1411
- this.observeTabItem();
1412
- }
1413
- async setActive(index) {
1414
- if (index > 0 && index <= this.tabItems.length && index != +this.active) {
1415
- this.handleTabClick(index);
1416
- }
1417
- }
1418
- async refresh() {
1419
- await utils.delay(100);
1420
- index$1.forceUpdate(this);
1421
- }
1422
- inkBarControl() {
1423
- var _a;
1424
- const inkBar = this.el.querySelector("#ink-bar");
1425
- if (!inkBar || !((_a = this.tabItemHeaders) === null || _a === void 0 ? void 0 : _a.length))
1426
- return;
1427
- for (let i = 0; i < this.tabItemHeaders.length; i++) {
1428
- const tab = this.tabItemHeaders[i];
1429
- const tabIndex = tab.getAttribute("index");
1430
- if (tabIndex === this.active) {
1431
- inkBar.style.width = `${tab.offsetWidth}px`;
1432
- // inkBar.style.top = `${tab.offsetHeight}px`;
1433
- inkBar.style.transform = `translateX(${tab.offsetLeft}px)`;
1434
- }
1435
- }
1436
- }
1437
- activeChanged(newVal, _oldVal) {
1438
- var _a;
1439
- if (!((_a = this.tabItems) === null || _a === void 0 ? void 0 : _a.length))
1440
- return;
1441
- const isHasActiveTab = Array.from(this.tabItems).some(tab => tab.getAttribute("index") == newVal);
1442
- if (!isHasActiveTab) {
1443
- this.active = "1";
1444
- }
1445
- }
1446
- observeTabItem() {
1447
- const callback = (mutationsList, _observer) => {
1448
- for (const mutation of mutationsList) {
1449
- if (mutation.type === "childList") {
1450
- // for (const node of mutation.addedNodes) {
1451
- // if (node.nodeName === "BCM-TAB-ITEM") {
1452
- // // Do something when a bcm-tab-item is added
1453
- // }
1454
- // }
1455
- for (const node of mutation.removedNodes) {
1456
- if (node.nodeName === "BCM-TAB-ITEM") {
1457
- // Do something when a bcm-tab-item is removed
1458
- // console.log("A bcm-tab-item was removed.", node);
1459
- if (node === null || node === void 0 ? void 0 : node.active) {
1460
- this.active = "1";
1461
- }
1462
- this.tabProcess();
1463
- }
1464
- }
1465
- }
1466
- }
1467
- };
1468
- this.observer = new MutationObserver(callback);
1469
- this.observer.observe(this.el, { childList: true });
1470
- }
1471
- tabProcess() {
1472
- this.updateTabHeaders();
1473
- this.regenerateIndex();
1474
- this.refresh();
1475
- this.inkBarControl();
1476
- }
1477
- updateTabHeaders() {
1478
- const tabIds = Array.from(this.tabItems).map(tab => tab.getAttribute("id"));
1479
- const tabHeaderElements = Array.from(this.el.querySelector("#tab-header").querySelectorAll("bcm-tab-item-header"));
1480
- if (tabIds.length !== tabHeaderElements.length) {
1481
- tabHeaderElements.forEach(tabHeader => {
1482
- const tabId = tabHeader.getAttribute("tab-id");
1483
- if (!tabIds.includes(tabId)) {
1484
- tabHeader.remove();
1485
- }
1486
- });
1487
- }
1488
- }
1489
- regenerateIndex() {
1490
- this.tabItems.forEach((tab, index) => {
1491
- const itemIndex = index + 1;
1492
- tab.setAttribute("index", `${itemIndex}`);
1493
- const headerElement = this.el.querySelector(`bcm-tab-item-header[tab-id="${tab.getAttribute("id")}"]`);
1494
- if (headerElement) {
1495
- headerElement.setAttribute("index", `${itemIndex}`);
1496
- headerElement.style.order = `${itemIndex}`;
1497
- }
1498
- });
1499
- }
1500
- render() {
1501
- const { color } = this;
1502
- const dc = generate.Generate.getTwColor({
1503
- color: color,
1504
- tones: [500]
1505
- });
1506
- return (index$1.h(index$1.Host, { role: "tablist", "aria-label": "Tab Group", class: "tw-flex tw-w-full tw-flex-col tw-items-center tw-font-sans" }, index$1.h("div", { class: `tw-relative tw-flex tw-w-full tw-flex-row tw-items-end tw-justify-between`, id: "tab-header", style: dc }, index$1.h("div", { id: "ink-bar", class: `tw-bg-default-500 tw-absolute tw-bottom-0 tw-left-0 tw-mt-[-2px] tw-h-[2px] tw-rounded-sm tw-transition-transform` })), index$1.h("slot", null)));
1507
- }
1508
- get el() { return index$1.getElement(this); }
1509
- static get watchers() { return {
1510
- "active": ["activeChanged"]
1511
- }; }
1512
- };
1513
-
1514
- const BcmTabItem = class {
1515
- constructor(hostRef) {
1516
- index$1.registerInstance(this, hostRef);
1517
- this._id = generate.Generate.UID();
1518
- this.active = false;
1519
- this.disabled = false;
1520
- this.index = undefined;
1521
- }
1522
- componentWillLoad() {
1523
- this.indexControl();
1524
- }
1525
- componentDidRender() {
1526
- this.headerMove();
1527
- }
1528
- getHeaderItem() {
1529
- const headerItem = this.el.querySelector("bcm-tab-item-header");
1530
- if (headerItem) {
1531
- headerItem.setAttribute("index", `${this.index}`);
1532
- headerItem.setAttribute("active", `${this.active}`);
1533
- headerItem.setAttribute("disabled", `${this.disabled}`);
1534
- headerItem.setAttribute("tab-id", `${this._id}`);
1535
- headerItem.style.order = `${this.index}`;
1536
- }
1537
- return headerItem;
1538
- }
1539
- getParentTabGroup() {
1540
- return generate.Generate.findParentElement(this.el, "bcm-tab-group");
1541
- }
1542
- getFindHeaderItem() {
1543
- var _a, _b;
1544
- return (_b = (_a = this.getParentTabGroup()) === null || _a === void 0 ? void 0 : _a.querySelector("#tab-header")) === null || _b === void 0 ? void 0 : _b.querySelector(`bcm-tab-item-header[tab-id="${this._id}"]`);
1545
- }
1546
- headerMove() {
1547
- var _a, _b, _c, _d;
1548
- if (this.getHeaderItem()) {
1549
- (_a = this.getFindHeaderItem()) === null || _a === void 0 ? void 0 : _a.remove();
1550
- (_c = (_b = this.getParentTabGroup()) === null || _b === void 0 ? void 0 : _b.querySelector("#tab-header")) === null || _c === void 0 ? void 0 : _c.appendChild(this.getHeaderItem());
1551
- (_d = this.el.parentElement) === null || _d === void 0 ? void 0 : _d.refresh();
1552
- }
1553
- }
1554
- indexControl() {
1555
- var _a;
1556
- if (!this.index) {
1557
- (_a = generate.Generate.findParentElement(this.el, "bcm-tab-group")) === null || _a === void 0 ? void 0 : _a.querySelectorAll("bcm-tab-item").forEach((item, index) => {
1558
- if (item === this.el) {
1559
- item.setAttribute("index", `${index + 1}`);
1560
- }
1561
- });
1562
- }
1563
- }
1564
- componentDidLoad() {
1565
- const observer = new MutationObserver(() => {
1566
- this.headerMove();
1567
- });
1568
- observer.observe(this.el, { childList: true, subtree: true });
1569
- }
1570
- render() {
1571
- return (index$1.h(index$1.Host, { id: this._id, role: "tabpanel", "aria-labelledby": `tab-${this._id}`, "aria-hidden": `${!this.active}`, class: {
1572
- "tw-block": this.active,
1573
- "tw-hidden": !this.active,
1574
- "tw-opacity-50": this.disabled,
1575
- "tw-w-full": true,
1576
- } }, index$1.h("slot", null)));
1577
- }
1578
- get el() { return index$1.getElement(this); }
1579
- };
1580
-
1581
- const BcmTabItemHeader = class {
1582
- constructor(hostRef) {
1583
- index$1.registerInstance(this, hostRef);
1584
- this._id = generate.Generate.UID();
1585
- this.active = false;
1586
- this.disabled = false;
1587
- this.index = undefined;
1588
- this.color = "blue";
1589
- this.size = bcm.Bcm.Size.medium;
1590
- }
1591
- handleClick() {
1592
- var _a;
1593
- if (!this.disabled) {
1594
- (_a = generate.Generate.findParentElement(this.el, "bcm-tab-group")) === null || _a === void 0 ? void 0 : _a.setActive(this.index);
1595
- }
1596
- }
1597
- render() {
1598
- const { color, size, active, disabled } = this;
1599
- const disabledClass = "tw-cursor-not-allowed tw-text-gray-400 tw-opacity-50";
1600
- const dc = generate.Generate.getTwColor({
1601
- color: color,
1602
- tones: [500, 600, 700, 800]
1603
- });
1604
- return (index$1.h(index$1.Host, { onClick: () => this.handleClick(), class: index$3.classnames(`tw-flex tw-flex-1 tw-items-center tw-justify-center tw-border-b-[2px] tw-border-b-slate-300 tw-transition-font tw-focus:outline-none`, {
1605
- "tw-text-2 tw-py-1 tw-gap-2": size === bcm.Bcm.Size.small,
1606
- "tw-text-3 tw-py-2 tw-gap-3": size === bcm.Bcm.Size.medium,
1607
- "tw-text-4 tw-py-3 tw-gap-4": size === bcm.Bcm.Size.large,
1608
- }, disabled ? disabledClass : "tw-cursor-pointer", active
1609
- ? `tw-text-default-500 enabled:hover:tw-text-default-600 enabled:active:tw-text-default-700 enabled:focus-visible:tw-text-default-800`
1610
- : "tw-text-slate-400 enabled:hover:tw-text-slate-500 enabled:focus-visible:tw-text-slate-700 enabled:active:tw-text-slate-600"), style: dc }));
1611
- }
1612
- get el() { return index$1.getElement(this); }
1613
- };
1614
-
1615
- const textCss = "@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\"); .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-text{display:inline;font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400}.bcm-text.hidden{display:none}.bcm-text__paragraph{margin:0;padding:0}.bcm-text__font-size-1{font-size:10px;line-height:calc(10px + 8px)}.bcm-text__font-size-2{font-size:12px;line-height:calc(12px + 8px)}.bcm-text__font-size-3{font-size:14px;line-height:calc(14px + 8px)}.bcm-text__font-size-4{font-size:16px;line-height:calc(16px + 8px)}.bcm-text__font-size-5{font-size:18px;line-height:calc(18px + 8px)}.bcm-text__font-size-6{font-size:20px;line-height:calc(20px + 8px)}.bcm-text__font-size-7{font-size:24px;line-height:calc(24px + 8px)}.bcm-text__font-size-8{font-size:32px;line-height:calc(32px + 8px)}.bcm-text__font-size-9{font-size:40px;line-height:calc(40px + 8px)}";
1616
-
1617
- const BcmText = class {
1618
- constructor(hostRef) {
1619
- index$1.registerInstance(this, hostRef);
1620
- this.hidden = false;
1621
- this.scale = undefined;
1622
- this.weight = "400";
1623
- this.color = "slate";
1624
- this.text = undefined;
1625
- this.fontSize = 4;
1626
- }
1627
- render() {
1628
- const { hidden, scale, weight, color, fontSize } = this;
1629
- const hostClasses = index$3.classnames('bcm-text', {
1630
- hidden
1631
- });
1632
- const classes = index$3.classnames('bcm-text__paragraph', `bcm-text__font-size-${fontSize}`, scale);
1633
- const fontWeight = +weight || 400;
1634
- const style = {
1635
- color: colorHelper.ColorHelper.dsColor(color),
1636
- fontWeight
1637
- };
1638
- return (index$1.h(index$1.Host, { class: hostClasses }, index$1.h("span", { hidden: true }, index$1.h("slot", null)), index$1.h("p", { class: classes, style: Object.assign({}, style) }, index$1.h(slotTemplate.SlotTemplate, { value: this.text }))));
1639
- }
1640
- get el() { return index$1.getElement(this); }
1641
- };
1642
- BcmText.style = textCss;
1643
-
1644
- const BcmTooltip = class {
1645
- constructor(hostRef) {
1646
- index$1.registerInstance(this, hostRef);
1647
- this.bcmTooltipShow = index$1.createEvent(this, "bcmTooltipShow", 7);
1648
- this.bcmTooltipHide = index$1.createEvent(this, "bcmTooltipHide", 7);
1649
- this._id = generate.Generate.UID();
1650
- this.message = "";
1651
- this.placement = bcm.Bcm.Placement.top;
1652
- this.trigger = bcm.Bcm.TriggerType.click;
1653
- this.open = false;
1654
- this.color = "slate";
1655
- this.size = bcm.Bcm.Size.medium;
1656
- this.openDelay = 0;
1657
- this.closeDelay = 0;
1658
- this.autoHide = false;
1659
- this.targetId = undefined;
1660
- this.tooltip = undefined;
1661
- }
1662
- emitShow() {
1663
- this.bcmTooltipShow.emit();
1664
- }
1665
- emitHide() {
1666
- this.bcmTooltipHide.emit();
1667
- }
1668
- connectedCallback() {
1669
- this.tooltip = new Tooltip({
1670
- targetId: this.targetId || this._id,
1671
- message: this.message,
1672
- placement: this.placement,
1673
- color: this.color,
1674
- trigger: this.trigger,
1675
- size: this.size,
1676
- openDelay: this.openDelay,
1677
- closeDelay: this.closeDelay,
1678
- autoHide: this.autoHide,
1679
- emitShow: () => this.emitShow(),
1680
- emitHide: () => this.emitHide(),
1681
- });
1682
- }
1683
- componentDidLoad() {
1684
- this.tooltip.listener();
1685
- }
1686
- componentDidRender() {
1687
- this.tooltip.message = this.message;
1688
- this.tooltip.placement = this.placement;
1689
- this.tooltip.color = this.color;
1690
- this.tooltip.trigger = this.trigger;
1691
- this.tooltip.size = this.size;
1692
- this.tooltip.openDelay = this.openDelay;
1693
- this.tooltip.closeDelay = this.closeDelay;
1694
- this.tooltip.autoHide = this.autoHide;
1695
- this.tooltip.update();
1696
- }
1697
- disconnectedCallback() {
1698
- this.tooltip.destroy();
1699
- }
1700
- async show() {
1701
- this.tooltip.show();
1702
- }
1703
- async hide() {
1704
- this.tooltip.hide();
1705
- }
1706
- async toggle() {
1707
- this.tooltip.toggle();
1708
- }
1709
- render() {
1710
- return (index$1.h(index$1.Host, { class: "tw-inline-flex tw-h-fit tw-w-fit", role: "tooltip", "aria-hidden": "true" }, index$1.h("slot", null)));
1711
- }
1712
- get el() { return index$1.getElement(this); }
1713
- };
1714
-
1715
- const BcmTypography = class {
1716
- constructor(hostRef) {
1717
- index$1.registerInstance(this, hostRef);
1718
- }
1719
- render() {
1720
- return (index$1.h(index$1.Host, { class: "bcm-ui-element bcm-ui-content-display" }, index$1.h("slot", null)));
1721
- }
1722
- get el() { return index$1.getElement(this); }
1723
- };
1724
-
1725
- exports.bcm_badge = BcmBadge;
1726
- exports.bcm_button = BcmButton;
1727
- exports.bcm_dropdown = BcmDropdown;
1728
- exports.bcm_icon = BcmIcon;
1729
- exports.bcm_item = BcmItem;
1730
- exports.bcm_items = BcmItems;
1731
- exports.bcm_linked = BcmLinked;
1732
- exports.bcm_menu = BcmMenu;
1733
- exports.bcm_popover = BcmPopover;
1734
- exports.bcm_tab_group = BcmTabGroup;
1735
- exports.bcm_tab_item = BcmTabItem;
1736
- exports.bcm_tab_item_header = BcmTabItemHeader;
1737
- exports.bcm_text = BcmText;
1738
- exports.bcm_tooltip = BcmTooltip;
1739
- exports.bcm_typography = BcmTypography;