bromcom-ui-next 0.1.29 → 0.1.30

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 (426) hide show
  1. package/dist/bromcom-ui/_commonjsHelpers-CvGrISen.js.map +1 -0
  2. package/dist/bromcom-ui/bcm-accordion.entry.esm.js.map +1 -1
  3. package/dist/bromcom-ui/bcm-alert.entry.esm.js.map +1 -1
  4. package/dist/bromcom-ui/bcm-button.bcm-drawer.bcm-linked.bcm-modal.bcm-pop-confirm.bcm-popover.bcm-tooltip.entry.esm.js.map +1 -0
  5. package/dist/bromcom-ui/bcm-divider.entry.esm.js.map +1 -1
  6. package/dist/bromcom-ui/bcm-dropdown.entry.esm.js.map +1 -1
  7. package/dist/bromcom-ui/bcm-segmented-picker-option.entry.esm.js.map +1 -1
  8. package/dist/bromcom-ui/bcm-segmented-picker.entry.esm.js.map +1 -1
  9. package/dist/bromcom-ui/bcm-switch.entry.esm.js.map +1 -1
  10. package/dist/bromcom-ui/bcm-tabs.entry.esm.js.map +1 -1
  11. package/dist/bromcom-ui/bcm-text.entry.esm.js.map +1 -1
  12. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  13. package/dist/bromcom-ui/bromcom-ui.esm.js.map +1 -1
  14. package/dist/bromcom-ui/floating-ui.dom-ltNPqX34.js.map +1 -0
  15. package/dist/bromcom-ui/generate-id-Crb5QsB-.js.map +1 -0
  16. package/dist/bromcom-ui/index-40rmUZjU.js.map +1 -0
  17. package/dist/bromcom-ui/index-BCaJmHBB.js.map +1 -0
  18. package/dist/bromcom-ui/{p-8ace5a6a.entry.js → p-0c7c6896.entry.js} +2 -2
  19. package/dist/bromcom-ui/p-0c7c6896.entry.js.map +1 -0
  20. package/dist/bromcom-ui/p-11d0e649.entry.js +2 -0
  21. package/dist/bromcom-ui/p-11d0e649.entry.js.map +1 -0
  22. package/dist/bromcom-ui/{p-6b585adc.entry.js → p-12f38632.entry.js} +2 -2
  23. package/dist/bromcom-ui/p-12f38632.entry.js.map +1 -0
  24. package/dist/bromcom-ui/{p-5e0702d1.entry.js → p-13cbd1f5.entry.js} +2 -2
  25. package/dist/bromcom-ui/p-13cbd1f5.entry.js.map +1 -0
  26. package/dist/bromcom-ui/{p-2480e468.entry.js → p-1507908f.entry.js} +2 -2
  27. package/dist/bromcom-ui/p-1507908f.entry.js.map +1 -0
  28. package/dist/bromcom-ui/p-1ce9913f.entry.js +2 -0
  29. package/dist/bromcom-ui/p-1ce9913f.entry.js.map +1 -0
  30. package/dist/bromcom-ui/p-206d767e.entry.js +2 -0
  31. package/dist/bromcom-ui/p-206d767e.entry.js.map +1 -0
  32. package/dist/bromcom-ui/{p-ee5f877f.entry.js → p-3cf7a7f4.entry.js} +2 -2
  33. package/dist/bromcom-ui/p-3cf7a7f4.entry.js.map +1 -0
  34. package/dist/bromcom-ui/p-4505feba.entry.js +2 -0
  35. package/dist/bromcom-ui/p-4505feba.entry.js.map +1 -0
  36. package/dist/bromcom-ui/{p-089edfdc.entry.js → p-496014ca.entry.js} +2 -2
  37. package/dist/bromcom-ui/p-496014ca.entry.js.map +1 -0
  38. package/dist/bromcom-ui/{p-26d2db9e.entry.js → p-4a932cd3.entry.js} +2 -2
  39. package/dist/bromcom-ui/p-4a932cd3.entry.js.map +1 -0
  40. package/dist/bromcom-ui/p-4e554b8d.entry.js +2 -0
  41. package/dist/bromcom-ui/p-4e554b8d.entry.js.map +1 -0
  42. package/dist/bromcom-ui/{p-360bff8a.entry.js → p-57c4c4c4.entry.js} +2 -2
  43. package/dist/bromcom-ui/p-57c4c4c4.entry.js.map +1 -0
  44. package/dist/bromcom-ui/{p-211ca6e0.entry.js → p-61293ab2.entry.js} +2 -2
  45. package/dist/bromcom-ui/p-61293ab2.entry.js.map +1 -0
  46. package/dist/bromcom-ui/{p-83f64814.entry.js → p-61789456.entry.js} +2 -2
  47. package/dist/bromcom-ui/p-61789456.entry.js.map +1 -0
  48. package/dist/bromcom-ui/{p-488d6ef4.entry.js → p-65d0f188.entry.js} +2 -2
  49. package/dist/bromcom-ui/p-65d0f188.entry.js.map +1 -0
  50. package/dist/bromcom-ui/{p-11f3e129.entry.js → p-83f707dc.entry.js} +2 -2
  51. package/dist/bromcom-ui/p-83f707dc.entry.js.map +1 -0
  52. package/dist/bromcom-ui/p-8ba02e7e.entry.js +2 -0
  53. package/dist/bromcom-ui/p-8ba02e7e.entry.js.map +1 -0
  54. package/dist/bromcom-ui/{p-22edf049.entry.js → p-9e9bf32e.entry.js} +2 -2
  55. package/dist/bromcom-ui/p-9e9bf32e.entry.js.map +1 -0
  56. package/dist/bromcom-ui/p-BfTCfPZ1.js.map +1 -1
  57. package/dist/bromcom-ui/p-CEcVC0yX.js.map +1 -1
  58. package/dist/bromcom-ui/p-CRwAh9Np.js +3 -0
  59. package/dist/bromcom-ui/p-CRwAh9Np.js.map +1 -0
  60. package/dist/bromcom-ui/p-IBjzkjef.js.map +1 -1
  61. package/dist/bromcom-ui/{p-a88f20e0.entry.js → p-c87a6acf.entry.js} +2 -2
  62. package/dist/bromcom-ui/p-c87a6acf.entry.js.map +1 -0
  63. package/dist/bromcom-ui/{p-c34f0a66.entry.js → p-e0e235a8.entry.js} +2 -2
  64. package/dist/bromcom-ui/p-e0e235a8.entry.js.map +1 -0
  65. package/dist/bromcom-ui/{p-0101b4f2.entry.js → p-e1ce8b55.entry.js} +2 -2
  66. package/dist/bromcom-ui/p-e1ce8b55.entry.js.map +1 -0
  67. package/dist/bromcom-ui/p-e4dddb0b.entry.js +2 -0
  68. package/dist/bromcom-ui/p-e4dddb0b.entry.js.map +1 -0
  69. package/dist/bromcom-ui/p-f9426924.entry.js +2 -0
  70. package/dist/bromcom-ui/p-f9426924.entry.js.map +1 -0
  71. package/dist/bromcom-ui/{p-c0e7f9d6.entry.js → p-faa0e62c.entry.js} +2 -2
  72. package/dist/bromcom-ui/p-faa0e62c.entry.js.map +1 -0
  73. package/dist/bromcom-ui/{p-bdaf5653.entry.js → p-fcb4399f.entry.js} +2 -2
  74. package/dist/bromcom-ui/p-fcb4399f.entry.js.map +1 -0
  75. package/dist/bromcom-ui/tv-SlGJ5EfR.js.map +1 -0
  76. package/dist/bromcom-ui/validation-messages-CUvT12BL.js.map +1 -0
  77. package/dist/cjs/bcm-accordion-group.cjs.entry.js +2 -4
  78. package/dist/cjs/bcm-accordion.cjs.entry.js +3 -5
  79. package/dist/cjs/bcm-accordion.entry.cjs.js.map +1 -1
  80. package/dist/cjs/bcm-alert.cjs.entry.js +3 -5
  81. package/dist/cjs/bcm-alert.entry.cjs.js.map +1 -1
  82. package/dist/cjs/bcm-avatar.cjs.entry.js +1 -3
  83. package/dist/cjs/bcm-badge.cjs.entry.js +3 -5
  84. package/dist/cjs/bcm-basic-badge.cjs.entry.js +3 -5
  85. package/dist/cjs/bcm-button-group.cjs.entry.js +3 -5
  86. package/dist/cjs/bcm-button.bcm-drawer.bcm-linked.bcm-modal.bcm-pop-confirm.bcm-popover.bcm-tooltip.entry.cjs.js.map +1 -0
  87. package/dist/cjs/bcm-button_7.cjs.entry.js +4131 -0
  88. package/dist/cjs/bcm-checkbox.cjs.entry.js +2 -4
  89. package/dist/cjs/bcm-chip.cjs.entry.js +2 -4
  90. package/dist/cjs/bcm-divider.cjs.entry.js +3 -5
  91. package/dist/cjs/bcm-divider.entry.cjs.js.map +1 -1
  92. package/dist/cjs/bcm-dropdown-item.cjs.entry.js +3 -5
  93. package/dist/cjs/bcm-dropdown.cjs.entry.js +3 -13
  94. package/dist/cjs/bcm-dropdown.entry.cjs.js.map +1 -1
  95. package/dist/cjs/bcm-input.cjs.entry.js +3 -5
  96. package/dist/cjs/bcm-radio-group.cjs.entry.js +3 -5
  97. package/dist/cjs/bcm-radio.cjs.entry.js +2 -4
  98. package/dist/cjs/bcm-segmented-picker-option.cjs.entry.js +3 -5
  99. package/dist/cjs/bcm-segmented-picker-option.entry.cjs.js.map +1 -1
  100. package/dist/cjs/bcm-segmented-picker.cjs.entry.js +3 -5
  101. package/dist/cjs/bcm-segmented-picker.entry.cjs.js.map +1 -1
  102. package/dist/cjs/bcm-shortcut.cjs.entry.js +2 -4
  103. package/dist/cjs/bcm-switch.cjs.entry.js +4 -6
  104. package/dist/cjs/bcm-switch.entry.cjs.js.map +1 -1
  105. package/dist/cjs/bcm-tabs-content.cjs.entry.js +2 -4
  106. package/dist/cjs/bcm-tabs-list.cjs.entry.js +2 -4
  107. package/dist/cjs/bcm-tabs-trigger.cjs.entry.js +2 -4
  108. package/dist/cjs/bcm-tabs.cjs.entry.js +2 -4
  109. package/dist/cjs/bcm-tabs.entry.cjs.js.map +1 -1
  110. package/dist/cjs/bcm-text.cjs.entry.js +3 -5
  111. package/dist/cjs/bcm-text.entry.cjs.js.map +1 -1
  112. package/dist/cjs/bcm-textarea.cjs.entry.js +4 -6
  113. package/dist/cjs/bromcom-ui.cjs.js +3 -5
  114. package/dist/cjs/bromcom-ui.cjs.js.map +1 -1
  115. package/dist/cjs/generate-id-CG_BkTJu.js.map +1 -1
  116. package/dist/cjs/index-Bp6Dd2i1.js.map +1 -1
  117. package/dist/cjs/{index-BtiU-G2W.js → index-CmYzUr-k.js} +61 -372
  118. package/dist/cjs/index-CmYzUr-k.js.map +1 -0
  119. package/dist/cjs/index.cjs.js +0 -2
  120. package/dist/cjs/loader.cjs.js +2 -4
  121. package/dist/cjs/tv-ngpIbGlG.js.map +1 -1
  122. package/dist/collection/collection-manifest.json +5 -5
  123. package/dist/collection/components/accordion/accordion.component.js +8 -8
  124. package/dist/collection/components/accordion/accordion.component.js.map +1 -1
  125. package/dist/collection/components/accordion-group/accordion-group.component.js +3 -3
  126. package/dist/collection/components/accordion-group/types.js.map +1 -1
  127. package/dist/collection/components/alert/alert.component.js +6 -6
  128. package/dist/collection/components/alert/alert.css +1 -1
  129. package/dist/collection/components/avatar/avatar.component.js +14 -14
  130. package/dist/collection/components/badge/badge.component.js +15 -15
  131. package/dist/collection/components/basic-badge/basic-badge.component.js +9 -9
  132. package/dist/collection/components/button/button.component.js +32 -32
  133. package/dist/collection/components/button/button.css +1 -1
  134. package/dist/collection/components/button-group/button-group.component.js +15 -15
  135. package/dist/collection/components/checkbox/checkbox.component.js +13 -13
  136. package/dist/collection/components/chip/chip.component.js +8 -8
  137. package/dist/collection/components/divider/divider.component.js +4 -4
  138. package/dist/collection/components/divider/divider.css +1 -1
  139. package/dist/collection/components/drawer/drawer.component.js +429 -132
  140. package/dist/collection/components/drawer/drawer.component.js.map +1 -1
  141. package/dist/collection/components/drawer/drawer.css +1 -1
  142. package/dist/collection/components/drawer/types.js.map +1 -1
  143. package/dist/collection/components/dropdown/dropdown.component.js +3 -12
  144. package/dist/collection/components/dropdown/dropdown.component.js.map +1 -1
  145. package/dist/collection/components/dropdown/dropdown.css +1 -1
  146. package/dist/collection/components/dropdown-item/dropdown-item.component.js +9 -10
  147. package/dist/collection/components/dropdown-item/dropdown-item.component.js.map +1 -1
  148. package/dist/collection/components/input/input.component.js +44 -45
  149. package/dist/collection/components/input/input.component.js.map +1 -1
  150. package/dist/collection/components/linked/linked.component.js +507 -333
  151. package/dist/collection/components/linked/linked.component.js.map +1 -1
  152. package/dist/collection/components/linked/linked.css +1 -1
  153. package/dist/collection/components/modal/modal.component.js +137 -34
  154. package/dist/collection/components/modal/modal.component.js.map +1 -1
  155. package/dist/collection/components/modal/modal.css +1 -1
  156. package/dist/collection/components/pop-confirm/pop-confirm.component.js +668 -294
  157. package/dist/collection/components/pop-confirm/pop-confirm.component.js.map +1 -1
  158. package/dist/collection/components/pop-confirm/pop-confirm.css +1 -1
  159. package/dist/collection/components/popover/popover.component.js +533 -148
  160. package/dist/collection/components/popover/popover.component.js.map +1 -1
  161. package/dist/collection/components/popover/popover.css +1 -1
  162. package/dist/collection/components/radio/radio.component.js +13 -13
  163. package/dist/collection/components/radio-group/radio-group.component.js +15 -15
  164. package/dist/collection/components/segmented-picker/segmented-picker-option.component.js +10 -10
  165. package/dist/collection/components/segmented-picker/segmented-picker-option.component.js.map +1 -1
  166. package/dist/collection/components/segmented-picker/segmented-picker.component.js +7 -7
  167. package/dist/collection/components/segmented-picker/segmented-picker.component.js.map +1 -1
  168. package/dist/collection/components/shortcut/shortcut.js +4 -4
  169. package/dist/collection/components/switch/switch.component.js +17 -17
  170. package/dist/collection/components/switch/switch.css +1 -1
  171. package/dist/collection/components/tabs/tabs-content.component.js +3 -3
  172. package/dist/collection/components/tabs/tabs-list.component.js +3 -3
  173. package/dist/collection/components/tabs/tabs-trigger.component.js +8 -8
  174. package/dist/collection/components/tabs/tabs.component.js +6 -6
  175. package/dist/collection/components/tabs/tabs.component.js.map +1 -1
  176. package/dist/collection/components/text/text.component.js +6 -6
  177. package/dist/collection/components/text/text.css +1 -1
  178. package/dist/collection/components/textarea/textarea.component.js +39 -40
  179. package/dist/collection/components/textarea/textarea.component.js.map +1 -1
  180. package/dist/collection/components/tooltip/tooltip.component.js +567 -192
  181. package/dist/collection/components/tooltip/tooltip.component.js.map +1 -1
  182. package/dist/collection/components/tooltip/tooltip.css +1 -1
  183. package/dist/components/bcm-accordion-group.js +5 -3
  184. package/dist/components/bcm-accordion-group.js.map +1 -1
  185. package/dist/components/bcm-accordion.js +6 -4
  186. package/dist/components/bcm-accordion.js.map +1 -1
  187. package/dist/components/bcm-alert.js +6 -4
  188. package/dist/components/bcm-alert.js.map +1 -1
  189. package/dist/components/bcm-avatar.js +5 -3
  190. package/dist/components/bcm-avatar.js.map +1 -1
  191. package/dist/components/bcm-badge.js +1 -1
  192. package/dist/components/bcm-basic-badge.js +6 -4
  193. package/dist/components/bcm-basic-badge.js.map +1 -1
  194. package/dist/components/bcm-button-group.js +6 -4
  195. package/dist/components/bcm-button-group.js.map +1 -1
  196. package/dist/components/bcm-button.js +1 -1
  197. package/dist/components/bcm-checkbox.js +5 -3
  198. package/dist/components/bcm-checkbox.js.map +1 -1
  199. package/dist/components/bcm-chip.js +5 -3
  200. package/dist/components/bcm-chip.js.map +1 -1
  201. package/dist/components/bcm-divider.js +6 -4
  202. package/dist/components/bcm-divider.js.map +1 -1
  203. package/dist/components/bcm-drawer.js +228 -115
  204. package/dist/components/bcm-drawer.js.map +1 -1
  205. package/dist/components/bcm-dropdown-item.js +7 -5
  206. package/dist/components/bcm-dropdown-item.js.map +1 -1
  207. package/dist/components/bcm-dropdown.js +8 -15
  208. package/dist/components/bcm-dropdown.js.map +1 -1
  209. package/dist/components/bcm-input.js +6 -4
  210. package/dist/components/bcm-input.js.map +1 -1
  211. package/dist/components/bcm-linked.js +1 -1
  212. package/dist/components/bcm-modal.js +56 -4
  213. package/dist/components/bcm-modal.js.map +1 -1
  214. package/dist/components/bcm-pop-confirm.js +278 -171
  215. package/dist/components/bcm-pop-confirm.js.map +1 -1
  216. package/dist/components/bcm-popover.js +355 -110
  217. package/dist/components/bcm-popover.js.map +1 -1
  218. package/dist/components/bcm-radio-group.js +6 -4
  219. package/dist/components/bcm-radio-group.js.map +1 -1
  220. package/dist/components/bcm-radio.js +5 -3
  221. package/dist/components/bcm-radio.js.map +1 -1
  222. package/dist/components/bcm-segmented-picker-option.js +6 -4
  223. package/dist/components/bcm-segmented-picker-option.js.map +1 -1
  224. package/dist/components/bcm-segmented-picker.js +6 -4
  225. package/dist/components/bcm-segmented-picker.js.map +1 -1
  226. package/dist/components/bcm-shortcut.js +5 -3
  227. package/dist/components/bcm-shortcut.js.map +1 -1
  228. package/dist/components/bcm-switch.js +7 -5
  229. package/dist/components/bcm-switch.js.map +1 -1
  230. package/dist/components/bcm-tabs-content.js +5 -3
  231. package/dist/components/bcm-tabs-content.js.map +1 -1
  232. package/dist/components/bcm-tabs-list.js +5 -3
  233. package/dist/components/bcm-tabs-list.js.map +1 -1
  234. package/dist/components/bcm-tabs-trigger.js +5 -3
  235. package/dist/components/bcm-tabs-trigger.js.map +1 -1
  236. package/dist/components/bcm-tabs.js +5 -3
  237. package/dist/components/bcm-tabs.js.map +1 -1
  238. package/dist/components/bcm-text.js +6 -4
  239. package/dist/components/bcm-text.js.map +1 -1
  240. package/dist/components/bcm-textarea.js +7 -5
  241. package/dist/components/bcm-textarea.js.map +1 -1
  242. package/dist/components/bcm-tooltip.js +364 -127
  243. package/dist/components/bcm-tooltip.js.map +1 -1
  244. package/dist/components/index.js +41 -366
  245. package/dist/components/index.js.map +1 -1
  246. package/dist/components/p-6VLsKZvR.js +469 -0
  247. package/dist/components/p-6VLsKZvR.js.map +1 -0
  248. package/dist/components/p-BfTCfPZ1.js.map +1 -1
  249. package/dist/components/p-CEcVC0yX.js.map +1 -1
  250. package/dist/components/{p-CQF7wlXf.js → p-CaemikSK.js} +8 -6
  251. package/dist/components/p-CaemikSK.js.map +1 -0
  252. package/dist/components/{p-DHONP_n4.js → p-CsIBm0J5.js} +9 -7
  253. package/dist/components/p-CsIBm0J5.js.map +1 -0
  254. package/dist/components/{p-CzcTU1ty.js → p-DBDSgIvP.js} +40 -23
  255. package/dist/components/p-DBDSgIvP.js.map +1 -0
  256. package/dist/components/p-IBjzkjef.js.map +1 -1
  257. package/dist/esm/bcm-accordion-group.entry.js +2 -4
  258. package/dist/esm/bcm-accordion.entry.js +3 -5
  259. package/dist/esm/bcm-accordion.entry.js.map +1 -1
  260. package/dist/esm/bcm-alert.entry.js +3 -5
  261. package/dist/esm/bcm-alert.entry.js.map +1 -1
  262. package/dist/esm/bcm-avatar.entry.js +1 -3
  263. package/dist/esm/bcm-badge.entry.js +3 -5
  264. package/dist/esm/bcm-basic-badge.entry.js +3 -5
  265. package/dist/esm/bcm-button-group.entry.js +3 -5
  266. package/dist/esm/bcm-button.bcm-drawer.bcm-linked.bcm-modal.bcm-pop-confirm.bcm-popover.bcm-tooltip.entry.js.map +1 -0
  267. package/dist/esm/bcm-button_7.entry.js +4123 -0
  268. package/dist/esm/bcm-checkbox.entry.js +2 -4
  269. package/dist/esm/bcm-chip.entry.js +2 -4
  270. package/dist/esm/bcm-divider.entry.js +3 -5
  271. package/dist/esm/bcm-divider.entry.js.map +1 -1
  272. package/dist/esm/bcm-dropdown-item.entry.js +3 -5
  273. package/dist/esm/bcm-dropdown.entry.js +3 -13
  274. package/dist/esm/bcm-dropdown.entry.js.map +1 -1
  275. package/dist/esm/bcm-input.entry.js +3 -5
  276. package/dist/esm/bcm-radio-group.entry.js +3 -5
  277. package/dist/esm/bcm-radio.entry.js +2 -4
  278. package/dist/esm/bcm-segmented-picker-option.entry.js +3 -5
  279. package/dist/esm/bcm-segmented-picker-option.entry.js.map +1 -1
  280. package/dist/esm/bcm-segmented-picker.entry.js +3 -5
  281. package/dist/esm/bcm-segmented-picker.entry.js.map +1 -1
  282. package/dist/esm/bcm-shortcut.entry.js +2 -4
  283. package/dist/esm/bcm-switch.entry.js +4 -6
  284. package/dist/esm/bcm-switch.entry.js.map +1 -1
  285. package/dist/esm/bcm-tabs-content.entry.js +2 -4
  286. package/dist/esm/bcm-tabs-list.entry.js +2 -4
  287. package/dist/esm/bcm-tabs-trigger.entry.js +2 -4
  288. package/dist/esm/bcm-tabs.entry.js +2 -4
  289. package/dist/esm/bcm-tabs.entry.js.map +1 -1
  290. package/dist/esm/bcm-text.entry.js +3 -5
  291. package/dist/esm/bcm-text.entry.js.map +1 -1
  292. package/dist/esm/bcm-textarea.entry.js +4 -6
  293. package/dist/esm/bromcom-ui.js +4 -6
  294. package/dist/esm/bromcom-ui.js.map +1 -1
  295. package/dist/esm/generate-id-IBjzkjef.js.map +1 -1
  296. package/dist/esm/index-BfTCfPZ1.js.map +1 -1
  297. package/dist/esm/{index-BuuGCw0z.js → index-CRwAh9Np.js} +62 -372
  298. package/dist/esm/index-CRwAh9Np.js.map +1 -0
  299. package/dist/esm/index.js +0 -2
  300. package/dist/esm/loader.js +3 -5
  301. package/dist/esm/tv-CEcVC0yX.js.map +1 -1
  302. package/dist/types/components/accordion-group/types.d.ts +2 -2
  303. package/dist/types/components/drawer/drawer.component.d.ts +143 -3
  304. package/dist/types/components/drawer/types.d.ts +1 -1
  305. package/dist/types/components/dropdown/dropdown.component.d.ts +0 -3
  306. package/dist/types/components/linked/linked.component.d.ts +152 -36
  307. package/dist/types/components/modal/modal.component.d.ts +121 -0
  308. package/dist/types/components/pop-confirm/pop-confirm.component.d.ts +263 -143
  309. package/dist/types/components/popover/popover.component.d.ts +94 -39
  310. package/dist/types/components/tooltip/tooltip.component.d.ts +147 -56
  311. package/dist/types/components.d.ts +1569 -359
  312. package/dist/types/stencil-public-runtime.d.ts +50 -3
  313. package/package.json +1 -1
  314. package/dist/bromcom-ui/bcm-button.bcm-drawer.bcm-modal.entry.esm.js.map +0 -1
  315. package/dist/bromcom-ui/bcm-linked.entry.esm.js.map +0 -1
  316. package/dist/bromcom-ui/bcm-pop-confirm.entry.esm.js.map +0 -1
  317. package/dist/bromcom-ui/bcm-popover.entry.esm.js.map +0 -1
  318. package/dist/bromcom-ui/bcm-tooltip.entry.esm.js.map +0 -1
  319. package/dist/bromcom-ui/p-0101b4f2.entry.js.map +0 -1
  320. package/dist/bromcom-ui/p-089edfdc.entry.js.map +0 -1
  321. package/dist/bromcom-ui/p-08bc93c5.entry.js +0 -2
  322. package/dist/bromcom-ui/p-08bc93c5.entry.js.map +0 -1
  323. package/dist/bromcom-ui/p-09be61c3.entry.js +0 -2
  324. package/dist/bromcom-ui/p-09be61c3.entry.js.map +0 -1
  325. package/dist/bromcom-ui/p-11851391.entry.js +0 -2
  326. package/dist/bromcom-ui/p-11851391.entry.js.map +0 -1
  327. package/dist/bromcom-ui/p-11f3e129.entry.js.map +0 -1
  328. package/dist/bromcom-ui/p-211ca6e0.entry.js.map +0 -1
  329. package/dist/bromcom-ui/p-22edf049.entry.js.map +0 -1
  330. package/dist/bromcom-ui/p-2480e468.entry.js.map +0 -1
  331. package/dist/bromcom-ui/p-26d2db9e.entry.js.map +0 -1
  332. package/dist/bromcom-ui/p-2d0a6472.entry.js +0 -2
  333. package/dist/bromcom-ui/p-2d0a6472.entry.js.map +0 -1
  334. package/dist/bromcom-ui/p-360bff8a.entry.js.map +0 -1
  335. package/dist/bromcom-ui/p-488d6ef4.entry.js.map +0 -1
  336. package/dist/bromcom-ui/p-5e0702d1.entry.js.map +0 -1
  337. package/dist/bromcom-ui/p-63228f7e.entry.js +0 -2
  338. package/dist/bromcom-ui/p-63228f7e.entry.js.map +0 -1
  339. package/dist/bromcom-ui/p-6b585adc.entry.js.map +0 -1
  340. package/dist/bromcom-ui/p-6d7d73d5.entry.js +0 -2
  341. package/dist/bromcom-ui/p-6d7d73d5.entry.js.map +0 -1
  342. package/dist/bromcom-ui/p-7234af90.entry.js +0 -2
  343. package/dist/bromcom-ui/p-7234af90.entry.js.map +0 -1
  344. package/dist/bromcom-ui/p-83f64814.entry.js.map +0 -1
  345. package/dist/bromcom-ui/p-8ace5a6a.entry.js.map +0 -1
  346. package/dist/bromcom-ui/p-8d74249a.entry.js +0 -2
  347. package/dist/bromcom-ui/p-8d74249a.entry.js.map +0 -1
  348. package/dist/bromcom-ui/p-BuuGCw0z.js +0 -3
  349. package/dist/bromcom-ui/p-BuuGCw0z.js.map +0 -1
  350. package/dist/bromcom-ui/p-DxMLMJ3r.js +0 -2
  351. package/dist/bromcom-ui/p-DxMLMJ3r.js.map +0 -1
  352. package/dist/bromcom-ui/p-a88f20e0.entry.js.map +0 -1
  353. package/dist/bromcom-ui/p-bad299f2.entry.js +0 -2
  354. package/dist/bromcom-ui/p-bad299f2.entry.js.map +0 -1
  355. package/dist/bromcom-ui/p-bdaf5653.entry.js.map +0 -1
  356. package/dist/bromcom-ui/p-c0e7f9d6.entry.js.map +0 -1
  357. package/dist/bromcom-ui/p-c34f0a66.entry.js.map +0 -1
  358. package/dist/bromcom-ui/p-d7cea19f.entry.js +0 -2
  359. package/dist/bromcom-ui/p-d7cea19f.entry.js.map +0 -1
  360. package/dist/bromcom-ui/p-e5e0ac07.entry.js +0 -2
  361. package/dist/bromcom-ui/p-e5e0ac07.entry.js.map +0 -1
  362. package/dist/bromcom-ui/p-ee5f877f.entry.js.map +0 -1
  363. package/dist/bromcom-ui/p-fbccbffc.entry.js +0 -2
  364. package/dist/bromcom-ui/p-fbccbffc.entry.js.map +0 -1
  365. package/dist/cjs/bcm-accordion-group.cjs.entry.js.map +0 -1
  366. package/dist/cjs/bcm-accordion.cjs.entry.js.map +0 -1
  367. package/dist/cjs/bcm-alert.cjs.entry.js.map +0 -1
  368. package/dist/cjs/bcm-avatar.cjs.entry.js.map +0 -1
  369. package/dist/cjs/bcm-badge.cjs.entry.js.map +0 -1
  370. package/dist/cjs/bcm-basic-badge.cjs.entry.js.map +0 -1
  371. package/dist/cjs/bcm-button-group.cjs.entry.js.map +0 -1
  372. package/dist/cjs/bcm-button.bcm-drawer.bcm-modal.entry.cjs.js.map +0 -1
  373. package/dist/cjs/bcm-button_3.cjs.entry.js +0 -794
  374. package/dist/cjs/bcm-button_3.cjs.entry.js.map +0 -1
  375. package/dist/cjs/bcm-checkbox.cjs.entry.js.map +0 -1
  376. package/dist/cjs/bcm-chip.cjs.entry.js.map +0 -1
  377. package/dist/cjs/bcm-divider.cjs.entry.js.map +0 -1
  378. package/dist/cjs/bcm-dropdown-item.cjs.entry.js.map +0 -1
  379. package/dist/cjs/bcm-dropdown.cjs.entry.js.map +0 -1
  380. package/dist/cjs/bcm-input.cjs.entry.js.map +0 -1
  381. package/dist/cjs/bcm-linked.cjs.entry.js +0 -343
  382. package/dist/cjs/bcm-linked.cjs.entry.js.map +0 -1
  383. package/dist/cjs/bcm-linked.entry.cjs.js.map +0 -1
  384. package/dist/cjs/bcm-pop-confirm.cjs.entry.js +0 -250
  385. package/dist/cjs/bcm-pop-confirm.cjs.entry.js.map +0 -1
  386. package/dist/cjs/bcm-pop-confirm.entry.cjs.js.map +0 -1
  387. package/dist/cjs/bcm-popover.cjs.entry.js +0 -189
  388. package/dist/cjs/bcm-popover.cjs.entry.js.map +0 -1
  389. package/dist/cjs/bcm-popover.entry.cjs.js.map +0 -1
  390. package/dist/cjs/bcm-radio-group.cjs.entry.js.map +0 -1
  391. package/dist/cjs/bcm-radio.cjs.entry.js.map +0 -1
  392. package/dist/cjs/bcm-segmented-picker-option.cjs.entry.js.map +0 -1
  393. package/dist/cjs/bcm-segmented-picker.cjs.entry.js.map +0 -1
  394. package/dist/cjs/bcm-shortcut.cjs.entry.js.map +0 -1
  395. package/dist/cjs/bcm-switch.cjs.entry.js.map +0 -1
  396. package/dist/cjs/bcm-tabs-content.cjs.entry.js.map +0 -1
  397. package/dist/cjs/bcm-tabs-list.cjs.entry.js.map +0 -1
  398. package/dist/cjs/bcm-tabs-trigger.cjs.entry.js.map +0 -1
  399. package/dist/cjs/bcm-tabs.cjs.entry.js.map +0 -1
  400. package/dist/cjs/bcm-text.cjs.entry.js.map +0 -1
  401. package/dist/cjs/bcm-textarea.cjs.entry.js.map +0 -1
  402. package/dist/cjs/bcm-tooltip.cjs.entry.js +0 -180
  403. package/dist/cjs/bcm-tooltip.cjs.entry.js.map +0 -1
  404. package/dist/cjs/bcm-tooltip.entry.cjs.js.map +0 -1
  405. package/dist/cjs/floating-ui.dom-DyKmFgkP.js +0 -1605
  406. package/dist/cjs/floating-ui.dom-DyKmFgkP.js.map +0 -1
  407. package/dist/cjs/index-BtiU-G2W.js.map +0 -1
  408. package/dist/components/p-BHwftRkk.js +0 -379
  409. package/dist/components/p-BHwftRkk.js.map +0 -1
  410. package/dist/components/p-CQF7wlXf.js.map +0 -1
  411. package/dist/components/p-CzcTU1ty.js.map +0 -1
  412. package/dist/components/p-DHONP_n4.js.map +0 -1
  413. package/dist/esm/bcm-button.bcm-drawer.bcm-modal.entry.js.map +0 -1
  414. package/dist/esm/bcm-button_3.entry.js +0 -790
  415. package/dist/esm/bcm-button_3.entry.js.map +0 -1
  416. package/dist/esm/bcm-linked.entry.js +0 -341
  417. package/dist/esm/bcm-linked.entry.js.map +0 -1
  418. package/dist/esm/bcm-pop-confirm.entry.js +0 -248
  419. package/dist/esm/bcm-pop-confirm.entry.js.map +0 -1
  420. package/dist/esm/bcm-popover.entry.js +0 -187
  421. package/dist/esm/bcm-popover.entry.js.map +0 -1
  422. package/dist/esm/bcm-tooltip.entry.js +0 -178
  423. package/dist/esm/bcm-tooltip.entry.js.map +0 -1
  424. package/dist/esm/floating-ui.dom-DxMLMJ3r.js +0 -1598
  425. package/dist/esm/floating-ui.dom-DxMLMJ3r.js.map +0 -1
  426. package/dist/esm/index-BuuGCw0z.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"names":["variantOptions","save","text","status","icon","iconPosition","kind","ok","new","add","create","prev","next","apply","submit","send","delete","cancel","decline","close","archive","remove","edit","export","import","filter","update","reset","download","buttonCss","BcmButton","constructor","hostRef","this","size","iconOnly","fullWidth","type","loading","disabled","active","handleClick","event","bcmClick","emit","handleFocus","bcmFocus","handleBlur","bcmBlur","buttonClass","tv","base","variants","small","medium","large","primary","ghost","outline","true","false","position","first","middle","last","defaultVariants","twMerge","buttonText","variant","buttonIcon","_a","buttonStatus","buttonStyles","kindStyleMap","internalDefaultStyles","finalEffectiveStyles","Object","assign","render","h","Host","key","label","expanded","controls","onClick","onFocus","onBlur","style","class","name","drawerCss","BcmDrawer","open","noHeader","drawerClass","slots","backdrop","wrapper","header","title","closeButton","content","left","right","top","bottom","compoundVariants","handleOpenChange","isOpen","document","body","overflow","bcmOpen","bcmClose","handleKeyDown","hide","show","bcmBeforeOpen","defaultPrevented","bcmBeforeClose","disconnectedCallback","getWrapperStyle","width","height","part","role","headerText","modalCss","BcmModal","placement","fullScreen","noFooter","closeOnBackdrop","closeOnEscape","isAnimating","shake","modalClass","dialog","container","modal","headerContent","helperText","footer","center","xlarge","xxlarge","full","handleBackdropClick","target","getAttribute","shakeModal","handleDialogCancel","preventDefault","dialogRef","showModal","Promise","resolve","setTimeout","path","composedPath","dismissElement","find","el","hasAttribute","call","closeModalElement","stopPropagation","modalId","host","id","openModals","Array","from","querySelectorAll","topModal","length","toggle","getModalStyle","maxWidth","maxHeight","widths","componentDidLoad","ref","onCancel","undefined","e"],"sources":["src/components/button/types.ts","src/components/button/button.css?tag=bcm-button&encapsulation=shadow","src/components/button/button.component.tsx","src/components/drawer/drawer.css?tag=bcm-drawer&encapsulation=shadow","src/components/drawer/drawer.component.tsx","src/components/modal/modal.css?tag=bcm-modal&encapsulation=shadow","src/components/modal/modal.component.tsx"],"sourcesContent":["export type ButtonKind = 'primary' | 'ghost' | 'text' | 'outline';\nexport type ButtonSize = 'small' | 'medium' | 'large';\nexport type ButtonType = 'button' | 'reset' | 'submit';\nexport type ButtonStatus = 'default' | 'success' | 'error' | 'warning' | 'info';\nexport type IconPosition = 'prefix' | 'suffix';\n\n// Button group position\nexport type ButtonPosition = 'first' | 'middle' | 'last' | null;\n\nexport interface VariantOption {\n text: string;\n icon?: string;\n iconPosition?: IconPosition;\n status?: ButtonStatus;\n kind?: ButtonKind;\n}\n\nexport const variantOptions: Record<string, VariantOption> = {\n save: {\n text: 'Save',\n status: 'success',\n icon: 'far fa-save',\n iconPosition: 'prefix',\n kind: 'primary',\n },\n ok: {\n text: 'Ok',\n status: 'success',\n icon: 'far fa-check',\n iconPosition: 'prefix',\n },\n new: {\n text: 'New',\n status: 'success',\n icon: 'far fa-plus',\n iconPosition: 'prefix',\n },\n add: {\n text: 'Add',\n status: 'success',\n icon: 'far fa-plus',\n iconPosition: 'prefix',\n },\n create: {\n text: 'Create',\n status: 'success',\n icon: 'far fa-plus',\n iconPosition: 'prefix',\n },\n prev: {\n text: 'Prev',\n status: 'default',\n icon: 'far fa-arrow-left',\n iconPosition: 'prefix',\n },\n next: {\n text: 'Next',\n status: 'default',\n icon: 'far fa-arrow-right',\n iconPosition: 'suffix',\n },\n apply: {\n text: 'Apply',\n status: 'default',\n icon: 'far fa-check-circle',\n iconPosition: 'prefix',\n },\n submit: {\n text: 'Submit',\n status: 'default',\n icon: 'far fa-save',\n iconPosition: 'prefix',\n },\n send: {\n text: 'Send',\n status: 'success',\n icon: 'far fa-paper-plane',\n iconPosition: 'prefix',\n },\n delete: {\n text: 'Delete',\n status: 'error',\n icon: 'far fa-trash',\n iconPosition: 'prefix',\n },\n cancel: {\n text: 'Cancel',\n status: 'error',\n icon: 'far fa-times',\n iconPosition: 'prefix',\n },\n decline: {\n text: 'Decline',\n status: 'error',\n icon: 'far fa-ban',\n iconPosition: 'prefix',\n },\n close: {\n text: 'Close',\n status: 'error',\n icon: 'far fa-times-circle',\n iconPosition: 'prefix',\n },\n archive: {\n text: 'Archive',\n status: 'error',\n icon: 'far fa-folder-open',\n iconPosition: 'prefix',\n },\n remove: {\n text: 'Remove',\n status: 'error',\n icon: 'far fa-minus-circle',\n iconPosition: 'prefix',\n },\n edit: {\n text: 'Edit',\n status: 'default',\n icon: 'far fa-edit',\n iconPosition: 'prefix',\n },\n export: {\n text: 'Export',\n status: 'default',\n icon: 'far fa-sign-out',\n iconPosition: 'prefix',\n },\n import: {\n text: 'Import',\n status: 'default',\n icon: 'far fa-sign-in',\n iconPosition: 'prefix',\n },\n filter: {\n text: 'Filter',\n status: 'default',\n icon: 'far fa-filter',\n iconPosition: 'prefix',\n },\n update: {\n text: 'Update',\n status: 'default',\n icon: 'far fa-sync',\n iconPosition: 'prefix',\n },\n reset: {\n text: 'Reset',\n status: 'default',\n icon: 'far fa-sync',\n iconPosition: 'prefix',\n },\n download: {\n text: 'Download',\n status: 'default',\n icon: 'far fa-download',\n iconPosition: 'prefix',\n },\n};\n\nexport type ButtonVariant = keyof typeof variantOptions;\n",":host {\n display: inline-flex;\n position: relative;\n height: fit-content;\n width: fit-content;\n}\n\n:host([full-width]) {\n width: 100%;\n}\n\n:host([position='first']) .bcm-button {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n:host([position='middle']) .bcm-button {\n border-radius: 0;\n}\n\n:host([position='last']) .bcm-button {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n:host([position='first'].orientation-vertical) .bcm-button {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-right-radius: var(--bcm-ui-border-radius, 4px);\n border-top-left-radius: var(--bcm-ui-border-radius, 4px);\n}\n\n:host([position='middle'].orientation-vertical) .bcm-button {\n border-radius: 0;\n}\n\n:host([position='last'].orientation-vertical) .bcm-button {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: var(--bcm-ui-border-radius, 4px);\n border-bottom-left-radius: var(--bcm-ui-border-radius, 4px);\n}\n","import { Component, Prop, h, Event, EventEmitter, Host } from '@stencil/core';\nimport { ButtonKind, ButtonSize, ButtonType, ButtonStatus, ButtonVariant, IconPosition, ButtonPosition, variantOptions } from './types';\nimport { tv } from '@utils/tv';\n\n@Component({\n tag: 'bcm-button',\n styleUrl: 'button.css',\n shadow: true,\n})\nexport class BcmButton {\n /** Defines the main visual style of the button */\n @Prop()\n kind: ButtonKind = 'primary';\n\n /** Controls the button size */\n @Prop()\n size: ButtonSize = 'medium';\n\n /** Defines the button's status/state color */\n @Prop()\n status: ButtonStatus = 'default';\n\n /** Predefined button variants */\n @Prop()\n variant?: ButtonVariant;\n\n /** Button position in button group (first, middle, last) */\n @Prop({ reflect: true })\n position?: ButtonPosition;\n\n /** Icon class name */\n @Prop()\n icon?: string;\n\n /** Icon placement (prefix/suffix) */\n @Prop()\n iconPosition: IconPosition = 'prefix';\n\n /** Icon-only button mode */\n @Prop()\n iconOnly = false;\n\n /** Full width button */\n @Prop({ attribute: 'full-width', reflect: true })\n fullWidth = false;\n\n /** HTML button type */\n @Prop()\n type: ButtonType = 'button';\n\n /** Loading state */\n @Prop()\n loading = false;\n\n /** Disabled state */\n @Prop()\n disabled = false;\n\n /** Button text content */\n @Prop()\n text?: string;\n\n /** Active state */\n @Prop()\n active = false;\n\n /** Form association */\n @Prop()\n form: string;\n\n @Prop()\n value: string;\n\n @Prop()\n name: string;\n\n /** Screen reader label */\n @Prop()\n label: string;\n\n /** Expanded state for expandable content */\n @Prop()\n expanded?: string;\n\n /** ID of controlled element */\n @Prop()\n controls: string;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n })\n bcmClick: EventEmitter<MouseEvent>;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n })\n bcmFocus: EventEmitter<FocusEvent>;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n })\n bcmBlur: EventEmitter<FocusEvent>;\n\n private handleClick = (event: MouseEvent) => {\n if (!this.disabled && !this.loading) {\n this.bcmClick.emit(event);\n }\n };\n\n private handleFocus = (event: FocusEvent) => {\n this.bcmFocus.emit(event);\n };\n\n private handleBlur = (event: FocusEvent) => {\n this.bcmBlur.emit(event);\n };\n\n private get buttonText(): string {\n return this.text || (this.variant && variantOptions[this.variant] ? variantOptions[this.variant].text : '');\n }\n\n private get buttonIcon(): { icon?: string; position: IconPosition } {\n if (this.variant && variantOptions[this.variant]?.icon) {\n return {\n icon: variantOptions[this.variant].icon,\n position: variantOptions[this.variant].iconPosition || 'prefix',\n };\n }\n\n return {\n icon: this.icon,\n position: this.iconPosition,\n };\n }\n\n private get buttonStatus(): ButtonStatus {\n return this.variant && variantOptions[this.variant] ? variantOptions[this.variant].status : this.status;\n }\n\n private get buttonStyles() {\n const status = this.buttonStatus === 'default' ? 'primary' : this.buttonStatus;\n\n // These are the internal default styles based on component props (kind, status)\n const kindStyleMap = {\n primary: {\n '--bcm-button-bg': `var(--bcm-ui-color-background-${status}-default)`,\n '--bcm-button-bg-hover': `var(--bcm-ui-color-background-${status}-hover)`,\n '--bcm-button-bg-active': `var(--bcm-ui-color-background-${status}-active)`,\n '--bcm-button-border': 'transparent',\n '--bcm-button-text': 'var(--bcm-ui-color-text-base)',\n },\n outline: {\n '--bcm-button-bg': 'var(--bcm-ui-color-background-default-default)',\n '--bcm-button-bg-hover': 'var(--bcm-ui-color-background-default-hover)',\n '--bcm-button-bg-active': 'var(--bcm-ui-color-background-default-active)',\n '--bcm-button-border': `var(--bcm-ui-color-border-${this.buttonStatus})`,\n '--bcm-button-text': `var(--bcm-ui-color-text-${this.buttonStatus})`,\n },\n ghost: {\n '--bcm-button-bg': 'transparent',\n '--bcm-button-bg-hover': 'var(--bcm-ui-color-background-default-hover)',\n '--bcm-button-bg-active': 'var(--bcm-ui-color-background-default-active)',\n '--bcm-button-border': 'transparent',\n '--bcm-button-text': `var(--bcm-ui-color-text-${this.buttonStatus})`,\n },\n text: {\n '--bcm-button-bg': 'transparent',\n '--bcm-button-bg-hover': 'var(--bcm-ui-color-background-default-hover)',\n '--bcm-button-bg-active': 'var(--bcm-ui-color-background-default-active)',\n '--bcm-button-border': 'transparent',\n '--bcm-button-text': `var(--bcm-ui-color-text-${status})`,\n },\n };\n const internalDefaultStyles = kindStyleMap[this.kind];\n\n // These are the \"final\" CSS custom properties used by the component's styling.\n // They use the \"--bcm-button-custom-...\" token if provided by the user,\n // otherwise, they fall back to the internal \"--bcm-button-...\" style defined above.\n const finalEffectiveStyles = {\n '--bcm-final-text-color': `var(--bcm-button-custom-text-color, ${internalDefaultStyles['--bcm-button-text']})`,\n '--bcm-final-border-color': `var(--bcm-button-custom-border-color, ${internalDefaultStyles['--bcm-button-border']})`,\n '--bcm-final-bg-color': `var(--bcm-button-custom-bg-color, ${internalDefaultStyles['--bcm-button-bg']})`,\n '--bcm-final-hover-bg-color': `var(--bcm-button-custom-hover-bg-color, ${internalDefaultStyles['--bcm-button-bg-hover']})`,\n '--bcm-final-active-bg-color': `var(--bcm-button-custom-active-bg-color, ${internalDefaultStyles['--bcm-button-bg-active']})`,\n };\n\n // return kindStyleMap[this.kind];\n\n return {\n ...internalDefaultStyles, // Provides the fallback values like --bcm-button-text\n ...finalEffectiveStyles, // Defines the --bcm-final-xxx tokens that handle the override logic\n };\n }\n\n private buttonClass = tv(\n {\n base: 'bcm-button appearance-none inline-flex items-center justify-center border border-solid rounded outline-0',\n variants: {\n size: {\n small: 'text-size-4 py-px px-2 min-h-6',\n medium: 'text-size-5 py-0.5 px-3 min-h-8',\n large: 'text-size-6 py-1 px-3 min-h-10',\n },\n kind: {\n primary: 'kind-primary',\n ghost: 'kind-ghost',\n text: 'kind-text',\n outline: 'kind-outline',\n },\n fullWidth: {\n true: 'full-width w-full',\n },\n disabled: {\n true: 'disabled cursor-not-allowed bg-[--bcm-ui-color-background-disabled-default] text-color-disabled border-color-disabled',\n false: [\n 'cursor-pointer',\n 'bg-[--bcm-final-bg-color] text-[--bcm-final-text-color] border-[--bcm-final-border-color]',\n 'hover:bg-[--bcm-final-hover-bg-color]',\n 'active:bg-[--bcm-final-active-bg-color]',\n 'focus-visible:ring',\n ],\n },\n loading: {\n true: '',\n },\n position: {\n first: 'position-first',\n middle: 'position-middle',\n last: 'position-last',\n },\n },\n defaultVariants: {\n size: 'medium',\n kind: 'primary',\n fullWidth: false,\n disabled: false,\n loading: false,\n },\n },\n {\n twMerge: false,\n },\n );\n\n render() {\n const { icon, position } = this.buttonIcon;\n\n return (\n <Host>\n <button\n type={this.type}\n disabled={this.disabled || this.loading}\n aria-label={this.label}\n aria-expanded={this.expanded}\n aria-controls={this.controls}\n aria-disabled={this.disabled}\n onClick={this.handleClick}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n style={this.buttonStyles}\n class={this.buttonClass({\n size: this.size,\n kind: this.kind,\n fullWidth: this.fullWidth,\n disabled: this.disabled,\n loading: this.loading,\n position: this.position,\n })}\n >\n {this.loading && <slot name=\"loading\"></slot>}\n <span>\n <slot name=\"prefix\">{position === 'prefix' && icon && <i class={' leading-none ' + icon}></i>}</slot>\n </span>\n <slot>{this.buttonText}</slot>\n <span>\n <slot name=\"suffix\">{position === 'suffix' && icon && <i class={' leading-none ' + icon}></i>}</slot>\n </span>\n </button>\n </Host>\n );\n }\n}\n",":host {\n display: contents;\n}\n","import { Component, Prop, h, Element, Event, EventEmitter, Method, Watch, Listen } from '@stencil/core';\nimport { tv } from '@utils/tv';\nimport { DrawerPosition, DrawerSize } from './types';\n\n@Component({\n tag: 'bcm-drawer',\n styleUrl: 'drawer.css',\n shadow: true,\n})\nexport class BcmDrawer {\n @Element() host: HTMLElement;\n\n @Prop({ mutable: true, reflect: true }) open: boolean = false;\n @Prop() size: DrawerSize = 'medium';\n @Prop() position: DrawerPosition = 'right';\n @Prop({ attribute: 'full-width' }) fullWidth: boolean = false;\n @Prop() headerText?: string;\n @Prop({ attribute: 'no-header' }) noHeader: boolean = false;\n\n @Event() bcmOpen: EventEmitter<void>;\n @Event() bcmClose: EventEmitter<void>;\n @Event({ cancelable: true }) bcmBeforeOpen: EventEmitter<void>;\n @Event({ cancelable: true }) bcmBeforeClose: EventEmitter<void>;\n\n private drawerClass = tv({\n slots: {\n backdrop: 'fixed inset-0 bg-color-transparent z-40 transition-opacity duration-300',\n wrapper: 'bcm-ui-element fixed bg-color-base text-color-default z-50 transform transition-transform duration-300 ease-in-out flex flex-col',\n header: 'flex justify-between items-center bg-color-default text-color-default',\n title: 'font-semibold m-0 text-size-6',\n closeButton: 'text-size-5 font-medium text-color-default bg-transparent border-none p-0 h-6 w-6 hover:bg-color-default-hover cursor-pointer active:bg-color-default-active',\n content: 'overflow-y-auto flex-grow',\n },\n variants: {\n open: {\n true: {\n backdrop: 'opacity-100 visible',\n },\n false: {\n backdrop: 'opacity-0 invisible',\n },\n },\n position: {\n left: {\n wrapper: 'top-0 left-0 bottom-0',\n },\n right: {\n wrapper: 'top-0 right-0 bottom-0',\n },\n top: {\n wrapper: 'top-0 left-0 right-0',\n },\n bottom: {\n wrapper: 'bottom-0 left-0 right-0',\n },\n },\n size: {\n small: {\n header: 'py-3 px-4',\n content: 'p-4',\n },\n medium: {\n header: 'py-3 px-4',\n content: 'p-4',\n },\n large: {\n header: 'py-3 px-4',\n content: 'p-4',\n },\n },\n noHeader: {\n true: {\n header: 'hidden',\n },\n },\n },\n compoundVariants: [\n {\n open: true,\n position: ['left', 'right'],\n class: {\n wrapper: 'translate-x-0',\n },\n },\n {\n open: true,\n position: ['top', 'bottom'],\n class: {\n wrapper: 'translate-y-0',\n },\n },\n {\n open: false,\n position: 'left',\n class: {\n wrapper: '-translate-x-full',\n },\n },\n {\n open: false,\n position: 'right',\n class: {\n wrapper: 'translate-x-full',\n },\n },\n {\n open: false,\n position: 'top',\n class: {\n wrapper: '-translate-y-full',\n },\n },\n {\n open: false,\n position: 'bottom',\n class: {\n wrapper: 'translate-y-full',\n },\n },\n ],\n });\n\n @Watch('open')\n handleOpenChange(isOpen: boolean) {\n if (isOpen) {\n document.body.style.overflow = 'hidden';\n this.bcmOpen.emit();\n } else {\n document.body.style.overflow = '';\n this.bcmClose.emit();\n }\n }\n\n @Listen('keydown', { target: 'window' })\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.open) {\n this.hide();\n }\n }\n\n @Method()\n async show(): Promise<void> {\n const event = this.bcmBeforeOpen.emit();\n if (!event.defaultPrevented) {\n this.open = true;\n }\n }\n\n @Method()\n async hide(): Promise<void> {\n const event = this.bcmBeforeClose.emit();\n if (!event.defaultPrevented) {\n this.open = false;\n }\n }\n\n disconnectedCallback() {\n document.body.style.overflow = '';\n }\n\n private getWrapperStyle() {\n const style: { [key: string]: string } = {};\n\n if (this.fullWidth) {\n if (this.position === 'left' || this.position === 'right') {\n style.width = '100vw';\n } else {\n style.height = '100vh';\n }\n return style;\n }\n\n if (this.position === 'left' || this.position === 'right') {\n switch (this.size) {\n case 'small':\n style.width = '320px';\n break;\n case 'medium':\n style.width = '480px';\n break;\n case 'large':\n style.width = '1064px';\n break;\n }\n } else {\n switch (this.size) {\n case 'small':\n style.height = '40vh';\n break;\n case 'medium':\n style.height = '60vh';\n break;\n case 'large':\n style.height = '90vh';\n break;\n }\n }\n\n return style;\n }\n\n render() {\n const { backdrop, wrapper, header, title, closeButton, content } = this.drawerClass({\n open: this.open,\n position: this.position,\n size: this.size,\n noHeader: this.noHeader,\n });\n\n return (\n <div part=\"base\">\n <div part=\"backdrop\" class={backdrop()} onClick={() => this.hide()} />\n <div\n part=\"wrapper\"\n class={wrapper()}\n style={this.getWrapperStyle()}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-hidden={!this.open ? 'true' : 'false'}\n aria-label={this.headerText}\n >\n <div part=\"header\" class={header()}>\n <h2 part=\"title\" class={title()}>\n <slot name=\"header\">{this.headerText}</slot>\n </h2>\n <button part=\"close-button\" class={closeButton()} onClick={() => this.hide()} aria-label=\"Close\">\n <bcm-icon name=\"fa-solid fa-xmark\"></bcm-icon>\n </button>\n </div>\n <div part=\"content\" class={content()}>\n <slot />\n </div>\n <div part=\"footer\">\n <slot name=\"footer\" />\n </div>\n </div>\n </div>\n );\n }\n}\n",":host {\n display: contents;\n}\n","import { Component, Prop, h, Element, Event, EventEmitter, Method, Watch, Listen, State } from '@stencil/core';\nimport { tv } from '@utils/tv';\n\nexport type ModalSize = 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge' | 'full';\nexport type ModalPlacement = 'center' | 'top';\n\n@Component({\n tag: 'bcm-modal',\n styleUrl: 'modal.css',\n shadow: true,\n})\nexport class BcmModal {\n @Element() host: HTMLBcmModalElement;\n\n private dialogRef?: HTMLDialogElement;\n\n @Prop({ mutable: true, reflect: true }) open: boolean = false;\n @Prop() size: ModalSize = 'medium';\n @Prop() placement: ModalPlacement = 'center';\n @Prop() backdrop: boolean | 'static' = true;\n @Prop({ attribute: 'full-width' }) fullWidth: boolean = false;\n @Prop({ attribute: 'full-screen' }) fullScreen: boolean = false;\n @Prop({ attribute: 'header-text' }) headerText?: string;\n @Prop({ attribute: 'helper-text' }) helperText?: string;\n @Prop({ attribute: 'no-header' }) noHeader: boolean = false;\n @Prop({ attribute: 'no-footer' }) noFooter: boolean = false;\n @Prop({ attribute: 'close-on-backdrop' }) closeOnBackdrop: boolean = true;\n @Prop({ attribute: 'close-on-escape' }) closeOnEscape: boolean = true;\n\n @State() isAnimating: boolean = false;\n @State() shake: boolean = false;\n\n @Event() bcmOpen: EventEmitter<void>;\n @Event() bcmClose: EventEmitter<void>;\n @Event({ cancelable: true }) bcmBeforeOpen: EventEmitter<void>;\n @Event({ cancelable: true }) bcmBeforeClose: EventEmitter<void>;\n\n private modalClass = tv({\n slots: {\n dialog:\n 'bcm-ui-element fixed inset-0 m-0 p-0 w-full max-w-full h-full max-h-full border-none bg-transparent backdrop:bg-color-default-dark backdrop:opacity-50 backdrop:transition-opacity backdrop:duration-300',\n container: 'fixed inset-0 flex items-start justify-center p-4 overflow-y-auto overscroll-contain',\n modal: 'relative bg-color-basic-base text-color-default rounded-lg shadow-2xl transform transition-all duration-300 ease-in-out flex flex-col',\n header: 'flex justify-between items-start bg-color-base text-color-default border-color-default border-solid border-0 border-b rounded-t-lg',\n headerContent: 'flex-1 min-w-0 flex items-center gap-2',\n title: 'font-semibold m-0 text-size-6 text-color-header',\n helperText: 'text-size-5 text-color-placeholder m-0',\n closeButton:\n 'text-size-5 font-medium text-color-default bg-transparent border-none p-0 h-6 w-6 rounded hover:bg-color-default-hover cursor-pointer active:bg-color-active transition-colors flex-shrink-0 outline-none focus-visible:ring ',\n content: 'flex-grow overflow-y-auto',\n footer: 'flex items-center justify-end gap-2',\n },\n variants: {\n open: {\n true: {\n modal: 'opacity-100 translate-y-0 scale-100',\n },\n false: {\n modal: 'opacity-0 -translate-y-4 scale-95',\n },\n },\n placement: {\n center: {\n container: 'items-center',\n },\n top: {\n container: 'items-start pt-20',\n },\n },\n size: {\n small: {\n header: 'py-3 px-4',\n content: 'p-4',\n footer: 'py-3 px-4',\n },\n medium: {\n header: 'py-4 px-5',\n content: 'p-5',\n footer: 'py-4 px-5',\n },\n large: {\n header: 'py-4 px-6',\n content: 'p-6',\n footer: 'py-4 px-6',\n },\n xlarge: {\n header: 'py-5 px-6',\n content: 'p-6',\n footer: 'py-5 px-6',\n },\n xxlarge: {\n header: 'py-5 px-8',\n content: 'p-8',\n footer: 'py-5 px-8',\n },\n full: {\n header: 'py-5 px-8',\n content: 'p-8',\n footer: 'py-5 px-8',\n },\n },\n fullScreen: {\n true: {\n modal: 'rounded-none w-screen h-screen max-w-none max-h-none',\n container: 'p-0',\n },\n },\n shake: {\n true: {\n modal: 'animate-shake',\n },\n },\n noHeader: {\n true: {\n header: 'hidden',\n },\n },\n noFooter: {\n true: {\n footer: 'hidden',\n },\n },\n },\n });\n\n @Watch('open')\n async handleOpenChange(isOpen: boolean) {\n if (isOpen) {\n this.isAnimating = true;\n const event = this.bcmBeforeOpen.emit();\n if (event.defaultPrevented) {\n this.open = false;\n return;\n }\n\n // Use native dialog API with top-layer\n if (this.dialogRef) {\n this.dialogRef.showModal();\n // Small delay for animation\n await new Promise(resolve => setTimeout(resolve, 50));\n this.isAnimating = false;\n this.bcmOpen.emit();\n }\n } else {\n this.isAnimating = true;\n const event = this.bcmBeforeClose.emit();\n if (event.defaultPrevented) {\n this.open = true;\n return;\n }\n\n // Wait for animation before closing\n await new Promise(resolve => setTimeout(resolve, 300));\n if (this.dialogRef) {\n this.dialogRef.close();\n }\n this.isAnimating = false;\n this.bcmClose.emit();\n }\n }\n\n @Listen('click', { capture: true })\n handleClick(event: MouseEvent) {\n // Use composedPath to work with shadow DOM and slots\n const path = event.composedPath() as HTMLElement[];\n const dismissElement = path.find(el => el.hasAttribute?.('data-dismiss'));\n const closeModalElement = path.find(el => el.hasAttribute?.('data-close-modal'));\n\n if (dismissElement) {\n this.hide();\n event.preventDefault();\n event.stopPropagation();\n } else if (closeModalElement) {\n const modalId = closeModalElement.getAttribute('data-close-modal');\n // If modalId matches this modal's id, close it\n if (!modalId || modalId === this.host.id) {\n this.hide();\n event.preventDefault();\n event.stopPropagation();\n }\n }\n }\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.open) {\n // Only handle ESC if this is the topmost modal\n const openModals = Array.from(document.querySelectorAll('bcm-modal[open]'));\n const topModal = openModals[openModals.length - 1];\n\n if (topModal !== this.host) {\n return;\n }\n\n event.preventDefault();\n if (this.closeOnEscape) {\n if (this.backdrop === 'static') {\n this.shakeModal();\n } else {\n this.hide();\n }\n } else if (this.backdrop === 'static') {\n this.shakeModal();\n }\n }\n }\n\n @Method()\n async show(): Promise<void> {\n this.open = true;\n }\n\n @Method()\n async hide(): Promise<void> {\n this.open = false;\n }\n\n @Method()\n async toggle(): Promise<void> {\n this.open = !this.open;\n }\n\n private shakeModal() {\n this.shake = true;\n setTimeout(() => {\n this.shake = false;\n }, 300);\n }\n\n private handleBackdropClick = (event: MouseEvent) => {\n const target = event.target as HTMLElement;\n // Check if click is on the container (backdrop area), not on modal content\n if (target.getAttribute('part') === 'container') {\n if (this.backdrop === 'static') {\n this.shakeModal();\n } else if (this.closeOnBackdrop) {\n this.hide();\n }\n }\n };\n\n private handleDialogCancel = (event: Event) => {\n event.preventDefault();\n if (this.closeOnEscape) {\n if (this.backdrop === 'static') {\n this.shakeModal();\n } else {\n this.hide();\n }\n }\n };\n\n private getModalStyle() {\n if (this.fullScreen) {\n return {\n width: '100vw',\n height: '100vh',\n maxWidth: 'none',\n maxHeight: 'none',\n };\n }\n\n if (this.fullWidth) {\n return {\n width: '100%',\n maxWidth: '100%',\n };\n }\n\n const widths = {\n small: '400px',\n medium: '600px',\n large: '800px',\n xlarge: '1024px',\n xxlarge: '1200px',\n full: '100%',\n };\n\n return {\n width: widths[this.size],\n maxWidth: this.fullScreen ? 'none' : '90vw',\n maxHeight: this.fullScreen ? 'none' : '90vh',\n };\n }\n\n componentDidLoad() {\n if (this.open && this.dialogRef) {\n this.dialogRef.showModal();\n }\n }\n\n disconnectedCallback() {\n if (this.dialogRef && this.open) {\n this.dialogRef.close();\n }\n }\n\n render() {\n const { dialog, container, modal, header, headerContent, title, helperText, closeButton, content, footer } = this.modalClass({\n open: this.open,\n placement: this.placement,\n size: this.size,\n fullScreen: this.fullScreen,\n shake: this.shake,\n noHeader: this.noHeader,\n noFooter: this.noFooter,\n });\n\n return (\n <dialog\n ref={el => (this.dialogRef = el)}\n part=\"dialog\"\n class={dialog()}\n onClick={this.handleBackdropClick}\n onCancel={this.handleDialogCancel}\n aria-labelledby=\"modal-title\"\n aria-describedby={this.helperText ? 'modal-helper' : undefined}\n aria-modal=\"true\"\n >\n <div part=\"container\" class={container()}>\n <div part=\"modal\" class={modal()} style={this.getModalStyle()} role=\"document\" onClick={e => e.stopPropagation()}>\n {!this.noHeader && (\n <div part=\"header\" class={header()}>\n <div part=\"header-content\" class={headerContent()}>\n <h2 id=\"modal-title\" part=\"title\" class={title()}>\n <slot name=\"header\">{this.headerText}</slot>\n </h2>\n {this.helperText && (\n <p id=\"modal-helper\" part=\"helper-text\" class={helperText()}>\n <slot name=\"helper\">{this.helperText}</slot>\n </p>\n )}\n </div>\n <button part=\"close-button\" class={closeButton()} onClick={() => this.hide()} aria-label=\"Close modal\" type=\"button\">\n <bcm-icon name=\"fa-solid fa-xmark\"></bcm-icon>\n </button>\n </div>\n )}\n\n <div part=\"content\" class={content()}>\n <slot />\n </div>\n\n {!this.noFooter && (\n <div part=\"footer\" class={footer()}>\n <slot name=\"footer\" />\n </div>\n )}\n </div>\n </div>\n </dialog>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["radioCss","BcmRadio","constructor","hostRef","this","checked","size","disabled","readonly","labelPosition","error","getRadioClass","tv","slots","container","dot","dotContainer","labelClass","variants","small","medium","large","true","false","left","right","twMerge","handleClick","bcmRadioChange","emit","getRadioStyle","defaultStyle","errorStyle","disabledStyle","readonlyStyle","Object","assign","render","h","key","class","style","label","role","toString","type","name","value","readOnly","onClick","onFocus","e","bcmFocus","onBlur","bcmBlur"],"sources":["src/components/radio/radio.css?tag=bcm-radio&encapsulation=shadow","src/components/radio/radio.component.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","/**\n * @component BcmRadio\n * @description A customizable radio button component for forms, supporting various sizes, states, and label positioning.\n * It can be used to select a single option from a group of choices, with support for error, disabled, and readonly states.\n *\n * @example\n * <bcm-radio label=\"Option 1\" name=\"group1\" value=\"1\" size=\"medium\" label-position=\"right\">\n * Option 1\n * </bcm-radio>\n *\n * @example Radio with error state\n * <bcm-radio label=\"Error Option\" name=\"group1\" value=\"2\" error={true}>\n * Error Option\n * </bcm-radio>\n *\n * @prop {string} label - The text label to display next to the radio button.\n * @prop {string} name - The name attribute for the radio input, used to group radio buttons.\n * @prop {string} value - The value of the radio button, submitted with the form.\n * @prop {boolean} checked - Whether the radio button is selected.\n * @defaultValue false\n * @prop {RadioSize} size - Defines the size of the radio button: 'small' | 'medium' | 'large'.\n * @defaultValue 'medium'\n * @prop {boolean} disabled - Whether the radio button is disabled.\n * @defaultValue false\n * @prop {boolean} readonly - Whether the radio button is readonly.\n * @defaultValue false\n * @prop {LabelPosition} labelPosition - Position of the label relative to the radio button: 'right' | 'left'.\n * @defaultValue 'right'\n * @prop {boolean} error - Whether the radio button is in an error state.\n * @defaultValue false\n *\n * @event {EventEmitter<void>} bcmRadioChange - Emitted when the radio button's checked state changes.\n * @event {EventEmitter<FocusEvent>} bcmFocus - Emitted when the radio button gains focus.\n * @event {EventEmitter<FocusEvent>} bcmBlur - Emitted when the radio button loses focus.\n *\n * @csspart container - The root label element wrapping the radio button and label.\n * @csspart dotContainer - The container for the radio button dot.\n * @csspart dot - The inner dot of the radio button.\n * @csspart label - The label text element.\n */\n\nimport { Component, ComponentInterface, Prop, h, Element, Event, EventEmitter } from '@stencil/core';\nimport { tv } from '@utils/tv';\n\n@Component({\n tag: 'bcm-radio',\n styleUrl: 'radio.css',\n shadow: true,\n})\nexport class BcmRadio implements ComponentInterface {\n @Element() host: HTMLBcmRadioElement;\n\n /**\n * The text label to display next to the radio button.\n * @prop\n * @defaultValue undefined\n */\n @Prop()\n label: string;\n\n /**\n * The name attribute for the radio input, used to group radio buttons.\n * @prop\n * @defaultValue undefined\n */\n @Prop()\n name: string;\n\n /**\n * The value of the radio button, submitted with the form.\n * @prop\n * @defaultValue undefined\n */\n @Prop()\n value: string;\n\n /**\n * Whether the radio button is selected.\n * @prop\n * @defaultValue false\n */\n @Prop({ reflect: true })\n checked: boolean = false;\n\n /**\n * Defines the size of the radio button: 'small' | 'medium' | 'large'.\n * @prop\n * @defaultValue 'medium'\n */\n @Prop()\n size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * Whether the radio button is disabled.\n * @prop\n * @defaultValue false\n */\n @Prop()\n disabled = false;\n\n /**\n * Whether the radio button is readonly.\n * @prop\n * @defaultValue false\n */\n @Prop()\n readonly = false;\n\n /**\n * Position of the label relative to the radio button: 'right' | 'left'.\n * @prop\n * @defaultValue 'right'\n */\n @Prop()\n labelPosition: 'right' | 'left' = 'right';\n\n /**\n * Whether the radio button is in an error state.\n * @prop\n * @defaultValue false\n */\n @Prop()\n error: boolean = false;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n eventName: 'bcmRadioChange',\n })\n bcmRadioChange: EventEmitter<void>;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n })\n bcmBlur: EventEmitter<FocusEvent>;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n })\n bcmFocus: EventEmitter<FocusEvent>;\n\n private handleClick(): void {\n if (this.readonly || this.disabled) return;\n if (!this.checked) {\n this.checked = true;\n this.bcmRadioChange.emit();\n }\n }\n\n private getRadioStyle() {\n const defaultStyle = {\n '--bcm-radio-bg': 'var(--bcm-ui-color-background-default-default)',\n '--bcm-radio-border': 'var(--bcm-ui-color-border-disabled)',\n '--bcm-radio-border-hover': 'var(--bcm-ui-color-border-primary)',\n '--bcm-radio-checked': 'var(--bcm-ui-color-background-primary-default)',\n '--bcm-radio-text-color': 'var(--bcm-ui-color-text-default)',\n };\n\n const errorStyle = {\n '--bcm-radio-bg': 'var(--bcm-ui-color-background-palette-red-default)',\n '--bcm-radio-border': 'var(--bcm-ui-color-border-error)',\n '--bcm-radio-border-hover': 'var(--bcm-ui-color-border-error)',\n '--bcm-radio-checked': 'var(--bcm-ui-color-background-error-default)',\n '--bcm-radio-text-color': 'var(--bcm-ui-color-text-default)',\n };\n\n const disabledStyle = {\n '--bcm-radio-bg': 'var(--bcm-ui-color-background-disabled-default)',\n '--bcm-radio-border': 'var(--bcm-ui-color-border-disabled)',\n '--bcm-radio-border-hover': 'var(--bcm-ui-color-border-disabled)',\n '--bcm-radio-checked': 'var(--bcm-ui-color-background-disabled-default)',\n '--bcm-radio-text-color': 'var(--bcm-ui-color-text-disabled)',\n };\n\n const readonlyStyle = {\n '--bcm-radio-bg': 'transparent',\n '--bcm-radio-border': 'var(--bcm-ui-color-border-disabled)',\n '--bcm-radio-checked': 'var(--bcm-ui-color-background-default-default)',\n '--bcm-radio-border-hover': 'var(--bcm-ui-color-border-disabled)',\n '--bcm-radio-text-color': 'var(--bcm-ui-color-text-default)',\n };\n\n return {\n ...defaultStyle,\n ...(this.error && errorStyle),\n ...(this.disabled && disabledStyle),\n ...(this.readonly && readonlyStyle),\n };\n }\n\n private getRadioClass = tv(\n {\n slots: {\n container: 'bcm-ui-element bcm-radio group',\n dot: 'absolute rounded-full transition bg-[--bcm-radio-checked]',\n dotContainer:\n 'relative rounded-full flex items-center justify-center shadow-[inset_0_0_0_1px_var(--bcm-radio-border)] bg-[--bcm-radio-bg] transition group-hover:shadow-[inset_0_0_0_1px_var(--bcm-radio-border-hover)]',\n labelClass: 'font-medium text-[--bcm-radio-text-color]',\n },\n variants: {\n size: {\n small: {\n container: 'gap-2',\n dotContainer: 'size-3.5',\n dot: 'size-2',\n labelClass: 'text-size-4',\n },\n medium: {\n container: 'gap-2.5',\n dotContainer: 'size-4',\n dot: 'size-2.5',\n labelClass: 'text-size-5',\n },\n large: {\n container: 'gap-3',\n dotContainer: 'size-[18px]',\n dot: 'size-3',\n labelClass: 'text-size-6',\n },\n },\n checked: {\n true: {\n dot: 'opacity-100',\n },\n false: {\n dot: 'opacity-0',\n },\n },\n disabled: {\n true: {\n container: 'cursor-not-allowed',\n },\n false: {\n container: 'cursor-pointer focus-visible:ring',\n },\n },\n readonly: {\n true: {\n container: 'cursor-default pointer-events-none',\n dot: 'opacity-100',\n dotContainer: 'shadow-[inset_0_0_0_3px_var(--bcm-radio-border)]',\n },\n false: '',\n },\n labelPosition: {\n left: {\n container: 'inline-flex flex-row-reverse items-center',\n },\n right: {\n container: 'inline-flex flex-row items-center',\n },\n },\n },\n },\n {\n twMerge: false,\n },\n );\n\n render() {\n const { container, dot, dotContainer, labelClass } = this.getRadioClass({\n size: this.size,\n checked: this.checked,\n disabled: this.disabled,\n readonly: this.readonly,\n labelPosition: this.labelPosition,\n });\n\n return (\n <label class={container()} style={this.getRadioStyle()}>\n <input\n aria-label={this.label}\n role=\"radio\"\n aria-checked={this.checked.toString()}\n type=\"radio\"\n name={this.name}\n value={this.value}\n disabled={this.disabled}\n readOnly={this.readonly}\n checked={this.checked}\n class=\"appearance-none sr-only\"\n onClick={() => this.handleClick()}\n onFocus={e => this.bcmFocus.emit(e)}\n onBlur={e => this.bcmBlur.emit(e)}\n ></input>\n <div class={dotContainer()}>\n <div class={dot()}></div>\n </div>\n <span class={labelClass()}>\n <slot>{this.label}</slot>\n </span>\n </label>\n );\n }\n}\n"],"mappings":"wFAAA,MAAMA,EAAW,y9G,MCiDJC,EAAQ,MALrB,WAAAC,CAAAC,G,6HAsCEC,KAAOC,QAAY,MAQnBD,KAAIE,KAAiC,SAQrCF,KAAQG,SAAG,MAQXH,KAAQI,SAAG,MAQXJ,KAAaK,cAAqB,QAQlCL,KAAKM,MAAY,MAyETN,KAAaO,cAAGC,EACtB,CACEC,MAAO,CACLC,UAAW,iCACXC,IAAK,4DACLC,aACE,4MACFC,WAAY,6CAEdC,SAAU,CACRZ,KAAM,CACJa,MAAO,CACLL,UAAW,QACXE,aAAc,WACdD,IAAK,SACLE,WAAY,eAEdG,OAAQ,CACNN,UAAW,UACXE,aAAc,SACdD,IAAK,WACLE,WAAY,eAEdI,MAAO,CACLP,UAAW,QACXE,aAAc,cACdD,IAAK,SACLE,WAAY,gBAGhBZ,QAAS,CACPiB,KAAM,CACJP,IAAK,eAEPQ,MAAO,CACLR,IAAK,cAGTR,SAAU,CACRe,KAAM,CACJR,UAAW,sBAEbS,MAAO,CACLT,UAAW,sCAGfN,SAAU,CACRc,KAAM,CACJR,UAAW,qCACXC,IAAK,cACLC,aAAc,oDAEhBO,MAAO,IAETd,cAAe,CACbe,KAAM,CACJV,UAAW,6CAEbW,MAAO,CACLX,UAAW,wCAKnB,CACEY,QAAS,OAuCd,CAzJS,WAAAC,GACN,GAAIvB,KAAKI,UAAYJ,KAAKG,SAAU,OACpC,IAAKH,KAAKC,QAAS,CACjBD,KAAKC,QAAU,KACfD,KAAKwB,eAAeC,M,EAIhB,aAAAC,GACN,MAAMC,EAAe,CACnB,iBAAkB,iDAClB,qBAAsB,sCACtB,2BAA4B,qCAC5B,sBAAuB,iDACvB,yBAA0B,oCAG5B,MAAMC,EAAa,CACjB,iBAAkB,qDAClB,qBAAsB,mCACtB,2BAA4B,mCAC5B,sBAAuB,+CACvB,yBAA0B,oCAG5B,MAAMC,EAAgB,CACpB,iBAAkB,kDAClB,qBAAsB,sCACtB,2BAA4B,sCAC5B,sBAAuB,kDACvB,yBAA0B,qCAG5B,MAAMC,EAAgB,CACpB,iBAAkB,cAClB,qBAAsB,sCACtB,sBAAuB,iDACvB,2BAA4B,sCAC5B,yBAA0B,oCAG5B,OACKC,OAAAC,OAAAD,OAAAC,OAAAD,OAAAC,OAAAD,OAAAC,OAAA,GAAAL,GACC3B,KAAKM,OAASsB,GACd5B,KAAKG,UAAY0B,GACjB7B,KAAKI,UAAY0B,E,CAyEzB,MAAAG,GACE,MAAMvB,UAAEA,EAASC,IAAEA,EAAGC,aAAEA,EAAYC,WAAEA,GAAeb,KAAKO,cAAc,CACtEL,KAAMF,KAAKE,KACXD,QAASD,KAAKC,QACdE,SAAUH,KAAKG,SACfC,SAAUJ,KAAKI,SACfC,cAAeL,KAAKK,gBAGtB,OACE6B,EAAA,SAAAC,IAAA,2CAAOC,MAAO1B,IAAa2B,MAAOrC,KAAK0B,iBACrCQ,EACc,SAAAC,IAAA,wDAAAnC,KAAKsC,MACjBC,KAAK,QAAO,eACEvC,KAAKC,QAAQuC,WAC3BC,KAAK,QACLC,KAAM1C,KAAK0C,KACXC,MAAO3C,KAAK2C,MACZxC,SAAUH,KAAKG,SACfyC,SAAU5C,KAAKI,SACfH,QAASD,KAAKC,QACdmC,MAAM,0BACNS,QAAS,IAAM7C,KAAKuB,cACpBuB,QAASC,GAAK/C,KAAKgD,SAASvB,KAAKsB,GACjCE,OAAQF,GAAK/C,KAAKkD,QAAQzB,KAAKsB,KAEjCb,EAAK,OAAAC,IAAA,2CAAAC,MAAOxB,KACVsB,EAAA,OAAAC,IAAA,2CAAKC,MAAOzB,OAEduB,EAAM,QAAAC,IAAA,2CAAAC,MAAOvB,KACXqB,EAAA,QAAAC,IAAA,4CAAOnC,KAAKsC,Q","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,h as i,a as e}from"./p-BuuGCw0z.js";import{b as s,c as o,o as a,f as h,s as r,a as l}from"./p-DxMLMJ3r.js";import{t as c}from"./p-CEcVC0yX.js";const n=":host{--tooltip-bg:var(--bcm-ui-color-background-default-dark-default)}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.static{position:static}.absolute{position:absolute}.relative{position:relative}.z-\\[-1\\]{z-index:-1}.z-\\[9999\\]{z-index:9999}.block{display:block}.hidden{display:none}.h-4{height:1rem}.w-4{width:1rem}.min-w-max{min-width:max-content}.rotate-45{--tw-rotate:45deg}.rotate-45,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rounded-md{border-radius:var(--bcm-ui-border-radius-md,6px)}.bg-\\[--tooltip-bg\\]{background-color:var(--tooltip-bg)}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.text-size-3{font-size:var(--bcm-ui-font-size-3,12px);line-height:var(--bcm-ui-line-height-3,16px)}.text-size-4{font-size:var(--bcm-ui-font-size-4,14px);line-height:var(--bcm-ui-line-height-4,20px)}.text-size-5{font-size:var(--bcm-ui-font-size-5,16px);line-height:var(--bcm-ui-line-height-5,24px)}.font-medium{font-weight:500}.text-color-base{color:var(--bcm-ui-color-text-base)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default)}.shadow,.shadow-3{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-3{--tw-shadow:var(--bcm-ui-box-shadow-3);--tw-shadow-colored:var(--bcm-ui-box-shadow-3)}";const d=class{constructor(i){t(this,i);this.trigger="hover";this.placement="top";this.size="medium";this.showDelay=150;this.open=false;this.toggleTooltip=()=>{this.open=!this.open;this.updateOutsideClickListener()};this.showTooltip=()=>{clearTimeout(this.hoverTimeout);this.hoverTimeout=setTimeout((()=>{this.open=true;this.updateOutsideClickListener()}),this.showDelay)};this.hideTooltip=()=>{clearTimeout(this.hoverTimeout);this.hoverTimeout=setTimeout((()=>{this.open=false;this.updateOutsideClickListener()}),this.showDelay)};this.handleSlotChange=()=>{const t=this.el.shadowRoot.querySelector("slot");const i=t.assignedElements();this.targetElement=i[0];if(this.targetElement){this.targetElement.removeEventListener("click",this.toggleTooltip);this.targetElement.removeEventListener("mouseenter",this.showTooltip);this.targetElement.removeEventListener("mouseleave",this.hideTooltip);if(this.trigger==="click"){this.targetElement.addEventListener("click",this.toggleTooltip);this.targetElement.setAttribute("aria-expanded",this.open.toString());this.targetElement.setAttribute("aria-describedby","tooltip")}if(this.trigger==="hover"){this.targetElement.addEventListener("mouseenter",this.showTooltip);this.targetElement.addEventListener("mouseleave",this.hideTooltip);this.targetElement.setAttribute("aria-describedby","tooltip")}if(this.tooltipElement&&!this.cleanupAutoUpdate){this.cleanupAutoUpdate=s(this.targetElement,this.tooltipElement,(()=>this.updatePosition()),{animationFrame:false})}}};this.handleOutsideClick=t=>{if(!this.el.contains(t.target)&&this.open){this.open=false;this.updateOutsideClickListener()}};this.updatePosition=async()=>{if(!this.targetElement||!this.tooltipElement||!this.arrowElement)return;const{x:t,y:i,placement:e,middlewareData:s}=await o(this.targetElement,this.tooltipElement,{placement:this.placement,middleware:[a(12),h({fallbackPlacements:["top","left","bottom","right"]}),r({padding:8}),l({element:this.arrowElement})]});Object.assign(this.tooltipElement.style,{left:`${t}px`,top:`${i}px`});const{x:c,y:n}=s.arrow||{x:0,y:0};const d=e.split("-")[0];const m={top:"bottom",right:"left",bottom:"top",left:"right"}[d];Object.assign(this.arrowElement.style,{left:c!=null?`${c}px`:"",top:n!=null?`${n}px`:"",[m]:"-4px"})};this.tooltipClass=c({slots:{tooltip:"bcm-ui-element bcm-tooltip absolute bg-[--tooltip-bg] rounded-md shadow-3 py-1 px-3 min-w-max z-[9999] text-color-base font-medium",arrow:"absolute w-4 h-4 bg-[--tooltip-bg] transform rotate-45 z-[-1]"},variants:{size:{small:{tooltip:"text-size-3"},medium:{tooltip:"text-size-4"},large:{tooltip:"text-size-5"}},isOpen:{true:{tooltip:"block"},false:{tooltip:"hidden"}}},defaultVariants:{size:"medium",isOpen:false}},{twMerge:false})}disconnectedCallback(){var t;document.removeEventListener("click",this.handleOutsideClick);if(this.targetElement){this.targetElement.removeEventListener("click",this.toggleTooltip);this.targetElement.removeEventListener("mouseenter",this.showTooltip);this.targetElement.removeEventListener("mouseleave",this.hideTooltip)}(t=this.cleanupAutoUpdate)===null||t===void 0?void 0:t.call(this);this.cleanupAutoUpdate=null;clearTimeout(this.hoverTimeout)}updateOutsideClickListener(){if(this.open){document.addEventListener("click",this.handleOutsideClick)}else{document.removeEventListener("click",this.handleOutsideClick)}}async openTooltip(){this.showTooltip()}async closeTooltip(){this.hideTooltip()}render(){const{tooltip:t,arrow:e}=this.tooltipClass({size:this.size,isOpen:this.open});return i("div",{key:"d92fbafaebadf93f8c215e6e3e654e39b494c7fb",class:"relative"},i("slot",{key:"35de4bc9d0def680a4bab9e64647e9e0944641c0",onSlotchange:()=>this.handleSlotChange()}),i("div",{key:"decee0e16c8aedbb3ab5e9569fdb33fda07cf7fc",role:"tooltip",class:t(),ref:t=>this.tooltipElement=t,part:"tooltip"},i("div",{key:"33a5f59e988795b1cc55f21fc3e11d7711a1b8ef",class:e(),ref:t=>this.arrowElement=t,part:"arrow"}),i("slot",{key:"b73cc659fea66c2bd868b047bd1698cf2764c954",name:"tooltip"},this.message)))}get el(){return e(this)}};d.style=n;export{d as bcm_tooltip};
2
- //# sourceMappingURL=p-6d7d73d5.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["tooltipCss","Tooltip","constructor","hostRef","this","trigger","placement","size","showDelay","open","toggleTooltip","updateOutsideClickListener","showTooltip","clearTimeout","hoverTimeout","setTimeout","hideTooltip","handleSlotChange","slot","el","shadowRoot","querySelector","elements","assignedElements","targetElement","removeEventListener","addEventListener","setAttribute","toString","tooltipElement","cleanupAutoUpdate","autoUpdate","updatePosition","animationFrame","handleOutsideClick","event","contains","target","async","arrowElement","x","y","middlewareData","computePosition","middleware","offset","flip","fallbackPlacements","shift","padding","arrow","element","Object","assign","style","left","top","arrowX","arrowY","basePlacement","split","staticSide","right","bottom","tooltipClass","tv","slots","tooltip","variants","small","medium","large","isOpen","true","false","defaultVariants","twMerge","disconnectedCallback","document","_a","call","openTooltip","closeTooltip","render","h","key","class","onSlotchange","role","ref","part","name","message"],"sources":["src/components/tooltip/tooltip.css?tag=bcm-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.component.tsx"],"sourcesContent":[":host {\n --tooltip-bg: var(--bcm-ui-color-background-default-dark-default);\n}\n","import { arrow, autoUpdate, computePosition, flip, offset, shift } from '@floating-ui/dom';\nimport { Component, ComponentInterface, h, Element, Prop, State, Method } from '@stencil/core';\nimport { tv } from '@utils/tv';\n\n/**\n * @component BcmTooltip\n * @description A lightweight tooltip component that displays brief contextual information when hovering or clicking on a target element.\n * Supports different sizes, trigger types (click or hover), placements (top, right, bottom, left), and can be controlled via slots or props.\n *\n * @example Basic Hover Tooltip\n * <bcm-tooltip trigger=\"hover\" size=\"medium\" placement=\"top\" message=\"This is a tooltip.\">\n * <bcm-button>Hover Me</bcm-button>\n * </bcm-tooltip>\n *\n * @example Click Tooltip with Programmatic Control\n * <bcm-tooltip id=\"my-tooltip\" trigger=\"click\" message=\"Controlled tooltip.\">\n * <bcm-button>Click Me</bcm-button>\n * </bcm-tooltip>\n * <script>\n * const tooltip = document.querySelector('#my-tooltip');\n * tooltip.openTooltip(); // Opens the tooltip\n * tooltip.closeTooltip(); // Closes the tooltip\n * </script>\n *\n * @slot - Default slot for the target element that triggers the tooltip\n * @slot tooltip - Slot for custom tooltip content\n *\n * @csspart tooltip - The root tooltip container element, stylable for the entire tooltip\n * @csspart arrow - The arrow element of the tooltip, stylable for the positioning arrow\n */\n\n@Component({\n tag: 'bcm-tooltip',\n styleUrl: 'tooltip.css',\n shadow: true,\n})\nexport class Tooltip implements ComponentInterface {\n @Element() el: HTMLElement;\n\n /**\n * @prop {('click' | 'hover')} trigger - Defines the interaction type to show/hide the tooltip.\n * 'click' toggles on click, 'hover' shows on mouse enter and hides on mouse leave.\n * Default: 'hover'\n */\n @Prop()\n trigger: 'click' | 'hover' = 'hover';\n\n /**\n * @prop {('top' | 'right' | 'bottom' | 'left')} placement - Defines the position of the tooltip relative to the target element.\n * Default: 'top'\n */\n @Prop()\n placement: 'top' | 'right' | 'bottom' | 'left' = 'top';\n\n /**\n * @prop {('small' | 'medium' | 'large')} size - Defines the size of the tooltip.\n * Controls the text size and padding of the tooltip content.\n * Default: 'medium'\n */\n @Prop()\n size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * @prop {string} message - Custom text for the tooltip content.\n * Used as fallback content if the 'tooltip' slot is not provided.\n */\n @Prop()\n message: string;\n\n /**\n * @prop {number} showDelay - Delay in milliseconds before showing or hiding the tooltip.\n * Helps prevent flickering on quick mouse movements.\n * Default: 150\n */\n @Prop()\n showDelay: number = 150;\n\n @State() open = false;\n\n private tooltipElement: HTMLElement;\n private arrowElement: HTMLElement;\n private targetElement: HTMLElement;\n private hoverTimeout: any;\n private cleanupAutoUpdate: () => void;\n\n disconnectedCallback() {\n document.removeEventListener('click', this.handleOutsideClick);\n if (this.targetElement) {\n this.targetElement.removeEventListener('click', this.toggleTooltip);\n this.targetElement.removeEventListener('mouseenter', this.showTooltip);\n this.targetElement.removeEventListener('mouseleave', this.hideTooltip);\n }\n this.cleanupAutoUpdate?.();\n this.cleanupAutoUpdate = null;\n clearTimeout(this.hoverTimeout);\n }\n\n private updateOutsideClickListener() {\n if (this.open) {\n document.addEventListener('click', this.handleOutsideClick);\n } else {\n document.removeEventListener('click', this.handleOutsideClick);\n }\n }\n\n private toggleTooltip = () => {\n this.open = !this.open;\n this.updateOutsideClickListener();\n };\n\n private showTooltip = () => {\n clearTimeout(this.hoverTimeout);\n this.hoverTimeout = setTimeout(() => {\n this.open = true;\n this.updateOutsideClickListener();\n }, this.showDelay);\n };\n\n private hideTooltip = () => {\n clearTimeout(this.hoverTimeout);\n this.hoverTimeout = setTimeout(() => {\n this.open = false;\n this.updateOutsideClickListener();\n }, this.showDelay);\n };\n\n /**\n * @method {Promise<void>} openTooltip - Programmatically opens the tooltip.\n * Triggers the showTooltip logic with the specified delay.\n * @returns {Promise<void>} A promise that resolves when the tooltip is opened.\n */\n @Method()\n async openTooltip() {\n this.showTooltip();\n }\n\n /**\n * @method {Promise<void>} closeTooltip - Programmatically closes the tooltip.\n * Triggers the hideTooltip logic with the specified delay.\n * @returns {Promise<void>} A promise that resolves when the tooltip is closed.\n */\n @Method()\n async closeTooltip() {\n this.hideTooltip();\n }\n\n private handleSlotChange = () => {\n const slot = this.el.shadowRoot.querySelector('slot');\n const elements = slot.assignedElements();\n this.targetElement = elements[0] as HTMLElement;\n\n if (this.targetElement) {\n this.targetElement.removeEventListener('click', this.toggleTooltip);\n this.targetElement.removeEventListener('mouseenter', this.showTooltip);\n this.targetElement.removeEventListener('mouseleave', this.hideTooltip);\n\n if (this.trigger === 'click') {\n this.targetElement.addEventListener('click', this.toggleTooltip);\n this.targetElement.setAttribute('aria-expanded', this.open.toString());\n this.targetElement.setAttribute('aria-describedby', 'tooltip');\n }\n\n if (this.trigger === 'hover') {\n this.targetElement.addEventListener('mouseenter', this.showTooltip);\n this.targetElement.addEventListener('mouseleave', this.hideTooltip);\n this.targetElement.setAttribute('aria-describedby', 'tooltip');\n }\n\n if (this.tooltipElement && !this.cleanupAutoUpdate) {\n this.cleanupAutoUpdate = autoUpdate(this.targetElement, this.tooltipElement, () => this.updatePosition(), { animationFrame: false });\n }\n }\n };\n\n private handleOutsideClick = (event: Event) => {\n if (!this.el.contains(event.target as Node) && this.open) {\n this.open = false;\n this.updateOutsideClickListener();\n }\n };\n\n private updatePosition = async () => {\n if (!this.targetElement || !this.tooltipElement || !this.arrowElement) return;\n\n const { x, y, placement, middlewareData } = await computePosition(this.targetElement, this.tooltipElement, {\n placement: this.placement,\n middleware: [offset(12), flip({ fallbackPlacements: ['top', 'left', 'bottom', 'right'] }), shift({ padding: 8 }), arrow({ element: this.arrowElement })],\n });\n\n Object.assign(this.tooltipElement.style, {\n left: `${x}px`,\n top: `${y}px`,\n });\n\n const { x: arrowX, y: arrowY } = middlewareData.arrow || { x: 0, y: 0 };\n const basePlacement = placement.split('-')[0] as 'top' | 'right' | 'bottom' | 'left';\n const staticSide = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[basePlacement];\n\n Object.assign(this.arrowElement.style, {\n left: arrowX != null ? `${arrowX}px` : '',\n top: arrowY != null ? `${arrowY}px` : '',\n [staticSide]: '-4px',\n });\n };\n\n private tooltipClass = tv(\n {\n slots: {\n tooltip: 'bcm-ui-element bcm-tooltip absolute bg-[--tooltip-bg] rounded-md shadow-3 py-1 px-3 min-w-max z-[9999] text-color-base font-medium',\n arrow: 'absolute w-4 h-4 bg-[--tooltip-bg] transform rotate-45 z-[-1]',\n },\n variants: {\n size: {\n small: { tooltip: 'text-size-3' },\n medium: { tooltip: 'text-size-4' },\n large: { tooltip: 'text-size-5' },\n },\n isOpen: {\n true: { tooltip: 'block' },\n false: { tooltip: 'hidden' },\n },\n },\n defaultVariants: {\n size: 'medium',\n isOpen: false,\n },\n },\n { twMerge: false },\n );\n\n render() {\n const { tooltip, arrow } = this.tooltipClass({\n size: this.size,\n isOpen: this.open,\n });\n return (\n <div class=\"relative\">\n <slot onSlotchange={() => this.handleSlotChange()}></slot>\n <div role=\"tooltip\" class={tooltip()} ref={el => (this.tooltipElement = el)} part=\"tooltip\">\n <div class={arrow()} ref={el => (this.arrowElement = el)} part=\"arrow\"></div>\n <slot name=\"tooltip\">{this.message}</slot>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r,h as d}from"./p-BuuGCw0z.js";import{t as o}from"./p-CEcVC0yX.js";const e=".block{display:block}:host{--bcm-divider-border:var(--bcm-ui-color-border-default);display:block}.static{position:static}.h-full{height:100%}.w-full{width:100%}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\\[1px\\]{border-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-dotted{border-style:dotted}.border-\\[--bcm-divider-border\\]{border-color:var(--bcm-divider-border)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}";const t=class{constructor(d){r(this,d);this.direction="horizontal";this.variant="solid";this.size="medium";this.dividerClass=o({base:"border-[--bcm-divider-border]",variants:{direction:{horizontal:"w-full border-t",vertical:"h-full border-l"},variant:{solid:"border-solid",dashed:"border-dashed",dotted:"border-dotted"},size:{small:"border-[1px]",medium:"border-2",large:"border-4"}},defaultVariants:{direction:"horizontal",variant:"solid",size:"medium"}},{twMerge:false})}render(){return d("div",{key:"36b2afa1c40326bf3d2c7ba1431334766d6d3aa0",role:"separator","aria-orientation":this.direction,class:this.dividerClass({direction:this.direction,variant:this.variant,size:this.size})})}};t.style=e;export{t as bcm_divider};
2
- //# sourceMappingURL=p-7234af90.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["dividerCss","Divider","constructor","hostRef","this","direction","variant","size","dividerClass","tv","base","variants","horizontal","vertical","solid","dashed","dotted","small","medium","large","defaultVariants","twMerge","render","h","key","role","class"],"sources":["src/components/divider/divider.css?tag=bcm-divider&encapsulation=shadow","src/components/divider/divider.component.tsx"],"sourcesContent":[":host {\n display: block;\n --bcm-divider-border: var(--bcm-ui-color-border-default);\n}\n","import { Component, ComponentInterface, Prop, h } from '@stencil/core';\nimport { tv } from '@utils/tv';\n\n/**\n * @component BCM Divider\n * @description\n * A versatile divider component that creates a visual separation between content.\n * It supports horizontal or vertical orientation with customizable styles and sizes.\n * The component uses CSS variables for theming and Tailwind for styling.\n */\n@Component({\n tag: 'bcm-divider',\n styleUrl: 'divider.css',\n shadow: true,\n})\nexport class Divider implements ComponentInterface {\n /**\n * @prop {('horizontal'|'vertical')} direction\n * @description Determines the orientation of the divider\n * @default 'horizontal'\n * @example\n * <bcm-divider direction=\"vertical\" />\n */\n @Prop()\n direction: 'horizontal' | 'vertical' = 'horizontal';\n\n /**\n * @prop {('solid'|'dashed'|'dotted')} variant\n * @description Sets the border style of the divider\n * @default 'solid'\n * @example\n * <bcm-divider variant=\"dashed\" />\n */\n @Prop()\n variant: 'solid' | 'dashed' | 'dotted' = 'solid';\n\n /**\n * @prop {('small'|'medium'|'large')} size\n * @description Controls the thickness of the divider\n * @default 'medium'\n * @values\n * - small: 1px border\n * - medium: 2px border\n * - large: 4px border\n * @example\n * <bcm-divider size=\"large\" />\n */\n @Prop()\n size: 'small' | 'medium' | 'large' = 'medium';\n\n private dividerClass = tv(\n {\n base: 'border-[--bcm-divider-border]',\n variants: {\n direction: {\n horizontal: 'w-full border-t',\n vertical: 'h-full border-l',\n },\n variant: {\n solid: 'border-solid',\n dashed: 'border-dashed',\n dotted: 'border-dotted',\n },\n size: {\n small: 'border-[1px]',\n medium: 'border-2',\n large: 'border-4',\n },\n },\n defaultVariants: {\n direction: 'horizontal',\n variant: 'solid',\n size: 'medium',\n },\n },\n {\n twMerge: false,\n },\n );\n\n render() {\n return (\n <div\n role=\"separator\"\n aria-orientation={this.direction}\n class={this.dividerClass({\n direction: this.direction,\n variant: this.variant,\n size: this.size,\n })}\n ></div>\n );\n }\n}\n"],"mappings":"0EAAA,MAAMA,EAAa,ktB,MCeNC,EAAO,MALpB,WAAAC,CAAAC,G,UAcEC,KAASC,UAA8B,aAUvCD,KAAOE,QAAkC,QAczCF,KAAIG,KAAiC,SAE7BH,KAAYI,aAAGC,EACrB,CACEC,KAAM,gCACNC,SAAU,CACRN,UAAW,CACTO,WAAY,kBACZC,SAAU,mBAEZP,QAAS,CACPQ,MAAO,eACPC,OAAQ,gBACRC,OAAQ,iBAEVT,KAAM,CACJU,MAAO,eACPC,OAAQ,WACRC,MAAO,aAGXC,gBAAiB,CACff,UAAW,aACXC,QAAS,QACTC,KAAM,WAGV,CACEc,QAAS,OAiBd,CAbC,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,2CACEC,KAAK,YACa,mBAAArB,KAAKC,UACvBqB,MAAOtB,KAAKI,aAAa,CACvBH,UAAWD,KAAKC,UAChBC,QAASF,KAAKE,QACdC,KAAMH,KAAKG,Q","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["badgeCss","Badge","constructor","hostRef","this","size","variant","soft","blink","position","classes","tv","base","variants","small","medium","large","dot","text","true","compoundVariants","class","defaultVariants","offsetStyle","offset","x","y","split","map","val","trim","transform","badgeStyle","color","variantType","render","h","key","role","status","undefined","style","Object","assign","name"],"sources":["src/components/badge/badge.css?tag=bcm-badge&encapsulation=shadow","src/components/badge/badge.component.tsx"],"sourcesContent":[":host {\n display: inline-block;\n position: relative;\n --bcm-badge-bg: var(--bcm-ui-color-background-default-default);\n --bcm-badge-text: var(--bcm-ui-color-text-default);\n --bcm-badge-radius: 9999px;\n}\n\n::slotted([slot='badge']) {\n color: var(--bcm-badge-text);\n font-weight: 500;\n}\n","import { Component, ComponentInterface, Prop, h } from '@stencil/core';\nimport { tv } from '@utils/tv';\n\n/**\n * @component BcmBadge\n * @description A versatile badge component that can be positioned around its container.\n * Supports different sizes, variants (dot/text), colors, and positioning options.\n * Can display status indicators with optional blinking animation.\n *\n * @example Basic usage\n * <bcm-badge color=\"primary\" position=\"top-right\">\n * <div>Container Content</div>\n * <span slot=\"badge\">New</span>\n * </bcm-badge>\n *\n * @example Status indicator with blink\n * <bcm-badge variant=\"dot\" color=\"success\" blink={true} status=\"Online\">\n * <div>User Profile</div>\n * </bcm-badge>\n */\n@Component({\n tag: 'bcm-badge',\n styleUrl: 'badge.css',\n shadow: true,\n})\nexport class Badge implements ComponentInterface {\n /**\n * Determines the size of the badge.\n * @type {'small' | 'medium' | 'large'}\n * @default 'medium'\n */\n @Prop()\n size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * Sets the visual variant of the badge.\n * 'dot': Appears as a small dot indicator\n * 'text': Displays content as text\n * @type {'dot' | 'text'}\n * @default 'text'\n */\n @Prop()\n variant: 'dot' | 'text' = 'text';\n\n /**\n * Defines the color of the badge.\n * Uses system color variables (e.g., 'primary', 'success', 'warning', etc.)\n * @type {string}\n * @optional\n */\n @Prop()\n color?: string;\n\n /**\n * Enables soft color mode for the badge.\n * When true, uses lighter tones and pastel colors.\n * @type {boolean}\n * @default false\n */\n @Prop()\n soft: boolean = false;\n\n /**\n * Enables blinking animation for the badge.\n * Useful for drawing attention or indicating active status.\n * @type {boolean}\n * @default false\n */\n @Prop()\n blink: boolean = false;\n\n /**\n * Status message for accessibility purposes.\n * Will be read by screen readers.\n * @type {string}\n * @optional\n */\n @Prop()\n status?: string;\n\n /**\n * Sets the position of the badge relative to its container.\n * @type {'top-right' | 'top-left' | 'bottom-right' | 'bottom-left'}\n * @default 'top-right'\n */\n @Prop()\n position: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' = 'top-right';\n\n /**\n * Fine-tune the badge position with custom offset.\n * Format: \"x,y\" in pixels (e.g., \"10,-5\")\n * @type {string}\n * @optional\n */\n @Prop()\n offset: string;\n\n /**\n * Text to be displayed inside the badge.\n * Used when variant is set to 'text'.\n * Can be overridden using the \"badge\" slot.\n * @type {string}\n * @optional\n */\n @Prop()\n text?: string;\n\n private classes = tv({\n base: 'badge bcm-ui-element absolute font-medium inline-flex items-center justify-center bg-[--bcm-badge-bg] text-[--bcm-badge-text] rounded-[--bcm-badge-radius] z-10',\n variants: {\n size: {\n small: 'gap-1 px-1 text-size-3',\n medium: 'gap-1 py-0.5 px-1.5 text-size-4',\n large: 'gap-2 py-1 px-2 text-size-5',\n },\n variant: {\n dot: 'gap-0 p-0 text-[0px] leading-none',\n text: '',\n },\n position: {\n 'top-right': '-top-1 -right-1',\n 'top-left': '-top-1 -left-1',\n 'bottom-right': '-bottom-1 -right-1',\n 'bottom-left': '-bottom-1 -left-1',\n },\n blink: {\n true: 'after:content-[\"\"] after:absolute after:rounded-full after:bg-[--bcm-badge-bg] after:animate-blink after:w-full after:h-full',\n },\n },\n compoundVariants: [\n {\n variant: 'dot',\n size: 'small',\n class: 'size-1',\n },\n {\n variant: 'dot',\n size: 'medium',\n class: 'size-1.5',\n },\n {\n variant: 'dot',\n size: 'large',\n class: 'size-2',\n },\n ],\n defaultVariants: {\n variant: 'text',\n size: 'medium',\n position: 'top-right',\n blink: false,\n },\n });\n\n private get offsetStyle() {\n if (!this.offset) return {};\n const [x = 0, y = 0] = this.offset.split(',').map(val => val.trim());\n return { transform: `translate(${x}px, ${y}px)` };\n }\n\n private get badgeStyle() {\n if (!this.color) return {};\n const variantType = this.soft ? 'soft' : 'vivid';\n\n return {\n '--bcm-badge-bg': `var(--bcm-ui-color-background-${variantType}-${this.color}-default)`,\n '--bcm-badge-text': this.soft ? `var(--bcm-ui-color-text-palette-${this.color})` : 'var(--bcm-ui-color-text-base)',\n };\n }\n\n render() {\n return (\n <div class=\"relative inline-flex\">\n <slot></slot>\n <div\n role=\"status\"\n aria-live=\"polite\"\n aria-label={this.status ? `Status: ${this.status}` : undefined}\n class={this.classes({\n size: this.size,\n variant: this.variant,\n position: this.position,\n blink: this.blink,\n })}\n style={{\n ...this.badgeStyle,\n ...this.offsetStyle,\n }}\n >\n {this.variant == 'text' && <slot name=\"badge\">{this.text}</slot>}\n </div>\n </div>\n );\n }\n}\n"],"mappings":"+EAAA,MAAMA,EAAW,2hH,MCyBJC,EAAK,MALlB,WAAAC,CAAAC,G,UAYEC,KAAIC,KAAiC,SAUrCD,KAAOE,QAAmB,OAkB1BF,KAAIG,KAAY,MAShBH,KAAKI,MAAY,MAiBjBJ,KAAQK,SAA8D,YAqB9DL,KAAOM,QAAGC,EAAG,CACnBC,KAAM,kKACNC,SAAU,CACRR,KAAM,CACJS,MAAO,yBACPC,OAAQ,kCACRC,MAAO,+BAETV,QAAS,CACPW,IAAK,oCACLC,KAAM,IAERT,SAAU,CACR,YAAa,kBACb,WAAY,iBACZ,eAAgB,qBAChB,cAAe,qBAEjBD,MAAO,CACLW,KAAM,kIAGVC,iBAAkB,CAChB,CACEd,QAAS,MACTD,KAAM,QACNgB,MAAO,UAET,CACEf,QAAS,MACTD,KAAM,SACNgB,MAAO,YAET,CACEf,QAAS,MACTD,KAAM,QACNgB,MAAO,WAGXC,gBAAiB,CACfhB,QAAS,OACTD,KAAM,SACNI,SAAU,YACVD,MAAO,QA4CZ,CAxCC,eAAYe,GACV,IAAKnB,KAAKoB,OAAQ,MAAO,GACzB,MAAOC,EAAI,EAAGC,EAAI,GAAKtB,KAAKoB,OAAOG,MAAM,KAAKC,KAAIC,GAAOA,EAAIC,SAC7D,MAAO,CAAEC,UAAW,aAAaN,QAAQC,O,CAG3C,cAAYM,GACV,IAAK5B,KAAK6B,MAAO,MAAO,GACxB,MAAMC,EAAc9B,KAAKG,KAAO,OAAS,QAEzC,MAAO,CACL,iBAAkB,iCAAiC2B,KAAe9B,KAAK6B,iBACvE,mBAAoB7B,KAAKG,KAAO,mCAAmCH,KAAK6B,SAAW,gC,CAIvF,MAAAE,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKhB,MAAM,wBACTe,EAAa,QAAAC,IAAA,6CACbD,EACE,OAAAC,IAAA,2CAAAC,KAAK,SACK,qBACE,aAAAlC,KAAKmC,OAAS,WAAWnC,KAAKmC,SAAWC,UACrDnB,MAAOjB,KAAKM,QAAQ,CAClBL,KAAMD,KAAKC,KACXC,QAASF,KAAKE,QACdG,SAAUL,KAAKK,SACfD,MAAOJ,KAAKI,QAEdiC,MACKC,OAAAC,OAAAD,OAAAC,OAAA,GAAAvC,KAAK4B,YACL5B,KAAKmB,cAGTnB,KAAKE,SAAW,QAAU8B,EAAA,QAAAC,IAAA,2CAAMO,KAAK,SAASxC,KAAKc,O","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["dropdownItemCss","DropdownItem","constructor","hostRef","this","selected","error","disabled","dropdownItemClass","tv","base","variants","true","false","defaultVariants","twMerge","handleClick","bcmDropDownItemChange","emit","element","host","render","h","key","class","onClick","name","icon","text","_a","rightIcons","map"],"sources":["src/components/dropdown-item/dropdown-item.css?tag=bcm-dropdown-item&encapsulation=shadow","src/components/dropdown-item/dropdown-item.component.tsx"],"sourcesContent":[":host {\n display: inline-block;\n width: 100%;\n}\n\n::slotted([slot='left-content']) {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n}\n\n::slotted([slot='right-content']) {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n}\n","import { Component, ComponentInterface, h, Prop, Event, EventEmitter, Element } from '@stencil/core';\nimport { tv } from '@utils/tv';\n\n@Component({\n tag: 'bcm-dropdown-item',\n styleUrl: 'dropdown-item.css',\n shadow: true,\n})\nexport class DropdownItem implements ComponentInterface {\n @Element() host: HTMLElement;\n @Prop() text: string;\n @Prop() icon: string;\n @Prop() rightIcons: string[];\n @Prop({ reflect: true }) selected: boolean = false;\n @Prop({ reflect: true }) error: boolean = false;\n @Prop({ reflect: true }) disabled: boolean = false;\n\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n eventName: 'bcmDropDownItemChange',\n })\n bcmDropDownItemChange: EventEmitter<any>;\n\n private handleClick() {\n this.selected = true;\n this.bcmDropDownItemChange.emit({\n element: this.host,\n selected: this.selected,\n });\n }\n\n private dropdownItemClass = tv(\n {\n base: 'dropdown-item bcm-ui-element bcm-ui-content-display flex flex-row gap-2 py-2 px-4 cursor-pointer text-color',\n variants: {\n selected: {\n true: 'bg-[var(--bcm-ui-color-background-base-active)] hover:bg-[var(--bcm-ui-color-background-base-active)]',\n false: 'hover:bg-[var(--bcm-ui-color-background-base-hover)]',\n },\n error: {\n true: 'bg-[var(--bcm-ui-color-background-palette-red-default)] hover:bg-[var(--bcm-ui-color-background-palette-red-default)]',\n false: '',\n },\n disabled: {\n true: '', // should be discuss with ux team\n false: '',\n },\n },\n defaultVariants: {\n selected: false,\n error: false,\n disabled: false,\n },\n },\n {\n twMerge: false,\n },\n );\n\n render() {\n return (\n <div\n aria-checked={this.selected}\n class={this.dropdownItemClass({\n selected: this.selected,\n error: this.error,\n })}\n onClick={() => this.handleClick()}\n >\n <slot name=\"left-content\">{this.icon && <bcm-icon icon-name={this.icon}></bcm-icon>}</slot>\n <div class=\"flex flex-row text-pretty w-full\">\n <slot>{this.text}</slot>\n </div>\n <slot name=\"right-content\">\n {this.rightIcons?.map(icon => (\n <bcm-icon icon-name={icon}></bcm-icon>\n ))}\n </slot>\n </div>\n );\n }\n}\n"],"mappings":"wFAAA,MAAMA,EAAkB,+6C,MCQXC,EAAY,MALzB,WAAAC,CAAAC,G,uEAU2BC,KAAQC,SAAY,MACpBD,KAAKE,MAAY,MACjBF,KAAQG,SAAY,MAkBrCH,KAAiBI,kBAAGC,EAC1B,CACEC,KAAM,8GACNC,SAAU,CACRN,SAAU,CACRO,KAAM,wGACNC,MAAO,wDAETP,MAAO,CACLM,KAAM,wHACNC,MAAO,IAETN,SAAU,CACRK,KAAM,GACNC,MAAO,KAGXC,gBAAiB,CACfT,SAAU,MACVC,MAAO,MACPC,SAAU,QAGd,CACEQ,QAAS,OA0Bd,CA1DS,WAAAC,GACNZ,KAAKC,SAAW,KAChBD,KAAKa,sBAAsBC,KAAK,CAC9BC,QAASf,KAAKgB,KACdf,SAAUD,KAAKC,U,CAgCnB,MAAAgB,G,MACE,OACEC,EACgB,OAAAC,IAAA,0DAAAnB,KAAKC,SACnBmB,MAAOpB,KAAKI,kBAAkB,CAC5BH,SAAUD,KAAKC,SACfC,MAAOF,KAAKE,QAEdmB,QAAS,IAAMrB,KAAKY,eAEpBM,EAAA,QAAAC,IAAA,2CAAMG,KAAK,gBAAgBtB,KAAKuB,MAAQL,EAAqB,YAAAC,IAAA,uDAAAnB,KAAKuB,QAClEL,EAAK,OAAAC,IAAA,2CAAAC,MAAM,oCACTF,EAAA,QAAAC,IAAA,4CAAOnB,KAAKwB,OAEdN,EAAM,QAAAC,IAAA,2CAAAG,KAAK,kBACRG,EAAAzB,KAAK0B,cAAY,MAAAD,SAAA,SAAAA,EAAAE,KAAIJ,GACpBL,EAAA,wBAAqBK,O","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i,H as o,a}from"./p-BuuGCw0z.js";import{t as r}from"./p-CEcVC0yX.js";const s=".relative{position:relative}.block{display:block}:host{display:block;position:relative}:host([variant=full-width]){width:100%}:host([variant=auto-width]){width:auto}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.static{position:static}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.flex{display:flex}.h-\\[2px\\]{height:2px}.w-auto{width:auto}.w-full{width:100%}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-2\\.5{gap:.625rem}.gap-3{gap:.75rem}.border-none{border-style:none}.bg-\\[--bcm-ui-color-text-disabled\\]{background-color:var(--bcm-ui-color-text-disabled)}.bg-\\[--bcm-ui-color-text-placeholder\\]{background-color:var(--bcm-ui-color-text-placeholder)}.bg-transparent{background-color:transparent}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.text-center{text-align:center}.text-size-4{font-size:var(--bcm-ui-font-size-4,14px);line-height:var(--bcm-ui-line-height-4,20px)}.text-size-5{font-size:var(--bcm-ui-font-size-5,16px);line-height:var(--bcm-ui-line-height-5,24px)}.text-size-6{font-size:var(--bcm-ui-font-size-6,18px);line-height:var(--bcm-ui-line-height-6,24px)}.font-medium{font-weight:500}.text-color-disabled{color:var(--bcm-ui-color-text-disabled)}.text-color-placeholder{color:var(--bcm-ui-color-text-placeholder)}.text-color-primary{color:var(--bcm-ui-color-text-primary)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\\:text-color-primary:hover{color:var(--bcm-ui-color-text-primary)}";const l=class{constructor(i){t(this,i);this.bcmTabSelected=e(this,"bcmTabSelected",1);this.active=false;this.size="medium";this.disabled=false;this.variant="full-width";this.smooth=true;this.class=r({slots:{tab:"bcm-ui-element text-center flex flex-row justify-center items-center font-medium py-1 px-3 border-none bg-transparent",borderLine:"bottom-0 left-0 right-0 h-[2px]"},variants:{size:{small:{tab:"text-size-4 gap-2"},medium:{tab:"text-size-5 gap-2.5"},large:{tab:"text-size-6 gap-3"}},active:{true:{tab:"text-color-primary"},false:{tab:"text-color-placeholder"}},disabled:{true:{tab:"cursor-not-allowed text-color-disabled",borderLine:"bg-[--bcm-ui-color-text-disabled]"},false:{tab:"cursor-pointer text-color hover:text-color-primary",borderLine:"bg-[--bcm-ui-color-text-placeholder]"}},variant:{"full-width":{tab:"w-full",borderLine:"w-full"},"auto-width":{tab:"w-auto",borderLine:"w-full"}},smooth:{true:{tab:"transition-all duration-200 ease-in-out",borderLine:"transition-all duration-200 ease-in-out"},false:{tab:"",borderLine:""}}},defaultVariants:{size:"medium",active:false,disabled:false,variant:"full-width",smooth:true}},{twMerge:false})}handleClick(){if(this.disabled)return;this.bcmTabSelected.emit(this.value)}render(){const{tab:t,borderLine:e}=this.class({size:this.size,active:this.active,disabled:this.disabled,variant:this.variant,smooth:this.smooth});return i(o,{key:"10afdebb01a40818e4d831ab4a196b7a9a1f1cf2",role:"tab","aria-selected":this.active.toString(),"aria-disabled":this.disabled},i("button",{key:"4a724b9c1dff6f9943a38a0500de7c5f2df837c2",class:t(),disabled:this.disabled,part:"tab",onClick:()=>this.handleClick()},i("slot",{key:"f1685a3d23aaa9a148dd5ecd8d65d24eaff335bc"})),i("div",{key:"2f8bc2b90b56fa549a7b564efe9dcf4e87e5e472",class:e()}))}get el(){return a(this)}};l.style=s;export{l as bcm_tabs_trigger};
2
- //# sourceMappingURL=p-8d74249a.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["tabsTriggerCss","BcmTabsTrigger","constructor","hostRef","this","active","size","disabled","variant","smooth","class","tv","slots","tab","borderLine","variants","small","medium","large","true","false","defaultVariants","twMerge","handleClick","bcmTabSelected","emit","value","render","h","Host","key","role","toString","part","onClick"],"sources":["src/components/tabs/tabs-trigger.css?tag=bcm-tabs-trigger&encapsulation=shadow","src/components/tabs/tabs-trigger.component.tsx"],"sourcesContent":[":host {\n position: relative;\n display: block;\n}\n\n:host([variant='full-width']) {\n width: 100%;\n}\n\n:host([variant='auto-width']) {\n width: auto;\n}\n","import { Component, Prop, h, Host, Element, Event, EventEmitter, ComponentInterface } from '@stencil/core';\nimport { tv } from '@utils/tv';\n\n/**\n * @description Tab trigger component that functions as a clickable tab button\n * @slot - Default slot for tab label content\n */\n@Component({\n tag: 'bcm-tabs-trigger',\n styleUrl: 'tabs-trigger.css',\n shadow: true,\n})\nexport class BcmTabsTrigger implements ComponentInterface {\n /**\n * Reference to the host element\n */\n @Element() el: HTMLElement;\n\n /**\n * Unique identifier value for the tab\n */\n @Prop({ reflect: true })\n value: string;\n\n /**\n * Whether the tab is currently active\n */\n @Prop({ reflect: true })\n active: boolean = false;\n\n /**\n * Size of the tab\n */\n @Prop({ reflect: true })\n size: 'small' | 'medium' | 'large' = 'medium';\n\n /**\n * Whether the tab is disabled\n */\n @Prop({ reflect: true })\n disabled: boolean = false;\n\n /**\n * Tab variant - controls width behavior\n */\n @Prop({ reflect: true })\n variant: 'full-width' | 'auto-width' = 'full-width';\n\n /**\n * Whether to enable smooth animations for transitions\n */\n @Prop({ reflect: true })\n smooth: boolean = true;\n\n /**\n * Event emitted when this tab is selected\n */\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n eventName: 'bcmTabSelected',\n })\n bcmTabSelected: EventEmitter<string>;\n\n /**\n * Handles click events on the tab\n * Emits bcmTabSelected event with tab value if not disabled\n */\n private handleClick() {\n if (this.disabled) return;\n this.bcmTabSelected.emit(this.value);\n }\n\n /**\n * Tailwind variants configuration for styling\n */\n private class = tv(\n {\n slots: {\n tab: 'bcm-ui-element text-center flex flex-row justify-center items-center font-medium py-1 px-3 border-none bg-transparent',\n borderLine: 'bottom-0 left-0 right-0 h-[2px]',\n },\n variants: {\n size: {\n small: { tab: 'text-size-4 gap-2' },\n medium: { tab: 'text-size-5 gap-2.5' },\n large: { tab: 'text-size-6 gap-3' },\n },\n active: {\n true: {\n tab: 'text-color-primary',\n },\n false: {\n tab: 'text-color-placeholder',\n },\n },\n disabled: {\n true: {\n tab: 'cursor-not-allowed text-color-disabled',\n borderLine: 'bg-[--bcm-ui-color-text-disabled]',\n },\n false: {\n tab: 'cursor-pointer text-color hover:text-color-primary',\n borderLine: 'bg-[--bcm-ui-color-text-placeholder]',\n },\n },\n variant: {\n 'full-width': {\n tab: 'w-full',\n borderLine: 'w-full',\n },\n 'auto-width': {\n tab: 'w-auto',\n borderLine: 'w-full',\n },\n },\n smooth: {\n true: {\n tab: 'transition-all duration-200 ease-in-out',\n borderLine: 'transition-all duration-200 ease-in-out',\n },\n false: {\n tab: '',\n borderLine: '',\n },\n },\n },\n defaultVariants: {\n size: 'medium',\n active: false,\n disabled: false,\n variant: 'full-width',\n smooth: true,\n },\n },\n {\n twMerge: false,\n },\n );\n\n render() {\n const { tab, borderLine } = this.class({\n size: this.size,\n active: this.active,\n disabled: this.disabled,\n variant: this.variant,\n smooth: this.smooth,\n });\n return (\n <Host role=\"tab\" aria-selected={this.active.toString()} aria-disabled={this.disabled}>\n <button class={tab()} disabled={this.disabled} part=\"tab\" onClick={() => this.handleClick()}>\n <slot />\n </button>\n <div class={borderLine()}></div>\n </Host>\n );\n }\n}\n"],"mappings":"+FAAA,MAAMA,EAAiB,+gE,MCYVC,EAAc,MAL3B,WAAAC,CAAAC,G,yDAqBEC,KAAMC,OAAY,MAMlBD,KAAIE,KAAiC,SAMrCF,KAAQG,SAAY,MAMpBH,KAAOI,QAAgC,aAMvCJ,KAAMK,OAAY,KAyBVL,KAAKM,MAAGC,EACd,CACEC,MAAO,CACLC,IAAK,wHACLC,WAAY,mCAEdC,SAAU,CACRT,KAAM,CACJU,MAAO,CAAEH,IAAK,qBACdI,OAAQ,CAAEJ,IAAK,uBACfK,MAAO,CAAEL,IAAK,sBAEhBR,OAAQ,CACNc,KAAM,CACJN,IAAK,sBAEPO,MAAO,CACLP,IAAK,2BAGTN,SAAU,CACRY,KAAM,CACJN,IAAK,yCACLC,WAAY,qCAEdM,MAAO,CACLP,IAAK,qDACLC,WAAY,yCAGhBN,QAAS,CACP,aAAc,CACZK,IAAK,SACLC,WAAY,UAEd,aAAc,CACZD,IAAK,SACLC,WAAY,WAGhBL,OAAQ,CACNU,KAAM,CACJN,IAAK,0CACLC,WAAY,2CAEdM,MAAO,CACLP,IAAK,GACLC,WAAY,MAIlBO,gBAAiB,CACff,KAAM,SACND,OAAQ,MACRE,SAAU,MACVC,QAAS,aACTC,OAAQ,OAGZ,CACEa,QAAS,OAqBd,CAzFS,WAAAC,GACN,GAAInB,KAAKG,SAAU,OACnBH,KAAKoB,eAAeC,KAAKrB,KAAKsB,M,CAsEhC,MAAAC,GACE,MAAMd,IAAEA,EAAGC,WAAEA,GAAeV,KAAKM,MAAM,CACrCJ,KAAMF,KAAKE,KACXD,OAAQD,KAAKC,OACbE,SAAUH,KAAKG,SACfC,QAASJ,KAAKI,QACdC,OAAQL,KAAKK,SAEf,OACEmB,EAACC,EAAK,CAAAC,IAAA,2CAAAC,KAAK,MAAK,gBAAgB3B,KAAKC,OAAO2B,WAA2B,gBAAA5B,KAAKG,UAC1EqB,EAAQ,UAAAE,IAAA,2CAAApB,MAAOG,IAAON,SAAUH,KAAKG,SAAU0B,KAAK,MAAMC,QAAS,IAAM9B,KAAKmB,eAC5EK,EAAA,QAAAE,IAAA,8CAEFF,EAAA,OAAAE,IAAA,2CAAKpB,MAAOI,M","ignoreList":[]}
@@ -1,3 +0,0 @@
1
- const o="bromcom-ui";const c={hydratedSelectorName:"hydrated",lazyLoad:true,slotRelocation:true,updatable:true};function r(o){const c=document.head;const r=document.createElement("script");Object.keys(o).forEach((c=>{r[c]=o[c]}));c.appendChild(r)}r({src:"https://kit.fontawesome.com/5e86bea963.js",crossOrigin:"anonymous"});const e="https://designsystem.bromcomcloud.com/fontawesome/6/css/all.min.css";customElements.define("bcm-icon",class extends HTMLElement{constructor(){super();const o=this.attachShadow({mode:"open"});o.innerHTML=`\n <link rel="stylesheet" href="${e}"/>\n <i></i>\n `}static get observedAttributes(){return["name","icon-name"]}attributeChangedCallback(o,c,r){if((o==="name"||o==="icon-name")&&c!==r){this.icon=r}}get icon(){return this.getAttribute("name")||this.getAttribute("icon-name")}set icon(o){this.shadowRoot.querySelector("i").className=`${o}`}connectedCallback(){this.style.display="inline-block";this.icon=this.icon}});const l=()=>{};const t=l;const i='@tailwind components;@tailwind utilities;*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:1px;--tw-ring-offset-color:#fff;--tw-ring-color:var(--bcm-ui-color-ring-default);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:1px;--tw-ring-offset-color:#fff;--tw-ring-color:var(--bcm-ui-color-ring-default);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-shake{animation:shake .82s cubic-bezier(.36,.07,.19,.97) infinite}.font-sans{font-family:Inter,sans-serif}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-8px)}20%,40%,60%,80%{transform:translateX(8px)}}.animate-shake{animation:shake .3s cubic-bezier(.36,.07,.19,.97) both}:root{--bcm-ui-color-text-base:#fff;--bcm-ui-color-text-header:var(--bcm-color-secondary-800);--bcm-ui-color-text-default:var(--bcm-color-secondary-700);--bcm-ui-color-text-label:var(--bcm-color-secondary-700);--bcm-ui-color-text-helper:var(--bcm-color-secondary-500);--bcm-ui-color-text-placeholder:var(--bcm-color-secondary-500);--bcm-ui-color-text-caption:var(--bcm-color-secondary-600);--bcm-ui-color-text-icon-default:var(--bcm-color-secondary-600);--bcm-ui-color-text-icon-dark:var(--bcm-color-secondary-700);--bcm-ui-color-text-primary:var(--bcm-color-primary-700);--bcm-ui-color-text-info:var(--bcm-color-info-700);--bcm-ui-color-text-success:var(--bcm-color-success-700);--bcm-ui-color-text-warning:var(--bcm-color-warning-700);--bcm-ui-color-text-error:var(--bcm-color-error-700);--bcm-ui-color-text-disabled:var(--bcm-color-secondary-500);--bcm-ui-color-text-visited:oklch(0.496 0.265 301.924);--bcm-ui-color-border-base:#fff;--bcm-ui-color-border-default:var(--bcm-color-secondary-300);--bcm-ui-color-border-default-alt:var(--bcm-color-secondary-600);--bcm-ui-color-border-focus:var(--bcm-color-primary-800);--bcm-ui-color-border-disabled:var(--bcm-color-secondary-300);--bcm-ui-color-border-primary:var(--bcm-color-primary-700);--bcm-ui-color-border-info:var(--bcm-color-info-700);--bcm-ui-color-border-success:var(--bcm-color-success-700);--bcm-ui-color-border-warning:var(--bcm-color-warning-700);--bcm-ui-color-border-error:var(--bcm-color-error-700);--bcm-ui-color-background-basic-masterpage:oklch(0.985 0.002 247.839);--bcm-ui-color-background-basic-card:#fff;--bcm-ui-color-background-basic-modal:#fff;--bcm-ui-color-background-basic-panel:#fff;--bcm-ui-color-background-basic-base:#fff;--bcm-ui-color-background-disabled-default:var(--bcm-color-secondary-300);--bcm-ui-color-background-base-default:#fff;--bcm-ui-color-background-base-hover:var(--bcm-color-secondary-100);--bcm-ui-color-background-base-active:var(--bcm-color-secondary-200);--bcm-ui-color-background-default-default:var(--bcm-color-secondary-100);--bcm-ui-color-background-default-hover:var(--bcm-color-secondary-200);--bcm-ui-color-background-default-active:var(--bcm-color-secondary-300);--bcm-ui-color-background-default-dark-default:var(--bcm-color-secondary-700);--bcm-ui-color-background-default-dark-hover:var(--bcm-color-secondary-800);--bcm-ui-color-background-default-dark-active:var(--bcm-color-secondary-900);--bcm-ui-color-background-primary-default:var(--bcm-color-primary-700);--bcm-ui-color-background-primary-hover:var(--bcm-color-primary-800);--bcm-ui-color-background-primary-active:var(--bcm-color-primary-900);--bcm-ui-color-background-info-default:var(--bcm-color-info-700);--bcm-ui-color-background-info-hover:var(--bcm-color-info-800);--bcm-ui-color-background-info-active:var(--bcm-color-info-900);--bcm-ui-color-background-success-default:var(--bcm-color-success-700);--bcm-ui-color-background-success-hover:var(--bcm-color-success-800);--bcm-ui-color-background-success-active:var(--bcm-color-success-900);--bcm-ui-color-background-warning-default:var(--bcm-color-warning-700);--bcm-ui-color-background-warning-hover:var(--bcm-color-warning-800);--bcm-ui-color-background-warning-active:var(--bcm-color-warning-900);--bcm-ui-color-background-error-default:var(--bcm-color-error-700);--bcm-ui-color-background-error-hover:var(--bcm-color-error-800);--bcm-ui-color-background-error-active:var(--bcm-color-error-900);--bcm-ui-color-ring-default:var(--bcm-color-primary-700);--bcm-ui-color-background-transparent-default:rgba(0,0,0,.4);--bcm-ui-color-text-palette-primary:var(--bcm-color-primary-700);--bcm-ui-color-text-palette-info:var(--bcm-color-info-700);--bcm-ui-color-text-palette-success:var(--bcm-color-success-700);--bcm-ui-color-text-palette-warning:var(--bcm-color-warning-700);--bcm-ui-color-text-palette-error:var(--bcm-color-error-700);--bcm-ui-color-text-palette-slate:oklch(0.372 0.044 257.287);--bcm-ui-color-text-palette-gray:oklch(0.373 0.034 259.733);--bcm-ui-color-text-palette-zinc:oklch(0.37 0.013 285.805);--bcm-ui-color-text-palette-neutral:oklch(0.371 0 0);--bcm-ui-color-text-palette-stone:oklch(0.374 0.01 67.558);--bcm-ui-color-text-palette-red:oklch(0.505 0.213 27.518);--bcm-ui-color-text-palette-orange:oklch(0.553 0.195 38.402);--bcm-ui-color-text-palette-amber:oklch(0.555 0.163 48.998);--bcm-ui-color-text-palette-yellow:oklch(0.554 0.135 66.442);--bcm-ui-color-text-palette-lime:oklch(0.532 0.157 131.589);--bcm-ui-color-text-palette-green:oklch(0.527 0.154 150.069);--bcm-ui-color-text-palette-emerald:oklch(0.508 0.118 165.612);--bcm-ui-color-text-palette-teal:oklch(0.511 0.096 186.391);--bcm-ui-color-text-palette-cyan:oklch(0.52 0.105 223.128);--bcm-ui-color-text-palette-sky:oklch(0.5 0.134 242.749);--bcm-ui-color-text-palette-blue:oklch(0.488 0.243 264.376);--bcm-ui-color-text-palette-indigo:oklch(0.457 0.24 277.023);--bcm-ui-color-text-palette-violet:oklch(0.491 0.27 292.581);--bcm-ui-color-text-palette-purple:oklch(0.496 0.265 301.924);--bcm-ui-color-text-palette-fuchsia:oklch(0.518 0.253 323.949);--bcm-ui-color-text-palette-pink:oklch(0.525 0.223 3.958);--bcm-ui-color-text-palette-rose:oklch(0.514 0.222 16.935);--bcm-ui-color-border-palette-primary:var(--bcm-color-primary-700);--bcm-ui-color-border-palette-info:var(--bcm-color-info-700);--bcm-ui-color-border-palette-success:var(--bcm-color-success-700);--bcm-ui-color-border-palette-warning:var(--bcm-color-warning-700);--bcm-ui-color-border-palette-error:var(--bcm-color-error-700);--bcm-ui-color-border-palette-slate:oklch(0.372 0.044 257.287);--bcm-ui-color-border-palette-gray:oklch(0.373 0.034 259.733);--bcm-ui-color-border-palette-zinc:oklch(0.37 0.013 285.805);--bcm-ui-color-border-palette-neutral:oklch(0.371 0 0);--bcm-ui-color-border-palette-stone:oklch(0.374 0.01 67.558);--bcm-ui-color-border-palette-red:oklch(0.505 0.213 27.518);--bcm-ui-color-border-palette-orange:oklch(0.553 0.195 38.402);--bcm-ui-color-border-palette-amber:oklch(0.555 0.163 48.998);--bcm-ui-color-border-palette-yellow:oklch(0.554 0.135 66.442);--bcm-ui-color-border-palette-lime:oklch(0.532 0.157 131.589);--bcm-ui-color-border-palette-green:oklch(0.527 0.154 150.069);--bcm-ui-color-border-palette-emerald:oklch(0.508 0.118 165.612);--bcm-ui-color-border-palette-teal:oklch(0.511 0.096 186.391);--bcm-ui-color-border-palette-cyan:oklch(0.52 0.105 223.128);--bcm-ui-color-border-palette-sky:oklch(0.5 0.134 242.749);--bcm-ui-color-border-palette-blue:oklch(0.488 0.243 264.376);--bcm-ui-color-border-palette-indigo:oklch(0.457 0.24 277.023);--bcm-ui-color-border-palette-violet:oklch(0.491 0.27 292.581);--bcm-ui-color-border-palette-purple:oklch(0.496 0.265 301.924);--bcm-ui-color-border-palette-fuchsia:oklch(0.518 0.253 323.949);--bcm-ui-color-border-palette-pink:oklch(0.525 0.223 3.958);--bcm-ui-color-border-palette-rose:oklch(0.514 0.222 16.935);--bcm-ui-color-background-vivid-primary-default:var(--bcm-color-primary-700);--bcm-ui-color-background-vivid-primary-hover:var(--bcm-color-primary-800);--bcm-ui-color-background-vivid-primary-active:var(--bcm-color-primary-900);--bcm-ui-color-background-vivid-info-default:var(--bcm-color-info-700);--bcm-ui-color-background-vivid-info-hover:var(--bcm-color-info-800);--bcm-ui-color-background-vivid-info-active:var(--bcm-color-info-900);--bcm-ui-color-background-vivid-success-default:var(--bcm-color-success-700);--bcm-ui-color-background-vivid-success-hover:var(--bcm-color-success-800);--bcm-ui-color-background-vivid-success-active:var(--bcm-color-success-900);--bcm-ui-color-background-vivid-warning-default:var(--bcm-color-warning-700);--bcm-ui-color-background-vivid-warning-hover:var(--bcm-color-warning-800);--bcm-ui-color-background-vivid-warning-active:var(--bcm-color-warning-900);--bcm-ui-color-background-vivid-error-default:var(--bcm-color-error-700);--bcm-ui-color-background-vivid-error-hover:var(--bcm-color-error-800);--bcm-ui-color-background-vivid-error-active:var(--bcm-color-error-900);--bcm-ui-color-background-vivid-slate-default:oklch(0.372 0.044 257.287);--bcm-ui-color-background-vivid-slate-hover:oklch(0.279 0.041 260.031);--bcm-ui-color-background-vivid-slate-active:oklch(0.208 0.042 265.755);--bcm-ui-color-background-vivid-gray-default:oklch(0.373 0.034 259.733);--bcm-ui-color-background-vivid-gray-hover:oklch(0.278 0.033 256.848);--bcm-ui-color-background-vivid-gray-active:oklch(0.21 0.034 264.665);--bcm-ui-color-background-vivid-zinc-default:oklch(0.37 0.013 285.805);--bcm-ui-color-background-vivid-zinc-hover:oklch(0.274 0.006 286.033);--bcm-ui-color-background-vivid-zinc-active:oklch(0.21 0.006 285.885);--bcm-ui-color-background-vivid-neutral-default:oklch(0.371 0 0);--bcm-ui-color-background-vivid-neutral-hover:oklch(0.269 0 0);--bcm-ui-color-background-vivid-neutral-active:oklch(0.205 0 0);--bcm-ui-color-background-vivid-stone-default:oklch(0.374 0.01 67.558);--bcm-ui-color-background-vivid-stone-hover:oklch(0.268 0.007 34.298);--bcm-ui-color-background-vivid-stone-active:oklch(0.216 0.006 56.043);--bcm-ui-color-background-vivid-red-default:oklch(0.505 0.213 27.518);--bcm-ui-color-background-vivid-red-hover:oklch(0.444 0.177 26.899);--bcm-ui-color-background-vivid-red-active:oklch(0.396 0.141 25.723);--bcm-ui-color-background-vivid-orange-default:oklch(0.553 0.195 38.402);--bcm-ui-color-background-vivid-orange-hover:oklch(0.47 0.157 37.304);--bcm-ui-color-background-vivid-orange-active:oklch(0.408 0.123 38.172);--bcm-ui-color-background-vivid-amber-default:oklch(0.555 0.163 48.998);--bcm-ui-color-background-vivid-amber-hover:oklch(0.473 0.137 46.201);--bcm-ui-color-background-vivid-amber-active:oklch(0.414 0.112 45.904);--bcm-ui-color-background-vivid-yellow-default:oklch(0.554 0.135 66.442);--bcm-ui-color-background-vivid-yellow-hover:oklch(0.476 0.114 61.907);--bcm-ui-color-background-vivid-yellow-active:oklch(0.421 0.095 57.708);--bcm-ui-color-background-vivid-lime-default:oklch(0.532 0.157 131.589);--bcm-ui-color-background-vivid-lime-hover:oklch(0.453 0.124 130.933);--bcm-ui-color-background-vivid-lime-active:oklch(0.405 0.101 131.063);--bcm-ui-color-background-vivid-green-default:oklch(0.527 0.154 150.069);--bcm-ui-color-background-vivid-green-hover:oklch(0.448 0.119 151.328);--bcm-ui-color-background-vivid-green-active:oklch(0.393 0.095 152.535);--bcm-ui-color-background-vivid-emerald-default:oklch(0.508 0.118 165.612);--bcm-ui-color-background-vivid-emerald-hover:oklch(0.432 0.095 166.913);--bcm-ui-color-background-vivid-emerald-active:oklch(0.378 0.077 168.94);--bcm-ui-color-background-vivid-teal-default:oklch(0.511 0.096 186.391);--bcm-ui-color-background-vivid-teal-hover:oklch(0.437 0.078 188.216);--bcm-ui-color-background-vivid-teal-active:oklch(0.386 0.063 188.416);--bcm-ui-color-background-vivid-cyan-default:oklch(0.52 0.105 223.128);--bcm-ui-color-background-vivid-cyan-hover:oklch(0.45 0.085 224.283);--bcm-ui-color-background-vivid-cyan-active:oklch(0.398 0.07 227.392);--bcm-ui-color-background-vivid-sky-default:oklch(0.5 0.134 242.749);--bcm-ui-color-background-vivid-sky-hover:oklch(0.443 0.11 240.79);--bcm-ui-color-background-vivid-sky-active:oklch(0.391 0.09 240.876);--bcm-ui-color-background-vivid-blue-default:oklch(0.488 0.243 264.376);--bcm-ui-color-background-vivid-blue-hover:oklch(0.424 0.199 265.638);--bcm-ui-color-background-vivid-blue-active:oklch(0.379 0.146 265.522);--bcm-ui-color-background-vivid-indigo-default:oklch(0.457 0.24 277.023);--bcm-ui-color-background-vivid-indigo-hover:oklch(0.398 0.195 277.366);--bcm-ui-color-background-vivid-indigo-active:oklch(0.359 0.144 278.697);--bcm-ui-color-background-vivid-violet-default:oklch(0.491 0.27 292.581);--bcm-ui-color-background-vivid-violet-hover:oklch(0.432 0.232 292.759);--bcm-ui-color-background-vivid-violet-active:oklch(0.38 0.189 293.745);--bcm-ui-color-background-vivid-purple-default:oklch(0.496 0.265 301.924);--bcm-ui-color-background-vivid-purple-hover:oklch(0.438 0.218 303.724);--bcm-ui-color-background-vivid-purple-active:oklch(0.381 0.176 304.987);--bcm-ui-color-background-vivid-fuchsia-default:oklch(0.518 0.253 323.949);--bcm-ui-color-background-vivid-fuchsia-hover:oklch(0.452 0.211 324.591);--bcm-ui-color-background-vivid-fuchsia-active:oklch(0.401 0.17 325.612);--bcm-ui-color-background-vivid-pink-default:oklch(0.525 0.223 3.958);--bcm-ui-color-background-vivid-pink-hover:oklch(0.459 0.187 3.815);--bcm-ui-color-background-vivid-pink-active:oklch(0.408 0.153 2.432);--bcm-ui-color-background-vivid-rose-default:oklch(0.514 0.222 16.935);--bcm-ui-color-background-vivid-rose-hover:oklch(0.455 0.188 13.697);--bcm-ui-color-background-vivid-rose-active:oklch(0.41 0.159 10.272);--bcm-ui-color-background-soft-primary-default:var(--bcm-color-primary-50);--bcm-ui-color-background-soft-info-default:var(--bcm-color-info-50);--bcm-ui-color-background-soft-success-default:var(--bcm-color-success-50);--bcm-ui-color-background-soft-warning-default:var(--bcm-color-warning-50);--bcm-ui-color-background-soft-error-default:var(--bcm-color-error-50);--bcm-ui-color-background-soft-slate-default:oklch(0.984 0.003 247.858);--bcm-ui-color-background-soft-gray-default:oklch(0.985 0.002 247.839);--bcm-ui-color-background-soft-zinc-default:oklch(0.985 0 0);--bcm-ui-color-background-soft-neutral-default:oklch(0.985 0 0);--bcm-ui-color-background-soft-stone-default:oklch(0.985 0.001 106.423);--bcm-ui-color-background-soft-red-default:oklch(0.971 0.013 17.38);--bcm-ui-color-background-soft-orange-default:oklch(0.98 0.016 73.684);--bcm-ui-color-background-soft-amber-default:oklch(0.987 0.022 95.277);--bcm-ui-color-background-soft-yellow-default:oklch(0.987 0.026 102.212);--bcm-ui-color-background-soft-lime-default:oklch(0.986 0.031 120.757);--bcm-ui-color-background-soft-green-default:oklch(0.982 0.018 155.826);--bcm-ui-color-background-soft-emerald-default:oklch(0.979 0.021 166.113);--bcm-ui-color-background-soft-teal-default:oklch(0.984 0.014 180.72);--bcm-ui-color-background-soft-cyan-default:oklch(0.984 0.019 200.873);--bcm-ui-color-background-soft-sky-default:oklch(0.977 0.013 236.62);--bcm-ui-color-background-soft-blue-default:oklch(0.97 0.014 254.604);--bcm-ui-color-background-soft-indigo-default:oklch(0.962 0.018 272.314);--bcm-ui-color-background-soft-violet-default:oklch(0.969 0.016 293.756);--bcm-ui-color-background-soft-purple-default:oklch(0.977 0.014 308.299);--bcm-ui-color-background-soft-fuchsia-default:oklch(0.977 0.017 320.058);--bcm-ui-color-background-soft-pink-default:oklch(0.971 0.014 343.198);--bcm-ui-color-background-soft-rose-default:oklch(0.969 0.015 12.422);--bcm-ui-color-background-palette-primary-default:var(--bcm-color-primary-100);--bcm-ui-color-background-palette-primary-hover:var(--bcm-color-primary-200);--bcm-ui-color-background-palette-primary-active:var(--bcm-color-primary-300);--bcm-ui-color-background-palette-info-default:var(--bcm-color-info-100);--bcm-ui-color-background-palette-info-hover:var(--bcm-color-info-200);--bcm-ui-color-background-palette-info-active:var(--bcm-color-info-300);--bcm-ui-color-background-palette-success-default:var(--bcm-color-success-100);--bcm-ui-color-background-palette-success-hover:var(--bcm-color-success-200);--bcm-ui-color-background-palette-success-active:var(--bcm-color-success-300);--bcm-ui-color-background-palette-warning-default:var(--bcm-color-warning-100);--bcm-ui-color-background-palette-warning-hover:var(--bcm-color-warning-200);--bcm-ui-color-background-palette-warning-active:var(--bcm-color-warning-300);--bcm-ui-color-background-palette-error-default:var(--bcm-color-error-100);--bcm-ui-color-background-palette-error-hover:var(--bcm-color-error-200);--bcm-ui-color-background-palette-error-active:var(--bcm-color-error-300);--bcm-ui-color-background-palette-slate-default:oklch(0.968 0.007 247.896);--bcm-ui-color-background-palette-slate-hover:oklch(0.929 0.013 255.508);--bcm-ui-color-background-palette-slate-active:oklch(0.869 0.022 252.894);--bcm-ui-color-background-palette-gray-default:oklch(0.967 0.003 264.542);--bcm-ui-color-background-palette-gray-hover:oklch(0.928 0.006 264.531);--bcm-ui-color-background-palette-gray-active:oklch(0.872 0.01 258.338);--bcm-ui-color-background-palette-zinc-default:oklch(0.967 0.001 286.375);--bcm-ui-color-background-palette-zinc-hover:oklch(0.92 0.004 286.32);--bcm-ui-color-background-palette-zinc-active:oklch(0.871 0.006 286.286);--bcm-ui-color-background-palette-neutral-default:oklch(0.97 0 0);--bcm-ui-color-background-palette-neutral-hover:oklch(0.922 0 0);--bcm-ui-color-background-palette-neutral-active:oklch(0.87 0 0);--bcm-ui-color-background-palette-stone-default:oklch(0.97 0.001 106.424);--bcm-ui-color-background-palette-stone-hover:oklch(0.923 0.003 48.717);--bcm-ui-color-background-palette-stone-active:oklch(0.869 0.005 56.366);--bcm-ui-color-background-palette-red-default:oklch(0.936 0.032 17.717);--bcm-ui-color-background-palette-red-hover:oklch(0.885 0.062 18.334);--bcm-ui-color-background-palette-red-active:oklch(0.808 0.114 19.571);--bcm-ui-color-background-palette-orange-default:oklch(0.954 0.038 75.164);--bcm-ui-color-background-palette-orange-hover:oklch(0.901 0.076 70.697);--bcm-ui-color-background-palette-orange-active:oklch(0.837 0.128 66.29);--bcm-ui-color-background-palette-amber-default:oklch(0.962 0.059 95.617);--bcm-ui-color-background-palette-amber-hover:oklch(0.924 0.12 95.746);--bcm-ui-color-background-palette-amber-active:oklch(0.879 0.169 91.605);--bcm-ui-color-background-palette-yellow-default:oklch(0.973 0.071 103.193);--bcm-ui-color-background-palette-yellow-hover:oklch(0.945 0.129 101.54);--bcm-ui-color-background-palette-yellow-active:oklch(0.905 0.182 98.111);--bcm-ui-color-background-palette-lime-default:oklch(0.967 0.067 122.328);--bcm-ui-color-background-palette-lime-hover:oklch(0.938 0.127 124.321);--bcm-ui-color-background-palette-lime-active:oklch(0.897 0.196 126.665);--bcm-ui-color-background-palette-green-default:oklch(0.962 0.044 156.743);--bcm-ui-color-background-palette-green-hover:oklch(0.925 0.084 155.995);--bcm-ui-color-background-palette-green-active:oklch(0.871 0.15 154.449);--bcm-ui-color-background-palette-emerald-default:oklch(0.95 0.052 163.051);--bcm-ui-color-background-palette-emerald-hover:oklch(0.905 0.093 164.15);--bcm-ui-color-background-palette-emerald-active:oklch(0.845 0.143 164.978);--bcm-ui-color-background-palette-teal-default:oklch(0.953 0.051 180.801);--bcm-ui-color-background-palette-teal-hover:oklch(0.91 0.096 180.426);--bcm-ui-color-background-palette-teal-active:oklch(0.855 0.138 181.071);--bcm-ui-color-background-palette-cyan-default:oklch(0.956 0.045 203.388);--bcm-ui-color-background-palette-cyan-hover:oklch(0.917 0.08 205.041);--bcm-ui-color-background-palette-cyan-active:oklch(0.865 0.127 207.078);--bcm-ui-color-background-palette-sky-default:oklch(0.951 0.026 236.824);--bcm-ui-color-background-palette-sky-hover:oklch(0.901 0.058 230.902);--bcm-ui-color-background-palette-sky-active:oklch(0.828 0.111 230.318);--bcm-ui-color-background-palette-blue-default:oklch(0.932 0.032 255.585);--bcm-ui-color-background-palette-blue-hover:oklch(0.882 0.059 254.128);--bcm-ui-color-background-palette-blue-active:oklch(0.809 0.105 251.813);--bcm-ui-color-background-palette-indigo-default:oklch(0.93 0.034 272.788);--bcm-ui-color-background-palette-indigo-hover:oklch(0.87 0.065 274.039);--bcm-ui-color-background-palette-indigo-active:oklch(0.785 0.115 274.713);--bcm-ui-color-background-palette-violet-default:oklch(0.943 0.029 294.588);--bcm-ui-color-background-palette-violet-hover:oklch(0.894 0.057 293.283);--bcm-ui-color-background-palette-violet-active:oklch(0.811 0.111 293.571);--bcm-ui-color-background-palette-purple-default:oklch(0.946 0.033 307.174);--bcm-ui-color-background-palette-purple-hover:oklch(0.902 0.063 306.703);--bcm-ui-color-background-palette-purple-active:oklch(0.827 0.119 306.383);--bcm-ui-color-background-palette-fuchsia-default:oklch(0.952 0.037 318.852);--bcm-ui-color-background-palette-fuchsia-hover:oklch(0.903 0.076 319.62);--bcm-ui-color-background-palette-fuchsia-active:oklch(0.833 0.145 321.434);--bcm-ui-color-background-palette-pink-default:oklch(0.948 0.028 342.258);--bcm-ui-color-background-palette-pink-hover:oklch(0.899 0.061 343.231);--bcm-ui-color-background-palette-pink-active:oklch(0.823 0.12 346.018);--bcm-ui-color-background-palette-rose-default:oklch(0.941 0.03 12.58);--bcm-ui-color-background-palette-rose-hover:oklch(0.892 0.058 10.001);--bcm-ui-color-background-palette-rose-active:oklch(0.81 0.117 11.638);--bcm-ui-box-shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--bcm-ui-box-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--bcm-ui-box-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--bcm-ui-box-shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--bcm-ui-box-shadow-2xl:0 25px 50px -12px rgba(0,0,0,.25);--bcm-ui-box-shadow-inner:inset 0 2px 4px 0 rgba(0,0,0,.05);--bcm-ui-box-shadow-none:none;--bcm-ui-box-shadow-default:0 4px 12px 0 rgba(17,24,39,.1),0 1px 2px -1px rgba(0,0,0,.1);--bcm-ui-box-shadow-2:0px 1px 3px 0px rgba(0,0,0,.1),0px 1px 2px -1px rgba(0,0,0,.1);--bcm-ui-box-shadow-3:0px 4px 6px -1px rgba(0,0,0,.1),0px 2px 4px -2px rgba(0,0,0,.1);--bcm-ui-box-shadow-4:0px 10px 15px -3px rgba(0,0,0,.1),0px 4px 6px -4px rgba(0,0,0,.1);--bcm-ui-font-size-1:0.5rem;--bcm-ui-font-size-2:0.625rem;--bcm-ui-font-size-3:0.75rem;--bcm-ui-font-size-4:0.875rem;--bcm-ui-font-size-5:1rem;--bcm-ui-font-size-6:1.125rem;--bcm-ui-font-size-7:1.25rem;--bcm-ui-font-size-8:1.5rem;--bcm-ui-font-size-9:2rem;--bcm-ui-font-size-10:2.25rem;--bcm-ui-font-size-11:3rem;--bcm-ui-font-size-12:3.75rem;--bcm-ui-font-size-13:4.5rem;--bcm-ui-font-size-14:6rem;--bcm-ui-font-size-inherit:inherit;--bcm-ui-line-height-1:0.625rem;--bcm-ui-line-height-2:0.75rem;--bcm-ui-line-height-3:1rem;--bcm-ui-line-height-4:1.25rem;--bcm-ui-line-height-5:1.5rem;--bcm-ui-line-height-6:1.5rem;--bcm-ui-line-height-7:1.75rem;--bcm-ui-line-height-8:2rem;--bcm-ui-line-height-9:2.25rem;--bcm-ui-line-height-10:2.75rem;--bcm-ui-line-height-11:4rem;--bcm-ui-line-height-12:4.5rem;--bcm-ui-line-height-13:5.625rem;--bcm-ui-line-height-14:6rem;--bcm-ui-line-height-inherit:inherit;--bcm-ui-border-radius-none:0;--bcm-ui-border-radius-xs:2px;--bcm-ui-border-radius-sm:4px;--bcm-ui-border-radius-md:6px;--bcm-ui-border-radius-lg:8px;--bcm-ui-border-radius-xl:12px;--bcm-ui-border-radius-2xl:16px;--bcm-ui-border-radius-3xl:24px;--bcm-ui-border-radius-4xl:32px;--bcm-ui-border-radius-full:9999px;--bcm-ui-border-radius-default:var(--bcm-ui-border-radius-md);--bcm-color-primary-50:oklch(0.97 0.014 254.604);--bcm-color-primary-100:oklch(0.932 0.032 255.585);--bcm-color-primary-200:oklch(0.882 0.059 254.128);--bcm-color-primary-300:oklch(0.809 0.105 251.813);--bcm-color-primary-400:oklch(0.707 0.165 254.624);--bcm-color-primary-500:oklch(0.623 0.214 259.815);--bcm-color-primary-600:oklch(0.546 0.245 262.881);--bcm-color-primary-700:oklch(0.488 0.243 264.376);--bcm-color-primary-800:oklch(0.424 0.199 265.638);--bcm-color-primary-900:oklch(0.379 0.146 265.522);--bcm-color-primary-950:oklch(0.282 0.091 267.935);--bcm-color-secondary-50:oklch(0.985 0.002 247.839);--bcm-color-secondary-100:oklch(0.967 0.003 264.542);--bcm-color-secondary-200:oklch(0.928 0.006 264.531);--bcm-color-secondary-300:oklch(0.872 0.01 258.338);--bcm-color-secondary-400:oklch(0.707 0.022 261.325);--bcm-color-secondary-500:oklch(0.551 0.027 264.364);--bcm-color-secondary-600:oklch(0.446 0.03 256.802);--bcm-color-secondary-700:oklch(0.373 0.034 259.733);--bcm-color-secondary-800:oklch(0.278 0.033 256.848);--bcm-color-secondary-900:oklch(0.21 0.034 264.665);--bcm-color-secondary-950:oklch(0.13 0.028 261.692);--bcm-color-info-50:oklch(0.97 0.014 254.604);--bcm-color-info-100:oklch(0.932 0.032 255.585);--bcm-color-info-200:oklch(0.882 0.059 254.128);--bcm-color-info-300:oklch(0.809 0.105 251.813);--bcm-color-info-400:oklch(0.707 0.165 254.624);--bcm-color-info-500:oklch(0.623 0.214 259.815);--bcm-color-info-600:oklch(0.546 0.245 262.881);--bcm-color-info-700:oklch(0.488 0.243 264.376);--bcm-color-info-800:oklch(0.424 0.199 265.638);--bcm-color-info-900:oklch(0.379 0.146 265.522);--bcm-color-info-950:oklch(0.282 0.091 267.935);--bcm-color-success-50:oklch(0.979 0.021 166.113);--bcm-color-success-100:oklch(0.95 0.052 163.051);--bcm-color-success-200:oklch(0.905 0.093 164.15);--bcm-color-success-300:oklch(0.845 0.143 164.978);--bcm-color-success-400:oklch(0.765 0.177 163.223);--bcm-color-success-500:oklch(0.696 0.17 162.48);--bcm-color-success-600:oklch(0.596 0.145 163.225);--bcm-color-success-700:oklch(0.508 0.118 165.612);--bcm-color-success-800:oklch(0.432 0.095 166.913);--bcm-color-success-900:oklch(0.378 0.077 168.94);--bcm-color-success-950:oklch(0.262 0.051 172.552);--bcm-color-warning-50:oklch(0.987 0.022 95.277);--bcm-color-warning-100:oklch(0.962 0.059 95.617);--bcm-color-warning-200:oklch(0.924 0.12 95.746);--bcm-color-warning-300:oklch(0.879 0.169 91.605);--bcm-color-warning-400:oklch(0.828 0.189 84.429);--bcm-color-warning-500:oklch(0.769 0.188 70.08);--bcm-color-warning-600:oklch(0.666 0.179 58.318);--bcm-color-warning-700:oklch(0.555 0.163 48.998);--bcm-color-warning-800:oklch(0.473 0.137 46.201);--bcm-color-warning-900:oklch(0.414 0.112 45.904);--bcm-color-warning-950:oklch(0.279 0.077 45.635);--bcm-color-error-50:oklch(0.971 0.013 17.38);--bcm-color-error-100:oklch(0.936 0.032 17.717);--bcm-color-error-200:oklch(0.885 0.062 18.334);--bcm-color-error-300:oklch(0.808 0.114 19.571);--bcm-color-error-400:oklch(0.704 0.191 22.216);--bcm-color-error-500:oklch(0.637 0.237 25.331);--bcm-color-error-600:oklch(0.577 0.245 27.325);--bcm-color-error-700:oklch(0.505 0.213 27.518);--bcm-color-error-800:oklch(0.444 0.177 26.899);--bcm-color-error-900:oklch(0.396 0.141 25.723);--bcm-color-error-950:oklch(0.258 0.092 26.042)}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@200;400;500;600&display=swap");';var a=Object.defineProperty;var n=(o,c)=>{for(var r in c)a(o,r,{get:c[r],enumerable:true})};var u=o=>{if(o.__stencil__getHostRef){return o.__stencil__getHostRef()}return void 0};var s=(o,c)=>{o.__stencil__getHostRef=()=>c;c.o=o};var b=(o,c)=>{const r={l:0,$hostElement$:o,t:c,i:new Map};{r.u=new Promise((o=>r.m=o))}{r.v=new Promise((o=>r.k=o));o["s-p"]=[];o["s-rc"]=[]}const e=r;o.__stencil__getHostRef=()=>e;return e};var d=(o,c)=>c in o;var m=(o,c)=>(0,console.error)(o,c);var f=new Map;var v=(o,c,r)=>{const e=o.h.replace(/-/g,"_");const l=o.p;if(!l){return void 0}const t=f.get(l);if(t){return t[e]}
2
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/return import(`./${l}.entry.js${""}`).then((o=>{{f.set(l,o)}return o[e]}),(o=>{m(o,c.$hostElement$)}))};var k=new Map;var h="{visibility:hidden}.hydrated{visibility:inherit}";var p="slot-fb{display:contents}slot-fb[hidden]{display:none}";var g="http://www.w3.org/1999/xlink";var w=typeof window!=="undefined"?window:{};var y={l:0,$:"",jmp:o=>o(),raf:o=>requestAnimationFrame(o),ael:(o,c,r,e)=>o.addEventListener(c,r,e),rel:(o,c,r,e)=>o.removeEventListener(c,r,e),ce:(o,c)=>new CustomEvent(o,c)};var x=(()=>{var o;let c=false;try{(o=w.document)==null?void 0:o.addEventListener("e",null,Object.defineProperty({},"passive",{get(){c=true}}))}catch(o){}return c})();var $=o=>Promise.resolve(o);var S=(()=>{try{new CSSStyleSheet;return typeof(new CSSStyleSheet).replaceSync==="function"}catch(o){}return false})();var z=S?(()=>!!w.document&&Object.getOwnPropertyDescriptor(w.document.adoptedStyleSheets,"length").writable)():false;var j=false;var O=[];var C=[];var E=(o,c)=>r=>{o.push(r);if(!j){j=true;if(c&&y.l&4){R(N)}else{y.raf(N)}}};var M=o=>{for(let c=0;c<o.length;c++){try{o[c](performance.now())}catch(o){m(o)}}o.length=0};var N=()=>{M(O);{M(C);if(j=O.length>0){y.raf(N)}}};var R=o=>$().then(o);var T=E(C,true);var L=o=>{o=typeof o;return o==="object"||o==="function"};function P(o){var c,r,e;return(e=(r=(c=o.head)==null?void 0:c.querySelector('meta[name="csp-nonce"]'))==null?void 0:r.getAttribute("content"))!=null?e:void 0}var F=o=>o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");var U={};n(U,{err:()=>D,map:()=>I,ok:()=>A,unwrap:()=>W,unwrapErr:()=>H});var A=o=>({isOk:true,isErr:false,value:o});var D=o=>({isOk:false,isErr:true,value:o});function I(o,c){if(o.isOk){const r=c(o.value);if(r instanceof Promise){return r.then((o=>A(o)))}else{return A(r)}}if(o.isErr){const c=o.value;return D(c)}throw"should never get here"}var W=o=>{if(o.isOk){return o.value}else{throw o.value}};var H=o=>{if(o.isErr){return o.value}else{throw o.value}};function X(o){if(!S)return void 0;const c=new CSSStyleSheet;c.replaceSync(o);return c}var _;function Y(o){var c;const r=this.attachShadow({mode:"open"});if(_===void 0)_=(c=X(i))!=null?c:null;if(_){if(z){r.adoptedStyleSheets.push(_)}else{r.adoptedStyleSheets=[...r.adoptedStyleSheets,_]}}}var B=o=>{const c=Z(o,"childNodes");if(o.tagName&&o.tagName.includes("-")&&o["s-cr"]&&o.tagName!=="SLOT-FB"){V(c,o.tagName).forEach((o=>{if(o.nodeType===1&&o.tagName==="SLOT-FB"){if(G(o,K(o),false).length){o.hidden=true}else{o.hidden=false}}}))}let r=0;for(r=0;r<c.length;r++){const o=c[r];if(o.nodeType===1&&Z(o,"childNodes").length){B(o)}}};var q=o=>{const c=[];for(let r=0;r<o.length;r++){const e=o[r]["s-nr"]||void 0;if(e&&e.isConnected){c.push(e)}}return c};function V(o,c,r){let e=0;let l=[];let t;for(;e<o.length;e++){t=o[e];if(t["s-sr"]&&(!c||t["s-hn"]===c)&&r===void 0){l.push(t)}l=[...l,...V(t.childNodes,c,r)]}return l}var G=(o,c,r=true)=>{const e=[];if(r&&o["s-sr"]||!o["s-sr"])e.push(o);let l=o;while(l=l.nextSibling){if(K(l)===c&&(r||!l["s-sr"]))e.push(l)}return e};var J=(o,c)=>{if(o.nodeType===1){if(o.getAttribute("slot")===null&&c===""){return true}if(o.getAttribute("slot")===c){return true}return false}if(o["s-sn"]===c){return true}return c===""};var K=o=>typeof o["s-sn"]==="string"?o["s-sn"]:o.nodeType===1&&o.getAttribute("slot")||void 0;function Q(o){if(o.assignedElements||o.assignedNodes||!o["s-sr"])return;const c=c=>function(o){const r=[];const e=this["s-sn"];if(o==null?void 0:o.flatten){console.error(`\n Flattening is not supported for Stencil non-shadow slots.\n You can use \`.childNodes\` to nested slot fallback content.\n If you have a particular use case, please open an issue on the Stencil repo.\n `)}const l=this["s-cr"].parentElement;const t=l.__childNodes?l.childNodes:q(l.childNodes);t.forEach((o=>{if(e===K(o)){r.push(o)}}));if(c){return r.filter((o=>o.nodeType===1))}return r}.bind(o);o.assignedElements=c(true);o.assignedNodes=c(false)}function Z(o,c){if("__"+c in o){const r=o["__"+c];if(typeof r!=="function")return r;return r.bind(o)}else{if(typeof o[c]!=="function")return o[c];return o[c].bind(o)}}var oo=(o,c="")=>{{return()=>{}}};var co=(o,c)=>{{return()=>{}}};var ro=new WeakMap;var eo=(o,c,r)=>{let e=k.get(o);if(S&&r){e=e||new CSSStyleSheet;if(typeof e==="string"){e=c}else{e.replaceSync(c)}}else{e=c}k.set(o,e)};var lo=(o,c,r)=>{var e;const l=io(c);const t=k.get(l);if(!w.document){return l}o=o.nodeType===11?o:w.document;if(t){if(typeof t==="string"){o=o.head||o;let r=ro.get(o);let i;if(!r){ro.set(o,r=new Set)}if(!r.has(l)){{i=w.document.createElement("style");i.innerHTML=t;const r=(e=y.S)!=null?e:P(w.document);if(r!=null){i.setAttribute("nonce",r)}if(!(c.l&1)){if(o.nodeName==="HEAD"){const c=o.querySelectorAll("link[rel=preconnect]");const r=c.length>0?c[c.length-1].nextSibling:o.querySelector("style");o.insertBefore(i,(r==null?void 0:r.parentNode)===o?r:null)}else if("host"in o){if(S){const c=new CSSStyleSheet;c.replaceSync(t);if(z){o.adoptedStyleSheets.unshift(c)}else{o.adoptedStyleSheets=[c,...o.adoptedStyleSheets]}}else{const c=o.querySelector("style");if(c){c.innerHTML=t+c.innerHTML}else{o.prepend(i)}}}else{o.append(i)}}if(c.l&1){o.insertBefore(i,null)}}if(c.l&4){i.innerHTML+=p}if(r){r.add(l)}}}else if(!o.adoptedStyleSheets.includes(t)){if(z){o.adoptedStyleSheets.push(t)}else{o.adoptedStyleSheets=[...o.adoptedStyleSheets,t]}}}return l};var to=o=>{const c=o.t;const r=o.$hostElement$;const e=c.l;const l=oo("attachStyles",c.h);const t=lo(r.shadowRoot?r.shadowRoot:r.getRootNode(),c);if(e&10){r["s-sc"]=t;r.classList.add(t+"-h")}l()};var io=(o,c)=>"sc-"+o.h;var ao=(o,c,...r)=>{let e=null;let l=null;let t=null;let i=false;let a=false;const n=[];const u=c=>{for(let r=0;r<c.length;r++){e=c[r];if(Array.isArray(e)){u(e)}else if(e!=null&&typeof e!=="boolean"){if(i=typeof o!=="function"&&!L(e)){e=String(e)}if(i&&a){n[n.length-1].j+=e}else{n.push(i?no(null,e):e)}a=i}}};u(r);if(c){if(c.key){l=c.key}if(c.name){t=c.name}{const o=c.className||c.class;if(o){c.class=typeof o!=="object"?o:Object.keys(o).filter((c=>o[c])).join(" ")}}}if(typeof o==="function"){return o(c===null?{}:c,n,bo)}const s=no(o,null);s.O=c;if(n.length>0){s.C=n}{s.M=l}{s.N=t}return s};var no=(o,c)=>{const r={l:0,R:o,j:c,T:null,C:null};{r.O=null}{r.M=null}{r.N=null}return r};var uo={};var so=o=>o&&o.R===uo;var bo={forEach:(o,c)=>o.map(mo).forEach(c),map:(o,c)=>o.map(mo).map(c).map(fo)};var mo=o=>({vattrs:o.O,vchildren:o.C,vkey:o.M,vname:o.N,vtag:o.R,vtext:o.j});var fo=o=>{if(typeof o.vtag==="function"){const c={...o.vattrs};if(o.vkey){c.key=o.vkey}if(o.vname){c.name=o.vname}return ao(o.vtag,c,...o.vchildren||[])}const c=no(o.vtag,o.vtext);c.O=o.vattrs;c.C=o.vchildren;c.M=o.vkey;c.N=o.vname;return c};var vo=o=>{const c=F(o);return new RegExp(`(^|[^@]|@(?!supports\\s+selector\\s*\\([^{]*?${c}))(${c}\\b)`,"g")};vo("::slotted");vo(":host");vo(":host-context");var ko=(o,c,r)=>{if(o!=null&&!L(o)){if(c&4){{return o==="false"?false:o===""||!!o}}if(c&2){return typeof o==="string"?parseFloat(o):typeof o==="number"?o:NaN}if(c&1){return String(o)}return o}return o};var ho=o=>{var c;return(c=u(o))==null?void 0:c.$hostElement$};var po=(o,c,r)=>{const e=ho(o);return{emit:o=>go(e,c,{bubbles:!!(r&4),composed:!!(r&2),cancelable:!!(r&1),detail:o})}};var go=(o,c,r)=>{const e=y.ce(c,r);o.dispatchEvent(e);return e};var wo=(o,c,r,e,l,t,i)=>{if(r===e){return}let a=d(o,c);let n=c.toLowerCase();if(c==="class"){const c=o.classList;const l=xo(r);let t=xo(e);{c.remove(...l.filter((o=>o&&!t.includes(o))));c.add(...t.filter((o=>o&&!l.includes(o))))}}else if(c==="style"){{for(const c in r){if(!e||e[c]==null){if(c.includes("-")){o.style.removeProperty(c)}else{o.style[c]=""}}}}for(const c in e){if(!r||e[c]!==r[c]){if(c.includes("-")){o.style.setProperty(c,e[c])}else{o.style[c]=e[c]}}}}else if(c==="key");else if(c==="ref"){if(e){e(o)}}else if(!a&&c[0]==="o"&&c[1]==="n"){if(c[2]==="-"){c=c.slice(3)}else if(d(w,n)){c=n.slice(2)}else{c=n[2]+c.slice(3)}if(r||e){const l=c.endsWith($o);c=c.replace(So,"");if(r){y.rel(o,c,r,l)}if(e){y.ael(o,c,e,l)}}}else{const i=L(e);if((a||i&&e!==null)&&true){try{if(!o.tagName.includes("-")){const l=e==null?"":e;if(c==="list"){a=false}else if(r==null||o[c]!=l){if(typeof o.__lookupSetter__(c)==="function"){o[c]=l}else{o.setAttribute(c,l)}}}else if(o[c]!==e){o[c]=e}}catch(o){}}let u=false;{if(n!==(n=n.replace(/^xlink\:?/,""))){c=n;u=true}}if(e==null||e===false){if(e!==false||o.getAttribute(c)===""){if(u){o.removeAttributeNS(g,c)}else{o.removeAttribute(c)}}}else if((!a||t&4||l)&&!i&&o.nodeType===1){e=e===true?"":e;if(u){o.setAttributeNS(g,c,e)}else{o.setAttribute(c,e)}}}};var yo=/\s/;var xo=o=>{if(typeof o==="object"&&o&&"baseVal"in o){o=o.baseVal}if(!o||typeof o!=="string"){return[]}return o.split(yo)};var $o="Capture";var So=new RegExp($o+"$");var zo=(o,c,r,e)=>{const l=c.T.nodeType===11&&c.T.host?c.T.host:c.T;const t=o&&o.O||{};const i=c.O||{};{for(const o of jo(Object.keys(t))){if(!(o in i)){wo(l,o,t[o],void 0,r,c.l)}}}for(const o of jo(Object.keys(i))){wo(l,o,t[o],i[o],r,c.l)}};function jo(o){return o.includes("ref")?[...o.filter((o=>o!=="ref")),"ref"]:o}var Oo;var Co;var Eo=false;var Mo=false;var No=false;var Ro=false;var To=(o,r,e)=>{var l;const t=r.C[e];let i=0;let a;let n;let u;if(!Eo){No=true;if(t.R==="slot"){t.l|=t.C?2:1}}if(t.j!==null){a=t.T=w.document.createTextNode(t.j)}else if(t.l&1){a=t.T=w.document.createTextNode("");{zo(null,t,Ro)}}else{if(!w.document){throw new Error("You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component.")}a=t.T=w.document.createElement(!Eo&&c.slotRelocation&&t.l&2?"slot-fb":t.R);{zo(null,t,Ro)}if(t.C){for(i=0;i<t.C.length;++i){n=To(o,t,i);if(n){a.appendChild(n)}}}}a["s-hn"]=Co;{if(t.l&(2|1)){a["s-sr"]=true;a["s-cr"]=Oo;a["s-sn"]=t.N||"";a["s-rf"]=(l=t.O)==null?void 0:l.ref;Q(a);u=o&&o.C&&o.C[e];if(u&&u.R===t.R&&o.T){{Lo(o.T,false)}}}}return a};var Lo=(o,c)=>{y.l|=1;const r=Array.from(o.__childNodes||o.childNodes);for(let o=r.length-1;o>=0;o--){const e=r[o];if(e["s-hn"]!==Co&&e["s-ol"]){_o(Do(e).parentNode,e,Do(e));e["s-ol"].remove();e["s-ol"]=void 0;e["s-sh"]=void 0;No=true}if(c){Lo(e,c)}}y.l&=-2};var Po=(o,c,r,e,l,t)=>{let i=o["s-cr"]&&o["s-cr"].parentNode||o;let a;if(i.shadowRoot&&i.tagName===Co){i=i.shadowRoot}for(;l<=t;++l){if(e[l]){a=To(null,r,l);if(a){e[l].T=a;_o(i,a,Do(c))}}}};var Fo=(o,c,r)=>{for(let e=c;e<=r;++e){const c=o[e];if(c){const o=c.T;Xo(c);if(o){{Mo=true;if(o["s-ol"]){o["s-ol"].remove()}else{Lo(o,true)}}o.remove()}}}};var Uo=(o,c,r,e,l=false)=>{let t=0;let i=0;let a=0;let n=0;let u=c.length-1;let s=c[0];let b=c[u];let d=e.length-1;let m=e[0];let f=e[d];let v;let k;while(t<=u&&i<=d){if(s==null){s=c[++t]}else if(b==null){b=c[--u]}else if(m==null){m=e[++i]}else if(f==null){f=e[--d]}else if(Ao(s,m,l)){Io(s,m,l);s=c[++t];m=e[++i]}else if(Ao(b,f,l)){Io(b,f,l);b=c[--u];f=e[--d]}else if(Ao(s,f,l)){if(s.R==="slot"||f.R==="slot"){Lo(s.T.parentNode,false)}Io(s,f,l);_o(o,s.T,b.T.nextSibling);s=c[++t];f=e[--d]}else if(Ao(b,m,l)){if(s.R==="slot"||f.R==="slot"){Lo(b.T.parentNode,false)}Io(b,m,l);_o(o,b.T,s.T);b=c[--u];m=e[++i]}else{a=-1;{for(n=t;n<=u;++n){if(c[n]&&c[n].M!==null&&c[n].M===m.M){a=n;break}}}if(a>=0){k=c[a];if(k.R!==m.R){v=To(c&&c[i],r,a)}else{Io(k,m,l);c[a]=void 0;v=k.T}m=e[++i]}else{v=To(c&&c[i],r,i);m=e[++i]}if(v){{_o(Do(s.T).parentNode,v,Do(s.T))}}}}if(t>u){Po(o,e[d+1]==null?null:e[d+1].T,r,e,i,d)}else if(i>d){Fo(c,t,u)}};var Ao=(o,c,r=false)=>{if(o.R===c.R){if(o.R==="slot"){return o.N===c.N}if(!r){return o.M===c.M}if(r&&!o.M&&c.M){o.M=c.M}return true}return false};var Do=o=>o&&o["s-ol"]||o;var Io=(o,r,e=false)=>{const l=r.T=o.T;const t=o.C;const i=r.C;const a=r.j;let n;if(a===null){{zo(o,r,Ro)}if(t!==null&&i!==null){Uo(l,t,r,i,e)}else if(i!==null){if(o.j!==null){l.textContent=""}Po(l,null,r,i,0,i.length-1)}else if(!e&&c.updatable&&t!==null){Fo(t,0,t.length-1)}else;}else if(n=l["s-cr"]){n.parentNode.textContent=a}else if(o.j!==a){l.data=a}};var Wo=[];var Ho=o=>{let c;let r;let e;const l=o.__childNodes||o.childNodes;for(const o of l){if(o["s-sr"]&&(c=o["s-cr"])&&c.parentNode){r=c.parentNode.__childNodes||c.parentNode.childNodes;const l=o["s-sn"];for(e=r.length-1;e>=0;e--){c=r[e];if(!c["s-cn"]&&!c["s-nr"]&&c["s-hn"]!==o["s-hn"]&&true){if(J(c,l)){let r=Wo.find((o=>o.L===c));Mo=true;c["s-sn"]=c["s-sn"]||l;if(r){r.L["s-sh"]=o["s-hn"];r.P=o}else{c["s-sh"]=o["s-hn"];Wo.push({P:o,L:c})}if(c["s-sr"]){Wo.map((o=>{if(J(o.L,c["s-sn"])){r=Wo.find((o=>o.L===c));if(r&&!o.P){o.P=r.P}}}))}}else if(!Wo.some((o=>o.L===c))){Wo.push({L:c})}}}}if(o.nodeType===1){Ho(o)}}};var Xo=o=>{{o.O&&o.O.ref&&o.O.ref(null);o.C&&o.C.map(Xo)}};var _o=(o,c,r)=>{{return o==null?void 0:o.insertBefore(c,r)}};var Yo=(o,c,r=false)=>{var e,l,t,i;const a=o.$hostElement$;const n=o.t;const u=o.F||no(null,null);const s=so(c);const b=s?c:ao(null,null,c);Co=a.tagName;if(n.U){b.O=b.O||{};n.U.map((([o,c])=>b.O[c]=a[o]))}if(r&&b.O){for(const o of Object.keys(b.O)){if(a.hasAttribute(o)&&!["key","ref","style","class"].includes(o)){b.O[o]=a[o]}}}b.R=null;b.l|=4;o.F=b;b.T=u.T=a.shadowRoot||a;Eo=!!(n.l&1)&&!(n.l&128);{Oo=a["s-cr"];Mo=false}Io(u,b,r);{y.l|=1;if(No){Ho(b.T);for(const o of Wo){const c=o.L;if(!c["s-ol"]&&w.document){const o=w.document.createTextNode("");o["s-nr"]=c;_o(c.parentNode,c["s-ol"]=o,c)}}for(const o of Wo){const c=o.L;const a=o.P;if(a){const o=a.parentNode;let r=a.nextSibling;{let t=(e=c["s-ol"])==null?void 0:e.previousSibling;while(t){let e=(l=t["s-nr"])!=null?l:null;if(e&&e["s-sn"]===c["s-sn"]&&o===(e.__parentNode||e.parentNode)){e=e.nextSibling;while(e===c||(e==null?void 0:e["s-sr"])){e=e==null?void 0:e.nextSibling}if(!e||!e["s-nr"]){r=e;break}}t=t.previousSibling}}const i=c.__parentNode||c.parentNode;const n=c.__nextSibling||c.nextSibling;if(!r&&o!==i||n!==r){if(c!==r){if(!c["s-hn"]&&c["s-ol"]){c["s-hn"]=c["s-ol"].parentNode.nodeName}_o(o,c,r);if(c.nodeType===1&&c.tagName!=="SLOT-FB"){c.hidden=(t=c["s-ih"])!=null?t:false}}}c&&typeof a["s-rf"]==="function"&&a["s-rf"](a)}else{if(c.nodeType===1){if(r){c["s-ih"]=(i=c.hidden)!=null?i:false}c.hidden=true}}}}if(Mo){B(b.T)}y.l&=-2;Wo.length=0}Oo=void 0};var Bo=(o,c)=>{if(c&&!o.A&&c["s-p"]){const r=c["s-p"].push(new Promise((e=>o.A=()=>{c["s-p"].splice(r-1,1);e()})))}};var qo=(o,c)=>{{o.l|=16}if(o.l&4){o.l|=512;return}Bo(o,o.D);const r=()=>Vo(o,c);if(c){queueMicrotask((()=>{r()}));return}return T(r)};var Vo=(o,c)=>{const r=o.$hostElement$;const e=oo("scheduleUpdate",o.t.h);const l=o.o;if(!l){throw new Error(`Can't render component <${r.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`)}let t;if(c){{o.l|=256;if(o.I){o.I.map((([o,c])=>cc(l,o,c,r)));o.I=void 0}}t=cc(l,"componentWillLoad",void 0,r)}else{t=cc(l,"componentWillUpdate",void 0,r)}t=Go(t,(()=>cc(l,"componentWillRender",void 0,r)));e();return Go(t,(()=>Ko(o,l,c)))};var Go=(o,c)=>Jo(o)?o.then(c).catch((o=>{console.error(o);c()})):c();var Jo=o=>o instanceof Promise||o&&o.then&&typeof o.then==="function";var Ko=async(o,c,r)=>{var e;const l=o.$hostElement$;const t=oo("update",o.t.h);const i=l["s-rc"];if(r){to(o)}const a=oo("render",o.t.h);{Qo(o,c,l,r)}if(i){i.map((o=>o()));l["s-rc"]=void 0}a();t();{const c=(e=l["s-p"])!=null?e:[];const r=()=>Zo(o);if(c.length===0){r()}else{Promise.all(c).then(r);o.l|=4;c.length=0}}};var Qo=(o,c,r,e)=>{try{c=c.render();{o.l&=-17}{o.l|=2}{{{Yo(o,c,e)}}}}catch(c){m(c,o.$hostElement$)}return null};var Zo=o=>{const c=o.t.h;const r=o.$hostElement$;const e=oo("postUpdate",c);const l=o.o;const t=o.D;cc(l,"componentDidRender",void 0,r);if(!(o.l&64)){o.l|=64;{rc(r)}cc(l,"componentDidLoad",void 0,r);e();{o.k(r);if(!t){oc()}}}else{cc(l,"componentDidUpdate",void 0,r);e()}{o.m(r)}{if(o.A){o.A();o.A=void 0}if(o.l&512){R((()=>qo(o,false)))}o.l&=-517}};var oc=c=>{R((()=>go(w,"appload",{detail:{namespace:o}})))};var cc=(o,c,r,e)=>{if(o&&o[c]){try{return o[c](r)}catch(o){m(o,e)}}return void 0};var rc=o=>{var r;return o.classList.add((r=c.hydratedSelectorName)!=null?r:"hydrated")};var ec=(o,c)=>u(o).i.get(c);var lc=(o,c,r,e)=>{const l=u(o);if(!l){return}if(!l){throw new Error(`Couldn't find host element for "${e.h}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/stenciljs/core/issues/5457).`)}const t=l.$hostElement$;const i=l.i.get(c);const a=l.l;const n=l.o;r=ko(r,e.W[c][0]);const s=Number.isNaN(i)&&Number.isNaN(r);const b=r!==i&&!s;if((!(a&8)||i===void 0)&&b){l.i.set(c,r);if(n){if(e.H&&a&128){const o=e.H[c];if(o){o.map((o=>{try{n[o](r,i,c)}catch(o){m(o,t)}}))}}if((a&(2|16))===2){if(n.componentShouldUpdate){if(n.componentShouldUpdate(r,i,c)===false){return}}qo(l,false)}}}};var tc=(o,r,e)=>{var l,t;const i=o.prototype;if(r.W||(r.H||o.watchers)){if(o.watchers&&!r.H){r.H=o.watchers}const a=Object.entries((l=r.W)!=null?l:{});a.map((([o,[c]])=>{if(c&31||e&2&&c&32){const{get:l,set:t}=Object.getOwnPropertyDescriptor(i,o)||{};if(l)r.W[o][0]|=2048;if(t)r.W[o][0]|=4096;if(e&1||!l){Object.defineProperty(i,o,{get(){{if((r.W[o][0]&2048)===0){return ec(this,o)}const c=u(this);const e=c?c.o:i;if(!e)return;return e[o]}},configurable:true,enumerable:true})}Object.defineProperty(i,o,{set(l){const i=u(this);if(!i){return}if(t){const e=c&32?this[o]:i.$hostElement$[o];if(typeof e==="undefined"&&i.i.get(o)){l=i.i.get(o)}else if(!i.i.get(o)&&e){i.i.set(o,e)}t.apply(this,[ko(l,c)]);l=c&32?this[o]:i.$hostElement$[o];lc(this,o,l,r);return}{if((e&1)===0||(r.W[o][0]&4096)===0){lc(this,o,l,r);if(e&1&&!i.o){i.v.then((()=>{if(r.W[o][0]&4096&&i.o[o]!==i.i.get(o)){i.o[o]=l}}))}return}const t=()=>{const e=i.o[o];if(!i.i.get(o)&&e){i.i.set(o,e)}i.o[o]=ko(l,c);lc(this,o,i.o[o],r)};if(i.o){t()}else{i.v.then((()=>t()))}}}})}else if(e&1&&c&64){Object.defineProperty(i,o,{value(...c){var r;const e=u(this);return(r=e==null?void 0:e.u)==null?void 0:r.then((()=>{var r;return(r=e.o)==null?void 0:r[o](...c)}))}})}}));if(e&1){const e=new Map;i.attributeChangedCallback=function(o,l,t){y.jmp((()=>{var a;const n=e.get(o);if(this.hasOwnProperty(n)&&c.lazyLoad){t=this[n];delete this[n]}else if(i.hasOwnProperty(n)&&typeof this[n]==="number"&&this[n]==t){return}else if(n==null){const c=u(this);const e=c==null?void 0:c.l;if(c&&e&&!(e&8)&&e&128&&t!==l){const e=c.o;const i=(a=r.H)==null?void 0:a[o];i==null?void 0:i.forEach((c=>{if(e[c]!=null){e[c].call(e,t,l,o)}}))}return}const s=Object.getOwnPropertyDescriptor(i,n);t=t===null&&typeof this[n]==="boolean"?false:t;if(t!==this[n]&&(!s.get||!!s.set)){this[n]=t}}))};o.observedAttributes=Array.from(new Set([...Object.keys((t=r.H)!=null?t:{}),...a.filter((([o,c])=>c[0]&15)).map((([o,c])=>{var l;const t=c[1]||o;e.set(t,o);if(c[0]&512){(l=r.U)==null?void 0:l.push([o,t])}return t}))]))}}return o};var ic=async(o,c,r,e)=>{let l;if((c.l&32)===0){c.l|=32;const e=r.p;if(e){const e=v(r,c);if(e&&"then"in e){const o=co();l=await e;o()}else{l=e}if(!l){throw new Error(`Constructor for "${r.h}#${c.X}" was not found`)}if(!l.isProxied){{r.H=l.watchers}tc(l,r,2);l.isProxied=true}const t=oo("createInstance",r.h);{c.l|=8}try{new l(c)}catch(c){m(c,o)}{c.l&=-9}{c.l|=128}t();ac(c.o,o)}else{l=o.constructor;const r=o.localName;customElements.whenDefined(r).then((()=>c.l|=128))}if(l&&l.style){let o;if(typeof l.style==="string"){o=l.style}const c=io(r);if(!k.has(c)){const e=oo("registerStyles",r.h);eo(c,o,!!(r.l&1));e()}}}const t=c.D;const i=()=>qo(c,true);if(t&&t["s-rc"]){t["s-rc"].push(i)}else{i()}};var ac=(o,c)=>{{cc(o,"connectedCallback",void 0,c)}};var nc=o=>{if((y.l&1)===0){const c=u(o);if(!c){return}const r=c.t;const e=oo("connectedCallback",r.h);if(!(c.l&1)){c.l|=1;{if(r.l&(4|8)){uc(o)}}{let r=o;while(r=r.parentNode||r.host){if(r["s-p"]){Bo(c,c.D=r);break}}}if(r.W){Object.entries(r.W).map((([c,[r]])=>{if(r&31&&o.hasOwnProperty(c)){const r=o[c];delete o[c];o[c]=r}}))}{ic(o,c,r)}}else{fc(o,c,r._);if(c==null?void 0:c.o){ac(c.o,o)}else if(c==null?void 0:c.v){c.v.then((()=>ac(c.o,o)))}}e()}};var uc=o=>{if(!w.document){return}const c=o["s-cr"]=w.document.createComment("");c["s-cn"]=true;_o(o,c,o.firstChild)};var sc=(o,c)=>{{cc(o,"disconnectedCallback",void 0,c||o)}};var bc=async o=>{if((y.l&1)===0){const c=u(o);{if(c==null?void 0:c.Y){c.Y.map((o=>o()));c.Y=void 0}}if(c==null?void 0:c.o){sc(c.o,o)}else if(c==null?void 0:c.v){c.v.then((()=>sc(c.o,o)))}}if(ro.has(o)){ro.delete(o)}if(o.shadowRoot&&ro.has(o.shadowRoot)){ro.delete(o.shadowRoot)}};var dc=(o,c={})=>{var r;if(!w.document){console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");return}const e=oo();const l=[];const t=c.exclude||[];const i=w.customElements;const a=w.document.head;const n=a.querySelector("meta[charset]");const s=w.document.createElement("style");const d=[];let m;let f=true;Object.assign(y,c);y.$=new URL(c.resourcesUrl||"./",w.document.baseURI).href;let v=false;o.map((o=>{o[1].map((c=>{var r;const e={l:c[0],h:c[1],W:c[2],_:c[3]};if(e.l&4){v=true}{e.W=c[2]}{e._=c[3]}{e.U=[]}{e.H=(r=c[4])!=null?r:{}}const a=e.h;const n=class extends HTMLElement{constructor(o){super(o);this.hasRegisteredEventListeners=false;o=this;b(o,e);if(e.l&1){{if(!o.shadowRoot){Y.call(o,e)}else{if(o.shadowRoot.mode!=="open"){throw new Error(`Unable to re-use existing shadow root for ${e.h}! Mode is set to ${o.shadowRoot.mode} but Stencil only supports open shadow roots.`)}}}}}connectedCallback(){const o=u(this);if(!o){return}if(!this.hasRegisteredEventListeners){this.hasRegisteredEventListeners=true;fc(this,o,e._)}if(m){clearTimeout(m);m=null}if(f){d.push(this)}else{y.jmp((()=>nc(this)))}}disconnectedCallback(){y.jmp((()=>bc(this)));y.raf((()=>{var o;const c=u(this);if(!c){return}const r=d.findIndex((o=>o===this));if(r>-1){d.splice(r,1)}if(((o=c==null?void 0:c.F)==null?void 0:o.T)instanceof Node&&!c.F.T.isConnected){delete c.F.T}}))}componentOnReady(){var o;return(o=u(this))==null?void 0:o.v}};e.p=o[0];if(!t.includes(a)&&!i.get(a)){l.push(a);i.define(a,tc(n,e,1))}}))}));if(l.length>0){if(v){s.textContent+=p}{s.textContent+=l.sort()+h}if(s.innerHTML.length){s.setAttribute("data-styles","");const o=(r=y.S)!=null?r:P(w.document);if(o!=null){s.setAttribute("nonce",o)}a.insertBefore(s,n?n.nextSibling:a.firstChild)}}f=false;if(d.length){d.map((o=>o.connectedCallback()))}else{{y.jmp((()=>m=setTimeout(oc,30)))}}e()};var mc=(o,c)=>c;var fc=(o,c,r,e)=>{if(r&&w.document){r.map((([r,e,l])=>{const t=kc(w.document,o,r);const i=vc(c,l);const a=hc(r);y.ael(t,e,i,a);(c.Y=c.Y||[]).push((()=>y.rel(t,e,i,a)))}))}};var vc=(o,c)=>r=>{var e;try{{if(o.l&256){(e=o.o)==null?void 0:e[c](r)}else{(o.I=o.I||[]).push([c,r])}}}catch(c){m(c,o.$hostElement$)}};var kc=(o,c,r)=>{if(r&8){return w}return c};var hc=o=>x?{passive:(o&1)!==0,capture:(o&2)!==0}:(o&2)!==0;var pc=o=>y.S=o;export{mc as F,uo as H,ho as a,dc as b,po as c,t as g,ao as h,$ as p,s as r,pc as s};
3
- //# sourceMappingURL=p-BuuGCw0z.js.map