bromcom-ui-next 0.1.5 → 0.1.6

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 (377) hide show
  1. package/dist/bromcom-ui/bromcom-ui.css +1 -1
  2. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  3. package/dist/bromcom-ui/bromcom-ui.esm.js.map +1 -1
  4. package/dist/bromcom-ui/p-0d0d6483.entry.js +2 -0
  5. package/dist/bromcom-ui/{p-e08b23ff.entry.js.map → p-0d0d6483.entry.js.map} +1 -1
  6. package/dist/bromcom-ui/p-13784cd7.entry.js +2 -0
  7. package/dist/bromcom-ui/p-13784cd7.entry.js.map +1 -0
  8. package/dist/bromcom-ui/p-13a245f6.js +2 -0
  9. package/dist/bromcom-ui/p-13a245f6.js.map +1 -0
  10. package/dist/bromcom-ui/p-25038cc8.entry.js +2 -0
  11. package/dist/bromcom-ui/p-25038cc8.entry.js.map +1 -0
  12. package/dist/bromcom-ui/p-308f865b.entry.js +2 -0
  13. package/dist/bromcom-ui/p-308f865b.entry.js.map +1 -0
  14. package/dist/bromcom-ui/{p-f0ece968.entry.js → p-385fa0f3.entry.js} +2 -2
  15. package/dist/bromcom-ui/p-389f1976.entry.js +2 -0
  16. package/dist/bromcom-ui/p-389f1976.entry.js.map +1 -0
  17. package/dist/bromcom-ui/p-3b230145.entry.js +2 -0
  18. package/dist/bromcom-ui/p-3b230145.entry.js.map +1 -0
  19. package/dist/bromcom-ui/p-49b0e982.entry.js +2 -0
  20. package/dist/bromcom-ui/p-49b0e982.entry.js.map +1 -0
  21. package/dist/bromcom-ui/p-55c4263c.entry.js +2 -0
  22. package/dist/bromcom-ui/p-55c4263c.entry.js.map +1 -0
  23. package/dist/bromcom-ui/{p-f9eeafa7.entry.js → p-58ee24a8.entry.js} +2 -2
  24. package/dist/bromcom-ui/p-729a870f.js.map +1 -1
  25. package/dist/bromcom-ui/p-9551c35e.entry.js +2 -0
  26. package/dist/bromcom-ui/p-9551c35e.entry.js.map +1 -0
  27. package/dist/bromcom-ui/p-9594cebb.js +2 -0
  28. package/dist/bromcom-ui/p-9594cebb.js.map +1 -0
  29. package/dist/bromcom-ui/p-98c76392.entry.js +2 -0
  30. package/dist/bromcom-ui/p-98c76392.entry.js.map +1 -0
  31. package/dist/bromcom-ui/p-a29e61a4.entry.js +2 -0
  32. package/dist/bromcom-ui/{p-7a1bf6a6.entry.js.map → p-a29e61a4.entry.js.map} +1 -1
  33. package/dist/bromcom-ui/p-ba2410ef.js +2 -0
  34. package/dist/bromcom-ui/p-ba2410ef.js.map +1 -0
  35. package/dist/bromcom-ui/p-bd0f7e78.entry.js +2 -0
  36. package/dist/bromcom-ui/p-bd0f7e78.entry.js.map +1 -0
  37. package/dist/bromcom-ui/p-bf69fc8a.entry.js +2 -0
  38. package/dist/bromcom-ui/p-bf69fc8a.entry.js.map +1 -0
  39. package/dist/bromcom-ui/{p-5bee2e76.entry.js → p-c1161950.entry.js} +2 -2
  40. package/dist/bromcom-ui/p-c2b3945e.entry.js +2 -0
  41. package/dist/bromcom-ui/p-c2b3945e.entry.js.map +1 -0
  42. package/dist/bromcom-ui/{p-53f21d16.entry.js → p-c427ffee.entry.js} +2 -2
  43. package/dist/bromcom-ui/p-c444235a.entry.js +2 -0
  44. package/dist/bromcom-ui/{p-63cb0933.entry.js.map → p-c444235a.entry.js.map} +1 -1
  45. package/dist/bromcom-ui/p-c995a48c.entry.js +2 -0
  46. package/dist/bromcom-ui/p-c995a48c.entry.js.map +1 -0
  47. package/dist/bromcom-ui/p-c9b736d9.js +3 -0
  48. package/dist/{cjs/index-4795c073.js.map → bromcom-ui/p-c9b736d9.js.map} +1 -1
  49. package/dist/bromcom-ui/p-cd271b49.entry.js +2 -0
  50. package/dist/bromcom-ui/p-cd271b49.entry.js.map +1 -0
  51. package/dist/bromcom-ui/p-cee68279.entry.js +2 -0
  52. package/dist/bromcom-ui/{p-2bbd3c52.entry.js.map → p-cee68279.entry.js.map} +1 -1
  53. package/dist/bromcom-ui/{p-6abaf96f.entry.js → p-d57587e5.entry.js} +2 -2
  54. package/dist/bromcom-ui/p-e89ab4a7.entry.js +2 -0
  55. package/dist/bromcom-ui/p-e89ab4a7.entry.js.map +1 -0
  56. package/dist/bromcom-ui/{p-4f402148.entry.js → p-f2d8aa70.entry.js} +2 -2
  57. package/dist/bromcom-ui/p-f4e8a47d.entry.js +2 -0
  58. package/dist/bromcom-ui/p-f4e8a47d.entry.js.map +1 -0
  59. package/dist/cjs/app-globals-29edfda4.js.map +1 -1
  60. package/dist/cjs/bcm-accordion-group.cjs.entry.js +1 -1
  61. package/dist/cjs/bcm-accordion.cjs.entry.js +1 -1
  62. package/dist/cjs/bcm-alert.cjs.entry.js +1 -1
  63. package/dist/cjs/bcm-avatar_4.cjs.entry.js +12 -6
  64. package/dist/cjs/bcm-avatar_4.cjs.entry.js.map +1 -1
  65. package/dist/cjs/bcm-button-group.cjs.entry.js +97 -0
  66. package/dist/cjs/bcm-button-group.cjs.entry.js.map +1 -0
  67. package/dist/cjs/bcm-checkbox.cjs.entry.js +226 -0
  68. package/dist/cjs/bcm-checkbox.cjs.entry.js.map +1 -0
  69. package/dist/cjs/bcm-chip.cjs.entry.js +2 -2
  70. package/dist/cjs/bcm-divider.cjs.entry.js +2 -2
  71. package/dist/cjs/bcm-dropdown-item.cjs.entry.js +3 -3
  72. package/dist/cjs/bcm-dropdown.cjs.entry.js +3 -3
  73. package/dist/cjs/bcm-dropdown.cjs.entry.js.map +1 -1
  74. package/dist/cjs/bcm-input.cjs.entry.js +7 -6
  75. package/dist/cjs/bcm-input.cjs.entry.js.map +1 -1
  76. package/dist/cjs/bcm-linked.cjs.entry.js +9 -1899
  77. package/dist/cjs/bcm-linked.cjs.entry.js.map +1 -1
  78. package/dist/cjs/bcm-pop-confirm.cjs.entry.js +252 -0
  79. package/dist/cjs/bcm-pop-confirm.cjs.entry.js.map +1 -0
  80. package/dist/cjs/bcm-popover.cjs.entry.js +191 -0
  81. package/dist/cjs/bcm-popover.cjs.entry.js.map +1 -0
  82. package/dist/cjs/bcm-radio-group.cjs.entry.js +171 -0
  83. package/dist/cjs/bcm-radio-group.cjs.entry.js.map +1 -0
  84. package/dist/cjs/bcm-radio.cjs.entry.js +173 -0
  85. package/dist/cjs/bcm-radio.cjs.entry.js.map +1 -0
  86. package/dist/cjs/bcm-segmented-picker-option.cjs.entry.js +109 -0
  87. package/dist/cjs/bcm-segmented-picker-option.cjs.entry.js.map +1 -0
  88. package/dist/cjs/bcm-segmented-picker.cjs.entry.js +146 -0
  89. package/dist/cjs/bcm-segmented-picker.cjs.entry.js.map +1 -0
  90. package/dist/cjs/bcm-switch.cjs.entry.js +188 -0
  91. package/dist/cjs/bcm-switch.cjs.entry.js.map +1 -0
  92. package/dist/cjs/bcm-tabs-content.cjs.entry.js +22 -0
  93. package/dist/cjs/bcm-tabs-content.cjs.entry.js.map +1 -0
  94. package/dist/cjs/bcm-tabs-list.cjs.entry.js +43 -0
  95. package/dist/cjs/bcm-tabs-list.cjs.entry.js.map +1 -0
  96. package/dist/cjs/bcm-tabs-trigger.cjs.entry.js +92 -0
  97. package/dist/cjs/bcm-tabs-trigger.cjs.entry.js.map +1 -0
  98. package/dist/cjs/bcm-tabs.cjs.entry.js +211 -0
  99. package/dist/cjs/bcm-tabs.cjs.entry.js.map +1 -0
  100. package/dist/cjs/bcm-text.cjs.entry.js +2 -2
  101. package/dist/cjs/bcm-textarea.cjs.entry.js +8 -7
  102. package/dist/cjs/bcm-textarea.cjs.entry.js.map +1 -1
  103. package/dist/cjs/bcm-tooltip.cjs.entry.js +187 -0
  104. package/dist/cjs/bcm-tooltip.cjs.entry.js.map +1 -0
  105. package/dist/cjs/bromcom-ui.cjs.js +2 -2
  106. package/dist/cjs/floating-ui.dom.esm-3ec8404c.js +2085 -0
  107. package/dist/cjs/floating-ui.dom.esm-3ec8404c.js.map +1 -0
  108. package/dist/{components/p-31354aaa.js → cjs/generate-id-f6982042.js} +4 -47
  109. package/dist/cjs/generate-id-f6982042.js.map +1 -0
  110. package/dist/cjs/{index-4795c073.js → index-9a2c5938.js} +36 -7
  111. package/dist/{bromcom-ui/p-15fe392b.js.map → cjs/index-9a2c5938.js.map} +1 -1
  112. package/dist/cjs/loader.cjs.js +2 -2
  113. package/dist/cjs/validation-messages-18389279.js +52 -0
  114. package/dist/cjs/validation-messages-18389279.js.map +1 -0
  115. package/dist/collection/collection-manifest.json +15 -1
  116. package/dist/collection/components/avatar/avatar.css +1 -1
  117. package/dist/collection/components/badge/badge.css +1 -1
  118. package/dist/collection/components/button/button.component.js +33 -2
  119. package/dist/collection/components/button/button.component.js.map +1 -1
  120. package/dist/collection/components/button/button.css +1 -1
  121. package/dist/collection/components/button/types.js.map +1 -1
  122. package/dist/collection/components/button-group/button-group.component.js +252 -0
  123. package/dist/collection/components/button-group/button-group.component.js.map +1 -0
  124. package/dist/collection/components/button-group/button-group.css +1 -0
  125. package/dist/collection/components/button-group/types.js +2 -0
  126. package/dist/collection/components/button-group/types.js.map +1 -0
  127. package/dist/collection/components/checkbox/checkbox.component.js +440 -0
  128. package/dist/collection/components/checkbox/checkbox.component.js.map +1 -0
  129. package/dist/collection/components/checkbox/checkbox.css +1 -0
  130. package/dist/collection/components/chip/chip.component.js +1 -1
  131. package/dist/collection/components/divider/divider.component.js +1 -1
  132. package/dist/collection/components/dropdown/dropdown.component.js +1 -1
  133. package/dist/collection/components/dropdown/dropdown.css +1 -1
  134. package/dist/collection/components/dropdown-item/dropdown-item.component.js +2 -2
  135. package/dist/collection/components/input/input.component.js +2 -2
  136. package/dist/collection/components/input/input.css +1 -1
  137. package/dist/collection/components/linked/linked.component.js +2 -2
  138. package/dist/collection/components/linked/linked.css +1 -1
  139. package/dist/collection/components/pop-confirm/pop-confirm.component.js +629 -0
  140. package/dist/collection/components/pop-confirm/pop-confirm.component.js.map +1 -0
  141. package/dist/collection/components/pop-confirm/pop-confirm.css +1 -0
  142. package/dist/collection/components/popover/popover.component.js +477 -0
  143. package/dist/collection/components/popover/popover.component.js.map +1 -0
  144. package/dist/collection/components/popover/popover.css +1 -0
  145. package/dist/collection/components/radio/radio.component.js +502 -0
  146. package/dist/collection/components/radio/radio.component.js.map +1 -0
  147. package/dist/collection/components/radio/radio.css +1 -0
  148. package/dist/collection/components/radio-group/radio-group.component.js +523 -0
  149. package/dist/collection/components/radio-group/radio-group.component.js.map +1 -0
  150. package/dist/collection/components/radio-group/radio-group.css +1 -0
  151. package/dist/collection/components/segmented-picker/segmented-picker-option.component.js +253 -0
  152. package/dist/collection/components/segmented-picker/segmented-picker-option.component.js.map +1 -0
  153. package/dist/collection/components/segmented-picker/segmented-picker-option.css +1 -0
  154. package/dist/collection/components/segmented-picker/segmented-picker.component.js +269 -0
  155. package/dist/collection/components/segmented-picker/segmented-picker.component.js.map +1 -0
  156. package/dist/collection/components/segmented-picker/segmented-picker.css +1 -0
  157. package/dist/collection/components/segmented-picker/types.js +2 -0
  158. package/dist/collection/components/segmented-picker/types.js.map +1 -0
  159. package/dist/collection/components/switch/switch.component.js +452 -0
  160. package/dist/collection/components/switch/switch.component.js.map +1 -0
  161. package/dist/collection/components/switch/switch.css +1 -0
  162. package/dist/collection/components/tabs/bcm-tabs.css +1 -0
  163. package/dist/collection/components/tabs/tabs-content.component.js +46 -0
  164. package/dist/collection/components/tabs/tabs-content.component.js.map +1 -0
  165. package/dist/collection/components/tabs/tabs-content.css +1 -0
  166. package/dist/collection/components/tabs/tabs-list.component.js +46 -0
  167. package/dist/collection/components/tabs/tabs-list.component.js.map +1 -0
  168. package/dist/collection/components/tabs/tabs-list.css +1 -0
  169. package/dist/collection/components/tabs/tabs-trigger.component.js +195 -0
  170. package/dist/collection/components/tabs/tabs-trigger.component.js.map +1 -0
  171. package/dist/collection/components/tabs/tabs-trigger.css +1 -0
  172. package/dist/collection/components/tabs/tabs.component.js +422 -0
  173. package/dist/collection/components/tabs/tabs.component.js.map +1 -0
  174. package/dist/collection/components/text/text.component.js +1 -1
  175. package/dist/collection/components/textarea/textarea.component.js +3 -3
  176. package/dist/collection/components/textarea/textarea.css +1 -1
  177. package/dist/collection/components/tooltip/tooltip.component.js +385 -0
  178. package/dist/collection/components/tooltip/tooltip.component.js.map +1 -0
  179. package/dist/collection/components/tooltip/tooltip.css +1 -0
  180. package/dist/collection/styles/theme-variables.js +14 -0
  181. package/dist/collection/styles/theme-variables.js.map +1 -1
  182. package/dist/components/bcm-accordion-group.js +1 -1
  183. package/dist/components/bcm-accordion.js +1 -1
  184. package/dist/components/bcm-alert.js +1 -1
  185. package/dist/components/bcm-avatar.js +3 -3
  186. package/dist/components/bcm-avatar.js.map +1 -1
  187. package/dist/components/bcm-badge.js +1 -1
  188. package/dist/components/bcm-basic-badge.js +1 -1
  189. package/dist/components/bcm-button-group.d.ts +11 -0
  190. package/dist/components/bcm-button-group.js +120 -0
  191. package/dist/components/bcm-button-group.js.map +1 -0
  192. package/dist/components/bcm-button.js +1 -1
  193. package/dist/components/bcm-checkbox.d.ts +11 -0
  194. package/dist/components/bcm-checkbox.js +256 -0
  195. package/dist/components/bcm-checkbox.js.map +1 -0
  196. package/dist/components/bcm-chip.js +2 -2
  197. package/dist/components/bcm-divider.js +2 -2
  198. package/dist/components/bcm-dropdown-item.js +3 -3
  199. package/dist/components/bcm-dropdown.js +5 -5
  200. package/dist/components/bcm-dropdown.js.map +1 -1
  201. package/dist/components/bcm-input.js +6 -5
  202. package/dist/components/bcm-input.js.map +1 -1
  203. package/dist/components/bcm-linked.js +1 -1
  204. package/dist/components/bcm-pop-confirm.d.ts +11 -0
  205. package/dist/components/bcm-pop-confirm.js +288 -0
  206. package/dist/components/bcm-pop-confirm.js.map +1 -0
  207. package/dist/components/bcm-popover.d.ts +11 -0
  208. package/dist/components/bcm-popover.js +216 -0
  209. package/dist/components/bcm-popover.js.map +1 -0
  210. package/dist/components/bcm-radio-group.d.ts +11 -0
  211. package/dist/components/bcm-radio-group.js +200 -0
  212. package/dist/components/bcm-radio-group.js.map +1 -0
  213. package/dist/components/bcm-radio.d.ts +11 -0
  214. package/dist/components/bcm-radio.js +198 -0
  215. package/dist/components/bcm-radio.js.map +1 -0
  216. package/dist/components/bcm-segmented-picker-option.d.ts +11 -0
  217. package/dist/components/bcm-segmented-picker-option.js +131 -0
  218. package/dist/components/bcm-segmented-picker-option.js.map +1 -0
  219. package/dist/components/bcm-segmented-picker.d.ts +11 -0
  220. package/dist/components/bcm-segmented-picker.js +170 -0
  221. package/dist/components/bcm-segmented-picker.js.map +1 -0
  222. package/dist/components/bcm-switch.d.ts +11 -0
  223. package/dist/components/bcm-switch.js +215 -0
  224. package/dist/components/bcm-switch.js.map +1 -0
  225. package/dist/components/bcm-tabs-content.d.ts +11 -0
  226. package/dist/components/bcm-tabs-content.js +39 -0
  227. package/dist/components/bcm-tabs-content.js.map +1 -0
  228. package/dist/components/bcm-tabs-list.d.ts +11 -0
  229. package/dist/components/bcm-tabs-list.js +58 -0
  230. package/dist/components/bcm-tabs-list.js.map +1 -0
  231. package/dist/components/bcm-tabs-trigger.d.ts +11 -0
  232. package/dist/components/bcm-tabs-trigger.js +112 -0
  233. package/dist/components/bcm-tabs-trigger.js.map +1 -0
  234. package/dist/components/bcm-tabs.d.ts +11 -0
  235. package/dist/components/bcm-tabs.js +239 -0
  236. package/dist/components/bcm-tabs.js.map +1 -0
  237. package/dist/components/bcm-text.js +2 -2
  238. package/dist/components/bcm-textarea.js +7 -6
  239. package/dist/components/bcm-textarea.js.map +1 -1
  240. package/dist/components/bcm-tooltip.d.ts +11 -0
  241. package/dist/components/bcm-tooltip.js +211 -0
  242. package/dist/components/bcm-tooltip.js.map +1 -0
  243. package/dist/components/index.js +1 -1
  244. package/dist/components/p-13a245f6.js +48 -0
  245. package/dist/components/p-13a245f6.js.map +1 -0
  246. package/dist/components/{p-e918f815.js → p-49f20ff7.js} +3 -3
  247. package/dist/components/{p-e918f815.js.map → p-49f20ff7.js.map} +1 -1
  248. package/dist/components/{p-13582168.js → p-5377117d.js} +32 -6
  249. package/dist/components/p-5377117d.js.map +1 -0
  250. package/dist/components/p-5f7a0d0d.js +107 -0
  251. package/dist/components/p-5f7a0d0d.js.map +1 -0
  252. package/dist/components/{p-613ee92d.js → p-9594cebb.js} +201 -120
  253. package/dist/components/p-9594cebb.js.map +1 -0
  254. package/dist/{esm/validation-messages-a29d53be.js → components/p-ba2410ef.js} +2 -47
  255. package/dist/components/p-ba2410ef.js.map +1 -0
  256. package/dist/components/{p-0063a3d9.js → p-c3a60937.js} +12 -5
  257. package/dist/components/p-c3a60937.js.map +1 -0
  258. package/dist/esm/app-globals-bfa07b76.js.map +1 -1
  259. package/dist/esm/bcm-accordion-group.entry.js +1 -1
  260. package/dist/esm/bcm-accordion.entry.js +1 -1
  261. package/dist/esm/bcm-alert.entry.js +1 -1
  262. package/dist/esm/bcm-avatar_4.entry.js +12 -6
  263. package/dist/esm/bcm-avatar_4.entry.js.map +1 -1
  264. package/dist/esm/bcm-button-group.entry.js +93 -0
  265. package/dist/esm/bcm-button-group.entry.js.map +1 -0
  266. package/dist/esm/bcm-checkbox.entry.js +222 -0
  267. package/dist/esm/bcm-checkbox.entry.js.map +1 -0
  268. package/dist/esm/bcm-chip.entry.js +2 -2
  269. package/dist/esm/bcm-divider.entry.js +2 -2
  270. package/dist/esm/bcm-dropdown-item.entry.js +3 -3
  271. package/dist/esm/bcm-dropdown.entry.js +3 -3
  272. package/dist/esm/bcm-dropdown.entry.js.map +1 -1
  273. package/dist/esm/bcm-input.entry.js +6 -5
  274. package/dist/esm/bcm-input.entry.js.map +1 -1
  275. package/dist/esm/bcm-linked.entry.js +5 -1895
  276. package/dist/esm/bcm-linked.entry.js.map +1 -1
  277. package/dist/esm/bcm-pop-confirm.entry.js +248 -0
  278. package/dist/esm/bcm-pop-confirm.entry.js.map +1 -0
  279. package/dist/esm/bcm-popover.entry.js +187 -0
  280. package/dist/esm/bcm-popover.entry.js.map +1 -0
  281. package/dist/esm/bcm-radio-group.entry.js +167 -0
  282. package/dist/esm/bcm-radio-group.entry.js.map +1 -0
  283. package/dist/esm/bcm-radio.entry.js +169 -0
  284. package/dist/esm/bcm-radio.entry.js.map +1 -0
  285. package/dist/esm/bcm-segmented-picker-option.entry.js +105 -0
  286. package/dist/esm/bcm-segmented-picker-option.entry.js.map +1 -0
  287. package/dist/esm/bcm-segmented-picker.entry.js +142 -0
  288. package/dist/esm/bcm-segmented-picker.entry.js.map +1 -0
  289. package/dist/esm/bcm-switch.entry.js +184 -0
  290. package/dist/esm/bcm-switch.entry.js.map +1 -0
  291. package/dist/esm/bcm-tabs-content.entry.js +18 -0
  292. package/dist/esm/bcm-tabs-content.entry.js.map +1 -0
  293. package/dist/esm/bcm-tabs-list.entry.js +39 -0
  294. package/dist/esm/bcm-tabs-list.entry.js.map +1 -0
  295. package/dist/esm/bcm-tabs-trigger.entry.js +88 -0
  296. package/dist/esm/bcm-tabs-trigger.entry.js.map +1 -0
  297. package/dist/esm/bcm-tabs.entry.js +207 -0
  298. package/dist/esm/bcm-tabs.entry.js.map +1 -0
  299. package/dist/esm/bcm-text.entry.js +2 -2
  300. package/dist/esm/bcm-textarea.entry.js +7 -6
  301. package/dist/esm/bcm-textarea.entry.js.map +1 -1
  302. package/dist/esm/bcm-tooltip.entry.js +183 -0
  303. package/dist/esm/bcm-tooltip.entry.js.map +1 -0
  304. package/dist/esm/bromcom-ui.js +3 -3
  305. package/dist/esm/floating-ui.dom.esm-480e0f15.js +2078 -0
  306. package/dist/esm/floating-ui.dom.esm-480e0f15.js.map +1 -0
  307. package/dist/{cjs/validation-messages-c36e5c31.js → esm/generate-id-3b2fcb93.js} +2 -52
  308. package/dist/esm/generate-id-3b2fcb93.js.map +1 -0
  309. package/dist/esm/{index-27cc1bac.js → index-8571fbf7.js} +36 -8
  310. package/dist/esm/index-8571fbf7.js.map +1 -0
  311. package/dist/esm/loader.js +3 -3
  312. package/dist/esm/validation-messages-af4512f0.js +48 -0
  313. package/dist/esm/validation-messages-af4512f0.js.map +1 -0
  314. package/dist/types/components/button/button.component.d.ts +3 -1
  315. package/dist/types/components/button/types.d.ts +4 -4
  316. package/dist/types/components/button-group/button-group.component.d.ts +25 -0
  317. package/dist/types/components/button-group/types.d.ts +2 -0
  318. package/dist/types/components/checkbox/checkbox.component.d.ts +99 -0
  319. package/dist/types/components/pop-confirm/pop-confirm.component.d.ts +195 -0
  320. package/dist/types/components/popover/popover.component.d.ts +118 -0
  321. package/dist/types/components/radio/radio.component.d.ts +105 -0
  322. package/dist/types/components/radio-group/radio-group.component.d.ts +124 -0
  323. package/dist/types/components/segmented-picker/segmented-picker-option.component.d.ts +30 -0
  324. package/dist/types/components/segmented-picker/segmented-picker.component.d.ts +35 -0
  325. package/dist/types/components/segmented-picker/types.d.ts +1 -0
  326. package/dist/types/components/switch/switch.component.d.ts +62 -0
  327. package/dist/types/components/tabs/tabs-content.component.d.ts +13 -0
  328. package/dist/types/components/tabs/tabs-list.component.d.ts +12 -0
  329. package/dist/types/components/tabs/tabs-trigger.component.d.ts +41 -0
  330. package/dist/types/components/tabs/tabs.component.d.ts +88 -0
  331. package/dist/types/components/tooltip/tooltip.component.d.ts +86 -0
  332. package/dist/types/components.d.ts +2576 -819
  333. package/dist/types/styles/theme-variables.d.ts +14 -0
  334. package/package.json +1 -1
  335. package/dist/bromcom-ui/p-15fe392b.js +0 -3
  336. package/dist/bromcom-ui/p-2bbd3c52.entry.js +0 -2
  337. package/dist/bromcom-ui/p-2f1d87a7.entry.js +0 -2
  338. package/dist/bromcom-ui/p-2f1d87a7.entry.js.map +0 -1
  339. package/dist/bromcom-ui/p-31354aaa.js +0 -2
  340. package/dist/bromcom-ui/p-31354aaa.js.map +0 -1
  341. package/dist/bromcom-ui/p-5737e7de.entry.js +0 -2
  342. package/dist/bromcom-ui/p-5737e7de.entry.js.map +0 -1
  343. package/dist/bromcom-ui/p-63cb0933.entry.js +0 -2
  344. package/dist/bromcom-ui/p-7a1bf6a6.entry.js +0 -2
  345. package/dist/bromcom-ui/p-e08b23ff.entry.js +0 -2
  346. package/dist/bromcom-ui/styles/theme-variables.ts +0 -369
  347. package/dist/bromcom-ui/styles/themes/index.css +0 -1
  348. package/dist/bromcom-ui/styles/themes/library/default.css +0 -73
  349. package/dist/bromcom-ui/styles/variables/box-shadow.css +0 -15
  350. package/dist/bromcom-ui/styles/variables/colors-dark.css +0 -314
  351. package/dist/bromcom-ui/styles/variables/colors-light.css +0 -325
  352. package/dist/bromcom-ui/styles/variables/font-size-rem.css +0 -33
  353. package/dist/bromcom-ui/styles/variables/font-size.css +0 -33
  354. package/dist/bromcom-ui/styles/variables/index.css +0 -6
  355. package/dist/cjs/validation-messages-c36e5c31.js.map +0 -1
  356. package/dist/collection/styles/theme-variables.ts +0 -369
  357. package/dist/collection/styles/themes/index.css +0 -1
  358. package/dist/collection/styles/themes/library/default.css +0 -73
  359. package/dist/collection/styles/variables/box-shadow.css +0 -15
  360. package/dist/collection/styles/variables/colors-dark.css +0 -314
  361. package/dist/collection/styles/variables/colors-light.css +0 -325
  362. package/dist/collection/styles/variables/font-size-rem.css +0 -33
  363. package/dist/collection/styles/variables/font-size.css +0 -33
  364. package/dist/collection/styles/variables/index.css +0 -6
  365. package/dist/components/p-0063a3d9.js.map +0 -1
  366. package/dist/components/p-13582168.js.map +0 -1
  367. package/dist/components/p-31354aaa.js.map +0 -1
  368. package/dist/components/p-613ee92d.js.map +0 -1
  369. package/dist/esm/index-27cc1bac.js.map +0 -1
  370. package/dist/esm/validation-messages-a29d53be.js.map +0 -1
  371. package/dist/tailwind.config.js +0 -32
  372. /package/dist/bromcom-ui/{p-f0ece968.entry.js.map → p-385fa0f3.entry.js.map} +0 -0
  373. /package/dist/bromcom-ui/{p-f9eeafa7.entry.js.map → p-58ee24a8.entry.js.map} +0 -0
  374. /package/dist/bromcom-ui/{p-5bee2e76.entry.js.map → p-c1161950.entry.js.map} +0 -0
  375. /package/dist/bromcom-ui/{p-53f21d16.entry.js.map → p-c427ffee.entry.js.map} +0 -0
  376. /package/dist/bromcom-ui/{p-6abaf96f.entry.js.map → p-d57587e5.entry.js.map} +0 -0
  377. /package/dist/bromcom-ui/{p-4f402148.entry.js.map → p-f2d8aa70.entry.js.map} +0 -0
@@ -0,0 +1,215 @@
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-5377117d.js';
2
+ import { g as generateId } from './p-ba2410ef.js';
3
+ import { c as ce } from './p-5fcf77f9.js';
4
+
5
+ const switchCss = ":host{display:inline-block}.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}.left-0\\.5{left:.125rem}.left-\\[18px\\]{left:18px}.left-\\[20px\\]{left:20px}.left-\\[22px\\]{left:22px}.order-2{order:2}.flex{display:flex}.hidden{display:none}.size-3{height:.75rem;width:.75rem}.size-3\\.5{height:.875rem;width:.875rem}.size-4{width:1rem}.h-4,.size-4{height:1rem}.h-5{height:1.25rem}.h-\\[18px\\]{height:18px}.w-10{width:2.5rem}.w-8{width:2rem}.w-9{width:2.25rem}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-0\\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-2\\.5{gap:.625rem}.gap-3{gap:.75rem}.rounded-full{border-radius:var(--bcm-ui-border-radius-full,9999px)}.bg-\\[--switch-bg\\]{background-color:var(--switch-bg)}.bg-\\[--switch-dot-bg\\]{background-color:var(--switch-dot-bg)}.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)}.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}.font-normal{font-weight:400}.\\!text-color{color:var(--bcm-ui-color-text-default)!important}.\\!text-color-error{color:var(--bcm-ui-color-text-error)!important}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default)}.shadow,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:var(--bcm-ui-box-shadow-sm);--tw-shadow-colored:var(--bcm-ui-box-shadow-sm)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.group:hover .group-hover\\:bg-\\[--switch-bg-hover\\],.hover\\:bg-\\[--switch-bg-hover\\]:hover{background-color:var(--switch-bg-hover)}.peer:focus-visible~.peer-focus-visible\\:ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.peer:focus-visible~.peer-focus-visible\\:ring-blue-300{--tw-ring-color:oklch(0.809 0.105 251.813)}.peer:focus-visible~.peer-focus-visible\\:ring-offset-2{--tw-ring-offset-width:2px}.peer:disabled~.peer-disabled\\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\\:\\!text-color-disabled{color:var(--bcm-ui-color-text-disabled)!important}";
6
+ const BcmSwitchStyle0 = switchCss;
7
+
8
+ const BcmSwitch$1 = /*@__PURE__*/ proxyCustomElement(class BcmSwitch extends H {
9
+ constructor() {
10
+ super();
11
+ this.__registerHost();
12
+ this.__attachShadow();
13
+ this.bcmSwitchChange = createEvent(this, "bcmSwitchChange", 1);
14
+ /** Whether the switch is checked or not */
15
+ this.checked = false;
16
+ /** Whether the switch is disabled */
17
+ this.disabled = false;
18
+ /** Position of the label relative to the switch */
19
+ this.labelPosition = 'right';
20
+ /** Whether to display the switch in an error state */
21
+ this.error = false;
22
+ /** Size variant of the switch */
23
+ this.size = 'medium';
24
+ /** Whether the switch is in readonly mode */
25
+ this.readonly = false;
26
+ /** Whether the switch is required in a form */
27
+ this.required = false;
28
+ this.switchId = generateId('switch');
29
+ this.switchStyle = () => {
30
+ const defaultStyle = {
31
+ '--switch-bg': 'var(--bcm-ui-color-background-default-dark-default)',
32
+ '--switch-bg-hover': 'var(--bcm-ui-color-background-default-dark-hover)',
33
+ '--switch-dot-bg': 'var(--bcm-ui-color-background-base-default)',
34
+ };
35
+ const checkedStyle = {
36
+ '--switch-bg': 'var(--bcm-ui-color-background-info-default)',
37
+ '--switch-bg-hover': 'var(--bcm-ui-color-background-info-hover)',
38
+ };
39
+ const errorStyle = {
40
+ '--switch-bg': 'var(--bcm-ui-color-background-error-default)',
41
+ '--switch-bg-hover': 'var(--bcm-ui-color-background-error-hover)',
42
+ };
43
+ const readonlyStyle = {
44
+ '--switch-bg': 'var(--bcm-ui-color-background-default-dark-default)',
45
+ '--switch-bg-hover': 'var(--bcm-ui-color-background-default-dark-default)',
46
+ '--switch-dot-bg': 'var(--bcm-ui-color-background-disabled-default)',
47
+ };
48
+ const disabledStyle = {
49
+ '--switch-bg': 'var(--bcm-ui-color-background-disabled-default)',
50
+ '--switch-bg-hover': 'var(--bcm-ui-color-background-disabled-default)',
51
+ '--switch-dot-bg': 'var(--bcm-ui-color-background-default-default)',
52
+ };
53
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, defaultStyle), (this.checked && checkedStyle)), (this.error && errorStyle)), (this.readonly && readonlyStyle)), (this.disabled && disabledStyle));
54
+ };
55
+ this.switchClass = ce({
56
+ slots: {
57
+ base: 'bcm-ui-element flex flex-col',
58
+ switchWrapper: 'flex items-center group',
59
+ dotContainer: 'relative flex items-center rounded-full cursor-pointer bg-[--switch-bg] group-hover:bg-[--switch-bg-hover] peer-disabled:cursor-not-allowed transition-colors duration-300',
60
+ dot: 'absolute bg-[--switch-dot-bg] rounded-full shadow-sm transition-all duration-300 ease-in-out peer-disabled:cursor-not-allowed',
61
+ caption: '!text-color-error font-normal',
62
+ label: '!text-color font-medium peer-disabled:!text-color-disabled peer-disabled:cursor-not-allowed',
63
+ },
64
+ variants: {
65
+ size: {
66
+ small: {
67
+ dotContainer: 'w-8 h-4',
68
+ dot: 'size-3',
69
+ label: 'text-size-4',
70
+ caption: 'text-size-3',
71
+ switchWrapper: 'gap-2',
72
+ base: 'gap-0.5',
73
+ },
74
+ medium: {
75
+ dotContainer: 'w-9 h-[18px]',
76
+ dot: 'size-3.5',
77
+ label: 'text-size-5',
78
+ caption: 'text-size-4',
79
+ switchWrapper: 'gap-2.5',
80
+ base: 'gap-1',
81
+ },
82
+ large: {
83
+ dotContainer: 'w-10 h-5',
84
+ dot: 'size-4',
85
+ label: 'text-size-6',
86
+ caption: 'text-size-5',
87
+ switchWrapper: 'gap-3',
88
+ base: 'gap-2',
89
+ },
90
+ },
91
+ labelPosition: {
92
+ left: {
93
+ label: '',
94
+ },
95
+ right: {
96
+ label: 'order-2',
97
+ },
98
+ },
99
+ checked: {
100
+ true: {
101
+ dot: '',
102
+ },
103
+ false: {
104
+ dot: 'left-0.5',
105
+ },
106
+ },
107
+ disabled: {
108
+ true: '',
109
+ false: {
110
+ switchWrapper: '',
111
+ },
112
+ },
113
+ readonly: {
114
+ true: {
115
+ switchWrapper: 'cursor-default',
116
+ dotContainer: 'cursor-default',
117
+ dot: 'cursor-default',
118
+ },
119
+ false: {
120
+ switchWrapper: 'cursor-pointer',
121
+ dotContainer: 'cursor-pointer hover:bg-[--switch-bg-hover]',
122
+ },
123
+ },
124
+ },
125
+ compoundVariants: [
126
+ {
127
+ size: 'small',
128
+ checked: true,
129
+ class: {
130
+ dot: 'left-[18px]',
131
+ },
132
+ },
133
+ {
134
+ size: 'medium',
135
+ checked: true,
136
+ class: {
137
+ dot: 'left-[20px]',
138
+ },
139
+ },
140
+ {
141
+ size: 'large',
142
+ checked: true,
143
+ class: {
144
+ dot: 'left-[22px]',
145
+ },
146
+ },
147
+ {
148
+ readonly: false,
149
+ disabled: false,
150
+ class: {
151
+ dotContainer: 'peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2 peer-focus-visible:ring-blue-300',
152
+ },
153
+ },
154
+ ],
155
+ });
156
+ }
157
+ toggleSwitch() {
158
+ if (this.disabled || this.readonly)
159
+ return;
160
+ this.checked = !this.checked;
161
+ this.bcmSwitchChange.emit(this.checked);
162
+ }
163
+ render() {
164
+ const { base, switchWrapper, label, dot, dotContainer, caption } = this.switchClass({
165
+ size: this.size,
166
+ checked: this.checked,
167
+ disabled: this.disabled,
168
+ labelPosition: this.labelPosition,
169
+ readonly: this.readonly,
170
+ });
171
+ const ariaAttributes = Object.assign({ 'role': 'switch', 'aria-checked': this.checked.toString(), 'aria-disabled': this.disabled.toString(), 'aria-readonly': this.readonly.toString() }, (this.required && { 'aria-required': 'true' }));
172
+ const tabIndexAttr = !this.readonly && !this.disabled ? { tabindex: '0' } : {};
173
+ return (h("div", { key: '6fe3f5b93d46367c73bac4711f5eb5ee93be0fb1', class: base() }, h("label", { key: 'ec4101b02f81f6e43e6f4279c893d08b710eb892', class: switchWrapper(), style: this.switchStyle() }, h("input", { key: '0ac5fbd5415b4f7c988fed8746c7cd4709de6931', id: this.switchId, type: "checkbox", class: "hidden peer", checked: this.checked, name: this.name, value: this.value, disabled: this.disabled, readOnly: this.readonly, required: this.required, onChange: () => this.toggleSwitch() }), this.label && h("span", { key: '1712d6a86427e0667f7ff393a570f1d5d1386494', class: label() }, h("slot", { key: 'a81c09316f27b86ace52436f26872c0626b642af' }, this.label)), h("label", Object.assign({ key: 'bd77f8a8a7528aa0aee70730db772f789c90d910', htmlFor: this.switchId, class: dotContainer() }, tabIndexAttr, ariaAttributes, { onKeyDown: event => {
174
+ if ((event.key === 'Enter' || event.key === ' ') && !this.readonly && !this.disabled) {
175
+ event.preventDefault();
176
+ this.toggleSwitch();
177
+ }
178
+ } }), h("div", { key: '91a5d3ca25f67953b6beb8456976bbc7ad2876da', class: dot() }))), this.error && this.caption && h("span", { key: '2a01e0e40041aa00938e714c22e6a8d241bac222', class: caption() }, this.caption), h("slot", { key: '4417057a08368eee0f06ca4fe86a620ea46f31ee', name: "caption" })));
179
+ }
180
+ get el() { return this; }
181
+ static get style() { return BcmSwitchStyle0; }
182
+ }, [1, "bcm-switch", {
183
+ "checked": [1540],
184
+ "disabled": [4],
185
+ "name": [1],
186
+ "value": [1],
187
+ "label": [1],
188
+ "labelPosition": [1, "label-position"],
189
+ "error": [4],
190
+ "caption": [1],
191
+ "size": [1],
192
+ "readonly": [4],
193
+ "required": [4]
194
+ }]);
195
+ function defineCustomElement$1() {
196
+ if (typeof customElements === "undefined") {
197
+ return;
198
+ }
199
+ const components = ["bcm-switch"];
200
+ components.forEach(tagName => { switch (tagName) {
201
+ case "bcm-switch":
202
+ if (!customElements.get(tagName)) {
203
+ customElements.define(tagName, BcmSwitch$1);
204
+ }
205
+ break;
206
+ } });
207
+ }
208
+ defineCustomElement$1();
209
+
210
+ const BcmSwitch = BcmSwitch$1;
211
+ const defineCustomElement = defineCustomElement$1;
212
+
213
+ export { BcmSwitch, defineCustomElement };
214
+
215
+ //# sourceMappingURL=bcm-switch.js.map
@@ -0,0 +1 @@
1
+ {"file":"bcm-switch.js","mappings":"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","names":["BcmSwitch","tv"],"sources":["src/components/switch/switch.css?tag=bcm-switch&encapsulation=shadow","src/components/switch/switch.component.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n","import { Component, Prop, h, Event, EventEmitter, Element, ComponentInterface } from '@stencil/core';\nimport { generateId } from '../../utils/id/generate-id';\nimport { tv } from 'tailwind-variants';\n\n/**\n * @component BcmSwitch\n * @description A customizable toggle switch component that provides an intuitive way to enable or disable options.\n * Supports different sizes, label positions, error states, and accessibility features.\n *\n * @example Basic usage\n * <bcm-switch label=\"Enable notifications\"></bcm-switch>\n *\n * @example With error state\n * <bcm-switch\n * label=\"Accept terms\"\n * error={true}\n * caption=\"You must accept the terms to continue\">\n * </bcm-switch>\n *\n * @example Disabled state\n * <bcm-switch\n * label=\"Advanced features\"\n * disabled={true}>\n * </bcm-switch>\n *\n * @example With custom size and label position\n * <bcm-switch\n * label=\"Dark mode\"\n * size=\"large\"\n * labelPosition=\"left\">\n * </bcm-switch>\n */\n@Component({\n tag: 'bcm-switch',\n styleUrl: 'switch.css',\n shadow: true,\n})\nexport class BcmSwitch implements ComponentInterface {\n /** Reference to the host element */\n @Element()\n el: HTMLElement;\n\n /** Whether the switch is checked or not */\n @Prop({ reflect: true, mutable: true })\n checked: boolean = false;\n\n /** Whether the switch is disabled */\n @Prop()\n disabled: boolean = false;\n\n /** The name attribute for the hidden input element */\n @Prop()\n name: string;\n\n /** The value attribute for the hidden input element */\n @Prop()\n value: string;\n\n /** Text label for the switch */\n @Prop()\n label: string;\n\n /** Position of the label relative to the switch */\n @Prop()\n labelPosition: 'left' | 'right' = 'right';\n\n /** Whether to display the switch in an error state */\n @Prop()\n error: boolean = false;\n\n /** Text to display as an error message when error is true */\n @Prop()\n caption?: string;\n\n /** Size variant of the switch */\n @Prop()\n size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Whether the switch is in readonly mode */\n @Prop()\n readonly: boolean = false;\n\n /** Whether the switch is required in a form */\n @Prop()\n required: boolean = false;\n\n /** Emitted when the switch state changes */\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n })\n bcmSwitchChange: EventEmitter<boolean>;\n\n private switchId = generateId('switch');\n\n private toggleSwitch(): void {\n if (this.disabled || this.readonly) return;\n this.checked = !this.checked;\n this.bcmSwitchChange.emit(this.checked);\n }\n\n private switchStyle = () => {\n const defaultStyle = {\n '--switch-bg': 'var(--bcm-ui-color-background-default-dark-default)',\n '--switch-bg-hover': 'var(--bcm-ui-color-background-default-dark-hover)',\n '--switch-dot-bg': 'var(--bcm-ui-color-background-base-default)',\n };\n\n const checkedStyle = {\n '--switch-bg': 'var(--bcm-ui-color-background-info-default)',\n '--switch-bg-hover': 'var(--bcm-ui-color-background-info-hover)',\n };\n\n const errorStyle = {\n '--switch-bg': 'var(--bcm-ui-color-background-error-default)',\n '--switch-bg-hover': 'var(--bcm-ui-color-background-error-hover)',\n };\n\n const readonlyStyle = {\n '--switch-bg': 'var(--bcm-ui-color-background-default-dark-default)',\n '--switch-bg-hover': 'var(--bcm-ui-color-background-default-dark-default)',\n '--switch-dot-bg': 'var(--bcm-ui-color-background-disabled-default)',\n };\n\n const disabledStyle = {\n '--switch-bg': 'var(--bcm-ui-color-background-disabled-default)',\n '--switch-bg-hover': 'var(--bcm-ui-color-background-disabled-default)',\n '--switch-dot-bg': 'var(--bcm-ui-color-background-default-default)',\n };\n\n return {\n ...defaultStyle,\n ...(this.checked && checkedStyle),\n ...(this.error && errorStyle),\n ...(this.readonly && readonlyStyle),\n ...(this.disabled && disabledStyle),\n };\n };\n\n private switchClass = tv({\n slots: {\n base: 'bcm-ui-element flex flex-col',\n switchWrapper: 'flex items-center group',\n dotContainer:\n 'relative flex items-center rounded-full cursor-pointer bg-[--switch-bg] group-hover:bg-[--switch-bg-hover] peer-disabled:cursor-not-allowed transition-colors duration-300',\n dot: 'absolute bg-[--switch-dot-bg] rounded-full shadow-sm transition-all duration-300 ease-in-out peer-disabled:cursor-not-allowed',\n caption: '!text-color-error font-normal',\n label: '!text-color font-medium peer-disabled:!text-color-disabled peer-disabled:cursor-not-allowed',\n },\n variants: {\n size: {\n small: {\n dotContainer: 'w-8 h-4',\n dot: 'size-3',\n label: 'text-size-4',\n caption: 'text-size-3',\n switchWrapper: 'gap-2',\n base: 'gap-0.5',\n },\n medium: {\n dotContainer: 'w-9 h-[18px]',\n dot: 'size-3.5',\n label: 'text-size-5',\n caption: 'text-size-4',\n switchWrapper: 'gap-2.5',\n base: 'gap-1',\n },\n large: {\n dotContainer: 'w-10 h-5',\n dot: 'size-4',\n label: 'text-size-6',\n caption: 'text-size-5',\n switchWrapper: 'gap-3',\n base: 'gap-2',\n },\n },\n labelPosition: {\n left: {\n label: '',\n },\n right: {\n label: 'order-2',\n },\n },\n checked: {\n true: {\n dot: '',\n },\n false: {\n dot: 'left-0.5',\n },\n },\n disabled: {\n true: '',\n false: {\n switchWrapper: '',\n },\n },\n readonly: {\n true: {\n switchWrapper: 'cursor-default',\n dotContainer: 'cursor-default',\n dot: 'cursor-default',\n },\n false: {\n switchWrapper: 'cursor-pointer',\n dotContainer: 'cursor-pointer hover:bg-[--switch-bg-hover]',\n },\n },\n },\n compoundVariants: [\n {\n size: 'small',\n checked: true,\n class: {\n dot: 'left-[18px]',\n },\n },\n {\n size: 'medium',\n checked: true,\n class: {\n dot: 'left-[20px]',\n },\n },\n {\n size: 'large',\n checked: true,\n class: {\n dot: 'left-[22px]',\n },\n },\n {\n readonly: false,\n disabled: false,\n class: {\n dotContainer: 'peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2 peer-focus-visible:ring-blue-300',\n },\n },\n ],\n });\n\n render() {\n const { base, switchWrapper, label, dot, dotContainer, caption } = this.switchClass({\n size: this.size,\n checked: this.checked,\n disabled: this.disabled,\n labelPosition: this.labelPosition,\n readonly: this.readonly,\n });\n\n const ariaAttributes = {\n 'role': 'switch',\n 'aria-checked': this.checked.toString(),\n 'aria-disabled': this.disabled.toString(),\n 'aria-readonly': this.readonly.toString(),\n ...(this.required && { 'aria-required': 'true' }),\n };\n\n const tabIndexAttr = !this.readonly && !this.disabled ? { tabindex: '0' } : {};\n\n return (\n <div class={base()}>\n <label class={switchWrapper()} style={this.switchStyle()}>\n <input\n id={this.switchId}\n type=\"checkbox\"\n class=\"hidden peer\"\n checked={this.checked}\n name={this.name}\n value={this.value}\n disabled={this.disabled}\n readOnly={this.readonly}\n required={this.required}\n onChange={() => this.toggleSwitch()}\n />\n\n {this.label && <span class={label()}><slot>{this.label}</slot></span>}\n <label\n htmlFor={this.switchId}\n class={dotContainer()}\n {...tabIndexAttr}\n {...ariaAttributes}\n onKeyDown={event => {\n if ((event.key === 'Enter' || event.key === ' ') && !this.readonly && !this.disabled) {\n event.preventDefault();\n this.toggleSwitch();\n }\n }}\n >\n <div class={dot()}></div>\n </label>\n </label>\n\n {this.error && this.caption && <span class={caption()}>{this.caption}</span>}\n <slot name=\"caption\"></slot>\n </div>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface BcmTabsContent extends Components.BcmTabsContent, HTMLElement {}
4
+ export const BcmTabsContent: {
5
+ prototype: BcmTabsContent;
6
+ new (): BcmTabsContent;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,39 @@
1
+ import { p as proxyCustomElement, H, h, d as Host } from './p-5377117d.js';
2
+
3
+ const tabsContentCss = ".block{display:block}:host{display:block;padding:10px 0;width:100%}.static{position:static}.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)}";
4
+ const BcmTabsContentStyle0 = tabsContentCss;
5
+
6
+ const BcmTabsContent$1 = /*@__PURE__*/ proxyCustomElement(class BcmTabsContent extends H {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ }
12
+ render() {
13
+ return (h(Host, { key: '17ae2ab7a05db721e305764436befb99dd5571ff', role: "tabpanel" }, h("slot", { key: '184a356d95d59b0f7795a065fd6ce5e8ba222a25' })));
14
+ }
15
+ static get style() { return BcmTabsContentStyle0; }
16
+ }, [1, "bcm-tabs-content", {
17
+ "value": [513]
18
+ }]);
19
+ function defineCustomElement$1() {
20
+ if (typeof customElements === "undefined") {
21
+ return;
22
+ }
23
+ const components = ["bcm-tabs-content"];
24
+ components.forEach(tagName => { switch (tagName) {
25
+ case "bcm-tabs-content":
26
+ if (!customElements.get(tagName)) {
27
+ customElements.define(tagName, BcmTabsContent$1);
28
+ }
29
+ break;
30
+ } });
31
+ }
32
+ defineCustomElement$1();
33
+
34
+ const BcmTabsContent = BcmTabsContent$1;
35
+ const defineCustomElement = defineCustomElement$1;
36
+
37
+ export { BcmTabsContent, defineCustomElement };
38
+
39
+ //# sourceMappingURL=bcm-tabs-content.js.map
@@ -0,0 +1 @@
1
+ {"file":"bcm-tabs-content.js","mappings":";;AAAA,MAAM,cAAc,GAAG,0SAA0S,CAAC;AAClU,6BAAe,cAAc;;MCUhBA,gBAAc;;;;;;IAOvB,MAAM;QACF,QACI,EAAC,IAAI,qDAAC,IAAI,EAAC,UAAU,IACjB,8DAAa,CACV,EACT;KACL;;;;;;;;;;;;;;;;;;;;;;;;;","names":["BcmTabsContent"],"sources":["src/components/tabs/tabs-content.css?tag=bcm-tabs-content&encapsulation=shadow","src/components/tabs/tabs-content.component.tsx"],"sourcesContent":[":host {\n display: block;\n padding: 10px 0;\n width: 100%;\n}\n","import { Component, Prop, h, Host, ComponentInterface } from '@stencil/core';\n\n/**\n * @description Tab content panel component that displays when its corresponding tab is selected\n * @slot - Default slot for the tab panel content\n */\n@Component({\n tag: 'bcm-tabs-content',\n styleUrl: 'tabs-content.css',\n shadow: true,\n})\nexport class BcmTabsContent implements ComponentInterface {\n /**\n * Unique identifier that matches a tab trigger's value\n * Used to associate this content with its corresponding tab\n */\n @Prop({ reflect: true }) value: string;\n\n render() {\n return (\n <Host role=\"tabpanel\">\n <slot></slot>\n </Host>\n );\n }\n}"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface BcmTabsList extends Components.BcmTabsList, HTMLElement {}
4
+ export const BcmTabsList: {
5
+ prototype: BcmTabsList;
6
+ new (): BcmTabsList;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,58 @@
1
+ import { p as proxyCustomElement, H, h } from './p-5377117d.js';
2
+ import { c as ce } from './p-5fcf77f9.js';
3
+
4
+ const tabsListCss = ".relative{position:relative}.block{display:block}:host{display:block;position:relative;width:100%}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.static{position:static}.absolute{position:absolute}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.z-10{z-index:10}.flex{display:flex}.h-0\\.5{height:.125rem}.w-full{width:100%}.flex-row{flex-direction:row}.items-center{align-items:center}.bg-\\[--bcm-ui-color-text-primary\\]{background-color:var(--bcm-ui-color-text-primary)}.opacity-0{opacity:0}.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)}";
5
+ const BcmTabsListStyle0 = tabsListCss;
6
+
7
+ const BcmTabsList$1 = /*@__PURE__*/ proxyCustomElement(class BcmTabsList extends H {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.__attachShadow();
12
+ /**
13
+ * Tailwind variants configuration for styling the tabs list container and inkbar
14
+ */
15
+ this.class = ce({
16
+ slots: {
17
+ /**
18
+ * Main container that holds both the tablist and inkbar
19
+ */
20
+ container: 'flex flex-row items-center w-full relative',
21
+ /**
22
+ * The sliding indicator that appears under the active tab
23
+ */
24
+ inkbar: 'inkbar absolute bottom-0 left-0 right-0 h-0.5 bg-[--bcm-ui-color-text-primary] transition-all duration-200 ease-in-out z-10 opacity-0',
25
+ /**
26
+ * The container for tab trigger elements
27
+ */
28
+ tabList: 'tabs-list flex flex-row items-center w-full relative',
29
+ },
30
+ });
31
+ }
32
+ render() {
33
+ const { container, inkbar, tabList } = this.class();
34
+ return (h("div", { key: '46066c8510c684347428f5a03f094fa857e40f57', class: container(), slot: "tabs-list" }, h("div", { key: 'c038e78bb7da88ece01600ff656ff820d2d8a4eb', class: inkbar() }), h("div", { key: '4db7e8f301c7a0e863492fcd784fbcb6b5799709', class: tabList(), role: "tablist" }, h("slot", { key: 'ed29b088e1c19a455046804fcc5a090435351299' }))));
35
+ }
36
+ static get style() { return BcmTabsListStyle0; }
37
+ }, [1, "bcm-tabs-list"]);
38
+ function defineCustomElement$1() {
39
+ if (typeof customElements === "undefined") {
40
+ return;
41
+ }
42
+ const components = ["bcm-tabs-list"];
43
+ components.forEach(tagName => { switch (tagName) {
44
+ case "bcm-tabs-list":
45
+ if (!customElements.get(tagName)) {
46
+ customElements.define(tagName, BcmTabsList$1);
47
+ }
48
+ break;
49
+ } });
50
+ }
51
+ defineCustomElement$1();
52
+
53
+ const BcmTabsList = BcmTabsList$1;
54
+ const defineCustomElement = defineCustomElement$1;
55
+
56
+ export { BcmTabsList, defineCustomElement };
57
+
58
+ //# sourceMappingURL=bcm-tabs-list.js.map
@@ -0,0 +1 @@
1
+ {"file":"bcm-tabs-list.js","mappings":";;;AAAA,MAAM,WAAW,GAAG,ipCAAipC,CAAC;AACtqC,0BAAe,WAAW;;MCWbA,aAAW;IALxB;;;;;;;QASY,UAAK,GAAGC,EAAE,CAAC;YACf,KAAK,EAAE;;;;gBAIH,SAAS,EAAE,4CAA4C;;;;gBAKvD,MAAM,EAAE,uIAAuI;;;;gBAK/I,OAAO,EAAE,sDAAsD;aAClE;SACJ,CAAC,CAAC;KAaN;IAXG,MAAM;QACF,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QACpD,QACI,4DAAK,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAC,WAAW,IACrC,4DAAK,KAAK,EAAE,MAAM,EAAE,GAAQ,EAC5B,4DAAK,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAC,SAAS,IACjC,8DAAa,CACX,CACJ,EACR;KACL;;;;;;;;;;;;;;;;;;;;;;;","names":["BcmTabsList","tv"],"sources":["src/components/tabs/tabs-list.css?tag=bcm-tabs-list&encapsulation=shadow","src/components/tabs/tabs-list.component.tsx"],"sourcesContent":["/* tabs-list.css */\n:host {\n display: block;\n position: relative;\n width: 100%;\n}\n","import { Component, h, ComponentInterface } from '@stencil/core';\nimport { tv } from 'tailwind-variants';\n\n/**\n * @description Container component for tab triggers that includes the sliding indicator (inkbar)\n * @slot - Default slot for tab trigger elements\n */\n@Component({\n tag: 'bcm-tabs-list',\n styleUrl: 'tabs-list.css',\n shadow: true,\n})\nexport class BcmTabsList implements ComponentInterface {\n /**\n * Tailwind variants configuration for styling the tabs list container and inkbar\n */\n private class = tv({\n slots: {\n /**\n * Main container that holds both the tablist and inkbar\n */\n container: 'flex flex-row items-center w-full relative',\n\n /**\n * The sliding indicator that appears under the active tab\n */\n inkbar: 'inkbar absolute bottom-0 left-0 right-0 h-0.5 bg-[--bcm-ui-color-text-primary] transition-all duration-200 ease-in-out z-10 opacity-0',\n\n /**\n * The container for tab trigger elements\n */\n tabList: 'tabs-list flex flex-row items-center w-full relative',\n },\n });\n\n render() {\n const { container, inkbar, tabList } = this.class();\n return (\n <div class={container()} slot=\"tabs-list\">\n <div class={inkbar()}></div>\n <div class={tabList()} role=\"tablist\">\n <slot></slot>\n </div>\n </div>\n );\n }\n}"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface BcmTabsTrigger extends Components.BcmTabsTrigger, HTMLElement {}
4
+ export const BcmTabsTrigger: {
5
+ prototype: BcmTabsTrigger;
6
+ new (): BcmTabsTrigger;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,112 @@
1
+ import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-5377117d.js';
2
+ import { c as ce } from './p-5fcf77f9.js';
3
+
4
+ const tabsTriggerCss = ".relative{position:relative}.block{display:block}:host{display:block;position:relative;width:100%}.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-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-default\\]{background-color:var(--bcm-ui-color-text-default)}.bg-\\[--bcm-ui-color-text-disabled\\]{background-color:var(--bcm-ui-color-text-disabled)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.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{color:var(--bcm-ui-color-text-default)}.text-color-disabled{color:var(--bcm-ui-color-text-disabled)}.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)}";
5
+ const BcmTabsTriggerStyle0 = tabsTriggerCss;
6
+
7
+ const BcmTabsTrigger$1 = /*@__PURE__*/ proxyCustomElement(class BcmTabsTrigger extends H {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.__attachShadow();
12
+ this.bcmTabSelected = createEvent(this, "bcmTabSelected", 1);
13
+ /**
14
+ * Whether the tab is currently active
15
+ */
16
+ this.active = false;
17
+ /**
18
+ * Size of the tab
19
+ */
20
+ this.size = 'medium';
21
+ /**
22
+ * Whether the tab is disabled
23
+ */
24
+ this.disabled = false;
25
+ /**
26
+ * Tailwind variants configuration for styling
27
+ */
28
+ this.class = ce({
29
+ slots: {
30
+ tab: 'bcm-ui-element text-center flex flex-row justify-center items-center font-medium transition-all duration-200 ease-in-out py-1 px-3 w-full bg-white border-none',
31
+ borderLine: 'bottom-0 w-full left-0 right-0 h-[2px] bg-color-primary transition-all duration-200 ease-in-out',
32
+ },
33
+ variants: {
34
+ size: {
35
+ small: { tab: 'text-size-4 gap-2' },
36
+ medium: { tab: 'text-size-5 gap-2.5' },
37
+ large: { tab: 'text-size-6 gap-3' },
38
+ },
39
+ active: {
40
+ true: {
41
+ tab: 'text-color-primary',
42
+ },
43
+ false: {
44
+ tab: 'text-color',
45
+ },
46
+ },
47
+ disabled: {
48
+ true: {
49
+ tab: 'cursor-not-allowed text-color-disabled',
50
+ borderLine: 'bg-[--bcm-ui-color-text-disabled]',
51
+ },
52
+ false: {
53
+ tab: 'cursor-pointer text-color hover:text-color-primary',
54
+ borderLine: 'bg-[--bcm-ui-color-text-default]',
55
+ },
56
+ },
57
+ },
58
+ defaultVariants: {
59
+ size: 'medium',
60
+ active: false,
61
+ disabled: false,
62
+ },
63
+ }, {
64
+ twMerge: false,
65
+ });
66
+ }
67
+ /**
68
+ * Handles click events on the tab
69
+ * Emits bcmTabSelected event with tab value if not disabled
70
+ */
71
+ handleClick() {
72
+ if (this.disabled)
73
+ return;
74
+ this.bcmTabSelected.emit(this.value);
75
+ }
76
+ render() {
77
+ const { tab, borderLine } = this.class({
78
+ size: this.size,
79
+ active: this.active,
80
+ disabled: this.disabled,
81
+ });
82
+ return (h(Host, { key: 'd55ce1eaa9290ffe2d47f6a0fa747cf9dd9f1b7c', role: "tab", "aria-selected": this.active.toString(), "aria-disabled": this.disabled }, h("button", { key: 'd9dcc8685a2007e0c8f234913e461de90916a32d', class: tab(), disabled: this.disabled, part: "tab", onClick: () => this.handleClick() }, h("slot", { key: '4ef0ed0302f2fedd966e461a77fd3f79bcb3c6c0' })), h("div", { key: 'a0afbb81a99afe7eeab0917a824e67078c4c0636', class: borderLine() })));
83
+ }
84
+ get el() { return this; }
85
+ static get style() { return BcmTabsTriggerStyle0; }
86
+ }, [1, "bcm-tabs-trigger", {
87
+ "value": [513],
88
+ "active": [516],
89
+ "size": [513],
90
+ "disabled": [516]
91
+ }]);
92
+ function defineCustomElement$1() {
93
+ if (typeof customElements === "undefined") {
94
+ return;
95
+ }
96
+ const components = ["bcm-tabs-trigger"];
97
+ components.forEach(tagName => { switch (tagName) {
98
+ case "bcm-tabs-trigger":
99
+ if (!customElements.get(tagName)) {
100
+ customElements.define(tagName, BcmTabsTrigger$1);
101
+ }
102
+ break;
103
+ } });
104
+ }
105
+ defineCustomElement$1();
106
+
107
+ const BcmTabsTrigger = BcmTabsTrigger$1;
108
+ const defineCustomElement = defineCustomElement$1;
109
+
110
+ export { BcmTabsTrigger, defineCustomElement };
111
+
112
+ //# sourceMappingURL=bcm-tabs-trigger.js.map
@@ -0,0 +1 @@
1
+ {"file":"bcm-tabs-trigger.js","mappings":";;;AAAA,MAAM,cAAc,GAAG,w8DAAw8D,CAAC;AACh+D,6BAAe,cAAc;;MCWhBA,gBAAc;IAL3B;;;;;;;;QAqBI,WAAM,GAAY,KAAK,CAAC;;;;QAMxB,SAAI,GAAiC,QAAQ,CAAC;;;;QAM9C,aAAQ,GAAY,KAAK,CAAC;;;;QAyBlB,UAAK,GAAGC,EAAE,CACd;YACI,KAAK,EAAE;gBACH,GAAG,EAAE,gKAAgK;gBACrK,UAAU,EAAE,iGAAiG;aAChH;YACD,QAAQ,EAAE;gBACN,IAAI,EAAE;oBACF,KAAK,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE;oBACnC,MAAM,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE;oBACtC,KAAK,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE;iBACtC;gBACD,MAAM,EAAE;oBACJ,IAAI,EAAE;wBACF,GAAG,EAAE,oBAAoB;qBAC5B;oBACD,KAAK,EAAE;wBACH,GAAG,EAAE,YAAY;qBACpB;iBACJ;gBACD,QAAQ,EAAE;oBACN,IAAI,EAAE;wBACF,GAAG,EAAE,wCAAwC;wBAC7C,UAAU,EAAE,mCAAmC;qBAClD;oBACD,KAAK,EAAE;wBACH,GAAG,EAAE,oDAAoD;wBACzD,UAAU,EAAE,kCAAkC;qBACjD;iBACJ;aACJ;YACD,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,KAAK;aAClB;SACJ,EACD;YACI,OAAO,EAAE,KAAK;SACjB,CACJ,CAAC;KAiBL;;;;;IAjEW,WAAW;QACf,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxC;IA+CD,MAAM;QACF,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACnC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SAC1B,CAAC,CAAC;QACH,QACI,EAAC,IAAI,qDAAC,IAAI,EAAC,KAAK,mBAAgB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,mBAAiB,IAAI,CAAC,QAAQ,IAChF,+DAAQ,KAAK,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,KAAK,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IACvF,8DAAQ,CACH,EACT,4DAAK,KAAK,EAAE,UAAU,EAAE,GAAQ,CAC7B,EACT;KACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["BcmTabsTrigger","tv"],"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 width: 100%;\n}\n","import { Component, Prop, h, Host, Element, Event, EventEmitter, ComponentInterface } from '@stencil/core';\nimport { tv } from 'tailwind-variants';\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 * 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 transition-all duration-200 ease-in-out py-1 px-3 w-full bg-white border-none',\n borderLine: 'bottom-0 w-full left-0 right-0 h-[2px] bg-color-primary transition-all duration-200 ease-in-out',\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',\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-default]',\n },\n },\n },\n defaultVariants: {\n size: 'medium',\n active: false,\n disabled: false,\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 });\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}"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface BcmTabs extends Components.BcmTabs, HTMLElement {}
4
+ export const BcmTabs: {
5
+ prototype: BcmTabs;
6
+ new (): BcmTabs;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;